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