Commit 9a996165 authored by fuwanli's avatar fuwanli

"审核通知,创建模板"

parent 5e15acc3
package com.bgy.sms.channel.api;
import com.alibaba.fastjson.JSONObject;
import com.bgy.sms.channel.bgy.config.BgySMSConfig;
import com.bgy.sms.channel.dmHub.config.DmHubConfig;
import com.bgy.sms.channel.dto.*;
import com.bgy.sms.config.ResponseCode;
import com.bgy.sms.repository.domain.SmsTemplateInfo;
import com.bgy.sms.service.MessageService;
import com.bgy.sms.service.SmsTemplateService;
import com.bgy.util.HttpUtil;
import com.bgy.util.Md5Util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -20,7 +24,8 @@ public class DmHubApi {
@Autowired
private MessageService messageService;
@Autowired
private SmsTemplateService smsTemplateService;
@GetMapping("/ping")
public String ping() {
......@@ -44,6 +49,8 @@ public class DmHubApi {
return new DmHubResponse("555", "接口请求签名校验不通过");
}
response = messageService.createTemplate(params);
} catch (Exception e) {
log.error("创建模板短信异常", e);
response = new DmHubResponse("999", "创建模板短信异常");
......@@ -133,4 +140,16 @@ public class DmHubApi {
log.info("**********单条发送出参*******:{}", JSONObject.toJSONString(response));
return response;
}
public static void main(String[] args) {
String z = "{\"err\":\"成功\",\"package\":\"{\\\"data\\\":\\\"8fff70a0-d751-4d2b-b4c6-17edec541ec7\\\"}\",\"ret\":\"0\"} ";
JSONObject retJson = JSONObject.parseObject(z);
String data = retJson.getString("package");
JSONObject retJson2 = JSONObject.parseObject(data);
String data2 = retJson2.getString("data");
//String retStr = HttpUtil.sendPost(BgySMSConfig.url, JSONObject.toJSONString(z));
System.out.println(data2);
}
}
......@@ -2,6 +2,7 @@ package com.bgy.sms.channel.bgy.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.bgy.sms.channel.bgy.config.BgySMSConfig;
import com.bgy.sms.channel.bgy.dto.CLBizResponse;
import com.bgy.sms.channel.bgy.dto.TemplateNotify;
......@@ -9,6 +10,7 @@ import com.bgy.sms.channel.bgy.service.BgySmsService;
import com.bgy.sms.channel.bgy.utils.SendSmsUtil;
import com.bgy.sms.channel.dmHub.service.DmHubService;
import com.bgy.sms.config.ResponseCode;
import com.bgy.sms.repository.domain.SmsTemplateInfo;
import com.bgy.sms.service.SmsTemplateService;
import com.bgy.util.Md5Util;
import org.slf4j.Logger;
......@@ -39,6 +41,8 @@ public class BgySmsServiceImpl implements BgySmsService {
@Autowired
private DmHubService dmHubService;
@Autowired
private SmsTemplateService smsTemplateService;
@Override
public CLBizResponse sendSms(String mobile, String content, String areaId) throws Exception {
log.info("进入碧桂园短信发送接口");
......@@ -81,7 +85,22 @@ public class BgySmsServiceImpl implements BgySmsService {
*/
@Override
public void asyncNotify(TemplateNotify templateNotify) {
log.info("碧桂园短信模板审核通知接口入参:{}",templateNotify);
//模板流水号
String templateRecordId = templateNotify.getData();
String status = templateNotify.getAuditStatus();
String auditReason = templateNotify.getAuditReason();
SmsTemplateInfo smsTemplateInfo = smsTemplateService.selectOne(new EntityWrapper<SmsTemplateInfo>().eq("template_record_id",templateRecordId));
if (smsTemplateInfo == null){
throw new RuntimeException(ResponseCode.NO_TEMPLATE.getMsg());
}
if ("1".equals(status)){
smsTemplateInfo.setStatus("normal");
}else {
smsTemplateInfo.setStatus("abnormal");
}
smsTemplateInfo.setUpRejectMsg(auditReason);
smsTemplateService.updateById(smsTemplateInfo);
}
}
......@@ -39,6 +39,15 @@ public class SmsTemplateInfo {
private String upTemplateId;
private String upRejectMsg;
private String params;
private String templateRecordId;
public String getTemplateRecordId() {
return templateRecordId;
}
public void setTemplateRecordId(String templateRecordId) {
this.templateRecordId = templateRecordId;
}
public SmsTemplateInfo() {
......
......@@ -17,6 +17,7 @@ import com.bgy.sms.service.DmCodeService;
import com.bgy.sms.service.MessageService;
import com.bgy.sms.service.SmsTemplateService;
import com.bgy.sms.service.bean.TemplateChangeBean;
import com.bgy.util.HttpUtil;
import com.bgy.util.id.IdHandler;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
......@@ -94,6 +95,36 @@ public class MessageServiceImpl implements MessageService {
if (!insert) {
log.error("模板插入DB异常:【{}】", JSONObject.toJSONString(info));
return new DmHubResponse(ResponseCode.SYSTEM_ERROR);
}else {
String pkID = info.getId()+"";
String content = info.getContent();
JSONObject param = new JSONObject();
param.put("api", "AddTemplate");
param.put("appid", "");
param.put("security", "");
param.put("content", content);
param.put("areaid", "FHY");
param.put("pkID", pkID);
param.put("account", "");
param.put("templateType", "");
String retStr = HttpUtil.sendPost(BgySMSConfig.url, JSONObject.toJSONString(param));
JSONObject retJson = JSONObject.parseObject(retStr);
String ret = retJson.getString("ret");
String reePackage = retJson.getString("package");
if (ret.equals(0)){
JSONObject Json = JSONObject.parseObject(reePackage);
String data = Json.getString("data");
info.setTemplateRecordId(data);
info.setId(Long.parseLong(pkID));
smsTemplateService.updateById(info);
}
responseDTO.setCode(ResponseCode.SUCCESS.getCode());
responseDTO.setError(JSONObject.parseObject(JSONObject.toJSONString(info)));
return responseDTO;
}
} catch (Exception exception) {
log.error("创建模板业务逻辑异常,错误信息", exception);
......@@ -130,7 +161,8 @@ public class MessageServiceImpl implements MessageService {
String t = g;
g = Matcher.quoteReplacement(g);
g = escapeRegex(g);
upSendStr = upSendStr.replaceAll(g, "\\{\\$var\\}");
// upSendStr = upSendStr.replaceAll(g, "\\{\\$var\\}");
upSendStr = upSendStr.replaceAll(g, "\\{\\$\\$\\}");
if (t.contains("${surl!")) {
// 短链没传长度,固定长度20
upCreateStr = upCreateStr.replaceAll(g, "\\{s20\\}");
......@@ -301,7 +333,7 @@ public class MessageServiceImpl implements MessageService {
*/
private String getMsg(String upContent, List<String> params) {
for (String info : params) {
upContent = upContent.replaceFirst("\\$v\\$", info);
upContent = upContent.replaceFirst("\\$\\$", info);
}
return upContent;
}
......
......@@ -8,7 +8,7 @@ info:
spring:
profiles:
active: prod
active: dev
mybatis-plus:
mapper-locations: classpath:mapper/*.xml
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment