广州市综治平台后端
xusd
8 hours ago 2f83e6c961888e462b308223dfccbb679e6d9cd4
feature:增加市民编号,增加AI问答
6 files modified
63 ■■■■ changed files
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java 4 ●●●● patch | view | raw | blame | history
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java 9 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java 10 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml 2 ●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java 12 ●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/ai/AiChatController.java 26 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/dto/UserLoginDTO.java
@@ -36,6 +36,10 @@
     * 用户单位
     */
    private String unit;
    /**
     * 用户单位类型
     */
    private int unitType;
    /**
     * 用户部门
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());
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
@@ -1351,10 +1351,11 @@
    /**
     * 查询重复事项
     * @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) {
@@ -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);
    }
}
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">
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;
@@ -318,7 +319,7 @@
            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())) {
@@ -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);
@@ -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()));
    }
}
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) {