From 2f83e6c961888e462b308223dfccbb679e6d9cd4 Mon Sep 17 00:00:00 2001
From: xusd <330628789@qq.com>
Date: Thu, 26 Jun 2025 17:55:20 +0800
Subject: [PATCH] feature:增加市民编号,增加AI问答

---
 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java               |    9 ++
 dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java                            |   26 +++++---
 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java                       |    4 +
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java |   82 ++++++++++++++------------
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml         |    2 
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java              |   22 ++++--
 6 files changed, 87 insertions(+), 58 deletions(-)

diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java
index 364aa5a..feb3fc8 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java
+++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java
@@ -36,6 +36,10 @@
      * 用户单位
      */
     private String unit;
+    /**
+     * 用户单位类型
+     */
+    private int unitType;
 
     /**
      * 用户部门
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
index 27e7c43..fdfaf67 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
+++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
@@ -262,7 +262,8 @@
                     CtUnit ctUnit = ctUnitService.getById(ctUser.getUnitId());
                     if (ObjectUtils.isNotEmpty(ctUnit)) {
                         if (ctUnit.getUnitGrade() == UserBaseConsts.UNIT_GRADE_3 && ctUnit.getUnitType() == UserBaseConsts.UNIT_TYPE_102) {
-                            userLoginDTO.setUnit(ctUnit.getUnitDes());
+                            userLoginDTO.setUnit(ctUnit.getUnitName());
+                            userLoginDTO.setUnitType(ctUnit.getUnitType());
 //                            CtUnit parentCtUnit = ctUnitService.getById(ctUnit.getParentId());
 //                            if (ObjectUtils.isNotEmpty(parentCtUnit)) {1
 //                                userLoginDTO.setUnit(parentCtUnit.getUnitName());
@@ -271,6 +272,7 @@
 //                            }
                         } else {
                             userLoginDTO.setUnit(ctUnit.getUnitName());
+                            userLoginDTO.setUnitType(ctUnit.getUnitType());
                         }
                     } else {
                         userLoginDTO.setUnit(ctUser.getUnitName());
@@ -578,6 +580,7 @@
                     log.info("xsdctUnit:{}", ctUnit);
                     ctUnitService.saveCtUnit(ctUnit);
                     userLoginDTO.setUnit(ctUnit.getUnitName());
+                    userLoginDTO.setUnitType(ctUnit.getUnitType());
                     ctUser.setUnitName(ctUnit.getUnitName());
                     ctUser.setUnitId(ctUnit.getId());
                     ctUserService.updateCtUser(ctUser);
@@ -639,6 +642,10 @@
         userLoginDTO.setUserId(ctUser.getId());
         userLoginDTO.setTrueName(ctUser.getTrueName());
         userLoginDTO.setUnit(ctUser.getUnitName());
+        CtUnit byId = ctUnitService.getById(ctUser.getUnitId());
+        if (byId != null) {
+            userLoginDTO.setUnitType(byId.getUnitType());
+        }
         userLoginDTO.setDept(ctUser.getDeptName());
         userLoginDTO.setPhone(ctUser.getMobile());
         userLoginDTO.setCustId(ctUser.getCustId());
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
index 270ed62..fdf0fb0 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
@@ -864,7 +864,7 @@
             String areaType = request.getParameter("areaType");
             terms.put("areaType", areaType);
             String unitGrades = request.getParameter("unitGrades");
-            if(ObjectUtils.isNotEmpty(unitGrades)){
+            if (ObjectUtils.isNotEmpty(unitGrades)) {
                 String[] split = unitGrades.split(",");
                 List<String> unitGradeList = new ArrayList<>();
                 for (String s : split) {
@@ -874,7 +874,7 @@
             }
             //统计条件 resolveType 1-化解中,2-已结案,3-不予受理
             String resolveType = request.getParameter("resolveType");
-            if(ObjectUtils.isNotEmpty(unitGrades)){
+            if (ObjectUtils.isNotEmpty(unitGrades)) {
                 terms.put("resolveType", resolveType);
             }
 
@@ -927,7 +927,7 @@
             Map<String, Object> terms = getParameterAll();
             String createStart = request.getParameter("createStart");
             String createEnd = request.getParameter("createEnd");
-            if(ObjectUtils.isEmpty(createStart) || ObjectUtils.isEmpty(createEnd)){
+            if (ObjectUtils.isEmpty(createStart) || ObjectUtils.isEmpty(createEnd)) {
                 return ReturnFailUtils.getRepInfo("请选择登记时间区间");
             }
             //计算两个时间的天数
@@ -935,7 +935,7 @@
             LocalDate date1 = LocalDate.parse(createStart, formatter);
             LocalDate date2 = LocalDate.parse(createEnd, formatter);
             long daysBetween = ChronoUnit.DAYS.between(date1, date2);
-            if(daysBetween > 366){
+            if (daysBetween > 366) {
                 return ReturnFailUtils.getRepInfo("选择登记时间区间不能大于1年");
             }
 
@@ -951,47 +951,47 @@
                     CaseInfoWeExcelDTO caseInfoWeExcelDTO = new CaseInfoWeExcelDTO();
                     BeanUtils.copyProperties(casePageDTO, caseInfoWeExcelDTO);
                     caseInfoWeExcelDTO.setSysSource("本系统");
-                    Map<String,String> personMap = new HashMap<>();
+                    Map<String, String> personMap = new HashMap<>();
                     //申请人
-                    if(ObjectUtils.isNotEmpty(casePageDTO.getPlaintiffList())){
+                    if (ObjectUtils.isNotEmpty(casePageDTO.getPlaintiffList())) {
                         StringBuffer sb = new StringBuffer();
                         for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getPlaintiffList()) {
-                            if(ObjectUtils.isNotEmpty(casePersonWeDTO.getExtreme()) && casePersonWeDTO.getExtreme().equals(1)){
+                            if (ObjectUtils.isNotEmpty(casePersonWeDTO.getExtreme()) && casePersonWeDTO.getExtreme().equals(1)) {
                                 extreme = "是";
                             }
                             personMap.put(casePersonWeDTO.getId(), casePersonWeDTO.getTrueName());
-                            if(CaseBaseConstsEnum.PERSON_CLASS_1.getIndex().equals(casePersonWeDTO.getPerClass())){
+                            if (CaseBaseConstsEnum.PERSON_CLASS_1.getIndex().equals(casePersonWeDTO.getPerClass())) {
                                 sb.append(casePersonWeDTO.getTrueName());
-                                if(ObjectUtils.isNotEmpty(casePersonWeDTO.getCertiNo())){
+                                if (ObjectUtils.isNotEmpty(casePersonWeDTO.getCertiNo())) {
                                     sb.append("(").append(casePersonWeDTO.getCertiNo()).append(")");
                                 }
                                 sb.append("、");
-                            }else{
+                            } else {
                                 sb.append(casePersonWeDTO.getTrueName());
-                                if(ObjectUtils.isNotEmpty(casePersonWeDTO.getOrgaCode())){
+                                if (ObjectUtils.isNotEmpty(casePersonWeDTO.getOrgaCode())) {
                                     sb.append("(").append(casePersonWeDTO.getOrgaCode()).append(")");
                                 }
                                 sb.append("、");
                             }
                         }
                         //申请代理人
-                        if(ObjectUtils.isNotEmpty(casePageDTO.getAgentList())){
+                        if (ObjectUtils.isNotEmpty(casePageDTO.getAgentList())) {
                             for (CaseAgentWeDTO caseAgentWeDTO : casePageDTO.getAgentList()) {
                                 if (CaseBaseConstsEnum.PERSON_TYPE_3.getIndex().equals(caseAgentWeDTO.getPerType())) {
                                     sb.append(caseAgentWeDTO.getTrueName());
                                     sb.append("(");
-                                    if(ObjectUtils.isNotEmpty(caseAgentWeDTO.getCertiNo())){
+                                    if (ObjectUtils.isNotEmpty(caseAgentWeDTO.getCertiNo())) {
                                         sb.append(caseAgentWeDTO.getCertiNo()).append(",");
                                     }
                                     sb.append("代理对象:");
-                                    if(ObjectUtils.isNotEmpty(personMap.get(caseAgentWeDTO.getPersonId()))){
+                                    if (ObjectUtils.isNotEmpty(personMap.get(caseAgentWeDTO.getPersonId()))) {
                                         String[] split = caseAgentWeDTO.getPersonId().split(",");
                                         Boolean isfrist = true;
                                         for (String personId : split) {
-                                            if(isfrist){
+                                            if (isfrist) {
                                                 sb.append(personMap.get(personId));
                                                 isfrist = false;
-                                            }else{
+                                            } else {
                                                 sb.append(",").append(personMap.get(personId));
                                             }
                                         }
@@ -1003,42 +1003,42 @@
                         caseInfoWeExcelDTO.setPlaintiffs(sb.substring(0, sb.length() - 1));
                     }
                     //被申请人
-                    if(ObjectUtils.isNotEmpty(casePageDTO.getDefendantList())){
+                    if (ObjectUtils.isNotEmpty(casePageDTO.getDefendantList())) {
                         StringBuffer sb = new StringBuffer();
                         for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getDefendantList()) {
                             personMap.put(casePersonWeDTO.getId(), casePersonWeDTO.getTrueName());
-                            if(CaseBaseConstsEnum.PERSON_CLASS_1.getIndex().equals(casePersonWeDTO.getPerClass())){
+                            if (CaseBaseConstsEnum.PERSON_CLASS_1.getIndex().equals(casePersonWeDTO.getPerClass())) {
                                 sb.append(casePersonWeDTO.getTrueName());
-                                if(ObjectUtils.isNotEmpty(casePersonWeDTO.getCertiNo())){
+                                if (ObjectUtils.isNotEmpty(casePersonWeDTO.getCertiNo())) {
                                     sb.append("(").append(casePersonWeDTO.getCertiNo()).append(")");
                                 }
                                 sb.append("、");
-                            }else{
+                            } else {
                                 sb.append(casePersonWeDTO.getTrueName());
-                                if(ObjectUtils.isNotEmpty(casePersonWeDTO.getOrgaCode())){
+                                if (ObjectUtils.isNotEmpty(casePersonWeDTO.getOrgaCode())) {
                                     sb.append("(").append(casePersonWeDTO.getOrgaCode()).append(")");
                                 }
                                 sb.append("、");
                             }
                         }
                         //被申请代理人
-                        if(ObjectUtils.isNotEmpty(casePageDTO.getAgentList())){
+                        if (ObjectUtils.isNotEmpty(casePageDTO.getAgentList())) {
                             for (CaseAgentWeDTO caseAgentWeDTO : casePageDTO.getAgentList()) {
                                 if (CaseBaseConstsEnum.PERSON_TYPE_4.getIndex().equals(caseAgentWeDTO.getPerType())) {
                                     sb.append(caseAgentWeDTO.getTrueName());
                                     sb.append("(");
-                                    if(ObjectUtils.isNotEmpty(caseAgentWeDTO.getCertiNo())){
+                                    if (ObjectUtils.isNotEmpty(caseAgentWeDTO.getCertiNo())) {
                                         sb.append(caseAgentWeDTO.getCertiNo()).append(",");
                                     }
                                     sb.append("代理对象:");
-                                    if(ObjectUtils.isNotEmpty(personMap.get(caseAgentWeDTO.getPersonId()))){
+                                    if (ObjectUtils.isNotEmpty(personMap.get(caseAgentWeDTO.getPersonId()))) {
                                         String[] split = caseAgentWeDTO.getPersonId().split(",");
                                         Boolean isfrist = true;
                                         for (String personId : split) {
-                                            if(isfrist){
+                                            if (isfrist) {
                                                 sb.append(personMap.get(personId));
                                                 isfrist = false;
-                                            }else{
+                                            } else {
                                                 sb.append(",").append(personMap.get(personId));
                                             }
                                         }
@@ -1053,10 +1053,10 @@
                     caseInfoWeExcelDTO.setCreateTime(DateUtils.DateToString(casePageDTO.getCreateTime(), "yyyy/MM/dd"));
                     caseInfoWeExcelDTO.setVisitTime(DateUtils.DateToString(casePageDTO.getVisitTime(), "yyyy/MM/dd"));
                     caseInfoWeExcelDTO.setOccurTime(DateUtils.DateToString(casePageDTO.getOccurTime(), "yyyy/MM/dd"));
-                    caseInfoWeExcelDTO.setPeopleNum(casePageDTO.getPeopleNum()+"");
-                    caseInfoWeExcelDTO.setAmount(casePageDTO.getAmount()+"");
+                    caseInfoWeExcelDTO.setPeopleNum(casePageDTO.getPeopleNum() + "");
+                    caseInfoWeExcelDTO.setAmount(casePageDTO.getAmount() + "");
                     caseInfoWeExcelDTO.setExtreme(extreme);
-                    if(ObjectUtils.isNotEmpty(casePageDTO.getMajorStatus())){
+                    if (ObjectUtils.isNotEmpty(casePageDTO.getMajorStatus())) {
                         switch (casePageDTO.getMajorStatus()) {
                             case 1:
                                 caseInfoWeExcelDTO.setMajorStatus("是");
@@ -1066,7 +1066,7 @@
                                 break;
                         }
                     }
-                    caseInfoWeExcelDTO.setSort(i+"");
+                    caseInfoWeExcelDTO.setSort(i + "");
                     i++;
                     excelList.add(caseInfoWeExcelDTO);
                 }
@@ -1115,13 +1115,13 @@
             Map<String, Object> terms = getParameterAll();
             CaseStatisticsBaseDTO statistics = service.statistics(terms, null);
             List<CaseInfoWeAreaExcelDTO> excelList = new ArrayList<>();
-            if(ObjectUtils.isNotEmpty(statistics.getAreaList())){
+            if (ObjectUtils.isNotEmpty(statistics.getAreaList())) {
                 int i = 1;
                 for (CaseStatisticsAreaDTO caseStatisticsAreaDTO : statistics.getAreaList()) {
                     CaseInfoWeAreaExcelDTO caseInfoWeAreaExcelDTO = new CaseInfoWeAreaExcelDTO();
                     BeanUtils.copyProperties(caseStatisticsAreaDTO, caseInfoWeAreaExcelDTO);
-                    caseInfoWeAreaExcelDTO.setSort(i+"");
-                    caseInfoWeAreaExcelDTO.setFinishNUm(caseStatisticsAreaDTO.getResolveNum()+caseStatisticsAreaDTO.getUnResolveNum());
+                    caseInfoWeAreaExcelDTO.setSort(i + "");
+                    caseInfoWeAreaExcelDTO.setFinishNUm(caseStatisticsAreaDTO.getResolveNum() + caseStatisticsAreaDTO.getUnResolveNum());
                     excelList.add(caseInfoWeAreaExcelDTO);
                     i++;
                 }
@@ -1314,7 +1314,7 @@
             String ledgerType = request.getParameter("ledgerType");
 
             //所有表里面的数据都是本系统,其他的后续会新建表存储
-            if(ObjectUtils.isNotEmpty(ledgerType) && !"1".equals(ledgerType)){
+            if (ObjectUtils.isNotEmpty(ledgerType) && !"1".equals(ledgerType)) {
                 terms.put("canal", "-1");
             }
             return ReturnSucUtils.getRepInfo("处理成功", service.ledger(terms, userId, ledgerType));
@@ -1339,7 +1339,7 @@
             String ledgerType = request.getParameter("ledgerType");
 
             //所有表里面的数据都是本系统,其他的后续会新建表存储
-            if(ObjectUtils.isNotEmpty(ledgerType) && !"1".equals(ledgerType)){
+            if (ObjectUtils.isNotEmpty(ledgerType) && !"1".equals(ledgerType)) {
                 terms.put("canal", "-1");
             }
             return ReturnSucUtils.getRepInfo("处理成功", service.ledgerCount(terms, userId));
@@ -1351,13 +1351,14 @@
 
     /**
      * 查询重复事项
-     * @url {ctx}/api/web/caseInfo/listRepeatCase
+     *
      * @param caseId 案件编号
      * @param userId 登录用户
      * @return Object
+     * @url {ctx}/api/web/caseInfo/listRepeatCase
      */
     @GetMapping("/listRepeatCase")
