From b2001a7042d511cea1c1b2000edca57253d992ad Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期六, 20 十二月 2025 16:21:51 +0800
Subject: [PATCH] 时间控制修改
---
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java | 54 ++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 42 insertions(+), 12 deletions(-)
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java
index 2895f7e..35c6654 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/IDispatchHandleServiceImpl.java
@@ -1,21 +1,33 @@
package com.ycl.service.caseHandler.impl;
+import com.alibaba.druid.support.json.JSONUtils;
+import com.alibaba.fastjson.JSONObject;
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.gson.JsonObject;
import com.ycl.common.constant.BaseCaseStatus;
import com.ycl.common.constant.StepName;
+import com.ycl.common.dingding.DingCommon;
+import com.ycl.controller.user.UmsAdminController;
import com.ycl.dto.caseHandler.DispatchInfoParam;
import com.ycl.entity.caseHandler.BaseCase;
import com.ycl.entity.caseHandler.DispatchInfo;
import com.ycl.entity.caseHandler.DisposeRecord;
import com.ycl.entity.caseHandler.WorkflowConfigStep;
+import com.ycl.entity.message.DingMessage;
+import com.ycl.entity.user.UmsAdmin;
import com.ycl.exception.ApiException;
import com.ycl.mapper.caseHandler.BaseCaseMapper;
import com.ycl.mapper.caseHandler.DispatchInfoMapper;
import com.ycl.mapper.caseHandler.DisposeRecordMapper;
import com.ycl.mapper.caseHandler.WorkflowConfigStepMapper;
+import com.ycl.mapper.message.DingMessageMapper;
import com.ycl.service.caseHandler.IDispatchHandleService;
+import com.ycl.service.user.UmsAdminService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -25,7 +37,7 @@
/**
* <p>
- * 璋冨害澶勭悊 鏈嶅姟瀹炵幇绫�
+ * 璋冨害澶勭悊 鏈嶅姟瀹炵幇绫�
* </p>
*
* @author mg
@@ -33,6 +45,7 @@
*/
@Service
@Transactional
+@Slf4j
public class IDispatchHandleServiceImpl extends ServiceImpl<DispatchInfoMapper, DispatchInfo> implements IDispatchHandleService {
@Resource
@@ -41,7 +54,15 @@
DisposeRecordMapper disposeRecordMapper;
@Resource
WorkflowConfigStepMapper workflowConfigStepMapper;
+ @Autowired
+ DingCommon dingCommon;
+ @Autowired
+ UmsAdminService umsAdminService;
+ @Autowired
+ DingMessageMapper dingMessageMapper;
+
@Override
+ @Transactional
public DispatchInfo dispatch(DispatchInfoParam dispatchInfoParam) {
//鏂板璋冨害淇℃伅
DispatchInfo dispatchInfo = new DispatchInfo();
@@ -62,21 +83,17 @@
throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�");
}
- //娣诲姞璋冨害璁板綍
+ UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>();
+ updateWrapper.eq("base_case_id", baseCase.getId()).eq("workflow_config_step_id", workflowConfigStep.getId());
+
+ //淇敼璋冨害璁板綍
DisposeRecord disposeRecord = new DisposeRecord();
- disposeRecord.setBaseCaseId(baseCase.getId());
- disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId());
- disposeRecord.setStepName(workflowConfigStep.getName());
- disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId());
disposeRecord.setHandlerId(dispatchInfo.getCreateUser());
+ disposeRecord.setResult(dispatchInfo.getDispatchOpinion());
//璋冨害宸茬粨鏉�
disposeRecord.setState(1);
- disposeRecord.setStartTime(LocalDateTime.now());
disposeRecord.setEndTime(LocalDateTime.now());
- disposeRecord.setCreateUser(dispatchInfo.getCreateUser());
- disposeRecord.setCreateTime(LocalDateTime.now());
-
- disposeRecordMapper.insert(disposeRecord);
+ disposeRecordMapper.update(disposeRecord, updateWrapper);
QueryWrapper<WorkflowConfigStep> stepNextqurey = new QueryWrapper<>();
stepNextqurey.eq("workflow_config_id", workflowConfigStep.getWorkflowConfigId());
@@ -88,8 +105,9 @@
stepNextRecord.setBaseCaseId(baseCase.getId());
stepNextRecord.setWorkflowConfigStepId(stepNext.getId());
stepNextRecord.setStepName(stepNext.getName());
+ stepNextRecord.setLimitTime(dispatchInfoParam.getDisposeDate());
+ stepNextRecord.setHandlerId(dispatchInfoParam.getLawEnforcer());
stepNextRecord.setHandlerRoleId(stepNext.getRoleId());
- stepNextRecord.setHandlerId(dispatchInfo.getCreateUser());
//涓婁紶澶勭疆鏈粨鏉�
stepNextRecord.setState(0);
stepNextRecord.setStartTime(LocalDateTime.now());
@@ -97,6 +115,18 @@
stepNextRecord.setCreateTime(LocalDateTime.now());
disposeRecordMapper.insert(stepNextRecord);
+ //瀛橀拤閽夊伐浣滈�氱煡娑堟伅鍒版暟鎹簱
+ BaseCase baseCaseForCode = baseCaseMapper.selectById(dispatchInfoParam.getBaseCaseId());
+ String baseCaseCode = baseCaseForCode.getCode();
+ Long lawEnforcer = dispatchInfoParam.getLawEnforcer();
+ Long accountId = umsAdminService.getById(lawEnforcer).getAccountId();
+ if (accountId != null) {
+ DingMessage dingMessage = DingMessage.builder()
+ .accountId(accountId)
+ .baseCaseCode(baseCaseCode)
+ .createTime(new Date()).build();
+ dingMessageMapper.insert(dingMessage);
+ }
return dispatchInfo;
}
--
Gitblit v1.8.0