From 487efa77734b61ca5a88c0e249fc3274d1a19696 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期三, 20 一月 2021 18:17:06 +0800
Subject: [PATCH] 去除柜门未关

---
 src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java |   31 +++++++++++++++++++++++++------
 1 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
index 5c4d719..7442c85 100644
--- a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
@@ -1030,8 +1030,16 @@
         if (containerCode==null||containerCode.isEmpty()) {
             throw new ApiException(ApiStatus.PARAM_NO_EXIST, ApiStatus.PARAM_NO_EXIST.getRetMsg() + "[containerCode]");
         }
-
-        return sysUserDao.getUserListByContainerCodeNew(containerCode, startTime, endTime);
+        List<String> projects = sysLaboratoryContainer.selectProjectsByContainerCode(containerCode);
+        List<SysUser> userList = null;
+        if (projects != null) {
+            userList = new ArrayList<>();
+            for (String project : projects) {
+                List<SysUser> dataList = sysUserDao.getUserListByProject(project, startTime, endTime);
+                userList.addAll(dataList);
+            }
+        }
+        return userList;
     }
 
 
@@ -1261,6 +1269,10 @@
                     logger.error("The containerCode has not been exists!");
                 }
 			}
+			//-1 状态
+			if (status.equals(-1)){
+                continue;
+            }
  			opeReagentStatusDao.syncOpeReagentStatus(params);
 
     	 }
@@ -1347,7 +1359,7 @@
 
     // 人员违规预警接口
     @Override
-    public void alarmperson(JSONObject jsonObject) throws ApiException, IOException {
+    public void alarmperson(JSONObject jsonObject) throws Exception {
 		JSONArray dataArr = jsonObject.getJSONArray("data");
 
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -1406,12 +1418,19 @@
             Timestamp warnTime;
 			try {
 				Date warningTime = sdf.parse(warningTimeStr);
+				//不接收时间超过现在的数据
+                if (warningTime.after(new Date())) {
+                    throw new  Exception("柜子时间发生错误");
+                }
                 warnTime = new Timestamp(warningTime.getTime());
                 sysAlarmPerson.setWarningTime(warnTime);
 			} catch (ParseException e) {
 				throw new ApiException(ApiStatus.PARAM_ERR);
-			}
-			// 将人员违规预警记录保存到数据库表
+			} catch (Exception e) {
+                e.printStackTrace();
+                throw new Exception(e.getMessage());
+            }
+            // 将人员违规预警记录保存到数据库表
             int count = sysAlarmPersonDao.repeatedJudgment(containerCode, warningLevelInt, warnTime);
 			if (count<1){
 			    //获取实验室条码和具体地点
@@ -1429,7 +1448,7 @@
                 }
                 //给daping系统发送信息
 
-                if(!"".equals(alarmUrl) && ("1".equals(warningId) || "2".equals(warningId)|| "6".equals(warningId)) ) {
+                if(!"".equals(alarmUrl) && ("1".equals(warningId) || "2".equals(warningId))){
                     JSONObject json = new JSONObject();
                     json.put("barCode", location.get("barCode"));
                     json.put("type", alarmType);

--
Gitblit v1.9.2