|
@@ -3,6 +3,7 @@ package com.fjhx.sale.flow;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
|
+import com.fjhx.common.enums.FlowStatusEnum1;
|
|
|
import com.fjhx.common.utils.Assert;
|
|
|
import com.fjhx.flow.core.FlowDelegate;
|
|
|
import com.fjhx.purchase.entity.purchase.enums.PurchaseDataResourceEnum;
|
|
@@ -113,6 +114,11 @@ public class EhsdPurchaseUpdateFlow extends FlowDelegate {
|
|
|
EhsdPurchase purchase = ehsdPurchaseService.getById(businessId);
|
|
|
Assert.notEmpty(purchase, "采购单不存在,或已被删除");
|
|
|
|
|
|
+ //作废旧合同
|
|
|
+ EhsdPurchase oldEhsdPurchase = ehsdPurchaseService.getById(purchase.getOldPurchaseId());
|
|
|
+ oldEhsdPurchase.setStatus(FlowStatusEnum1.CANCELLATION.getKey());
|
|
|
+ ehsdPurchaseService.updateById(oldEhsdPurchase);
|
|
|
+
|
|
|
//回滚旧合同的已采购数量
|
|
|
List<EhsdPurchaseProduct> oldPurchaseProductList = ehsdPurchaseProductService.list(q -> q.eq(EhsdPurchaseProduct::getPurchaseId, purchase.getOldPurchaseId()));
|
|
|
for (EhsdPurchaseProduct ehsdPurchaseProduct : oldPurchaseProductList) {
|
|
@@ -138,16 +144,17 @@ public class EhsdPurchaseUpdateFlow extends FlowDelegate {
|
|
|
|
|
|
//先将当前合同id 以及 当前合同关联数据的合同id 改为临时id
|
|
|
long tempId = IdWorker.getId();
|
|
|
- ehsdPurchaseService.update(q -> q.eq(BaseIdPo::getId, businessId).set(BaseIdPo::getId, tempId));
|
|
|
+// ehsdPurchaseService.update(q -> q.eq(BaseIdPo::getId, businessId).set(BaseIdPo::getId, tempId));
|
|
|
+ ehsdPurchaseService.updatePurchaseId(businessId,tempId,SecurityUtils.getUserId());
|
|
|
ehsdPurchaseProductService.update(q -> q.eq(EhsdPurchaseProduct::getPurchaseId, businessId).set(EhsdPurchaseProduct::getPurchaseId, tempId));
|
|
|
ehsdPurchaseProjectService.update(q -> q.eq(EhsdPurchaseProject::getPurchaseId, businessId).set(EhsdPurchaseProject::getPurchaseId, tempId));
|
|
|
ehsdPurchaseArrivalService.update(q -> q.eq(EhsdPurchaseArrival::getPurchaseId, businessId).set(EhsdPurchaseArrival::getPurchaseId, tempId));
|
|
|
|
|
|
|
|
|
//将旧合同的id改为新合同id
|
|
|
+ ehsdPurchaseService.updatePurchaseId(oldPurchaseId,businessId,SecurityUtils.getUserId());
|
|
|
ehsdPurchaseService.update(q -> q
|
|
|
.eq(BaseIdPo::getId, oldPurchaseId)
|
|
|
- .set(BaseIdPo::getId, businessId)
|
|
|
.set(EhsdPurchase::getOldPurchaseId, oldPurchaseId)
|
|
|
.set(BasePo::getUpdateTime, new Date())
|
|
|
.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
|
|
@@ -171,9 +178,9 @@ public class EhsdPurchaseUpdateFlow extends FlowDelegate {
|
|
|
.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
|
|
|
);
|
|
|
//将新合同id改为旧合同id
|
|
|
+ ehsdPurchaseService.updatePurchaseId(tempId,oldPurchaseId,SecurityUtils.getUserId());
|
|
|
ehsdPurchaseService.update(q -> q
|
|
|
.eq(BaseIdPo::getId, tempId)
|
|
|
- .set(BaseIdPo::getId, oldPurchaseId)
|
|
|
.set(EhsdPurchase::getOldPurchaseId, businessId)
|
|
|
.set(BasePo::getUpdateTime, new Date())
|
|
|
.set(BasePo::getUpdateUser, SecurityUtils.getUserId())
|