From 1a320ae74056c99a439e0608a7243953cdef8ddd Mon Sep 17 00:00:00 2001
From: liyj <1003249715@qq.com>
Date: Wed, 18 Sep 2024 10:09:26 +0800
Subject: [PATCH] 1、联合处置流程优化2
---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java | 77 ++++++++++++++++++++++++++++++++++++++
1 files changed, 77 insertions(+), 0 deletions(-)
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
index f1086fd..aaa46dd 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
@@ -3,9 +3,23 @@
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.consts.CaseTaskConsts;
+import cn.huge.module.cases.domain.po.CaseInfo;
+import cn.huge.module.cases.domain.po.CaseTask;
+import cn.huge.module.client.api.impl.CustClientImpl;
import cn.huge.module.client.api.impl.UtilsClientImpl;
import cn.huge.module.cases.dao.mapper.CaseEvaluateMapper;
import cn.huge.module.cases.domain.po.CaseEvaluate;
+import cn.huge.module.constant.BaseConsts;
+import cn.huge.module.cust.dto.PaUserDTO;
+import cn.huge.module.flow.consts.FlowNodeEnum;
+import cn.huge.module.flow.consts.FlowableConsts;
+import cn.huge.module.flow.domain.po.FlowNode;
+import cn.huge.module.flow.service.FlowInfoService;
+import cn.huge.module.mediate.constant.CaseInfoProcessBaseConstsEnum;
+import cn.huge.module.mediate.constant.CaseProcessBaseConstsEnum;
+import cn.huge.module.mediate.constant.CaseStatusBaseConstsEnum;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -39,6 +53,15 @@
@Autowired
private UtilsClientImpl utilsClient;
+
+ @Autowired
+ private CustClientImpl custClient;
+ @Autowired
+ private CaseTaskService caseTaskService;
+ @Autowired
+ private FlowInfoService flowInfoService;
+ @Autowired
+ private CaseInfoService caseInfoService;
/**
* 更新对象
@@ -130,4 +153,58 @@
}
}
+ /**
+ * 新增或更新对象
+ * @param caseEvaluate 实体对象
+ */
+ public void saveCaseEvaluateWechat(CaseEvaluate caseEvaluate,String userId){
+ try{
+ PaUserDTO loginUser = custClient.paclientGetUser(userId);
+ Date nowDate = DateUtils.getNowDate();
+ // 判断是否新增
+ if (IdUtils.checkNewId(caseEvaluate.getId())){
+ caseEvaluate.setId(utilsClient.getNewTimeId());
+ caseEvaluate.setCreateTime(nowDate);
+ caseEvaluate.setDeleteStatus(BaseConsts.DELETE_STATUS_0);
+ }
+ caseEvaluate.setEvaluateUserId(loginUser.getId());
+ caseEvaluate.setEvaluateUserName(loginUser.getTrueName());
+ caseEvaluate.setCustId(loginUser.getCustId());
+ caseEvaluate.setUpdateTime(nowDate);
+ this.saveOrUpdate(caseEvaluate);
+ // 结束流程
+ QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>();
+ caseTaskQueryWrapper.eq("case_id", caseEvaluate.getCaseId()).eq("node_id", FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex());
+ CaseTask dsrpjCaseTask = caseTaskService.getOne(caseTaskQueryWrapper);
+ // 完成当前当事人评价任务
+ dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2);
+ dsrpjCaseTask.setHandleUserId(loginUser.getId());
+ dsrpjCaseTask.setHandleUserName(loginUser.getTrueName());
+ dsrpjCaseTask.setHandleIllust("已受理");
+ dsrpjCaseTask.setHandleUserName(loginUser.getTrueName());
+ dsrpjCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1);
+ dsrpjCaseTask.setHandleTime(nowDate);
+ dsrpjCaseTask.setUpdateTime(nowDate);
+ caseTaskService.updateCaseTask(dsrpjCaseTask);
+ // 完成当前待受理工作流任务
+ flowInfoService.completeTask(dsrpjCaseTask.getFlowableId(), dsrpjCaseTask.getProcessTaskId(),
+ FlowableConsts.OPERATION_forward, userId);
+ // 更新纠纷信息
+ CaseInfo caseInfoPO = new CaseInfo();
+ caseInfoPO.setId(dsrpjCaseTask.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);
+
+ }catch (Exception e){
+ log.error("[CaseEvaluateService.saveCaseEvaluateWechat]调用失败,异常信息:"+e, e);
+ throw new ServiceException("CaseEvaluateService.saveCaseEvaluateWechat", e);
+ }
+ }
+
}
--
Gitblit v1.8.0