From cf6b965a86065a537a40c74f67e88a04447d2582 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期一, 12 七月 2021 18:00:38 +0800
Subject: [PATCH] 修改导入申购

---
 src/main/java/com/nanometer/smartlab/api/ApiAction.java |  202 ++++++++++++++++++++++++++++++++++---------------
 1 files changed, 139 insertions(+), 63 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index c13f87d..7789cf4 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -28,6 +28,7 @@
 import org.apache.shiro.subject.Subject;
 import org.primefaces.context.RequestContext;
 import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
@@ -49,46 +50,55 @@
 public class ApiAction extends BaseAction {
 
     private static Logger logger = Logger.getLogger(ApiAction.class);
-
+    @Lazy
     @Resource
     private SysUserService sysUserService;
+    @Lazy
     @Resource
     private OpeReagentStatusService opeReagentStatusService;
-    @Resource
-    private SysReagentService sysReagentService;
+    @Lazy
     @Resource
     private SysWarehouseContainerService sysWarehouseContainerService;
+    @Lazy
     @Resource
     private SysLaboratoryContainerService sysLaboratoryContainerService;
+    @Lazy
     @Resource
     private BaseMetaService baseMetaService;
+    @Lazy
     @Resource
     private InterfaceService interfaceService;
+    @Lazy
     @Resource
     private SysWarehouseService sysWarehouseService;
-
-    @Resource
-    private SysWarningService sysWarningService;
-
+    @Lazy
     @Resource
     private TempSensorsService tempSensorsService;
-
+    @Lazy
     @Resource
     private SysFileService sysFileService;
+    @Lazy
     @Resource
     private SysLaboratoryContainerDao sysLaboratoryContainerDao;
+    @Lazy
     @Resource
     private SysWarehouseContainerDao sysWarehouseContainerDao;
+    @Lazy
     @Resource
     private DangerousEncodeService dangerousEncodeService;
+    @Lazy
     @Resource
     private EncodeReplaceDictService encodeReplaceDictService;
+    @Lazy
     @Resource
     private SysLaboratoryService sysLaboratoryService;
+    @Lazy
     @Resource
     private HazardousWasteService hazardousWasteService;
+    @Lazy
     @Resource
     private OpeLaboratoryReserveService opeLaboratoryReserveService;
+    @Lazy
     @Resource
     private OpeUseFlowService opeUseFlowService;
     @Value("${institute.url}")
@@ -306,7 +316,7 @@
         return retJSON.toJSONString();
     }
 
