package com.casic.util; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.casic.entity.Device; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import java.util.Date; @Slf4j @Component public class SendUtil { @Value("${casic.synchronizeSms.enabled}") private String enabled; @Value("${casic.smsSenderURL}") private String smsSenderUrl; @Value("${casic.X-APP-KEY-SMS}") private String smsAppKey; public void sendEventBySms(Device device, JSONObject eventObj) { if ("true".equals(enabled)) { // String smsSenderUrl = Configure.getProperty("smsSenderURL", "http://general.bushub.rj.prd/sms/user/send"); // String smsAppKey = Configure.getProperty("X-APP-KEY-SMS", "2d3a8e35-0533-42a0-97a2-63f82a3216f9"); String sim = device.getSimid(); if (null == sim || StringUtils.isBlank(sim)) { return; } if (null == smsAppKey || StringUtils.isBlank(smsAppKey)) { return; } JSONObject header = new JSONObject(); header.put("X-APP-KEY", smsAppKey); StringBuilder params = new StringBuilder(); params.append("{"); params.append("\"mobile\":"); params.append("\"").append(sim).append("\"").append(","); String prefix = "【智慧蓉江】"; String eventTm = DateUtils.sdf4.format(new Date()); String devName = device.getDevName(); String place = device.getFactory(); StringBuilder content = new StringBuilder(""); content.append(prefix); content.append(eventTm).append(","); content.append("管网监测设备[").append(devName).append("],"); content.append("发生").append(eventObj.getString("type")).append(","); if (eventObj.containsKey("value") == true) { content.append(eventObj.getString("value")).append(","); } content.append("详细地址是:").append(place).append(","); content.append("请关注并及时处理。"); params.append("\"content\":"); params.append("\"").append(content.toString()).append("\""); params.append("}"); String resp = HttpClientUtils.post(smsSenderUrl, params.toString(), header); log.info("已发送短信"+resp); } } }