forked from gzzfw/backEnd/gz-dyh

huangh
2024-09-26 229cdb3d5692219b8ddd3ebcf13873d3a0bc703a
Merge remote-tracking branch 'origin/gzdyh_test' into gzdyh_test
4 files deleted
6 files added
36 files modified
1866 ■■■■■ changed files
dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/QueAreaDTO.java 23 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-cust/src/main/java/cn/huge/module/rsoper/dao/mapper/xml/RsRolefunMapper.xml 1 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseAreaWebController.java 171 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java 93 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CasePersonWebController.java 16 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java 52 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java 192 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAreaMapper.java 64 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java 3 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml 4 ●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAreaMapper.xml 139 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml 4 ●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml 85 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml 18 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml 4 ●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml 14 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml 20 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml 4 ●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonBO.java 4 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AllSignDTO.java 21 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseInfoWeExcelDTO.java 23 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java 39 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java 9 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseStatisticsAreaDTO.java 1 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java 20 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageListDTO.java 22 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java 6 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CasePerson.java 12 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java 7 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAreaService.java 137 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java 119 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java 53 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java 25 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java 9 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java 21 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/draft/dao/mapper/xml/CasedraftPersonMapper.xml 17 ●●●● patch | view | raw | blame | history
dyh-service/dyh-mediate/src/main/java/cn/huge/module/draft/domain/po/CasedraftPerson.java 12 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java 48 ●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/web/GridCompanyWebController.java 70 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/wechat/GridCompanyWechatController.java 63 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/domain/dto/CasePersonDTO.java 54 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java 40 ●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridUserService.java 12 ●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java 18 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java 70 ●●●●● patch | view | raw | blame | history
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java 27 ●●●● patch | view | raw | blame | history
dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/QueAreaDTO.java
New file
@@ -0,0 +1,23 @@
package cn.huge.module.sys.dto;
import lombok.Data;
/**
 * @author zhouxiantao
 * @create 2024-09-24 17:59
 */
@Data
public class QueAreaDTO {
    /**
     * 区域编码
     */
    private String areaCode;
    /**
     * 区域名称
     */
    private String areaName;
    /**
     * 父级区域编码
     */
    private String parentId;
}
dyh-service/dyh-cust/src/main/java/cn/huge/module/rsoper/dao/mapper/xml/RsRolefunMapper.xml
@@ -137,6 +137,7 @@
        t2.menu_icon as powerIcon, t2.parent_id as parentId
        from dyh_rs_rolefun t1 left join dyh_rs_menu t2 on t1.menu_id = t2.id
        where role_id = #{roleId}
        order by t2.sorts
    </select>
</mapper> 
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseAreaWebController.java
File was deleted
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
@@ -86,6 +86,47 @@
        if (StringUtils.isNotBlank(areaType)){
            terms.put("areaType", areaType);
        }
        // 实际调解组织编号
        String mediateUnitId = request.getParameter("mediateUnitId");
        if (StringUtils.isNotBlank(mediateUnitId)){
            terms.put("mediateUnitId", mediateUnitId);
        }
        // 配合组织,多个用,隔开
        String assistUnitId = request.getParameter("assistUnitId");
        if (StringUtils.isNotBlank(assistUnitId)){
            terms.put("assistUnitId", assistUnitId);
        }
        // 配合组织,多个用,隔开
        String evaluateGrade = request.getParameter("evaluateGrade");
        if (StringUtils.isNotBlank(evaluateGrade)){
            terms.put("evaluateGrade", evaluateGrade);
        }
        String peopleNum = request.getParameter("peopleNum");
        if (StringUtils.isNotBlank(peopleNum)){
            String[] split = peopleNum.split("-");
            String number = split[0];
            if(number.equals("0") && split.length==1){
                terms.put("peopleNumEnd", split[0]);
            }else{
                terms.put("peopleNumStart", split[0]);
                if(split.length>1){
                    terms.put("peopleNumEnd", split[1]);
                }
            }
        }
        String amount = request.getParameter("amount");
        if (StringUtils.isNotBlank(amount)){
            String[] split = amount.split("-");
            String number = split[0];
            if(number.equals("0") && split.length==1){
                terms.put("amountEnd", split[0]);
            }else{
                terms.put("amountStart", split[0]);
                if(split.length>1){
                    terms.put("amountEnd", split[1]);
                }
            }
        }
        return terms;
    }
@@ -586,7 +627,37 @@
    public Object pageQueryAll(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
        try {
            Map<String, Object> terms = getParameterAll();
            Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time");
            Sort sort = null;
            String sortName = null;
            String sortColmnStr = request.getParameter("sortColmn");
            String sortTypeStr = request.getParameter("sortType");
            int sortColmn = 1;
            int sortType = 1;
            if (StringUtils.isNotBlank(sortColmnStr)) {
                sortColmn = Integer.valueOf(sortColmnStr);
            }
            if (StringUtils.isNotBlank(sortTypeStr)) {
                sortType = Integer.valueOf(sortTypeStr);
            }
            switch (sortColmn) {
                case 1:
                    sortName = "a.create_time";
                    break;
                case 2:
                    sortName = "b.close_time";
                    break;
            }
            switch (sortType) {
                case 1:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
            }
            if (ObjectUtils.isEmpty(sort)) {
                sort = Sort.by(Sort.Direction.DESC, "a.create_time");
            }
            PageRequest pageRequest = PageRequest.of(page-1, size, sort);
            Page<CasePageDTO> caseInfoPage = service.pageQueryAll(pageRequest, terms);
            return ReturnSucUtils.getRepInfo( "处理成功", caseInfoPage);
@@ -615,24 +686,8 @@
                    CaseInfoWeExcelDTO caseInfoWeExcelDTO = new CaseInfoWeExcelDTO();
                    BeanUtils.copyProperties(casePageDTO,caseInfoWeExcelDTO);
                    caseInfoWeExcelDTO.setCloseTime(DateUtils.DateToString(casePageDTO.getCloseTime(), DateUtils.YYYY_MM_DD));
                    if(ObjectUtils.isNotEmpty(casePageDTO.getPlaintiffList())){
                        StringBuffer sb = new StringBuffer();
                        for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getPlaintiffList()) {
                            sb.append(casePersonWeDTO.getTrueName()).append(",");
                        }
                        if(ObjectUtils.isNotEmpty(sb)){
                            caseInfoWeExcelDTO.setPlaintiffStr(sb.substring(0,sb.length()-1));
                        }
                    }
                    if(ObjectUtils.isNotEmpty(casePageDTO.getDefendantList())){
                        StringBuffer sb = new StringBuffer();
                        for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getDefendantList()) {
                            sb.append(casePersonWeDTO.getTrueName()).append(",");
                        }
                        if(ObjectUtils.isNotEmpty(sb)){
                            caseInfoWeExcelDTO.setDefendantStr(sb.substring(0,sb.length()-1));
                        }
                    }
                    caseInfoWeExcelDTO.setCreateTime(DateUtils.DateToString(casePageDTO.getCreateTime(), DateUtils.YYYY_MM_DD));
                    caseInfoWeExcelDTO.setCaseTypeName(casePageDTO.getCaseTypeFirstName()+"/"+casePageDTO.getCaseTypeName());
                    excelList.add(caseInfoWeExcelDTO);
                }
            }
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CasePersonWebController.java
@@ -22,8 +22,8 @@
 * @title: 纠纷当事人信息表接口api-web端
 * @description: 纠纷当事人信息表接口api-web端
 * @company: hugeinfo
 * @author: wangwh
 * @time: 2024-08-27 10:48:18
 * @author: liyj
 * @time: 2024-09-24 14:18:41
 * @version: 1.0.0
 */
