From 6d4517c51c0e0d528167c5faa2a5b70a74498e0a Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期三, 31 三月 2021 17:31:20 +0800
Subject: [PATCH] 修改柜子接口

---
 src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java      |    2 
 src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java |    9 ++-
 src/main/java/com/nanometer/smartlab/api/ApiAction.java                |  112 ++++++++++++++++++++-----------------
 3 files changed, 68 insertions(+), 55 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index f87a8a5..7789cf4 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -316,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 {
@@ -352,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();
 
@@ -437,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
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java
index 3df1220..af8b446 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java
@@ -37,7 +37,7 @@
 
     List<OpeReagentStatus> getOpeReagentStatusInfoList(Map params) throws DataAccessException;
 
-    void syncOpeReagentStatus(Map params) throws DataAccessException;
+    int syncOpeReagentStatus(Map params) throws DataAccessException;
 
     int updateOpeReagentStatusForInterface(OpeReagentStatus opeReagentStatus);
 
diff --git a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
index 92ab7b4..b773749 100644
--- a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
@@ -1254,7 +1254,8 @@
                     logger.error("The containerCode has not been exists!");
                     continue;
                 }
-			} else if (status.equals(2)){
+			}
+			else if (status.equals(2)){
 				/*SysWarehouseContainer container = sysWarehouseContainerDao
 						.getSysWarehouseContainerByContainerCode(containerCode);
 				if (Objects.isNull(container) == false) {
@@ -1278,8 +1279,10 @@
 			if (status.equals(-1)){
                 continue;
             }
- 			opeReagentStatusDao.syncOpeReagentStatus(params);
-
+ 			int i = opeReagentStatusDao.syncOpeReagentStatus(params);
+            if (i < 1){
+                opeReagentStatusDao.syncOpeReagentStatus(params);
+            }
     	 }
     }
 

--
Gitblit v1.9.2