From a061540bf4c2bdb81edc3898cd27f4ba18512846 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: Thu, 22 Apr 2021 11:47:43 +0800
Subject: [PATCH] 实验室库存导出
---
src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java | 42 ++++++++++++++++--------------------------
1 files changed, 16 insertions(+), 26 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
index bbbd518..d63916b 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;
@@ -205,7 +205,7 @@
}
}
- @Transactional(propagation = Propagation.REQUIRED)
+ @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
public boolean updateOpeWarehouseReserve(OpeWarehouseReserve opeWarehouseReserve) {
try {
int row = this.opeWarehouseReserveDao.updateOpeWarehouseReserve(opeWarehouseReserve);
@@ -225,26 +225,14 @@
}
}
- @Transactional(propagation = Propagation.REQUIRED)
+ @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
public void claimForPerson(List<OpeApplyReserve> selectedListForPerson,String userId,String projectNum,String laboratoryId,String laboratoryContainerId){
try{
for(OpeApplyReserve app:selectedListForPerson){
List<String> reagentCodes = app.getReagentCode();
if (reagentCodes != null && reagentCodes.size() > 0) {
- List<OpeReagentStatus> ss=new ArrayList<>();
- for (String opeReagentStatusId : reagentCodes) {
- OpeReagentStatus opeReagentStatus = this.opeReagentStatusService.getOpeReagentStatus(opeReagentStatusId);
- 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(reagentCodes,userId,projectNum,laboratoryId,laboratoryContainerId);
- }
//更新是现实库存
OpeLaboratoryReserve lr=new OpeLaboratoryReserve();
lr.setReagentId(app.getReagent().getId());
@@ -295,6 +283,9 @@
logger.error(ex.getMessage(), ex);
throw new BusinessException(ExceptionEnumCode.DB_ERR,
MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex);
+ }catch(Exception e){
+ e.printStackTrace();
+ throw new RuntimeException(e);
}
}
@@ -598,8 +589,7 @@
@Transactional
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();
@@ -623,7 +613,7 @@
opeWarehouseReserveDao.insertOpeWarehouseReserve2(ope);
}else {
ope.setReserve(ope.getReserve() + opeApplyReserve.getArrivalNum());
- this.opeWarehouseReserveService.updateOpeWarehouseReserve(ope);
+ this.updateOpeWarehouseReserve(ope);
}
@@ -690,7 +680,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();
@@ -738,9 +728,9 @@
}
-
+
//更新库存
- opeWarehouseReserveService.updateBtReserve(warehouseReserve.getId(),usedNum);
+ this.updateBtReserve(warehouseReserve.getId(),usedNum);
if (numLeave < 1) {
break;
}
@@ -827,7 +817,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());
@@ -839,9 +829,9 @@
}
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