@Slf4j
@@ -48,7 +48,7 @@
        if (StringUtils.isNotBlank(id)){
            terms.put("id", id);
        }
        // 纠纷编号
        // 纠纷信息编号
        String caseId = request.getParameter("caseId");
        if (StringUtils.isNotBlank(caseId)){
            terms.put("caseId", caseId);
@@ -57,6 +57,11 @@
        String partyUserId = request.getParameter("partyUserId");
        if (StringUtils.isNotBlank(partyUserId)){
            terms.put("partyUserId", partyUserId);
        }
        // 企业信息编号
        String companyId = request.getParameter("companyId");
        if (StringUtils.isNotBlank(companyId)){
            terms.put("companyId", companyId);
        }
        // 当事人地位
        String perType = request.getParameter("perType");
@@ -233,6 +238,11 @@
        if (StringUtils.isNotBlank(placeAddr)){
            terms.put("placeAddr", placeAddr);
        }
        // 工作单位编号
        String workUnitId = request.getParameter("workUnitId");
        if (StringUtils.isNotBlank(workUnitId)){
            terms.put("workUnitId", workUnitId);
        }
        // 工作单位
        String workUnit = request.getParameter("workUnit");
        if (StringUtils.isNotBlank(workUnit)){
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseRegisterInfoWebController.java
@@ -28,82 +28,88 @@
public class CaseRegisterInfoWebController {
    @Autowired(required = false)
    private HttpServletRequest request;
    private Map<String, Object> getParameter(){
    private Map<String, Object> getParameter() {
        Map<String, Object> terms = Maps.newHashMap();
        // 登记部门
        String inputUnitName = request.getParameter("inputUnitName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(inputUnitName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(inputUnitName)) {
            terms.put("inputUnitName", inputUnitName);
        }
        // 事项等级
        String caseLevel = request.getParameter("caseLevel");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseLevel)){
            terms.put("caseLevel", caseLevel);
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseLevel)) {
            if (caseLevel.equals("三级"))
                terms.put("caseLevel", 3);
            else if (caseLevel.equals("二级"))
                terms.put("caseLevel", 2);
            else
                terms.put("caseLevel", 1);
        }
        // 纠纷一级类型
        String caseTypeFirst = request.getParameter("caseTypeFirst");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirst)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirst)) {
            terms.put("caseTypeFirst", caseTypeFirst);
        }
        // 纠纷一级类型名称
        String caseTypeFirstName = request.getParameter("caseTypeFirstName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirstName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeFirstName)) {
            terms.put("caseTypeFirstName", caseTypeFirstName);
        }
        // 纠纷类型
        String caseType = request.getParameter("caseType");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseType)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseType)) {
            terms.put("caseType", caseType);
        }
        // 纠纷类型名称
        String caseTypeName = request.getParameter("caseTypeName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(caseTypeName)) {
            terms.put("caseTypeName", caseTypeName);
        }
        // 事项来源
        String canal = request.getParameter("canal");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(canal)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(canal)) {
            terms.put("canal", canal);
        }
        // 事项来源名称
        String canalName = request.getParameter("canalName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(canalName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(canalName)) {
            terms.put("canalName", canalName);
        }
        // 申请方当事人名称
        String plaintiffs = request.getParameter("plaintiffs");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(plaintiffs)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(plaintiffs)) {
            terms.put("plaintiffs", plaintiffs);
        }
        // 被申请方当事人名称
        String defendants = request.getParameter("defendants");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(defendants)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(defendants)) {
            terms.put("defendants", defendants);
        }
        // 事项状态,1:待分派,2:待签收,3:待受理,4:化解中,5:结案审核,6:待评价,7:已归档
        String status = request.getParameter("status");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(status)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(status)) {
            terms.put("status", status);
        }
        // 事项状态名称
        String statusName = request.getParameter("statusName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(statusName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(statusName)) {
            terms.put("statusName", statusName);
        }
        // 事项状态名称
        String mediResultName = request.getParameter("mediResultName");
        if (org.apache.commons.lang3.StringUtils.isNotBlank(mediResultName)){
        if (org.apache.commons.lang3.StringUtils.isNotBlank(mediResultName)) {
            terms.put("mediResultName", mediResultName);
        }
        // 登记时间区间
        String createStart = request.getParameter("createStart");
        String createEnd = request.getParameter("createEnd");
        if(org.apache.commons.lang3.StringUtils.isNotBlank(createStart) && org.apache.commons.lang3.StringUtils.isNotBlank(createEnd)) {
        if (org.apache.commons.lang3.StringUtils.isNotBlank(createStart) && org.apache.commons.lang3.StringUtils.isNotBlank(createEnd)) {
            terms.put("createStart", createStart);
            terms.put("createEnd", createEnd);
        }
@@ -115,7 +121,7 @@
    @GetMapping("/pageQuery")
    public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size
            ) {
    ) {
        try {
            Map<String, Object> terms = getParameter();
            // 排序
@@ -125,13 +131,13 @@
            String sortTypeStr = request.getParameter("sortType");
            int sortColmn = 1;
            int sortType = 1;
            if(StringUtils.isNotBlank(sortColmnStr)){
            if (StringUtils.isNotBlank(sortColmnStr)) {
                sortColmn = Integer.valueOf(sortColmnStr);
            }
            if(StringUtils.isNotBlank(sortTypeStr)){
            if (StringUtils.isNotBlank(sortTypeStr)) {
                sortType = Integer.valueOf(sortTypeStr);
            }
            switch (sortColmn){
            switch (sortColmn) {
                case 1:
                    sortName = "t1.create_time";
                    break;
@@ -142,7 +148,7 @@
                    sortName = "t3.number";
                    break;
            }
            switch (sortType){
            switch (sortType) {
                case 1:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
@@ -150,7 +156,7 @@
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
            if (ObjectUtils.isEmpty(sort)) {
                sort = Sort.by(Sort.Direction.DESC, "t1.create_time");
            }
@@ -158,7 +164,7 @@
            Page<CaseRegisterDTO> caseInfoPage = service.pageQueryRegister(pageRequest, terms);
            return ReturnSucUtils.getRepInfo("处理成功", caseInfoPage);
        } catch (Exception e) {
            log.error("Controller接口[CaseRegisterInfoWebController.pageQuery]请求异常:" + e, e);
            return ReturnFailUtils.getRepInfo();
        }
    }
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
@@ -4,10 +4,7 @@
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.base.config.CurrentUser;
import cn.huge.module.cases.domain.dto.AcceptTaskDTO;
import cn.huge.module.cases.domain.dto.AssignTaskDTO;
import cn.huge.module.cases.domain.dto.FrontPageListSLDTO;
import cn.huge.module.cases.domain.dto.SignTaskDTO;
import cn.huge.module.cases.domain.dto.*;
import cn.huge.module.cases.domain.po.*;
import cn.huge.module.cases.service.*;
import cn.huge.module.client.api.SysClient;
@@ -137,22 +134,21 @@
     * @return Object
     */
    @PostMapping("/allSign")
    public Object allSign(@CurrentUser String userId) {
    public Object allSign(@CurrentUser String userId, @RequestBody AllSignDTO allSignDTO) {
        try {
            // 条件
            Map<String, Object> terms = Maps.newHashMap();
            // 流程/签收时间区间
            String timeStart = request.getParameter("timeStart");
            String timeEnd = request.getParameter("timeEnd");
            if(StringUtils.isNotBlank(timeStart) && StringUtils.isNotBlank(timeEnd)) {
                // 待签收,查询流转时间
                terms.put("createTimeStart", timeStart);
                terms.put("createTimeEnd", timeEnd);
            }
            // 查询申请方/被申请方关键词
            String partyName = request.getParameter("partyName");
            if (StringUtils.isNotBlank(partyName)){
                terms.put("partyName", partyName);
            if(ObjectUtils.isNotEmpty(allSignDTO)){
                // 流程/签收时间区间
                if(StringUtils.isNotBlank(allSignDTO.getTimeStart()) && StringUtils.isNotBlank(allSignDTO.getTimeEnd())) {
                    // 待签收,查询流转时间
                    terms.put("createTimeStart", allSignDTO.getTimeStart());
                    terms.put("createTimeEnd", allSignDTO.getTimeEnd());
                }
                // 查询申请方/被申请方关键词
                if (StringUtils.isNotBlank(allSignDTO.getPartyName())){
                    terms.put("partyName", allSignDTO.getPartyName());
                }
            }
            CtUserDTO loginUser = custClient.clientGetUserAll(userId);
            terms.put("candeUnitId",loginUser.getUnitId());
@@ -369,7 +365,7 @@
     * @param size 每页数量
     * @param status 状态,1:待分派,2:已分派
     * @param sortType 排序方式(1:正序;2:倒序)
     * @param sortColmn 排序字段(1:流转时间;2:分派时限/分派时间;3:事项等级)
     * @param sortColmn 排序字段(1:流转时间;2:分派时限/分派时间;3:事项等级;4:督办次数)
     * @return
     */
    @GetMapping("/pageMyTaskFp")
@@ -399,7 +395,11 @@
                terms.put("partyName", partyName);
            }
            CtUserDTO loginUser = custClient.clientGetUserAll(userId);
            terms.put("candeUnitId",loginUser.getUnitId());
            if (status == 1) {
                terms.put("candeUnitId", loginUser.getUnitId());
            }else {
                terms.put("handleUnitId", loginUser.getUnitId());
            }
            terms.put("status", status);
            // 排序
            Sort sort = null;
@@ -418,6 +418,12 @@
                case 3:
                    sortName = "t2.case_level";
                    break;
                case 4:
                    sortName = "superviseCount";
                    break;
                default:
                    sortName = "t1.create_time";
                    break;
            }
            switch (sortType){
                case 1:
@@ -425,6 +431,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -444,7 +453,7 @@
     * @param size 每页数量
     * @param status 状态,1:待签收,2:已签收
     * @param sortType 排序方式(1:正序;2:倒序)
     * @param sortColmn 排序字段(1:流转时间;2:签收时限/签收时间;3:事项等级)
     * @param sortColmn 排序字段(1:流转时间;2:签收时限/签收时间;3:事项等级;4:督办次数)
     * @return
     */
    @GetMapping("/pageMyTaskQs")
@@ -474,7 +483,11 @@
                terms.put("partyName", partyName);
            }
            CtUserDTO loginUser = custClient.clientGetUserAll(userId);
            terms.put("candeUnitId",loginUser.getUnitId());
            if (status == 1) {
                terms.put("candeUnitId", loginUser.getUnitId());
            }else {
                terms.put("handleUnitId", loginUser.getUnitId());
            }
            terms.put("signStatus", status);
            // 排序
            Sort sort = null;
@@ -493,6 +506,12 @@
                case 3:
                    sortName = "t2.case_level";
                    break;
                case 4:
                    sortName = "superviseCount";
                    break;
                default:
                    sortName = "t1.create_time";
                    break;
            }
            switch (sortType){
                case 1:
@@ -500,6 +519,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -519,7 +541,7 @@
     * @param size 每页数量
     * @param status 状态,1:待受理,2:已受理,3:不予受理
     * @param sortType 排序方式(1:正序;2:倒序)
     * @param sortColmn 排序字段(1:流转时间;2:受理时限/受理时间/不予受理时间;3:事项等级)
     * @param sortColmn 排序字段(1:流转时间;2:受理时限/受理时间/不予受理时间;3:事项等级;4:督办次数)
     * @return
     */
    @GetMapping("/pageMyTaskSl")
@@ -554,6 +576,17 @@
                case 3:
                    sortName = "t2.case_level";
                    break;
                case 4:
                    sortName = "superviseCount";
                    break;
                default:
                    // 不予受理
                    if (status == 3){
                        sortName = "t1.case_task_time";
                    }else {
                        sortName = "t1.create_time";
                    }
                    break;
            }
            switch (sortType){
                case 1:
@@ -561,6 +594,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -599,7 +635,11 @@
                return ReturnSucUtils.getRepInfo(caseDismissService.pageMyTaskBysl(pageRequest, terms));
            }else {
                terms.put("status", status);
                terms.put("candeUnitId", loginUser.getUnitId());
                if (status == 1){
                    terms.put("candeUnitId", loginUser.getUnitId());
                }else {
                    terms.put("handleUnitId", loginUser.getUnitId());
                }
                return ReturnSucUtils.getRepInfo(service.pageMyTaskSl(pageRequest, terms));
            }
        } catch (Exception e) {
@@ -614,7 +654,7 @@
     * @param size 每页数量
     * @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的)
     * @param sortType 排序方式(1:正序;2:倒序)
     * @param sortColmn 排序字段(1:流转时间/已办天数;2:分派时限;3:事项等级)
     * @param sortColmn 排序字段(1:流转时间/已办天数;2:分派时限;3:事项等级;4:督办次数)
     * @return
     */
    @GetMapping("/pageMyTaskBlz")
@@ -652,6 +692,12 @@
                case 3:
                    sortName = "t2.case_level";
                    break;
                case 4:
                    sortName = "superviseCount";
                    break;
                default:
                    sortName = "t1.create_time";
                    break;
            }
            switch (sortType){
                case 1:
@@ -659,6 +705,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -679,7 +728,7 @@
     * @param status 状态,0:结案申请,1:已结案
     * @param caseTaskType 纠纷任务类型(1:我承办的;2:我配合的)
     * @param sortType 排序方式(1:正序;2:倒序)
     * @param sortColmn 排序字段(1:结案申请时间;2:事项等级)
     * @param sortColmn 排序字段(1:结案申请时间;2:事项等级;3:督办次数)
     * @return
     */
    @GetMapping("/pageMyTaskBl")
@@ -723,7 +772,17 @@
                    }
                    break;
                case 2:
                    sortName = "t1.case_level";
                    sortName = "t2.case_level";
                    break;
                case 3:
                    sortName = "superviseCount";
                    break;
                default:
                    if (status == 0) {
                        sortName = "t1.apply_time";
                    }else {
                        sortName = "t1.audit_time";
                    }
                    break;
            }
            switch (sortType){
@@ -732,6 +791,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -757,7 +819,8 @@
    @GetMapping("/pageMyTaskSh")
    public Object pageMyTaskSh(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size,
                               @RequestParam(value = "status") int status, @RequestParam(value = "type") int type,
                               @CurrentUser String userId, @RequestParam(value = "sortType") int sortType) {
                               @CurrentUser String userId, @RequestParam(value = "sortType") int sortType,
                               @RequestParam(value = "sortColmn") int sortColmn) {
        try {
            Map<String, Object> terms = Maps.newHashMap();
            // 回退/上报/结案申请/联合处置申请/审核时间区间
@@ -776,16 +839,43 @@
            String sortName = null;
            switch (type){
                case 1:
                    sortName = "t1.return_time";
                    if(1 == sortColmn){
                        sortName = "t1.return_time";
                    }else if(2 == sortColmn){
                        sortName = "t2.case_level";
                    }else if(3 == sortColmn){
                        sortName = "t1.audit_time";
                    }
                    break;
                case 2:
                    sortName = "t1.appear_time";
                    if(1 == sortColmn) {
                        sortName = "t1.appear_time";
                    }else if(2 == sortColmn){
                        sortName = "t2.case_level";
                    }else if(3 == sortColmn){
                        sortName = "t1.audit_time";
                    }
                    break;
                case 3:
                    sortName = "t1.apply_time";
                    if(1 == sortColmn) {
                        sortName = "t1.apply_time";
                    }else if(2 == sortColmn){
                        sortName = "t2.case_level";
                    }else if(3 == sortColmn){
                        sortName = "t1.audit_time";
                    }
                    break;
                case 4:
                    sortName = "t1.apply_time";
                    if(1 == sortColmn) {
                        sortName = "t1.apply_time";
                    }else if(2 == sortColmn){
                        sortName = "t2.case_level";
                    }else if(3 == sortColmn){
                        sortName = "t1.audit_time";
                    }
                    break;
                default:
                    sortName = "t1.create_time";
                    break;
            }
            switch (sortType){
@@ -794,6 +884,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -856,7 +949,10 @@
                    sortName = "t1.auditTime";
                    break;
                case 3:
                    sortName = "t2.caseGrade";
                    sortName = "caseGrade";
                    break;
                default:
                    sortName = "t1.turnaroundTime";
                    break;
            }
            switch (sortType){
@@ -865,6 +961,9 @@
                    break;
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
@@ -914,7 +1013,19 @@
                    sortName = "t1.sup_time";
                    break;
                case 2:
                    sortName = "t1.case_level";
                    sortName = "timeLimit";
                    break;
                case 3:
                    sortName = "t2.case_level";
                    break;
                case 4:
                    sortName = "t1.sup_status";
                    break;
                case 5:
                    sortName = "t1.reply_time";
                    break;
                default:
                    sortName = "t1.sup_time";
                    break;
            }
            switch (sortType){
@@ -924,13 +1035,16 @@
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
                sort = Sort.by(Sort.Direction.DESC, "t1.create_time");
            }
            PageRequest pageRequest = PageRequest.of(page-1, size, sort);
            CtUserDTO loginUser = custClient.clientGetUserAll(userId);
            Page<CaseSupervise> caseSupervisePage = null;
            Page<FrontPageListDTO> frontPageListDTOPage = null;
            if(StringUtils.isNotBlank(loginUser.getUnitId())){
                terms.put("type", status);
                if(3 != status){
@@ -939,9 +1053,9 @@
                }else{
                    terms.put("supUnitId",loginUser.getUnitId());
                }
                caseSupervisePage = superviseService.pageMyTaskDb(pageRequest, terms);
                frontPageListDTOPage = superviseService.pageMyTaskDb(pageRequest, terms);
            }
            return ReturnSucUtils.getRepInfo(caseSupervisePage);
            return ReturnSucUtils.getRepInfo(frontPageListDTOPage);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo();
        }
@@ -1045,6 +1159,9 @@
                case 3:
                    sortName = "superviseCount";
                    break;
                default:
                    sortName = "t1.handle_time";
                    break;
            }
            switch (sortType){
                case 1:
@@ -1053,6 +1170,9 @@
                case 2:
                    sort = Sort.by(Sort.Direction.DESC, sortName);
                    break;
                default:
                    sort = Sort.by(Sort.Direction.ASC, sortName);
                    break;
            }
            if(ObjectUtils.isEmpty(sort)){
                sort = Sort.by(Sort.Direction.DESC, "t1.create_time");
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseAreaMapper.java
File was deleted
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/CaseSuperviseMapper.java
@@ -1,5 +1,6 @@
package cn.huge.module.cases.dao.mapper;
import cn.huge.module.cases.domain.dto.FrontPageListDTO;
import cn.huge.module.cases.domain.po.CaseSupervise;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
@@ -87,7 +88,7 @@
     * @param terms 条件
     * @return List<CaseSupervise>
     */
    List<CaseSupervise> pageMyTaskDb(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms);
    List<FrontPageListDTO> pageMyTaskDb(@Param("page") PageRequest page, @Param("terms") Map<String, Object> terms);
    /**
     * 首页-督办数量
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml
@@ -261,6 +261,8 @@
        <result property="backUnit" column="backUnit"/>
        <result property="reason" column="reason"/>
        <result property="opinion" column="opinion"/>
        <result property="auditTime" column="auditTime"/>
        <result property="auditResult" column="auditResult"/>
    </resultMap>
    <!--  首页-待审核统计  -->
@@ -283,7 +285,7 @@
    </select>
    <!--  首页-待审核分页查询  -->
    <select id="pageMyTaskAppearReview" resultMap="MyTaskApplyReviewResult">
        SELECT t1.case_task_id as ownerId, t1.case_id as caseId,
        SELECT t1.case_task_id as ownerId, t1.case_id as caseId, t1.audit_time as auditTime, t1.audit_result_name as auditResult,
        t1.appear_time as turnaroundTime, t1.appear_unit_name as organizingUnit, t1.appear_content as opinion,
        t2.case_level as caseGrade, t2.canal_name as caseSource, concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType,
        concat(t2.plaintiffs, t2.pagents) as plaintiffs, concat(t2.defendants, t2.dagents) as defendants
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAreaMapper.xml
File was deleted
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml
@@ -267,6 +267,8 @@
        <result property="backUnit" column="backUnit"/>
        <result property="reason" column="reason"/>
        <result property="opinion" column="opinion"/>
        <result property="auditTime" column="auditTime"/>
        <result property="auditResult" column="auditResult"/>
    </resultMap>
    <!--  首页-待审核统计  -->
@@ -289,7 +291,7 @@
    </select>
    <!--  首页-待审核分页查询  -->
    <select id="pageMyTaskAssistReview" resultMap="MyTaskApplyReviewResult">
        SELECT t1.id as ownerId, t1.case_id as CaseId,
        SELECT t1.id as ownerId, t1.case_id as CaseId, t1.audit_time as auditTime, t1.audit_result_name as auditResult,
        t1.apply_time as turnaroundTime, t1.apply_unit_name as organizingUnit, t1.apply_assist_unit_name as cooperatingUnit,
        t1.apply_content as reason,t2.case_level as caseGrade, t2.canal_name as caseSource, concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType,
        concat(t2.plaintiffs, t2.pagents) as plaintiffs, concat(t2.defendants, t2.dagents) as defendants
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
@@ -103,14 +103,19 @@
        <result property="agreeTypeName" column="agree_type_name"/>
        <result property="agreeContent" column="agree_content"/>
        <result property="createTime" column="create_time"/>
        <result property="plaintiffs" column="plaintiffs"/>
        <result property="defendants" column="defendants"/>
        <result property="queCityName" column="que_city_name"/>
        <result property="queAreaName" column="que_area_name"/>
        <result property="queRoadName" column="que_road_name"/>
        <result property="caseTypeFirst" column="case_type_first"/>
        <result property="caseTypeFirstName" column="case_type_first_name"/>
        <result property="caseTaskId" column="caseTaskId"/>
    </resultMap>
    <!-- 表 -->
    <sql id='table-name'>dyh_case_info</sql>
    <sql id="column-part-all">
        a
        .
        id
        ,
        a.id,
        a.status,
        a.status_name,
        a.canal,
@@ -121,6 +126,13 @@
        a.input_unit_id,
        a.input_unit_name,
        a.create_time,
        a.plaintiffs,
        a.defendants,
        a.que_city_name,
        a.que_area_name,
        a.que_road_name,
        a.case_type_first,
        a.case_type_first_name,
        b.medi_result,
        b.medi_result_name,
        b.mediate_unit_id,
@@ -130,7 +142,8 @@
        b.close_time,
        b.agree_type,
        b.agree_type_name,
        b.agree_content
        b.agree_content,
        c.id as caseTaskId
    </sql>
    <!-- 字段 -->
    <sql id="column-part">
@@ -339,6 +352,36 @@
                <if test="terms.isArea != null and terms.isArea !=''">
                    and a.que_city is not null and a.que_area is not null and a.que_road is not null
                </if>
                <if test="terms.caseRef != null and terms.caseRef !=''">
                    and a.case_ref = #{terms.caseRef}
                </if>
                <if test="terms.plaintiffs != null and terms.plaintiffs !=''">
                    and a.plaintiffs = #{terms.plaintiffs}
                </if>
                <if test="terms.defendants != null and terms.defendants !=''">
                    and a.defendants = #{terms.defendants}
                </if>
                <if test="terms.peopleNumStart != null and terms.peopleNumStart !=''">
                    and a.people_num  <![CDATA[ >= ]]> #{terms.peopleNumStart}
                </if>
                <if test="terms.peopleNumEnd != null and terms.peopleNumEnd !=''">
                    and a.people_num  <![CDATA[ <= ]]> #{terms.peopleNumEnd}
                </if>
                <if test="terms.amountStart != null and terms.amountStart !=''">
                    and a.amount  <![CDATA[ >= ]]> #{terms.amountStart}
                </if>
                <if test="terms.amountEnd != null and terms.amountEnd !=''">
                    and a.amount  <![CDATA[ <= ]]> #{terms.amountEnd}
                </if>
                <if test="terms.evaluateGrade != null and terms.evaluateGrade !=''">
                    and a.id in(select case_id from dyh_case_evaluate where evaluate_grade = #{terms.evaluateGrade})
                </if>
                <if test="terms.mediateUnitId != null and terms.mediateUnitId !=''">
                    and b.mediate_unit_id = #{terms.mediateUnitId}
                </if>
                <if test="terms.assistUnitId != null and terms.assistUnitId !=''">
                    and b.assist_unit_id = #{terms.assistUnitId}
                </if>
            </where>
        </if>
    </sql>
@@ -354,6 +397,9 @@
                </if>
                <if test="terms.id != null and terms.id !=''">
                    and id = #{terms.id}
                </if>
                <if test="terms.partyShow != null and terms.partyShow !=''">
                    and party_show = #{terms.partyShow}
                </if>
                <if test="terms.caseTitle != null and terms.caseTitle !=''">
                    and case_title = #{terms.caseTitle}
@@ -673,14 +719,14 @@
                <if test="terms.caseTypeFirstName != null and terms.caseTypeFirstName !=''">
                    and t1.case_type_first_name = #{caseTypeFirstName}
                </if>
                <if test="terms.caseTypeName != null and terms.caseTypeName !=''">
                    and t1.case_type_name = #{terms.caseTypeName}
                <if test="terms.caseType != null and terms.caseType !=''">
                    and t1.case_type = #{terms.caseType}
                </if>
                <if test="terms.canal != null and terms.canal !=''">
                    and t1.canal = #{canal}
                    and t1.canal = #{terms.canal}
                </if>
                <if test="terms.canalName != null and terms.canalName !=''">
                    and t1.canal_name = #{canalName}
                    and t1.canal_name = #{terms.canalName}
                </if>
                <if test="terms.plaintiffs != null and terms.plaintiffs !=''">
                    and t1.plaintiffs = #{terms.plaintiffs}
@@ -688,11 +734,8 @@
                <if test="terms.defendants != null and terms.defendants !=''">
                    and t1.defendants = #{terms.defendants}
                </if>
                <if test="terms.status != null and terms.status !=''">
                    and t1.status = #{terms.status}
                </if>
                <if test="terms.statusName != null and terms.statusName !=''">
                    and t1.statusName = #{terms.statusName}
                    and t1.status_name = #{terms.statusName}
                </if>
                <if test="terms.mediResultName != null and terms.mediResultName !=''">
                    and t2.medi_result_name = #{terms.mediResultName}
@@ -703,14 +746,17 @@
    <select id="pageTermsCaseRegister" resultType="cn.huge.module.cases.domain.dto.CaseRegisterDTO">
        SELECT
        t1.create_time as createTime,t1.input_user_name as inputUserName,t1.status_name as statusName,t1.case_level as
        t1.id as caseId,t1.create_time as createTime,t1.input_user_name as inputUserName,t1.status_name as statusName,t1.case_level as
        caseLevel,t1.canal_name as canalName,
        t1.case_type_first_name as caseTypeFirstName,t1.case_type_name as caseTypeName,t1.plaintiffs as
        plaintiffs,t1.defendants as defendants,t2.medi_result_name as mediResultName,
        t3.number as superviseCount
        t3.number as superviseCount,
        t4.id as caseTaskId
        FROM
        dyh_case_info t1 left join dyh_case_info_unfold t2 on t1.id = t2.id
        dyh_case_info t1
        left join dyh_case_info_unfold t2 on t1.id = t2.id
        left join (select count(*) as number ,case_id from dyh_case_supervise group by case_id) t3 on t3.case_id=t1.id
        left join (select id ,case_id from dyh_case_task group by case_id) t4 on t1.id = t4.case_id
        <include refid="where-register-part"/>
        <if test="page.sort != null">
            <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
@@ -728,7 +774,8 @@
        SELECT
        count(t1.id)
        FROM
        dyh_case_info t1 left join dyh_case_info_unfold t2 on t1.id = t2.id
        dyh_case_info t1
        left join dyh_case_info_unfold t2 on t1.id = t2.id
        <include refid="where-register-part"/>
    </select>
    <!--  根据条件统计  -->
@@ -745,6 +792,7 @@
        <include refid="column-part-all"/>
        FROM
        dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.id
        left join (select id ,case_id from dyh_case_task group by case_id) c on a.id = c.case_id
        <include refid="where-part-all"/>
        <if test="page.sort != null">
            <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
@@ -772,7 +820,8 @@
        count(1) as caseNum,
        sum(case when b.medi_result = '22_00025-1' then 1 else 0 end) as resolveNum,
        sum(case when b.medi_result is null and a.info_process <![CDATA[ < ]]> 4 then 1 else 0 end) as resolveingNum,
        sum(case when b.medi_result = '22_00025-2' then 1 else 0 end) as unResolveNum
        sum(case when b.medi_result = '22_00025-2' then 1 else 0 end) as unResolveNum,
        sum(case when a.info_process = 4 then 1 else 0 end) as rejectNum
        FROM
        dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.id
        <include refid="where-part-all"/>
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CasePersonMapper.xml
@@ -4,8 +4,8 @@
 * @title: 纠纷当事人信息表
 * @description: 自定义sql,请自行实现业务逻辑
 * @company: hugeinfo
 * @author: wangwh
 * @time:2024-08-27 10:48:18
 * @author: liyj
 * @time:2024-09-24 14:18:41
 * @version 1.0.0
-->
<mapper namespace="cn.huge.module.cases.dao.mapper.CasePersonMapper">
@@ -14,6 +14,7 @@
            <result property="id" column="id"/>
            <result property="caseId" column="case_id"/>
            <result property="partyUserId" column="party_user_id"/>
            <result property="companyId" column="company_id"/>
            <result property="perType" column="per_type"/>
            <result property="perTypeName" column="per_type_name"/>
            <result property="perClass" column="per_class"/>
@@ -49,6 +50,7 @@
            <result property="placeVillage" column="place_village"/>
            <result property="placeVillageName" column="place_village_name"/>
            <result property="placeAddr" column="place_addr"/>
            <result property="workUnitId" column="work_unit_id"/>
            <result property="workUnit" column="work_unit"/>
            <result property="nation" column="nation"/>
            <result property="nationName" column="nation_name"/>
@@ -73,6 +75,7 @@
        id,
        case_id,
        party_user_id,
        company_id,
        per_type,
        per_type_name,
        per_class,
@@ -108,6 +111,7 @@
        place_village,
        place_village_name,
        place_addr,
        work_unit_id,
        work_unit,
        nation,
        nation_name,
@@ -129,6 +133,7 @@
    <sql id="set-part">
            <if test="entity.caseId != null">case_id = #{entity.caseId},</if>
            <if test="entity.partyUserId != null">party_user_id = #{entity.partyUserId},</if>
            <if test="entity.companyId != null">company_id = #{entity.companyId},</if>
            <if test="entity.perType != null">per_type = #{entity.perType},</if>
            <if test="entity.perTypeName != null">per_type_name = #{entity.perTypeName},</if>
            <if test="entity.perClass != null">per_class = #{entity.perClass},</if>
@@ -164,6 +169,7 @@
            <if test="entity.placeVillage != null">place_village = #{entity.placeVillage},</if>
            <if test="entity.placeVillageName != null">place_village_name = #{entity.placeVillageName},</if>
            <if test="entity.placeAddr != null">place_addr = #{entity.placeAddr},</if>
            <if test="entity.workUnitId != null">work_unit_id = #{entity.workUnitId},</if>
            <if test="entity.workUnit != null">work_unit = #{entity.workUnit},</if>
            <if test="entity.nation != null">nation = #{entity.nation},</if>
            <if test="entity.nationName != null">nation_name = #{entity.nationName},</if>
@@ -193,6 +199,9 @@
                </if>
                <if test="terms.partyUserId != null and terms.partyUserId !=''">
                    and party_user_id = #{terms.partyUserId}
                </if>
                <if test="terms.companyId != null and terms.companyId !=''">
                    and company_id = #{terms.companyId}
                </if>
                <if test="terms.perType != null and terms.perType !=''">
                    and per_type = #{terms.perType}
@@ -298,6 +307,9 @@
                </if>
                <if test="terms.placeAddr != null and terms.placeAddr !=''">
                    and place_addr = #{terms.placeAddr}
                </if>
                <if test="terms.workUnitId != null and terms.workUnitId !=''">
                    and work_unit_id = #{terms.workUnitId}
                </if>
                <if test="terms.workUnit != null and terms.workUnit !=''">
                    and work_unit = #{terms.workUnit}
@@ -429,4 +441,4 @@
        <include refid="table-name" />
        where case_id = #{caseId}
    </select>
</mapper>
</mapper>
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml
@@ -267,6 +267,8 @@
        <result property="backUnit" column="backUnit"/>
        <result property="reason" column="reason"/>
        <result property="opinion" column="opinion"/>
        <result property="auditTime" column="auditTime"/>
        <result property="auditResult" column="auditResult"/>
    </resultMap>
    <!--  首页-待审核统计  -->
@@ -290,7 +292,7 @@
    <!--  首页-待审核条件统计  -->
    <select id="pageMyTaskReturnReview" resultMap="MyTaskApplyReviewResult">
        SELECT t1.case_task_id as ownerId, t1.case_id as caseId,
        SELECT t1.case_task_id as ownerId, t1.case_id as caseId, t1.audit_time as auditTime, t1.audit_result_name as auditResult,
        t1.return_time as turnaroundTime, t1.return_unit_name as organizingUnit, t1.return_content as reason,
               t2.case_level as caseGrade, t2.canal_name as caseSource, concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType,
               concat(t2.plaintiffs, t2.pagents) as plaintiffs, concat(t2.defendants, t2.dagents) as defendants
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml
@@ -278,6 +278,9 @@
        <result property="reason" column="reason"/>
        <result property="opinion" column="opinion"/>
        <result property="process" column="process"/>
        <result property="content" column="content"/>
        <result property="applyStatus" column="applyStatus"/>
        <result property="replyTime" column="replyTime"/>
    </resultMap>
    <!--  首页督办条件统计  -->
@@ -288,8 +291,13 @@
            dyh_case_supervise t1 left join dyh_case_info t2 on t1.case_id = t2.id
        where
        t1.delete_status = 0
        and t1.sup_status = #{terms.supStatus}
        and t1.quilt_unit_id = #{terms.quiltUnitId}
        <if test="terms.type != 3">
            and t1.quilt_unit_id = #{terms.quiltUnitId}
            and t1.sup_status = #{terms.supStatus}
        </if>
        <if test="terms.type == 3">
            and t1.sup_unit_id = #{terms.supUnitId}
        </if>
        <if test="terms.timeStart != null and terms.timeStart !='' and terms.timeEnd != null and terms.timeEnd !=''">
            and (DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.timeStart}
            and DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.timeEnd})
@@ -301,7 +309,7 @@
    <!--  首页督办分页查询  -->
    <select id="pageMyTaskDb" resultMap="MyTaskApplyReviewResult">
        SELECT t1.id as ownerId, t1.case_id as caseId,
        SELECT t1.id as ownerId, t1.case_id as caseId, t1.reply_content as content, t1.sup_status as applyStatus, t1.reply_time as replyTime,
        t1.sup_time as turnaroundTime, DATEADD(hour, t1.reply_term, t1.sup_time) as timeLimit, t1.sup_unit_name as organizingUnit,
        t1.sup_content as opinion, t2.case_level as caseGrade, t2.canal_name as caseSource,
        concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType, concat(t2.plaintiffs, t2.pagents) as plaintiffs,
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml
@@ -382,8 +382,8 @@
            <if test="terms.candeUnitId != null and terms.candeUnitId !=''">
                and t1.cande_unit_id = #{terms.candeUnitId}
            </if>
            <if test="terms.status != null and terms.status !=''">
                and t1.status = #{terms.status}
            <if test="terms.handleUnitId != null and terms.handleUnitId !=''">
                and t1.handle_unit_id = #{terms.handleUnitId}
            </if>
            <if test="terms.createTimeStart != null and terms.createTimeStart !='' and terms.createTimeEnd != null and terms.createTimeEnd !=''">
                and (DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.createTimeStart}
@@ -407,7 +407,9 @@
        where
        (t1.node_id = 'ZJ_DFP' or  t1.node_id = 'QJ_DFP' or  t1.node_id = 'SJ_DFP' or  t1.node_id = 'DFP')
        and t1.sign_status != 1
        and t1.case_task_type = 1
        and t2.delete_status = 0
        and t1.status = #{terms.status}
        <include refid="myTaskFp-where-part"/>
    </select>
    <!--  工作台-待分派分页查询  -->
@@ -423,7 +425,9 @@
        where
        (t1.node_id = 'ZJ_DFP' or  t1.node_id = 'QJ_DFP' or  t1.node_id = 'SJ_DFP' or  t1.node_id = 'DFP')
        and t1.sign_status != 1
        and t1.case_task_type = 1
        and t2.delete_status = 0
        and t1.status = #{terms.status}
        <include refid="myTaskFp-where-part"/>
        <if test="page.sort != null">
            <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
@@ -443,8 +447,8 @@
            <if test="terms.candeUnitId != null and terms.candeUnitId !=''">
                and t1.cande_unit_id = #{terms.candeUnitId}
            </if>
            <if test="terms.signStatus != null and terms.signStatus !=''">
                and t1.sign_status = #{terms.signStatus}
            <if test="terms.handleUnitId != null and terms.handleUnitId !=''">
                and t1.handle_unit_id = #{terms.handleUnitId}
            </if>
            <if test="terms.createTimeStart != null and terms.createTimeStart !='' and terms.createTimeEnd != null and terms.createTimeEnd !=''">
                and (DATE_FORMAT(t1.create_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.createTimeStart}
@@ -468,6 +472,7 @@
        where
        t2.delete_status = 0
        and t1.status = '1'
        and t1.sign_status = #{terms.signStatus}
        <include refid="myTaskQs-where-part"/>
    </select>
    <!--  首页-待/已签收分页查询  -->
@@ -482,6 +487,7 @@
        where
        t2.delete_status = 0
        and t1.status = '1'
        and t1.sign_status = #{terms.signStatus}
        <include refid="myTaskQs-where-part"/>
        <if test="page.sort != null">
            <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
@@ -512,8 +518,8 @@
            <if test="terms.candeUnitId != null and terms.candeUnitId !=''">
                and t1.cande_unit_id = #{terms.candeUnitId}
            </if>
            <if test="terms.status != null and terms.status !=''">
                and t1.status = #{terms.status}
            <if test="terms.handleUnitId != null and terms.handleUnitId !=''">
                and t1.handle_unit_id = #{terms.handleUnitId}
            </if>
            <if test="terms.caseTaskType != null and terms.caseTaskType !=''">
                and t1.case_task_type = #{terms.caseTaskType}
@@ -542,6 +548,7 @@
        and t2.delete_status = 0
        and t1.sign_status != 1
        and (t1.handle_result != 3 or t1.handle_result is null)
        and t1.status = #{terms.status}
        <include refid="myTaskSl-where-part"/>
    </select>
    <!--  首页-待/已受理分页查询  -->
@@ -558,6 +565,7 @@
        and t2.delete_status = 0
        and t1.sign_status != 1
        and (t1.handle_result != 3 or t1.handle_result is null)
        and t1.status = #{terms.status}
        <include refid="myTaskSl-where-part"/>
        <if test="page.sort != null">
            <foreach collection="page.sort" item="s" index="index" separator="," open="order by ">
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml
@@ -299,6 +299,8 @@
        <result property="reason" column="reason"/>
        <result property="opinion" column="opinion"/>
        <result property="process" column="process"/>
        <result property="auditTime" column="auditTime"/>
        <result property="auditResult" column="auditResult"/>
    </resultMap>
    <!--  首页-待审核条件统计  -->
@@ -321,7 +323,7 @@
    </select>
    <!--  首页-待审核分页查询  -->
    <select id="listMyTaskApplyReview" resultMap="MyTaskApplyReviewResult">
        SELECT t1.id as windupId, t1.case_task_id as ownerId, t1.case_id as caseId,
        SELECT t1.id as windupId, t1.case_task_id as ownerId, t1.case_id as caseId, t1.audit_time as auditTime, t1.audit_result_name as auditResult,
        t1.apply_time as turnaroundTime, t1.apply_unit_name as organizingUnit, t1.medi_result_name as mediResult,
               t1.fail_reason as reason, t2.case_level as caseGrade, t2.canal_name as caseSource,
               concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType, concat(t2.plaintiffs, t2.pagents) as plaintiffs,
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CasePersonBO.java
@@ -6,8 +6,8 @@
 * @title: 纠纷当事人信息表业务扩展类
 * @description: 纠纷当事人信息表业务扩展类
 * @company: hugeinfo
 * @author: wangwh
 * @time: 2024-08-27 10:48:18
 * @author: liyj
 * @time: 2024-09-24 14:18:41
 * @version: 1.0.0
 * @see cn.huge.module.cases.domain.po.CasePerson
 */
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AllSignDTO.java
New file
@@ -0,0 +1,21 @@
package cn.huge.module.cases.domain.dto;
import lombok.Data;
@Data
public class AllSignDTO {
    /**
     * 开始时间
     */
    private String timeStart;
    /**
     * 结束时间
     */
    private String timeEnd;
    /**
     * 查询申请方/被申请方关键词
     */
    private String partyName;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseInfoWeExcelDTO.java
@@ -9,8 +9,12 @@
 */
@Data
public class CaseInfoWeExcelDTO {
    @ExcelProperty(value="事项状态")
    private String statusName;
    @ExcelProperty(value="登记时间")
    private String createTime;
    @ExcelProperty(value="登记机构")
    private String inputUnitName;
    @ExcelProperty(value="问题归属地")
    private String areaName;
    @ExcelProperty(value="事项来源")
    private String canalName;
    @ExcelProperty(value="事项等级")
@@ -19,16 +23,15 @@
    private String caseTypeName;
    @ExcelProperty(value="承办部门")
    private String mediateUnitName;
    @ExcelProperty(value="配合部门")
    private String assistUnitName;
    @ExcelProperty(value="化解结果")
    private String mediResultName;
    @ExcelProperty(value="事项状态")
    private String statusName;
    @ExcelProperty(value="办结时间")
    private String closeTime;
    @ExcelProperty(value="化解结果")
    private String mediResultName;
    @ExcelProperty(value="申请人")
    private String plaintiffStr;
    private String plaintiffs;
    @ExcelProperty(value="被申请人")
    private String defendantStr;
    @ExcelProperty(value="登记机构")
    private String inputUnitName;
    private String defendants;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java
@@ -38,7 +38,7 @@
    /**
     * 事项等级
     */
    private Integer caseLevel;
    private String caseLevel;
    /**
     * 纠纷类型
     */
@@ -48,6 +48,15 @@
     * 纠纷类型名称
     */
    private String caseTypeName;
    /**
     * 纠纷一级类型
     */
    private String caseTypeFirst;
    /**
     * 纠纷一级类型名称
     */
    private String caseTypeFirstName;
    /**
     * 调解结果
@@ -119,4 +128,32 @@
     * 被申请人集合
     * */
    private List<CasePersonWeDTO> defendantList;
    /**
     * 申请方当事人名称
     */
    private String plaintiffs;
    /**
     * 被申请方当事人名称
     */
    private String defendants;
    /**
     * 问题归属地
     * */
    private String areaName;
    /**
     * 问题属地市名称
     */
    private String queCityName;
    /**
     * 问题属地区名称
     */
    private String queAreaName;
    /**
     * 问题属地街道名称
     */
    private String queRoadName;
    /**
     * 纠纷任务编号
     * */
    private String caseTaskId;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseRegisterDTO.java
@@ -7,6 +7,10 @@
@Data
public class CaseRegisterDTO {
    /**
     * 案件ID
     */
    private String caseId;
    /**
     * 登记时间
     */
    private Date createTime;
@@ -50,6 +54,9 @@
     * 督办次数
     */
    private int superviseCount;
    /**
     * 纠纷任务编号
     * */
    private String caseTaskId;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseStatisticsAreaDTO.java
@@ -14,4 +14,5 @@
    private Integer resolveNum=0;//化解成功数量
    private Integer resolveingNum=0;//化解中数量
    private Integer unResolveNum=0;//化解不成功数量
    private Integer rejectNum=0;//不予受理数量
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageCountDTO.java
@@ -33,6 +33,26 @@
    private Long waitReview;
    /**
     * 待审核(回退审核)
     */
    private Long returnReview;
    /**
     * 待审核(上报审核)
     */
    private Long appearReview;
    /**
     * 待审核(结案申请审核)
     */
    private Long windupReview;
    /**
     * 待审核(联合处置审核)
     */
    private Long assistReview;
    /**
     * 督办
     */
    private Long supervise;
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/FrontPageListDTO.java
@@ -118,4 +118,26 @@
     * 审核部门
     */
    private String auditDept;
    /**
     * 办理结果
     */
    private String auditResult;
    /**
     * 内容
     */
    private String content;
    /**
     * 审核时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8")
    private Date auditTime;
    /**
     * 审核时间
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8")
    private Date replyTime;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java
@@ -390,6 +390,12 @@
    private String infoProcessName;
    /**
     * 小程序是否可见,0:不可见,1:可见
     */
    @TableField(value = "party_show")
    private Integer partyShow;
    /**
     * 意向调解组织编号
     */
    @TableField(value = "want_unit_id")
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CasePerson.java
@@ -41,6 +41,12 @@
    private String partyUserId;
    /**
    * 企业信息编号
    */
    @TableField(value = "company_id")
    private String companyId;
    /**
    * 当事人地位
    */
    @TableField(value = "per_type")
@@ -251,6 +257,12 @@
    private String placeAddr;
    /**
    * 工作单位编号
    */
    @TableField(value = "work_unit_id")
    private String workUnitId;
    /**
    * 工作单位
    */
    @TableField(value = "work_unit")
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java
@@ -166,4 +166,11 @@
     */
    @TableField(exist = false)
    private Integer caseGrade;
    /**
     * 回复时限
     */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8")
    @TableField(exist = false)
    private Date timeLimit;
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAreaService.java
File was deleted
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -19,6 +19,7 @@
import cn.huge.module.mediate.dto.WechatBindCaseDTO;
import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO;
import cn.huge.module.sys.dto.QueAddrBaseDTO;
import cn.huge.module.sys.dto.QueAreaDTO;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -84,9 +85,6 @@
    @Autowired
    private CaseEvaluateService caseEvaluateService;
    @Autowired
    private CaseAreaService caseAreaService;
    /**
@@ -243,8 +241,6 @@
            caseInfo.setDefendants(defendants.toString());
            caseInfo.setDagents(dagents.toString());
            caseInfo.setCaseRef(utilsClient.createCaseRef());
            caseInfo.setCanal(CaseBaseConstsEnum.CASE_CANAL_1.getIndex());
            caseInfo.setCanalName(CaseBaseConstsEnum.CASE_CANAL_1.getDes());
            caseInfo.setVisitWay(CaseBaseConstsEnum.VISIT_WAY_1.getIndex());
            caseInfo.setVisitWayName(CaseBaseConstsEnum.VISIT_WAY_1.getDes());
            //todo case_title生成、经纬度转换
@@ -601,6 +597,12 @@
        caseInfo.setInputUserId(loginUser.getId());
        caseInfo.setInputUserName(loginUser.getTrueName());
        caseInfo.setInputWay(CaseBaseConsts.INPUT_WAY_1);
        if(ObjectUtils.isEmpty(registerSaveDTO.getPeopleNum())){
            caseInfo.setPeopleNum(0);
        }
        if(ObjectUtils.isEmpty(registerSaveDTO.getAmount())){
            caseInfo.setAmount(0.0);
        }
        //默认添加省市
        caseInfo.setQueProv("19");
        caseInfo.setQueProvName("广东省");
@@ -839,6 +841,7 @@
        }
        List<String> ids = casePersonList.stream().map(CasePerson::getCaseId).collect(Collectors.toList());
        terms.put("ids", ids);
        terms.put("partyShow",1);
        long total = mapper.countTerms(terms);
        List<CaseInfo> content = mapper.pageTerms(page, terms);
        if (ObjectUtils.isNotEmpty(content)) {
@@ -907,6 +910,26 @@
        List<CasePageDTO> content = mapper.pageTermsAll(page, terms);
        if (ObjectUtils.isNotEmpty(content)) {
            for (CasePageDTO casePageDTO : content) {
                if(ObjectUtils.isNotEmpty(casePageDTO.getQueRoadName())){
                    casePageDTO.setAreaName(casePageDTO.getQueRoadName());
                }else if(ObjectUtils.isNotEmpty(casePageDTO.getAreaName())){
                    casePageDTO.setAreaName(casePageDTO.getAreaName());
                }else if(ObjectUtils.isNotEmpty(casePageDTO.getQueCityName())){
                    casePageDTO.setAreaName(casePageDTO.getQueCityName());
                }
                if(ObjectUtils.isNotEmpty(casePageDTO.getCaseLevel())){
                    switch (casePageDTO.getCaseLevel()){
                        case "1":
                            casePageDTO.setCaseLevel("一级");
                            break;
                        case "2":
                            casePageDTO.setCaseLevel("二级");
                            break;
                        case "3":
                            casePageDTO.setCaseLevel("三级");
                            break;
                    }
                }
                QueryWrapper<CasePerson> personWrapper1 = new QueryWrapper<>();
                personWrapper1.eq("case_id", casePageDTO.getId());
                List<CasePerson> casePersonList1 = personService.list(personWrapper1);
@@ -931,6 +954,10 @@
    }
    public CaseStatisticsBaseDTO statistics(Map<String, Object> terms) throws IOException {
        Object canal = null;
        if(ObjectUtils.isNotEmpty(terms.get("canal"))){
            canal = terms.get("canal");
        }
        //基础数据统计
        CaseStatisticsBaseDTO caseStatisticsBaseDTO = mapper.statisticsBase(terms);
        Integer baseTotalNum = dellNull(caseStatisticsBaseDTO.getResolveNum()) + dellNull(caseStatisticsBaseDTO.getUnResolveNum()) + dellNull(caseStatisticsBaseDTO.getResolveingNum());
@@ -959,9 +986,9 @@
            areaCodeList.add(caseStatisticsAreaDTO.getAreaCode());
        }
        caseStatisticsAreaDTOS.add(allArea);
        List<CaseArea> queArea = listAreaByType(terms.get("areaType"), terms.get("queArea"));
        List<QueAreaDTO> queArea = listAreaByType(terms.get("queArea"));
        log.info("listAreaByType {}", JSON.toJSONString(queArea));
        for (CaseArea caseAreaDTO : queArea) {
        for (QueAreaDTO caseAreaDTO : queArea) {
            if (!areaCodeList.contains(caseAreaDTO.getAreaCode())) {
                CaseStatisticsAreaDTO areaChild = new CaseStatisticsAreaDTO();
                areaChild.setAreaCode(caseAreaDTO.getAreaCode());
@@ -1020,26 +1047,44 @@
        }
        twoSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_2.getDes());
        Integer sourceTotalNum = dellNull(oneSource.getCaseNum()) + dellNull(oneSource.getCaseNum());
        terms.put("canal", CaseBaseConstsEnum.CASE_CANAL_3.getIndex());
        CaseStatisticsSourceDTO threeSource = mapper.statisticsSource(terms);
        if(ObjectUtils.isEmpty(threeSource)){
            threeSource = new CaseStatisticsSourceDTO();
        }
        terms.put("canal", CaseBaseConstsEnum.CASE_CANAL_4.getIndex());
        CaseStatisticsSourceDTO fourSource = mapper.statisticsSource(terms);
        if(ObjectUtils.isEmpty(fourSource)){
            fourSource = new CaseStatisticsSourceDTO();
        }
        Integer sourceTotalNum = dellNull(oneSource.getCaseNum()) + dellNull(twoSource.getCaseNum()) + dellNull(threeSource.getCaseNum()) + dellNull(fourSource.getCaseNum());
        oneSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(oneSource.getCaseNum() * 100, sourceTotalNum, 1));
        oneSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(oneSource.getResolveNum() * 100, oneSource.getCaseNum(), 1));
        twoSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(twoSource.getCaseNum() * 100, sourceTotalNum, 1));
        twoSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(twoSource.getResolveNum() * 100, twoSource.getCaseNum(), 1));
        CaseStatisticsSourceDTO threeSource = new CaseStatisticsSourceDTO();
        threeSource.setCanalName("自行排查");
        threeSource.setResolveRate("0");
        threeSource.setCaseRate("0");
        CaseStatisticsSourceDTO fourSource = new CaseStatisticsSourceDTO();
        fourSource.setCanalName("协同推送");
        fourSource.setResolveRate("0");
        fourSource.setCaseRate("0");
        threeSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_3.getDes());
        threeSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(threeSource.getCaseNum() * 100, sourceTotalNum, 1));
        threeSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(threeSource.getResolveNum() * 100, threeSource.getCaseNum(), 1));
        fourSource.setCanalName(CaseBaseConstsEnum.CASE_CANAL_4.getDes());
        fourSource.setCaseRate(BigDecimalUtil.integerDivideDelZero(fourSource.getCaseNum() * 100, sourceTotalNum, 1));
        fourSource.setResolveRate(BigDecimalUtil.integerDivideDelZero(fourSource.getResolveNum() * 100, fourSource.getCaseNum(), 1));
        caseStatisticsBaseDTO.setOneSource(oneSource);
        caseStatisticsBaseDTO.setTwoSource(twoSource);
        caseStatisticsBaseDTO.setThreeSource(threeSource);
        caseStatisticsBaseDTO.setFourSource(fourSource);
        //案件集合
        if(ObjectUtils.isEmpty(canal)){
            terms.remove("canal");
        }else{
            terms.put("canal", canal);
        }
        Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time");
        PageRequest pageRequest = PageRequest.of(0, 5, sort);
        Page<CasePageDTO> casePageDTOS = pageQueryAll(pageRequest, terms);
@@ -1067,8 +1112,24 @@
    }
    public List<CaseStatisticsAreaDTO> sortArea(List<CaseStatisticsAreaDTO> caseStatisticsAreaDTOS) {
        Map<String, String> map = new HashMap<>();
        map.put("越秀区","2");
        map.put("海珠区","3");
        map.put("荔湾区","4");
        map.put("天河区","5");
        map.put("白云区","6");
        map.put("黄埔区","7");
        map.put("花都区","8");
        map.put("番禺区","9");
        map.put("南沙区","10");
        map.put("从化区","11");
        map.put("增城区","12");
        for (CaseStatisticsAreaDTO caseStatisticsAreaDTO : caseStatisticsAreaDTOS) {
            if(map.containsKey(caseStatisticsAreaDTO.getAreaName())){
                caseStatisticsAreaDTO.setAreaCode(map.get(caseStatisticsAreaDTO.getAreaName()));
            }
        }
        caseStatisticsAreaDTOS.sort((o1, o2) -> {
            log.info("xsd:{},{}",o1,o2);
            Integer totalScore1 = Integer.valueOf(o1.getAreaCode());
            Integer totalScore2 = Integer.valueOf(o2.getAreaCode());
            if (totalScore1 > totalScore2) {
@@ -1092,24 +1153,14 @@
    /**
     * 根据不同的等级获取不同区域子集合
     *
     * @param areaType 1-市级 2-区
     */
    public List<CaseArea> listAreaByType(Object areaType, Object areaCode) throws IOException {
        log.info("listAreaByType {},{}", areaType, areaCode);
        if (ObjectUtils.isEmpty(areaType) || areaType.equals("") || areaType.equals("1")) {
            QueryWrapper<CaseArea> caseAreaWrapper = new QueryWrapper<>();
            caseAreaWrapper.eq("parent_code","1601");
            List<CaseArea> list = caseAreaService.list(caseAreaWrapper);
            return list;
    public List<QueAreaDTO> listAreaByType(Object areaCode) {
        log.info("listAreaByType {},{}", areaCode);
        String parentId = "1601";
        if (ObjectUtils.isNotEmpty(areaCode)) {
            parentId = String.valueOf(areaCode);
        }
        if (areaType.equals("2")) {
            QueryWrapper<CaseArea> caseAreaWrapper = new QueryWrapper<>();
            caseAreaWrapper.eq("parent_code",areaCode);
            List<CaseArea> list = caseAreaService.list(caseAreaWrapper);
            return list;
        }
        return new ArrayList<>();
        List<QueAreaDTO> queAreaDTOS = sysClient.listByParentId(parentId);
        return queAreaDTOS;
    }
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseSuperviseService.java
@@ -5,6 +5,7 @@
import cn.huge.base.common.utils.IdUtils;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.module.cases.domain.dto.FileRelateDTO;
import cn.huge.module.cases.domain.dto.FrontPageListDTO;
import cn.huge.module.cases.domain.dto.QuiltUnitDTO;
import cn.huge.module.cases.domain.po.CaseInfo;
import cn.huge.module.cases.domain.po.CaseInfoUnfold;
@@ -22,6 +23,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -235,27 +237,32 @@
            long countSuperviseList = mapper.countCaseSupervise(terms);
            List<CaseSupervise> caseSuperviseList = mapper.pageCaseSupervise(terms, page);
            CaseInfo caseInfo = new CaseInfo();
            if(1 != type && CollectionUtils.isNotEmpty(caseSuperviseList)){
                QueryWrapper<CaseInfo>caseInfoQueryWrapper = new QueryWrapper<>();
                caseInfoQueryWrapper.eq("id", caseId);
                caseInfo = caseInfoService.getOne(caseInfoQueryWrapper);
                for(CaseSupervise caseSupervise: caseSuperviseList){
                    if(ObjectUtils.isNotEmpty(caseInfo)){
                        caseSupervise.setCaseGrade(caseInfo.getCaseLevel());
            if(CollectionUtils.isNotEmpty(caseSuperviseList)){
                if(1 != type){
                    QueryWrapper<CaseInfo>caseInfoQueryWrapper = new QueryWrapper<>();
                    caseInfoQueryWrapper.eq("id", caseId);
                    caseInfo = caseInfoService.getOne(caseInfoQueryWrapper);
                    for(CaseSupervise caseSupervise: caseSuperviseList){
                        if(ObjectUtils.isNotEmpty(caseSupervise.getSupTime()) && ObjectUtils.isNotEmpty(caseSupervise.getReplyTerm())){
                            caseSupervise.setTimeLimit(DateUtils.addHour(caseSupervise.getSupTime(), caseSupervise.getReplyTerm()));
                        }
                        if(ObjectUtils.isNotEmpty(caseInfo)){
                            caseSupervise.setCaseGrade(caseInfo.getCaseLevel());
                        }
                    }
                }
            }
            Map<String, Object>map = new HashMap<>();
            map.put("mainId", caseId);
            map.put("ownerIds", "'" + caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','"))+ "'");
            map.put("types", "'"+ FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex()+ "','" +FileOwnerTypeBaseEnum.OWNER_TYPE_507.getIndex()+"'");
            List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map);
            for(CaseSupervise caseSupervise: caseSuperviseList){
                for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){
                    if(caseSupervise.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){
                        caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTO.getFileList());
                }else{
                    Map<String, Object>map = new HashMap<>();
                    map.put("mainId", caseId);
                    map.put("ownerIds", "'" + caseSuperviseList.stream().map(CaseSupervise::getId).collect(Collectors.joining("','"))+ "'");
                    map.put("types", "'"+ FileOwnerTypeBaseEnum.OWNER_TYPE_506.getIndex()+ "','" +FileOwnerTypeBaseEnum.OWNER_TYPE_507.getIndex()+"'");
                    List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(map);
                    for(CaseSupervise caseSupervise: caseSuperviseList){
                        for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){
                            if(caseSupervise.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){
                                caseSupervise.setFileInfoList(fileIdTypeInfoBaseDTO.getFileList());
                            }
                        }
                    }
                }
            }
@@ -271,11 +278,11 @@
     * @param page
     * @param terms
     */
    public Page<CaseSupervise> pageMyTaskDb(PageRequest page, Map<String, Object> terms){
    public Page<FrontPageListDTO> pageMyTaskDb(PageRequest page, Map<String, Object> terms){
        try{
            long countSuperviseList = mapper.countMyTaskDb(terms);
            List<CaseSupervise> caseSuperviseList = mapper.pageMyTaskDb(page, terms);
            return new PageImpl<CaseSupervise>(caseSuperviseList, page, countSuperviseList);
            List<FrontPageListDTO> caseSuperviseList = mapper.pageMyTaskDb(page, terms);
            return new PageImpl<FrontPageListDTO>(caseSuperviseList, page, countSuperviseList);
        }catch (Exception e){
            log.error("[CaseSuperviseService.pageReplied]调用失败,异常信息:"+e, e);
            throw new ServiceException("CaseSuperviseService.pageReplied", e);
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -289,13 +289,14 @@
            // 查询当前任务信息
            CaseTask caseTask = mapper.selectById(caseTaskId);
            if (ObjectUtils.isNotEmpty(caseTask)) {
                // 任务已完成
                // 已完成任务
                if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){
                    // 不予受理
                    if (ObjectUtils.isNotEmpty(caseTask.getHandleResult()) && CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){
                        tabList.add(byslxq);
                        tabList.add(sqjl);
                    }else {
                        // 正常任务
                        CaseInfo caseInfo = caseInfoService.getById(caseTask.getCaseId());
                        if (CaseProcessBaseConstsEnum.CASE_PROCESS_6.getIndex() != caseInfo.getProcess()){
                            daxx.setName("详情");
@@ -306,6 +307,7 @@
                    }
                }else {
                    // 进行中任务
                    // 待分派节点
                    if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) {
@@ -322,6 +324,7 @@
                        daxx.setName("详情");
                        tabList.add(daxx);
                    }
                    // 待受理节点
                    if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) {
@@ -336,6 +339,7 @@
                        daxx.setName("详情");
                        tabList.add(daxx);
                    }
                    // 回退审核节点
                    if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())
@@ -349,6 +353,7 @@
                        daxx.setName("详情");
                        tabList.add(daxx);
                    }
                    // 上报审核节点
                    if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())
                            || FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) {
                        sxxq.setName("详情");
@@ -360,6 +365,7 @@
                        daxx.setName("详情");
                        tabList.add(daxx);
                    }
                    // 办理反馈节点
                    if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) {
                        if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) {
                            tabList.add(sxxq);
@@ -370,7 +376,7 @@
                            buttonList.add(tjbljl);
                            buttonList.add(lhczsq);
                            buttonList.add(jasq);
                            buttonList.add(db);
//                            buttonList.add(db);
                            // 额外单独给详情跳转查看
                            daxx.setName("详情");
@@ -388,6 +394,7 @@
                            tabList.add(daxx);
                        }
                    }
                    // 结案审核节点
                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) {
                        tabList.add(sxxq);
                        tabList.add(sqjl);
@@ -397,17 +404,20 @@
                        daxx.setName("详情");
                        tabList.add(daxx);
                    }
                    // 当事人评价节点
                    if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) {
                        daxx.setName("详情");
                        tabList.add(daxx);
                        tabList.add(lcdb);
                        tabList.add(sqjl);
                    }
                    // 结案归档节点
                    if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(caseTask.getNodeId())) {
                        tabList.add(daxx);
                        tabList.add(lcdb);
                        tabList.add(sqjl);
                    }
                    // 联合处置-待受理
                    if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) {
                        tabList.add(dslxq);
                        tabList.add(sqjl);
@@ -421,9 +431,10 @@
                    }
                }
            }else {
                tabList.add(sxxq);
                daxx.setName("详情");
                tabList.add(daxx);
                tabList.add(lcdb);
                tabList.add(sqjl);
                tabList.add(lhczsh);
            }
            // 封装数据
            TabButtonDTO tabButtonDTO = new TabButtonDTO();
@@ -517,6 +528,8 @@
                    if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
                        webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
                        webCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
                        webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName());
                        webCaseFlowDTO.setHandleUserName(null);
                    }else{
                        webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
                    }
@@ -757,6 +770,10 @@
            long countReturnReview = caseReturnService.countReturnReview(loginUser.getUnitId());
            long countAppearReview = caseAppearService.countAppearReview(loginUser.getUnitId());
            long countAssistReview = caseAssistApplyService.countAssistReview(loginUser.getUnitId());
            frontPageCountDTO.setReturnReview(countReturnReview);
            frontPageCountDTO.setAppearReview(countAppearReview);
            frontPageCountDTO.setWindupReview(countApplyReview);
            frontPageCountDTO.setAssistReview(countAssistReview);
            frontPageCountDTO.setWaitReview(countApplyReview+countReturnReview+countAppearReview+countAssistReview);
            // 已办
            Map<String, Object> ybTerms = new HashMap<>();
dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java
@@ -83,4 +83,13 @@
     */
    @PostMapping("/api/client/fileRelate/saveFileRelateList")
    ReturnBO saveFileRelateList(@RequestBody List<FileRelateDTO> fileRelateList);
    /**
     * 根据父类ID获取区域列表
     * @url {ctx}/api/web/syRegion/listByParentId
     * @param parentId 条件
     * @return Object
     */
    @GetMapping("/api/web/syRegion/listByParentId")
    ReturnBO listByParentId(@RequestParam(value = "parentId") String parentId);
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java
@@ -90,7 +90,6 @@
    /**
     * 获取时限
     * @param limitTable 表名
     * @param limitType  时限类型
     * @return List
     */
@@ -246,4 +245,24 @@
            log.error("service方法[SysClientImpl.saveFileRelateList]请求异常:"+e, e);
        }
    }
    public List<QueAreaDTO> listByParentId(String parentId){
        List<QueAreaDTO> queAreaDTOList = new ArrayList<>();
        try{
            ReturnBO returnBo = sysClient.listByParentId(parentId);
            if (ReturnConsts.OK == returnBo.getCode()){
                if (ObjectUtils.isNotEmpty(returnBo.getData())){
                    List<LinkedHashMap> list = (List<LinkedHashMap>) returnBo.getData();
                    for (LinkedHashMap map : list) {
                        QueAreaDTO queAreaDTO = JSON.parseObject(JSON.toJSONString(map), QueAreaDTO.class);
                        queAreaDTOList.add(queAreaDTO);
                    }
                }
            }
        }catch (Exception e){
            log.error("service方法[SysClientImpl.listFileRelateByOwnerId]调用异常:"+e, e);
        }
        return queAreaDTOList;
    }
}
dyh-service/dyh-mediate/src/main/java/cn/huge/module/draft/dao/mapper/xml/CasedraftPersonMapper.xml
@@ -4,8 +4,8 @@
 * @title: 纠纷当事人信息草稿表
 * @description: 自定义sql,请自行实现业务逻辑
 * @company: hugeinfo
 * @author: wangwh
 * @time:2024-08-27 10:48:18
 * @author: liyj
 * @time:2024-09-24 14:23:44
 * @version 1.0.0
