Pārlūkot izejas kodu

微信,短信接口日志记录

master
zouhantao pirms 2 nedēļām
vecāks
revīzija
f554f9951d

+ 0
- 1
gly-base-core/src/main/java/cn/com/taiji/core/entity/msgw/MsgwSendDetails.java Parādīt failu

@@ -33,7 +33,6 @@ public class MsgwSendDetails extends StringPropertyUUIDEntity {
@NotNull
@Column(name = "SEND_TIME")
private LocalDateTime sendTime;//发送时间
@NotBlank
@Size(max = 32)
@Column(name = "APPLY_ID")
private String applyId;//主表id

+ 1
- 2
gly-base-core/src/main/java/cn/com/taiji/core/model/comm/protocol/msgw/MsgwServiceSystem.java Parādīt failu

@@ -6,12 +6,11 @@ import java.util.List;

import cn.com.taiji.core.model.comm.protocol.SignServiceSystem;
import cn.com.taiji.core.model.comm.protocol.SignServiceType;
import cn.com.taiji.core.model.comm.protocol.ias.IasServiceType;

public enum MsgwServiceSystem implements SignServiceSystem {
SEND("send", "消息发送接口", "/send/api/json", "/send/common/binapi/") {
public List<SignServiceType> listAllServices() {
return Arrays.asList(IasServiceType.values());
return Arrays.asList(MsgwServiceType.values());
}
};


+ 1
- 0
zhywpt-app-msgw/build.gradle Parādīt failu

@@ -11,6 +11,7 @@ dependencies {
implementation "${groupname}:sample-protocol:1.0.0-SNAPSHOT"
implementation "${groupname}:ias-protocol:1.0.0-SNAPSHOT"
implementation "${groupname}:ats-protocol:1.0.0-SNAPSHOT"
implementation "${groupname}:msgw-protocol:1.0.0-SNAPSHOT"
implementation('cn.com.taiji.common:sso-client:2.3.10.7')
implementation "org.springframework.boot:spring-boot-starter-security"
implementation "com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery"

+ 0
- 2
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/dto/MessageSendDetailsAddRequestDto.java Parādīt failu

@@ -22,7 +22,6 @@ import java.time.LocalDateTime;
@Setter
public class MessageSendDetailsAddRequestDto extends AbstractStaffBizRequestDTO {

@NotBlank
private String applyId;//主表id
private String modelId;//模板id
@NotNull
@@ -33,7 +32,6 @@ public class MessageSendDetailsAddRequestDto extends AbstractStaffBizRequestDTO
private LocalDateTime sendTime;// 发送时间
@NotBlank
private String title;//发送标题
@NotBlank
private String requestClassName;//发送类名
@NotNull
private MessageResult sendResult;//发送结果

+ 41
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/manager/MyCommHandleManager.java Parādīt failu

@@ -0,0 +1,41 @@
package cn.com.taiji.msgw.manager;

import javax.annotation.PostConstruct;

import cn.com.taiji.core.model.comm.protocol.msgw.MsgwServiceSystem;
import cn.com.taiji.core.model.comm.protocol.msgw.MsgwServiceType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.com.taiji.core.manager.comm.AbstractCommHandleManager;
import cn.com.taiji.core.model.comm.protocol.ias.IasServiceType;
import cn.com.taiji.msgw.manager.handler.SendServiceHandler;

/**
*
* @author Peream <br>
* Create Time:2019年7月28日 下午3:35:29<br>
* @since 1.0
* @version 1.0
*/
@Service
public class MyCommHandleManager extends AbstractCommHandleManager {
@Autowired
private SendServiceHandler sendServiceHandler;

public MyCommHandleManager() {
super(MsgwServiceSystem.SEND);
}


@PostConstruct
public void init() {
registerJsonService(sendServiceHandler);
}

@Override
protected MsgwServiceType getServiceType(String ifCode) {
return MsgwServiceType.fromIfCode(ifCode);
}

}

+ 19
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/manager/handler/AbstractMsgwServiceHandler.java Parādīt failu

@@ -0,0 +1,19 @@
package cn.com.taiji.msgw.manager.handler;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.manager.comm.AbstractCommServiceHandler;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
import cn.com.taiji.core.model.comm.protocol.SignServiceCommand;
import cn.com.taiji.core.model.comm.protocol.msgw.MsgwServiceType;

public abstract class AbstractMsgwServiceHandler<C extends SignServiceCommand>
extends AbstractCommServiceHandler<MsgwServiceType> {

protected AbstractMsgwServiceHandler(MsgwServiceType serviceType) {
super(serviceType);
}
@Override
public <T extends AbstractSignTypeRequest<?>> void baseValidate(T t) throws ServiceHandleException {
}

}

+ 55
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/manager/handler/SendServiceHandler.java Parādīt failu

@@ -0,0 +1,55 @@
package cn.com.taiji.msgw.manager.handler;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.zgglyun.common.model.AbstractHttpRequestInfo;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.common.model.file.FileProtocolSystemError;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;
import cn.com.taiji.core.model.comm.protocol.msgw.MsgwServiceType;
import cn.com.taiji.core.model.comm.protocol.msgw.send.MsgwSendCmd;
import cn.com.taiji.core.model.comm.protocol.msgw.send.MsgwSmsSendRequest;
import cn.com.taiji.core.model.comm.protocol.msgw.send.MsgwWxMiniSendRequest;
import cn.com.taiji.core.model.comm.protocol.msgw.send.MsgwWxMpSendRequest;
import cn.com.taiji.msgw.manager.universalSend.UniversalSendManager;


/**
*
* @author Peream <br>
* Create Time:2019年7月28日 下午4:45:09<br>
* @since 1.0
* @version 1.0
*/
@Service
public class SendServiceHandler extends AbstractMsgwServiceHandler<MsgwSendCmd> {

public SendServiceHandler() {
super(MsgwServiceType.NOTICE);
}

@Autowired
private UniversalSendManager universalSendManager;

@Override
protected <T extends AbstractSignTypeRequest<?>> AbstractSignTypeResponse handleInternal(T request,
SignJsonRequest jsonReq, AbstractHttpRequestInfo reqInfo) throws ServiceHandleException {
MsgwSendCmd cmd = MsgwSendCmd.fromIfCode(jsonReq.getIfCode());
switch (cmd) {
case SMS:
return universalSendManager.smsDirectSend((MsgwSmsSendRequest) request);
case WXMINI:
return universalSendManager.wxMiniDirectSend((MsgwWxMiniSendRequest) request);
case WXMP:
return universalSendManager.wxMpDirectSend((MsgwWxMpSendRequest) request);
default:
throw FileProtocolSystemError.NOT_SUPPORT.toHandleException(jsonReq.getIfCode());
}
}


}

+ 15
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/manager/universalSend/UniversalSendManager.java Parādīt failu

@@ -0,0 +1,15 @@
package cn.com.taiji.msgw.manager.universalSend;

import cn.com.taiji.core.model.comm.protocol.msgw.send.*;

public interface UniversalSendManager {
// 短信单个发送
MsgwSmsSendResponse smsDirectSend(MsgwSmsSendRequest request);
// 微信小程序单个发送
MsgwWxMiniSendResponse wxMiniDirectSend(MsgwWxMiniSendRequest request);
// 微信公众号单个发送
MsgwWxMpSendResponse wxMpDirectSend(MsgwWxMpSendRequest request);

// 邮件单个发送

}

+ 76
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/manager/universalSend/UniversalSendManagerImpl.java Parādīt failu

@@ -0,0 +1,76 @@
package cn.com.taiji.msgw.manager.universalSend;

import java.time.LocalDateTime;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.com.taiji.core.entity.dict.msgw.MessageResult;
import cn.com.taiji.core.entity.dict.msgw.MessageType;
import cn.com.taiji.core.entity.msgw.MsgwSendDetails;
import cn.com.taiji.core.model.comm.protocol.msgw.send.*;
import cn.com.taiji.msgw.dto.MessageSendDetailsAddRequestDto;
import cn.com.taiji.msgw.manager.AbstractCommManager;
import cn.com.taiji.msgw.manager.importReview.MessageImportManager;
import cn.com.taiji.msgw.manager.messageWaitSend.MessageWaitSendManager;

@Service
public class UniversalSendManagerImpl extends AbstractCommManager implements UniversalSendManager {

@Autowired
private MessageImportManager importManager;
@Autowired
private MessageWaitSendManager sendManager;

@Override
public MsgwSmsSendResponse smsDirectSend(MsgwSmsSendRequest request) {
MessageSendDetailsAddRequestDto addRequest = new MessageSendDetailsAddRequestDto();
addRequest.setMessageType(MessageType.SHORT);
addRequest.setReceiverId(request.getMobile());
addRequest.setSendTime(LocalDateTime.now());
addRequest.setTitle(request.getTitle());
addRequest.setSendResult(MessageResult.WAIT);
addRequest.setRequestDataJson(request.toJson());
// 创建子表
MsgwSendDetails sendDetails = importManager.addSendDetail(addRequest);
// 发送
sendManager.sendMessageByQtkMessageAndQuartz(sendDetails);
return new MsgwSmsSendResponse();
}

@Override
public MsgwWxMiniSendResponse wxMiniDirectSend(MsgwWxMiniSendRequest request) {
MessageSendDetailsAddRequestDto addRequest = new MessageSendDetailsAddRequestDto();
addRequest.setModelId(request.getTemplateId());
addRequest.setMessageType(MessageType.MINI_PROGRAM);
addRequest.setReceiverId(request.getWxOpenId());
addRequest.setSendTime(LocalDateTime.now());
addRequest.setTitle(request.getTitle());
addRequest.setSendResult(MessageResult.WAIT);
addRequest.setRequestDataJson(request.toJson());
// 创建子表
MsgwSendDetails sendDetails = importManager.addSendDetail(addRequest);
// 发送
sendManager.sendMessageByQtkMessageAndQuartz(sendDetails);
return new MsgwWxMiniSendResponse();
}

@Override
public MsgwWxMpSendResponse wxMpDirectSend(MsgwWxMpSendRequest request) {
MessageSendDetailsAddRequestDto addRequest = new MessageSendDetailsAddRequestDto();
addRequest.setModelId(request.getTemplateId());
addRequest.setMessageType(MessageType.OFFICIAL_ACCOUNTS);
addRequest.setReceiverId(request.getMpOpenId());
addRequest.setSendTime(LocalDateTime.now());
addRequest.setTitle(request.getTitle());
addRequest.setSendResult(MessageResult.WAIT);
addRequest.setRequestDataJson(request.toJson());
// 创建子表
MsgwSendDetails sendDetails = importManager.addSendDetail(addRequest);
// 发送
sendManager.sendMessageByQtkMessageAndQuartz(sendDetails);
return new MsgwWxMpSendResponse();
}


}

+ 56
- 0
zhywpt-app-msgw/src/main/java/cn/com/taiji/msgw/web/JsonPostServiceController.java Parādīt failu

@@ -0,0 +1,56 @@
/*
* Date: 2015年4月9日 author: Peream (peream@gmail.com)
*
*/
package cn.com.taiji.msgw.web;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.apache.skywalking.apm.toolkit.trace.TraceContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import cn.com.taiji.core.manager.comm.BaseJsonPostController;
import cn.com.taiji.core.manager.comm.JsonPostHandleManager;
import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;

/**
*
* @author Peream <br>
* Create Time:2015年4月9日 下午7:08:46<br>
* <a href="mailto:peream@gmail.com">peream@gmail.com</a>
* @since 1.0
* @version 1.0
*/
@RestController
public class JsonPostServiceController extends BaseJsonPostController {
@Autowired
private JsonPostHandleManager handleManager;

@CrossOrigin
@RequestMapping(value = "/api/json", method = RequestMethod.POST)
public void jsonPostRequest(@RequestBody SignJsonRequest req, HttpServletRequest request, HttpServletResponse response)
throws IOException {
response.setCharacterEncoding("UTF-8");
super.handleComm(req, req.getReqId(), handleManager, request, response);
}

@Trace
@Tag(key = "req", value = "arg[0]")
@Tag(key = "reqId", value = "arg[1]")
@CrossOrigin
@RequestMapping(value = "/api/json/{reqId}", method = RequestMethod.POST)
public void jsonPostRequest(@RequestBody SignJsonRequest req, @PathVariable("reqId") String reqId,
HttpServletRequest request, HttpServletResponse response) throws IOException {
String traceId = TraceContext.traceId();
logger.info("traceId:{},jsonReq:{}",traceId,req);
response.setCharacterEncoding("UTF-8");
super.handleComm(req, req.getReqId(), handleManager, request, response);
}

}

Notiek ielāde…
Atcelt
Saglabāt