Explorar el Código

申购、销售合同 添加暂存

yzc hace 1 año
padre
commit
69dfaf0c4a

+ 2 - 2
hx-purchase/src/main/java/com/fjhx/purchase/controller/subscribe/SubscribeDetailController.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailDto;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailSelectDto;
 import com.fjhx.purchase.entity.subscribe.vo.SubscribeDetailVo;
+import com.fjhx.purchase.entity.subscribe.vo.SubscribeVo;
 import com.fjhx.purchase.service.subscribe.SubscribeDetailService;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -12,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.List;
 import java.util.Map;
 
 
@@ -52,7 +52,7 @@ public class SubscribeDetailController {
      * 申购单明细
      */
     @PostMapping("/detail")
-    public List<SubscribeDetailVo> detail(@RequestBody SubscribeDetailSelectDto dto) {
+    public SubscribeVo detail(@RequestBody SubscribeDetailSelectDto dto) {
         return subscribeDetailService.detail(dto.getIds());
     }
 

+ 2 - 2
hx-purchase/src/main/java/com/fjhx/purchase/entity/subscribe/po/SubscribeDetail.java

@@ -42,8 +42,8 @@ public class SubscribeDetail extends BasePo {
 	private String content;
 
 	/**
-	 * 状态 10、审批中 15待采购 20、已采购  30、部分到货  40、完成
-	 */
+     * 状态 10审批中,13驳回,15待采购,20、已采购,30部分采购,88作废
+     */
 	private Integer status;
 
 	/**

+ 111 - 124
hx-purchase/src/main/java/com/fjhx/purchase/flow/SubscribeFlow.java

@@ -1,12 +1,10 @@
 package com.fjhx.purchase.flow;
 
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.fjhx.common.enums.CodingRuleEnum;
 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.enums.FlowStatusEnum;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeDto;
@@ -23,7 +21,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.Date;
-import java.util.List;
 
 /**
  * @Author:caozj
@@ -33,125 +30,115 @@ import java.util.List;
 @Component
 public class SubscribeFlow extends FlowDelegate {
 
-	@Autowired
-	private CodingRuleService codingRuleService;
-
-	@Autowired
-	private SubscribeService subscribeService;
-
-	@Autowired
-	private SubscribeDetailService subscribeDetailService;
-
-	@Override
-	public String getFlowKey() {
-		return "subscribe_flow";
-	}
-
-	/**
-	 * 发起流程
-	 *
-	 * @param flowId     流程ID
-	 * @param submitData 申购数据
-	 * @return 业务id
-	 */
-	@Override
-	public Long start(Long flowId, JSONObject submitData) {
-		SubscribeDto subscribe = submitData.toJavaObject(SubscribeDto.class);
-		subscribe.setCode(codingRuleService.createCode(CodingRuleEnum.SUBSCRIBE.getKey(), null));
-		subscribe.setSubcribeStatus(SubscribeStatusEnum.UNDER_REVIEW.getKey());
-		subscribe.setFlowId(flowId);
-		//赋值归属公司
-		if (ObjectUtils.isEmpty(subscribe.getCompanyId())) {
-			subscribe.setCompanyId(SecurityUtils.getCompanyId());
-		}
-		subscribeService.save(subscribe);
-
-		List<SubscribeDetail> subscribeDetails = subscribe.getSubscribeDetailList();
-		if (CollectionUtils.isNotEmpty(subscribeDetails)) {
-			subscribeDetails.forEach(item -> {
-				item.setSubscribeId(subscribe.getId());
-				item.setDataType(0);
-				item.setCompanyId(subscribe.getCompanyId());
-			});
-			subscribeDetailService.saveBatch(subscribeDetails);
-		}
-
-		submitData.put("code", subscribe.getCode());
-
-		//代他人提交附件
-		ObsFileUtil.saveFile(subscribe.getSubstituteFileList(), subscribe.getId(), 10);
-		//申请用途附件
-		ObsFileUtil.saveFile(subscribe.getPurposeFileList(), subscribe.getId(), 15);
-
-		return subscribe.getId();
-	}
-
-	/**
-	 * 结束流程
-	 *
-	 * @param flowId     流程ID
-	 * @param businessId 业务ID
-	 * @param submitData 数据
-	 */
-	@Override
-	public void end(Long flowId, Long businessId, JSONObject submitData) {
-
-		// 通过业务ID查询申购数据
-		Subscribe subscribe = subscribeService.getById(businessId);
-		if (ObjectUtils.isEmpty(subscribe)) {
-			throw new ServiceException("申购单不存在");
-		}
-
-		// 修改申购状态为审批通过
-		subscribe.setSubcribeStatus(SubscribeStatusEnum.PASS.getKey());
-		subscribe.setApprovedDate(new Date());
-		subscribeService.updateById(subscribe);
-
-		// 修改申购明细为待采购
-		subscribeDetailService.update(q -> q
-				.eq(SubscribeDetail::getSubscribeId, subscribe.getId())
-				.set(SubscribeDetail::getStatus, SubscribeDetailStatusEnum.PAID_AMOUNT.getKey())
-				.set(BasePo::getUpdateTime, new Date())
-				.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
-		);
-
-	}
-
-	@Override
-	public void relaunch(Long flowId, Long businessId, FlowStatusEnum flowStatus, JSONObject submitData) {
-		super.relaunch(flowId, businessId, flowStatus, submitData);
-		throw new ServiceException("该功能当前不可用!");
-	}
-
-	@Override
-	public void reject(Long flowId, Long businessId, FlowStatusEnum flowStatus) {
-		super.reject(flowId, businessId, flowStatus);
-
-		subscribeService.update(q -> q
-				.eq(Subscribe::getId, businessId)
-				.set(Subscribe::getSubcribeStatus, FlowStatusEnum1.REJECT.getKey())
-				.set(BasePo::getUpdateTime, new Date())
-				.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
-		);
-
-		// 修改申购明细为驳回
-		subscribeDetailService.update(q -> q
-				.eq(SubscribeDetail::getSubscribeId, businessId)
-				.set(SubscribeDetail::getStatus, FlowStatusEnum1.REJECT.getKey())
-				.set(BasePo::getUpdateTime, new Date())
-				.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
-		);
-	}
-
-	@Override
-	public void cancellation(Long flowId, Long businessId, FlowStatusEnum flowStatus) {
-		super.cancellation(flowId, businessId, flowStatus);
-
-		subscribeService.update(q -> q
-				.eq(Subscribe::getId, businessId)
-				.set(Subscribe::getSubcribeStatus, FlowStatusEnum1.CANCELLATION.getKey())
-				.set(BasePo::getUpdateTime, new Date())
-				.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
-		);
-	}
+    @Autowired
+    private CodingRuleService codingRuleService;
+
+    @Autowired
+    private SubscribeService subscribeService;
+
+    @Autowired
+    private SubscribeDetailService subscribeDetailService;
+
+    @Override
+    public String getFlowKey() {
+        return "subscribe_flow";
+    }
+
+    /**
+     * 发起流程
+     *
+     * @param flowId     流程ID
+     * @param submitData 申购数据
+     * @return 业务id
+     */
+    @Override
+    public Long start(Long flowId, JSONObject submitData) {
+        SubscribeDto subscribe = submitData.toJavaObject(SubscribeDto.class);
+        subscribe.setCode(codingRuleService.createCode(CodingRuleEnum.SUBSCRIBE.getKey(), null));
+        subscribe.setSubcribeStatus(SubscribeStatusEnum.UNDER_REVIEW.getKey());
+        subscribe.setFlowId(flowId);
+
+        commStart(subscribe);
+
+        submitData.put("code", subscribe.getCode());
+
+
+        return subscribe.getId();
+    }
+
+    public void commStart(SubscribeDto subscribe) {
+        subscribeService.saveOrEdit(subscribe);
+    }
+
+    /**
+     * 结束流程
+     *
+     * @param flowId     流程ID
+     * @param businessId 业务ID
+     * @param submitData 数据
+     */
+    @Override
+    public void end(Long flowId, Long businessId, JSONObject submitData) {
+
+        // 通过业务ID查询申购数据
+        Subscribe subscribe = subscribeService.getById(businessId);
+        if (ObjectUtils.isEmpty(subscribe)) {
+            throw new ServiceException("申购单不存在");
+        }
+
+        // 修改申购状态为审批通过
+        subscribe.setSubcribeStatus(SubscribeStatusEnum.PASS.getKey());
+        subscribe.setApprovedDate(new Date());
+        subscribeService.updateById(subscribe);
+
+        // 修改申购明细为待采购
+        subscribeDetailService.update(q -> q
+                .eq(SubscribeDetail::getSubscribeId, subscribe.getId())
+                .set(SubscribeDetail::getStatus, SubscribeDetailStatusEnum.PAID_AMOUNT.getKey())
+                .set(BasePo::getUpdateTime, new Date())
+                .set(BasePo::getUpdateUser, SecurityUtils.getUserId())
+        );
+
+    }
+
+    @Override
+    public void relaunch(Long flowId, Long businessId, FlowStatusEnum flowStatus, JSONObject submitData) {
+        super.relaunch(flowId, businessId, flowStatus, submitData);
+
+        SubscribeDto subscribe = submitData.toJavaObject(SubscribeDto.class);
+
+        commStart(subscribe);
+    }
+
+    @Override
+    public void reject(Long flowId, Long businessId, FlowStatusEnum flowStatus) {
+        super.reject(flowId, businessId, flowStatus);
+
+        subscribeService.update(q -> q
+                .eq(Subscribe::getId, businessId)
+                .set(Subscribe::getSubcribeStatus, FlowStatusEnum1.REJECT.getKey())
+                .set(BasePo::getUpdateTime, new Date())
+                .set(BasePo::getUpdateUser, SecurityUtils.getUserId())
+        );
+
+        // 修改申购明细为驳回
+        subscribeDetailService.update(q -> q
+                .eq(SubscribeDetail::getSubscribeId, businessId)
+                .set(SubscribeDetail::getStatus, 13)//申购明细(待采购状态特殊)13是驳回
+                .set(BasePo::getUpdateTime, new Date())
+                .set(BasePo::getUpdateUser, SecurityUtils.getUserId())
+        );
+    }
+
+    @Override
+    public void cancellation(Long flowId, Long businessId, FlowStatusEnum flowStatus) {
+        super.cancellation(flowId, businessId, flowStatus);
+
+        subscribeService.update(q -> q
+                .eq(Subscribe::getId, businessId)
+                .set(Subscribe::getSubcribeStatus, FlowStatusEnum1.CANCELLATION.getKey())
+                .set(BasePo::getUpdateTime, new Date())
+                .set(BasePo::getUpdateUser, SecurityUtils.getUserId())
+        );
+    }
 }

+ 2 - 1
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/SubscribeDetailService.java

@@ -5,6 +5,7 @@ import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailDto;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailSelectDto;
 import com.fjhx.purchase.entity.subscribe.po.SubscribeDetail;
 import com.fjhx.purchase.entity.subscribe.vo.SubscribeDetailVo;
+import com.fjhx.purchase.entity.subscribe.vo.SubscribeVo;
 import com.ruoyi.common.core.service.BaseService;
 
 import java.util.List;
@@ -29,7 +30,7 @@ public interface SubscribeDetailService extends BaseService<SubscribeDetail> {
     /**
      * 申购单明细
      */
-    List<SubscribeDetailVo> detail(List<Long> ids);
+    SubscribeVo detail(List<Long> ids);
 
     /**
      * 申购单新增

+ 2 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/SubscribeService.java

@@ -44,6 +44,8 @@ public interface SubscribeService extends BaseService<Subscribe> {
      */
     void edit(SubscribeDto subscribeDto);
 
+    void saveOrEdit(SubscribeDto subscribe);
+
     /**
      * 申购单删除
      */

+ 16 - 2
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/impl/SubscribeDetailServiceImpl.java

@@ -2,6 +2,7 @@ package com.fjhx.purchase.service.subscribe.impl;
 
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.extra.spring.SpringUtil;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -20,9 +21,11 @@ import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailSelectDto;
 import com.fjhx.purchase.entity.subscribe.po.Subscribe;
 import com.fjhx.purchase.entity.subscribe.po.SubscribeDetail;
 import com.fjhx.purchase.entity.subscribe.vo.SubscribeDetailVo;
+import com.fjhx.purchase.entity.subscribe.vo.SubscribeVo;
 import com.fjhx.purchase.mapper.subscribe.SubscribeDetailMapper;
 import com.fjhx.purchase.service.purchase.PurchaseDetailService;
 import com.fjhx.purchase.service.subscribe.SubscribeDetailService;
+import com.fjhx.purchase.service.subscribe.SubscribeService;
 import com.fjhx.tenant.entity.dict.dto.DictTenantDataSelectDto;
 import com.fjhx.tenant.entity.dict.vo.DictTenantDataVo;
 import com.fjhx.tenant.service.dict.DictTenantDataService;
@@ -68,6 +71,8 @@ public class SubscribeDetailServiceImpl extends ServiceImpl<SubscribeDetailMappe
     private CorporationService corporationService;
     @Autowired
     private ISysDeptService deptService;
+//    @Autowired
+//    private SubscribeService subscribeService;
 
     /**
      * 分页
@@ -213,7 +218,7 @@ public class SubscribeDetailServiceImpl extends ServiceImpl<SubscribeDetailMappe
      * @return
      */
     @Override
-    public List<SubscribeDetailVo> detail(List<Long> ids) {
+    public SubscribeVo detail(List<Long> ids) {
         if (CollectionUtils.isEmpty(ids)) {
             throw new ServiceException("参数异常");
         }
@@ -237,6 +242,12 @@ public class SubscribeDetailServiceImpl extends ServiceImpl<SubscribeDetailMappe
                     s.setProductLength(p.getLength());
                     s.setProductWidth(p.getWidth());
                     s.setProductHeight(p.getHeight());
+
+                    s.setProductColor(p.getColor());
+                    s.setProductUnit(p.getUnit());
+                    s.setProductNetWeight(p.getNetWeight());
+                    s.setProductFrontalTexture(p.getFrontalTexture());
+                    s.setProductReverseTexture(p.getReverseTexture());
                 }
             }
         }
@@ -255,8 +266,11 @@ public class SubscribeDetailServiceImpl extends ServiceImpl<SubscribeDetailMappe
             subscribeDetailVo.setPurchaseCount(count);
         }
 
+        SubscribeService subscribeService = SpringUtil.getBean(SubscribeService.class);
+        SubscribeVo detail = subscribeService.detail(list.get(0).getSubscribeId());
+        detail.setSubscribeDetailList(list);
 
-        return list;
+        return detail;
     }
 
     @Override

