yzc 1 年間 前
コミット
8ae7487de7

+ 8 - 9
hx-sale/src/main/java/com/fjhx/sale/flow/ContractFlow.java

@@ -3,7 +3,6 @@ package com.fjhx.sale.flow;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.fjhx.area.utils.CustomizeAreaUtil;
 import com.fjhx.common.constant.SourceConstant;
@@ -12,16 +11,12 @@ import com.fjhx.common.enums.FlowStatusEnum1;
 import com.fjhx.common.service.coding.CodingRuleService;
 import com.fjhx.file.utils.ObsFileUtil;
 import com.fjhx.flow.core.FlowDelegate;
-import com.fjhx.flow.core.FlowThreadLocalUtil;
 import com.fjhx.flow.enums.FlowStatusEnum;
-import com.fjhx.flow.enums.HandleTypeEnum;
 import com.fjhx.sale.entity.contract.dto.ContractDto;
 import com.fjhx.sale.entity.contract.po.Contract;
 import com.fjhx.sale.entity.contract.po.ContractProduct;
 import com.fjhx.sale.entity.contract.po.ContractProject;
 import com.fjhx.sale.entity.contract.po.ContractShipment;
-import com.fjhx.sale.entity.purchase.dto.EhsdPurchaseDto;
-import com.fjhx.sale.entity.sample.po.Sample;
 import com.fjhx.sale.service.contract.ContractProductService;
 import com.fjhx.sale.service.contract.ContractProjectService;
 import com.fjhx.sale.service.contract.ContractService;
@@ -34,7 +29,6 @@ import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
 import java.util.List;
@@ -134,6 +128,8 @@ public class ContractFlow extends FlowDelegate {
 
         // 保存合同产品
         List<ContractProduct> contractProductList = contract.getContractProductList();
+        //重新发起删除被删掉的产品
+        contractProductService.editLinked(contractProductList, ContractProduct::getContractId, contract.getId());
         if (CollectionUtils.isNotEmpty(contractProductList)) {
             for (ContractProduct c : contractProductList) {
                 c.setContractId(contract.getId());
@@ -143,6 +139,8 @@ public class ContractFlow extends FlowDelegate {
 
         // 保存收费项目
         List<ContractProject> contractProjectList = contract.getContractProjectList();
+        //重新发起删除被删掉的收费项目
+        contractProjectService.editLinked(contractProjectList, ContractProject::getContractId, contract.getId());
         if (CollectionUtils.isNotEmpty(contractProjectList)) {
             for (ContractProject c : contractProjectList) {
                 c.setContractId(contract.getId());
@@ -152,6 +150,8 @@ public class ContractFlow extends FlowDelegate {
 
         // 保存自定义出货
         List<ContractShipment> contractShipmentList = contract.getContractShipmentList();
+        //重新发起删除被删掉的出货计划
+        contractShipmentService.editLinked(contractShipmentList, ContractShipment::getContractId, contract.getId());
         if (CollectionUtils.isNotEmpty(contractShipmentList)) {
             for (ContractShipment c : contractShipmentList) {
                 c.setContractId(contract.getId());
@@ -160,10 +160,10 @@ public class ContractFlow extends FlowDelegate {
         }
 
         // 交接单附件列表
-        ObsFileUtil.saveFile(contract.getFileList(), contract.getId(), 1);
+        ObsFileUtil.editFile(contract.getFileList(), contract.getId(), 1);
 
         // 包装指示附件列表
-        ObsFileUtil.saveFile(contract.getPackageFileList(), contract.getId(), 2);
+        ObsFileUtil.editFile(contract.getPackageFileList(), contract.getId(), 2);
 
         return contract.getId();
     }
@@ -177,7 +177,6 @@ public class ContractFlow extends FlowDelegate {
      */
     @Override
     @LogicIgnore
-    @Transactional(rollbackFor = Exception.class)
     public void relaunch(Long flowId, Long businessId, FlowStatusEnum flowStatus, JSONObject submitData) {
         //删除采购合同
         ContractDto contractDto = submitData.toJavaObject(ContractDto.class);