mp:前端接入发送消息

This commit is contained in:
YunaiV
2023-01-10 23:24:08 +08:00
parent 6325dd288c
commit 541ee81300
6 changed files with 59 additions and 59 deletions

View File

@ -37,10 +37,11 @@ public class MpMessageController {
}
@PostMapping("/send")
// @ApiOperation("获得粉丝消息表分页")
// @PreAuthorize("@ss.hasPermission('mp:message:query')")
public CommonResult<Long> sendMessage(@Valid @RequestBody MpMessageSendReqVO reqVO) {
return success(mpMessageService.sendKefuMessage(reqVO));
@ApiOperation("给粉丝发送消息")
@PreAuthorize("@ss.hasPermission('mp:message:send')")
public CommonResult<MpMessageRespVO> sendMessage(@Valid @RequestBody MpMessageSendReqVO reqVO) {
MpMessageDO message = mpMessageService.sendKefuMessage(reqVO);
return success(MpMessageConvert.INSTANCE.convert(message));
}
}

View File

@ -52,8 +52,8 @@ public interface MpMessageService {
* 注意,该方法会真实发送消息
*
* @param sendReqVO 消息内容
* @return 消息编号
* @return 消息
*/
Long sendKefuMessage(MpMessageSendReqVO sendReqVO);
MpMessageDO sendKefuMessage(MpMessageSendReqVO sendReqVO);
}

View File

@ -104,7 +104,7 @@ public class MpMessageServiceImpl implements MpMessageService {
}
@Override
public Long sendKefuMessage(MpMessageSendReqVO sendReqVO) {
public MpMessageDO sendKefuMessage(MpMessageSendReqVO sendReqVO) {
// 校验消息格式
MpUtils.validateMessage(validator, sendReqVO.getType(), sendReqVO);
@ -116,18 +116,17 @@ public class MpMessageServiceImpl implements MpMessageService {
WxMpKefuMessage wxMessage = MpMessageConvert.INSTANCE.convert(sendReqVO, user);
WxMpService mpService = mpServiceFactory.getRequiredMpService(user.getAppId());
try {
boolean result = mpService.getKefuService().sendKefuMessage(wxMessage);
System.out.println(result);
mpService.getKefuService().sendKefuMessageWithResponse(wxMessage);
} catch (WxErrorException e) {
throw new RuntimeException(e);
}
// 记录消息
MpMessageDO message = MpMessageConvert.INSTANCE.convert(wxMessage, account, user);
message.setSendFrom(MpMessageSendFromEnum.USER_TO_MP.getFrom());
message.setSendFrom(MpMessageSendFromEnum.MP_TO_USER.getFrom());
downloadMessageMedia(mpService, message);
mpMessageMapper.insert(message);
return message.getId();
return message;
}
/**