-->
<mapper namespace="cn.huge.module.draft.dao.mapper.CasedraftPersonMapper">
@@ -14,6 +14,7 @@
            <result property="id" column="id"/>
            <result property="caseId" column="case_id"/>
            <result property="partyUserId" column="party_user_id"/>
            <result property="companyId" column="company_id"/>
            <result property="perType" column="per_type"/>
            <result property="perTypeName" column="per_type_name"/>
            <result property="perClass" column="per_class"/>
@@ -49,6 +50,7 @@
            <result property="placeVillage" column="place_village"/>
            <result property="placeVillageName" column="place_village_name"/>
            <result property="placeAddr" column="place_addr"/>
            <result property="workUnitId" column="work_unit_id"/>
            <result property="workUnit" column="work_unit"/>
            <result property="nation" column="nation"/>
            <result property="nationName" column="nation_name"/>
@@ -72,6 +74,7 @@
        id,
        case_id,
        party_user_id,
        company_id,
        per_type,
        per_type_name,
        per_class,
@@ -107,6 +110,7 @@
        place_village,
        place_village_name,
        place_addr,
        work_unit_id,
        work_unit,
        nation,
        nation_name,
@@ -127,6 +131,7 @@
    <sql id="set-part">
            <if test="entity.caseId != null">case_id = #{entity.caseId},</if>
            <if test="entity.partyUserId != null">party_user_id = #{entity.partyUserId},</if>
            <if test="entity.companyId != null">company_id = #{entity.companyId},</if>
            <if test="entity.perType != null">per_type = #{entity.perType},</if>
            <if test="entity.perTypeName != null">per_type_name = #{entity.perTypeName},</if>
            <if test="entity.perClass != null">per_class = #{entity.perClass},</if>
