This commit is contained in:
张良(004796)
2024-01-26 17:10:37 +08:00
parent 747bc38a28
commit 8531cf8c12
40 changed files with 385 additions and 315 deletions

View File

@@ -1,11 +1,17 @@
package com.ruoyi.cai.notice;
import com.alibaba.fastjson.JSON;
import com.ruoyi.cai.domain.Account;
import com.ruoyi.cai.domain.Gift;
import com.ruoyi.cai.domain.User;
import com.ruoyi.cai.notice.data.*;
import com.ruoyi.cai.notice.data.NoticeR;
import com.ruoyi.cai.notice.data.child.*;
import com.ruoyi.cai.notice.dto.CashSuccessSendMesDTO;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import com.ruoyi.cai.service.AccountService;
import com.ruoyi.cai.service.UserService;
import com.ruoyi.cai.util.CaiDateUtil;
import com.ruoyi.cai.util.CaiNumUtil;
import com.ruoyi.yunxin.YunExecutor;
import com.ruoyi.yunxin.Yunxin;
import com.ruoyi.yunxin.resp.SendMsgResp;
@@ -16,30 +22,38 @@ import org.springframework.stereotype.Component;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Component
@Slf4j
public class YunxinHttpService {
private final static Long SYS_NOTICE_ID = 2L;
/**
* 网易云信的 "动态通知" id
*/
private final static Long FOLLOW_NOTICE_ID = 11L;
@Autowired
private Yunxin yunxin;
@Autowired
private AccountService accountService;
@Autowired
private UserService userService;
/**
* 注册赠送消息
*/
public void registerRewardCoin(Long toUid,Long rewardCoin,Long totalCoin){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("系统奖励");
data.setCurrentDate();
data.setTxt1("陌生人交友需谨慎,添加陌生人微信,QQ失去平台监管有极大被骗风险凡是诱导加微信QQ引导到其他平台或以色情为由索取礼物的行为请大家及时举报一经查明直接永久封号良好的交友氛围需大家共同维护希望大家提高自我警惕性杜绝被骗");
data.addFields("注册奖励",rewardCoin+"云贝");
data.addFields("注册奖励",totalCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -51,15 +65,14 @@ public class YunxinHttpService {
*/
public void rechargeCoinSendMessage(Long toUid,Long rewardCoin,Long totalCoin){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("购买成功");
data.setCurrentDate();
data.addFields("购买云贝",rewardCoin+"云贝");
data.addFields("总云贝",totalCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -70,19 +83,21 @@ public class YunxinHttpService {
/**
* 收到礼物发送消息
*/
public void getGiftSendMessage(Long toUid,String giftName,Long giftPrice,Long incomeCoin,Long totalCoin){
public void getGiftSendMessage(Long toUid, Gift gift, Long incomeCoin, Long totalCoin){
if(gift == null){
return;
}
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("收到礼物");
data.setCurrentDate();
data.addFields("礼物名称",giftName);
data.addFields("礼物单价",giftPrice+"云贝");
data.addFields("礼物名称",gift.getName());
data.addFields("礼物单价",gift.getPrice()+"云贝");
data.addFields("收入云贝",incomeCoin+"云贝");
data.addFields("总云贝",totalCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -92,6 +107,7 @@ public class YunxinHttpService {
/**
* 邀请奖励
*/
@Deprecated
public void inviteRewardSendMessage(Long toUid,String type,String sourceNickname,String sourceUsercode,Long incomeCoin){
YunExecutor.YUN_EXECUTOR.execute(() -> {
String str = "";
@@ -100,16 +116,15 @@ public class YunxinHttpService {
}else if("reward".equals(type)){
str = "奖励分成";
}
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("邀请奖励");
data.setCurrentDate();
data.addFields("用户昵称",sourceNickname);
data.addFields("用户蜜瓜号",sourceUsercode);
data.addFields(str,incomeCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -119,20 +134,23 @@ public class YunxinHttpService {
/**
* 用户充值,邀请人返现
*/
public void inviteCashbackSendMessage(Long toUid,String sourceNickname,String sourceUsercode,Long payCoin,Long incomeCoin){
public void inviteCashbackSendMessage(Long toUid,Long sourceId,BigDecimal rate, Long payCoin, Long incomeCoin){
User sourceUser = userService.getById(sourceId);
if(sourceUser == null){
return;
}
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("充值分成");
data.setTxt1("充值分成:每一笔账户充值将给其邀请账户额外赠送{}%的云贝");
data.setTxt1(String.format("充值分成:每一笔账户充值将给其邀请账户额外赠送%s的云贝", CaiNumUtil.rateToStr(rate)));
data.setCurrentDate();
data.addFields("充值用户",sourceNickname);
data.addFields("蜜瓜号",sourceUsercode);
data.addFields("充值用户",sourceUser.getNickname());
data.addFields("蜜瓜号",sourceUser.getUsercode());
data.addFields("充值金额",payCoin+"云贝");
data.addFields("充值分成",incomeCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -145,8 +163,7 @@ public class YunxinHttpService {
public void cashSuccessSendMessage(Long toUid, LocalDateTime cashTime, BigDecimal cashMoney, BigDecimal realCashMonty,
String cardAccount,LocalDateTime verifyTime){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("提现成功");
data.setCurrentDate();
@@ -156,22 +173,43 @@ public class YunxinHttpService {
data.addFields("到账金额",realCashMonty.toString()+"");
data.addFields("到账账户","支付宝("+cardAccount+")");
data.addFields("审核时间",CaiDateUtil.localDateTimeToString(verifyTime));
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
});
}
public void batchCashSuccessSendMessage(List<CashSuccessSendMesDTO> dtos){
YunExecutor.YUN_EXECUTOR.execute(() -> {
for (CashSuccessSendMesDTO dto : dtos) {
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("提现成功");
data.setCurrentDate();
data.addFields("提现时间", CaiDateUtil.localDateTimeToString(dto.getCashTime()));
data.addFields("提现金额",dto.getCashMoney().toString()+"");
data.addFields("提现方式","支付宝");
data.addFields("到账金额",dto.getRealCashMonty().toString()+"");
data.addFields("到账账户","支付宝("+dto.getCardAccount()+")");
data.addFields("审核时间",CaiDateUtil.localDateTimeToString(dto.getVerifyTime()));
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(dto.getToUid(), SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
}
});
}
/**
* 提现审核转账发送消息【提现审核失败】
*/
public void cashFailSendMessage(Long toUid, LocalDateTime cashTime, BigDecimal cashMoney, String remark){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("提现失败");
data.setCurrentDate();
@@ -179,8 +217,8 @@ public class YunxinHttpService {
data.addFields("提现金额",cashMoney.toString()+"");
data.addFields("提现方式","支付宝");
data.setTxt2(remark);
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -192,14 +230,13 @@ public class YunxinHttpService {
*/
public void reportSendMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("已收到你的举报信息");
data.setTxt1("感谢您提交的举报信息,拒绝不良风气,良好的氛围需要大家共同维护。");
data.setCurrentDate();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -219,8 +256,7 @@ public class YunxinHttpService {
LocalDateTime followTime,
Integer gender){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendFollowNew messageExtNew = new MessageSendFollowNew(MessageBaseTypeEnum.SEND_FOLLOW);
MessageSendFollowData data = new MessageSendFollowData();
SendFollowNoticeData data = new SendFollowNoticeData();
data.setUserid(followUserId);
data.setNickname(followNickname);
data.setAvatar(followAvatar);
@@ -228,8 +264,8 @@ public class YunxinHttpService {
data.setCity(followCity);
data.setTime(CaiDateUtil.localDateTimeToString(followTime));
data.setSex(gender);
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<SendFollowNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_FOLLOW, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -241,8 +277,7 @@ public class YunxinHttpService {
*/
public void passAnchorSendMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("恭喜你通过自拍认证,成为平台女神");
data.setCurrentDate();
@@ -251,8 +286,8 @@ public class YunxinHttpService {
data.addFields("赚钱小秘密一","多给在线男生打招呼");
data.addFields("赚钱小秘密二","照片越好看,男生越喜欢");
data.addFields("赚钱小秘密三","勤发动态,让他感受到你的美");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -265,13 +300,12 @@ public class YunxinHttpService {
*/
public void changeInviteConfigSendMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("恭喜成为邀请女神");
data.setCurrentDate();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -283,10 +317,9 @@ public class YunxinHttpService {
*/
public void sendGiftMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendGiftMessageNew messageExtNew = new MessageSendGiftMessageNew(MessageBaseTypeEnum.SEND_GIFT_MESSAGE);
MessageSendGiftMessageData data = new MessageSendGiftMessageData();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
SendGiftMessageNoticeData data = new SendGiftMessageNoticeData();
NoticeR<SendGiftMessageNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_GIFT_MESSAGE, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -299,8 +332,7 @@ public class YunxinHttpService {
*/
public void getGuardMessage(Long toUid,Integer num,Long price,BigDecimal incomeCoin,BigDecimal totalCoin){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("收到守护符");
data.setCurrentDate();
@@ -308,8 +340,8 @@ public class YunxinHttpService {
data.addFields("守护单价",price+"云贝");
data.addFields("收入云贝",incomeCoin+"云贝");
data.addFields("总云贝",totalCoin+"云贝");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -322,10 +354,9 @@ public class YunxinHttpService {
*/
public void sendOnlineAttentionNotice(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendOnlineAttentionNew messageExtNew = new MessageSendOnlineAttentionNew(MessageBaseTypeEnum.TXT);
MessageSendOnlineAttentionData data = new MessageSendOnlineAttentionData();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
SendOnlineAttentionNoticeData data = new SendOnlineAttentionNoticeData();
NoticeR<SendOnlineAttentionNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_ONLINE_ATTENTION, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -337,14 +368,13 @@ public class YunxinHttpService {
*/
public void cancelAnchorMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("取消女神通知");
data.setCurrentDate();
data.setTxt1("因多次违规或被投诉,已被取消女神资格!");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -357,14 +387,13 @@ public class YunxinHttpService {
*/
public void dynamicAuditMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("动态审核通知");
data.setCurrentDate();
data.setTxt1("您的动态因不符合规范,已被删除,多次违规会被取消大咖资格或封号处理");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -377,16 +406,15 @@ public class YunxinHttpService {
*/
public void albumAuditMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("相册审核通知");
data.setCurrentDate();
data.setTxt1("您上传的照片不符合要求,已被删除,多次违规会被取消大咖资格或封号处理,请按照指引上传符合要求的照片");
data.setLink_type(1);
data.setLink_url("/index/about/album_rule.html");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -399,14 +427,13 @@ public class YunxinHttpService {
*/
public void nickAuditMessage(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageExtNew messageExtNew = new MessageExtNew(MessageBaseTypeEnum.TXT);
MessageExtData data = new MessageExtData();
ExtNoticeData data = new ExtNoticeData();
data.setAction(1);
data.setTitle("重置昵称通知");
data.setCurrentDate();
data.setTxt1("您的昵称不合格,已被重置,多次违规会被封号!");
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -419,10 +446,9 @@ public class YunxinHttpService {
*/
public void sendRechargeWindowsAmount(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendRechargeWindowsAmountNew messageExtNew = new MessageSendRechargeWindowsAmountNew(MessageBaseTypeEnum.SEND_GIFTWINDOWS_AMOUNT);
MessageSendRechargeWindowsAmountData data = new MessageSendRechargeWindowsAmountData();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
SendRechargeWindowsAmountNoticeData data = new SendRechargeWindowsAmountNoticeData();
NoticeR<SendRechargeWindowsAmountNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.RECHARGE_WINDOWS_AMOUNT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -435,10 +461,9 @@ public class YunxinHttpService {
*/
public void sendGiftWindowsAmount(Long toUid){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendGiftWindowsAmountNew messageExtNew = new MessageSendGiftWindowsAmountNew(MessageBaseTypeEnum.SEND_GIFTWINDOWS_AMOUNT);
MessageSendGiftWindowsAmountData data = new MessageSendGiftWindowsAmountData();
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
SendGiftWindowsAmountNoticeData data = new SendGiftWindowsAmountNoticeData();
NoticeR<SendGiftWindowsAmountNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_GIFT_WINDOWS_AMOUNT, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}
@@ -451,8 +476,7 @@ public class YunxinHttpService {
*/
public void sendFollowDynamicBath(Long toUid, User user,String image,String content){
YunExecutor.YUN_EXECUTOR.execute(() -> {
MessageSendFollowDynamicNew messageExtNew = new MessageSendFollowDynamicNew(MessageBaseTypeEnum.SEND_FOLLOW_DYNAMIC);
MessageSendFollowDynamicData data = new MessageSendFollowDynamicData();
SendFollowDynamicNoticeData data = new SendFollowDynamicNoticeData();
data.setUserid(user.getId());
data.setNickname(user.getNickname());
data.setAvatar(user.getAvatar());
@@ -461,8 +485,8 @@ public class YunxinHttpService {
data.setTime(CaiDateUtil.getCurrentTimeStr());
data.setImage(image);
data.setTitle(content);
messageExtNew.setData(data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, messageExtNew);
NoticeR<SendFollowDynamicNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_FOLLOW_DYNAMIC, data);
YxDataR<SendMsgResp> r = yunxin.sendTo(toUid, SYS_NOTICE_ID, notice);
if(r == null || !r.isSuccess()){
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
}

View File

@@ -1,8 +0,0 @@
package com.ruoyi.cai.notice.data;
import lombok.Data;
@Data
public class MessageBaseData {
private Integer type;
}

View File

@@ -1,18 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageExtData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageExtNew extends MessageBaseData {
private MessageExtData data;
public MessageExtNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageExtNew() {
}
}

View File

@@ -1,20 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendFollowData;
import com.ruoyi.cai.notice.data.child.MessageSendFollowDynamicData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendFollowDynamicNew extends MessageBaseData{
private MessageSendFollowDynamicData data;
public MessageSendFollowDynamicNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendFollowDynamicNew() {
}
}

View File

@@ -1,19 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendFollowData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendFollowNew extends MessageBaseData{
private MessageSendFollowData data;
public MessageSendFollowNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendFollowNew() {
}
}

View File

@@ -1,20 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendGiftMessageData;
import com.ruoyi.cai.notice.data.child.MessageSendRechargeWindowsAmountData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendGiftMessageNew extends MessageBaseData{
private MessageSendGiftMessageData data;
public MessageSendGiftMessageNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendGiftMessageNew() {
}
}

View File

@@ -1,20 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendFollowData;
import com.ruoyi.cai.notice.data.child.MessageSendGiftWindowsAmountData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendGiftWindowsAmountNew extends MessageBaseData{
private MessageSendGiftWindowsAmountData data;
public MessageSendGiftWindowsAmountNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendGiftWindowsAmountNew() {
}
}

View File

@@ -1,20 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendOnlineAttentionData;
import com.ruoyi.cai.notice.data.child.MessageSendRechargeWindowsAmountData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendOnlineAttentionNew extends MessageBaseData{
private MessageSendOnlineAttentionData data;
public MessageSendOnlineAttentionNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendOnlineAttentionNew() {
}
}

View File

@@ -1,20 +0,0 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.data.child.MessageSendGiftWindowsAmountData;
import com.ruoyi.cai.notice.data.child.MessageSendRechargeWindowsAmountData;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import lombok.Data;
@Data
public class MessageSendRechargeWindowsAmountNew extends MessageBaseData{
private MessageSendRechargeWindowsAmountData data;
public MessageSendRechargeWindowsAmountNew(MessageBaseTypeEnum typeEnum) {
this.setType(typeEnum.getCode());
}
public MessageSendRechargeWindowsAmountNew() {
}
}

View File

@@ -0,0 +1,30 @@
package com.ruoyi.cai.notice.data;
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
import com.ruoyi.common.core.domain.R;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@NoArgsConstructor
public class NoticeR<T> implements Serializable {
private static final long serialVersionUID = 1L;
private Integer type;
private T data;
public static <T> NoticeR<T> ok(MessageBaseTypeEnum typeEnum, T data) {
return restResult(typeEnum.getCode(), data);
}
private static <T> NoticeR<T> restResult(Integer type, T data) {
NoticeR<T> r = new NoticeR<>();
r.setType(type);
r.setData(data);
return r;
}
}

View File

@@ -8,7 +8,7 @@ import java.util.ArrayList;
import java.util.List;
@Data
public class MessageExtData {
public class ExtNoticeData {
private Integer action;
private String title = "";
private String date;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendFollowDynamicData {
public class SendFollowDynamicNoticeData {
private Long userid;
private String nickname;
private String avatar;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendFollowData {
public class SendFollowNoticeData {
private Long userid;
private String nickname;
private String avatar;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendGiftMessageData {
public class SendGiftMessageNoticeData {
private Long gift_id;
private String gift_name;
private String gift_url;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendGiftWindowsAmountData {
public class SendGiftWindowsAmountNoticeData {
private Long id;
private String nickname;
private String avatar;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendOnlineAttentionData {
public class SendOnlineAttentionNoticeData {
private Long userid;
private String nickname;
private String avatar;

View File

@@ -3,7 +3,7 @@ package com.ruoyi.cai.notice.data.child;
import lombok.Data;
@Data
public class MessageSendRechargeWindowsAmountData {
public class SendRechargeWindowsAmountNoticeData {
private Long id;
private String nickname;
private String avatar;

View File

@@ -0,0 +1,16 @@
package com.ruoyi.cai.notice.dto;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
public class CashSuccessSendMesDTO {
private Long toUid;
LocalDateTime cashTime;
BigDecimal cashMoney;
BigDecimal realCashMonty;
String cardAccount;
LocalDateTime verifyTime;
}

View File

@@ -14,11 +14,16 @@ public enum MessageBaseTypeEnum {
* 用户充值,邀请人返现, 群打招呼审核失败
*/
TXT(11,"文本消息"),
@Deprecated
REGISTER_SEND_CLEAN(13,"注册发送IM单图文消息"),
SEND_GIFT_MESSAGE(14,"发送礼物自定义消息"),
SEND_FOLLOW(16,"自定义被关注消息"),
SEND_FOLLOW_DYNAMIC(17,"关注动态"),
SEND_GIFTWINDOWS_AMOUNT(17,"关注动态"),
RECHARGE_WINDOWS_AMOUNT(17,"关注动态"),
SEND_GIFT_MESSAGE(17,"关注动态"),
SEND_ONLINE_ATTENTION(18,"上线了通知"),
RECHARGE_WINDOWS_AMOUNT(12,"发送充值飘窗提醒"),
SEND_GIFT_WINDOWS_AMOUNT(13,"礼物飘窗"),
;
private final Integer code;