-    public Object listRepeatCase( @RequestParam(value = "caseId") String caseId, @CurrentUser String userId) {
+    public Object listRepeatCase(@RequestParam(value = "caseId") String caseId, @CurrentUser String userId) {
         try {
             return ReturnSucUtils.getRepInfo(caseRepeatService.listRepeatCase(caseId));
         } catch (Exception e) {
@@ -1367,8 +1368,8 @@
     }
 
     /**
-     *
      * 协同推送-网格推送案件入库
+     *
      * @param registerSaveDTO 实体对象
      * @url {ctx}/api/web/caseInfo/gridCaseRegister
      */
@@ -1381,4 +1382,9 @@
             return ReturnFailUtils.getRepInfo(e.getMessage());
         }
     }
+
+    @GetMapping("/getCaseNo")
+    public R<String> getCaseNo(@CurrentUser String userId) {
+        return service.createCaseNo(userId);
+    }
 }
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
index 10fe974..1bcdceb 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
@@ -1032,7 +1032,7 @@
         LEFT JOIN dyh_ct_unit c ON b.belong_unit_id = c.id
         left join (select id ,case_id from dyh_case_task group by case_id) d on a.id = d.case_id
         <if test="terms.cityCode != null and terms.cityCode !=''">
-            left join dyh_th_grid_citizen_event d on d.case_id = a.id
+            left join dyh_th_grid_citizen_event e on e.case_id = a.id
         </if>
         <include refid="where-part-all"/>
         <if test="page.sort != null">
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 dc9ff88..db07ccf 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,5 +1,6 @@
 package cn.huge.module.cases.service;
 