-    // 报送试剂最新信息接口
+    // 报送试剂最新信息接口 只更新试剂状态ope_regeant_status表  0, "领用" 1, "入库" 2, "存入" 3, "报废" -1, "领用待入库"
     @ResponseBody
     @RequestMapping(value = "/synchAllCabinet")
     public String synchAllCabinet(HttpServletRequest request) throws IOException {
@@ -342,6 +352,66 @@
             retJSON.put("message", e.getErrorMessage());
         } catch (Exception e) {
             e.printStackTrace();
+            retJSON.put("code", ApiStatus.SYS_ERR.getRetCode());
+            StackTraceElement[] stackTraceElements = e.getStackTrace();
+
+            StringBuilder sb = new StringBuilder();
+            sb.append(e.toString());
+            for (StackTraceElement stackTraceElement : stackTraceElements) {
+                sb.append("\n");
+                sb.append(stackTraceElement.toString());
+            }
+            retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString());
+        }
+        return retJSON.toJSONString();
+    }
+
+    // 出入库记录信息接口 更新试剂流向ope_use_flow表
+//    操作状态	2	领用
+//    操作状态	4	错误存放
+//    操作状态	1	错误入库
+//    操作状态	6	转移	智能柜试剂转移到另一个柜子
+//    操作状态	5	报废
+//    操作状态	3	存放
+//    操作状态	0	入库
+//    操作状态	11	仓库领用
+//    操作状态	10	仓库入库
+    @ResponseBody
+    @RequestMapping(value = "/cabinetData")
+    public String cabinetData(HttpServletRequest request) throws IOException {
+        BufferedReader br = request.getReader();
+        String str, data = "";
+        while((str = br.readLine()) != null){
+            data += str;
+        }
+        JSONObject retJSON = new JSONObject();
+        logger.info("cabinetData" + data);
+        String userId = request.getHeader("userId");
+
+        // Body参数
+        JSONObject bodyJSONObject = new JSONObject();
+        bodyJSONObject = JSONObject.parseObject(data);
+
+        // 主控条码
+        String controllerCode = bodyJSONObject.getString("controllerCode");
+
+        try {
+            // 数据
+            String dataStr = bodyJSONObject.getString("data");
+            JSONArray dataJSONArray = JSONArray.parseArray(dataStr);
+            logger.info("dataJSONArray: " + dataJSONArray);
+
+
+            if(	dataJSONArray.size() !=0 ){
+                interfaceService.cabinetData(dataJSONArray);
+            }
+
+            retJSON.put("code", ApiStatus.OK.getRetCode());
+            retJSON.put("message", ApiStatus.OK.getRetMsg());
+        } catch (ApiException e) {
+            retJSON.put("code", e.getApiStatus().getRetCode());
+            retJSON.put("message", e.getErrorMessage());
+        } catch (Exception e) {
             retJSON.put("code", ApiStatus.SYS_ERR.getRetCode());
             StackTraceElement[] stackTraceElements = e.getStackTrace();
 
@@ -427,56 +497,6 @@
         return retJSON.toJSONString();
     }
 
-    // 出入库记录信息接口
-    @ResponseBody
-    @RequestMapping(value = "/cabinetData")
-    public String cabinetData(HttpServletRequest request) throws IOException {
-    	BufferedReader br = request.getReader();
-        String str, data = "";
-        while((str = br.readLine()) != null){
-            data += str;
-        }
-        JSONObject retJSON = new JSONObject();
-        logger.info("cabinetData" + data);
-        String userId = request.getHeader("userId");
-
-        // Body参数
-        JSONObject bodyJSONObject = new JSONObject();
-        bodyJSONObject = JSONObject.parseObject(data);
-
-        // 主控条码
-        String controllerCode = bodyJSONObject.getString("controllerCode");
-
-        try {
-            // 数据
-            String dataStr = bodyJSONObject.getString("data");
-            JSONArray dataJSONArray = JSONArray.parseArray(dataStr);
-            logger.info("dataJSONArray: " + dataJSONArray);
-
-
-            if(	dataJSONArray.size() !=0 ){
-            	interfaceService.cabinetData(dataJSONArray);
-            }
-
-            retJSON.put("code", ApiStatus.OK.getRetCode());
-            retJSON.put("message", ApiStatus.OK.getRetMsg());
-        } catch (ApiException e) {
-            retJSON.put("code", e.getApiStatus().getRetCode());
-            retJSON.put("message", e.getErrorMessage());
-        } catch (Exception e) {
-            retJSON.put("code", ApiStatus.SYS_ERR.getRetCode());
-            StackTraceElement[] stackTraceElements = e.getStackTrace();
-
-            StringBuilder sb = new StringBuilder();
-            sb.append(e.toString());
-            for (StackTraceElement stackTraceElement : stackTraceElements) {
-                sb.append("\n");
-                sb.append(stackTraceElement.toString());
-            }
-            retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString());
-        }
-        return retJSON.toJSONString();
-    }
 
     //http://[URL]/smartlab/api/service/containerInfo
     @ResponseBody
@@ -567,7 +587,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>();
@@ -1291,6 +1311,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);
@@ -1311,11 +1332,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("无试剂条码");
@@ -1559,7 +1599,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){
@@ -1717,4 +1757,40 @@
             return ResponseModel.getErrInstance("系统出错");
         }
     }
+
+    // 处理人员违规预警接口
+    @ResponseBody
+    @RequestMapping(value = "/delalarmperson")
+    public String delalarmperson(HttpServletRequest request) throws IOException {
+        logger.info("/api/service/delalarmperson");
+        BufferedReader br = request.getReader();
+        String str, data = "";
+        while((str = br.readLine()) != null){
+            data += str;
+        }
+        logger.info("delalarmperson" + data);
+//        String userId = request.getHeader("userId");
+        JSONObject retJSON = new JSONObject();
+        try {
+            interfaceService.delalarmperson(JSONObject.parseObject(data));
+
+            retJSON.put("code", ApiStatus.OK.getRetCode());
+            retJSON.put("message", ApiStatus.OK.getRetMsg());
+        } catch (ApiException e) {
+            retJSON.put("code", e.getApiStatus().getRetCode());
+            retJSON.put("message", e.getErrorMessage());
+        } catch (Exception e) {
+            retJSON.put("code", ApiStatus.SYS_ERR.getRetCode());
+            StackTraceElement[] stackTraceElements = e.getStackTrace();
+
+            StringBuilder sb = new StringBuilder();
+            sb.append(e.toString());
+            for (StackTraceElement stackTraceElement : stackTraceElements) {
+                sb.append("\n");
+                sb.append(stackTraceElement.toString());
+            }
+            retJSON.put("message", ApiStatus.SYS_ERR.getRetMsg() + "--" + sb.toString());
+        }
+        return retJSON.toJSONString();
+    }
 }

--
Gitblit v1.9.2