forked from gzzfw/backEnd/gz-dyh

wangwh
2024-09-13 99bb79a7ceac1107d2bf65df29e149810bf2bbb7
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -11,7 +11,6 @@
import cn.huge.module.cases.domain.dto.TabButtonInfoDTO;
import cn.huge.module.cases.domain.po.CaseAssistApply;
import cn.huge.module.cases.domain.po.CaseInfoUnfold;
import cn.huge.module.cases.domain.dto.*;
import cn.huge.module.cases.domain.po.*;
import cn.huge.module.client.api.impl.CustClientImpl;
import cn.huge.module.client.api.impl.DispClientImpl;
@@ -25,7 +24,6 @@
import cn.huge.module.cust.dto.CtUserDTO;
import cn.huge.module.mediate.constant.AuditBaseConsts;
import cn.huge.module.mediate.constant.AuditBaseConstsEnum;
import cn.huge.module.mediate.constant.CaseBaseConsts;
import cn.huge.module.disp.constant.DispBaseConstsEnum;
import cn.huge.module.disp.dto.CaseDispBaseDTO;
import cn.huge.module.disp.dto.DispCaseBaseDTO;
@@ -43,7 +41,6 @@
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.domain.Page;
@@ -51,8 +48,6 @@
import org.springframework.data.domain.PageRequest;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.stream.Collectors;
@@ -722,6 +717,70 @@
            throw new ServiceException("CaseTaskService.pageMyTaskQs", e);
        }
    }
    /**
     * 首页-待审核分页查询
     * @param caseId 事项编号
     * @return Page
     */
    public List<Object> listMyApplyRecord(String caseId){
        try {
            QueryWrapper<CaseReturn> caseReturnQueryWrapper = new QueryWrapper<>();
            caseReturnQueryWrapper.eq("case_id", caseId);
            List<CaseReturn>caseReturnList = caseReturnService.list(caseReturnQueryWrapper);
            QueryWrapper<CaseAppear> caseAppearQueryWrapper = new QueryWrapper<>();
            caseAppearQueryWrapper.eq("case_id", caseId);
            List<CaseAppear>caseAppearList = caseAppearService.list(caseAppearQueryWrapper);
            QueryWrapper<CaseWindupApply> caseWindupApplyQueryWrapper = new QueryWrapper<>();
            caseWindupApplyQueryWrapper.eq("case_id", caseId);
            List<CaseWindupApply>caseWindupApplyList = caseWindupApplyService.list(caseWindupApplyQueryWrapper);
            QueryWrapper<CaseAssistApply> caseAssistApplyQueryWrapper = new QueryWrapper<>();
            caseAssistApplyQueryWrapper.eq("case_id", caseId);
            List<CaseAssistApply>caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper);
            List<SortUtilDTO> sortUtilDTOList = new ArrayList<>();
            for(CaseReturn caseReturn: caseReturnList){
                SortUtilDTO sortUtilDTO = new SortUtilDTO();
                sortUtilDTO.setObject(caseReturn);
                sortUtilDTO.setDate(caseReturn.getCreateTime());
                sortUtilDTO.setType("回退申请");
                sortUtilDTOList.add(sortUtilDTO);
            }
            for(CaseAppear caseAppear: caseAppearList){
                SortUtilDTO sortUtilDTO = new SortUtilDTO();
                sortUtilDTO.setObject(caseAppear);
                sortUtilDTO.setDate(caseAppear.getCreateTime());
                sortUtilDTO.setType("上报申请");
                sortUtilDTOList.add(sortUtilDTO);
            }
            for(CaseWindupApply caseWindupApply: caseWindupApplyList){
                SortUtilDTO sortUtilDTO = new SortUtilDTO();
                sortUtilDTO.setObject(caseWindupApply);
                sortUtilDTO.setDate(caseWindupApply.getCreateTime());
                sortUtilDTO.setType("结案申请");
                sortUtilDTOList.add(sortUtilDTO);
            }
            for(CaseAssistApply caseAssistApply: caseAssistApplyList){
                SortUtilDTO sortUtilDTO = new SortUtilDTO();
                sortUtilDTO.setObject(caseAssistApply);
                sortUtilDTO.setDate(caseAssistApply.getCreateTime());
                sortUtilDTO.setType("联合处置申请");
                sortUtilDTOList.add(sortUtilDTO);
            }
            sortUtilDTOList.sort(Comparator.comparing(SortUtilDTO::getDate));
            List<Object> resultList = new ArrayList<>();
            for(SortUtilDTO sortUtilDTO: sortUtilDTOList){
                resultList.add(sortUtilDTO);
            }
            return resultList;
        }catch (Exception e) {
            log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e);
            throw new ServiceException("CaseTaskService.pageMyTaskQs", e);
        }
    }
    /**
     * wechat端-查询流程进度
     * @param caseId 纠纷编号
@@ -1479,7 +1538,7 @@
            }
            // 查询配合部门的任务,全部结束流程
            QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>();
            caseTaskQueryWrapper.eq("case_task_id", CaseTaskConsts.CASE_TASK_TYPE_2).eq("case_id", jasqCaseTask.getCaseId());
            caseTaskQueryWrapper.eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).eq("case_id", jasqCaseTask.getCaseId());
            List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper);
            for (CaseTask assistCaseTask: assistCaseTaskList){
                // 完成配合部门当前办理反馈任务
@@ -1796,7 +1855,7 @@
                // 新建待分派任务
                CaseTask dfphCaseTask = new CaseTask();
                dfphCaseTask.setId(utilsClient.getNewTimeId());
                dfphCaseTask.setCaseId(dfphCaseTask.getCaseId());
                dfphCaseTask.setCaseId(htshCaseTask.getCaseId());
                dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId());
                dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId());
                dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId());
@@ -1825,7 +1884,7 @@
                mapper.insert(dfphCaseTask);
                // 更新纠纷信息
                CaseInfo caseInfoPO = new CaseInfo();
                caseInfoPO.setId(dfphCaseTask.getCaseId());
                caseInfoPO.setId(htshCaseTask.getCaseId());
                caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex());
                caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes());
                caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex());
@@ -2015,7 +2074,7 @@
                // 新建待分派任务
                CaseTask dfphCaseTask = new CaseTask();
                dfphCaseTask.setId(utilsClient.getNewTimeId());
                dfphCaseTask.setCaseId(dfphCaseTask.getCaseId());
                dfphCaseTask.setCaseId(sbshCaseTask.getCaseId());
                dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId());
                dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId());
                dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId());
@@ -2044,7 +2103,7 @@
                mapper.insert(dfphCaseTask);
                // 更新纠纷信息
                CaseInfo caseInfoPO = new CaseInfo();
                caseInfoPO.setId(dfphCaseTask.getCaseId());
                caseInfoPO.setId(sbshCaseTask.getCaseId());
                caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex());
                caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes());
                caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex());
@@ -2074,7 +2133,7 @@
                // 新建待分派任务
                CaseTask dfphCaseTask = new CaseTask();
                dfphCaseTask.setId(utilsClient.getNewTimeId());
                dfphCaseTask.setCaseId(dfphCaseTask.getCaseId());
                dfphCaseTask.setCaseId(sbshCaseTask.getCaseId());
                dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId());
                dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId());
                dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId());