From 4c777f25ef30ccb4356822fc4512cb4034dab6b0 Mon Sep 17 00:00:00 2001
From: wangwh <2397901735@qq.com>
Date: Wed, 11 Sep 2024 11:58:31 +0800
Subject: [PATCH] 1、新增经纬度转换属地接口 2、修改办理结果查询接口 3、修改小程序属地查询接口 4、修改办理信息查询接口

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java |  136 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 105 insertions(+), 31 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
index c45dfbe..d9128a0 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -14,8 +14,7 @@
 import cn.huge.module.cases.domain.po.CaseInfo;
 import cn.huge.module.constant.BaseConsts;
 import cn.huge.module.cust.dto.PaUserDTO;
-import cn.huge.module.mediate.constant.CaseBaseConsts;
-import cn.huge.module.mediate.constant.CaseBaseConstsEnum;
+import cn.huge.module.mediate.constant.*;
 import cn.huge.module.cust.dto.CtUserDTO;
 import cn.huge.module.draft.service.CasedraftInfoService;
 import cn.huge.module.mediate.constant.CaseProcessBaseConstsEnum;
@@ -78,6 +77,10 @@
 
     @Autowired
     private CaseTaskService caseTaskService;
+
+    @Autowired
+    private CaseEvaluateService caseEvaluateService;
+
 
     /**
     * 更新对象
@@ -533,10 +536,6 @@
 
             Date nowDate = DateUtils.getNowDate();
             registerSaveDTO.setUpdateTime(nowDate);
-            StringBuffer plaintiffs = new StringBuffer();
-            StringBuffer defendants = new StringBuffer();
-            StringBuffer pagents = new StringBuffer();
-            StringBuffer dagents = new StringBuffer();
 
             CaseInfo caseInfo = new CaseInfo();
             CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold();
@@ -561,40 +560,67 @@
             }
             //todo case_title生成
             caseInfo.setCaseRef(utilsClient.createCaseRef());
+
             // 为了演示先兼容小程序没属地问题,写死属地
             if (ObjectUtils.isEmpty(caseInfo.getQueProv())) {
-                caseInfo.setQueProv("19");
-                caseInfo.setQueProvName("广东");
-                caseInfo.setQueCity("1601");
-                caseInfo.setQueCityName("广州市");
-                caseInfo.setQueArea("50258");
-                caseInfo.setQueAreaName("白云区");
-                caseInfo.setQueRoad("62857");
-                caseInfo.setQueRoadName("新市街道");
+//                caseInfo.setQueProv("19");
+//                caseInfo.setQueProvName("广东");
+//                caseInfo.setQueCity("1601");
+//                caseInfo.setQueCityName("广州市");
+//                caseInfo.setQueArea("50258");
+//                caseInfo.setQueAreaName("白云区");
+//                caseInfo.setQueRoad("62857");
+//                caseInfo.setQueRoadName("新市街道");
 
                 // 根据经纬度查询问题属地
-//                QueAddrBaseDTO queAddrBaseDTO = sysClient.getQueAddrByBaiduiLngLat(caseInfo.getLng(), caseInfo.getLat());
-//                caseInfo.setQueProv(queAddrBaseDTO.getQueProv());
-//                caseInfo.setQueProvName(queAddrBaseDTO.getQueProvName());
-//                caseInfo.setQueCity(queAddrBaseDTO.getQueCity());
-//                caseInfo.setQueCityName(queAddrBaseDTO.getQueCityName());
-//                caseInfo.setQueArea(queAddrBaseDTO.getQueArea());
-//                caseInfo.setQueAreaName(queAddrBaseDTO.getQueAreaName());
-//                caseInfo.setQueRoad(queAddrBaseDTO.getQueRoad());
-//                caseInfo.setQueRoadName(queAddrBaseDTO.getQueRoadName());
+                QueAddrBaseDTO queAddrBaseDTO = sysClient.getQueAddrByBaiduiLngLat(caseInfo.getLng(), caseInfo.getLat());
+                caseInfo.setQueProv(queAddrBaseDTO.getQueProv());
+                caseInfo.setQueProvName(queAddrBaseDTO.getQueProvName());
+                caseInfo.setQueCity(queAddrBaseDTO.getQueCity());
+                caseInfo.setQueCityName(queAddrBaseDTO.getQueCityName());
+                caseInfo.setQueArea(queAddrBaseDTO.getQueArea());
+                caseInfo.setQueAreaName(queAddrBaseDTO.getQueAreaName());
+                caseInfo.setQueRoad(queAddrBaseDTO.getQueRoad());
+                caseInfo.setQueRoadName(queAddrBaseDTO.getQueRoadName());
             }
             caseInfoUnfold.setId(caseInfo.getId());
             caseInfoUnfold.setCreateTime(nowDate);
             caseInfoUnfold.setUpdateTime(nowDate);
 
+            StringBuffer plaintiffs = new StringBuffer();
+            StringBuffer defendants = new StringBuffer();
+            StringBuffer pagents = new StringBuffer();
+            StringBuffer dagents = new StringBuffer();
             // 常规登记-保存当事人
-            this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents,loginUser);
+            int peopleNum = this.saveCasePersonWechat(registerSaveDTO, plaintiffs, pagents, defendants, dagents,loginUser);
+            caseInfo.setVisitPeopleNum(peopleNum);
             caseInfo.setPlaintiffs(plaintiffs.toString());
             caseInfo.setPagents(pagents.toString());
             caseInfo.setDefendants(defendants.toString());
             caseInfo.setDagents(dagents.toString());
+
+            //todo case_title生成
+//            caseInfo.setCaseTitle(this.createCaseTitle(plaintiffs.toString(), defendants.toString(), caseInfo.getCaseTypeName()));
+
+            caseInfo.setInfoProcess(CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_1.getIndex());
+            caseInfo.setInfoProcessName(CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_1.getDes());
+            caseInfo.setProcess(CaseProcessBaseConstsEnum.CASE_PROCESS_1.getIndex());
+            caseInfo.setProcessName(CaseProcessBaseConstsEnum.CASE_PROCESS_1.getDes());
+            caseInfo.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex());
+            caseInfo.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes());
+            caseInfo.setCaseLevel(3);
+            caseInfo.setCanal(CaseBaseConstsEnum.CASE_CANAL_2.getIndex());
+            caseInfo.setCanalName(CaseBaseConstsEnum.CASE_CANAL_2.getDes());
+
+            caseInfo.setCaseRef(utilsClient.createCaseRef());
+            caseInfo.setVisitWay(CaseBaseConstsEnum.VISIT_WAY_2.getIndex());
+            caseInfo.setVisitWayName(CaseBaseConstsEnum.VISIT_WAY_2.getDes());
+            // 临时加上一级纠纷类型
+            caseInfo.setCaseTypeFirst("24_01-2");
+            caseInfo.setCaseTypeFirstName("劳动社保");
             this.saveOrUpdate(caseInfo);
 
+            caseInfoUnfoldService.saveOrUpdate(caseInfoUnfold);
             // 启动工作流-自动调度流程
             caseTaskService.webStartFlowLFDJ(caseInfo);
             return registerSaveDTO.getId();
@@ -602,6 +628,36 @@
             log.error("service方法[CaseInfoService.caseRegisterWechat]调用异常:"+e, e);
             throw new ServiceException("CaseInfoService.caseRegisterWechat", e);
         }
+    }
+
+    /**
+     * 生成调解案件标题
+     * @param plaintiffs 申请人
+     * @param defendants 被申请人
+     * @param caseTypeName 纠纷类型
+     * @return String
+     */
+    public String createCaseTitle(String plaintiffs, String defendants, String caseTypeName){
+        StringBuffer caseTitle = new StringBuffer();
+        if (plaintiffs.indexOf(BaseConsts.COMMA) != -1){
+            caseTitle.append(plaintiffs.split(BaseConsts.COMMA)[0]).append("等");
+        }else {
+            caseTitle.append(plaintiffs.split(BaseConsts.COMMA)[0]);
+        }
+        if (StringUtils.isNotEmpty(defendants)) {
+            caseTitle.append("和");
+            if (defendants.indexOf(BaseConsts.COMMA) != -1) {
+                caseTitle.append(defendants.split(BaseConsts.COMMA)[0]).append("等");
+            } else {
+                caseTitle.append(defendants.split(BaseConsts.COMMA)[0]);
+            }
+        }
+        caseTitle.append("的");
+        if (StringUtils.isNotEmpty(caseTypeName)){
+            caseTitle.append(caseTypeName);
+        }
+        caseTitle.append("案件");
+        return caseTitle.toString();
     }
 
     /**
@@ -630,13 +686,13 @@
                 personService.saveOrUpdate(casePerson);
 
                 //添加申请方和被申请方人名组合
-                if(CaseBaseConstsEnum.PERSON_TYPE_1.equals(casePerson.getPerType())){
+                if(CaseBaseConstsEnum.PERSON_TYPE_1.getIndex().equals(casePerson.getPerType())){
                     //申请方
                     if (StringUtils.isNotEmpty(plaintiffs.toString())) {
                         plaintiffs.append(BaseConsts.COMMA);
                     }
                     plaintiffs.append(casePerson.getTrueName());
-                }else if(CaseBaseConstsEnum.PERSON_TYPE_2.equals(casePerson.getPerType())){
+                }else if(CaseBaseConstsEnum.PERSON_TYPE_2.getIndex().equals(casePerson.getPerType())){
                     //被申请方
                     if (StringUtils.isNotEmpty(defendants.toString())) {
                         defendants.append(BaseConsts.COMMA);
@@ -658,16 +714,22 @@
                     caseAgent.setCreateTime(registerSaveDTO.getUpdateTime());
                     caseAgent.setUpdateTime(registerSaveDTO.getUpdateTime());
                     agentService.saveOrUpdate(caseAgent);
-
-                    if (StringUtils.isNotEmpty(pagents.toString())) {
-                        pagents.append(BaseConsts.COMMA);
+                    if(CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgent.getPerType())){
+                        if (StringUtils.isNotEmpty(pagents.toString())) {
+                            pagents.append(BaseConsts.COMMA);
+                        }
+                        pagents.append(caseAgent.getTrueName());
+                    }else if(CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgent.getPerType())){
+                        if (StringUtils.isNotEmpty(dagents.toString())) {
+                            dagents.append(BaseConsts.COMMA);
+                        }
+                        dagents.append(caseAgent.getTrueName());
                     }
-                    pagents.append(caseAgent.getTrueName());
+
                 }
                 //todo 绑定当事人小程序
             }
         }
-
         return peopleNum;
     }
 
@@ -755,6 +817,18 @@
                 }
                 caseInfoWeChatDTO.setDefendantList(defendantList);
                 caseInfoWeChatDTO.setPlaintiffList(plaintiffList);
+                //评价信息
+                Map<String, Object> evaluateTerms = new HashMap<>();
+                evaluateTerms.put("caseId", caseInfo.getId());
+                evaluateTerms.put("deleteStatus", BaseConsts.DELETE_STATUS_0);
+                evaluateTerms.put("evaluateUserId", loginUser.getId());
+                long evaluateCount = caseEvaluateService.countTerms(evaluateTerms);
+                if(evaluateCount > 0){
+                    caseInfoWeChatDTO.setIsEvaluate("1");
+                }else{
+                    caseInfoWeChatDTO.setIsEvaluate("0");
+                }
+
                 list.add(caseInfoWeChatDTO);
             }
         }

--
Gitblit v1.8.0