Преглед изворни кода

[短信组件][修改][修改延迟消息问题]

release_toaliyun_real
luozukai пре 7 година
родитељ
комит
2d253c1c20
6 измењених фајлова са 58 додато и 31 уклоњено
  1. +35
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/WxMsgRecordController.java
  2. +0
    -10
      mallinkService/src/main/java/com/iformall/domain/po/MailMsg.java
  3. +0
    -9
      mallinkService/src/main/java/com/iformall/domain/po/SmartAppMsg.java
  4. +2
    -1
      mallinkService/src/main/java/com/iformall/service/impl/SendCallBackSmsServiceImpl.java
  5. +1
    -1
      mallinkService/src/main/java/com/iformall/service/impl/SendSmsServiceImpl.java
  6. +20
    -10
      mallinkService/src/main/java/com/iformall/service/impl/WxMsgRecordServiceImpl.java

+ 35
- 0
mallinkAdmin/src/main/java/com/iformall/controller/WxMsgRecordController.java Прегледај датотеку

@@ -1,10 +1,15 @@
package com.iformall.controller; package com.iformall.controller;


import com.alibaba.fastjson.JSONArray;
import com.iformall.common.ResultData; import com.iformall.common.ResultData;
import com.iformall.domain.po.*; import com.iformall.domain.po.*;
import com.iformall.enums.*; import com.iformall.enums.*;
import com.iformall.mapper.WxMsgMapper;
import com.iformall.mq.MqBaseProducer; import com.iformall.mq.MqBaseProducer;
import com.iformall.service.MsgSendService;
import com.iformall.service.WxMsgRecordService; import com.iformall.service.WxMsgRecordService;
import com.iformall.service.impl.SendCallBackSmsServiceImpl;
import com.iformall.utils.DateUtils;
import com.iformall.utils.JsonUtil; import com.iformall.utils.JsonUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import org.slf4j.Logger; import org.slf4j.Logger;
@@ -24,6 +29,36 @@ public class WxMsgRecordController extends BaseController {
private WxMsgRecordService wxMsgRecordService; private WxMsgRecordService wxMsgRecordService;
@Autowired @Autowired
private MqBaseProducer mqBaseProducer; private MqBaseProducer mqBaseProducer;
@Autowired
private WxMsgMapper wxMsgMapper;
@Autowired
private SendCallBackSmsServiceImpl msgSendService;


@GetMapping(value = "/test")
public ResultData test() throws Exception{
// String systemTime = DateUtils.getSystemTime("yyyy-MM-dd HH:00:00");
// WxMsg wxMsg = new WxMsg();
// wxMsg.setIsright(0);
// wxMsg.setSendtime(systemTime);
// wxMsg.setId(270060355273621504l);
// List<WxMsg> list = wxMsgMapper.findList(wxMsg);
// logger.info("将要发送的短信列表:" + JSONArray.toJSONString(list));
// for (WxMsg msg : list) {
// //sendmsg(msg);
// msg.setMsgType(EnumMsgRecordType.SMS_CALLBACK.getCode());
// msg.setReceiver(msg.getPhones());
// mqBaseProducer.sendMessage(msg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(),null);
// }

String s = "{\"tenantId\":\"456\",\"uuid\":\"0a410e4e-c0ef-461e-bea8-7bd222e7c7b7\",\"delayTimeLevel\":0,\"id\":270060355273621504,\"modelId\":220401934081720320,\"msg\":\"狂欢双十一:更多礼品等你来领取\",\"sendtime\":\"2019-03-25 16:00:00\",\"createtime\":\"2019-03-25 15:30:16\",\"expectSendNumber\":1,\"phones\":\"18601973448\",\"signature\":\"富茂科技\",\"isright\":0,\"name\":\"狂欢双十一\",\"excelpath\":\"\",\"label\":\"\",\"status\":0,\"way\":1}";
WxMsg wxMsg = (WxMsg) JsonUtil.readValue(s,WxMsg.class);
wxMsg.setMsgType(EnumMsgRecordType.SMS_CALLBACK.getCode());
wxMsg.setReceiver("18601973448");
wxMsg.setTenantId("456");
msgSendService.send(wxMsg);
return new ResultData();
}


/** /**
* 重新发送失败的消息 * 重新发送失败的消息


+ 0
- 10
mallinkService/src/main/java/com/iformall/domain/po/MailMsg.java Прегледај датотеку

@@ -10,8 +10,6 @@ public class MailMsg extends BaseMsg {
private static final long serialVersionUID = 923764283760321L; private static final long serialVersionUID = 923764283760321L;
// 模板id // 模板id
private Integer modelId; private Integer modelId;
private String tenantId;

private String[] to; private String[] to;
private String from; private String from;
private String msg; private String msg;
@@ -29,14 +27,6 @@ public class MailMsg extends BaseMsg {
//动态替换内容 //动态替换内容
private Map<String,String> dynamicContentMap; private Map<String,String> dynamicContentMap;


public String getTenantId() {
return tenantId;
}

public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}

public Map<String, String> getDynamicContentMap() { public Map<String, String> getDynamicContentMap() {
return dynamicContentMap; return dynamicContentMap;
} }


+ 0
- 9
mallinkService/src/main/java/com/iformall/domain/po/SmartAppMsg.java Прегледај датотеку

@@ -13,7 +13,6 @@ public class SmartAppMsg extends BaseMsg {


//小程序的appId //小程序的appId
private String appId; private String appId;
private String tenantId;
private String to; private String to;
private String from; private String from;
private Integer templateType; private Integer templateType;
@@ -45,14 +44,6 @@ public class SmartAppMsg extends BaseMsg {
this.gotopage = gotopage; this.gotopage = gotopage;
} }


public String getTenantId() {
return tenantId;
}

public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}

public String getTo() { public String getTo() {
return to; return to;
} }


+ 2
- 1
mallinkService/src/main/java/com/iformall/service/impl/SendCallBackSmsServiceImpl.java Прегледај датотеку

@@ -43,11 +43,12 @@ public class SendCallBackSmsServiceImpl implements MsgSendService {
private WxMsgService wxMsgService; private WxMsgService wxMsgService;


@Override @Override
public void send(BaseMsg baseMsg) {
public void send(BaseMsg baseMsg) throws Exception{
WxMsg record = (WxMsg)baseMsg; WxMsg record = (WxMsg)baseMsg;


WxMsgConfig wxMsgConfig = record.getWxMsgConfig(); WxMsgConfig wxMsgConfig = record.getWxMsgConfig();
if(wxMsgConfig == null){ if(wxMsgConfig == null){
wxMsgConfig = new WxMsgConfig();
wxMsgConfig.setTenantId(record.getTenantId()); wxMsgConfig.setTenantId(record.getTenantId());
List<WxMsgConfig> wxMsgConfigs = wxMsgConfigMapper.findList(wxMsgConfig); List<WxMsgConfig> wxMsgConfigs = wxMsgConfigMapper.findList(wxMsgConfig);
if (wxMsgConfigs.size() == 0) { if (wxMsgConfigs.size() == 0) {


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/impl/SendSmsServiceImpl.java Прегледај датотеку

@@ -38,7 +38,7 @@ public class SendSmsServiceImpl implements MsgSendService {
private WxMsgValidationcodeService wxMsgValidationcodeService; private WxMsgValidationcodeService wxMsgValidationcodeService;


@Override @Override
public void send(BaseMsg baseMsg) {
public void send(BaseMsg baseMsg) throws Exception{
WxMsgRecord record = (WxMsgRecord)baseMsg; WxMsgRecord record = (WxMsgRecord)baseMsg;
WxMsgValidationcode wxMsgValidationcode = new WxMsgValidationcode(); WxMsgValidationcode wxMsgValidationcode = new WxMsgValidationcode();
wxMsgValidationcode.setPhone(record.getReceiver()); wxMsgValidationcode.setPhone(record.getReceiver());


+ 20
- 10
mallinkService/src/main/java/com/iformall/service/impl/WxMsgRecordServiceImpl.java Прегледај датотеку

@@ -6,11 +6,9 @@ import com.iformall.enums.EnumMsgRecordStatus;
import com.iformall.mapper.*; import com.iformall.mapper.*;
import com.iformall.service.WxMsgRecordService; import com.iformall.service.WxMsgRecordService;
import com.iformall.utils.JsonUtil; import com.iformall.utils.JsonUtil;
import org.apache.commons.beanutils.PropertyUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
import java.util.UUID;


/** /**
* @author luozukai * @author luozukai
@@ -23,20 +21,32 @@ public class WxMsgRecordServiceImpl implements WxMsgRecordService {


@Override @Override
public void save(BaseMsg data){ public void save(BaseMsg data){
WxMsgRecord msgRecord = new WxMsgRecord();
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();


if(data instanceof WxMsgRecord){
msgRecord = (WxMsgRecord)data;
}

WxMsgRecord msgRecord = new WxMsgRecord();
msgRecord.setId(idWorker.nextId()); msgRecord.setId(idWorker.nextId());
msgRecord.setReceiver(data.getReceiver());
msgRecord.setMsgType(data.getMsgType());
msgRecord.setUuid(data.getUuid()); msgRecord.setUuid(data.getUuid());
msgRecord.setMsgJson(JsonUtil.obj2Json(data)); msgRecord.setMsgJson(JsonUtil.obj2Json(data));
msgRecord.setMsgStatus(EnumMsgRecordStatus.DEFAULT.getCode()); msgRecord.setMsgStatus(EnumMsgRecordStatus.DEFAULT.getCode());
msgRecord.setTenantId(data.getTenantId());

if(data instanceof WxMsgRecord){
msgRecord = (WxMsgRecord)data;
}else if(data instanceof WxMsg){
WxMsg wxMsg = (WxMsg)data;
msgRecord.setTenantId(wxMsg.getTenantId());
msgRecord.setMsgType(wxMsg.getMsgType());
msgRecord.setReceiver(wxMsg.getPhones());
}else if(data instanceof MailMsg){
MailMsg wxMsg = (MailMsg)data;
msgRecord.setTenantId(wxMsg.getTenantId());
msgRecord.setMsgType(wxMsg.getMsgType());
msgRecord.setReceiver(JsonUtil.obj2Json(wxMsg.getTo()));
}else if(data instanceof SmartAppMsg){
SmartAppMsg wxMsg = (SmartAppMsg)data;
msgRecord.setTenantId(wxMsg.getTenantId());
msgRecord.setMsgType(wxMsg.getMsgType());
msgRecord.setReceiver(wxMsg.getTo());
}
wxMsgRecordMapper.save(msgRecord); wxMsgRecordMapper.save(msgRecord);
} }




Loading…
Откажи
Сачувај