Browse Source

监控预警

master
wangpengfei 2 years ago
parent
commit
05f109b2de
  1. 64
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/util/MsgWs.java
  2. 31
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java
  3. 4
      yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java
  4. 4
      yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java

64
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/util/MsgWs.java

@ -0,0 +1,64 @@
package com.yxt.supervise.report.biz.util;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
import javax.xml.namespace.QName;
/**
* @author dimengzhe
* @date 2020/9/11 8:59
* @description 发送短信调用接口
*/
public class MsgWs {
private static String msgSign="【云仓贷后】";
// private static String msgtitle="河北省计量业务应用平台提醒:";
public static String MSG_NEWPWD="用户,您好!您的新密码为:";
public static String MSG_VERIFY = "用户,您好!您注册的单位已审核通过,管理员的密码为:";
public static String MSG_VERIFY_NO = "用户,您好!您注册的单位未审核通过,未通过原因:";
public static String MSG_VERIFY_ONE = "用户,您好!您所填写的基本信息未通过。请及时登录系统修改。";
public static String MSG_USER_VERIFY = "用户,您好!您注册的个人信息已审核通过";
public static String MSG_USER_VERIFY_NO = "用户,您好!您注册的个人信息未审核通过,未通过原因:";
public static String MSG_ORG_STAFF = "尊敬的用户,您好!您绑定的单位已审核通过,可登陆系统进行查看";
public static String MSG_USING = "尊敬的用户,您好!有待确认的单位信息需确认,请及时确认信息";
public static String MSG_OA_FILE_SEND = "用户,您好!协同办公中您收到一份文件,请查阅:";
public static String SendWaitWorkMsg(String mobile, String msg) {
try {
String urlname = "http://sdk1.mb345.com/ws/LinkWS.asmx";
String soapActionURI = "http://tempuri.org/BatchSend";
Service s = new Service();
Call call = (Call) s.createCall();
call.setTimeout(new Integer(5000));
call.setUseSOAPAction(true);
call.setSOAPActionURI(soapActionURI);
// wsdl中接口名称
call.setOperationName(new QName("http://tempuri.org/", "BatchSend"));
call.setTargetEndpointAddress(urlname);
call.addParameter(new QName("http://tempuri.org/", "CorpID"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/", "Pwd"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/", "Mobile"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/", "Content"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/", "Cell"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
call.addParameter(new QName("http://tempuri.org/", "SendTime"), XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
// String[] fn01 = {"YXT010045", "yuxintonghygl", mobile, msgtitle+msg+msgSign, "", ""};
// String[] fn01 = {"YXT010045", "yuxintonghygl", mobile, msg+msgSign, "", ""};
String[] fn01 = {"YXT011836", "yxt_hryl230223", mobile, msg+msgSign, "", ""};
String val = (String) call.invoke(fn01);
return val;
} catch (Exception e) {
return e.getMessage();
}
}
}

31
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/biz/wechat/WechatRest.java

@ -62,6 +62,7 @@ import static com.yxt.common.base.utils.MsgWs.SendWaitWorkMsg;
@RestController
@RequestMapping("v1/wechat")
public class WechatRest {
static final long APP_LOGIN_CODE_TIME_LIMIT = 300L;
private static final String WX_URL_ACCESS_TOKEN = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET";
private static final String WX_URL_MESSAGE_SEND = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";
private static final String WX_URL_MESSAGE_BIZ_SEND ="https://api.weixin.qq.com/cgi-bin/message/subscribe/bizsend?access_token=ACCESS_TOKEN";
@ -392,7 +393,8 @@ public class WechatRest {
String name=warehouseMapper.getNameBySid(shSid);
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
// 公众号的模板id(也有相应的接口可以查询到)
//sendVerificationCode(name,mobiles);
sendVerificationCode(name,mobiles,"030404");
System.out.println("推送中");
r= SuperviseWxMessSender.jkSend("赵丽晓",openIds,projectSid,riskSid,name,riskAlarm.getSid(),ft.format(new Date()));
System.out.println(r);
}
@ -416,16 +418,15 @@ public class WechatRest {
String name=warehouseMapper.getNameBySid(shSid);
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
// 公众号的模板id(也有相应的接口可以查询到)
//sendVerificationCode(name,mobiles);
sendVerificationCode(name,mobiles,"030405");
r= SuperviseWxMessSender.jkImgSend("赵丽晓",openIds,projectSid,riskSid,name,ft.format(new Date()));
System.out.println(r);
}
public ResultBean sendVerificationCode(String shName, List<String> users) {
String mobile = "";
public ResultBean sendVerificationCode(String shName, List<String> users,String type) {
ResultBean rb = new ResultBean().fireFail();
Date date = new Date();
String redisKey = "";
String codeRedis = redisUtil.get(redisKey + mobile);
for (String mobile : users) {
String codeRedis = redisUtil.get(""+mobile);
if (com.yxt.common.base.utils.StringUtils.isNotEmpty(codeRedis)) {
//查看请求间隔,默认是一分钟,小于一分钟继续等待,超过一分钟发送短信
String sendTime = codeRedis.substring(4);
@ -434,14 +435,22 @@ public class WechatRest {
return ResultBean.fireFail().setMsg("请等待一分钟后再次重试!");
}
}
String content = "监控异常提醒:" + shName + "仓库监控设备于" + new Date() + "发生异常,请及时处理。";
for (String u : users) {
String res = SendWaitWorkMsg(u, content);
String content="";
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")){
content = "仓库异常提醒:" + shName + "仓库货物于" + ft.format(new Date()) + "发生图片比对异常,请及时处理。";
}
String res = "1";
//String res = com.yxt.supervise.report.biz.util.MsgWs.SendWaitWorkMsg(mobile, content);
if (res.equals("1")) {
System.out.println("发送消息");
redisUtil.set(""+mobile,""+date.getTime(), APP_LOGIN_CODE_TIME_LIMIT);
}
}
// String res = "1";
return ResultBean.fireSuccess().setMsg("发送短信验证码成功");
}
/**

4
yxt_supervise/supervise-report/supervise-report-biz/src/main/java/com/yxt/supervise/report/wx/SuperviseWxMessSender.java

@ -74,7 +74,8 @@ public class SuperviseWxMessSender {
RespMessReturn respMessReturn=new RespMessReturn();
String orderDate = reportTime.substring(0, 10);
// String pagepath = jgsjzl_pagepath.replace("ORDER_DATE", orderDate).replace("PROJECT_SID", projectSid);?
String pagepath ="pages/index/DeviceException"+"?sid"+messSid;
// String pagepath ="pages/index/DeviceException"+"?sid"+messSid;
String pagepath ="";
HashMap<String, String> data = new HashMap<>();
data.put("thing2", projectName);
String thing2 = projectName +"监控设备异常";
@ -90,6 +91,7 @@ public class SuperviseWxMessSender {
for(String touser:tousers){
respMessReturn = WxMessage.sendMessage("xwFrrZ4gkdWXu0fB4l2S5yYU91PEu6gBg9FbtdS3G4A", touser, pagepath, data);
}
System.out.println("增加消息");
RiskMessagesLogDto logDto=new RiskMessagesLogDto();
logDto.setContent(data);
logDto.setMessageTime(reportTime);

4
yxt_supervise/supervise-rms/supervise-rms-biz/src/main/java/com/supervise/rms/biz/riskalarm/RiskAlarmService.java

@ -119,6 +119,8 @@ public class RiskAlarmService extends MybatisBaseService<RiskAlarmMapper, RiskAl
if (null == riskAlarmVo) {
baseMapper.insert(riskAlarm);
ThreadUtil.execute(()->{
//开始
System.out.println("推送开始");
wechatFeign.shMessage(shSid,riskAlarm.getSid());
//sendVerificationCode(dto.getSid(), dto.getName(), dto.getSendTime().toString());
});
@ -127,6 +129,8 @@ public class RiskAlarmService extends MybatisBaseService<RiskAlarmMapper, RiskAl
if (newDate.before(new Date())) {
baseMapper.insert(riskAlarm);
ThreadUtil.execute(()->{
//开始
System.out.println("推送开始");
wechatFeign.shMessage(shSid,riskAlarm.getSid());
//sendVerificationCode(dto.getSid(), dto.getName(), dto.getSendTime().toString());
});

Loading…
Cancel
Save