+import cn.huge.base.common.bo.R;
 import cn.huge.base.common.exception.ServiceException;
 import cn.huge.base.common.utils.*;
 import cn.huge.module.casebook.consts.ByCaseTypeEnum;
@@ -312,13 +313,13 @@
             generateQrCodeRequestVo.setBusinessSource("02");
             generateQrCodeRequestVo.setGenerateUnifiedCode(true);
             generateQrCodeRequestVo.setInfoSource("03");
-            log.info("xsdgridCode:{}",registerSaveDTO.getQueArea());
+            log.info("xsdgridCode:{}", registerSaveDTO.getQueArea());
             String area = this.formatGridCode(registerSaveDTO.getQueArea());
-            log.info("xsdgridCode:{}",area);
+            log.info("xsdgridCode:{}", area);
             generateQrCodeRequestVo.setGridCode(area);
             caseInfo.setCaseRef(sysClient.getCaseRefByGenerateQrCode(generateQrCodeRequestVo));
             // 获取调解案号
-            caseInfo.setCaseNo(utilsClient.createCaseNo(ctUnitDTO.getArea()));
+//            caseInfo.setCaseNo(utilsClient.createCaseNo(ctUnitDTO.getArea()));
             caseInfo.setVisitWay(CaseBaseConstsEnum.getVisitWayByCanal(caseInfo.getCanal()).getIndex());
             caseInfo.setVisitWayName(CaseBaseConstsEnum.getVisitWayByCanal(caseInfo.getCanal()).getDes());
             if (caseInfo.getCanal().equals(CaseBaseConstsEnum.CASE_CANAL_3.getIndex())) {
@@ -609,7 +610,7 @@
                 caseInfoDTO.setTcqk(caseInfoUnfold.getTcqk());
             }
             ThGridCitizenEvent thGridCitizenEvent = thGridCitizenEventService.getByCaseId(caseId);
