From b6fa58652c12f0c61409cc44dfd8ad78f821b6c6 Mon Sep 17 00:00:00 2001
From: liyj <1003249715@qq.com>
Date: Wed, 11 Sep 2024 01:19:25 +0800
Subject: [PATCH] 1、流程bug修复

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java |   77 +++++++++++++++++++++++++++++++++++---
 1 files changed, 71 insertions(+), 6 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 d3a50d2..46f624f 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
@@ -1,9 +1,7 @@
 package cn.huge.module.cases.service;
 
 import cn.huge.base.common.exception.ServiceException;
-import cn.huge.base.common.utils.DateUtils;
-import cn.huge.base.common.utils.IdUtils;
-import cn.huge.base.common.utils.ObjectUtils;
+import cn.huge.base.common.utils.*;
 import cn.huge.module.cases.domain.dto.*;
 
 import cn.huge.module.cases.domain.po.CaseAgent;
@@ -20,8 +18,10 @@
 import cn.huge.module.mediate.constant.CaseBaseConstsEnum;
 import cn.huge.module.cust.dto.CtUserDTO;
 import cn.huge.module.draft.service.CasedraftInfoService;
+import cn.huge.module.mediate.constant.CaseProcessBaseConstsEnum;
 import cn.huge.module.mediate.dto.WechatBindCaseDTO;
 import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO;
+import cn.huge.module.sys.dto.QueAddrBaseDTO;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -553,10 +553,36 @@
             caseInfo.setUpdateTime(nowDate);
             caseInfo.setVisitTime(nowDate);
             caseInfo.setDeleteStatus(BaseConsts.DELETE_STATUS_0);
-            caseInfo.setProcess(1);
-            caseInfo.setProcessName("来访登记");
-            //todo case_ref生成、case_title生成
+            //坐标转换
+            if(ObjectUtils.isNotEmpty(caseInfo.getLat()) && ObjectUtils.isNotEmpty(caseInfo.getLng())){
+                PointXY pointXY = MapUtils.gcj02tobd09(Double.valueOf(caseInfo.getLng()), Double.valueOf(caseInfo.getLat()));
+                caseInfo.setLat(pointXY.getLat()+"");
+                caseInfo.setLng(pointXY.getLon()+"");
+            }
+            //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("新市街道");
 
+                // 根据经纬度查询问题属地
+//                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);
@@ -576,6 +602,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();
     }
 
     /**
@@ -702,6 +758,15 @@
                 BeanUtils.copyProperties(caseInfo, caseInfoWeChatDTO);
                 caseInfoWeChatDTO.setProcessStatus(caseInfo.getInfoProcess());
                 caseInfoWeChatDTO.setProcessStatusName(caseInfo.getInfoProcessName());
+                //扩展信息
+                CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseInfo.getId());
+                if(ObjectUtils.isNotEmpty(caseInfoUnfold)){
+                    caseInfoWeChatDTO.setMediResult(caseInfoUnfold.getMediResult());
+                    caseInfoWeChatDTO.setMediResultName(caseInfoUnfold.getMediResultName());
+                    caseInfoWeChatDTO.setMediateDeptId(caseInfoUnfold.getMediateDeptId());
+                    caseInfoWeChatDTO.setMediateDeptName(caseInfoUnfold.getMediateDeptName());
+                }
+
                 QueryWrapper<CasePerson> personWrapper1 = new QueryWrapper<>();
                 personWrapper1.eq("case_id", caseInfo.getId());
                 List<CasePerson> casePersonList1 = personService.list(personWrapper1);

--
Gitblit v1.8.0