From 7685af4ed67c693d197393f56f392d7b12434853 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 27 二月 2025 16:43:42 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/xiaochen991015/xizang

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java |   38 +++++++++++++++++++++++++++++++++-----
 1 files changed, 33 insertions(+), 5 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
index 61c5b1f..3e62453 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
@@ -5,8 +5,10 @@
 import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.constant.DictConstants;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.enums.ProcessCategoryEnum;
 import com.ruoyi.common.utils.DictUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
+import com.ruoyi.system.bo.ProcessStartBO;
 import com.ruoyi.system.dto.SignContractDTO;
 import com.ruoyi.system.dto.TerminateContractDTO;
 import com.ruoyi.system.mapper.TBillMapper;
@@ -17,6 +19,7 @@
 import com.ruoyi.system.query.TContractAppletQuery;
 import com.ruoyi.system.query.TContractBillQuery;
 import com.ruoyi.system.query.TContractQuery;
+import com.ruoyi.system.service.StateProcessTemplateService;
 import com.ruoyi.system.service.TBillService;
 import com.ruoyi.system.service.TContractRentTypeService;
 import com.ruoyi.system.service.TContractService;
@@ -32,9 +35,7 @@
 import java.time.LocalDateTime;
 import java.time.temporal.ChronoUnit;
 import java.time.temporal.TemporalAdjusters;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
+import java.util.*;
 
 /**
  * <p>
@@ -56,6 +57,8 @@
     private TBillService billService;
     @Resource
     private TContractMapper contractMapper;
+    @Autowired
+    private StateProcessTemplateService stateProcessTemplateService;
 
     @Override
     public PageInfo<TContract> contractList(TContractQuery query) {
@@ -101,6 +104,19 @@
         contract.setTerminateRemark(dto.getTerminateRemark());
         contract.setStatus("4");
         this.baseMapper.updateById(contract);
+
+        // 进入合同提前终止审批流程
+        ProcessStartBO processStartBO = new ProcessStartBO();
+        processStartBO.setCategory(ProcessCategoryEnum.CATEGORY3.getValue().toString());
+        processStartBO.setModuleName("合同提前终止审批");
+        processStartBO.setName(contract.getContractName());
+        processStartBO.setRemark("");
+        Map<String, Object> variable = new HashMap<>();
+        variable.put("projectId", dto.getId());
+        processStartBO.setVariable(variable);
+        //开启工作流程
+        stateProcessTemplateService.start(processStartBO);
+
         // 生成验收记录
         TCheckAcceptRecord tCheckAcceptRecord = new TCheckAcceptRecord();
         tCheckAcceptRecord.setContractId(dto.getId());
@@ -155,9 +171,21 @@
         if (contract.getStatus().equals("4"))return R.fail("该合同已签订");
         contract.setSignature(dto.getSignature());
         contract.setStatus("4");
-        contractMapper.updateById(contract);
         contract.setFirstPayTime(contract.getStartTime().plusDays(10));
-        List<TBill> bills = new ArrayList<>();
+        contractMapper.updateById(contract);
+
+        // 进入签订审批流程
+        ProcessStartBO processStartBO = new ProcessStartBO();
+        processStartBO.setCategory(ProcessCategoryEnum.CATEGORY2.getValue().toString());
+        processStartBO.setModuleName("合同签订审批");
+        processStartBO.setName(contract.getContractName());
+        processStartBO.setRemark("");
+        Map<String, Object> variable = new HashMap<>();
+        variable.put("projectId", dto.getId());
+        processStartBO.setVariable(variable);
+        //开启工作流程
+        stateProcessTemplateService.start(processStartBO);
+
         List<TContractRentType> contractRentTypes = contractRentTypeService.list();
         // 生成第一笔账单
         // 第一次应缴费日期

--
Gitblit v1.7.1