init
This commit is contained in:
@@ -3,6 +3,7 @@ package com.ruoyi.cai.controller.app;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
|
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
|
||||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||||
|
import com.ruoyi.cai.manager.SystemConfigManager;
|
||||||
import com.ruoyi.cai.service.UserInviteService;
|
import com.ruoyi.cai.service.UserInviteService;
|
||||||
import com.ruoyi.common.annotation.Log;
|
import com.ruoyi.common.annotation.Log;
|
||||||
import com.ruoyi.common.core.domain.PageQuery;
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ public enum SystemConfigEnum {
|
|||||||
RANK_INVITE_DAY_AWARD("138,108,88,58,38,28,28,28,28,28,28", "邀请榜日榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
|
RANK_INVITE_DAY_AWARD("138,108,88,58,38,28,28,28,28,28,28", "邀请榜日榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
|
||||||
RANK_INVITE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "邀请榜周榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
|
RANK_INVITE_WEEK_AWARD("888,588,388,288,188,138,138,138,138,138,138,138", "邀请榜周榜奖励",SystemConfigGroupEnum.BUSINESS,new RankSystemConfigCheck()),
|
||||||
INVITE_BIND_RATE("1000", "邀请绑定成功率[0-1000]数字越大成功率越高",SystemConfigGroupEnum.BUSINESS, new Rate1000IntegerSystemConfigCheck()),
|
INVITE_BIND_RATE("1000", "邀请绑定成功率[0-1000]数字越大成功率越高",SystemConfigGroupEnum.BUSINESS, new Rate1000IntegerSystemConfigCheck()),
|
||||||
|
SHARE_URL("https://h5.qx96688.com/index/invite/index", "分享链接",SystemConfigGroupEnum.BUSINESS, new Rate1000IntegerSystemConfigCheck()),
|
||||||
// INVITE_GIFT_RATE("100", "礼物分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
// INVITE_GIFT_RATE("100", "礼物分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
||||||
// INVITE_GUARD_RATE("100", "守护分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
// INVITE_GUARD_RATE("100", "守护分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
||||||
// INVITE_VIDEO_RATE("100", "视频分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
// INVITE_VIDEO_RATE("100", "视频分销成功率",SystemConfigGroupEnum.BUSINESS, new RateIntegerSystemConfigCheck()),
|
||||||
@@ -33,7 +34,7 @@ public enum SystemConfigEnum {
|
|||||||
DEFAULT_VIDEO_INCOME_RATE("0.07", "默认分销好友视频提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
DEFAULT_VIDEO_INCOME_RATE("0.07", "默认分销好友视频提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
||||||
DEFAULT_GIFT_INCOME_RATE("0.07", "默认分销好友礼物提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
DEFAULT_GIFT_INCOME_RATE("0.07", "默认分销好友礼物提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
||||||
DEFAULT_GUARD_INCOME_RATE("0.07", "默认分销好友守护提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
DEFAULT_GUARD_INCOME_RATE("0.07", "默认分销好友守护提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
||||||
DEFAULT_PAY_INCOME_RATE("0.07", "默认分销好友充值提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
DEFAULT_PAY_INCOME_RATE("0.3", "默认分销好友充值提成",SystemConfigGroupEnum.BUSINESS,new RateSystemConfigCheck()),
|
||||||
@Deprecated
|
@Deprecated
|
||||||
DEFAULT_UNION_GIFT_INCOME_RATE("0.01", "默认工会礼物提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
|
DEFAULT_UNION_GIFT_INCOME_RATE("0.01", "默认工会礼物提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
|
||||||
DEFAULT_UNION_VIDEO_INCOME_RATE("0.01", "默认工会视频提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
|
DEFAULT_UNION_VIDEO_INCOME_RATE("0.01", "默认工会视频提成",SystemConfigGroupEnum.BUSINESS, new RateSystemConfigCheck()),
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.ruoyi.cai.notice;
|
package com.ruoyi.cai.notice;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.ruoyi.cai.config.CaiProperties;
|
||||||
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.mq.handle.dto.WindowRechargeDTO;
|
import com.ruoyi.cai.mq.handle.dto.WindowRechargeDTO;
|
||||||
@@ -40,6 +41,8 @@ public class YunxinHttpService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private AccountService accountService;
|
private AccountService accountService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
private CaiProperties caiProperties;
|
||||||
|
@Autowired
|
||||||
private UserService userService;
|
private UserService userService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -52,8 +55,8 @@ public class YunxinHttpService {
|
|||||||
data.setTitle("系统奖励");
|
data.setTitle("系统奖励");
|
||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.setTxt1("陌生人交友需谨慎,添加陌生人微信,QQ失去平台监管有极大被骗风险,凡是诱导加微信,QQ引导到其他平台或以色情为由索取礼物的行为,请大家及时举报,一经查明直接永久封号,良好的交友氛围需大家共同维护,希望大家提高自我警惕性杜绝被骗");
|
data.setTxt1("陌生人交友需谨慎,添加陌生人微信,QQ失去平台监管有极大被骗风险,凡是诱导加微信,QQ引导到其他平台或以色情为由索取礼物的行为,请大家及时举报,一经查明直接永久封号,良好的交友氛围需大家共同维护,希望大家提高自我警惕性杜绝被骗");
|
||||||
data.addFields("注册奖励",rewardCoin+"云贝");
|
data.addFields("注册奖励",rewardCoin+caiProperties.getCoinName());
|
||||||
data.addFields("总云贝",totalCoin+"云贝");
|
data.addFields("总"+caiProperties.getCoinName(),totalCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
@@ -71,8 +74,8 @@ public class YunxinHttpService {
|
|||||||
data.setAction(1);
|
data.setAction(1);
|
||||||
data.setTitle("购买成功");
|
data.setTitle("购买成功");
|
||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.addFields("购买云贝",rewardCoin+"云贝");
|
data.addFields("购买"+caiProperties.getCoinName(),rewardCoin+caiProperties.getCoinName());
|
||||||
data.addFields("总云贝",totalCoin+"云贝");
|
data.addFields("总"+caiProperties.getCoinName(),totalCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
@@ -95,9 +98,9 @@ public class YunxinHttpService {
|
|||||||
data.setTitle("收到礼物");
|
data.setTitle("收到礼物");
|
||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.addFields("礼物名称",gift.getName());
|
data.addFields("礼物名称",gift.getName());
|
||||||
data.addFields("礼物单价",gift.getPrice()+"云贝");
|
data.addFields("礼物单价",gift.getPrice()+caiProperties.getCoinName());
|
||||||
data.addFields("收入云贝",incomeCoin+"云贝");
|
data.addFields("收入"+caiProperties.getCoinName(),incomeCoin+caiProperties.getCoinName());
|
||||||
data.addFields("总云贝",totalCoin+"云贝");
|
data.addFields("总"+caiProperties.getCoinName(),totalCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
@@ -124,7 +127,7 @@ public class YunxinHttpService {
|
|||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.addFields("用户昵称",sourceNickname);
|
data.addFields("用户昵称",sourceNickname);
|
||||||
data.addFields("用户蜜瓜号",sourceUsercode);
|
data.addFields("用户蜜瓜号",sourceUsercode);
|
||||||
data.addFields(str,incomeCoin+"云贝");
|
data.addFields(str,incomeCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
@@ -145,12 +148,12 @@ public class YunxinHttpService {
|
|||||||
ExtNoticeData data = new ExtNoticeData();
|
ExtNoticeData data = new ExtNoticeData();
|
||||||
data.setAction(1);
|
data.setAction(1);
|
||||||
data.setTitle("充值分成");
|
data.setTitle("充值分成");
|
||||||
data.setTxt1(String.format("充值分成:每一笔账户充值将给其邀请账户额外赠送%s的云贝", CaiNumUtil.rateToStr(rate)));
|
data.setTxt1(String.format("充值分成:每一笔账户充值将给其邀请账户额外赠送%s的%s", CaiNumUtil.rateToStr(rate), caiProperties.getCoinName()));
|
||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.addFields("充值用户",sourceUser.getNickname());
|
data.addFields("充值用户",sourceUser.getNickname());
|
||||||
data.addFields("蜜瓜号",sourceUser.getUsercode());
|
data.addFields("蜜瓜号",sourceUser.getUsercode());
|
||||||
data.addFields("充值金额",payCoin+"云贝");
|
data.addFields("充值金额",payCoin+caiProperties.getCoinName());
|
||||||
data.addFields("充值分成",incomeCoin+"云贝");
|
data.addFields("充值分成",incomeCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
@@ -341,9 +344,9 @@ public class YunxinHttpService {
|
|||||||
data.setTitle("收到守护符");
|
data.setTitle("收到守护符");
|
||||||
data.setCurrentDate();
|
data.setCurrentDate();
|
||||||
data.addFields("守护类型",num+"个守护符");
|
data.addFields("守护类型",num+"个守护符");
|
||||||
data.addFields("守护单价",price+"云贝");
|
data.addFields("守护单价",price+caiProperties.getCoinName());
|
||||||
data.addFields("收入云贝",incomeCoin+"云贝");
|
data.addFields("收入"+caiProperties.getCoinName(),incomeCoin+caiProperties.getCoinName());
|
||||||
data.addFields("总云贝",totalCoin+"云贝");
|
data.addFields("总"+caiProperties.getCoinName(),totalCoin+caiProperties.getCoinName());
|
||||||
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()){
|
||||||
|
|||||||
@@ -9,13 +9,17 @@ import com.ruoyi.cai.dto.admin.vo.UserInviteAdminVo;
|
|||||||
import com.ruoyi.cai.dto.app.dto.InviteCountDTO;
|
import com.ruoyi.cai.dto.app.dto.InviteCountDTO;
|
||||||
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
|
import com.ruoyi.cai.dto.app.vo.invite.InviteHomeVo;
|
||||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||||
|
import com.ruoyi.cai.enums.SystemConfigEnum;
|
||||||
import com.ruoyi.cai.executor.ExecutorConstant;
|
import com.ruoyi.cai.executor.ExecutorConstant;
|
||||||
|
import com.ruoyi.cai.manager.SystemConfigManager;
|
||||||
import com.ruoyi.cai.mapper.UserInviteMapper;
|
import com.ruoyi.cai.mapper.UserInviteMapper;
|
||||||
import com.ruoyi.cai.service.UserInviteService;
|
import com.ruoyi.cai.service.UserInviteService;
|
||||||
|
import com.ruoyi.cai.util.RateUtil;
|
||||||
import com.ruoyi.common.core.domain.PageQuery;
|
import com.ruoyi.common.core.domain.PageQuery;
|
||||||
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.math.BigDecimal;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -34,21 +38,32 @@ public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInv
|
|||||||
}
|
}
|
||||||
@Autowired
|
@Autowired
|
||||||
private CaiProperties caiProperties;
|
private CaiProperties caiProperties;
|
||||||
|
@Autowired
|
||||||
|
private SystemConfigManager systemConfigManager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public InviteHomeVo inviteHome(Long userId) {
|
public InviteHomeVo inviteHome(Long userId) {
|
||||||
|
Integer firstPayAward = systemConfigManager.getSystemConfigOfInt(SystemConfigEnum.FAST_PAY_AWARD);
|
||||||
|
String shareUrlBase = systemConfigManager.getSystemConfig(SystemConfigEnum.SHARE_URL);
|
||||||
|
BigDecimal payIncomeRate = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_PAY_INCOME_RATE);
|
||||||
|
BigDecimal videoIncomeRate = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_VIDEO_INCOME_RATE);
|
||||||
|
BigDecimal anchorVideoRate = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.DEFAULT_ANCHOR_VIDEO_PRICE);
|
||||||
|
|
||||||
|
String shareUrl = shareUrlBase + "?from="+userId;
|
||||||
InviteHomeVo vo = new InviteHomeVo();
|
InviteHomeVo vo = new InviteHomeVo();
|
||||||
List<String> reward = new ArrayList<>();
|
List<String> reward = new ArrayList<>();
|
||||||
reward.add("1、邀请主播认证通过奖励#300#"+caiProperties.getCoinName());
|
reward.add("1、邀请主播认证通过奖励#300#"+caiProperties.getCoinName());
|
||||||
reward.add("2、邀请用户首次充值奖励#1200#"+caiProperties.getCoinName());
|
reward.add("2、邀请用户首次充值奖励#"+firstPayAward+"#"+caiProperties.getCoinName());
|
||||||
reward.add("3、主播视频、礼物、会员分成#50%#");
|
reward.add("3、主播视频、礼物、会员分成#"+RateUtil.getRateStr(anchorVideoRate)+"%#");
|
||||||
reward.add("4、邀请男用户充值提成#30%#");
|
reward.add("4、邀请用户充值提成#"+ RateUtil.getRateStr(payIncomeRate)+"%#");
|
||||||
reward.add("5、邀请主播收益#7%#");
|
reward.add("5、邀请主播收益#"+RateUtil.getRateStr(videoIncomeRate)+"%#");
|
||||||
reward.add("最终解释权归平台所有");
|
reward.add("最终解释权归平台所有");
|
||||||
vo.setReward(reward);
|
vo.setReward(reward);
|
||||||
InviteCountDTO inviteCount = baseMapper.countInviteAndReward(userId);
|
InviteCountDTO inviteCount = baseMapper.countInviteAndReward(userId);
|
||||||
vo.setTotalInvite(inviteCount.getTotalInvite());
|
vo.setTotalInvite(inviteCount.getTotalInvite());
|
||||||
vo.setTotalReward(inviteCount.getTotalReward());
|
vo.setTotalReward(inviteCount.getTotalReward());
|
||||||
|
vo.setShareUrl(shareUrl);
|
||||||
|
vo.setShareQrCode(shareUrl);
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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) {
|
||||||
|
|||||||
12
ruoyi-cai/src/main/java/com/ruoyi/cai/util/RateUtil.java
Normal file
12
ruoyi-cai/src/main/java/com/ruoyi/cai/util/RateUtil.java
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
package com.ruoyi.cai.util;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.NumberUtil;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
public class RateUtil {
|
||||||
|
|
||||||
|
public static String getRateStr(BigDecimal rate){
|
||||||
|
return NumberUtil.mul(rate,100).longValue() + "";
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user