From dac136a54c51842a9cd9abd97c236b43cb48d169 Mon Sep 17 00:00:00 2001 From: 李宇 <986321569@qq.com> Date: 星期五, 09 四月 2021 16:10:42 +0800 Subject: [PATCH] 修改库中领取无法打印领用单 --- src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java | 27 ++++++++++++--------------- 1 files changed, 12 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 ea5a824..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,6 +47,7 @@ @Resource private OpeReagentStatusService opeReagentStatusService; + @Lazy @Resource private OpeUseFlowService opeUseFlowService; @@ -203,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); @@ -223,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()); @@ -293,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); } } @@ -726,7 +719,11 @@ 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); + } } -- Gitblit v1.9.2