From 422622d3121acde709e79ca9b92f30c47e05272c Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期日, 07 二月 2021 14:38:12 +0800
Subject: [PATCH] 修改枪领用

---
 src/main/java/com/nanometer/smartlab/api/ApiAction.java |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index 895fbec..f87a8a5 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -577,7 +577,7 @@
         logger.info("getUserInfo start...");
 
         List<SysUser> userList = sysUserService.getSysUserInfoList(startTime, endTime);
-        List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null);
+        List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null,null,null);
         List<SysWarehouseContainer> allWarehouseContainerList = sysWarehouseContainerService.getSysWarehouseContainerList(null,null,null,null,null);
 
         List<String> containerCodeList = new ArrayList<String>();
@@ -1301,6 +1301,7 @@
         try {
 
             if (inWarehouseInfo.getReagentCode() != null && inWarehouseInfo.getReagentCode().size() > 0) {
+                ReagentReceivingDto reagentReceivingDtos = new ReagentReceivingDto();
 
                 for (int i = 0; i < inWarehouseInfo.getReagentCode().size(); i++) {
                     String code = inWarehouseInfo.getReagentCode().get(i);
@@ -1321,11 +1322,30 @@
                     if (ors != null) {
                         return ResponseModel.getErrInstance("该试剂危化品编码已存在");
                     }
-
                 }
 
-                //3.入库
+                //3.如果是入智能柜,则该智能柜下需要存在对应的实验室和实验室柜子
+                SysWarehouseContainer sysWarehouseContainer = sysWarehouseContainerService.getSysWarehouseContainer(inWarehouseInfo.getContainerId());
+                if(this.baseMetaService.getBaseMetaKey(sysWarehouseContainer.getType()).equals("200")) {
+                    reagentReceivingDtos.setReagentCode(inWarehouseInfo.getReagentCode());
+                    reagentReceivingDtos.setApplyUserId(inWarehouseInfo.getUser());
+                    SysLaboratoryContainer sysLaboratoryContainer = sysLaboratoryContainerService.getSysLaboratoryContainerByContainerCode(sysWarehouseContainer.getContainerCode());
+                    if (null != sysLaboratoryContainer){
+                        reagentReceivingDtos.setLabId(sysLaboratoryContainer.getLaboratoryId());
+                        reagentReceivingDtos.setLabContainerId(sysLaboratoryContainer.getId());
+                    }else {
+                        return ResponseModel.getErrInstance("该仓库货柜为智能柜,但是未创建相同货柜条码的实验室临时存储柜");
+                    }
+                }
+
+                //4.入库
                 sysWarehouseService.putInWarehouse(inWarehouseInfo);
+
+                //5.如果是入智能柜,则需再领用到智能柜里
+                if (StringUtils.isNotBlank(reagentReceivingDtos.getLabContainerId())){
+                    sysWarehouseService.reagentReceiving(reagentReceivingDtos);
+                }
+
                 return ResponseModel.getOkInstence("入库成功");
             } else {
                 return ResponseModel.getErrInstance("无试剂条码");
@@ -1569,7 +1589,7 @@
                 hazardousWaste.setMedical(new BigDecimal(0));
             }
             hazardousWaste.setUpdator(hazardousWaste.getCreator());
-            hazardousWaste.setUpdatetime(new Date());
+//            hazardousWaste.setUpdatetime(new Date());
             hazardousWasteService.insertInfo(hazardousWaste);
             return ResponseModel.getOkInstence("添加成功");
         }catch (Exception e){

--
Gitblit v1.9.2