@@ -162,6 +167,7 @@
            <if test="entity.placeVillage != null">place_village = #{entity.placeVillage},</if>
            <if test="entity.placeVillageName != null">place_village_name = #{entity.placeVillageName},</if>
            <if test="entity.placeAddr != null">place_addr = #{entity.placeAddr},</if>
            <if test="entity.workUnitId != null">work_unit_id = #{entity.workUnitId},</if>
            <if test="entity.workUnit != null">work_unit = #{entity.workUnit},</if>
            <if test="entity.nation != null">nation = #{entity.nation},</if>
            <if test="entity.nationName != null">nation_name = #{entity.nationName},</if>
@@ -190,6 +196,9 @@
                </if>
                <if test="terms.partyUserId != null and terms.partyUserId !=''">
                    and party_user_id = #{terms.partyUserId}
                </if>
                <if test="terms.companyId != null and terms.companyId !=''">
                    and company_id = #{terms.companyId}
                </if>
                <if test="terms.perType != null and terms.perType !=''">
                    and per_type = #{terms.perType}
@@ -295,6 +304,9 @@
                </if>
                <if test="terms.placeAddr != null and terms.placeAddr !=''">
                    and place_addr = #{terms.placeAddr}
                </if>
                <if test="terms.workUnitId != null and terms.workUnitId !=''">
                    and work_unit_id = #{terms.workUnitId}
                </if>
                <if test="terms.workUnit != null and terms.workUnit !=''">
                    and work_unit = #{terms.workUnit}
