From a9e0d22a72501f56b1084d0e6e8dccf0166e3250 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期三, 31 三月 2021 15:28:31 +0800
Subject: [PATCH] UPDATE

---
 src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java |   36 +++++++++++++++++++++---------------
 1 files changed, 21 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
index 8f5995c..2cf787e 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
@@ -16,6 +16,7 @@
 
 import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.dao.DataAccessException;
 import org.springframework.dao.DataIntegrityViolationException;
 import org.springframework.dao.DuplicateKeyException;
@@ -46,10 +47,9 @@
 	@Resource
 	private OpeReagentStatusService opeReagentStatusService;
 
+	@Lazy
     @Resource
     private OpeUseFlowService opeUseFlowService;
-    @Resource
-    private OpeWarehouseReserveService opeWarehouseReserveService;
 
     @Resource(name="baseMetaDao")
     private BaseMetaDao baseMetaDao;
@@ -237,12 +237,12 @@
 						opeReagentStatus.setUserId(userId);
 						opeReagentStatus.setProjectNum(projectNum);
 						//boolean flag = this.opeReagentStatusService.updateReagentStatus(opeReagentStatus);
-						this.opeReagentStatusService.updateReagentStatus3(opeReagentStatus);
 						ss.add(opeReagentStatus);
 						//更新试剂状态和
 						opeReagentStatus.setHouseId(laboratoryId);
 						opeReagentStatus.setContainerId(laboratoryContainerId);
 						this.opeReagentStatusDao.updateOpeReagentStatusDao(opeReagentStatus);
+						this.opeReagentStatusService.updateReagentStatus3(opeReagentStatus);
 
 					}
 					//更新是现实库存
@@ -596,10 +596,9 @@
 
     @Override
 	@Transactional
-    public void insertOpeWarehouseReserve2(OpeApplyReserve opeApplyReserve, OpeOrder oo) {
+    public void insertOpeWarehouseReserve2(OpeApplyReserve opeApplyReserve, OpeOrder oo,String consigneeId) {
 
-		OpeWarehouseReserve ope = this.opeWarehouseReserveService
-				.getOpeWarehouseReserve2(opeApplyReserve.getReagent().getId(), opeApplyReserve.getArticleNumber(),opeApplyReserve.getHouseId());
+		OpeWarehouseReserve ope = this.getOpeWarehouseReserve2(opeApplyReserve.getReagent().getId(), opeApplyReserve.getArticleNumber(),opeApplyReserve.getHouseId());
 		if (ope == null) {
 
 			ope = new OpeWarehouseReserve();
@@ -618,10 +617,12 @@
 			//批号
 			ope.setArticleNumber(opeApplyReserve.getArticleNumber());
 			ope.setId(IDUtils.uuid());
+			//新增收货人 保存在仓库库存表
+			ope.setUserId(consigneeId);
 			opeWarehouseReserveDao.insertOpeWarehouseReserve2(ope);
 		}else {
 			ope.setReserve(ope.getReserve() + opeApplyReserve.getArrivalNum());
-			this.opeWarehouseReserveService.updateOpeWarehouseReserve(ope);
+			this.updateOpeWarehouseReserve(ope);
 		}
 
 
@@ -677,7 +678,7 @@
 	}
 
 	@Override
-	public void btWarehouseReserveReduce(List<OpeApplyReserve> opeList,String userId) {
+	public void btWarehouseReserveReduce(List<OpeApplyReserve> opeList) {
 		if (opeList.size() < 1) {
 			return;
 		}
@@ -688,7 +689,7 @@
 			List<OpeWarehouseReserve> cacheUpdateList = oar.getCacheUpdateList();
 			for (OpeWarehouseReserve owr : cacheUpdateList) {
 				//1.根据仓库id和试剂id搜索不同批号的试剂库存
-				List<OpeWarehouseReserve> reserveList = opeWarehouseReserveService
+				List<OpeWarehouseReserve> reserveList = this
 						.selectWarehouseByRidAndArticleNumberAndWarehouse(reagentId, owr.getArticleNumber(), owr.getWarehouseId());
 				Integer numLeave = owr.getUseNum();
 
@@ -712,7 +713,7 @@
 							OpeUseFlow opeUseFlow = new OpeUseFlow();
 							opeUseFlow.setReagentCode(reagentCodes.get(0));
 							opeUseFlow.setStatus(ArrivalStatus.WAREHOUSE);
-							opeUseFlow.setUserId(userId);
+							opeUseFlow.setUserId(warehouseReserve.getUserId());
 							//仓库地点
 							opeUseFlow.setHouseId(warehouseReserve.getWarehouseId());
 							opeUseFlow.setContainerId(warehouseReserve.getContainerId());
@@ -727,14 +728,18 @@
 							List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap);
 							opeUseFlow.setOperateState(baseMetaList.get(0).getId());
 							this.opeUseFlowService.insertOpeUseFlow(opeUseFlow);
+							//更新试剂状态表 :批号
+							opeReagentStatusDao.updateArticleNumberByRCode(reagentCodes.get(0),warehouseReserve.getArticleNumber());
+
 							reagentCodes.remove(0);
+
 						}
 
 					}
 
-					
+
 					//更新库存
-					opeWarehouseReserveService.updateBtReserve(warehouseReserve.getId(),usedNum);
+					this.updateBtReserve(warehouseReserve.getId(),usedNum);
 					if (numLeave < 1) {
 						break;
 					}
@@ -821,7 +826,7 @@
 
 
             // 仓库库存update
-            opeWarehouseReserve = this.opeWarehouseReserveService.getOpeWarehouseReserve2(opeApply.getReagent().getId(), opeApply.getArticleNumber(),opeApply.getHouseId());
+            opeWarehouseReserve = this.getOpeWarehouseReserve2(opeApply.getReagent().getId(), opeApply.getArticleNumber(),opeApply.getHouseId());
             if (opeWarehouseReserve == null) {
                 opeWarehouseReserve = new OpeWarehouseReserve();
                 opeWarehouseReserve.setReagentId(opeApply.getReagent().getId());
@@ -829,12 +834,13 @@
                 opeWarehouseReserve.setReserve(0);
                 opeWarehouseReserve.setWarehouseId(opeApply.getHouseId());
                 opeWarehouseReserve.setContainerId(opeApply.getContainerId());
+                opeWarehouseReserve.setUserId(loginUserId);
             }
             opeWarehouseReserve.setReserve(opeWarehouseReserve.getReserve() + opeApply.getArrivalNum());
             if (StringUtils.isBlank(opeWarehouseReserve.getId())) {
-                this.opeWarehouseReserveService.insertOpeWarehouseReserve(opeWarehouseReserve);
+                this.insertOpeWarehouseReserve(opeWarehouseReserve);
             } else {
-                this.opeWarehouseReserveService.updateOpeWarehouseReserve(opeWarehouseReserve);
+                this.updateOpeWarehouseReserve(opeWarehouseReserve);
             }
         }
 	}

--
Gitblit v1.9.2