From 78ea95ba31e63279b46d47c5c9ca983f3e0c8d47 Mon Sep 17 00:00:00 2001
From: gdg <764716047@qq.com>
Date: 星期二, 26 一月 2021 18:08:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master
---
src/main/java/com/nanometer/smartlab/service/HazardousWasteServiceImpl.java | 5
src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml | 13 ++
src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.xml | 12 +
src/main/java/com/nanometer/smartlab/service/InterfaceService.java | 4
src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.java | 2
src/main/java/com/nanometer/smartlab/service/SysWarningServiceImpl.java | 6
src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 5
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java | 12 +
src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java | 59 +++++++++
src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java | 2
src/main/java/com/nanometer/smartlab/service/HazardousWasteService.java | 2
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml | 55 +++++---
src/main/java/com/nanometer/smartlab/api/ApiAction.java | 69 +++++++++++
src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.xml | 50 +++++--
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java | 2
智慧实验室接口.docx | 0
src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.java | 5
src/main/webapp/WEB-INF/test/test.properties | 2
18 files changed, 251 insertions(+), 54 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index 9f38637..4ce057e 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -1576,7 +1576,7 @@
*/
@ResponseBody
@RequestMapping("hazardousWaste/getWasteInfo")
- public Object getLabAndUser(@RequestParam(required=true) int adminFlag,@RequestParam(required=true) String name,@RequestParam(required=false) String status
+ public Object getWasteInfo(@RequestParam(required=true) int adminFlag,@RequestParam(required=true) String name,@RequestParam(required=false) String status
,@RequestParam(required=false) String starttime,@RequestParam(required=false) String endtime){
try {
if (StringUtils.isBlank(name)){
@@ -1601,7 +1601,7 @@
*/
@ResponseBody
@RequestMapping("hazardousWaste/changeStatus")
- public Object getLabAndUser(@RequestParam(required=true) String tid,@RequestParam(required=true) String status,
+ public Object changeStatus(@RequestParam(required=true) String tid,@RequestParam(required=true) String status,
@RequestParam(required=true) String updator){
try {
if (StringUtils.isBlank(tid) || StringUtils.isBlank(status)){
@@ -1688,4 +1688,69 @@
}
+ /**
+ * 根据用户名获取危废全年统计列表
+ *
+ */
+ @ResponseBody
+ @RequestMapping("hazardousWaste/getWasteStatistics")
+ public Object getWasteStatistics(@RequestParam(required=true) int adminFlag,@RequestParam(required=true) String name){
+ try {
+ if (StringUtils.isBlank(name)){
+ return ResponseModel.getErrInstance("姓名不能为空");
+ }
+ Calendar calendar = Calendar.getInstance();
+ int year = calendar.get(Calendar.YEAR);
+ String status = "已确认";
+ String starttime = year+"-01-01 00:00:00";
+ String endtime = year+"-12-31 23:59:59";
+ List<HazardousWaste> hazardousWasters = new ArrayList<>();
+ if (adminFlag == 2){
+ hazardousWasters = hazardousWasteService.setAllWasterCount(starttime,endtime,status,null);
+ }else if (adminFlag == 1) {
+ hazardousWasters = hazardousWasteService.setAllWasterCount(starttime,endtime,status,name);
+ }
+ return ResponseModel.getOkInstence(hazardousWasters);
+ }catch (Exception e){
+ e.printStackTrace();
+ logger.info(e);
+ 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();
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java b/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
index 54fcbcd..66eeb1d 100644
--- a/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/ReagentMngController.java
@@ -662,7 +662,7 @@
throw new Exception("导入文件格式不正确");
}*/
- for (int t = 0; t < totalCells; t++) {
+ for (int t = 0; t <= totalCells; t++) {
//System.out.println(row.getCell(t));
String cellInfo="";
String groupId = "";
diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
index 4b6dcb6..fe55ece 100644
--- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -451,6 +451,11 @@
if(sysUser.getPassword()==null || sysUser.getPassword().equals("")){
sysUser.setPassword(this.editPasswor);
}else {
+ String PW_PATTERN = "(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[~!@#$%^&*_.]).{8,}";
+ if (!sysUser.getPassword().matches(PW_PATTERN)){
+ FacesUtils.warn("密码必须8位以上,并且包含大小写字母、数字、特殊符号三种以上");
+ return;
+ }
sysUser.setPassword(MD5Utils.encode(sysUser.getPassword()));
}
this.sysUserService.updateSysUser(sysUser);
diff --git a/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.java b/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.java
index 1f24a3a..5825e2e 100644
--- a/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.java
+++ b/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.java
@@ -33,4 +33,6 @@
List<HazardousWaste> setAllWasters(@Param("starttime") String starttime,@Param("endtime") String endtime,@Param("status") String status,@Param("applyPerson") String applyPerson);
HazardousWaste selectByTid(@Param("tid") String tid);
+
+ List<HazardousWaste> setAllWasterCount(@Param("starttime") String starttime,@Param("endtime") String endtime,@Param("status") String status,@Param("applyPerson") String applyPerson);
}
diff --git a/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.xml b/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.xml
index b6b49f4..1d5b686 100644
--- a/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/HazardousWasteMapper.xml
@@ -226,17 +226,37 @@
updatetime = #{updatetime,jdbcType=TIMESTAMP}
where id = #{id,jdbcType=BIGINT}
</update>
- <select id="setAllWasters" resultMap="BaseResultMap">
+ <select id="setAllWasterCount" resultType="com.nanometer.smartlab.entity.HazardousWaste">
+ select
+ sum(acid) as acid,sum(alkali) as alkali, sum(organic) as organic,sum(solid) as solid,sum(medical) as medical
+ from sys_hazardous_waste
+ <where>
+ 1 = 1
+ <if test="starttime != null and starttime != ''">
+ and create_time >= #{starttime}
+ </if>
+ <if test="endtime != null and endtime != ''">
+ and create_time <= #{endtime}
+ </if>
+ <if test="status != null and status != ''">
+ and status = #{status}
+ </if>
+ <if test="applyPerson != null and applyPerson != ''">
+ and apply_person = #{applyPerson}
+ </if>
+ </where>
+ </select>
+ <select id="setAllWasters" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from sys_hazardous_waste
<where>
1 = 1
<if test="starttime != null and starttime != ''">
- and create_time > #{starttime}
+ and create_time >= #{starttime}
</if>
<if test="endtime != null and endtime != ''">
- and create_time < #{endtime}
+ and create_time <= #{endtime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -255,10 +275,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -289,10 +309,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -319,10 +339,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -348,10 +368,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -376,10 +396,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
@@ -408,10 +428,10 @@
<where>
1 = 1
<if test="startTime != null and startTime != ''">
- and create_time > #{startTime}
+ and create_time >= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
- and create_time < #{endTime}
+ and create_time <= #{endTime}
</if>
<if test="status != null and status != ''">
and status = #{status}
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
index 1993ced..36ae49e 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
@@ -111,7 +111,18 @@
</insert>
<update id="updateOpeWarehouseReserve" parameterType="com.nanometer.smartlab.entity.OpeWarehouseReserve">
- update ope_warehouse_reserve set reagent_id=#{reagentId},warehouseId=#{warehouseId}, article_number=#{articleNumber}, reserve=#{reserve}, update_time=now()
+ update ope_warehouse_reserve
+ <set>
+ reagent_id=#{reagentId},
+ reserve=#{reserve},
+ update_time=now(),
+ <if test="articleNumber != null and articleNumber !=''">
+ article_number=#{articleNumber},
+ </if>
+ <if test="warehouseId != null and warehouseId !=''">
+ warehouseId=#{warehouseId},
+ </if>
+ </set>
where id=#{id}
</update>
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.java b/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.java
index 007933d..8852b43 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.java
+++ b/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.java
@@ -6,11 +6,14 @@
import com.nanometer.smartlab.entity.SysAlarmPerson;
import java.sql.Timestamp;
+import java.util.List;
import java.util.Map;
public interface SysAlarmPersonDao {
-
+
public void insertSysAlarmPerson(SysAlarmPerson sysAlarmPerson) throws DataAccessException;
int repeatedJudgment(@Param("containerCode") String containerCode, @Param("warningLevel") Integer warningLevel, @Param("warningTime")Timestamp warningTime);
+
+ List<SysAlarmPerson> selectByCode(@Param("containerCode") String containerCode,@Param("warningId") String warningid);
}
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.xml
index 711355f..c5bdf3d 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysAlarmPersonDao.xml
@@ -9,6 +9,7 @@
<result property="warningLevel" column="warning_level" typeHandler="com.nanometer.smartlab.entity.handler.WarningLevelHandler"></result>
<result property="userId" column="user_id"></result>
<result property="warningPoint" column="warning_point"></result>
+ <result property="refId" column="daping_alarm_id"/>
</resultMap>
<insert id="insertSysAlarmPerson" parameterType="com.nanometer.smartlab.entity.SysAlarmPerson">
@@ -24,5 +25,14 @@
and warning_time = #{warningTime}
and warning_level = #{warningLevel}
</select>
-
+ <select id="selectByCode" resultType="com.nanometer.smartlab.entity.SysAlarmPerson">
+ select
+ id,
+ container_code as containerCode,
+ warning_id as warningId,
+ daping_alarm_id as refId
+ from sys_warning
+ where container_code = #{containerCode}
+ and warning_id = #{warningId}
+ </select>
</mapper>
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java
index 934aae4..0fa11d9 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java
+++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.java
@@ -47,5 +47,5 @@
List<Map> exportExcelList(Map params);
- String selectProjectsByContainerCode(String containerCode);
+ List<String> selectProjectsByContainerCode(String containerCode);
}
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
index 85327fe..d96843d 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
@@ -30,14 +30,24 @@
</select>
<select id="getSysLaboratoryContainer" parameterType="java.lang.String" resultMap="SysLaboratoryContainer" >
- select su.*,ss.name as laboratoryName, ss.type as laboratoryType ,su.project project from sys_laboratory_container as su
+ select su.*,ss.name as laboratoryName, ss.type as laboratoryType ,su.project project
+ from sys_laboratory_container as su
left join sys_laboratory as ss on su.laboratory_id = ss.id
- where su.id = #{id} and su.valid_flag = 1
+ where su.id = #{id}
+ and su.valid_flag = 1
+ and ss.valid_flag = 1
</select>
<select id="getSysLaboratoryContainerByContainerCode" parameterType="java.lang.String" resultMap="SysLaboratoryContainer">
- select * from sys_laboratory_container
- where container_code = #{containerCode} and valid_flag = 1
+ SELECT
+ sys_laboratory_container.*
+ FROM
+ sys_laboratory_container
+ LEFT JOIN sys_laboratory on sys_laboratory.id = sys_laboratory_container.laboratory_id
+ WHERE
+ sys_laboratory_container.container_code = #{containerCode}
+ AND sys_laboratory_container.valid_flag = 1
+ AND sys_laboratory.valid_flag = 1
</select>
<select id="updateSysLabContainer" parameterType="java.util.Map" >
@@ -189,15 +199,15 @@
<select id="getContainerPersonInCharge" parameterType="java.lang.String" resultType="java.util.Map">
SELECT slc.container_code containCode,su.name name,su.phone phone,
-CONCAT(sl.location1,"-",sl.location2) location
-
-FROM sys_laboratory_container slc
-LEFT JOIN sys_laboratory sl on sl.id = slc.laboratory_id
-LEFT JOIN sys_user su on su.department = sl.department
-LEFT JOIN base_role br on br.id = su.role_id
-WHERE slc.container_code = #{containerCode}
-and su.valid_flag =1
-and br.`name` = '实验负责人'
+ CONCAT(sl.location1,"-",sl.location2) location
+ FROM sys_laboratory_container slc
+ LEFT JOIN sys_laboratory sl on sl.id = slc.laboratory_id
+ LEFT JOIN sys_user su on su.department = sl.department
+ LEFT JOIN base_role br on br.id = su.role_id
+ WHERE slc.container_code = #{containerCode}
+ and su.valid_flag =1
+ and sl.valid_flag =1
+ and br.`name` = '实验负责人'
</select>
@@ -211,13 +221,18 @@
LEFT JOIN sys_laboratory sl on sl.id = slc.laboratory_id
WHERE slc.container_code = #{containerCode}
and slc.valid_flag = 1
+ and sl.valid_flag = 1
</select>
- <select id="selectProjectsByContainerCode" resultType="java.lang.String">
- select project
- from sys_laboratory_container
- where container_code = #{0}
- and valid_flag = 1
- </select>
-
+ <select id="selectProjectsByContainerCode" resultType="java.lang.String">
+ SELECT
+ slc.project
+ FROM
+ sys_laboratory_container AS slc
+ LEFT JOIN sys_laboratory sl ON sl.id = slc.laboratory_id
+ WHERE
+ slc.container_code = #{0}
+ AND slc.valid_flag = 1
+ AND sl.valid_flag = 1
+ </select>
</mapper>
diff --git a/src/main/java/com/nanometer/smartlab/service/HazardousWasteService.java b/src/main/java/com/nanometer/smartlab/service/HazardousWasteService.java
index 55d5219..fd1882a 100644
--- a/src/main/java/com/nanometer/smartlab/service/HazardousWasteService.java
+++ b/src/main/java/com/nanometer/smartlab/service/HazardousWasteService.java
@@ -31,4 +31,6 @@
HazardousWaste selectByTid(String tid);
void updateWaste(HazardousWaste hazardousWaste);
+
+ List<HazardousWaste> setAllWasterCount(String starttime, String endtime, String status, String applyPerson);
}
diff --git a/src/main/java/com/nanometer/smartlab/service/HazardousWasteServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/HazardousWasteServiceImpl.java
index 5e8c800..12f8062 100644
--- a/src/main/java/com/nanometer/smartlab/service/HazardousWasteServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/HazardousWasteServiceImpl.java
@@ -162,4 +162,9 @@
hazardousWasteMapper.updateByPrimaryKeySelective(hazardousWaste);
}
+ @Override
+ public List<HazardousWaste> setAllWasterCount(String starttime, String endtime, String status, String applyPerson) {
+ return hazardousWasteMapper.setAllWasterCount(starttime, endtime, status, applyPerson);
+ }
+
}
diff --git a/src/main/java/com/nanometer/smartlab/service/InterfaceService.java b/src/main/java/com/nanometer/smartlab/service/InterfaceService.java
index a1b6143..2553bd7 100644
--- a/src/main/java/com/nanometer/smartlab/service/InterfaceService.java
+++ b/src/main/java/com/nanometer/smartlab/service/InterfaceService.java
@@ -23,7 +23,7 @@
public void synchAllCabinet(JSONArray jsonObject) throws ApiException;
public void alarm(JSONObject jsonObject) throws ApiException;
-
+
public void alarmperson(JSONObject jsonObject) throws Exception;
public void cabinetData(JSONArray jsonObject) throws ApiException;
@@ -39,4 +39,6 @@
public List<SysUser> getUserListByContainerCode(String containerCode, String startTime,String endTime) throws ApiException;
List<SysUser> getUserListByContainerCodeNew(String containerCode, String startTime, String endTime) throws ApiException;
+
+ public void delalarmperson(JSONObject jsonObject) throws Exception;
}
diff --git a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
index ddf7301..d197cf3 100644
--- a/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/InterfaceServiceImpl.java
@@ -33,6 +33,7 @@
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
+import java.util.stream.Collectors;
@Service("interfaceService")
public class InterfaceServiceImpl implements InterfaceService {
@@ -41,7 +42,10 @@
@Resource
private OpeUseFlowService opeUseFlowService;
-
+ @Resource
+ private SysWarningService sysWarningService;
+ @Resource(name = "sysWarningDao")
+ SysWarningDao sysWarningDao;
@Resource(name = "sysWarehouseDao")
SysWarehouseDao sysWarehouseDao;
@@ -1032,7 +1036,7 @@
}
List<String> projects = sysLaboratoryContainer.selectProjectsByContainerCode(containerCode);
List<SysUser> userList = null;
- if (projects != null) {
+ if (projects != null && projects.size() > 0){
userList = new ArrayList<>();
for (String project : projects) {
List<SysUser> dataList = sysUserDao.getUserListByProject(project, startTime, endTime);
@@ -1448,7 +1452,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);
@@ -1728,4 +1732,53 @@
public JSONObject getUserInfo(JSONObject jsonObject) {
return null;
}
+
+ // 人员违规预警接口
+ @Override
+ public void delalarmperson(JSONObject jsonObject) throws Exception {
+ JSONArray dataArr = jsonObject.getJSONArray("data");
+ Iterator<Object> dataIt = dataArr.iterator();
+ while (dataIt.hasNext()) {
+ JSONObject dataJson = JSONObject.parseObject(dataIt.next().toString());
+ // 货柜条码 containerCode String ○
+ // 报警类别 warningId Integer ○
+ if (!dataJson.containsKey("warningId") || !dataJson.containsKey("containerCode")) {
+ throw new ApiException(ApiStatus.PARAM_NO_EXIST);
+ }
+ String containerCode = dataJson.getString("containerCode");
+ String warningId = dataJson.getString("warningId");
+ List<String> warningList = Arrays.asList(warningId.split(","));
+ List<String> warningList1 = new ArrayList<>(Arrays.asList("1","2","3","4","5","6"));
+ List<String> delWarnings = warningList1.stream().filter(o->!warningList.contains(o)).collect(Collectors.toList());//新的不在原有里面的
+
+ for (String warning : delWarnings){
+ Map<String, String> metaMap = new HashMap<>();
+ metaMap.put("groupId", "user_violate_type");
+ metaMap.put("metaKey", warning);
+
+ List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap);
+ if (baseMetaList == null || baseMetaList.size() != 1) {
+ throw new ApiException(ApiStatus.PARAM_ERR, ApiStatus.PARAM_ERR.getRetMsg() + "[warningId]");
+ }
+ SysAlarmPerson sysAlarmPerson = new SysAlarmPerson();
+ sysAlarmPerson.setContainerCode(containerCode);
+ sysAlarmPerson.setWarningId(baseMetaList.get(0).getId());
+ List<SysAlarmPerson> sysAlarmPersonList = sysAlarmPersonDao.selectByCode(containerCode, baseMetaList.get(0).getId());
+ for (SysAlarmPerson sysAlarm : sysAlarmPersonList) {
+ if (!"".equals(alarmUrl) && StringUtils.isNotBlank(sysAlarm.getRefId()) && ("1".equals(warning) || "2".equals(warning))) {
+ SysWarning sysWarning = new SysWarning();
+ sysWarning.setId(String.valueOf(sysAlarm.getId()));
+ sysWarning.setStatus(1);
+ sysWarning.setAlarmId(sysAlarm.getRefId());
+ sysWarningService.updateSysWarning(sysWarning);
+ }else {
+ Map<String,Object> params = new HashMap<>();
+ params.put("status",1);
+ params.put("id", String.valueOf(sysAlarm.getId()));
+ sysWarningDao.updateSysWarning(params);
+ }
+ }
+ }
+ }
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
index ab07a2d..486ea69 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
@@ -282,9 +282,15 @@
@Override
public List<String> selectProjectsByContainerCode(String containerCode) {
- String projects = sysLaboratoryContainerDao.selectProjectsByContainerCode(containerCode);
- if (projects != null){
- return Arrays.asList(projects.split(","));
+ List<String> projects = sysLaboratoryContainerDao.selectProjectsByContainerCode(containerCode);
+ if (projects.size() > 0){
+ List<String> projectList = new ArrayList<>();
+ for (String project : projects){
+ if (StringUtils.isNotBlank(project)){
+ projectList.addAll(Arrays.asList(project.split(",")));
+ }
+ }
+ return projectList;
}
return null;
}
diff --git a/src/main/java/com/nanometer/smartlab/service/SysWarningServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysWarningServiceImpl.java
index e593e8d..4a51065 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysWarningServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysWarningServiceImpl.java
@@ -76,7 +76,6 @@
@Override
public void updateSysWarning(SysWarning selectedWarning) throws IOException {
-
try {
Map<String,Object> params = new HashMap<>();
params.put("memo", selectedWarning.getMemo());
@@ -87,7 +86,7 @@
if (StringUtils.isNotBlank(selectedWarning.getAlarmId()) && StringUtils.isNotBlank(alarmUrl)){
JSONObject json=new JSONObject();
json.put("dataType", "data");
- json.put("id", selectedWarning.getAlarmId());
+ json.put("id", selectedWarning.getAlarmId());
CloseableHttpClient client2 = HttpClients.createDefault();
HttpPost post2 = new HttpPost(alarmUrl);
post2.setHeader("Content-Type", "application/json;charset=UTF-8");
@@ -102,8 +101,7 @@
}else{
logger.info("关联daping的告警id为空 ");
}
- this.sysWarningDao.updateSysWarning(params);
-
+ this.sysWarningDao.updateSysWarning(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
diff --git a/src/main/webapp/WEB-INF/test/test.properties b/src/main/webapp/WEB-INF/test/test.properties
index 230532d..36ee8bd 100644
--- a/src/main/webapp/WEB-INF/test/test.properties
+++ b/src/main/webapp/WEB-INF/test/test.properties
@@ -8,4 +8,4 @@
institute.url = http://sinanoaq.com:8050
institute.app.id = wx81a00e3350861b25
institute.app.secret = c307d394875af2cbbe25e01b9e43dcb2
-alarm.url =
+alarm.url = http://sinanoaq.com/daping/sendWarnInfo.json
diff --git "a/\346\231\272\346\205\247\345\256\236\351\252\214\345\256\244\346\216\245\345\217\243.docx" "b/\346\231\272\346\205\247\345\256\236\351\252\214\345\256\244\346\216\245\345\217\243.docx"
index 602a34f..86c5247 100644
--- "a/\346\231\272\346\205\247\345\256\236\351\252\214\345\256\244\346\216\245\345\217\243.docx"
+++ "b/\346\231\272\346\205\247\345\256\236\351\252\214\345\256\244\346\216\245\345\217\243.docx"
Binary files differ
--
Gitblit v1.9.2