+ 28 - 14
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/impl/SubscribeServiceImpl.java

@@ -2,7 +2,6 @@ package com.fjhx.purchase.service.subscribe.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.extra.spring.SpringUtil;
 import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -10,8 +9,8 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.common.constant.SourceConstant;
-import com.fjhx.common.enums.CodingRuleEnum;
 import com.fjhx.common.service.coding.CodingRuleService;
+import com.fjhx.file.utils.ObsFileUtil;
 import com.fjhx.item.entity.product.vo.ProductInfoVo;
 import com.fjhx.item.service.product.ProductInfoService;
 import com.fjhx.purchase.entity.purchase.po.Purchase;
@@ -179,17 +178,7 @@ public class SubscribeServiceImpl extends ServiceImpl<SubscribeMapper, Subscribe
     @DSTransactional
     @Override
     public void add(SubscribeDto subscribe) {
-        SubscribeService subscribeService = SpringUtil.getBean(SubscribeService.class);
-        SubscribeDetailService subscribeDetailService = SpringUtil.getBean(SubscribeDetailService.class);
-        subscribe.setCode(codingRuleService.createCode(CodingRuleEnum.SUBSCRIBE.getKey(), null));
-        subscribeService.save(subscribe);
-        List<SubscribeDetail> SubscribeDetails = subscribe.getSubscribeDetailList();
-        if (CollectionUtils.isNotEmpty(SubscribeDetails)) {
-            for (SubscribeDetail s : SubscribeDetails) {
-                s.setSubscribeId(subscribe.getId());
-            }
-            subscribeDetailService.saveBatch(subscribe.getSubscribeDetailList());
-        }
+        saveOrEdit(subscribe);
     }
 
     /**
@@ -200,7 +189,32 @@ public class SubscribeServiceImpl extends ServiceImpl<SubscribeMapper, Subscribe
     @DSTransactional
     @Override
     public void edit(SubscribeDto subscribeDto) {
-        this.updateById(subscribeDto);
+        saveOrEdit(subscribeDto);
+    }
+
+    @Override
+    public void saveOrEdit(SubscribeDto subscribe) {
+        //赋值归属公司
+        if (ObjectUtils.isEmpty(subscribe.getCompanyId())) {
+            subscribe.setCompanyId(SecurityUtils.getCompanyId());
+        }
+        this.saveOrUpdate(subscribe);
+
+        List<SubscribeDetail> subscribeDetails = subscribe.getSubscribeDetailList();
+        if (ObjectUtils.isEmpty(subscribeDetails)) {
+            subscribeDetails = new ArrayList<>();
+        }
+        subscribeDetails.forEach(item -> {
+            item.setSubscribeId(subscribe.getId());
+            item.setDataType(0);
+            item.setCompanyId(subscribe.getCompanyId());
+        });
+        subscribeDetailService.editLinked(subscribeDetails, SubscribeDetail::getSubscribeId, subscribe.getId());
+
+        //代他人提交附件
+        ObsFileUtil.saveFile(subscribe.getSubstituteFileList(), subscribe.getId(), 10);
+        //申请用途附件
+        ObsFileUtil.saveFile(subscribe.getPurposeFileList(), subscribe.getId(), 15);
     }
 
     @Override

+ 1 - 67
hx-sale/src/main/java/com/fjhx/sale/flow/ContractFlow.java

@@ -1,39 +1,28 @@
 package com.fjhx.sale.flow;
 
-import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONObject;
 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.enums.CodingRuleEnum;
 import com.fjhx.common.enums.FlowStatusEnum1;
 import com.fjhx.common.service.coding.CodingRuleService;
-import com.fjhx.common.utils.Assert;
-import com.fjhx.file.utils.ObsFileUtil;
 import com.fjhx.flow.core.FlowDelegate;
 import com.fjhx.flow.enums.FlowStatusEnum;
 import com.fjhx.sale.entity.contract.dto.ContractDto;
 import com.fjhx.sale.entity.contract.dto.ContractProductDto;
 import com.fjhx.sale.entity.contract.po.Contract;
-import com.fjhx.sale.entity.contract.po.ContractProduct;
-import com.fjhx.sale.entity.contract.po.ContractProductBom;
-import com.fjhx.sale.entity.contract.po.ContractProject;
 import com.fjhx.sale.service.contract.ContractProductBomService;
 import com.fjhx.sale.service.contract.ContractProductService;
 import com.fjhx.sale.service.contract.ContractProjectService;
 import com.fjhx.sale.service.contract.ContractService;
 import com.ruoyi.common.annotation.LogicIgnore;
 import com.ruoyi.common.core.domain.BasePo;
-import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.exception.ServiceException;
 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 java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -116,62 +105,7 @@ public class ContractFlow extends FlowDelegate {
     }
 
     public Long start(ContractDto contract) {
-        //生产公司信息校验
-        Assert.notEmpty(contract.getCompanyId(), "生产公司id不能为空!");
-//        //销售部门id
-//        contract.setDeptId(SecurityUtils.getDeptId());
-
-        //赋值归属公司
-        if (ObjectUtil.isEmpty(contract.getOfCompanyId())) {
-            contract.setOfCompanyId(SecurityUtils.getCompanyId());
-        }
-
-        // 赋值城市省份信息
-        CustomizeAreaUtil.setAreaId(contract);
-        SysUser loginUser = SecurityUtils.getLoginUser().getUser();
-        contract.setUserName(loginUser.getNickName());
-        contract.setBuyCityId(contract.getCityId());
-        contract.setBuyCountryId(contract.getCountryId());
-        contract.setBuyProvinceId(contract.getProvinceId());
-        contract.setStatus(FlowStatusEnum1.UNDER_REVIEW.getKey());
-
-        contractService.saveOrUpdate(contract);
-
-        // 保存合同产品
-        List<ContractProductDto> contractProductListDto = contract.getContractProductList();
-        contractProductListDto = ObjectUtil.isEmpty(contractProductListDto) ? new ArrayList<>() : contractProductListDto;
-        for (ContractProductDto cp : contractProductListDto) {
-            //对新数据创建id
-            cp.setId(ObjectUtil.isEmpty(cp.getId()) ? IdWorker.getId() : cp.getId());
-            //赋值合同Id
-            cp.setContractId(contract.getId());
-            //保存设计稿图
-            ObsFileUtil.editFile(cp.getFileList(), cp.getId(), 1);
-            //保存生产源文件
-            ObsFileUtil.copyFileAndSave(cp.getProdFileList(), cp.getId(), 2);
-
-            //赋值产品BOM信息
-            List<ContractProductBom> contractProductBomList = cp.getContractProductBomList();
-            for (ContractProductBom contractProductBom : contractProductBomList) {
-                contractProductBom.setContractId(contract.getId());
-                contractProductBom.setContractProductId(cp.getId());
-                contractProductBom.setProductId(cp.getProductId());
-            }
-
-            contractProductBomService.editLinked(contractProductBomList, ContractProductBom::getContractProductId, cp.getId());
-        }
-
-        List<ContractProduct> contractProductList1 = BeanUtil.copyToList(contractProductListDto, ContractProduct.class);
-        contractProductService.editLinked(contractProductList1, ContractProduct::getContractId, contract.getId());
-
-        // 保存收费项目
-        List<ContractProject> contractProjectList = contract.getContractProjectList();
-        contractProjectList = ObjectUtil.isEmpty(contractProjectList) ? new ArrayList<>() : contractProjectList;
-        for (ContractProject c : contractProjectList) {
-            c.setContractId(contract.getId());
-        }
-        contractProjectService.editLinked(contractProjectList, ContractProject::getContractId, contract.getId());
-
+        contractService.saveOrEdit(contract);
         return contract.getId();
     }
 

+ 2 - 0
hx-sale/src/main/java/com/fjhx/sale/service/contract/ContractService.java

@@ -84,6 +84,8 @@ public interface ContractService extends BaseService<Contract> {
      */
     void edit(ContractDto contractDto);
 
+    void saveOrEdit(ContractDto contract);
+
     /**
      * 外销合同作废
      */

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 611 - 613
hx-sale/src/main/java/com/fjhx/sale/service/contract/impl/ContractServiceImpl.java


Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio