| | |
| | | import cn.huge.base.common.exception.ServiceException; |
| | | import cn.huge.base.common.utils.DateUtils; |
| | | import cn.huge.base.common.utils.IdUtils; |
| | | import cn.huge.module.cases.dao.mapper.*; |
| | | import cn.huge.module.cases.domain.dto.*; |
| | | import cn.huge.base.common.utils.ObjectUtils; |
| | | import cn.huge.module.cases.domain.dto.CaseFlowDTO; |
| | | import cn.huge.module.cases.domain.dto.TabButtonDTO; |
| | | 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.SysClientImpl; |
| | | import cn.huge.module.client.api.impl.UtilsClientImpl; |
| | | import cn.huge.module.cases.dao.mapper.CaseTaskMapper; |
| | | import cn.huge.module.cases.domain.po.CaseTask; |
| | | import cn.huge.module.constant.BaseConsts; |
| | | import cn.huge.module.cust.constant.UserBaseConsts; |
| | | import cn.huge.module.cust.dto.CtUnitDTO; |
| | | 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; |
| | |
| | | import cn.huge.module.flow.service.FlowInfoService; |
| | | import cn.huge.module.mediate.constant.*; |
| | | import cn.huge.module.sys.constant.SyTimeEnum; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.google.common.collect.Maps; |
| | | 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; |
| | |
| | | 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; |
| | | |
| | |
| | | private CaseInfoUnfoldService caseInfoUnfoldService; |
| | | @Autowired |
| | | private CaseWindupApplyService caseWindupApplyService; |
| | | @Autowired |
| | | private CaseAssistApplyService assistApplyService; |
| | | @Autowired |
| | | private CaseAppearService caseAppearService; |
| | | @Autowired |
| | | private CaseReturnService caseReturnService; |
| | | |
| | | @Autowired |
| | | private CaseWindupApplyMapper caseWindupApplyMapper; |
| | | @Autowired |
| | | private CaseReturnMapper caseReturnMapper; |
| | | @Autowired |
| | | private CaseAppearMapper caseAppearMapper; |
| | | @Autowired |
| | | private CaseAssistApplyMapper caseAssistApplyMapper; |
| | | |
| | | /** |
| | | * 更新对象 |
| | |
| | | TabButtonInfoDTO sxbl = new TabButtonInfoDTO(); |
| | | sxbl.setId("sxbl"); |
| | | sxbl.setName("事项办理"); |
| | | TabButtonInfoDTO sqjl = new TabButtonInfoDTO(); |
| | | sqjl.setId("sqjl"); |
| | | sqjl.setName("申请记录"); |
| | | // TabButtonInfoDTO sqjl = new TabButtonInfoDTO(); |
| | | // sqjl.setId("sqjl"); |
| | | // sqjl.setName("申请记录"); |
| | | TabButtonInfoDTO htsh = new TabButtonInfoDTO(); |
| | | htsh.setId("htsh"); |
| | | htsh.setName("回退审核"); |
| | |
| | | if (ObjectUtils.isNotEmpty(caseTask)) { |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(sbsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(sbsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(sxxq); |
| | | tabList.add(sxbl); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | |
| | | buttonList.add(tjbljl); |
| | | buttonList.add(lhczsq); |
| | |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(jash); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) { |
| | | daxx.setName("信息"); |
| | | tabList.add(daxx); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(daxx); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | } |
| | | }else { |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | // tabList.add(sqjl); |
| | | tabList.add(lhczsh); |
| | | } |
| | | // 封装数据 |
| | |
| | | public Map<String, Object> webListCaseFlow(String caseId, String userId){ |
| | | try{ |
| | | Map<String, Object> result = Maps.newHashMap(); |
| | | List<CaseFlowDTO> handleCaseFlowList = new LinkedList<>(); |
| | | LinkedList<CaseFlowDTO> handleCaseFlowList = new LinkedList<>(); |
| | | // 首节点 |
| | | CaseFlowDTO lfdj = new CaseFlowDTO(); |
| | | CaseInfo caseInfo = caseInfoService.getById(caseId); |
| | | lfdj.setNodeShowName("来访登记"); |
| | | lfdj.setHandleUnitName(caseInfo.getInputUnitName()); |
| | | lfdj.setHandleUserName(caseInfo.getInputUserName()); |
| | | if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ |
| | | lfdj.setNodeShowName("来访登记"); |
| | | lfdj.setHandleUserName(caseInfo.getInputUserName()); |
| | | lfdj.setHandleUnitName(caseInfo.getInputUnitName()); |
| | | }else { |
| | | lfdj.setNodeShowName(caseInfo.getCanalName()); |
| | | lfdj.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)"); |
| | | lfdj.setHandleUserName(caseInfo.getInputUserName()); |
| | | } |
| | | lfdj.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | lfdj.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | lfdj.setHandleTime(new Date()); |
| | | handleCaseFlowList.add(lfdj); |
| | | // 查询承办组织任务 |
| | | QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_1).orderByDesc("create_time"); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_1).orderByAsc("id"); |
| | | List<CaseTask> handleCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | |
| | | for (CaseTask caseTask: handleCaseTaskList){ |
| | | CaseFlowDTO caseFlowDTO = new CaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | caseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | caseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | caseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | caseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | caseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | caseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | caseFlowDTO.setStatus(caseTask.getStatus()); |
| | |
| | | caseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | caseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | caseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | caseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | // todo 审核不通过、通过的展示,有调解结果的 |
| | | if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) { |
| | | caseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | caseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | |
| | | } |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | caseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | caseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | |
| | | } |
| | | caseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(caseFlowDTO); |
| | | // 待受理节点,已签收的并处理完,需要加多一个受理节点 |
| | | if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())){ |
| | | if(CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() |
| | | && CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){ |
| | | CaseFlowDTO slCaseFlowDTO = new CaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | slCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | slCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | slCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | }else { |
| | | slCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | slCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | slCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | slCaseFlowDTO.setHandleNotes("已受理"); |
| | | if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) { |
| | | slCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | slCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | slCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | } |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | slCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | slCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | slCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | } |
| | | slCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(slCaseFlowDTO); |
| | | } |
| | | } |
| | | |
| | | // 办理反馈节点,加上化解结果 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_BLFK.getIndex())){ |
| | | CaseFlowDTO blfkCaseFlowDTO = new CaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | blfkCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | blfkCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | blfkCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | blfkCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | blfkCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | }else { |
| | | blfkCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | blfkCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | blfkCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId); |
| | | blfkCaseFlowDTO.setHandleNotes("化解结果:"+caseInfoUnfold.getMediResultName()); |
| | | blfkCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | // todo 审核不通过、通过的展示,有调解结果的 |
| | | if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) { |
| | | |
| | | } |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | |
| | | } |
| | | blfkCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(blfkCaseFlowDTO); |
| | | } |
| | | } |
| | | result.put("handleCaseFlowList", handleCaseFlowList); |
| | | |
| | | // 查询配合组织流程 |
| | | List<CaseFlowDTO> assistCaseFlowList = new LinkedList<>(); |
| | | LinkedList<CaseFlowDTO> assistCaseFlowList = new LinkedList<>(); |
| | | caseTaskQueryWrapper.clear(); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByDesc("create_time"); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | |
| | | } |
| | | |
| | | /** |
| | | * 按条件统计 |
| | | * 获取首页统计数量 |
| | | * @param userId 用户编号 |
| | | * @return long |
| | | */ |
| | | public Map<String, Long> getCountList(String userId){ |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | Map<String, Object> terms = new HashMap<>(); |
| | | terms.put("candeUnitId", loginUser.getUnitId()); |
| | | terms.put("candeDeptId", loginUser.getDeptId()); |
| | | mapper.countTaskList(terms); |
| | | superviseService.countCaseSuperviseList(0,loginUser.getUnitId()); |
| | | Map<String, Long> result = new HashMap<>(); |
| | | return result; |
| | | public FrontPageCountDTO getCountList(String userId){ |
| | | try { |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | Map<String, Object> terms = new HashMap<>(); |
| | | terms.put("candeUnitId", loginUser.getUnitId()); |
| | | terms.put("candeDeptId", loginUser.getDeptId()); |
| | | FrontPageCountDTO frontPageCountDTO = mapper.countTaskList(terms); |
| | | long supervise = superviseService.countCaseSuperviseList(0,loginUser.getUnitId()); |
| | | frontPageCountDTO.setSupervise(supervise); |
| | | long countApplyReview = caseWindupApplyMapper.countApplyReview(loginUser.getUnitId()); |
| | | long countReturnReview = caseReturnMapper.countReturnReview(loginUser.getUnitId()); |
| | | long countAppearReview = caseAppearMapper.countAppearReview(loginUser.getUnitId()); |
| | | long countAssistReview = caseAssistApplyMapper.countAssistReview(loginUser.getUnitId()); |
| | | frontPageCountDTO.setWaitReview(countApplyReview+countReturnReview+countAppearReview+countAssistReview); |
| | | return frontPageCountDTO; |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.getCountList]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.getCountList", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 首页-查询待办任务-受分派 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskFp(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = mapper.countMyTaskFp(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = mapper.pageMyTaskFp(page, terms); |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskFp]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskFp", e); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 首页-查询待办任务-受签收 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskQs(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = mapper.countMyTaskQs(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = mapper.pageMyTaskQs(page, terms); |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 首页-查询待办任务-受待理 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskSl(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = mapper.countMyTaskSl(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = mapper.pageMyTaskSl(page, terms); |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 首页-查询待办任务-办理中 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskBlz(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = mapper.countMyTaskProcessing(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = mapper.pageMyTaskProcessing(page, terms); |
| | | List<String> caseIdList = new ArrayList<>(); |
| | | Date now = DateUtils.getNowDate(); |
| | | for(FrontPageListDTO frontPageListDTO: frontPageListDTOList){ |
| | | long milliseconds1 = frontPageListDTO.getTurnaroundTime().getTime(); |
| | | long milliseconds2 = now.getTime(); |
| | | long diff = milliseconds2 - milliseconds1; |
| | | long daysBetween = diff / (24 * 60 * 60 * 1000); |
| | | frontPageListDTO.setProcessingDays(daysBetween); |
| | | caseIdList.add(frontPageListDTO.getCaseId()); |
| | | } |
| | | if(CollectionUtils.isNotEmpty(caseIdList)){ |
| | | QueryWrapper<CaseInfoUnfold> unfoldQueryWrapper = new QueryWrapper<>(); |
| | | unfoldQueryWrapper.in("id", caseIdList); |
| | | List<CaseInfoUnfold> unfoldList = caseInfoUnfoldService.list(unfoldQueryWrapper); |
| | | for(CaseInfoUnfold unfold: unfoldList){ |
| | | for(FrontPageListDTO frontPageListDTO: frontPageListDTOList){ |
| | | if(frontPageListDTO.getCaseId().equals(unfold.getId())){ |
| | | frontPageListDTO.setOrganizingUnit(unfold.getMediateUnitId()); |
| | | frontPageListDTO.setCooperatingUnit(unfold.getAssistUnitName()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 首页-查询待办任务-办理任务 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskBl(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = caseWindupApplyMapper.countMySubmitApplyReview(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = caseWindupApplyMapper.pageMySubmitApplyReview(page, terms); |
| | | |
| | | List<String> caseIdList = new ArrayList<>(); |
| | | caseIdList = frontPageListDTOList.stream().map(FrontPageListDTO ::getCaseId).collect(Collectors.toList()); |
| | | if(CollectionUtils.isNotEmpty(caseIdList)){ |
| | | QueryWrapper<CaseInfoUnfold> unfoldQueryWrapper = new QueryWrapper<>(); |
| | | unfoldQueryWrapper.in("id", caseIdList); |
| | | List<CaseInfoUnfold> unfoldList = caseInfoUnfoldService.list(unfoldQueryWrapper); |
| | | for(CaseInfoUnfold unfold: unfoldList){ |
| | | for(FrontPageListDTO frontPageListDTO: frontPageListDTOList){ |
| | | if(frontPageListDTO.getCaseId().equals(unfold.getId())){ |
| | | frontPageListDTO.setOrganizingUnit(unfold.getMediateUnitId()); |
| | | frontPageListDTO.setCooperatingUnit(unfold.getAssistUnitName()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 首页-待审核分页查询 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskSh(PageRequest page, int type, Map<String, Object> terms){ |
| | | try { |
| | | long total = 0; |
| | | List<FrontPageListDTO> frontPageListDTOList = new ArrayList<>(); |
| | | if(1 == type){ |
| | | total = caseReturnMapper.countMyTaskReturnReview(terms); |
| | | frontPageListDTOList = caseReturnMapper.pageMyTaskReturnReview(page,terms); |
| | | }else if(2 == type){ |
| | | total = caseAppearMapper.countMyTaskAppearReview(terms); |
| | | frontPageListDTOList = caseAppearMapper.pageMyTaskAppearReview(page, terms); |
| | | }else if(3 == type){ |
| | | total = caseWindupApplyMapper.countMyTaskApplyReview(terms); |
| | | frontPageListDTOList = caseWindupApplyMapper.pageMyTaskApplyReview(page, terms); |
| | | }else if(4 == type){ |
| | | total = caseAssistApplyMapper.countMyTaskAssistReview(terms); |
| | | frontPageListDTOList = caseAssistApplyMapper.pageMyTaskAssistReview(page, terms); |
| | | } |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | } |
| | | } |
| | | /** |
| | | * wechat端-查询流程进度 |
| | | * @param caseId 纠纷编号 |
| | |
| | | BeanUtils.copyProperties(caseInfo, dispCaseBaseDTO); |
| | | dispCaseBaseDTO.setCaseId(caseInfo.getId()); |
| | | CaseDispBaseDTO caseDispBaseDTO = dispClient.sysDisp(dispCaseBaseDTO); |
| | | log.info(JSON.toJSONString(caseDispBaseDTO)); |
| | | // 目前平台只能调度给组织 |
| | | if (DispBaseConstsEnum.TARGET_TYPE_1.getIndex().equals(caseDispBaseDTO.getTargetType())) { |
| | | // 目前平台只做镇街、村居级别的调度, |
| | |
| | | // 系统给综治中心分派,不需要签收 |
| | | dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (firstFlowNode.getExpire() != 0) { |
| | | dfpCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); |
| | | } |
| | | dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfpCaseTask.setCustId(caseInfo.getCustId()); |
| | | dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | |
| | | dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 系统给综治中心分派,不需要签收 |
| | | dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dfpCaseTask.setHandleUnitName("系统派单"); |
| | | dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dfpCaseTask.setHandleIllust("派单至:"+caseDispBaseDTO.getTargetName()); |
| | |
| | | // 系统调度给调解组织,需要签收 |
| | | sdlCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); |
| | | sdlCaseTask.setSignExpireTime(sysClient.getExpireTime(caseInfo.getCreateTime(), SyTimeEnum.SY_TIME_2.getIndex())); |
| | | // 任务处理时限 |
| | | if (firstFlowNode.getExpire() != 0) { |
| | | sdlCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); |
| | | } |
| | | sdlCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | sdlCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | sdlCaseTask.setCustId(caseInfo.getCustId()); |
| | |
| | | */ |
| | | public void webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ |
| | | try{ |
| | | |
| | | // 启动自行手里工作流 |
| | | FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_ZXSL, caseInfo.getId()); |
| | | // 进入第1个节点-办理反馈 |
| | | CaseTask blfkCaseTask = new CaseTask(); |
| | | blfkCaseTask.setId(utilsClient.getNewTimeId()); |
| | | blfkCaseTask.setCaseId(caseInfo.getId()); |
| | | blfkCaseTask.setFlowableId(firstFlowNode.getFlowableId()); |
| | | blfkCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); |
| | | blfkCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); |
| | | blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | blfkCaseTask.setNodeType(firstFlowNode.getNodeType()); |
| | | blfkCaseTask.setNodeId(firstFlowNode.getNodeId()); |
| | | blfkCaseTask.setNodeName(firstFlowNode.getNodeName()); |
| | | blfkCaseTask.setFlowId(firstFlowNode.getFlowId()); |
| | | blfkCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); |
| | | blfkCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | blfkCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | blfkCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 系统给综治中心分派,不需要签收 |
| | | blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (firstFlowNode.getExpire() != 0) { |
| | | blfkCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); |
| | | } |
| | | blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | blfkCaseTask.setCustId(caseInfo.getCustId()); |
| | | blfkCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | | blfkCaseTask.setUpdateTime(caseInfo.getUpdateTime()); |
| | | mapper.insert(blfkCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(caseInfo.getId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_4.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_4.getDes()); |
| | | caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); |
| | | caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); |
| | | caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webStartFlowZXSL", e); |
| | |
| | | FlowNode newFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), |
| | | flowOperation, userId); |
| | | // 新建待受理任务 |
| | | CaseTask blfkCaseTask = new CaseTask(); |
| | | blfkCaseTask.setId(utilsClient.getNewTimeId()); |
| | | blfkCaseTask.setCaseId(dfpCaseTask.getCaseId()); |
| | | blfkCaseTask.setFlowableId(newFlowNode.getFlowableId()); |
| | | blfkCaseTask.setProcessInstanceId(newFlowNode.getProcessInstanceId()); |
| | | blfkCaseTask.setProcessTaskId(newFlowNode.getProcessTaskId()); |
| | | blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | blfkCaseTask.setNodeType(newFlowNode.getNodeType()); |
| | | blfkCaseTask.setNodeId(newFlowNode.getNodeId()); |
| | | blfkCaseTask.setNodeName(newFlowNode.getNodeName()); |
| | | blfkCaseTask.setFlowId(newFlowNode.getFlowId()); |
| | | blfkCaseTask.setNodeShowName(newFlowNode.getNodeShowName()); |
| | | blfkCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | CaseTask dslCaseTask = new CaseTask(); |
| | | dslCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dslCaseTask.setCaseId(dfpCaseTask.getCaseId()); |
| | | dslCaseTask.setFlowableId(newFlowNode.getFlowableId()); |
| | | dslCaseTask.setProcessInstanceId(newFlowNode.getProcessInstanceId()); |
| | | dslCaseTask.setProcessTaskId(newFlowNode.getProcessTaskId()); |
| | | dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dslCaseTask.setNodeType(newFlowNode.getNodeType()); |
| | | dslCaseTask.setNodeId(newFlowNode.getNodeId()); |
| | | dslCaseTask.setNodeName(newFlowNode.getNodeName()); |
| | | dslCaseTask.setFlowId(newFlowNode.getFlowId()); |
| | | dslCaseTask.setNodeShowName(newFlowNode.getNodeShowName()); |
| | | dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | blfkCaseTask.setCandeUnitId(dslUnitDTO.getId()); |
| | | blfkCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); |
| | | dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dslCaseTask.setCandeUnitId(dslUnitDTO.getId()); |
| | | dslCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); |
| | | // 分派的任务,需要签收 |
| | | blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); |
| | | blfkCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | blfkCaseTask.setCustId(dfpCaseTask.getCustId()); |
| | | blfkCaseTask.setCreateTime(nowDate); |
| | | blfkCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(blfkCaseTask); |
| | | dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); |
| | | dslCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); |
| | | dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (newFlowNode.getExpire() != 0) { |
| | | dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, newFlowNode.getExpire())); |
| | | } |
| | | dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dslCaseTask.setCustId(dfpCaseTask.getCustId()); |
| | | dslCaseTask.setCreateTime(nowDate); |
| | | dslCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dslCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(blfkCaseTask.getCaseId()); |
| | | caseInfoPO.setId(dslCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes()); |
| | | caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); |
| | |
| | | } |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(blfkCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setId(dslCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setAssistUnitId(assistUnitId); |
| | | caseInfoUnfoldPO.setAssistUnitName(assistUnitName); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | |
| | | dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | dslCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | dslCaseTaskPO.setHandleIllust("已受理"); |
| | | dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dslCaseTaskPO.setHandleTime(nowDate); |
| | |
| | | // 受理后的任务,不需要签收 |
| | | blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (newFlowNode.getExpire() != 0) { |
| | | blfkCaseTask.setExpireTime(DateUtils.addDay(nowDate, newFlowNode.getExpire())); |
| | | } |
| | | blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | blfkCaseTask.setCustId(dslCaseTask.getCustId()); |
| | | blfkCaseTask.setCreateTime(nowDate); |
| | |
| | | jasqCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jasqCaseTask.setHandleUserId(loginUser.getId()); |
| | | jasqCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jasqCaseTask.setHandleContent(caseWindupApply.getWindupContent()); |
| | | jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jasqCaseTask.setHandleTime(nowDate); |
| | | jasqCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | |
| | | jashCaseTask.setHandleUserId(loginUser.getId()); |
| | | jashCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jashCaseTask.setHandleTime(nowDate); |
| | | jashCaseTask.setHandleTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jashCaseTask.setCustId(jasqCaseTask.getCustId()); |
| | | jashCaseTask.setCreateTime(nowDate); |
| | | jashCaseTask.setUpdateTime(nowDate); |
| | | jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(jashCaseTask); |
| | | // 完成当前结案审核工作流任务,走当事人评价任务 |
| | | FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | |
| | | // 受理后的任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dsrpjFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); |
| | | } |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(nowDate); |
| | | dsrpjCaseTask.setUpdateTime(nowDate); |
| | | dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); |
| | | dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | |
| | | // 受理后的任务,不需要签收 |
| | | jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (jashFlowNode.getExpire() != 0) { |
| | | jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); |
| | | } |
| | | jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jashCaseTask.setCustId(jasqCaseTask.getCustId()); |
| | | jashCaseTask.setCreateTime(nowDate); |
| | | jashCaseTask.setUpdateTime(nowDate); |
| | | jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(jashCaseTask); |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseWindupApply.setAuditUserId(loginUser.getId()); |
| | | caseWindupApply.setAuditUserName(loginUser.getTrueName()); |
| | | caseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | caseWindupApply.setCustId(loginUser.getCustId()); |
| | | caseWindupApply.setAuditTime(nowDate); |
| | | caseWindupApply.setUpdateTime(nowDate); |
| | | caseWindupApplyService.saveCaseWindupApply(caseWindupApply); |
| | | caseWindupApplyService.updateCaseWindupApply(caseWindupApply); |
| | | // 查询结案审核任务 |
| | | CaseTask jashCaseTask = mapper.selectById(caseWindupApply.getCaseTaskId()); |
| | | // 审核通过, |
| | |
| | | jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); |
| | | jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jashCaseTaskPO.setHandleTime(nowDate); |
| | | jashCaseTaskPO.setUpdateTime(nowDate); |
| | |
| | | // 受理后的任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dsrpjFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); |
| | | } |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(nowDate); |
| | |
| | | jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); |
| | | jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | jashCaseTaskPO.setHandleTime(nowDate); |
| | | jashCaseTaskPO.setUpdateTime(nowDate); |
| | |
| | | // 受理后的任务,不需要签收 |
| | | blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (blfkFlowNode.getExpire() != 0) { |
| | | blfkCaseTask.setExpireTime(DateUtils.addDay(nowDate, blfkFlowNode.getExpire())); |
| | | } |
| | | blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | blfkCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | blfkCaseTask.setCreateTime(nowDate); |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * web端任务处理-上报 |
| | | * @param caseReturn 回退申请表单 |
| | | * @param userId 当前登录用户 |
| | | */ |
| | | public void webReturnApply(CaseReturn caseReturn, String userId){ |
| | | try{ |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 创建回退申请信息 |
| | | caseReturn.setReturnUnitId(loginUser.getUnitId()); |
| | | caseReturn.setReturnUnitName(loginUser.getUnitName()); |
| | | caseReturn.setReturnUserId(loginUser.getId()); |
| | | caseReturn.setReturnUserName(loginUser.getTrueName()); |
| | | caseReturn.setReturnTime(nowDate); |
| | | caseReturn.setReturnStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | caseReturn.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | caseReturn.setCustId(loginUser.getCustId()); |
| | | caseReturn.setCreateTime(nowDate); |
| | | caseReturn.setUpdateTime(nowDate); |
| | | // 查询待受理任务 |
| | | CaseTask dslCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); |
| | | // 完成当前待受理任务 |
| | | CaseTask dslCaseTaskPO = new CaseTask(); |
| | | dslCaseTaskPO.setId(caseReturn.getCaseTaskId()); |
| | | dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | dslCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTaskPO.setHandleContent(caseReturn.getReturnContent()); |
| | | dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dslCaseTaskPO.setHandleTime(nowDate); |
| | | dslCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(dslCaseTaskPO); |
| | | // 完成当前待受理工作流任务,走回退审核任务 |
| | | FlowNode htshFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsq, userId); |
| | | // 新建回退审核任务 |
| | | CaseTask htshCaseTask = new CaseTask(); |
| | | htshCaseTask.setId(utilsClient.getNewTimeId()); |
| | | htshCaseTask.setCaseId(dslCaseTaskPO.getCaseId()); |
| | | htshCaseTask.setFlowableId(htshFlowNode.getFlowableId()); |
| | | htshCaseTask.setProcessInstanceId(htshFlowNode.getProcessInstanceId()); |
| | | htshCaseTask.setProcessTaskId(htshFlowNode.getProcessTaskId()); |
| | | htshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | htshCaseTask.setNodeType(htshFlowNode.getNodeType()); |
| | | htshCaseTask.setNodeId(htshFlowNode.getNodeId()); |
| | | htshCaseTask.setNodeName(htshFlowNode.getNodeName()); |
| | | htshCaseTask.setFlowId(htshFlowNode.getFlowId()); |
| | | htshCaseTask.setNodeShowName(htshFlowNode.getNodeShowName()); |
| | | htshCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | htshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | CtUnitDTO ctUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); |
| | | htshCaseTask.setCandeUnitId(ctUnitDTO.getId()); |
| | | htshCaseTask.setCandeUnitName(ctUnitDTO.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | htshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (htshFlowNode.getExpire() != 0) { |
| | | htshCaseTask.setExpireTime(DateUtils.addDay(nowDate, htshFlowNode.getExpire())); |
| | | } |
| | | htshCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | htshCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | htshCaseTask.setCustId(htshCaseTask.getCustId()); |
| | | htshCaseTask.setCreateTime(nowDate); |
| | | htshCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(htshCaseTask); |
| | | // 新增回退申请信息 |
| | | caseReturn.setCaseTaskId(htshCaseTask.getId()); |
| | | caseReturnService.save(caseReturn); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearApply", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * web端任务处理-回退审核 |
| | | * @param caseReturn 回退审核表单 |
| | | * @param userId 当前登录用户 |
| | | */ |
| | | public void webReturnAudit(CaseReturn caseReturn, String userId){ |
| | | try{ |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 更新回退申请信息 |
| | | caseReturn.setReturnStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseReturn.setAuditUserId(loginUser.getId()); |
| | | caseReturn.setAuditUserName(loginUser.getTrueName()); |
| | | caseReturn.setAuditTime(nowDate); |
| | | caseReturn.setUpdateTime(nowDate); |
| | | caseReturnService.updateCaseReturn(caseReturn); |
| | | // 查询回退审核任务 |
| | | CaseTask htshCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); |
| | | // 审核通过 |
| | | if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseReturn.getAuditResult())){ |
| | | // 完成当前回退审核任务 |
| | | CaseTask htshCaseTaskPO = new CaseTask(); |
| | | htshCaseTaskPO.setId(caseReturn.getCaseTaskId()); |
| | | htshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | htshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | htshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | htshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); |
| | | htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | htshCaseTaskPO.setHandleTime(nowDate); |
| | | htshCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(htshCaseTaskPO); |
| | | // 完成当前回退审核任务,走待分派任务 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsh_ty, userId); |
| | | // 新建待分派任务 |
| | | CaseTask dfphCaseTask = new CaseTask(); |
| | | dfphCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfphCaseTask.setCaseId(dfphCaseTask.getCaseId()); |
| | | dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); |
| | | dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); |
| | | dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); |
| | | dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); |
| | | dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); |
| | | dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); |
| | | dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); |
| | | dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); |
| | | dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (dfpFlowNode.getExpire() != 0) { |
| | | dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); |
| | | } |
| | | dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfphCaseTask.setCustId(dfphCaseTask.getCustId()); |
| | | dfphCaseTask.setCreateTime(nowDate); |
| | | dfphCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dfphCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(dfphCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes()); |
| | | caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); |
| | | caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); |
| | | caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | }else { |
| | | // 审核不通过 |
| | | // 完成当前回退审核任务 |
| | | CaseTask sbshCaseTaskPO = new CaseTask(); |
| | | sbshCaseTaskPO.setId(caseReturn.getCaseTaskId()); |
| | | sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | sbshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | sbshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); |
| | | sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | sbshCaseTaskPO.setHandleTime(nowDate); |
| | | sbshCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(sbshCaseTaskPO); |
| | | CtUnitDTO returnUnit = custClient.getUnitById(caseReturn.getReturnUnitId()); |
| | | String operation = FlowableConsts.OPERATION_htsh_bty; |
| | | if (UserBaseConsts.UNIT_GRADE_2 == returnUnit.getUnitGrade()){ |
| | | operation = FlowableConsts.OPERATION_htsh_bty_qj; |
| | | } |
| | | if(UserBaseConsts.UNIT_GRADE_1 == returnUnit.getUnitGrade()){ |
| | | operation = FlowableConsts.OPERATION_htsh_bty_sj; |
| | | } |
| | | // 完成当前上报审核任务,走待受理任务 |
| | | FlowNode dslFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | operation, userId); |
| | | // 新建待分派任务 |
| | | CaseTask dslCaseTask = new CaseTask(); |
| | | dslCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dslCaseTask.setCaseId(dslCaseTask.getCaseId()); |
| | | dslCaseTask.setFlowableId(dslFlowNode.getFlowableId()); |
| | | dslCaseTask.setProcessInstanceId(dslFlowNode.getProcessInstanceId()); |
| | | dslCaseTask.setProcessTaskId(dslFlowNode.getProcessTaskId()); |
| | | dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dslCaseTask.setNodeType(dslFlowNode.getNodeType()); |
| | | dslCaseTask.setNodeId(dslFlowNode.getNodeId()); |
| | | dslCaseTask.setNodeName(dslFlowNode.getNodeName()); |
| | | dslCaseTask.setFlowId(dslFlowNode.getFlowId()); |
| | | dslCaseTask.setNodeShowName(dslFlowNode.getNodeShowName()); |
| | | dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dslCaseTask.setCandeUnitId(caseReturn.getReturnUnitId()); |
| | | dslCaseTask.setCandeUnitName(caseReturn.getReturnUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (dslFlowNode.getExpire() != 0) { |
| | | dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, dslFlowNode.getExpire())); |
| | | } |
| | | dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dslCaseTask.setCustId(dslCaseTask.getCustId()); |
| | | dslCaseTask.setCreateTime(nowDate); |
| | | dslCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dslCaseTask); |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearAudit]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearAudit", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * web端任务处理-上报 |
| | | * @param caseAppear 上报表单 |
| | | * @param userId 当前登录用户 |
| | | */ |
| | | public void webAppearApply(CaseAppear caseAppear, String userId){ |
| | | try{ |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 创建上报信息 |
| | | caseAppear.setAppearUnitId(loginUser.getUnitId()); |
| | | caseAppear.setAppearUnitName(loginUser.getUnitName()); |
| | | caseAppear.setAppearUserId(loginUser.getId()); |
| | | caseAppear.setAppearUserName(loginUser.getTrueName()); |
| | | caseAppear.setAppearTime(nowDate); |
| | | caseAppear.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | caseAppear.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | caseAppear.setCustId(loginUser.getCustId()); |
| | | caseAppear.setCreateTime(nowDate); |
| | | caseAppear.setUpdateTime(nowDate); |
| | | // 查询待受理任务 |
| | | CaseTask dslCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); |
| | | // 完成当前待受理任务 |
| | | CaseTask dslCaseTaskPO = new CaseTask(); |
| | | dslCaseTaskPO.setId(caseAppear.getCaseTaskId()); |
| | | dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | dslCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTaskPO.setHandleContent(caseAppear.getAppearContent()); |
| | | dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dslCaseTaskPO.setHandleTime(nowDate); |
| | | dslCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(dslCaseTaskPO); |
| | | // 完成当前待受理工作流任务,走上报审核任务 |
| | | FlowNode sbshFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_sb, userId); |
| | | // 新建上报审核任务 |
| | | CaseTask sbshCaseTask = new CaseTask(); |
| | | sbshCaseTask.setId(utilsClient.getNewTimeId()); |
| | | sbshCaseTask.setCaseId(dslCaseTaskPO.getCaseId()); |
| | | sbshCaseTask.setFlowableId(sbshFlowNode.getFlowableId()); |
| | | sbshCaseTask.setProcessInstanceId(sbshFlowNode.getProcessInstanceId()); |
| | | sbshCaseTask.setProcessTaskId(sbshFlowNode.getProcessTaskId()); |
| | | sbshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_3); |
| | | sbshCaseTask.setNodeType(sbshFlowNode.getNodeType()); |
| | | sbshCaseTask.setNodeId(sbshFlowNode.getNodeId()); |
| | | sbshCaseTask.setNodeName(sbshFlowNode.getNodeName()); |
| | | sbshCaseTask.setFlowId(sbshFlowNode.getFlowId()); |
| | | sbshCaseTask.setNodeShowName(sbshFlowNode.getNodeShowName()); |
| | | sbshCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | sbshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | sbshCaseTask.setCandeUnitId(caseAppear.getAuditUnitId()); |
| | | sbshCaseTask.setCandeUnitName(caseAppear.getAuditUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | sbshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (sbshFlowNode.getExpire() != 0) { |
| | | sbshCaseTask.setExpireTime(DateUtils.addDay(nowDate, sbshFlowNode.getExpire())); |
| | | } |
| | | sbshCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | sbshCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | sbshCaseTask.setCustId(sbshCaseTask.getCustId()); |
| | | sbshCaseTask.setCreateTime(nowDate); |
| | | sbshCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(sbshCaseTask); |
| | | // 新增上报申请信息 |
| | | caseAppear.setCaseTaskId(sbshCaseTask.getId()); |
| | | caseAppearService.save(caseAppear); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearApply", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * web端任务处理-上报审核 |
| | | * @param caseAppear 上报审核表单 |
| | | * @param userId 当前登录用户 |
| | | */ |
| | | public void webAppearAudit(CaseAppear caseAppear, String userId){ |
| | | try{ |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 更新上报信息 |
| | | caseAppear.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseAppear.setAuditUserId(loginUser.getId()); |
| | | caseAppear.setAuditUserName(loginUser.getTrueName()); |
| | | caseAppear.setAuditTime(nowDate); |
| | | caseAppear.setUpdateTime(nowDate); |
| | | caseAppearService.updateCaseAppear(caseAppear); |
| | | // 查询上报审核任务 |
| | | CaseTask sbshCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); |
| | | // 审核通过 |
| | | if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseAppear.getAuditResult())){ |
| | | // 完成当前上报审核任务 |
| | | CaseTask sbshCaseTaskPO = new CaseTask(); |
| | | sbshCaseTaskPO.setId(caseAppear.getCaseTaskId()); |
| | | sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | sbshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); |
| | | sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | sbshCaseTaskPO.setHandleTime(nowDate); |
| | | sbshCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(sbshCaseTaskPO); |
| | | // 完成当前上报审核任务,走待分派任务 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_sbsh_ty, userId); |
| | | // 新建待分派任务 |
| | | CaseTask dfphCaseTask = new CaseTask(); |
| | | dfphCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfphCaseTask.setCaseId(dfphCaseTask.getCaseId()); |
| | | dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); |
| | | dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); |
| | | dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); |
| | | dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); |
| | | dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); |
| | | dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); |
| | | dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); |
| | | dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); |
| | | dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dfpFlowNode.getExpire() != 0) { |
| | | dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); |
| | | } |
| | | dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfphCaseTask.setCustId(dfphCaseTask.getCustId()); |
| | | dfphCaseTask.setCreateTime(nowDate); |
| | | dfphCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dfphCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(dfphCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes()); |
| | | caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); |
| | | caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); |
| | | caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | }else { |
| | | // 审核不通过 |
| | | // 完成当前上报审核任务 |
| | | CaseTask sbshCaseTaskPO = new CaseTask(); |
| | | sbshCaseTaskPO.setId(caseAppear.getCaseTaskId()); |
| | | sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | sbshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); |
| | | sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | sbshCaseTaskPO.setHandleTime(nowDate); |
| | | sbshCaseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(sbshCaseTaskPO); |
| | | // 完成当前上报审核任务,走待分派任务 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_sbsh_bty, userId); |
| | | // 新建待分派任务 |
| | | CaseTask dfphCaseTask = new CaseTask(); |
| | | dfphCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfphCaseTask.setCaseId(dfphCaseTask.getCaseId()); |
| | | dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); |
| | | dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); |
| | | dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); |
| | | dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); |
| | | dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); |
| | | dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); |
| | | dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); |
| | | dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); |
| | | dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dfphCaseTask.setCandeUnitId(caseAppear.getAppearUnitId()); |
| | | dfphCaseTask.setCandeUnitName(caseAppear.getAppearUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dfpFlowNode.getExpire() != 0) { |
| | | dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); |
| | | } |
| | | dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfphCaseTask.setCustId(dfphCaseTask.getCustId()); |
| | | dfphCaseTask.setCreateTime(nowDate); |
| | | dfphCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dfphCaseTask); |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearAudit]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearAudit", e); |
| | | } |
| | | } |
| | | |
| | | } |