-            if(thGridCitizenEvent!=null){
+            if (thGridCitizenEvent != null) {
                 caseInfoDTO.setCityCode(thGridCitizenEvent.getCitizenEventCode());
             }
         } else {
@@ -829,7 +830,7 @@
         generateQrCodeRequestVo.setGridCode(area);
         caseInfo.setCaseRef(sysClient.getCaseRefByGenerateQrCode(generateQrCodeRequestVo));
         // 生产调解案号
-        caseInfo.setCaseNo(utilsClient.createCaseNo(caseInfo.getQueArea()));
+//        caseInfo.setCaseNo(utilsClient.createCaseNo(caseInfo.getQueArea()));
         log.info("xsdcaseInfo:{}", caseInfo);
         caseInfoUnfold.setId(caseInfo.getId());
         caseInfoUnfold.setCreateTime(nowDate);
@@ -2105,7 +2106,7 @@
         return caseOverviewDetailDTOs;
     }
 
-    public CaseStatisticsBaseDTO ledger(Map<String, Object> terms, String userId,String ledgerType) throws IOException {
+    public CaseStatisticsBaseDTO ledger(Map<String, Object> terms, String userId, String ledgerType) throws IOException {
         terms.put("statistics", "1");
 
         CtUnitDTO ctUnitDTO = null;
@@ -2189,7 +2190,7 @@
         List<CaseStatisticsAreaDTO> areaList = new ArrayList<>();
 
         //本系统或者全部的时候才去查询数据
-        if(ObjectUtils.isEmpty(ledgerType) || "1".equals(ledgerType)){
+        if (ObjectUtils.isEmpty(ledgerType) || "1".equals(ledgerType)) {
             caseStatisticsBaseDTO = statisticsProcess(terms);
 
             //区域数据统计
@@ -2529,7 +2530,7 @@
                 }
 
                 // 获取调解案号
-                caseInfo.setCaseNo(utilsClient.createCaseNo(ctUnitDTO.getArea()));
+//                caseInfo.setCaseNo(utilsClient.createCaseNo(ctUnitDTO.getArea()));
                 caseInfo.setVisitWay(CaseBaseConstsEnum.VISIT_WAY_4.getIndex());
                 caseInfo.setVisitWayName(CaseBaseConstsEnum.VISIT_WAY_4.getDes());
                 if (StringUtils.isEmpty(caseInfo.getCanal())) {
@@ -2604,4 +2605,9 @@
                 .insert(5, "-")
                 .toString();
     }
+
+    public R<String> createCaseNo(String userId) {
+        CtUnitDTO unitByUserId = custClient.getUnitByUserId(userId);
+        return R.ok(utilsClient.createCaseNo(unitByUserId.getArea()));
+    }
 }
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java
index 6420519..b0b75fd 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java
+++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java
@@ -1,5 +1,6 @@
 package cn.huge.module.ai;
 
+import cn.huge.base.common.bo.R;
 import cn.huge.base.common.utils.HttpClientUtils;
 import cn.huge.base.common.utils.ReturnFailUtils;
 import cn.huge.base.common.utils.ReturnSucUtils;
@@ -9,6 +10,7 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -19,13 +21,14 @@
 import java.util.Map;
 
 @RestController
-@RequestMapping("/api/ai/chat")
+@RequestMapping("/api/web/ai/chat")
+@Slf4j
 public class AiChatController {
 
     private String url = "http://10.202.1.102:9002/";
 
     @PostMapping("/risk")
-    public String risk(@RequestBody AiRequestVo aiRequestVo) {
+    public R<String> risk(@RequestBody AiRequestVo aiRequestVo) {
         String postUrl = url + "v1/workflows/run";
         initHead("Bearer app-8ylvZOHf2fOgTGfe28MYtHDD");
         String s = "";
@@ -40,18 +43,19 @@
             if (data != null) {
                 JSONObject outputs = data.getJSONObject("outputs");
                 if (outputs != null) {
-                    JSONArray result = outputs.getJSONArray("result");
-                    if (result != null && result.size() > 0) {
-                        return result.getJSONObject(0).getString("is_risk_ai");
+                    JSONObject body = outputs.getJSONObject("body");
+                    if (body != null) {
+                        return R.ok(body.getJSONObject("data").getString("is_risk_ai"));
                     }
                 }
             }
         }
-        return "0";
+        log.info("xsd:{}", object);
+        return R.ok("0");
     }
 
     @PostMapping("/chat")
-    public AiBodyDto chat(@RequestBody AiRequestVo aiRequestVo) {
+    public R<AiBodyDto> chat(@RequestBody AiRequestVo aiRequestVo) {
         String postUrl = url + "v1/chat-messages";
         String s = "";
         AiBodyDto aiBodyDto = new AiBodyDto();
@@ -67,11 +71,12 @@
             aiBodyDto.setAnswer(answer);
             aiBodyDto.setConversationId(conversation_id);
         }
-        return aiBodyDto;
+        log.info("xsd:{}", aiBodyDto);
+        return R.ok(aiBodyDto);
     }
 
     @PostMapping("/strategy")
-    public AiBodyDto strategy(@RequestBody AiRequestVo aiRequestVo) {
+    public R<AiBodyDto> strategy(@RequestBody AiRequestVo aiRequestVo) {
         String postUrl = url + "v1/workflows/run";
         String s = "";
         AiBodyDto aiBodyDto = new AiBodyDto();
@@ -91,7 +96,8 @@
                 }
             }
         }
-        return aiBodyDto;
+        log.info("xsd:{}", aiBodyDto);
+        return R.ok(aiBodyDto);
     }
 
     private Map<String, String> initHead(String token) {

--
Gitblit v1.8.0