diff --git a/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java b/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java index ded2dd62..e676383d 100644 --- a/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java +++ b/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java @@ -346,12 +346,14 @@ public class WechatRest { // } // } String projectSid=crmMapper.ProjectSidByshSid(shSid); - String name=warehouseMapper.getNameBySid(shSid); - SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + String shName=warehouseMapper.getNameBySid(shSid); + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + RiskAlarm riskAlarm=rmsMapper.getRiskByMessSid(riskSid); + String name =cl(riskAlarm.getContent()); // 公众号的模板id(也有相应的接口可以查询到) //sendVerificationCode(name,mobiles,"030404"); System.out.println("推送中"); - r= SuperviseWxMessSender.jkSend("赵丽晓",openIds,projectSid,riskSid,name,riskSid,ft.format(new Date())); + r= SuperviseWxMessSender.jkSend(openIds,projectSid,riskSid,name,shName,riskSid,ft.format(new Date())); System.out.println(r); } @@ -393,14 +395,48 @@ public class WechatRest { // } // } String projectSid=crmMapper.ProjectSidByshSid(shSid); - String name=warehouseMapper.getNameBySid(shSid); - SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + String shName=warehouseMapper.getNameBySid(shSid); + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + RiskAlarm riskAlarm=rmsMapper.getRiskByMessSid(riskSid); + String name =cl(riskAlarm.getContent()); // 公众号的模板id(也有相应的接口可以查询到) //sendVerificationCode(name,mobiles,"030404"); System.out.println("推送中"); - r= SuperviseWxMessSender.secureSend(openIds,projectSid,riskSid,name,riskSid,ft.format(new Date())); + r= SuperviseWxMessSender.secureSend(openIds,projectSid,riskSid,name,shName,riskSid,ft.format(new Date())); System.out.println(r); } + @Test + public String cl (String w){ + String a=""; + //String w="[Device(name=东北角的摄像头, serialNumber=L28475439, status=断网), Device(name=111, serialNumber=L28475439, status=断网), Device(name=22, serialNumber=L28475439, status=断网), Device(name=33, serialNumber=L28475439, status=断网),Device(name=东北角的摄像头, serialNumber=L28475439, status=断网),Device(name=东北角的摄像头, serialNumber=L28475439, status=断网),Device(name=东北角的摄像头, serialNumber=L28475439, status=断网),Device(name=东北角的摄像头, serialNumber=L28475439, status=断网)]"; + String st=w.substring(1, (w.length() - 1)); + String [] str2 = st.split("Device"); +// List list=new ArrayList<>(); + for (int i = 0; i < str2.length; i++) { + String item = str2[i]; + if(com.yxt.common.base.utils.StringUtils.isNotEmpty(item)){ +// Device device=new Device(); + String [] str3 = item.split(", "); +// device.setName(str3[0].substring(6)); +// device.setSerialNumber(str3[1].substring(13)); +// device.setStatus(str3[2].substring(7,str3[2].length()-1)); + String name=str3[0].substring(6); + if(StringUtils.isEmpty(a)){ + a=a+name; + }else { + a=a+","+name; + } +// list.add(device); + } + } + if(a.length()>=20){ + a=a.substring(0,19)+"…"; + } + System.out.println(a.length()); + System.out.println(a); + + return a; + } @GetMapping("/shImgMessage") public void shImgMessage(@RequestParam("shSid") String shSid,@RequestParam("riskSid") String riskSid){ //String messSid=imgMessagesLogMapper.getImgRiskByCode(); @@ -435,7 +471,7 @@ public class WechatRest { // } String projectSid=crmMapper.ProjectSidByshSid(shSid); String name=warehouseMapper.getNameBySid(shSid); - SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 公众号的模板id(也有相应的接口可以查询到) //sendVerificationCode(name,mobiles,"030405"); r= SuperviseWxMessSender.jkImgSend("赵丽晓",openIds,projectSid,riskSid,name,riskSid,ft.format(new Date())); @@ -475,7 +511,7 @@ public class WechatRest { // } //String projectSid=crmMapper.ProjectSidByshSid(shSid); //String name=warehouseMapper.getNameBySid(shSid); - SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 公众号的模板id(也有相应的接口可以查询到) //sendVerificationCode(name,mobiles,"030405"); r= SuperviseWxMessSender.sysErrSend(openIds,riskSid,riskSid,ft.format(new Date())); @@ -495,7 +531,7 @@ public class WechatRest { } } String content=""; - SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(type.equals("030404")){ content= "仓库异常提醒:" + shName + "仓库监控设备于" + ft.format(new Date()) + "发生异常,请及时处理。"; }else if(type.equals("030405")){ diff --git a/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java b/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java index 59a4e118..10089f43 100644 --- a/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java +++ b/yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java @@ -71,13 +71,13 @@ public class SuperviseWxMessSender { }); return respMessReturn; } - public static RespMessReturn jkSend(String sender, List tousers, String projectSid,String riskSid, String projectName,String messSid, String reportTime) { + public static RespMessReturn jkSend(List tousers, String projectSid,String riskSid, String name,String shName,String messSid, String reportTime) { RespMessReturn respMessReturn=new RespMessReturn(); String orderDate = reportTime.substring(0, 10); String pagepath ="pages/index/DeviceException"+"?sid="+messSid; HashMap data = new HashMap<>(); - data.put("thing8", projectName); - data.put("thing2", "监控设备离线"); + data.put("thing8", shName); + data.put("thing2", name); data.put("time4", reportTime); for(String touser:tousers){ respMessReturn = WxMessage.sendMessage("8GIicKf9w7XSP3awtjX7R1Pe5Z746Au1fUghwWDyFc8", touser, pagepath, data); @@ -100,13 +100,13 @@ public class SuperviseWxMessSender { }); return respMessReturn; } - public static RespMessReturn secureSend(List tousers, String projectSid,String riskSid, String projectName,String messSid, String reportTime) { + public static RespMessReturn secureSend(List tousers, String projectSid,String riskSid,String name,String projectName,String messSid, String reportTime) { RespMessReturn respMessReturn=new RespMessReturn(); String orderDate = reportTime.substring(0, 10); String pagepath =""; HashMap data = new HashMap<>(); data.put("thing3", projectName); - data.put("thing2", "设备名"); + data.put("thing2", name); data.put("time5", reportTime); for(String touser:tousers){ respMessReturn = WxMessage.sendMessages("A1u0HdEegfdJl3_MndronKahtvwkAa5IFDSy2NRHu8U", touser, pagepath, data); diff --git a/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmMapper.java b/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmMapper.java index 2e808ca6..581d4431 100644 --- a/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmMapper.java +++ b/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmMapper.java @@ -11,6 +11,8 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; +import java.util.List; + /** * @author feikefei * @create 2023-06-19-11:42 @@ -22,11 +24,13 @@ public interface RiskAlarmMapper extends BaseMapper { RiskAlarmVo getRiskAlarm(@Param("shSid")String shSid,@Param("code")String code); @Select("select * from risk_alarm where indicatorCode=#{code} order by triggerTime desc limit 1") RiskAlarmVo getRiskAlarmByCode(@Param("code")String code); - @Select("select * from risk_alarm where indicatorCode=#{code} and positionSid=#{shSid} and state=#{state} order by triggerTime desc limit 1") - RiskAlarm getRiskAlarmByState(@Param("code")String code,@Param("shSid")String shSid,@Param("state")String state); + @Select("select * from risk_alarm where indicatorCode=#{code} and positionSid=#{shSid} and state=#{state}") + List getRiskAlarmsByState(@Param("code")String code, @Param("shSid")String shSid, @Param("state")String state); @Insert("insert into device_img (sid,endImage,endTime,name,similarity,startImage,startTime,shSid) value(#{sid},#{endImage},#{endTime},#{name},#{similarity}," + "#{startImage},#{startTime},#{shSid})") int insertImg(@Param("sid")String sid,@Param("endImage")String endImage,@Param("endTime")String endTime,@Param("name")String name, @Param("similarity")String similarity,@Param("startImage")String startImage,@Param("startTime")String startTime, @Param("shSid")String shSid); + @Select("select * from risk_alarm where indicatorCode=#{code} and positionSid=#{shSid} and state=#{state} order by triggerTime desc limit 1") + RiskAlarm getRiskAlarmByState(@Param("code")String code, @Param("shSid")String shSid, @Param("state")String state); } diff --git a/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java b/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java index 80c0dcc9..4b8ab46f 100644 --- a/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java +++ b/yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java @@ -117,15 +117,17 @@ public class RiskAlarmService extends MybatisBaseService riskAlarm1=baseMapper.getRiskAlarmsByState("030404",dto.getSid(),"0"); + if(riskAlarm1.size()>0){ + for(RiskAlarm riskAlarm2:riskAlarm1){ + riskAlarm2.setState("1"); + baseMapper.updateById(riskAlarm2); + } ThreadUtil.execute(()->{ - wechatFeign.secureMessage(riskAlarm1.getPositionSid(),riskAlarm.getSid()); + wechatFeign.secureMessage(riskAlarm1.get(0).getPositionSid(),riskAlarm1.get(0).getSid()); }); } - baseMapper.delete(new QueryWrapper().eq("indicatorCode","030404").eq("positionSid",dto.getSid()).eq("state","0")); +// baseMapper.delete(new QueryWrapper().eq("indicatorCode","030404").eq("positionSid",dto.getSid()).eq("state","0")); } else { RiskIndicators riskIndicators = riskIndicatorsService.getOne(new QueryWrapper().eq("code", "030404")); riskAlarm.setIndicatorSid(riskIndicators.getSid());