@@ -420,4 +432,5 @@
        <include refid="table-name" />
        where case_id = #{caseId}
    </select>
</mapper> 
dyh-service/dyh-mediate/src/main/java/cn/huge/module/draft/domain/po/CasedraftPerson.java
@@ -41,6 +41,12 @@
    private String partyUserId;
    /**
     * 企业信息编号
     */
    @TableField(value = "company_id")
    private String companyId;
    /**
    * 当事人地位
    */
    @TableField(value = "per_type")
@@ -251,6 +257,12 @@
    private String placeAddr;
    /**
     * 工作单位编号
     */
    @TableField(value = "work_unit_id")
    private String workUnitId;
    /**
    * 工作单位
    */
    @TableField(value = "work_unit")
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/GridCompanyController.java
@@ -1,23 +1,29 @@
package cn.huge.module.grid.controller;
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.GridCompanyVo;
import cn.huge.module.grid.domain.vo.GridTokenVo;
import cn.huge.module.grid.domain.vo.GridUserVo;
import cn.huge.module.grid.service.GridCompanyService;
import com.google.common.collect.Maps;
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;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
@Slf4j
@RestController
@RequestMapping("/api/thrid/grid/company")
public class GridCompanyController {
    @Autowired(required = false)
    private HttpServletRequest request;
    @Resource
    private GridCompanyService gridCompanyService;
@@ -25,4 +31,34 @@
    public R<GridCompanyDTO> getCompanyList(@RequestBody GridCompanyVo gridCompanyVo) throws Exception {
        return gridCompanyService.getCompanyList(gridCompanyVo);
    }
    /**
     * 条件分页查询
     * @url {ctx}/api/thrid/grid/company/pageQuery
     * @param page 页码
     * @param size 每页数量
     * @return Object
     */
    @GetMapping("/pageQuery")
    public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
        try {
            Map<String, Object> terms = Maps.newHashMap();
            GridCompanyVo gridCompanyVo = new GridCompanyVo();
            String integratedQuery = request.getParameter("integratedQuery");
            gridCompanyVo.setIntegratedQuery(integratedQuery);
            String state = request.getParameter("state");
            if(ObjectUtils.isNotEmpty(state)){
                gridCompanyVo.setState(Integer.valueOf(state));
            }
            String gridCode = request.getParameter("gridCode");
            gridCompanyVo.setGridCode(gridCode);
            gridCompanyVo.setPage(page);
            gridCompanyVo.setPageSize(size);
            gridCompanyVo.setNeedCount(true);
            return ReturnSucUtils.getRepInfo( "处理成功", gridCompanyService.pageQuery(gridCompanyVo));
        } catch (Exception e) {
            log.error("Controller接口[GridCompanyController.pageQuery]请求异常:"+e, e);
            return ReturnFailUtils.getRepInfo();
        }
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/web/GridCompanyWebController.java
New file
@@ -0,0 +1,70 @@
package cn.huge.module.grid.controller.web;
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.AesUtils;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.module.grid.domain.dto.CasePersonDTO;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.GridCompanyVo;
import cn.huge.module.grid.service.GridCompanyService;
import cn.huge.module.mediate.constant.CaseBaseConstsEnum;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Slf4j
@RestController
@RequestMapping("/api/web/grid/company")
public class GridCompanyWebController {
    @Autowired(required = false)
    private HttpServletRequest request;
    @Resource
    private GridCompanyService gridCompanyService;
    /**
     * 条件分页查询
     * @url {ctx}/api/web/grid/company/pageQuery
     * @param page 页码
     * @param size 每页数量
     * @return Object
     */
    @GetMapping("/pageQuery")
    public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
        try {
            GridCompanyVo gridCompanyVo = new GridCompanyVo();
            String integratedQuery = request.getParameter("integratedQuery");
            gridCompanyVo.setIntegratedQuery(integratedQuery);
            gridCompanyVo.setPage(page);
            gridCompanyVo.setPageSize(size);
            gridCompanyVo.setNeedCount(true);
            List<CasePersonDTO> content = new ArrayList<>();
            Page<GridCompanyDTO.UnitDTO> unitDTOPage = gridCompanyService.pageQuery(gridCompanyVo);
            for (GridCompanyDTO.UnitDTO unitDTO: unitDTOPage){
                CasePersonDTO casePersonDTO = new CasePersonDTO();
                casePersonDTO.setCompanyId(unitDTO.getId());
                casePersonDTO.setTrueName(unitDTO.getName());
                casePersonDTO.setOrgaCode(unitDTO.getSocialCreditCode());
                casePersonDTO.setAddr(unitDTO.getBusinessRegAddress());
                casePersonDTO.setDeputy(unitDTO.getLegalRepresent());
                casePersonDTO.setMobile(unitDTO.getLegalPersonTelephone());
                content.add(casePersonDTO);
            }
            return ReturnSucUtils.getRepInfo(new PageImpl<>(content, unitDTOPage.getPageable(), unitDTOPage.getTotalElements()));
        } catch (Exception e) {
            log.error("Controller接口[GridCompanyController.pageQuery]请求异常:"+e, e);
            return ReturnFailUtils.getRepInfo();
        }
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/controller/wechat/GridCompanyWechatController.java
New file
@@ -0,0 +1,63 @@
package cn.huge.module.grid.controller.wechat;
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.GridCompanyVo;
import cn.huge.module.grid.service.GridCompanyService;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
@Slf4j
@RestController
@RequestMapping("/api/wechat/company")
public class GridCompanyWechatController {
    @Autowired(required = false)
    private HttpServletRequest request;
    @Resource
    private GridCompanyService gridCompanyService;
    @PostMapping("/get-company-list")
    public R<GridCompanyDTO> getCompanyList(@RequestBody GridCompanyVo gridCompanyVo) throws Exception {
        return gridCompanyService.getCompanyList(gridCompanyVo);
    }
    /**
     * 条件分页查询
     * @url {ctx}/api/wechat/company/pageQuery
     * @param page 页码
     * @param size 每页数量
     * @return Object
     */
    @GetMapping("/pageQuery")
    public Object pageQuery(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
        try {
            Map<String, Object> terms = Maps.newHashMap();
            GridCompanyVo gridCompanyVo = new GridCompanyVo();
            String integratedQuery = request.getParameter("integratedQuery");
            gridCompanyVo.setIntegratedQuery(integratedQuery);
            String state = request.getParameter("state");
            if(ObjectUtils.isNotEmpty(state)){
                gridCompanyVo.setState(Integer.valueOf(state));
            }
            String gridCode = request.getParameter("gridCode");
            gridCompanyVo.setGridCode(gridCode);
            gridCompanyVo.setPage(page);
            gridCompanyVo.setPageSize(size);
            gridCompanyVo.setNeedCount(true);
            return ReturnSucUtils.getRepInfo( "处理成功", gridCompanyService.pageQuery(gridCompanyVo));
        } catch (Exception e) {
            log.error("Controller接口[GridCompanyController.pageQuery]请求异常:"+e, e);
            return ReturnFailUtils.getRepInfo();
        }
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/domain/dto/CasePersonDTO.java
New file
@@ -0,0 +1,54 @@
package cn.huge.module.grid.domain.dto;
import cn.huge.module.sys.dto.FileTypeInfoBaseDTO;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
 * @title: 纠纷当事人信息表数据库对应关系类
 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。
 * @company:hugeinfo
 * @author: wangwh
 * @time: 2024-08-27 10:48:18
 * @version 1.0.0
 */
@TableName(value = "dyh_case_person")
@Data
public class CasePersonDTO {
    /**
    * 机构编号
    */
    private String companyId;
    /**
    * 姓名/企业/机构名称
    */
    private String trueName;
    /**
     * 组织机构代码
     */
    private String orgaCode;
    /**
     * 联系/企业/机构地址详细地址
     */
    private String addr;
    /**
     * 法定/机构代表人名称
     */
    private String deputy;
    /**
     * 联系方式
     */
    private String mobile;
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridCompanyService.java
@@ -3,6 +3,8 @@
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.AesUtils;
import cn.huge.base.common.utils.HttpClientUtils;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.base.common.utils.SpringContextUtil;
import cn.huge.module.grid.domain.dto.GridCompanyDTO;
import cn.huge.module.grid.domain.vo.*;
import com.alibaba.fastjson.JSON;
@@ -10,15 +12,16 @@
import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import java.util.Base64;
import java.util.HashMap;
import java.util.List;
import java.util.UUID;
import java.util.*;
import static cn.huge.base.common.utils.AesUtils.KEY_ALGORITHM;
@@ -53,7 +56,7 @@
            List<GridCompanyDTO.UnitDTO> records = data.getRecords();
            for(GridCompanyDTO.UnitDTO item :records){
                item.setLegalRepresent(AesUtils.decrypt(item.getLegalRepresent(),"eb4KhdJRyDwS4ndTBc2NTDNaSEP6KbwQ"));
                item.setLegalPersonTelephone(AesUtils.decrypt(item.getLegalPersonTelephone(),"eb4KhdJRyDwS4ndTBc2NTDNaSEP6KbwQ"));
            }
            return R.ok(data);
        } else {
@@ -70,4 +73,31 @@
        return headVo;
    }
    public Page pageQuery(GridCompanyVo gridCompanyVo) throws Exception {
        Sort sort = Sort.by(Sort.Direction.DESC, "create_time");
        PageRequest pageRequest = PageRequest.of(gridCompanyVo.getPage()-1, gridCompanyVo.getPageSize(), sort);
        R<GridCompanyDTO> companyList = null;
        // 开发环境
        if (SpringContextUtil.checkDev()) {
            String url = "http://183.2.142.46:9007/api/thrid/grid/company/get-company-list";
            Map<String, String> headers = new HashMap<>();
            headers.put("Content-Type", "application/json");
            String s = HttpClientUtils.httpPostRaw(url, JSON.toJSONString(gridCompanyVo), headers, "utf-8");
            companyList = JSON.parseObject(s, R.class);
        }else {
            companyList = getCompanyList(gridCompanyVo);
        }
        if(companyList.getCode() != 0){
            throw new Exception(companyList.getMsg());
        }
        if(ObjectUtils.isNotEmpty(companyList)){
            GridCompanyDTO data =  JSON.parseObject(JSON.toJSONString(companyList.getData()), GridCompanyDTO.class);
            if(ObjectUtils.isNotEmpty(data)){
                List<GridCompanyDTO.UnitDTO> records = data.getRecords();
                return new PageImpl<>(records, pageRequest, data.getTotal());
            }
        }
        return new PageImpl<>(new ArrayList<>(), pageRequest, 0);
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/grid/service/GridUserService.java
@@ -2,6 +2,7 @@
import cn.huge.base.common.bo.R;
import cn.huge.base.common.utils.HttpClientUtils;
import cn.huge.base.common.utils.SpringContextUtil;
import cn.huge.module.grid.domain.dto.GridOrgDTO;
import cn.huge.module.grid.domain.dto.GridRoleMenuDTO;
import cn.huge.module.grid.domain.dto.GridSysRoleDTO;
@@ -37,9 +38,14 @@
        requestVo.setBodyVo(gridTokenVo);
        try {
//            log.info("xsdobject:{}",JSON.toJSONString(requestVo));
            log.info("xsdurl:{}",gridUrl + "/sys/getUserByToken");
//            log.info("xsdurl:{}",testUrl + "/sys/getUserByToken");
            s = HttpClientUtils.httpPostRaw(gridUrl + "/sys/getUserByToken", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8");
            // 开发环境
            if (SpringContextUtil.checkDev()) {
                 log.info("xsdurl:{}",testUrl + "/sys/getUserByToken");
                s = HttpClientUtils.httpPostRaw(testUrl + "/sys/getUserByToken", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8");
            }else {
                log.info("xsdurl:{}",gridUrl + "/sys/getUserByToken");
                s = HttpClientUtils.httpPostRaw(gridUrl + "/sys/getUserByToken", JSON.toJSONString(requestVo), new HashMap<>(), "utf-8");
            }
            log.info("xsd:{}",s);
        } catch (Exception e) {
            log.info("xsderror:{}",e.getLocalizedMessage());
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/web/SyRegionWebController.java
@@ -8,6 +8,7 @@
import cn.huge.module.kind.domain.po.SyRegion;
import cn.huge.module.kind.service.SyRegionService;
import cn.huge.module.sys.dto.QueAddrBaseDTO;
import cn.huge.module.sys.dto.QueAreaDTO;
import cn.huge.module.utils.BaiduMapAddrDTO;
import cn.huge.module.utils.BaiduMapUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -21,6 +22,7 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -207,4 +209,20 @@
        }
    }
    /**
     * 根据父类ID获取列表
     * @url {ctx}/api/web/syRegion/listByParentId
     * @return
     */
    @GetMapping("/listByParentId")
    public Object listByParentId(@RequestParam(value = "parentId") String parentId) {
        try {
            List<QueAreaDTO> list = service.listByParentId(parentId);
            return ReturnSucUtils.getRepInfo(list);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo();
        }
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/controller/wechat/SyregionWechatController.java
New file
@@ -0,0 +1,70 @@
package cn.huge.module.kind.controller.wechat;
import cn.huge.base.common.constant.GzAreaEnum;
import cn.huge.base.common.utils.ObjectUtils;
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.module.kind.domain.po.SyRegion;
import cn.huge.module.kind.service.SyRegionService;
import cn.huge.module.sys.dto.QueAddrBaseDTO;
import cn.huge.module.utils.BaiduMapAddrDTO;
import cn.huge.module.utils.BaiduMapUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
/**
 * @title: 地域表接口api-小程序端
 * @description: 地域表接口api-小程序端
 * @company: hugeinfo
 * @author: wangwh
 * @time: 2024-09-04 16:48:57
 * @version: 1.0.0
 */
@Slf4j
@RestController
@RequestMapping("/api/wechat/syRegion")
public class SyregionWechatController {
    @Autowired(required = false)
    private HttpServletRequest request;
    @Autowired
    private SyRegionService service;
    /**
     * 根据百度地图经纬度获取街道
     * @url {ctx}/api/wechat/syRegion/checkRegisterArea
     * @param lng 经度
     * @param lat 维度
     * @return
     */
    @GetMapping("/checkRegisterArea")
    public Object checkRegisterArea(@RequestParam(value = "lng") String lng, @RequestParam(value = "lat") String lat) {
        try {
            BaiduMapAddrDTO baiduMapAddrDTO = BaiduMapUtils.getAddrByLngLat(lng, lat, BaiduMapUtils.coordtype_bd09ll);
            QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>();
            // 查询区
            syRegionQueryWrapper.clear();
            syRegionQueryWrapper.like("name", baiduMapAddrDTO.getDistrict());
            SyRegion district = service.getOne(syRegionQueryWrapper);
            if (ObjectUtils.isNotEmpty(district)) {
                if (GzAreaEnum.GZAREAEnum_7.getIndex().equals(district.getId())) {
                    return ReturnSucUtils.getRepInfo();
                } else {
                    return ReturnSucUtils.getRepInfo(200, "反映诉求服务目前仅支持纠纷发生地为白云区内的申请。", null);
                }
            }else {
                return ReturnSucUtils.getRepInfo(200, "反映诉求服务目前仅支持纠纷发生地为白云区内的申请。", null);
            }
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo();
        }
    }
}
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java
@@ -9,6 +9,7 @@
import cn.huge.module.kind.domain.dto.RegionSelectJSDTO;
import cn.huge.module.kind.domain.po.SyRegion;
import cn.huge.module.sys.dto.QueAddrBaseDTO;
import cn.huge.module.sys.dto.QueAreaDTO;
import cn.huge.module.utils.BaiduMapAddrDTO;
import cn.huge.module.utils.BaiduMapUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -25,6 +26,7 @@
import javax.annotation.PostConstruct;
import javax.swing.plaf.synth.Region;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -178,25 +180,25 @@
            if (ObjectUtils.isNotEmpty(baiduMapAddrDTO)) {
                QueryWrapper<SyRegion> syRegionQueryWrapper = new QueryWrapper<>();
                // 查询省
                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getProvince());
                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getProvince());
                SyRegion province = mapper.selectOne(syRegionQueryWrapper);
                queAddrBaseDTO.setQueProv(province.getId());
                queAddrBaseDTO.setQueProvName(province.getName());
                // 查询市
                syRegionQueryWrapper.clear();
                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getCity());
                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getCity());
                SyRegion city = mapper.selectOne(syRegionQueryWrapper);
                queAddrBaseDTO.setQueCity(city.getId());
                queAddrBaseDTO.setQueCityName(city.getName());
                // 查询区
                syRegionQueryWrapper.clear();
                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getDistrict());
                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getDistrict());
                SyRegion district = mapper.selectOne(syRegionQueryWrapper);
                queAddrBaseDTO.setQueArea(district.getId());
                queAddrBaseDTO.setQueAreaName(district.getName());
                // 查询街道
                syRegionQueryWrapper.clear();
                syRegionQueryWrapper.eq("name", baiduMapAddrDTO.getTown());
                syRegionQueryWrapper.like("name", baiduMapAddrDTO.getTown());
                SyRegion town = mapper.selectOne(syRegionQueryWrapper);
                queAddrBaseDTO.setQueRoad(town.getId());
                queAddrBaseDTO.setQueRoadName(town.getName());
@@ -209,6 +211,21 @@
    }
    public List<QueAreaDTO> listByParentId(String parentId){
        List<QueAreaDTO> list = new ArrayList<>();
        QueryWrapper<SyRegion> queryWrapper = new QueryWrapper();
        queryWrapper.eq("parent_id", parentId);
        List<SyRegion> syRegions = mapper.selectList(queryWrapper);
        if(ObjectUtils.isNotEmpty(syRegions)){
            for (SyRegion syRegion : syRegions) {
                QueAreaDTO queAreaDTO = new QueAreaDTO();
                queAreaDTO.setAreaCode(syRegion.getId());
                queAreaDTO.setAreaName(syRegion.getName());
                queAreaDTO.setParentId(syRegion.getParentId());
                list.add(queAreaDTO);
            }
        }
        return list;
    }
}