From 22e8a676ee42c0d78b3526bcd9a635abbe8dca03 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 28 六月 2022 11:28:21 +0800
Subject: [PATCH] 优化databus bug
---
service-store/src/main/java/com/java110/store/bmo/purchase/impl/ResourceEnterBMOImpl.java | 45 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 36 insertions(+), 9 deletions(-)
diff --git a/service-store/src/main/java/com/java110/store/bmo/purchase/impl/ResourceEnterBMOImpl.java b/service-store/src/main/java/com/java110/store/bmo/purchase/impl/ResourceEnterBMOImpl.java
old mode 100644
new mode 100755
index e403202..43e56e7
--- a/service-store/src/main/java/com/java110/store/bmo/purchase/impl/ResourceEnterBMOImpl.java
+++ b/service-store/src/main/java/com/java110/store/bmo/purchase/impl/ResourceEnterBMOImpl.java
@@ -2,21 +2,23 @@
import com.java110.core.annotation.Java110Transactional;
import com.java110.dto.purchaseApply.PurchaseApplyDto;
-import com.java110.intf.common.IPurchaseApplyUserInnerServiceSMO;
+import com.java110.dto.resourceStore.ResourceStoreDto;
import com.java110.intf.store.IPurchaseApplyDetailInnerServiceSMO;
+import com.java110.intf.store.IPurchaseApplyInnerServiceSMO;
import com.java110.intf.store.IResourceStoreInnerServiceSMO;
import com.java110.po.purchase.PurchaseApplyDetailPo;
import com.java110.po.purchase.PurchaseApplyPo;
import com.java110.po.purchase.ResourceStorePo;
import com.java110.store.bmo.purchase.IResourceEnterBMO;
-import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
+import java.math.BigDecimal;
import java.util.List;
-
@Service("resourceEnterBMOImpl")
public class ResourceEnterBMOImpl implements IResourceEnterBMO {
@@ -24,28 +26,53 @@
@Autowired
private IPurchaseApplyDetailInnerServiceSMO purchaseApplyDetailInnerServiceSMOImpl;
-
@Autowired
- private IPurchaseApplyUserInnerServiceSMO purchaseApplyUserInnerServiceSMOImpl;
+ private IPurchaseApplyInnerServiceSMO purchaseApplyInnerServiceSMOImpl;
@Autowired
private IResourceStoreInnerServiceSMO resourceStoreInnerServiceSMOImpl;
-
@Override
@Java110Transactional
public ResponseEntity<String> enter(PurchaseApplyPo purchaseApplyPo) {
-
-
List<PurchaseApplyDetailPo> purchaseApplyDetailPos = purchaseApplyPo.getPurchaseApplyDetailPos();
for (PurchaseApplyDetailPo purchaseApplyDetailPo : purchaseApplyDetailPos) {
purchaseApplyDetailInnerServiceSMOImpl.updatePurchaseApplyDetail(purchaseApplyDetailPo);
ResourceStorePo resourceStorePo = new ResourceStorePo();
resourceStorePo.setResId(purchaseApplyDetailPo.getResId());
+ resourceStorePo.setPurchasePrice(purchaseApplyDetailPo.getPrice());
resourceStorePo.setStock(purchaseApplyDetailPo.getPurchaseQuantity());
+ resourceStorePo.setResOrderType(PurchaseApplyDto.RES_ORDER_TYPE_ENTER);
+ //鏌ヨ鐗╁搧璧勬簮淇℃伅
+ ResourceStoreDto resourceStoreDto = new ResourceStoreDto();
+ resourceStoreDto.setResId(purchaseApplyDetailPo.getResId());
+ List<ResourceStoreDto> resourceStoreDtos = resourceStoreInnerServiceSMOImpl.queryResourceStores(resourceStoreDto);
+ Assert.listOnlyOne(resourceStoreDtos, "鏌ヨ鐗╁搧璧勬簮淇℃伅閿欒锛�");
+ if (StringUtil.isEmpty(resourceStoreDtos.get(0).getMiniUnitStock())) {
+ throw new IllegalArgumentException("鏈�灏忚閲忓崟浣嶆暟閲忎笉鑳戒负绌猴紒");
+ }
+ //鑾峰彇鏈�灏忚閲忓崟浣嶆暟閲�
+ BigDecimal miniUnitStock = new BigDecimal(resourceStoreDtos.get(0).getMiniUnitStock());
+ if (StringUtil.isEmpty(resourceStoreDtos.get(0).getMiniStock())) {
+ throw new IllegalArgumentException("鏈�灏忚閲忔�绘暟涓嶈兘涓虹┖锛�");
+ }
+ //鑾峰彇閲囪喘鍓嶇墿鍝佹渶灏忚閲忔�绘暟
+ BigDecimal miniStock = new BigDecimal(resourceStoreDtos.get(0).getMiniStock());
+ //璁$畻閲囪喘鐨勭墿鍝佹渶灏忚閲忔�绘暟
+ BigDecimal purchaseQuantity = new BigDecimal(purchaseApplyDetailPo.getPurchaseQuantity());
+ BigDecimal purchaseMiniStock = purchaseQuantity.multiply(miniUnitStock);
+ //璁$畻閲囪喘鍚庣墿鍝佹渶灏忚閲忔�绘暟
+ BigDecimal nowMiniStock = miniStock.add(purchaseMiniStock);
+ resourceStorePo.setMiniStock(String.valueOf(nowMiniStock));
resourceStoreInnerServiceSMOImpl.updateResourceStore(resourceStorePo);
}
-
+ //鑾峰彇璁㈠崟鍙�
+ String applyOrderId = purchaseApplyPo.getApplyOrderId();
+ PurchaseApplyPo purchaseApply = new PurchaseApplyPo();
+ purchaseApply.setApplyOrderId(applyOrderId);
+ purchaseApply.setState(PurchaseApplyDto.STATE_AUDITED);
+ purchaseApply.setStatusCd("0");
+ purchaseApplyInnerServiceSMOImpl.updatePurchaseApply(purchaseApply);
return ResultVo.createResponseEntity(ResultVo.CODE_OK, "閲囪喘鐢宠鎴愬姛");
}
}
--
Gitblit v1.8.0