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 | 42 +++++++++++++++++++++++++----------------- 1 files changed, 25 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java index c26f32f..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; @@ -94,7 +94,7 @@ @Transactional(propagation = Propagation.REQUIRED) public List<OpeWarehouseReserve> getOpeWarehouseReserveListByName(String reagentId, String supplierId, Integer first, - Integer pageSize,String productSn) { + Integer pageSize,String productSn,String warehouseName) { try { Map<String, Object> params = new HashMap<String, Object>(); params.put("reagentName", reagentId); @@ -102,6 +102,7 @@ params.put("first", first); params.put("pageSize", pageSize); params.put("productSn", productSn); + params.put("warehouseName", warehouseName); return this.opeWarehouseReserveDao.getOpeWarehouseReserveList(params); } catch (DataAccessException e) { logger.error(e.getMessage(), e); @@ -111,12 +112,13 @@ } @Transactional(propagation = Propagation.REQUIRED) - public int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn) { + public int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn,String warehouseName) { try { Map<String, Object> params = new HashMap<String, Object>(); params.put("reagentName", reagentId); params.put("supplierId", supplierId); params.put("productSn", productSn); + params.put("warehouseName", warehouseName); return this.opeWarehouseReserveDao.getOpeWarehouseReserveTotalCount(params); } catch (DataAccessException e) { logger.error(e.getMessage(), e); @@ -235,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); } //更新是现实库存 @@ -594,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(); @@ -616,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); } @@ -675,7 +678,7 @@ } @Override - public void btWarehouseReserveReduce(List<OpeApplyReserve> opeList,String userId) { + public void btWarehouseReserveReduce(List<OpeApplyReserve> opeList) { if (opeList.size() < 1) { return; } @@ -686,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(); @@ -710,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()); @@ -725,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; } @@ -819,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()); @@ -827,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