| | |
| | | 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.WebCaseFlowDTO; |
| | |
| | | import cn.huge.module.cases.domain.po.CaseAssistApply; |
| | | import cn.huge.module.cases.domain.po.CaseInfoUnfold; |
| | | import cn.huge.module.cases.domain.po.*; |
| | | import cn.huge.module.cases.utils.TaskUsetimeUtils; |
| | | import cn.huge.module.client.api.impl.CustClientImpl; |
| | | import cn.huge.module.client.api.impl.DispClientImpl; |
| | | import cn.huge.module.client.api.impl.SysClientImpl; |
| | |
| | | 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.draft.service.CasedraftInfoService; |
| | | import cn.huge.module.mediate.constant.AuditBaseConsts; |
| | | import cn.huge.module.mediate.constant.AuditBaseConstsEnum; |
| | | import cn.huge.module.disp.constant.DispBaseConstsEnum; |
| | |
| | | import cn.huge.module.flow.domain.po.FlowNode; |
| | | import cn.huge.module.flow.service.FlowInfoService; |
| | | import cn.huge.module.mediate.constant.*; |
| | | import cn.huge.module.sys.constant.GridBaseConsts; |
| | | import cn.huge.module.sys.constant.GridEnum; |
| | | import cn.huge.module.sys.constant.SyTimeEnum; |
| | | import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO; |
| | | import cn.huge.module.sys.vo.GridTaskVo; |
| | | import cn.huge.module.sys.vo.GridToDoBacthVo; |
| | | import cn.huge.module.sys.vo.GridToDoVo; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.google.common.collect.Maps; |
| | | import lombok.extern.java.Log; |
| | | import org.apache.commons.collections.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | |
| | | import org.springframework.data.domain.PageRequest; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | private CaseEvaluateService caseEvaluateService; |
| | | @Autowired |
| | | private CaseAssistInfoService caseAssistInfoService; |
| | | |
| | | @Autowired |
| | | private CaseWindupApplyMapper caseWindupApplyMapper; |
| | | private CaseDismissService caseDismissService; |
| | | @Autowired |
| | | private CaseReturnMapper caseReturnMapper; |
| | | private CasedraftInfoService casedraftInfoService; |
| | | @Autowired |
| | | private CaseAppearMapper caseAppearMapper; |
| | | @Autowired |
| | | private CaseAssistApplyMapper caseAssistApplyMapper; |
| | | private CasePersonService casePersonService; |
| | | |
| | | /** |
| | | * 更新对象 |
| | |
| | | } |
| | | |
| | | /** |
| | | * 根据纠纷编号查询进行中的配合组织任务 |
| | | * @param caseId |
| | | * @return |
| | | */ |
| | | public List<CaseTask> listAssistTasking(String caseId){ |
| | | // 查询配合组织的任务 |
| | | QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); |
| | | caseTaskQueryWrapper.eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).eq("case_id", caseId) |
| | | .eq("status", CaseTaskConsts.TASK_STATUS_1); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | return assistCaseTaskList; |
| | | } |
| | | |
| | | /** |
| | | * web端-任务出来页面-初始化tab和按钮 |
| | | * @param caseTaskId |
| | | * @return |
| | | */ |
| | | public TabButtonDTO webGetTabButton(String caseTaskId, String userId){ |
| | | try{ |
| | | // 查询当前任务信息 |
| | | CaseTask caseTask = mapper.selectById(caseTaskId); |
| | | // 定义tab |
| | | TabButtonInfoDTO sxxq = new TabButtonInfoDTO(); |
| | | sxxq.setId("sxxq"); |
| | |
| | | TabButtonInfoDTO daxx = new TabButtonInfoDTO(); |
| | | daxx.setId("daxx"); |
| | | daxx.setName("档案信息"); |
| | | TabButtonInfoDTO byslxq = new TabButtonInfoDTO(); |
| | | byslxq.setId("byslxq"); |
| | | byslxq.setName("详情"); |
| | | |
| | | // 定义button |
| | | TabButtonInfoDTO tjbljl = new TabButtonInfoDTO(); |
| | |
| | | sb.setId("sb"); |
| | | sb.setName("上报"); |
| | | TabButtonInfoDTO bysl = new TabButtonInfoDTO(); |
| | | sb.setId("bysl"); |
| | | sb.setName("不予受理"); |
| | | bysl.setId("bysl"); |
| | | bysl.setName("不予受理"); |
| | | TabButtonInfoDTO xqcl = new TabButtonInfoDTO(); |
| | | xqcl.setId("xqcl"); |
| | | xqcl.setName("处理"); |
| | | TabButtonInfoDTO tabcl = new TabButtonInfoDTO(); |
| | | tabcl.setId("tabcl"); |
| | | tabcl.setName("处理"); |
| | | |
| | | // 根据流程显示tab |
| | | List<TabButtonInfoDTO> tabList = new LinkedList<>(); |
| | | // 根据流程显示button |
| | | List<TabButtonInfoDTO> buttonList = new LinkedList<>(); |
| | | // 查询当前任务信息 |
| | | CaseTask caseTask = mapper.selectById(caseTaskId); |
| | | if (ObjectUtils.isNotEmpty(caseTask)) { |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | | buttonList.add(sb); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | 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(sbsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | | buttonList.add(sb); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | 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(sbsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(zxsl); |
| | | buttonList.add(jb); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | buttonList.add(bysl); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) { |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) { |
| | | tabList.add(sxxq); |
| | | tabList.add(sxbl); |
| | | tabList.add(lcdb); |
| | | // 已完成任务 |
| | | if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){ |
| | | // 不予受理 |
| | | if (ObjectUtils.isNotEmpty(caseTask.getHandleResult()) && CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ |
| | | tabList.add(byslxq); |
| | | tabList.add(sqjl); |
| | | |
| | | buttonList.add(tjbljl); |
| | | buttonList.add(lhczsq); |
| | | buttonList.add(jasq); |
| | | buttonList.add(db); |
| | | }else { |
| | | tabList.add(sxxq); |
| | | tabList.add(sxbl); |
| | | // 正常任务 |
| | | CaseInfo caseInfo = caseInfoService.getById(caseTask.getCaseId()); |
| | | if (CaseProcessBaseConstsEnum.CASE_PROCESS_6.getIndex() != caseInfo.getProcess()){ |
| | | daxx.setName("详情"); |
| | | } |
| | | tabList.add(daxx); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | } |
| | | }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())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tjbljl); |
| | | sl.setName("自行受理"); |
| | | buttonList.add(sl); |
| | | buttonList.add(jb); |
| | | buttonList.add(bysl); |
| | | buttonList.add(xqcl); |
| | | CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId); |
| | | if (UserBaseConsts.UNIT_GRADE_1 != ctUnitDTO.getUnitGrade()) { |
| | | buttonList.add(sb); |
| | | } |
| | | } |
| | | // 待受理节点 |
| | | 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())) { |
| | | tabList.add(dslxq); |
| | | tabList.add(sqjl); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | buttonList.add(xqcl); |
| | | } |
| | | // 回退审核节点 |
| | | 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()) |
| | | || FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tabcl); |
| | | } |
| | | // 上报审核节点 |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId()) |
| | | || FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(sbsh); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tabcl); |
| | | } |
| | | // 办理反馈节点 |
| | | if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) { |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) { |
| | | tabList.add(sxxq); |
| | | tabList.add(sxbl); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tjbljl); |
| | | buttonList.add(lhczsq); |
| | | buttonList.add(jasq); |
| | | buttonList.add(tabcl); |
| | | } else { |
| | | tabList.add(sxxq); |
| | | tabList.add(sxbl); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tjbljl); |
| | | buttonList.add(tabcl); |
| | | } |
| | | } |
| | | // 结案审核节点 |
| | | if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId()) |
| | | || FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(caseTask.getNodeId()) |
| | | ||FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(jash); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(tabcl); |
| | | } |
| | | // 当事人评价节点 |
| | | 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); |
| | | // 额外单独给详情跳转查看 |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | buttonList.add(tabcl); |
| | | } |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) { |
| | | tabList.add(sxxq); |
| | | 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); |
| | | } |
| | | 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); |
| | | |
| | | buttonList.add(sl); |
| | | buttonList.add(ht); |
| | | } |
| | | if (FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) { |
| | | sxxq.setName("详情"); |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(htsh); |
| | | } |
| | | }else { |
| | | tabList.add(sxxq); |
| | | tabList.add(sqjl); |
| | | tabList.add(lhczsh); |
| | | // 是否是联合处置审核 |
| | | CaseAssistApply caseAssistApply = caseAssistApplyService.getById(caseTaskId); |
| | | if (ObjectUtils.isNotEmpty(caseAssistApply)){ |
| | | tabList.add(sxxq); |
| | | tabList.add(lhczsh); |
| | | tabList.add(sqjl); |
| | | }else { |
| | | daxx.setName("详情"); |
| | | tabList.add(daxx); |
| | | tabList.add(lcdb); |
| | | tabList.add(sqjl); |
| | | } |
| | | } |
| | | // 封装数据 |
| | | TabButtonDTO tabButtonDTO = new TabButtonDTO(); |
| | |
| | | */ |
| | | public Map<String, Object> webListCaseFlow(String caseId, String userId){ |
| | | try{ |
| | | // 流程标签展示,1:正常流转/审核同意(√),2:回退/审核不同意(←),3:上报申请(↑),4:不予受理(x) |
| | | int SHOW_TASK_TYPE_1 = 1; |
| | | int SHOW_TASK_TYPE_2 = 2; |
| | | int SHOW_TASK_TYPE_3 = 3; |
| | | int SHOW_TASK_TYPE_4 = 4; |
| | | |
| | | Map<String, Object> result = Maps.newHashMap(); |
| | | LinkedList<WebCaseFlowDTO> handleCaseFlowList = new LinkedList<>(); |
| | | // 首节点 |
| | |
| | | lfdj.setNodeShowName(caseInfo.getCanalName()); |
| | | lfdj.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)"); |
| | | } |
| | | lfdj.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | lfdj.setTaskType(SHOW_TASK_TYPE_1); |
| | | lfdj.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | lfdj.setHandleTime(new Date()); |
| | | handleCaseFlowList.add(lfdj); |
| | |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | slWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | handleCaseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | // 普通节点 |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | webCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | // 当事人评价/结案归档节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | webCaseFlowDTO.setHandleUserName(null); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName()); |
| | | }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ |
| | | webCaseFlowDTO.setHandleUserName(null); |
| | | webCaseFlowDTO.setHandleUnitName("系统自动"); |
| | | }else{ |
| | | webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | } |
| | | // 回退申请节点 |
| | | if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ |
| | | if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){ |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); |
| | | webCaseFlowDTO.setNodeShowName("事件回退"); |
| | | CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); |
| | | if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { |
| | |
| | | } |
| | | } |
| | | // 上报申请节点 |
| | | if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ |
| | | if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){ |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3); |
| | | webCaseFlowDTO.setNodeShowName("事件上报"); |
| | | CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); |
| | | if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { |
| | |
| | | webCaseFlowDTO.setHandleNotes("上报意见:-" ); |
| | | } |
| | | } |
| | | // 当事人评价节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | } |
| | | // 审核节点要判断通过/不通过 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){ |
| | | // 处理不通过,任务类型就是回退 |
| | | // 审核不通过 |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | }else{ |
| | | // 处理通过 |
| | | // 审核通过 |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | } |
| | |
| | | webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName()); |
| | | } |
| | | } |
| | | // 不予受理 |
| | | if (CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_4); |
| | | webCaseFlowDTO.setNodeShowName("不予受理"); |
| | | webCaseFlowDTO.setHandleNotes(null); |
| | | } |
| | | handleCaseFlowList.add(webCaseFlowDTO); |
| | | }else { |
| | | // 进行中的节点 |
| | |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | handleCaseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | // 当事人评价节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName()); |
| | |
| | | List<CaseAssistInfo> caseAssistInfoList = caseAssistInfoService.listByCaseId(caseId); |
| | | if (CollectionUtils.isNotEmpty(caseAssistInfoList)){ |
| | | LinkedList<WebAssistCaseFlowDTO> assistCaseFlowList = new LinkedList<>(); |
| | | int i = 0; |
| | | for (CaseAssistInfo caseAssistInfo: caseAssistInfoList){ |
| | | WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO(); |
| | | webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId()); |
| | | if (CaseTaskConsts.ASSIST_STATUS_0 == caseAssistInfo.getAssistStatus()) { |
| | | WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO(); |
| | | webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId()); |
| | | webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()); |
| | | }else { |
| | | webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)"); |
| | | } |
| | | LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>(); |
| | | caseTaskQueryWrapper.clear(); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("cande_unit_id", caseAssistInfo.getAssistUnitId()) |
| | | .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id"); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | for (CaseTask caseTask: assistCaseTaskList){ |
| | | // 已结束节点 |
| | | if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){ |
| | | // 待受理并已签收的正常任务节点,需要加多一个签收节点 |
| | | 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()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | caseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | // 普通节点 |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | webCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | // 回退申请节点 |
| | | if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ |
| | | webCaseFlowDTO.setNodeShowName("事件回退"); |
| | | CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); |
| | | if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { |
| | | webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent()); |
| | | }else { |
| | | webCaseFlowDTO.setHandleNotes("回退理由:-"); |
| | | |
| | | } |
| | | } |
| | | // 上报申请节点 |
| | | if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ |
| | | webCaseFlowDTO.setNodeShowName("事件上报"); |
| | | CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); |
| | | if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { |
| | | webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent()); |
| | | }else { |
| | | webCaseFlowDTO.setHandleNotes("上报意见:-" ); |
| | | } |
| | | } |
| | | // 当事人评价节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | } |
| | | // 审核节点要判断通过/不通过 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){ |
| | | // 处理不通过,任务类型就是回退 |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | }else{ |
| | | // 处理通过 |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | } |
| | | // 临时加上 |
| | | webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName()); |
| | | } |
| | | // 结案申请,需要展示化解结果 |
| | | if (FlowNodeEnum.FLOW_NODE_JASQ.getIndex().equals(caseTask.getNodeId())){ |
| | | CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseTask.getCaseId()); |
| | | if (ObjectUtils.isNotEmpty(caseInfoUnfold)){ |
| | | webCaseFlowDTO.setMediResult(caseInfoUnfold.getMediResult()); |
| | | webCaseFlowDTO.setMediResultName(caseInfoUnfold.getMediResultName()); |
| | | // 临时加上 |
| | | webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName()); |
| | | } |
| | | } |
| | | caseFlowList.add(webCaseFlowDTO); |
| | | LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>(); |
| | | // 首节点 |
| | | WebCaseFlowDTO lfdjAssist = new WebCaseFlowDTO(); |
| | | if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ |
| | | lfdjAssist.setNodeShowName("来访登记"); |
| | | lfdjAssist.setHandleUserName(caseInfo.getInputUserName()); |
| | | lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName()); |
| | | }else { |
| | | // 进行中的节点 |
| | | // 待受理并已签收的正常任务节点,需要加多一个签收节点 |
| | | 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()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | caseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | // 正常节点 |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | // 当事人评价节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName()); |
| | | } |
| | | caseFlowList.add(webCaseFlowDTO); |
| | | lfdjAssist.setNodeShowName(caseInfo.getCanalName()); |
| | | lfdjAssist.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)"); |
| | | } |
| | | lfdjAssist.setTaskType(SHOW_TASK_TYPE_1); |
| | | lfdjAssist.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | lfdjAssist.setHandleTime(new Date()); |
| | | caseFlowList.add(lfdjAssist); |
| | | // 查询其他节点 |
| | | caseTaskQueryWrapper.clear(); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("process_instance_id", caseAssistInfo.getProcessInstanceId()) |
| | | .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id"); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | for (CaseTask caseTask: assistCaseTaskList){ |
| | | // 已结束节点 |
| | | if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){ |
| | | // 待受理并已签收的正常任务节点,需要加多一个签收节点 |
| | | 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()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | caseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | // 普通节点 |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | // 当事人评价/结案归档节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | webCaseFlowDTO.setHandleUserName(null); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName()); |
| | | }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ |
| | | webCaseFlowDTO.setHandleUserName(null); |
| | | webCaseFlowDTO.setHandleUnitName("系统自动"); |
| | | }else{ |
| | | webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | } |
| | | // 回退申请节点 |
| | | if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){ |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); |
| | | webCaseFlowDTO.setNodeShowName("事件回退"); |
| | | CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); |
| | | if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { |
| | | webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent()); |
| | | }else { |
| | | webCaseFlowDTO.setHandleNotes("回退理由:-"); |
| | | } |
| | | } |
| | | // 上报申请节点 |
| | | if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){ |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3); |
| | | webCaseFlowDTO.setNodeShowName("事件上报"); |
| | | CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); |
| | | if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { |
| | | webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent()); |
| | | }else { |
| | | webCaseFlowDTO.setHandleNotes("上报意见:-" ); |
| | | } |
| | | } |
| | | // 审核节点要判断通过/不通过 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){ |
| | | // 审核不通过 |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | }else{ |
| | | // 审核通过 |
| | | webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | } |
| | | // 临时加上 |
| | | webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName()); |
| | | } |
| | | // 结案申请,需要展示化解结果 |
| | | if (FlowNodeEnum.FLOW_NODE_JASQ.getIndex().equals(caseTask.getNodeId())){ |
| | | CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseTask.getCaseId()); |
| | | if (ObjectUtils.isNotEmpty(caseInfoUnfold)){ |
| | | webCaseFlowDTO.setMediResult(caseInfoUnfold.getMediResult()); |
| | | webCaseFlowDTO.setMediResultName(caseInfoUnfold.getMediResultName()); |
| | | // 临时加上 |
| | | webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName()); |
| | | } |
| | | } |
| | | caseFlowList.add(webCaseFlowDTO); |
| | | }else { |
| | | // 进行中的节点 |
| | | // 待受理并已签收的正常任务节点,需要加多一个签收节点 |
| | | 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()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ |
| | | if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); |
| | | slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); |
| | | slWebCaseFlowDTO.setHandleNotes("已签收"); |
| | | slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); |
| | | slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | caseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | // 正常节点 |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | // 当事人评价节点,特殊处理 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()) |
| | | || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName()); |
| | | } |
| | | caseFlowList.add(webCaseFlowDTO); |
| | | } |
| | | } |
| | | webAssistCaseFlowDTO.setCaseFlowList(caseFlowList); |
| | | assistCaseFlowList.add(webAssistCaseFlowDTO); |
| | | }else { |
| | | WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO(); |
| | | // i防止提供给前端的unitId重复 |
| | | i++; |
| | | webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId()+"_"+i); |
| | | webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)"); |
| | | LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>(); |
| | | webAssistCaseFlowDTO.setCaseFlowList(caseFlowList); |
| | | assistCaseFlowList.add(webAssistCaseFlowDTO); |
| | | } |
| | | webAssistCaseFlowDTO.setCaseFlowList(caseFlowList); |
| | | assistCaseFlowList.add(webAssistCaseFlowDTO); |
| | | } |
| | | result.put("assistCaseFlowList", assistCaseFlowList); |
| | | } |
| | |
| | | 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<>(); |
| | | ybTerms.put("handleUnitId", loginUser.getUnitId()); |
| | | long alreadyDone = mapper.countMyTaskYb(ybTerms); |
| | | frontPageCountDTO.setAlreadyDone(alreadyDone); |
| | | // 已办 |
| | | Map<String, Object> cgTerms = new HashMap<>(); |
| | | cgTerms.put("inputUnitId", loginUser.getUnitId()); |
| | | long caseDraft = casedraftInfoService.countTerms(cgTerms); |
| | | frontPageCountDTO.setCaseDraft(caseDraft); |
| | | return frontPageCountDTO; |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.getCountList]调用失败,异常信息:" + e, e); |
| | |
| | | try { |
| | | long total = mapper.countMyTaskFp(terms); |
| | | List<FrontPageListFPDTO> frontPageListFPDTOList = mapper.pageMyTaskFp(page, terms); |
| | | for (FrontPageListFPDTO frontPageListFPDTO: frontPageListFPDTOList){ |
| | | // 查询督办次数 |
| | | |
| | | } |
| | | return new PageImpl<FrontPageListFPDTO>(frontPageListFPDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskFp]调用失败,异常信息:" + e, e); |
| | |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskBlz(PageRequest page, Map<String, Object> terms){ |
| | | public Page<FrontPageListBLZDTO> 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<>(); |
| | | long total = mapper.countMyTaskBlz(terms); |
| | | List<FrontPageListBLZDTO> frontPageListBLZDTOList = mapper.pageMyTaskBlz(page, terms); |
| | | Date now = DateUtils.getNowDate(); |
| | | for(FrontPageListDTO frontPageListDTO: frontPageListDTOList){ |
| | | long milliseconds1 = frontPageListDTO.getTurnaroundTime().getTime(); |
| | | for(FrontPageListBLZDTO frontPageListBLZDTO: frontPageListBLZDTOList){ |
| | | long milliseconds1 = frontPageListBLZDTO.getTurnaroundTime().getTime(); |
| | | long milliseconds2 = now.getTime(); |
| | | long diff = milliseconds2 - milliseconds1; |
| | | long daysBetween = diff / (24 * 60 * 60 * 1000); |
| | | frontPageListDTO.setProcessingDays(daysBetween); |
| | | caseIdList.add(frontPageListDTO.getCaseId()); |
| | | frontPageListBLZDTO.setProcessingDays(daysBetween); |
| | | } |
| | | 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.getMediateUnitName()); |
| | | frontPageListDTO.setCooperatingUnit(unfold.getAssistUnitName()); |
| | | frontPageListDTO.setManager(unfold.getMediator()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | return new PageImpl<FrontPageListBLZDTO>(frontPageListBLZDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | log.error("[CaseTaskService.pageMyTaskBlz]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskBlz", e); |
| | | } |
| | | } |
| | | |
| | |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskBl(PageRequest page, Map<String, Object> terms){ |
| | | public Page<FrontPageListJADTO> pageMyTaskJa(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = caseWindupApplyService.countMySubmitApplyReview(terms); |
| | | List<FrontPageListDTO> frontPageListDTOList = caseWindupApplyService.listMySubmitApplyReview(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.getMediateUnitName()); |
| | | frontPageListDTO.setCooperatingUnit(unfold.getAssistUnitName()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | long total = caseWindupApplyService.countMyTaskJa(terms); |
| | | List<FrontPageListJADTO> frontPageListJADTOList = caseWindupApplyService.listMyTaskJa(page, terms); |
| | | return new PageImpl<FrontPageListJADTO>(frontPageListJADTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | | log.error("[CaseTaskService.pageMyTaskJa]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskJa", e); |
| | | } |
| | | } |
| | | |
| | |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListDTO> pageMyTaskShWSQD(PageRequest page, int type, Map<String, Object> terms){ |
| | | public Page<FrontPageListWSQDDTO> pageMyTaskShWSQD(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = 0; |
| | | List<FrontPageListDTO> frontPageListDTOList = new ArrayList<>(); |
| | | total = mapper.countMyTaskShWSQD(terms); |
| | | frontPageListDTOList = mapper.pageMyTaskShWSQD(page,terms); |
| | | |
| | | return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); |
| | | long total = mapper.countMyTaskShWSQD(terms); |
| | | List<FrontPageListWSQDDTO> frontPageListWSQDDTOList = mapper.pageMyTaskShWSQD(page,terms); |
| | | return new PageImpl<FrontPageListWSQDDTO>(frontPageListWSQDDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskQs", e); |
| | |
| | | List<CaseAssistApply>caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper); |
| | | List<SortUtilDTO> sortUtilDTOList = new ArrayList<>(); |
| | | |
| | | List<String> idList = new ArrayList<>(); |
| | | String ids = new String(); |
| | | ids += caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.joining(",")); |
| | | ids += caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.joining(",")); |
| | | ids += caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.joining(",")); |
| | | ids += caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.joining(",")); |
| | | idList.addAll(caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.toList())); |
| | | idList.addAll(caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.toList())); |
| | | idList.addAll(caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.toList())); |
| | | idList.addAll(caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.toList())); |
| | | ids = idList.stream().map(String::valueOf).collect(Collectors.joining("','")); |
| | | List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = new ArrayList<>(); |
| | | if(StringUtils.isNotBlank(ids)){ |
| | | Map terms = new HashMap(); |
| | | terms.put("mainId", caseId); |
| | | terms.put("ownerIds", "," + ids + ","); |
| | | terms.put("ownerIds", "'" + ids + "'"); |
| | | fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(terms); |
| | | } |
| | | |
| | |
| | | // 目前平台只做镇街、村居级别的调度, |
| | | if (UserBaseConsts.UNIT_GRADE_3 == caseDispBaseDTO.getTargetUnitGrade()) { |
| | | // 启动来访登记工作流 |
| | | FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LFDJ, caseInfo.getId()); |
| | | if (UserBaseConsts.UNIT_TYPE_1 == caseDispBaseDTO.getTargetUnitType()){ |
| | | // 调度给镇街综治中心,进入第1个节点-镇街综治中心待分派 |
| | | FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.getJbFlow(caseInfo.getCanal()), caseInfo.getId()); |
| | | if (UserBaseConsts.UNIT_TYPE_101 == caseDispBaseDTO.getTargetUnitType()){ |
| | | // 调度给镇街综治中心,进入第1个任务节点-镇街综治中心待分派 |
| | | CaseTask dfpCaseTask = new CaseTask(); |
| | | dfpCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfpCaseTask.setCaseId(caseInfo.getId()); |
| | | dfpCaseTask.setFlowableId(firstFlowNode.getFlowableId()); |
| | | dfpCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); |
| | | dfpCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); |
| | | dfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dfpCaseTask.setNodeType(firstFlowNode.getNodeType()); |
| | | dfpCaseTask.setNodeId(firstFlowNode.getNodeId()); |
| | | dfpCaseTask.setNodeName(firstFlowNode.getNodeName()); |
| | | dfpCaseTask.setFlowId(firstFlowNode.getFlowId()); |
| | | dfpCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); |
| | | dfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属组织:调度目标 |
| | | dfpCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); |
| | | dfpCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); |
| | | // 系统给综治中心分派,不需要签收 |
| | | // 系统调度给镇街综治中心,不需要签收 |
| | | 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.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfpCaseTask.setCustId(caseInfo.getCustId()); |
| | | dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | |
| | | caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | |
| | | //添加网格待办 |
| | | this.createGridToDo(caseInfo, dfpCaseTask, GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1); |
| | | }else { |
| | | // 调度给调解组织,默认通过第1个节点-镇街综治中心待分派 |
| | | // 调度给调解组织,默认通过第1个任务节点-镇街综治中心待分派 |
| | | CaseTask dfpCaseTask = new CaseTask(); |
| | | dfpCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfpCaseTask.setCaseId(caseInfo.getId()); |
| | | dfpCaseTask.setFlowableId(firstFlowNode.getFlowableId()); |
| | | dfpCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); |
| | | dfpCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); |
| | | dfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dfpCaseTask.setNodeType(firstFlowNode.getNodeType()); |
| | | dfpCaseTask.setNodeId(firstFlowNode.getNodeId()); |
| | | dfpCaseTask.setNodeName(firstFlowNode.getNodeName()); |
| | | dfpCaseTask.setFlowId(firstFlowNode.getFlowId()); |
| | | dfpCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); |
| | | dfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 系统给综治中心分派,不需要签收 |
| | | // 任务所属组织:系统 |
| | | dfpCaseTask.setCandeUnitName("系统派单"); |
| | | // 调度给调解组织,不需要签收 |
| | | dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | // 任务处理时限 |
| | | if (firstFlowNode.getExpire() != 0) { |
| | | dfpCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); |
| | | } |
| | | dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dfpCaseTask.setHandleUnitName("系统派单"); |
| | | dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | dfpCaseTask.setHandleIllust("派单至:"+caseDispBaseDTO.getTargetName()); |
| | | dfpCaseTask.setHandleTime(caseInfo.getCreateTime()); |
| | | dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dfpCaseTask.setCustId(caseInfo.getCustId()); |
| | | dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | | dfpCaseTask.setUpdateTime(caseInfo.getCreateTime()); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | dfpCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dfpCaseTask.getHandleTime(), dfpCaseTask.getCreateTime())); |
| | | dfpCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dfpCaseTask.getHandleTime(), dfpCaseTask.getExpireTime())); |
| | | dfpCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dfpCaseTask.getHandleTime(), dfpCaseTask.getExpireTime())); |
| | | mapper.insert(dfpCaseTask); |
| | | // 完成第1个节点任务 |
| | | // 完成第1个工作流节点任务,进入第2个节点任务 |
| | | FlowNode secondFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jb_zszz, "系统派单"); |
| | | // 进入第2个节点-镇街级组织待受理 |
| | | // 创建第2个节点任务-调解组织待受理 |
| | | CaseTask dslCaseTask = new CaseTask(); |
| | | dslCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dslCaseTask.setCaseId(caseInfo.getId()); |
| | | dslCaseTask.setFlowableId(secondFlowNode.getFlowableId()); |
| | | dslCaseTask.setProcessInstanceId(secondFlowNode.getProcessInstanceId()); |
| | | dslCaseTask.setProcessTaskId(secondFlowNode.getProcessTaskId()); |
| | | dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dslCaseTask.setNodeType(secondFlowNode.getNodeType()); |
| | | dslCaseTask.setNodeId(secondFlowNode.getNodeId()); |
| | | dslCaseTask.setNodeName(secondFlowNode.getNodeName()); |
| | | dslCaseTask.setFlowId(secondFlowNode.getFlowId()); |
| | | dslCaseTask.setNodeShowName(secondFlowNode.getNodeShowName()); |
| | | dslCaseTask.setCaseTaskType(dfpCaseTask.getCaseTaskType()); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属组织:调度目标 |
| | | dslCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); |
| | | dslCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); |
| | | // 系统调度给调解组织,需要签收 |
| | |
| | | caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | |
| | | //添加网格待办 |
| | | this.createGridToDo(caseInfo, dslCaseTask, GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3); |
| | | } |
| | | } |
| | | } |
| | |
| | | */ |
| | | public String webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ |
| | | try{ |
| | | // 启动自行受理工作流,进入待受理节点 |
| | | FlowNode dslFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_ZXSL, caseInfo.getId()); |
| | | // 创建并完成待受理任务 |
| | | // 启动自行受理工作流,进入待受理任务节点 |
| | | FlowNode dslFlowNode = flowInfoService.startFlow(FlowableConsts.getZxslFlow(caseInfo.getCanal()), caseInfo.getId()); |
| | | // 创建并完成待受理节点任务 |
| | | CaseTask dslCaseTask = new CaseTask(); |
| | | dslCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dslCaseTask.setCaseId(caseInfo.getId()); |
| | | 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(loginUser.getUnitId()); |
| | | dslCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 自行受理,不需要签收 |
| | | dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | // 任务处理时限 |
| | | if (dslFlowNode.getExpire() != 0) { |
| | | dslCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), dslFlowNode.getExpire())); |
| | | } |
| | | dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dslCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | dslCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | dslCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | dslCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | dslCaseTask.setHandleUserId(loginUser.getId()); |
| | | dslCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dslCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | dslCaseTask.setHandleIllust("自行受理"); |
| | | dslCaseTask.setHandleTime(caseInfo.getCreateTime()); |
| | | dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dslCaseTask.setCustId(caseInfo.getCustId()); |
| | | dslCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | | dslCaseTask.setUpdateTime(caseInfo.getCreateTime()); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | dslCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dslCaseTask.getHandleTime(), dslCaseTask.getCreateTime())); |
| | | dslCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dslCaseTask.getHandleTime(), dslCaseTask.getExpireTime())); |
| | | dslCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dslCaseTask.getHandleTime(), dslCaseTask.getExpireTime())); |
| | | mapper.insert(dslCaseTask); |
| | | // 完成待受理任务,走办理反馈节点 |
| | | // 完成待受理工作流节点任务,进入办理反馈任务节点 |
| | | FlowNode blfkFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, loginUser.getId()); |
| | | // 进入第1个节点-办理反馈 |
| | | // 创建办理反馈节点任务 |
| | | CaseTask blfkCaseTask = new CaseTask(); |
| | | blfkCaseTask.setId(utilsClient.getNewTimeId()); |
| | | blfkCaseTask.setCaseId(caseInfo.getId()); |
| | | blfkCaseTask.setFlowableId(blfkFlowNode.getFlowableId()); |
| | | blfkCaseTask.setProcessInstanceId(blfkFlowNode.getProcessInstanceId()); |
| | | blfkCaseTask.setProcessTaskId(blfkFlowNode.getProcessTaskId()); |
| | | blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | blfkCaseTask.setNodeType(blfkFlowNode.getNodeType()); |
| | | blfkCaseTask.setNodeId(blfkFlowNode.getNodeId()); |
| | | blfkCaseTask.setNodeName(blfkFlowNode.getNodeName()); |
| | | blfkCaseTask.setFlowId(blfkFlowNode.getFlowId()); |
| | | blfkCaseTask.setNodeShowName(blfkFlowNode.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 (blfkFlowNode.getExpire() != 0) { |
| | | blfkCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), blfkFlowNode.getExpire())); |
| | | } |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | blfkCaseTask.setCustId(caseInfo.getCustId()); |
| | | blfkCaseTask.setCreateTime(caseInfo.getCreateTime()); |
| | |
| | | caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId()); |
| | | caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | |
| | | return blfkCaseTask.getId(); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webStartFlowZXSL", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * web端任务处理-不予受理 |
| | | * @param caseDismiss 不予受理表单 |
| | | * @param userId 当前登录用户 |
| | | */ |
| | | public void webDismiss(CaseDismiss caseDismiss, String userId){ |
| | | try{ |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 查询当前节点任务 |
| | | CaseTask caseTask = mapper.selectById(caseDismiss.getCaseTaskId()); |
| | | // 结束当前节点任务 |
| | | CaseTask caseTaskPO = new CaseTask(); |
| | | caseTaskPO.setId(caseDismiss.getCaseTaskId()); |
| | | caseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | caseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | caseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | caseTaskPO.setHandleUserId(loginUser.getId()); |
| | | caseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | caseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | caseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | caseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_3); |
| | | caseTaskPO.setHandleContent(caseDismiss.getDisContent()); |
| | | caseTaskPO.setHandleTime(nowDate); |
| | | caseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | caseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(caseTaskPO.getHandleTime(), caseTask.getCreateTime())); |
| | | caseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(caseTaskPO.getHandleTime(), caseTask.getExpireTime())); |
| | | caseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(caseTaskPO.getHandleTime(), caseTask.getExpireTime())); |
| | | mapper.updateCaseTask(caseTaskPO); |
| | | // 结束当前工作流 |
| | | flowInfoService.endFlow(caseTask.getProcessInstanceId()); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(caseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_8.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_8.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); |
| | | // 有配合组织,也结束配合组织工作流 |
| | | List<CaseTask> assistCaseTaskList = this.listAssistTasking(caseDismiss.getCaseId()); |
| | | for (CaseTask assistCaseTask: assistCaseTaskList){ |
| | | // 完成配合组织当前节点任务 |
| | | assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | assistCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | assistCaseTask.setHandleUnitName(loginUser.getUnitName()+"(承办部门)"); |
| | | assistCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | assistCaseTask.setHandleDeptName(loginUser.getDeptName()+"(承办部门)"); |
| | | assistCaseTask.setHandleUserId(loginUser.getId()); |
| | | assistCaseTask.setHandleUserName(loginUser.getTrueName()+"(承办部门)"); |
| | | assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_3); |
| | | assistCaseTask.setHandleTime(nowDate); |
| | | assistCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); |
| | | assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(assistCaseTask); |
| | | // 结束配合组织当前工作流 |
| | | flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); |
| | | } |
| | | // 新增不予受理信息 |
| | | caseDismiss.setCaseTaskTime(caseTask.getCreateTime()); |
| | | caseDismiss.setDisUnitId(loginUser.getUnitId()); |
| | | caseDismiss.setDisUnitName(loginUser.getUnitName()); |
| | | caseDismiss.setDisUserId(loginUser.getId()); |
| | | caseDismiss.setDisUserName(loginUser.getTrueName()); |
| | | caseDismiss.setDisTime(nowDate); |
| | | caseDismiss.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | caseDismiss.setCustId(caseTask.getCustId()); |
| | | caseDismiss.setCreateTime(nowDate); |
| | | caseDismiss.setUpdateTime(nowDate); |
| | | caseDismissService.save(caseDismiss); |
| | | //删除网格待办 |
| | | this.deleteGridTodo(caseTask); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAssign]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAssign", e); |
| | | } |
| | | } |
| | | |
| | |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 查询当前待分派任务 |
| | | // 查询交办的组织信息 |
| | | CtUnitDTO dslUnitDTO = custClient.getUnitById(assignTaskDTO.getHandleUnitId()); |
| | | // 查询当前待分派节点任务 |
| | | CaseTask dfpCaseTask = mapper.selectById(assignTaskDTO.getCaseTaskId()); |
| | | // 完成当前待分派任务 |
| | | // 完成当前待分派节点任务 |
| | | CaseTask dfpCaseTaskPO = new CaseTask(); |
| | | dfpCaseTaskPO.setId(assignTaskDTO.getCaseTaskId()); |
| | | dfpCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dfpCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | dfpCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | dfpCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | dfpCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | dfpCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | dfpCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dfpCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dfpCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | dfpCaseTaskPO.setHandleContent(assignTaskDTO.getAssignContent()); |
| | | dfpCaseTaskPO.setHandleIllust("派单至:"+assignTaskDTO.getHandleUnitName()); |
| | | dfpCaseTaskPO.setHandleTime(nowDate); |
| | | dfpCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | dfpCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getCreateTime())); |
| | | dfpCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getExpireTime())); |
| | | dfpCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(dfpCaseTaskPO); |
| | | // 查询承办组织信息 |
| | | CtUnitDTO dslUnitDTO = custClient.getUnitById(assignTaskDTO.getHandleUnitId()); |
| | | String flowOperation = null; |
| | | // 镇街综治中心待分派 |
| | | // 镇街综治中心待分派节点 |
| | | if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ |
| | | flowOperation = FlowableConsts.OPERATION_jb_zszz; |
| | | } |
| | | // 区综治中心待分派 |
| | | // 区综治中心待分派节点 |
| | | if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ |
| | | // 查询承办组织信息 |
| | | if (UserBaseConsts.UNIT_GRADE_2 == dslUnitDTO.getUnitGrade()) { |
| | | flowOperation = FlowableConsts.OPERATION_jb_zszz; |
| | | }else { |
| | |
| | | } |
| | | |
| | | } |
| | | // 市综治中心待分派 |
| | | // 市综治中心待分派节点 |
| | | if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ |
| | | if (UserBaseConsts.UNIT_GRADE_1 == dslUnitDTO.getUnitGrade()) { |
| | | flowOperation = FlowableConsts.OPERATION_jb_zszz; |
| | |
| | | } |
| | | |
| | | } |
| | | // 完成当前待分派工作流任务 |
| | | // 完成当前待分派工作流节点任务,进入待受理任务节点 |
| | | FlowNode newFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), |
| | | flowOperation, userId); |
| | | // 新建待受理任务 |
| | | // 新建待受理节点任务 |
| | | 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); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属组织:交办的组织 |
| | | dslCaseTask.setCandeUnitId(dslUnitDTO.getId()); |
| | | dslCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); |
| | | // 分派的任务,需要签收 |
| | | // 交办的待受理节点任务,需要签收 |
| | | 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.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dslCaseTask.setCustId(dfpCaseTask.getCustId()); |
| | | dslCaseTask.setCreateTime(nowDate); |
| | | dslCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dslCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfo = caseInfoService.getCaseInfo(dslCaseTask.getCaseId()); |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(dslCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.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); |
| | | // 分派配合组织 |
| | | //修改网格待办流程 |
| | | this.taskFlowGridToDo(caseInfo, dslCaseTask, dfpCaseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_2.getIndex(), GridBaseConsts.GRID_TYPE_2); |
| | | |
| | | // 交办配合组织 |
| | | if (CollectionUtils.isNotEmpty(assignTaskDTO.getAssistUnitList())){ |
| | | // 拼接配合组织编号和名称 |
| | | String assistUnitId = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). |
| | | collect(Collectors.joining(BaseConsts.COMMA)); |
| | | String assistUnitName = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). |
| | | String assistUnitName = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitName). |
| | | collect(Collectors.joining(BaseConsts.COMMA)); |
| | | for (AssignAssistUnitDTO assignAssistUnitDTO: assignTaskDTO.getAssistUnitList()){ |
| | | // 启动联合处置工作流 |
| | | FlowNode lhczdfpFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LHCZ, dfpCaseTask.getCaseId()); |
| | | // 新建并完成配合部门待分派任务 |
| | | FlowNode lhczdfpFlowNode = flowInfoService.startFlow(FlowableConsts.GZDYH_LHCZ_V1, dfpCaseTask.getCaseId()); |
| | | // 新建并完成待分派节点任务 |
| | | CaseTask lhczdfpCaseTask = new CaseTask(); |
| | | lhczdfpCaseTask.setId(utilsClient.getNewTimeId()); |
| | | lhczdfpCaseTask.setCaseId(dfpCaseTask.getCaseId()); |
| | | lhczdfpCaseTask.setFlowableId(lhczdfpFlowNode.getFlowableId()); |
| | | lhczdfpCaseTask.setProcessInstanceId(lhczdfpFlowNode.getProcessInstanceId()); |
| | | lhczdfpCaseTask.setProcessTaskId(lhczdfpFlowNode.getProcessTaskId()); |
| | | lhczdfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | lhczdfpCaseTask.setNodeType(lhczdfpFlowNode.getNodeType()); |
| | | lhczdfpCaseTask.setNodeId(lhczdfpFlowNode.getNodeId()); |
| | | lhczdfpCaseTask.setNodeName(lhczdfpFlowNode.getNodeName()); |
| | | lhczdfpCaseTask.setFlowId(lhczdfpFlowNode.getFlowId()); |
| | | lhczdfpCaseTask.setNodeShowName(lhczdfpFlowNode.getNodeShowName()); |
| | | lhczdfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | lhczdfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | lhczdfpCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); |
| | | lhczdfpCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); |
| | | // 不需要签收 |
| | | // 任务所属单位:当前操作组织 |
| | | lhczdfpCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | lhczdfpCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 待分派节点任务,不需要签收 |
| | | lhczdfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | lhczdfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | lhczdfpCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | lhczdfpCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | lhczdfpCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | lhczdfpCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | lhczdfpCaseTask.setHandleUserId(loginUser.getId()); |
| | | lhczdfpCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | lhczdfpCaseTask.setHandleContent(assignTaskDTO.getAssignContent()); |
| | |
| | | lhczdfpCaseTask.setCreateTime(nowDate); |
| | | lhczdfpCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(lhczdfpCaseTask); |
| | | // 完成待分派任务 |
| | | // 完成待分派节点任务,进去待受理节点 |
| | | FlowNode lhczdslFlowNode = flowInfoService.completeTask(lhczdfpCaseTask.getFlowableId(), lhczdfpCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, loginUser.getId()); |
| | | // 创建配合部门待受理任务 |
| | | // 创建待受理节点任务 |
| | | CaseTask lhczdslCaseTask = new CaseTask(); |
| | | lhczdslCaseTask.setId(utilsClient.getNewTimeId()); |
| | | lhczdslCaseTask.setCaseId(lhczdfpCaseTask.getCaseId()); |
| | | lhczdslCaseTask.setFlowableId(lhczdslFlowNode.getFlowableId()); |
| | | lhczdslCaseTask.setProcessInstanceId(lhczdslFlowNode.getProcessInstanceId()); |
| | | lhczdslCaseTask.setProcessTaskId(lhczdslFlowNode.getProcessTaskId()); |
| | | lhczdslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | lhczdslCaseTask.setNodeType(lhczdslFlowNode.getNodeType()); |
| | | lhczdslCaseTask.setNodeId(lhczdslFlowNode.getNodeId()); |
| | | lhczdslCaseTask.setNodeName(lhczdslFlowNode.getNodeName()); |
| | | lhczdslCaseTask.setFlowId(lhczdslFlowNode.getFlowId()); |
| | | lhczdslCaseTask.setNodeShowName(lhczdslFlowNode.getNodeShowName()); |
| | | lhczdslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); |
| | | // 通过调度的,任务候选执行者类型是上一步骤选择 |
| | | lhczdslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属单位:交办的配合组织 |
| | | lhczdslCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); |
| | | lhczdslCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); |
| | | // 需要签收 |
| | | // 交办的待受理节点任务,需要签收 |
| | | lhczdslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); |
| | | lhczdslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | |
| | | // 新增联合处置信息 |
| | | CaseAssistInfo caseAssistInfoPO = new CaseAssistInfo(); |
| | | caseAssistInfoPO.setId(utilsClient.getNewTimeId()); |
| | | caseAssistInfoPO.setCaseId(dslCaseTask.getCaseId()); |
| | | caseAssistInfoPO.setCaseId(lhczdslCaseTask.getCaseId()); |
| | | caseAssistInfoPO.setProcessInstanceId(lhczdslCaseTask.getProcessInstanceId()); |
| | | caseAssistInfoPO.setAssistUnitId(assignAssistUnitDTO.getUitId()); |
| | | caseAssistInfoPO.setAssistUnitName(assignAssistUnitDTO.getUitName()); |
| | | caseAssistInfoPO.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_0); |
| | | caseAssistInfoPO.setCustId(dslCaseTask.getCustId()); |
| | | caseAssistInfoPO.setCustId(lhczdslCaseTask.getCustId()); |
| | | caseAssistInfoPO.setCreateTime(nowDate); |
| | | caseAssistInfoPO.setUpdateTime(nowDate); |
| | | caseAssistInfoService.save(caseAssistInfoPO); |
| | | //添加网格待办 |
| | | this.createGridToDo(caseInfo, lhczdslCaseTask, GridEnum.GRID_OBJECT_TYPE_2.getIndex(), GridBaseConsts.GRID_TYPE_2); |
| | | } |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | |
| | | caseTaskPO.setHandleIllust("已签收"); |
| | | caseTaskPO.setUpdateTime(nowDate); |
| | | mapper.updateCaseTask(caseTaskPO); |
| | | // 承办部门签收才更新纠纷信息 |
| | | // 承办组织签收才更新纠纷信息 |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_1 == qsCaseTask.getCaseTaskType()) { |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | } |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(qsCaseTask.getCaseId()); |
| | | if(ObjectUtils.isNotEmpty(caseInfo)){ |
| | | caseTaskPO.setCandeUnitId(qsCaseTask.getCandeUnitId()); |
| | | this.taskFlowGridToDo(caseInfo, caseTaskPO, qsCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 查询当前待受理任务 |
| | | // 查询当前待受理节点任务 |
| | | CaseTask dslCaseTask = mapper.selectById(acceptTaskDTO.getCaseTaskId()); |
| | | // 完成当前待受理任务 |
| | | // 完成当前待受理节点任务 |
| | | CaseTask dslCaseTaskPO = new CaseTask(); |
| | | dslCaseTaskPO.setId(acceptTaskDTO.getCaseTaskId()); |
| | | dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | dslCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | dslCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | dslCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | dslCaseTaskPO.setHandleUserId(loginUser.getId());; |
| | | dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTaskPO.setHandleIllust("已受理"); |
| | | dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | dslCaseTaskPO.setHandleTime(nowDate); |
| | | dslCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | dslCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dslCaseTaskPO.getHandleTime(), dslCaseTask.getCreateTime())); |
| | | dslCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dslCaseTaskPO.getHandleTime(), dslCaseTask.getExpireTime())); |
| | | dslCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dslCaseTaskPO.getHandleTime(), dslCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(dslCaseTaskPO); |
| | | // 完成当前待受理工作流任务 |
| | | // 完成当前待受理工作流节点任务,机内办理反馈节点 |
| | | String operation = FlowableConsts.OPERATION_sl; |
| | | // 配合部门受理条件改为通过 |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_2 == dslCaseTask.getCaseTaskType()) { |
| | | // 配合组织受理条件改为通过 |
| | | operation = FlowableConsts.OPERATION_forward; |
| | | } |
| | | FlowNode newFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), |
| | | operation, userId); |
| | | // 新建办理反馈任务 |
| | | // 新建办理反馈节点任务 |
| | | CaseTask blfkCaseTask = new CaseTask(); |
| | | blfkCaseTask.setId(utilsClient.getNewTimeId()); |
| | | blfkCaseTask.setCaseId(dslCaseTask.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(dslCaseTask.getCaseTaskType()); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | 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); |
| | | // 任务处理时限 |
| | |
| | | blfkCaseTask.setCreateTime(nowDate); |
| | | blfkCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(blfkCaseTask); |
| | | // 承办部门签收才更新纠纷信息 |
| | | |
| | | //删除网格待办 |
| | | dslCaseTaskPO.setCaseId(dslCaseTask.getCaseId()); |
| | | this.deleteGridTodo(dslCaseTaskPO); |
| | | |
| | | // 承办组织受理才更新纠纷信息 |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_1 == dslCaseTask.getCaseTaskType()) { |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | |
| | | 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); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | |
| | | caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | }else { |
| | | // 更新配合部门联合处置信息 |
| | | // 更新配合组织联合处置信息 |
| | | QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>(); |
| | | caseAssistInfoQueryWrapper.eq("case_id", blfkCaseTask.getCaseId()) |
| | | .eq("assist_unit_id", loginUser.getUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); |
| | |
| | | caseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | caseWindupApply.setCreateTime(nowDate); |
| | | caseWindupApply.setUpdateTime(nowDate); |
| | | // 查询办理反馈任务 |
| | | // 查询办理反馈节点任务 |
| | | CaseTask blfkCaseTask = mapper.selectById(caseWindupApply.getCaseTaskId()); |
| | | // 完成当前办理反馈任务 |
| | | // 完成当前办理反馈节点任务 |
| | | CaseTask blfkCaseTaskPO = new CaseTask(); |
| | | blfkCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); |
| | | blfkCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | blfkCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | blfkCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | blfkCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | blfkCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | blfkCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | blfkCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | blfkCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | blfkCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | blfkCaseTaskPO.setHandleTime(nowDate); |
| | | blfkCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | blfkCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getCreateTime())); |
| | | blfkCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getExpireTime())); |
| | | blfkCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(blfkCaseTaskPO); |
| | | // 完成当前待受理工作流任务,走结案申请任务 |
| | | // 完成当前待受理工作流节点任务,进入结案申请节点 |
| | | FlowNode jasqFlowNode = flowInfoService.completeTask(blfkCaseTask.getFlowableId(), blfkCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, userId); |
| | | // 新建并自动完成结案申请任务 |
| | | // 新建并自动完成结案申请节点任务 |
| | | CaseTask jasqCaseTask = new CaseTask(); |
| | | jasqCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jasqCaseTask.setCaseId(blfkCaseTask.getCaseId()); |
| | | jasqCaseTask.setFlowableId(jasqFlowNode.getFlowableId()); |
| | | jasqCaseTask.setProcessInstanceId(jasqFlowNode.getProcessInstanceId()); |
| | | jasqCaseTask.setProcessTaskId(jasqFlowNode.getProcessTaskId()); |
| | | jasqCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | jasqCaseTask.setNodeType(jasqFlowNode.getNodeType()); |
| | | jasqCaseTask.setNodeId(jasqFlowNode.getNodeId()); |
| | | jasqCaseTask.setNodeName(jasqFlowNode.getNodeName()); |
| | | jasqCaseTask.setFlowId(jasqFlowNode.getFlowId()); |
| | | jasqCaseTask.setNodeShowName(jasqFlowNode.getNodeShowName()); |
| | | jasqCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | jasqCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属单位:当前结案申请组织 |
| | | jasqCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jasqCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | // 受理后的节点任务,不需要签收 |
| | | jasqCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (jasqFlowNode.getExpire() != 0) { |
| | | jasqCaseTask.setExpireTime(DateUtils.addDay(nowDate, jasqFlowNode.getExpire())); |
| | | } |
| | | jasqCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jasqCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jasqCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jasqCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jasqCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jasqCaseTask.setHandleUserId(loginUser.getId()); |
| | | jasqCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jasqCaseTask.setHandleContent(caseWindupApply.getWindupContent()); |
| | | jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | jasqCaseTask.setHandleTime(nowDate); |
| | | jasqCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jasqCaseTask.setCustId(blfkCaseTask.getCustId()); |
| | | jasqCaseTask.setCreateTime(nowDate); |
| | | jasqCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jasqCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jasqCaseTask.getHandleTime(), jasqCaseTask.getCreateTime())); |
| | | jasqCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jasqCaseTask.getHandleTime(), jasqCaseTask.getExpireTime())); |
| | | jasqCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jasqCaseTask.getHandleTime(), jasqCaseTask.getExpireTime())); |
| | | mapper.insert(jasqCaseTask); |
| | | // 化解成功,自动结案审核通过 |
| | | if (MediResultBaseConstsEnum.MEDI_RESULT_1.getIndex().equals(caseWindupApply.getMediResult())){ |
| | | // 完成当前结案申请工作流任务,走结案审核任务 |
| | | // 完成当前结案申请工作流节点任务,走结案审核任务 |
| | | FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, userId); |
| | | // 新建并自动完成结案审核任务 |
| | |
| | | jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); |
| | | jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); |
| | | jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); |
| | | jashCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | jashCaseTask.setNodeType(jashFlowNode.getNodeType()); |
| | | jashCaseTask.setNodeId(jashFlowNode.getNodeId()); |
| | | jashCaseTask.setNodeName(jashFlowNode.getNodeName()); |
| | | jashCaseTask.setFlowId(jashFlowNode.getFlowId()); |
| | | jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); |
| | | jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | jashCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // 任务所属单位:结案申请操作组织 |
| | | jashCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | // 受理后的节点任务,不需要签收 |
| | | jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (jashFlowNode.getExpire() != 0) { |
| | | jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); |
| | | } |
| | | jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTask.setHandleUserId(loginUser.getId()); |
| | | jashCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | |
| | | jashCaseTask.setCustId(jasqCaseTask.getCustId()); |
| | | jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jashCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getCreateTime())); |
| | | jashCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | jashCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | mapper.insert(jashCaseTask); |
| | | // 完成当前结案审核工作流任务,走当事人评价任务 |
| | | FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | // 完成当前结案审核工作流任务,走下一个节点 |
| | | FlowNode nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | // 新建当事人评价任务 |
| | | CaseTask dsrpjCaseTask = new CaseTask(); |
| | | dsrpjCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setFlowableId(dsrpjFlowNode.getFlowableId()); |
| | | dsrpjCaseTask.setProcessInstanceId(dsrpjFlowNode.getProcessInstanceId()); |
| | | dsrpjCaseTask.setProcessTaskId(dsrpjFlowNode.getProcessTaskId()); |
| | | dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dsrpjCaseTask.setNodeType(dsrpjFlowNode.getNodeType()); |
| | | dsrpjCaseTask.setNodeId(dsrpjFlowNode.getNodeId()); |
| | | dsrpjCaseTask.setNodeName(dsrpjFlowNode.getNodeName()); |
| | | dsrpjCaseTask.setFlowId(dsrpjFlowNode.getFlowId()); |
| | | dsrpjCaseTask.setNodeShowName(dsrpjFlowNode.getNodeShowName()); |
| | | dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dsrpjFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); |
| | | // 下一个节点是当事人评价节点,进入当事人评价节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 新建当事人评价节点任务 |
| | | CaseTask dsrpjCaseTask = new CaseTask(); |
| | | dsrpjCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属人:当事人 |
| | | EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); |
| | | dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); |
| | | } |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); |
| | | dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 下一个节点是结案归档节点,进入结案归档节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 创建并完成结案归档节点任务 |
| | | CaseTask jagdCaseTask = new CaseTask(); |
| | | jagdCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:结案申请操作组织 |
| | | jagdCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jagdCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTask.setHandleUserId(loginUser.getId()); |
| | | jashCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | jagdCaseTask.setHandleTime(nowDate); |
| | | jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jagdCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | jagdCaseTask.setCreateTime(nowDate); |
| | | jagdCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); |
| | | jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | mapper.insert(jagdCaseTask); |
| | | // 完成结案归档工作流节点任务,结束流程 |
| | | flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_7.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_7.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); |
| | | } |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseWindupApply.setCaseTaskId(jashCaseTask.getId()); |
| | |
| | | caseWindupApply.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | caseWindupApply.setCustId(jashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(caseWindupApply); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(dsrpjCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(dsrpjCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); |
| | | caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); |
| | | caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); |
| | | caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); |
| | | caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); |
| | | caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); |
| | | caseInfoUnfoldPO.setCloseTime(nowDate); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | }else {// 化解不成功,走结案审核流程 |
| | | // 完成当前结案申请工作流任务,走结案审核任务 |
| | | FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, userId); |
| | | // 新建结案审核任务 |
| | | CaseTask jashCaseTask = new CaseTask(); |
| | | jashCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); |
| | | jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); |
| | | jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); |
| | | jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); |
| | | jashCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | jashCaseTask.setNodeType(jashFlowNode.getNodeType()); |
| | | jashCaseTask.setNodeId(jashFlowNode.getNodeId()); |
| | | jashCaseTask.setNodeName(jashFlowNode.getNodeName()); |
| | | jashCaseTask.setFlowId(jashFlowNode.getFlowId()); |
| | | jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); |
| | | jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | jashCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | jashCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | 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(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(jashCaseTask); |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | caseWindupApply.setCaseTaskId(jashCaseTask.getId()); |
| | | caseWindupApply.setAuditUnitId(jashCaseTask.getCandeUnitId()); |
| | | caseWindupApply.setAuditUnitName(jashCaseTask.getCandeUnitName()); |
| | | caseWindupApply.setCustId(jashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(caseWindupApply); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_5.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_5.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); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); |
| | |
| | | caseInfoUnfoldPO.setCloseTime(nowDate); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | }else {// 化解不成功 |
| | | // 完成当前结案申请工作流节点任务 |
| | | FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, userId); |
| | | // 判断是否自行受理 |
| | | CaseInfo caseInfo = caseInfoService.getById(jasqCaseTask.getCaseId()); |
| | | if (CaseBaseConsts.ZXSL_STATUS_1 == caseInfo.getZxslStatus()){ |
| | | // 自行受理,自行完成结案审核节点,直接进入下一个节点 |
| | | // 新建并自动完成结案审核任务 |
| | | CaseTask jashCaseTask = new CaseTask(); |
| | | jashCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); |
| | | jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); |
| | | jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); |
| | | jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); |
| | | jashCaseTask.setNodeType(jashFlowNode.getNodeType()); |
| | | jashCaseTask.setNodeId(jashFlowNode.getNodeId()); |
| | | jashCaseTask.setNodeName(jashFlowNode.getNodeName()); |
| | | jashCaseTask.setFlowId(jashFlowNode.getFlowId()); |
| | | jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); |
| | | jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:结案申请操作组织 |
| | | jashCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (jashFlowNode.getExpire() != 0) { |
| | | jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); |
| | | } |
| | | jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTask.setHandleUserId(loginUser.getId()); |
| | | jashCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jashCaseTask.setHandleTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jashCaseTask.setCustId(jasqCaseTask.getCustId()); |
| | | jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jashCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getCreateTime())); |
| | | jashCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | jashCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | mapper.insert(jashCaseTask); |
| | | // 完成当前结案审核工作流任务,走下一个节点 |
| | | FlowNode nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | // 下一个节点是当事人评价节点,进入当事人评价节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 新建当事人评价节点任务 |
| | | CaseTask dsrpjCaseTask = new CaseTask(); |
| | | dsrpjCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属人:当事人 |
| | | EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); |
| | | dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); |
| | | } |
| | | // 下一个节点是结案归档节点,进入结案归档节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 创建并完成结案归档节点任务 |
| | | CaseTask jagdCaseTask = new CaseTask(); |
| | | jagdCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:结案申请操作组织 |
| | | jagdCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | jagdCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jagdCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jagdCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jagdCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jagdCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jagdCaseTask.setHandleUserId(loginUser.getId()); |
| | | jagdCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | jagdCaseTask.setHandleTime(nowDate); |
| | | jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jagdCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | jagdCaseTask.setCreateTime(nowDate); |
| | | jagdCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); |
| | | jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | mapper.insert(jagdCaseTask); |
| | | // 完成结案归档工作流节点任务,结束流程 |
| | | flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_7.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_7.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); |
| | | } |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseWindupApply.setCaseTaskId(jashCaseTask.getId()); |
| | | caseWindupApply.setAuditUnitId(jashCaseTask.getHandleUnitId()); |
| | | caseWindupApply.setAuditUnitName(jashCaseTask.getHandleUnitName()); |
| | | caseWindupApply.setAuditUserId(jashCaseTask.getHandleUserId()); |
| | | caseWindupApply.setAuditUserName(jashCaseTask.getHandleUserName()); |
| | | caseWindupApply.setAuditTime(nowDate); |
| | | caseWindupApply.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | caseWindupApply.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | caseWindupApply.setCustId(jashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(caseWindupApply); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); |
| | | caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); |
| | | caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); |
| | | caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); |
| | | caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); |
| | | caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); |
| | | caseInfoUnfoldPO.setCloseTime(nowDate); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | }else { |
| | | // 正常流程,进入结案审核节点 |
| | | // 新建结案审核任务 |
| | | CaseTask jashCaseTask = new CaseTask(); |
| | | jashCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); |
| | | jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); |
| | | jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); |
| | | jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); |
| | | jashCaseTask.setNodeType(jashFlowNode.getNodeType()); |
| | | jashCaseTask.setNodeId(jashFlowNode.getNodeId()); |
| | | jashCaseTask.setNodeName(jashFlowNode.getNodeName()); |
| | | jashCaseTask.setFlowId(jashFlowNode.getFlowId()); |
| | | jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); |
| | | jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:本级综治中心审核 |
| | | CtUnitDTO zzzxCtUnitDTO = custClient.getBjZzzx(loginUser.getUnitId()); |
| | | jashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); |
| | | jashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (jashFlowNode.getExpire() != 0) { |
| | | jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); |
| | | } |
| | | jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jashCaseTask.setCustId(jasqCaseTask.getCustId()); |
| | | jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(jashCaseTask); |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | caseWindupApply.setCaseTaskId(jashCaseTask.getId()); |
| | | caseWindupApply.setAuditUnitId(jashCaseTask.getCandeUnitId()); |
| | | caseWindupApply.setAuditUnitName(jashCaseTask.getCandeUnitName()); |
| | | caseWindupApply.setCustId(jashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(caseWindupApply); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_5.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_5.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); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); |
| | | caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); |
| | | caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); |
| | | caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); |
| | | caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); |
| | | caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | //添加网格待办 |
| | | this.createGridToDo(caseInfo, jashCaseTask, GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4); |
| | | } |
| | | } |
| | | // 查询配合部门的任务,全部结束流程 |
| | | QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); |
| | | caseTaskQueryWrapper.eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).eq("case_id", jasqCaseTask.getCaseId()); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | // 查询联合处置申请单,全部结束申请单 |
| | | QueryWrapper<CaseAssistApply> caseAssistApplyQueryWrapper = new QueryWrapper<>(); |
| | | caseAssistApplyQueryWrapper.eq("case_id", jasqCaseTask.getCaseId()).eq("apply_status", AuditBaseConsts.AUDIT_STATUS_0); |
| | | List<CaseAssistApply> caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper); |
| | | for (CaseAssistApply caseAssistApply: caseAssistApplyList){ |
| | | caseAssistApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_2); |
| | | caseAssistApply.setUpdateTime(nowDate); |
| | | caseAssistApplyService.updateCaseAssistApply(caseAssistApply); |
| | | } |
| | | // 查询配合组织的任务,全部结束流程 |
| | | List<CaseTask> assistCaseTaskList = this.listAssistTasking(jasqCaseTask.getCaseId()); |
| | | for (CaseTask assistCaseTask: assistCaseTaskList){ |
| | | // 完成配合部门当前办理反馈任务 |
| | | assistCaseTask.setId(caseWindupApply.getCaseTaskId()); |
| | | // 完成配合组织当前任务 |
| | | assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | assistCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | assistCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | assistCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | assistCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | assistCaseTask.setHandleUserId(loginUser.getId()); |
| | | assistCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | assistCaseTask.setHandleTime(nowDate); |
| | | assistCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); |
| | | assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(assistCaseTask); |
| | | // 完成当前配合部门办理反馈工作流任务 |
| | | flowInfoService.completeTask(assistCaseTask.getFlowableId(), assistCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_forward, userId); |
| | | |
| | | // 结束配合组织当前工作流任务 |
| | | flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webWindupApply]调用失败,异常信息:"+e, e); |
| | |
| | | Date nowDate = DateUtils.getNowDate(); |
| | | // 获取当前登录用户 |
| | | CtUserDTO loginUser = custClient.clientGetUserAll(userId); |
| | | // 查询结案申请信息 |
| | | CaseWindupApply oldCaseWindupApply = caseWindupApplyService.getById(caseWindupApply.getId()); |
| | | // 更新结案申请信息 |
| | | caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); |
| | | caseWindupApply.setAuditUserId(loginUser.getId()); |
| | |
| | | CaseTask jashCaseTask = mapper.selectById(caseWindupApply.getCaseTaskId()); |
| | | // 审核通过, |
| | | if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseWindupApply.getAuditResult())){ |
| | | // 完成当前结案审核任务 |
| | | // 完成当前结案审核节点任务 |
| | | CaseTask jashCaseTaskPO = new CaseTask(); |
| | | jashCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); |
| | | jashCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); |
| | | jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | jashCaseTaskPO.setHandleTime(nowDate); |
| | | jashCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jashCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getCreateTime())); |
| | | jashCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | jashCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(jashCaseTaskPO); |
| | | // 完成当前结案审核工作流任务,走当事人评价任务 |
| | | FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | // 新建当事人评价任务 |
| | | CaseTask dsrpjCaseTask = new CaseTask(); |
| | | dsrpjCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setFlowableId(dsrpjFlowNode.getFlowableId()); |
| | | dsrpjCaseTask.setProcessInstanceId(dsrpjFlowNode.getProcessInstanceId()); |
| | | dsrpjCaseTask.setProcessTaskId(dsrpjFlowNode.getProcessTaskId()); |
| | | dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | dsrpjCaseTask.setNodeType(dsrpjFlowNode.getNodeType()); |
| | | dsrpjCaseTask.setNodeId(dsrpjFlowNode.getNodeId()); |
| | | dsrpjCaseTask.setNodeName(dsrpjFlowNode.getNodeName()); |
| | | dsrpjCaseTask.setFlowId(dsrpjFlowNode.getFlowId()); |
| | | dsrpjCaseTask.setNodeShowName(dsrpjFlowNode.getNodeShowName()); |
| | | dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | | if (dsrpjFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); |
| | | // 根据事项等级,判断是否要上级综治中心审核 |
| | | FlowNode nextFlowNode = null; |
| | | CaseInfo caseInfo = caseInfoService.getById(jashCaseTask.getCaseId()); |
| | | if (CaseBaseConsts.CASE_LEVEL_1 == caseInfo.getCaseLevel()){ |
| | | // 一级事件,本级+上级+上上级审核 |
| | | if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(jashCaseTask.getNodeId())){ |
| | | // 完成本级综治中心审核,进入上级综治中心审核节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty_sq, userId); |
| | | |
| | | }else if (FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(jashCaseTask.getNodeId())){ |
| | | // 完成上级综治中心审核,进入上上级综治中心审核节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty_sq, userId); |
| | | }else { |
| | | // 完成上上级综治中心审核,审核流程结束,进入下一节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | } |
| | | |
| | | }else if (CaseBaseConsts.CASE_LEVEL_2 == caseInfo.getCaseLevel()){ |
| | | // 二级事件,本级+上级审核 |
| | | String operation = FlowableConsts.OPERATION_jash_ty; |
| | | if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(jashCaseTask.getNodeId())){ |
| | | // 完成本级综治中心审核,进入上级综治中心审核节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty_sq, userId); |
| | | }else { |
| | | // 完成上级综治中心审核,审核流程结束,进入下一节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | } |
| | | }else { |
| | | // 三级事件,自办自结,即本级综治中心审核就行,完成本级综治中心审核,审核流程结束,进入下一节点 |
| | | nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_ty, userId); |
| | | } |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(nowDate); |
| | | dsrpjCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(dsrpjCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); |
| | | |
| | | // 下一个节点是一级结案审核节点,进入一级结案审核节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 新建结案审核节点任务 |
| | | CaseTask yjJashCaseTask = new CaseTask(); |
| | | yjJashCaseTask.setId(utilsClient.getNewTimeId()); |
| | | yjJashCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | yjJashCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | yjJashCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | yjJashCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | yjJashCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | yjJashCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | yjJashCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | yjJashCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | yjJashCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | yjJashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:上级级综治中心审核 |
| | | CtUnitDTO zzzxCtUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); |
| | | yjJashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); |
| | | yjJashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | yjJashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | yjJashCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | yjJashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | yjJashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | yjJashCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | yjJashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | yjJashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(yjJashCaseTask); |
| | | // 创建新的结案申请记录 |
| | | CaseWindupApply newCaseWindupApply = new CaseWindupApply(); |
| | | BeanUtils.copyProperties(oldCaseWindupApply, newCaseWindupApply); |
| | | newCaseWindupApply.setId(utilsClient.getNewTimeId()); |
| | | newCaseWindupApply.setApplyTime(nowDate); |
| | | newCaseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | newCaseWindupApply.setCaseTaskId(yjJashCaseTask.getId()); |
| | | newCaseWindupApply.setAuditUnitId(yjJashCaseTask.getCandeUnitId()); |
| | | newCaseWindupApply.setAuditUnitName(yjJashCaseTask.getCandeUnitName()); |
| | | newCaseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | newCaseWindupApply.setCreateTime(nowDate); |
| | | newCaseWindupApply.setUpdateTime(nowDate); |
| | | newCaseWindupApply.setCustId(yjJashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(newCaseWindupApply); |
| | | //修改网格待办流程 |
| | | this.taskFlowGridToDo(caseInfo, yjJashCaseTask, jashCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4); |
| | | } |
| | | // 下一个节点是二级结案审核节点,进入二级结案审核节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 新建结案审核节点任务 |
| | | CaseTask ejJashCaseTask = new CaseTask(); |
| | | ejJashCaseTask.setId(utilsClient.getNewTimeId()); |
| | | ejJashCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | ejJashCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | ejJashCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | ejJashCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | ejJashCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | ejJashCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | ejJashCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | ejJashCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | ejJashCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | ejJashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:上级级综治中心审核 |
| | | CtUnitDTO zzzxCtUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); |
| | | ejJashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); |
| | | ejJashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | ejJashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | ejJashCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | ejJashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | ejJashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | ejJashCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | ejJashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); |
| | | ejJashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); |
| | | mapper.insert(ejJashCaseTask); |
| | | // 创建新的结案申请记录 |
| | | CaseWindupApply newCaseWindupApply = new CaseWindupApply(); |
| | | BeanUtils.copyProperties(oldCaseWindupApply, newCaseWindupApply); |
| | | newCaseWindupApply.setId(utilsClient.getNewTimeId()); |
| | | newCaseWindupApply.setApplyTime(nowDate); |
| | | newCaseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); |
| | | newCaseWindupApply.setCaseTaskId(ejJashCaseTask.getId()); |
| | | newCaseWindupApply.setAuditUnitId(ejJashCaseTask.getCandeUnitId()); |
| | | newCaseWindupApply.setAuditUnitName(ejJashCaseTask.getCandeUnitName()); |
| | | newCaseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | newCaseWindupApply.setCreateTime(nowDate); |
| | | newCaseWindupApply.setUpdateTime(nowDate); |
| | | newCaseWindupApply.setCustId(ejJashCaseTask.getCustId()); |
| | | caseWindupApplyService.save(newCaseWindupApply); |
| | | //修改网格待办流程 |
| | | this.taskFlowGridToDo(caseInfo, ejJashCaseTask, jashCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4); |
| | | |
| | | } |
| | | // 下一个节点是当事人评价节点,进入当事人评价节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 新建当事人评价节点任务 |
| | | CaseTask dsrpjCaseTask = new CaseTask(); |
| | | dsrpjCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属人:当事人 |
| | | EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); |
| | | dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); |
| | | dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); |
| | | mapper.insert(dsrpjCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); |
| | | //删除网格待办 |
| | | this.deleteGridTodo(jashCaseTask); |
| | | } |
| | | // 下一个节点是结案归档节点,进入结案归档节点任务 |
| | | if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ |
| | | // 创建并完成结案归档节点任务 |
| | | CaseTask jagdCaseTask = new CaseTask(); |
| | | jagdCaseTask.setId(utilsClient.getNewTimeId()); |
| | | jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 任务所属单位:结案申请操作组织 |
| | | jagdCaseTask.setCandeUnitId(oldCaseWindupApply.getApplyUnitId()); |
| | | jagdCaseTask.setCandeUnitName(oldCaseWindupApply.getApplyUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); |
| | | } |
| | | jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTask.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTask.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTask.setHandleUserId(loginUser.getId()); |
| | | jashCaseTask.setHandleUserName(loginUser.getTrueName()); |
| | | jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | jagdCaseTask.setHandleTime(nowDate); |
| | | jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | jagdCaseTask.setCustId(jashCaseTask.getCustId()); |
| | | jagdCaseTask.setCreateTime(nowDate); |
| | | jagdCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); |
| | | jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); |
| | | mapper.insert(jagdCaseTask); |
| | | // 完成结案归档工作流节点任务,结束流程 |
| | | flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_7.getIndex()); |
| | | caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_7.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); |
| | | //删除网格待办 |
| | | this.deleteGridTodo(jashCaseTask); |
| | | } |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(dsrpjCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); |
| | | caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); |
| | | caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); |
| | | caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); |
| | | caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); |
| | | caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); |
| | | caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setCloseTime(nowDate); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | }else { |
| | | // 审核不通过,回退办理反馈任务 |
| | | // 完成当前结案审核任务 |
| | | // 审核不通过,回退办理反馈节点任务 |
| | | // 完成当前结案审核节点任务 |
| | | CaseTask jashCaseTaskPO = new CaseTask(); |
| | | jashCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); |
| | | jashCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | jashCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | jashCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | jashCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | jashCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); |
| | | jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | jashCaseTaskPO.setHandleTime(nowDate); |
| | | jashCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | jashCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getCreateTime())); |
| | | jashCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | jashCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(jashCaseTaskPO); |
| | | // 完成当前结案审核工作流任务,走办理反馈任务 |
| | | // 完成当前结案审核工作流节点任务,走办理反馈节点任务 |
| | | FlowNode blfkFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_jash_bty, userId); |
| | | // 新建办理反馈任务 |
| | | // 新建办理反馈节点任务 |
| | | CaseTask blfkCaseTask = new CaseTask(); |
| | | blfkCaseTask.setId(utilsClient.getNewTimeId()); |
| | | blfkCaseTask.setCaseId(jashCaseTask.getCaseId()); |
| | | blfkCaseTask.setFlowableId(blfkFlowNode.getFlowableId()); |
| | | blfkCaseTask.setProcessInstanceId(blfkFlowNode.getProcessInstanceId()); |
| | | blfkCaseTask.setProcessTaskId(blfkFlowNode.getProcessTaskId()); |
| | | blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | blfkCaseTask.setNodeType(blfkFlowNode.getNodeType()); |
| | | blfkCaseTask.setNodeId(blfkFlowNode.getNodeId()); |
| | | blfkCaseTask.setNodeName(blfkFlowNode.getNodeName()); |
| | | blfkCaseTask.setFlowId(blfkFlowNode.getFlowId()); |
| | | blfkCaseTask.setNodeShowName(blfkFlowNode.getNodeShowName()); |
| | | blfkCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | blfkCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | blfkCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | // 任务所属单位:结案申请操作组织 |
| | | blfkCaseTask.setCandeUnitId(oldCaseWindupApply.getApplyUnitId()); |
| | | blfkCaseTask.setCandeUnitName(oldCaseWindupApply.getApplyUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | |
| | | blfkCaseTask.setCreateTime(nowDate); |
| | | blfkCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(blfkCaseTask); |
| | | //删除网格待办 |
| | | this.deleteGridTodo(jashCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(blfkCaseTask.getCaseId()); |
| | |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | // 更新纠纷扩展信息 |
| | | CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); |
| | | caseInfoUnfoldPO.setId(blfkCaseTask.getCaseId()); |
| | | caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); |
| | | caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); |
| | | caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); |
| | | caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); |
| | | caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); |
| | | caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); |
| | | caseInfoUnfoldPO.setCloseTime(nowDate); |
| | | caseInfoUnfoldPO.setUpdateTime(nowDate); |
| | | caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); |
| | | |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webWindupApply]调用失败,异常信息:"+e, e); |
| | |
| | | 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.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | 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(), |
| | | // 查询待节点任务 |
| | | CaseTask thisCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); |
| | | // 完成当前节点任务 |
| | | CaseTask thisCaseTaskPO = new CaseTask(); |
| | | thisCaseTaskPO.setId(caseReturn.getCaseTaskId()); |
| | | thisCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | thisCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | thisCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | thisCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | thisCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | thisCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | thisCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | thisCaseTaskPO.setHandleContent(caseReturn.getReturnContent()); |
| | | thisCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_4); |
| | | thisCaseTaskPO.setHandleTime(nowDate); |
| | | thisCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | thisCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getCreateTime())); |
| | | thisCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); |
| | | thisCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(thisCaseTaskPO); |
| | | // 完成当前节点工作流任务,走回退审核任务 |
| | | FlowNode htshFlowNode = flowInfoService.completeTask(thisCaseTask.getFlowableId(), thisCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsq, userId); |
| | | // 新建回退审核任务 |
| | | // 新建回退审核节点任务 |
| | | CaseTask htshCaseTask = new CaseTask(); |
| | | htshCaseTask.setId(utilsClient.getNewTimeId()); |
| | | htshCaseTask.setCaseId(dslCaseTask.getCaseId()); |
| | | htshCaseTask.setCaseId(thisCaseTask.getCaseId()); |
| | | htshCaseTask.setFlowableId(htshFlowNode.getFlowableId()); |
| | | htshCaseTask.setProcessInstanceId(htshFlowNode.getProcessInstanceId()); |
| | | htshCaseTask.setProcessTaskId(htshFlowNode.getProcessTaskId()); |
| | | htshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | htshCaseTask.setNodeType(htshFlowNode.getNodeType()); |
| | | htshCaseTask.setNodeId(htshFlowNode.getNodeId()); |
| | | htshCaseTask.setNodeName(htshFlowNode.getNodeName()); |
| | | htshCaseTask.setFlowId(htshFlowNode.getFlowId()); |
| | | htshCaseTask.setNodeShowName(htshFlowNode.getNodeShowName()); |
| | | htshCaseTask.setCaseTaskType(dslCaseTask.getCaseTaskType()); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | htshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | // CtUnitDTO ctUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); |
| | | htshCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | htshCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | htshCaseTask.setCaseTaskType(thisCaseTask.getCaseTaskType()); |
| | | // 任务所属单位:上级综治中心 |
| | | htshCaseTask.setCandeUnitId(zzzxUnit.getId()); |
| | | htshCaseTask.setCandeUnitName(zzzxUnit.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | htshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (htshFlowNode.getExpire() != 0) { |
| | |
| | | caseReturn.setCaseTaskId(htshCaseTask.getId()); |
| | | caseReturn.setCaseTaskType(htshCaseTask.getCaseTaskType()); |
| | | caseReturnService.save(caseReturn); |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(thisCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, htshCaseTask, thisCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearApply", e); |
| | | log.error("[CaseTaskService.webReturnApply]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webReturnApply", e); |
| | | } |
| | | } |
| | | |
| | |
| | | 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.setHandleDeptId(loginUser.getDeptId()); |
| | | htshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | htshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); |
| | | htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | htshCaseTaskPO.setHandleTime(nowDate); |
| | | htshCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | htshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getCreateTime())); |
| | | htshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); |
| | | htshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(htshCaseTaskPO); |
| | | // 完成当前回退审核任务,承办部门走待分派任务,配合部门结束流程 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | // 完成当前回退审核工作流节点任务,承办组织走待分派节点任务,配合组织结束工作流流程 |
| | | FlowNode nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsh_ty, userId); |
| | | if (CaseTaskConsts.CASE_TASK_TYPE_1 == htshCaseTask.getCaseTaskType()) { |
| | | // 新建待分派任务 |
| | | CaseTask dfphCaseTask = new CaseTask(); |
| | | dfphCaseTask.setId(utilsClient.getNewTimeId()); |
| | | dfphCaseTask.setCaseId(htshCaseTask.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(htshCaseTask.getCaseTaskType()); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 新建下一个节点任务 |
| | | CaseTask nextCaseTask = new CaseTask(); |
| | | nextCaseTask.setId(utilsClient.getNewTimeId()); |
| | | nextCaseTask.setCaseId(htshCaseTask.getCaseId()); |
| | | nextCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | nextCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | nextCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | nextCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | nextCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | nextCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | nextCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | nextCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | nextCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); |
| | | // 任务所属单位:回退审核操作组织 |
| | | nextCaseTask.setCandeUnitId(loginUser.getUnitId()); |
| | | nextCaseTask.setCandeUnitName(loginUser.getUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | nextCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (dfpFlowNode.getExpire() != 0) { |
| | | dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | nextCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.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); |
| | | nextCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | nextCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | nextCaseTask.setCustId(nextCaseTask.getCustId()); |
| | | nextCaseTask.setCreateTime(nowDate); |
| | | nextCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(nextCaseTask); |
| | | // 更新纠纷信息 |
| | | CaseInfo caseInfoPO = new CaseInfo(); |
| | | caseInfoPO.setId(htshCaseTask.getCaseId()); |
| | |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | // 有配合组织,结束配合组织工作流程 |
| | | List<CaseTask> assistCaseTaskList = this.listAssistTasking(htshCaseTask.getCaseId()); |
| | | |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(htshCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, nextCaseTask, htshCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1); |
| | | for (CaseTask assistCaseTask: assistCaseTaskList){ |
| | | // 完成配合组织当前任务 |
| | | assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | assistCaseTask.setHandleUnitId(loginUser.getUnitId()); |
| | | assistCaseTask.setHandleUnitName(loginUser.getUnitName()+"(承办部门)"); |
| | | assistCaseTask.setHandleDeptId(loginUser.getDeptId()); |
| | | assistCaseTask.setHandleDeptName(loginUser.getDeptName()+"(承办部门)"); |
| | | assistCaseTask.setHandleUserId(loginUser.getId()); |
| | | assistCaseTask.setHandleUserName(loginUser.getTrueName()+"(承办部门)"); |
| | | assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); |
| | | assistCaseTask.setHandleTime(nowDate); |
| | | assistCaseTask.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); |
| | | assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(assistCaseTask); |
| | | // 结束配合组织当前工作流任务 |
| | | flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); |
| | | // 更新联合处置信息 |
| | | UpdateWrapper<CaseAssistInfo> caseAssistInfoUpdateWrapper = new UpdateWrapper<>(); |
| | | caseAssistInfoUpdateWrapper.eq("case_id", htshCaseTask.getCaseId()) |
| | | .eq("process_instance_id", assistCaseTask.getProcessInstanceId()) |
| | | .eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0).set("assist_status", CaseTaskConsts.ASSIST_STATUS_2); |
| | | caseAssistInfoService.update(caseAssistInfoUpdateWrapper); |
| | | |
| | | //修改网格待办流程 |
| | | this.taskFlowGridToDo(caseInfo, assistCaseTask, htshCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1); |
| | | } |
| | | }else { |
| | | // 更新联合处置信息 |
| | | QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>(); |
| | | caseAssistInfoQueryWrapper.eq("case_id", htshCaseTask.getCaseId()).eq("assist_unit_id", htshCaseTask.getCandeUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); |
| | | caseAssistInfoQueryWrapper.eq("case_id", htshCaseTask.getCaseId()) |
| | | .eq("assist_unit_id", htshCaseTask.getCandeUnitId()) |
| | | .eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); |
| | | CaseAssistInfo caseAssistInfo = caseAssistInfoService.getOne(caseAssistInfoQueryWrapper); |
| | | if (ObjectUtils.isNotEmpty(caseAssistInfo)){ |
| | | caseAssistInfo.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_1); |
| | | caseAssistInfoService.updateCaseAssistInfo(caseAssistInfo); |
| | | //删除网格待办 |
| | | htshCaseTaskPO.setCaseId(htshCaseTask.getCaseId()); |
| | | this.deleteGridTodo(htshCaseTaskPO); |
| | | } |
| | | } |
| | | }else { |
| | | // 审核不通过 |
| | | // 完成当前回退审核任务 |
| | | // 完成当前回退审核节点任务 |
| | | CaseTask htshCaseTaskPO = new CaseTask(); |
| | | htshCaseTaskPO.setId(caseReturn.getCaseTaskId()); |
| | | htshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | htshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | htshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | htshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | htshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | htshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); |
| | | htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | htshCaseTaskPO.setHandleTime(nowDate); |
| | | htshCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | htshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getCreateTime())); |
| | | htshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); |
| | | htshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(htshCaseTaskPO); |
| | | // 查询回退申请信息 |
| | | CaseReturn btyCaseReturn = caseReturnService.getById(caseReturn.getId()); |
| | | // 查询回退申请组织信息 |
| | | CtUnitDTO returnUnit = custClient.getUnitById(btyCaseReturn.getReturnUnitId()); |
| | | String operation = FlowableConsts.OPERATION_htsh_bty; |
| | | FlowNode nextFlowNode = null; |
| | | if (UserBaseConsts.UNIT_GRADE_2 == returnUnit.getUnitGrade()){ |
| | | operation = FlowableConsts.OPERATION_htsh_bty_qj; |
| | | // 区级组织回退,完成当前回退审核节点任务,进入下一个节点 |
| | | nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsh_bty_qj, userId); |
| | | }else if(UserBaseConsts.UNIT_GRADE_1 == returnUnit.getUnitGrade()){ |
| | | // 市级组织回退,完成当前回退审核节点任务,进入下一个节点 |
| | | nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsh_bty_sj, userId); |
| | | }else { |
| | | // 完成当前回退审核节点任务,进入下一个节点 |
| | | nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_htsh_bty, userId); |
| | | } |
| | | 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(htshCaseTask.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(htshCaseTask.getCaseTaskType()); |
| | | // 受理任务,任务候选执行者类型是上一步骤选择 |
| | | dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); |
| | | dslCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId()); |
| | | dslCaseTask.setCandeUnitName(btyCaseReturn.getReturnUnitName()); |
| | | // 受理后的任务,不需要签收 |
| | | dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 新建下一个节点任务 |
| | | CaseTask nextCaseTask = new CaseTask(); |
| | | nextCaseTask.setId(utilsClient.getNewTimeId()); |
| | | nextCaseTask.setCaseId(htshCaseTask.getCaseId()); |
| | | nextCaseTask.setFlowableId(nextFlowNode.getFlowableId()); |
| | | nextCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); |
| | | nextCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); |
| | | nextCaseTask.setNodeType(nextFlowNode.getNodeType()); |
| | | nextCaseTask.setNodeId(nextFlowNode.getNodeId()); |
| | | nextCaseTask.setNodeName(nextFlowNode.getNodeName()); |
| | | nextCaseTask.setFlowId(nextFlowNode.getFlowId()); |
| | | nextCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); |
| | | nextCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); |
| | | // 任务所属组织:回退申请组织 |
| | | nextCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId()); |
| | | nextCaseTask.setCandeUnitName(btyCaseReturn.getReturnUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | nextCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | // 任务处理时限 |
| | | if (dslFlowNode.getExpire() != 0) { |
| | | dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, dslFlowNode.getExpire())); |
| | | if (nextFlowNode.getExpire() != 0) { |
| | | nextCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.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); |
| | | nextCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | nextCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); |
| | | nextCaseTask.setCustId(htshCaseTask.getCustId()); |
| | | nextCaseTask.setCreateTime(nowDate); |
| | | nextCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(nextCaseTask); |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(htshCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, nextCaseTask, htshCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3); |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webReturnAudit]调用失败,异常信息:"+e, e); |
| | |
| | | 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.setTaskType(CaseTaskConsts.TASK_TYPE_3); |
| | | 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(), |
| | | // 查询当前节点任务 |
| | | CaseTask thisCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); |
| | | // 完成当前当前节点任务 |
| | | CaseTask thisCaseTaskPO = new CaseTask(); |
| | | thisCaseTaskPO.setId(caseAppear.getCaseTaskId()); |
| | | thisCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | thisCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | thisCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | thisCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | thisCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | thisCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | thisCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | thisCaseTaskPO.setHandleContent(caseAppear.getAppearContent()); |
| | | thisCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_5); |
| | | thisCaseTaskPO.setHandleTime(nowDate); |
| | | thisCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | thisCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getCreateTime())); |
| | | thisCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); |
| | | thisCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(thisCaseTaskPO); |
| | | // 完成当前待受理工作流节点任务,走上报审核任务 |
| | | FlowNode sbshFlowNode = flowInfoService.completeTask(thisCaseTask.getFlowableId(), thisCaseTask.getProcessTaskId(), |
| | | FlowableConsts.OPERATION_sb, userId); |
| | | // 新建上报审核任务 |
| | | CaseTask sbshCaseTask = new CaseTask(); |
| | | sbshCaseTask.setId(utilsClient.getNewTimeId()); |
| | | sbshCaseTask.setCaseId(dslCaseTask.getCaseId()); |
| | | sbshCaseTask.setCaseId(thisCaseTask.getCaseId()); |
| | | sbshCaseTask.setFlowableId(sbshFlowNode.getFlowableId()); |
| | | sbshCaseTask.setProcessInstanceId(sbshFlowNode.getProcessInstanceId()); |
| | | sbshCaseTask.setProcessTaskId(sbshFlowNode.getProcessTaskId()); |
| | | sbshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); |
| | | 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) { |
| | |
| | | // 新增上报申请信息 |
| | | caseAppear.setCaseTaskId(sbshCaseTask.getId()); |
| | | caseAppearService.save(caseAppear); |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(thisCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, sbshCaseTask, thisCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.webAppearApply", e); |
| | |
| | | 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.setHandleDeptId(loginUser.getDeptId()); |
| | | sbshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | sbshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); |
| | | sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); |
| | | sbshCaseTaskPO.setHandleTime(nowDate); |
| | | sbshCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | sbshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getCreateTime())); |
| | | sbshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); |
| | | sbshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(sbshCaseTaskPO); |
| | | // 完成当前上报审核任务,走待分派任务 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), |
| | |
| | | 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); |
| | | // 任务处理时限 |
| | |
| | | caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); |
| | | caseInfoPO.setUpdateTime(nowDate); |
| | | caseInfoService.updateCaseInfo(caseInfoPO); |
| | | |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(sbshCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, dfphCaseTask, sbshCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1); |
| | | }else { |
| | | // 审核不通过 |
| | | // 完成当前上报审核任务 |
| | |
| | | sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); |
| | | sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); |
| | | sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); |
| | | sbshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); |
| | | sbshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); |
| | | sbshCaseTaskPO.setHandleUserId(loginUser.getId()); |
| | | sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); |
| | | sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); |
| | | sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); |
| | | sbshCaseTaskPO.setHandleTime(nowDate); |
| | | sbshCaseTaskPO.setUpdateTime(nowDate); |
| | | // 计算任务耗时、是否超时、超时多少 |
| | | sbshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getCreateTime())); |
| | | sbshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); |
| | | sbshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); |
| | | mapper.updateCaseTask(sbshCaseTaskPO); |
| | | // 完成当前上报审核任务,走待分派任务 |
| | | FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), |
| | |
| | | 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()); |
| | | // 受理后的任务,不需要签收 |
| | | // 任务所属单位:上报申请组织 |
| | | CaseAppear caseAppearBO = caseAppearService.getById(caseAppear.getId()); |
| | | dfphCaseTask.setCandeUnitId(caseAppearBO.getAppearUnitId()); |
| | | dfphCaseTask.setCandeUnitName(caseAppearBO.getAppearUnitName()); |
| | | // 受理后的节点任务,不需要签收 |
| | | dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); |
| | | dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); |
| | | // 任务处理时限 |
| | |
| | | dfphCaseTask.setCreateTime(nowDate); |
| | | dfphCaseTask.setUpdateTime(nowDate); |
| | | mapper.insert(dfphCaseTask); |
| | | |
| | | //修改网格待办流程 |
| | | CaseInfo caseInfo = caseInfoService.getById(sbshCaseTask.getCaseId()); |
| | | this.taskFlowGridToDo(caseInfo, dfphCaseTask, sbshCaseTask.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1); |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.webAppearAudit]调用失败,异常信息:"+e, e); |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 按条件查询 |
| | | * @param terms 条件 |
| | | * @return List |
| | | */ |
| | | public List<SignTaskDTO> listIdByTerms(Map<String, Object> terms){ |
| | | return mapper.listIdByTerms(terms); |
| | | } |
| | | |
| | | /** |
| | | * web端-工作台-已办事项 |
| | | * @param page 分页对象 |
| | | * @param terms 条件 |
| | | * @return Page |
| | | */ |
| | | public Page<FrontPageListYBDTO> pageMyTaskYb(PageRequest page, Map<String, Object> terms){ |
| | | try { |
| | | long total = mapper.countMyTaskYb(terms); |
| | | List<FrontPageListYBDTO> frontPageListYBDTOList = mapper.pageMyTaskYb(page, terms); |
| | | return new PageImpl<FrontPageListYBDTO>(frontPageListYBDTOList, page, total); |
| | | }catch (Exception e) { |
| | | log.error("[CaseTaskService.pageMyTaskYb]调用失败,异常信息:" + e, e); |
| | | throw new ServiceException("CaseTaskService.pageMyTaskYb", e); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 根据编号物理删除 |
| | | * @param caseId |
| | | */ |
| | | public void deleteByCaseId(String caseId){ |
| | | try{ |
| | | mapper.deleteByCaseId(caseId); |
| | | }catch (Exception e){ |
| | | log.error("[CaseTaskService.deleteByCaseId]调用失败,异常信息:"+e, e); |
| | | throw new ServiceException("CaseTaskService.deleteByCaseId", e); |
| | | } |
| | | } |
| | | |
| | | public void deleteGridTodo(CaseTask caseTask) { |
| | | try { |
| | | //删除网格待办任务 |
| | | GridTaskVo gridTaskVo = new GridTaskVo(); |
| | | gridTaskVo.setCaseId(caseTask.getCaseId()); |
| | | gridTaskVo.setCaseTaskId(caseTask.getId()); |
| | | sysClient.deleteTaskTodo(gridTaskVo); |
| | | } catch (Exception e) { |
| | | log.error("删除网格待办失败"); |
| | | } |
| | | } |
| | | |
| | | public void createGridToDo(CaseInfo caseInfo, CaseTask caseTask, String gridObjType, String noticeTypeName){ |
| | | try { |
| | | SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | //添加网格待办 |
| | | GridToDoBacthVo gridToDoBacthVo = new GridToDoBacthVo(); |
| | | gridToDoBacthVo.setObjId(caseTask.getId()); |
| | | gridToDoBacthVo.setObjType(gridObjType); |
| | | gridToDoBacthVo.setSysContent(""); |
| | | gridToDoBacthVo.setYzyContent(""); |
| | | gridToDoBacthVo.setObjTag(""); |
| | | gridToDoBacthVo.setMobile("18607214221"); |
| | | gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex()); |
| | | gridToDoBacthVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants()+"的"+caseInfo.getCaseTypeName()+"事件"); |
| | | gridToDoBacthVo.setLimitTime(outputFormat.format(caseTask.getExpireTime())); |
| | | gridToDoBacthVo.setCaseId(caseInfo.getId()); |
| | | sysClient.createTaskToDo(gridToDoBacthVo, caseTask.getCandeUnitId()); |
| | | } catch (Exception e) { |
| | | log.error("添加网格待办失败"); |
| | | log.error(e.getMessage(), e); |
| | | } |
| | | } |
| | | |
| | | public void updateGridToDo(CaseInfo caseInfo, CaseTask caseTask, String previousTaskId, String gridObjType, String noticeTypeName) { |
| | | try { |
| | | //添加网格待办 |
| | | GridToDoVo gridToDoVo = new GridToDoVo(); |
| | | gridToDoVo.setObjId(caseTask.getId()); |
| | | gridToDoVo.setObjType(gridObjType); |
| | | gridToDoVo.setSysContent(""); |
| | | gridToDoVo.setYzyContent(""); |
| | | gridToDoVo.setObjTag(""); |
| | | gridToDoVo.setMobile("18607214221"); |
| | | gridToDoVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex()); |
| | | gridToDoVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants() + "的" + caseInfo.getCaseTypeName() + "事件"); |
| | | gridToDoVo.setLimitTime(String.valueOf(caseTask.getExpireTime())); |
| | | gridToDoVo.setCaseId(caseInfo.getId()); |
| | | sysClient.updateTaskTodo(gridToDoVo, previousTaskId); |
| | | } catch (Exception e) { |
| | | log.error("修改网格待办失败"); |
| | | log.error(e.getMessage(), e); |
| | | } |
| | | } |
| | | |
| | | public void taskFlowGridToDo(CaseInfo caseInfo, CaseTask caseTask, String previousTaskId, String gridObjType, String noticeTypeName) { |
| | | try { |
| | | SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | //删除网格待办任务 |
| | | GridTaskVo gridTaskVo = new GridTaskVo(); |
| | | gridTaskVo.setCaseId(caseInfo.getId()); |
| | | gridTaskVo.setCaseTaskId(previousTaskId); |
| | | sysClient.deleteTaskTodo(gridTaskVo); |
| | | //添加网格待办 |
| | | GridToDoBacthVo gridToDoBacthVo = new GridToDoBacthVo(); |
| | | gridToDoBacthVo.setObjId(caseTask.getId()); |
| | | gridToDoBacthVo.setObjType(gridObjType); |
| | | gridToDoBacthVo.setSysContent(""); |
| | | gridToDoBacthVo.setYzyContent(""); |
| | | gridToDoBacthVo.setObjTag(""); |
| | | gridToDoBacthVo.setMobile("18607214221"); |
| | | gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex()); |
| | | gridToDoBacthVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants() + "的" + caseInfo.getCaseTypeName() + "事件"); |
| | | if(ObjectUtils.isNotEmpty(caseTask.getExpireTime())){ |
| | | gridToDoBacthVo.setLimitTime(outputFormat.format(caseTask.getExpireTime())); |
| | | }else{ |
| | | gridToDoBacthVo.setLimitTime(outputFormat.format(DateUtils.addHour(DateUtils.getNowDate(), 12))); |
| | | } |
| | | gridToDoBacthVo.setCaseId(caseInfo.getId()); |
| | | sysClient.createTaskToDo(gridToDoBacthVo, caseTask.getCandeUnitId()); |
| | | } catch (Exception e) { |
| | | log.error("修改网格待办流程失败"); |
| | | log.error(e.getMessage(), e); |
| | | } |
| | | } |
| | | } |