init
This commit is contained in:
@@ -0,0 +1,201 @@
|
|||||||
|
package com.ruoyi.test.business;
|
||||||
|
|
||||||
|
import com.ruoyi.cai.domain.Gift;
|
||||||
|
import com.ruoyi.cai.domain.User;
|
||||||
|
import com.ruoyi.cai.mq.handle.dto.WindowRechargeDTO;
|
||||||
|
import com.ruoyi.cai.notice.YunxinHttpService;
|
||||||
|
import com.ruoyi.cai.notice.data.child.SendGiftWindowsAmountNoticeData;
|
||||||
|
import com.ruoyi.cai.service.GiftService;
|
||||||
|
import com.ruoyi.cai.service.UserService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Collections;
|
||||||
|
|
||||||
|
@SpringBootTest
|
||||||
|
@Slf4j
|
||||||
|
public class NoticeTest {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private YunxinHttpService yunxinHttpService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 注册赠送消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void registerRewardCoin(){
|
||||||
|
yunxinHttpService.registerRewardCoin(33497L,88L,88L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充值云贝成功消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void rechargeCoinSendMessage(){
|
||||||
|
yunxinHttpService.rechargeCoinSendMessage(33497L,188L,1000L);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private GiftService giftService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收到礼物发送消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void getGiftSendMessage(){
|
||||||
|
Gift gift = giftService.getById(1);
|
||||||
|
yunxinHttpService.getGiftSendMessage(33497L,gift,50L,100L);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户充值,邀请人返现
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void inviteCashbackSendMessage(){
|
||||||
|
BigDecimal rate = new BigDecimal("0.30");
|
||||||
|
yunxinHttpService.inviteCashbackSendMessage(33497L,10166L,rate,1000L,30L);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 提现审核转账发送消息【提现审核成功】
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void cashSuccessSendMessage(){
|
||||||
|
LocalDateTime cashTime = LocalDateTime.now().plusDays(-1);
|
||||||
|
BigDecimal cashMoney = new BigDecimal("78.00");
|
||||||
|
LocalDateTime verifyTime = LocalDateTime.now();
|
||||||
|
yunxinHttpService.cashSuccessSendMessage(33497L,
|
||||||
|
cashTime,cashMoney,cashMoney,"张总",verifyTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 提现审核转账发送消息【提现审核失败】
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void cashFailSendMessage(){
|
||||||
|
LocalDateTime cashTime = LocalDateTime.now().plusDays(-1);
|
||||||
|
BigDecimal cashMoney = new BigDecimal("78.00");
|
||||||
|
yunxinHttpService.cashFailSendMessage(33497L,
|
||||||
|
cashTime,cashMoney,"账户有问题,打不了款");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 举报发送消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void reportSendMessage(){
|
||||||
|
yunxinHttpService.reportSendMessage(33497L);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private UserService userService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 关注发送消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void followedSendMessage(){
|
||||||
|
User followUser = userService.getById(10166L);
|
||||||
|
yunxinHttpService.followedSendMessage(33497L,followUser,LocalDateTime.now());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过女神认证发送消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void passAnchorSendMessage(){
|
||||||
|
yunxinHttpService.passAnchorSendMessage(33497L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送礼物自定义消息 (发送方和接收方的消息)
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void sendGiftMessage(){
|
||||||
|
Gift gift = giftService.getById(1);
|
||||||
|
yunxinHttpService.sendGiftMessage(10166L,33497L,gift,20);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收到守护符通知
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void getGuardMessage(){
|
||||||
|
yunxinHttpService.getGuardMessage(33497L,1L,1314L,520L,1233L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送上线了批量自定义消息
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void sendOnlineAttentionNotice(){
|
||||||
|
User loginUser = userService.getById(10166L);
|
||||||
|
yunxinHttpService.sendOnlineAttentionNotice(Collections.singletonList(33497L),loginUser);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消女神通知
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void cancelAnchorMessage(){
|
||||||
|
yunxinHttpService.cancelAnchorMessage(33497L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 动态审核通知
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void dynamicAuditMessage(){
|
||||||
|
yunxinHttpService.dynamicAuditMessage(33497L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 昵称重置审核通知
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void nickAuditMessage(){
|
||||||
|
yunxinHttpService.nickAuditMessage(33497L);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送充值飘窗提醒
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void sendRechargeWindowsAmount(){
|
||||||
|
User followUser = userService.getById(10166L);
|
||||||
|
WindowRechargeDTO dto = new WindowRechargeDTO();
|
||||||
|
dto.setId(10166L);
|
||||||
|
dto.setNickname(followUser.getNickname());
|
||||||
|
dto.setAvatar(followUser.getAvatar());
|
||||||
|
dto.setAmount(882L);
|
||||||
|
yunxinHttpService.sendRechargeWindowsAmount(Collections.singletonList(33497L),dto);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送充值礼物提醒
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void sendGiftWindowsAmount(){
|
||||||
|
User fromUser = userService.getById(33497L);
|
||||||
|
User toUser = userService.getById(10166L);
|
||||||
|
Gift gift = giftService.getById(1);
|
||||||
|
SendGiftWindowsAmountNoticeData data = new SendGiftWindowsAmountNoticeData();
|
||||||
|
data.setId(fromUser.getId());
|
||||||
|
data.setNickname(fromUser.getNickname());
|
||||||
|
data.setAvatar(fromUser.getAvatar());
|
||||||
|
data.setToid(toUser.getId());
|
||||||
|
data.setTonickname(toUser.getNickname());
|
||||||
|
data.setToavatar(toUser.getAvatar());
|
||||||
|
data.setAmount(gift.getPrice());
|
||||||
|
data.setGiftname(gift.getName());
|
||||||
|
data.setGiftimg(gift.getImg());
|
||||||
|
data.setGifttotal(2L);
|
||||||
|
yunxinHttpService.sendGiftWindowsAmount(Collections.singletonList(33497L),data);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -16,6 +16,7 @@ import com.ruoyi.cai.service.VipOrderService;
|
|||||||
import com.ruoyi.common.annotation.Log;
|
import com.ruoyi.common.annotation.Log;
|
||||||
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.common.core.domain.R;
|
||||||
import com.ruoyi.common.enums.BusinessType;
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
|
import com.ruoyi.common.helper.LoginHelper;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -56,6 +57,7 @@ public class ConsumeController {
|
|||||||
@Operation(summary = "创建VIP订单")
|
@Operation(summary = "创建VIP订单")
|
||||||
@Log(title = "创建VIP订单", businessType = BusinessType.OTHER, isSaveDb = true)
|
@Log(title = "创建VIP订单", businessType = BusinessType.OTHER, isSaveDb = true)
|
||||||
public R<OrderCreateVo> vipOrderCreate(@RequestBody AddVipOrderDto dto){
|
public R<OrderCreateVo> vipOrderCreate(@RequestBody AddVipOrderDto dto){
|
||||||
|
dto.setUserId(LoginHelper.getUserId());
|
||||||
VipOrder order = vipOrderService.addVipOrder(dto);
|
VipOrder order = vipOrderService.addVipOrder(dto);
|
||||||
OrderCreateVo vo = new OrderCreateVo();
|
OrderCreateVo vo = new OrderCreateVo();
|
||||||
vo.setPrice(order.getPrice());
|
vo.setPrice(order.getPrice());
|
||||||
@@ -69,6 +71,7 @@ public class ConsumeController {
|
|||||||
@Operation(summary = "创建充值订单")
|
@Operation(summary = "创建充值订单")
|
||||||
@Log(title = "创建充值订单", businessType = BusinessType.OTHER, isSaveDb = true)
|
@Log(title = "创建充值订单", businessType = BusinessType.OTHER, isSaveDb = true)
|
||||||
public R<OrderCreateVo> rechargeOrderCreate(@RequestBody AddRechargeOrderDto dto){
|
public R<OrderCreateVo> rechargeOrderCreate(@RequestBody AddRechargeOrderDto dto){
|
||||||
|
dto.setUserId(LoginHelper.getUserId());
|
||||||
RechargeOrder order = rechargeOrderService.addRechargeOrder(dto);
|
RechargeOrder order = rechargeOrderService.addRechargeOrder(dto);
|
||||||
OrderCreateVo vo = new OrderCreateVo();
|
OrderCreateVo vo = new OrderCreateVo();
|
||||||
vo.setPrice(order.getPrice());
|
vo.setPrice(order.getPrice());
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ import com.ruoyi.cai.domain.Account;
|
|||||||
import com.ruoyi.cai.domain.ConsumeLog;
|
import com.ruoyi.cai.domain.ConsumeLog;
|
||||||
import com.ruoyi.cai.domain.Gift;
|
import com.ruoyi.cai.domain.Gift;
|
||||||
import com.ruoyi.cai.domain.User;
|
import com.ruoyi.cai.domain.User;
|
||||||
import com.ruoyi.cai.dto.ConsumeResp;
|
|
||||||
import com.ruoyi.cai.dto.app.query.GiveGiftReq;
|
import com.ruoyi.cai.dto.app.query.GiveGiftReq;
|
||||||
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
||||||
import com.ruoyi.cai.dto.commom.consumer.GiftConsumerResp;
|
import com.ruoyi.cai.dto.commom.consumer.GiftConsumerResp;
|
||||||
@@ -24,7 +23,6 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -144,15 +142,15 @@ public class ConsumerManager {
|
|||||||
log.error("充值成功通知失败!",e);
|
log.error("充值成功通知失败!",e);
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
BigDecimal decimal = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WINDOW_RECHARGE_THRESHOLD);
|
Long minPrice = systemConfigManager.getSystemConfigOfLong(SystemConfigEnum.WINDOW_RECHARGE_THRESHOLD);
|
||||||
if(decimal.compareTo(resp.getPrice()) < 0){
|
if(resp.getRechargeCoin() > minPrice){
|
||||||
Integer rankHide = resp.getUser().getRankHide();
|
Integer rankHide = resp.getUser().getRankHide();
|
||||||
if(rankHide == 0){
|
if(rankHide == 0){
|
||||||
WindowRechargeDTO windowRecharge = new WindowRechargeDTO();
|
WindowRechargeDTO windowRecharge = new WindowRechargeDTO();
|
||||||
windowRecharge.setId(resp.getUserId());
|
windowRecharge.setId(resp.getUserId());
|
||||||
windowRecharge.setNickname(resp.getUser().getNickname());
|
windowRecharge.setNickname(resp.getUser().getNickname());
|
||||||
windowRecharge.setAvatar(resp.getUser().getAvatar());
|
windowRecharge.setAvatar(resp.getUser().getAvatar());
|
||||||
windowRecharge.setAmount(resp.getPrice());
|
windowRecharge.setAmount(resp.getRechargeCoin());
|
||||||
windowRecharge.setTime(LocalDateTime.now());
|
windowRecharge.setTime(LocalDateTime.now());
|
||||||
amqpProducer.sendWindowMq(windowRecharge);
|
amqpProducer.sendWindowMq(windowRecharge);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ public class WindowGiftHandle implements IHandle{
|
|||||||
data.setGiftname(gift.getName());
|
data.setGiftname(gift.getName());
|
||||||
data.setGiftimg(gift.getImg());
|
data.setGiftimg(gift.getImg());
|
||||||
data.setGifttotal(windowGift.getGiftNum());
|
data.setGifttotal(windowGift.getGiftNum());
|
||||||
data.setTime(CaiDateUtil.getCurrentTimeStr());
|
data.setTime(System.currentTimeMillis());
|
||||||
yunxinHttpService.sendGiftWindowsAmount(list,data);
|
yunxinHttpService.sendGiftWindowsAmount(list,data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ public class WindowRechargeDTO extends CommonDTO {
|
|||||||
private Long id;
|
private Long id;
|
||||||
private String nickname;
|
private String nickname;
|
||||||
private String avatar;
|
private String avatar;
|
||||||
private BigDecimal amount;
|
private Long amount;
|
||||||
private LocalDateTime time;
|
private LocalDateTime time;
|
||||||
public WindowRechargeDTO() {
|
public WindowRechargeDTO() {
|
||||||
this.setType(CommonConsumerEnum.WINDOW_RECHARGE);
|
this.setType(CommonConsumerEnum.WINDOW_RECHARGE);
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.ruoyi.cai.domain.Gift;
|
|||||||
import com.ruoyi.cai.domain.User;
|
import com.ruoyi.cai.domain.User;
|
||||||
import com.ruoyi.cai.mq.handle.dto.WindowRechargeDTO;
|
import com.ruoyi.cai.mq.handle.dto.WindowRechargeDTO;
|
||||||
import com.ruoyi.cai.notice.data.NoticeR;
|
import com.ruoyi.cai.notice.data.NoticeR;
|
||||||
|
import com.ruoyi.cai.notice.data.WindowNoticeR;
|
||||||
import com.ruoyi.cai.notice.data.child.*;
|
import com.ruoyi.cai.notice.data.child.*;
|
||||||
import com.ruoyi.cai.notice.dto.CashSuccessSendMesDTO;
|
import com.ruoyi.cai.notice.dto.CashSuccessSendMesDTO;
|
||||||
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
|
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
|
||||||
@@ -12,6 +13,7 @@ import com.ruoyi.cai.service.AccountService;
|
|||||||
import com.ruoyi.cai.service.UserService;
|
import com.ruoyi.cai.service.UserService;
|
||||||
import com.ruoyi.cai.util.CaiDateUtil;
|
import com.ruoyi.cai.util.CaiDateUtil;
|
||||||
import com.ruoyi.cai.util.CaiNumUtil;
|
import com.ruoyi.cai.util.CaiNumUtil;
|
||||||
|
import com.ruoyi.common.utils.StringUtils;
|
||||||
import com.ruoyi.yunxin.YunExecutor;
|
import com.ruoyi.yunxin.YunExecutor;
|
||||||
import com.ruoyi.yunxin.Yunxin;
|
import com.ruoyi.yunxin.Yunxin;
|
||||||
import com.ruoyi.yunxin.resp.SendMsgResp;
|
import com.ruoyi.yunxin.resp.SendMsgResp;
|
||||||
@@ -51,7 +53,7 @@ public class YunxinHttpService {
|
|||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.setTxt1("陌生人交友需谨慎,添加陌生人微信,QQ失去平台监管有极大被骗风险,凡是诱导加微信,QQ引导到其他平台或以色情为由索取礼物的行为,请大家及时举报,一经查明直接永久封号,良好的交友氛围需大家共同维护,希望大家提高自我警惕性杜绝被骗");
|
data.setTxt1("陌生人交友需谨慎,添加陌生人微信,QQ失去平台监管有极大被骗风险,凡是诱导加微信,QQ引导到其他平台或以色情为由索取礼物的行为,请大家及时举报,一经查明直接永久封号,良好的交友氛围需大家共同维护,希望大家提高自我警惕性杜绝被骗");
|
||||||
data.addFields("注册奖励",rewardCoin+"云贝");
|
data.addFields("注册奖励",rewardCoin+"云贝");
|
||||||
data.addFields("注册奖励",totalCoin+"云贝");
|
data.addFields("总云贝",totalCoin+"云贝");
|
||||||
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
|
NoticeR<ExtNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.TXT, data);
|
||||||
YxDataR<SendMsgResp> r = yunxin.sendToNotice(toUid, notice);
|
YxDataR<SendMsgResp> r = yunxin.sendToNotice(toUid, notice);
|
||||||
if(r == null || !r.isSuccess()){
|
if(r == null || !r.isSuccess()){
|
||||||
@@ -456,10 +458,10 @@ public class YunxinHttpService {
|
|||||||
data.setId(windowRecharge.getId());
|
data.setId(windowRecharge.getId());
|
||||||
data.setNickname(windowRecharge.getNickname());
|
data.setNickname(windowRecharge.getNickname());
|
||||||
data.setAvatar(windowRecharge.getAvatar());
|
data.setAvatar(windowRecharge.getAvatar());
|
||||||
data.setAmount(windowRecharge.getAmount().toString());
|
data.setAmount(windowRecharge.getAmount());
|
||||||
data.setTime(CaiDateUtil.getCurrentTimeStr());
|
data.setTime(System.currentTimeMillis());
|
||||||
NoticeR<SendRechargeWindowsAmountNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.RECHARGE_WINDOWS_AMOUNT, data);
|
WindowNoticeR<SendRechargeWindowsAmountNoticeData> notice = WindowNoticeR.ok(MessageBaseTypeEnum.RECHARGE_WINDOWS_AMOUNT, data);
|
||||||
YxDataR<YxCommonR> r = yunxin.batchSendToNotice(toIds, notice);
|
YxDataR<YxCommonR> r = yunxin.sendBatchAttachMsgNotice(toIds, notice);
|
||||||
if(r == null || !r.isSuccess()){
|
if(r == null || !r.isSuccess()){
|
||||||
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
|
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
|
||||||
}
|
}
|
||||||
@@ -470,8 +472,9 @@ public class YunxinHttpService {
|
|||||||
* 发送礼物飘窗提醒
|
* 发送礼物飘窗提醒
|
||||||
*/
|
*/
|
||||||
public void sendGiftWindowsAmount(List<Long> toUid, SendGiftWindowsAmountNoticeData data){
|
public void sendGiftWindowsAmount(List<Long> toUid, SendGiftWindowsAmountNoticeData data){
|
||||||
NoticeR<SendGiftWindowsAmountNoticeData> notice = NoticeR.ok(MessageBaseTypeEnum.SEND_GIFT_WINDOWS_AMOUNT, data);
|
WindowNoticeR<SendGiftWindowsAmountNoticeData> notice = WindowNoticeR.ok(MessageBaseTypeEnum.SEND_GIFT_WINDOWS_AMOUNT, data);
|
||||||
YxDataR<YxCommonR> r = yunxin.batchSendToNotice(toUid, notice);
|
data.setTime(System.currentTimeMillis());
|
||||||
|
YxDataR<YxCommonR> r = yunxin.sendBatchAttachMsgNotice(toUid, notice);
|
||||||
if(r == null || !r.isSuccess()){
|
if(r == null || !r.isSuccess()){
|
||||||
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
|
log.error("云信发送失败【sendCallAsync】r={}", JSON.toJSONString(r));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
package com.ruoyi.cai.notice.data;
|
||||||
|
|
||||||
|
import com.ruoyi.cai.notice.enums.MessageBaseTypeEnum;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
public class WindowNoticeR<T> implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private Integer id;
|
||||||
|
|
||||||
|
private T data;
|
||||||
|
|
||||||
|
public static <T> WindowNoticeR<T> ok(MessageBaseTypeEnum typeEnum, T data) {
|
||||||
|
return restResult(typeEnum.getCode(), data);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private static <T> WindowNoticeR<T> restResult(Integer type, T data) {
|
||||||
|
WindowNoticeR<T> r = new WindowNoticeR<>();
|
||||||
|
r.setId(type);
|
||||||
|
r.setData(data);
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -14,7 +14,7 @@ public class SendGiftWindowsAmountNoticeData {
|
|||||||
private String giftname;
|
private String giftname;
|
||||||
private String giftimg;
|
private String giftimg;
|
||||||
private Long gifttotal;
|
private Long gifttotal;
|
||||||
private String time;
|
private Long time;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ public class SendRechargeWindowsAmountNoticeData {
|
|||||||
private Long id;
|
private Long id;
|
||||||
private String nickname;
|
private String nickname;
|
||||||
private String avatar;
|
private String avatar;
|
||||||
private String amount;
|
private Long amount;
|
||||||
private String time;
|
private Long time;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ public class CaiNumUtil {
|
|||||||
|
|
||||||
public static String rateToStr(BigDecimal rate){
|
public static String rateToStr(BigDecimal rate){
|
||||||
BigDecimal mul = NumberUtil.mul(rate, 100);
|
BigDecimal mul = NumberUtil.mul(rate, 100);
|
||||||
return mul.intValue()+"%";
|
return mul.intValue()+"";
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|||||||
@@ -3,10 +3,7 @@ package com.ruoyi.yunxin;
|
|||||||
import com.alibaba.fastjson2.JSON;
|
import com.alibaba.fastjson2.JSON;
|
||||||
import com.ruoyi.yunxin.client.ImMessageClient;
|
import com.ruoyi.yunxin.client.ImMessageClient;
|
||||||
import com.ruoyi.yunxin.config.YunxinProperties;
|
import com.ruoyi.yunxin.config.YunxinProperties;
|
||||||
import com.ruoyi.yunxin.req.Option;
|
import com.ruoyi.yunxin.req.*;
|
||||||
import com.ruoyi.yunxin.req.SendAttachMsgReq;
|
|
||||||
import com.ruoyi.yunxin.req.SendBatchMsgReq;
|
|
||||||
import com.ruoyi.yunxin.req.SendMsgReq;
|
|
||||||
import com.ruoyi.yunxin.req.type.YxTextData;
|
import com.ruoyi.yunxin.req.type.YxTextData;
|
||||||
import com.ruoyi.yunxin.resp.SendMsgResp;
|
import com.ruoyi.yunxin.resp.SendMsgResp;
|
||||||
import com.ruoyi.yunxin.resp.YxCommonR;
|
import com.ruoyi.yunxin.resp.YxCommonR;
|
||||||
@@ -90,4 +87,22 @@ public class Yunxin {
|
|||||||
return messageClient.sendAttachMsg(sendAttachMsgReq);
|
return messageClient.sendAttachMsg(sendAttachMsgReq);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public YxDataR<YxCommonR> sendBatchAttachMsgNotice(List<Long> toUid, Object data){
|
||||||
|
SendBatchAttachMsgReq req = new SendBatchAttachMsgReq();
|
||||||
|
req.setFromAccid(SYS_NOTICE_ID);
|
||||||
|
req.setToAccids(toUid.stream().map(i -> String.valueOf(toUid)).collect(Collectors.toList()));
|
||||||
|
req.setAttach(JSON.toJSONString(data));
|
||||||
|
return messageClient.sendBatchAttachMsg(req);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public YxDataR<YxCommonR> sendAttachMsgNotice(Long toUid, Object data){
|
||||||
|
SendAttachMsgReq sendAttachMsgReq = new SendAttachMsgReq();
|
||||||
|
sendAttachMsgReq.setFrom(SYS_NOTICE_ID);
|
||||||
|
sendAttachMsgReq.setTo(toUid+"");
|
||||||
|
sendAttachMsgReq.setAttach(JSON.toJSONString(data));
|
||||||
|
sendAttachMsgReq.setOption(JSON.toJSONString(new Option()));
|
||||||
|
return messageClient.sendAttachMsg(sendAttachMsgReq);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.dtflys.forest.annotation.Body;
|
|||||||
import com.dtflys.forest.annotation.Post;
|
import com.dtflys.forest.annotation.Post;
|
||||||
import com.ruoyi.yunxin.interceptor.GlodonTokenInterceptor;
|
import com.ruoyi.yunxin.interceptor.GlodonTokenInterceptor;
|
||||||
import com.ruoyi.yunxin.req.SendAttachMsgReq;
|
import com.ruoyi.yunxin.req.SendAttachMsgReq;
|
||||||
|
import com.ruoyi.yunxin.req.SendBatchAttachMsgReq;
|
||||||
import com.ruoyi.yunxin.req.SendBatchMsgReq;
|
import com.ruoyi.yunxin.req.SendBatchMsgReq;
|
||||||
import com.ruoyi.yunxin.req.SendMsgReq;
|
import com.ruoyi.yunxin.req.SendMsgReq;
|
||||||
import com.ruoyi.yunxin.resp.SendMsgResp;
|
import com.ruoyi.yunxin.resp.SendMsgResp;
|
||||||
@@ -33,5 +34,8 @@ public interface ImMessageClient {
|
|||||||
@Post(url = "/nimserver/msg/sendAttachMsg.action")
|
@Post(url = "/nimserver/msg/sendAttachMsg.action")
|
||||||
YxDataR<YxCommonR> sendAttachMsg(@Body SendAttachMsgReq req);
|
YxDataR<YxCommonR> sendAttachMsg(@Body SendAttachMsgReq req);
|
||||||
|
|
||||||
|
@Post(url = "/nimserver/msg/sendBatchAttachMsg.action")
|
||||||
|
YxDataR<YxCommonR> sendBatchAttachMsg(@Body SendBatchAttachMsgReq req);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,4 +9,5 @@ public class SendAttachMsgReq {
|
|||||||
private String to;
|
private String to;
|
||||||
private String attach;
|
private String attach;
|
||||||
private String option;
|
private String option;
|
||||||
|
private int save = 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
package com.ruoyi.yunxin.req;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class SendBatchAttachMsgReq {
|
||||||
|
private String fromAccid;
|
||||||
|
private List<String> toAccids;
|
||||||
|
private String attach;
|
||||||
|
private int save = 1;
|
||||||
|
}
|
||||||
@@ -8,6 +8,7 @@ import java.io.Serializable;
|
|||||||
public class YxDataR<T> implements Serializable {
|
public class YxDataR<T> implements Serializable {
|
||||||
private Integer code;
|
private Integer code;
|
||||||
private T data;
|
private T data;
|
||||||
|
private String desc;
|
||||||
|
|
||||||
public boolean isSuccess(){
|
public boolean isSuccess(){
|
||||||
return code != null && code == 200;
|
return code != null && code == 200;
|
||||||
|
|||||||
Reference in New Issue
Block a user