Commit 4ec83e71 by xunj

正是上线发布版本

1 parent 450d20f6
Showing 19 changed files with 101 additions and 92 deletions
...@@ -9,8 +9,8 @@ public enum MsgCodeEnum { ...@@ -9,8 +9,8 @@ public enum MsgCodeEnum {
RED_PACK_RECHAGE_NO("3001","红包雨未结算完成"), RED_PACK_RECHAGE_NO("3001","红包雨未结算完成"),
CATTLE_OPEN__NO("4001","牛牌合成未打开,请打开牛牌之后提现"), CATTLE_OPEN__NO("4001","牛牌合成未打开,请打开牛牌之后提现"),
ACTIVITY_ALL_NO("4002","活动未全部结束"), ACTIVITY_ALL_NO("4002","福牛活动结束后可砸盆提现"),
ACTIVITY_ALL_YES("4003","非常遗憾,提现时效已过,拜拜……"); ACTIVITY_ALL_YES("4003","非常遗憾,提现时效已过,明年再努力!");
private String code; private String code;
private String msg; private String msg;
......
...@@ -34,11 +34,13 @@ public class RedPackageController { ...@@ -34,11 +34,13 @@ public class RedPackageController {
@GetMapping("/queryActivityInfo" ) @GetMapping("/queryActivityInfo" )
@ResponseBody @ResponseBody
public ApiResult queryActivityInfo() { public ApiResult queryActivityInfo() {
return actItemService.queryActivityInfo(); return actItemService.queryActivityInfo();
} }
@PostMapping("/queryRedPackInfo" ) @PostMapping("/queryRedPackInfo" )
@ResponseBody @ResponseBody
public ApiResult queryRedPackInfo(@RequestBody IdQueryParam param) { public ApiResult queryRedPackInfo(@RequestBody IdQueryParam param) {
return actItemService.queryRedPackInfo(param); return actItemService.queryRedPackInfo(param);
} }
......
...@@ -16,15 +16,15 @@ import javax.annotation.Resource; ...@@ -16,15 +16,15 @@ import javax.annotation.Resource;
@Api(value = "用户", description = "用户接口") @Api(value = "用户", description = "用户接口")
public class UserController { public class UserController {
@Resource
private UserInfoService userInfoService;
@PostMapping("/queryAuthUser" ) @PostMapping("/queryAuthUser" )
@ResponseBody @ResponseBody
public ApiResult queryAuthUser(@RequestBody UserInfoParam param) { public ApiResult queryAuthUser(@RequestBody UserInfoParam param) {
return userInfoService.queryAuthUser(param); return userInfoService.queryAuthUser(param);
} }
@Resource
private UserInfoService userInfoService;
@PostMapping("/getFirsetLgoinRed" ) @PostMapping("/getFirsetLgoinRed" )
@ResponseBody @ResponseBody
public ApiResult getFirsetLgoinRed(@RequestBody @Validated UserInfoParam param) { public ApiResult getFirsetLgoinRed(@RequestBody @Validated UserInfoParam param) {
......
...@@ -34,6 +34,7 @@ public interface UserInfoMapper { ...@@ -34,6 +34,7 @@ public interface UserInfoMapper {
int updateFirstLoginStatus(@Param("userId") Long userId); int updateFirstLoginStatus(@Param("userId") Long userId);
UserInfoVO getUserByComposeStatus(UserInfoForComposeStatusDto dto); UserInfoVO getUserByComposeStatus(UserInfoForComposeStatusDto dto);
List<UserSignVO> queryUserSignByUserId(@Param("userId") Long userId,@Param("signDate") String signDate); List<UserSignVO> queryUserSignByUserId(@Param("userId") Long userId,@Param("signDate") String signDate);
UserSignVO queryUserSignBySignId(@Param("id") Long id);
int updateUserStates(UpdateUserStatesDto dto); int updateUserStates(UpdateUserStatesDto dto);
OpenCattleVO getCattleAmount(@Param("userId") Long userId); OpenCattleVO getCattleAmount(@Param("userId") Long userId);
BigDecimal getRedBalanceByUserId(@Param("userId") Long userId); BigDecimal getRedBalanceByUserId(@Param("userId") Long userId);
......
...@@ -12,6 +12,6 @@ import java.math.BigDecimal; ...@@ -12,6 +12,6 @@ import java.math.BigDecimal;
public class GrapRedPackResultVO { public class GrapRedPackResultVO {
private int redNum; private int redNum;
private int cattleNum; private int cattleNum;
private BigDecimal totalMoney; private String totalMoney;
private String userName; private String userName;
} }
...@@ -11,8 +11,9 @@ import java.math.BigDecimal; ...@@ -11,8 +11,9 @@ import java.math.BigDecimal;
@Data @Data
public class RedPackInfoVO { public class RedPackInfoVO {
private Long redId; private Long redId;
private BigDecimal redamount; private String redamount;
private String sourceType; private String sourceType;
private String createTime; private String createTime;
} }
...@@ -11,5 +11,5 @@ import java.math.BigDecimal; ...@@ -11,5 +11,5 @@ import java.math.BigDecimal;
@Data @Data
public class SmashBasinVO { public class SmashBasinVO {
private String userName; private String userName;
private BigDecimal amount; private String amount;
} }
...@@ -6,8 +6,6 @@ import com.polysoft.activity.model.param.ShareLinkParam; ...@@ -6,8 +6,6 @@ import com.polysoft.activity.model.param.ShareLinkParam;
import com.polysoft.activity.model.param.UserInfoParam; import com.polysoft.activity.model.param.UserInfoParam;
import com.polysoft.activity.utils.ApiResult; import com.polysoft.activity.utils.ApiResult;
import java.util.List;
public interface UserInfoService { public interface UserInfoService {
ApiResult queryAuthUser(UserInfoParam param); ApiResult queryAuthUser(UserInfoParam param);
ApiResult getShareLink(ShareLinkParam param); ApiResult getShareLink(ShareLinkParam param);
......
...@@ -154,7 +154,7 @@ public class CattleBrandServiceImpl implements CattleBrandService { ...@@ -154,7 +154,7 @@ public class CattleBrandServiceImpl implements CattleBrandService {
return ApiResult.ok(MsgCodeEnum.OPEN_CATTLE2.getCode(),MsgCodeEnum.OPEN_CATTLE2.getMsg()); return ApiResult.ok(MsgCodeEnum.OPEN_CATTLE2.getCode(),MsgCodeEnum.OPEN_CATTLE2.getMsg());
} }
Long currentTime = System.currentTimeMillis()/1000; Long currentTime = System.currentTimeMillis()/1000;
Long guiDingTime = DateUtil.parse("2021-02-17 22:21:00","yyyy-MM-dd HH:mm:ss").getTime()/1000; Long guiDingTime = DateUtil.parse("2021-02-17 20:21:00","yyyy-MM-dd HH:mm:ss").getTime()/1000;
if(currentTime < guiDingTime){ if(currentTime < guiDingTime){
return ApiResult.ok(MsgCodeEnum.OPEN_CATTLE2.getCode(),MsgCodeEnum.OPEN_CATTLE3.getMsg()); return ApiResult.ok(MsgCodeEnum.OPEN_CATTLE2.getCode(),MsgCodeEnum.OPEN_CATTLE3.getMsg());
} }
......
...@@ -23,7 +23,6 @@ import com.polysoft.activity.model.vo.*; ...@@ -23,7 +23,6 @@ import com.polysoft.activity.model.vo.*;
import com.polysoft.activity.service.UserInfoService; import com.polysoft.activity.service.UserInfoService;
import com.polysoft.activity.utils.ApiResult; import com.polysoft.activity.utils.ApiResult;
import com.polysoft.activity.utils.MathRandom; import com.polysoft.activity.utils.MathRandom;
import com.polysoft.activity.utils.RandomUtils;
import com.polysoft.activity.utils.SHA1; import com.polysoft.activity.utils.SHA1;
import com.polysoft.activity.utils.SnowFlakeUtil; import com.polysoft.activity.utils.SnowFlakeUtil;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -64,6 +63,11 @@ public class UserInfoServiceImpl implements UserInfoService { ...@@ -64,6 +63,11 @@ public class UserInfoServiceImpl implements UserInfoService {
private final Long divide = 1000L; private final Long divide = 1000L;
@Override @Override
public ApiResult queryAuthUser(UserInfoParam param) { public ApiResult queryAuthUser(UserInfoParam param) {
Long currentTime = System.currentTimeMillis()/1000;
Long guiDingTime = DateUtil.parse("2021-02-11 09:00:00","yyyy-MM-dd HH:mm:ss").getTime()/1000;
if(currentTime < guiDingTime){
return ApiResult.error("活动未开始");
}
if(StringUtils.isNotBlank(param.getPhone()) || param.getUserId() !=null ){ if(StringUtils.isNotBlank(param.getPhone()) || param.getUserId() !=null ){
UserInfoVO user = mapper.queryAuthUser(param); UserInfoVO user = mapper.queryAuthUser(param);
if(user == null){ if(user == null){
...@@ -164,13 +168,14 @@ public class UserInfoServiceImpl implements UserInfoService { ...@@ -164,13 +168,14 @@ public class UserInfoServiceImpl implements UserInfoService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public ApiResult saveUserSign(UserInfoParam param) { public ApiResult saveUserSign(UserInfoParam param) {
Date date = new Date();
try { try {
String today = DateUtil.format(new Date(),"yyyy-MM-dd"); String today = DateUtil.format(date,"yyyy-MM-dd");
List<UserSignVO> list2 = mapper.queryUserSignByUserId(param.getUserId(),today); List<UserSignVO> list2 = mapper.queryUserSignByUserId(param.getUserId(),today);
if(list2 != null && list2.size() > 0 && param.getSignId() == null ){ if(list2 != null && list2.size() > 0 && param.getSignId() == null ){
return ApiResult.ok(); return ApiResult.ok();
} }
Date date = new Date();
UserSignDto userSignDto = new UserSignDto(); UserSignDto userSignDto = new UserSignDto();
CattleBrandVO cattleBrandVO = null; CattleBrandVO cattleBrandVO = null;
CattleBrandConfVO confVO = cattleBrandMapper.queryCattleBrandConf(today); CattleBrandConfVO confVO = cattleBrandMapper.queryCattleBrandConf(today);
...@@ -178,6 +183,10 @@ public class UserInfoServiceImpl implements UserInfoService { ...@@ -178,6 +183,10 @@ public class UserInfoServiceImpl implements UserInfoService {
return ApiResult.error("牛牌概率未配置"); return ApiResult.error("牛牌概率未配置");
} }
if(param.getSignId() != null){ if(param.getSignId() != null){
UserSignVO userSignVO2 = mapper.queryUserSignBySignId(param.getSignId());
if("1".equals(userSignVO2.getSignStatus())){
return ApiResult.ok();
}
//扣除金额 //扣除金额
BigDecimal kouchu = BigDecimal.valueOf(20.00); BigDecimal kouchu = BigDecimal.valueOf(20.00);
//查询余额是否大于 5 元 //查询余额是否大于 5 元
......
...@@ -36,7 +36,7 @@ public class CattleBrandCarveUpTask { ...@@ -36,7 +36,7 @@ public class CattleBrandCarveUpTask {
// @Scheduled( cron = "0 20 20 * * ? ") // @Scheduled( cron = "0 20 20 * * ? ")
// @Scheduled(initialDelay = 5000, fixedRate = 1*15*60*1000) // @Scheduled(initialDelay = 5000, fixedRate = 1*15*60*1000)
@Scheduled( cron = "1 0 20 17 2 ? ") // 2021年2月17号 20时0分1秒 执行 @Scheduled( cron = "0 1 20 17 2 ? ") // 2021年2月17号 20时1分0秒 执行
public void execute() { public void execute() {
try { try {
sendWechat(); sendWechat();
...@@ -60,13 +60,14 @@ public class CattleBrandCarveUpTask { ...@@ -60,13 +60,14 @@ public class CattleBrandCarveUpTask {
//第一批瓜分 //第一批瓜分
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
//查询第一批红包配置 //查询第一批红包配置
RedAmountConfVO confVO_1 = activityMapper.getRedAmountConf("4",1L); // RedAmountConfVO confVO_1 = activityMapper.getRedAmountConf("4",1L);
List<Double> redAmount_1 = redpack.getMoney(confVO_1.getTotalMoney(),count_1,confVO_1.getRedMinAmount(),confVO_1.getRedMaxAmonut(),2.1); double redAmount_1 = 2000.00/count_1;
// List<Double> redAmount_1 = redpack.getMoney(confVO_1.getTotalMoney(),count_1,confVO_1.getRedMinAmount(),confVO_1.getRedMaxAmonut(),2.1);
List<AddRedRainDto> batchList_1 = new ArrayList<>(); List<AddRedRainDto> batchList_1 = new ArrayList<>();
for (int bt_1 =0;bt_1<list_1.size();bt_1++) { for (int bt_1 =0;bt_1<list_1.size();bt_1++) {
AddRedRainDto addRedRainDto = new AddRedRainDto(); AddRedRainDto addRedRainDto = new AddRedRainDto();
addRedRainDto.setRedId(list_1.get(bt_1)); addRedRainDto.setRedId(list_1.get(bt_1));
addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_1.get(bt_1))); addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_1));
addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode()); addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode());
addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode()); addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode());
batchList_1.add(addRedRainDto); batchList_1.add(addRedRainDto);
...@@ -82,13 +83,14 @@ public class CattleBrandCarveUpTask { ...@@ -82,13 +83,14 @@ public class CattleBrandCarveUpTask {
} }
List<Long> list_2 = activityMapper.getRedIdToCattle(BigDecimal.valueOf(0.00),count_2); List<Long> list_2 = activityMapper.getRedIdToCattle(BigDecimal.valueOf(0.00),count_2);
//查询第二批红包配置 //查询第二批红包配置
RedAmountConfVO confVO_2 = activityMapper.getRedAmountConf("4",2L); // RedAmountConfVO confVO_2 = activityMapper.getRedAmountConf("4",2L);
List<Double> redAmount_2 = redpack.getMoney(confVO_2.getTotalMoney(),count_2,confVO_2.getRedMinAmount(),confVO_2.getRedMaxAmonut(),2.1); double redAmount_2 = 5000.00/count_2;
// List<Double> redAmount_2 = redpack.getMoney(confVO_2.getTotalMoney(),count_2,confVO_2.getRedMinAmount(),confVO_2.getRedMaxAmonut(),2.1);
List<AddRedRainDto> batchList_2 = new ArrayList<>(); List<AddRedRainDto> batchList_2 = new ArrayList<>();
for (int bt_2 =0;bt_2<list_2.size();bt_2++) { for (int bt_2 =0;bt_2<list_2.size();bt_2++) {
AddRedRainDto addRedRainDto = new AddRedRainDto(); AddRedRainDto addRedRainDto = new AddRedRainDto();
addRedRainDto.setRedId(list_2.get(bt_2)); addRedRainDto.setRedId(list_2.get(bt_2));
addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_2.get(bt_2))); addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_2));
addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode()); addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode());
addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode()); addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode());
batchList_2.add(addRedRainDto); batchList_2.add(addRedRainDto);
...@@ -105,13 +107,14 @@ public class CattleBrandCarveUpTask { ...@@ -105,13 +107,14 @@ public class CattleBrandCarveUpTask {
//生成范围 //生成范围
List<Long> list_3 = activityMapper.getRedIdToCattle(BigDecimal.valueOf(0.00),count_3); List<Long> list_3 = activityMapper.getRedIdToCattle(BigDecimal.valueOf(0.00),count_3);
//查询第三批红包配置 //查询第三批红包配置
RedAmountConfVO confVO_3 = activityMapper.getRedAmountConf("4",3L); // RedAmountConfVO confVO_3 = activityMapper.getRedAmountConf("4",3L);
List<Double> redAmount_3 = redpack.getMoney(confVO_3.getTotalMoney(),count_3,confVO_3.getRedMinAmount(),confVO_3.getRedMaxAmonut(),2.1); double redAmount_3 = 8000.00/count_3;
// List<Double> redAmount_3 = redpack.getMoney(confVO_3.getTotalMoney(),count_3,confVO_3.getRedMinAmount(),confVO_3.getRedMaxAmonut(),2.1);
List<AddRedRainDto> batchList_3 = new ArrayList<>(); List<AddRedRainDto> batchList_3 = new ArrayList<>();
for (int bt_3 = 0;bt_3<list_3.size();bt_3++) { for (int bt_3 = 0;bt_3<list_3.size();bt_3++) {
AddRedRainDto addRedRainDto = new AddRedRainDto(); AddRedRainDto addRedRainDto = new AddRedRainDto();
addRedRainDto.setRedId(list_3.get(bt_3)); addRedRainDto.setRedId(list_3.get(bt_3));
addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_3.get(bt_3))); addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_3));
addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode()); addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode());
addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode()); addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode());
batchList_3.add(addRedRainDto); batchList_3.add(addRedRainDto);
...@@ -124,13 +127,14 @@ public class CattleBrandCarveUpTask { ...@@ -124,13 +127,14 @@ public class CattleBrandCarveUpTask {
int count_4 = list_4.size(); int count_4 = list_4.size();
//生成范围 //生成范围
//查询第四批红包配置 //查询第四批红包配置
RedAmountConfVO confVO_4 = activityMapper.getRedAmountConf("4",4L); // RedAmountConfVO confVO_4 = activityMapper.getRedAmountConf("4",4L);
List<Double> redAmount_4 = redpack.getMoney(confVO_4.getTotalMoney(),count_4,confVO_4.getRedMinAmount(),confVO_4.getRedMaxAmonut(),2.1); double redAmount_4 = 5000.00/count_4;
// List<Double> redAmount_4 = redpack.getMoney(confVO_4.getTotalMoney(),count_4,confVO_4.getRedMinAmount(),confVO_4.getRedMaxAmonut(),2.1);
List<AddRedRainDto> batchList_4 = new ArrayList<>(); List<AddRedRainDto> batchList_4 = new ArrayList<>();
for (int bt_4 = 0; bt_4 < list_4.size();bt_4++) { for (int bt_4 = 0; bt_4 < list_4.size();bt_4++) {
AddRedRainDto addRedRainDto = new AddRedRainDto(); AddRedRainDto addRedRainDto = new AddRedRainDto();
addRedRainDto.setRedId(list_4.get(bt_4)); addRedRainDto.setRedId(list_4.get(bt_4));
addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_4.get(bt_4))); addRedRainDto.setRedAmount(BigDecimal.valueOf(redAmount_4));
addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode()); addRedRainDto.setRedType(CommonTypeEnum.REDPACK_TYPE1.getCode());
addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode()); addRedRainDto.setIsEnble(CommonTypeEnum.RED_ISENBLE_NO.getCode());
batchList_4.add(addRedRainDto); batchList_4.add(addRedRainDto);
...@@ -167,15 +171,4 @@ public class CattleBrandCarveUpTask { ...@@ -167,15 +171,4 @@ public class CattleBrandCarveUpTask {
double eps = 1e-10; // 精度范围 double eps = 1e-10; // 精度范围
return obj-Math.floor(obj) < eps; return obj-Math.floor(obj) < eps;
} }
public static void main(String[] args) {
RedPacketUtil redpack = new RedPacketUtil();
// List<Double> redAmount= redpack.getMoney(2000,12,100,250,2.1);
// List<Double> redAmount= redpack.getMoney(5000,35,100,250,2.1);
// List<Double> redAmount= redpack.getMoney(8000,91,50,150,2.1);
// List<Double> redAmount= redpack.getMoney(200,100,150,150,2.1);
// redAmount.forEach(a -> System.out.println(a));
double ss = 99*0.05;
System.out.println(new CattleBrandCarveUpTask().isIntegerForDouble(ss));
}
} }
...@@ -62,7 +62,8 @@ public class InitRedPackageTask1 { ...@@ -62,7 +62,8 @@ public class InitRedPackageTask1 {
log.info("第一批红包雨任务开始"); log.info("第一批红包雨任务开始");
//查询出没有初始化的红包 //查询出没有初始化的红包
final int batchNum = 1; final int batchNum = 1;
final double totalMoney = 5000.00; final double totalMoney = 5800.00;
final double maxoney =500.00;
if(4==4){ if(4==4){
List<AddRedRainDto> batchList4 = new ArrayList<>(); List<AddRedRainDto> batchList4 = new ArrayList<>();
QueryRedRainDto dto4_1 = new QueryRedRainDto(); QueryRedRainDto dto4_1 = new QueryRedRainDto();
...@@ -93,7 +94,7 @@ public class InitRedPackageTask1 { ...@@ -93,7 +94,7 @@ public class InitRedPackageTask1 {
//前10%红包 //前10%红包
int redNum = (int)(list1_1.size()*0.11); int redNum = (int)(list1_1.size()*0.11);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list1_1.size()); HashSet<Integer> set = getLuckUser(redNum,list1_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -122,7 +123,7 @@ public class InitRedPackageTask1 { ...@@ -122,7 +123,7 @@ public class InitRedPackageTask1 {
//前20%红包 //前20%红包
int redNum = (int)(list.size()*0.22); int redNum = (int)(list.size()*0.22);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list2_1.size()); HashSet<Integer> set = getLuckUser(redNum,list2_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -150,7 +151,7 @@ public class InitRedPackageTask1 { ...@@ -150,7 +151,7 @@ public class InitRedPackageTask1 {
//前65%红包 //前65%红包
int redNum = list3_1.size(); int redNum = list3_1.size();
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list3_1.size()); HashSet<Integer> set = getLuckUser(redNum,list3_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
......
...@@ -45,7 +45,7 @@ public class InitRedPackageTask2 { ...@@ -45,7 +45,7 @@ public class InitRedPackageTask2 {
@Resource @Resource
private CattleBrandMapper cattleBrandMapper; private CattleBrandMapper cattleBrandMapper;
// @Scheduled(initialDelay = 10000, fixedRate = 1*15*60*1000) // @Scheduled(initialDelay = 5000, fixedRate = 1*15*60*1000)
// @Scheduled( cron = "40 10 17 * * ? ") // @Scheduled( cron = "40 10 17 * * ? ")
@Scheduled( cron = "45 0 22 11 2 ? ") // 2月11日 22点0分45秒执行 @Scheduled( cron = "45 0 22 11 2 ? ") // 2月11日 22点0分45秒执行
public void execute() { public void execute() {
...@@ -59,10 +59,11 @@ public class InitRedPackageTask2 { ...@@ -59,10 +59,11 @@ public class InitRedPackageTask2 {
} }
private void sendWechat(){ private void sendWechat(){
log.info("第批红包雨任务开始"); log.info("第批红包雨任务开始");
//查询出没有初始化的红包 //查询出没有初始化的红包
final int batchNum = 1; final int batchNum = 2;
final double totalMoney = 5000.00; final double totalMoney = 5800.00;
final double maxoney =500.00;
if(4==4){ if(4==4){
List<AddRedRainDto> batchList4 = new ArrayList<>(); List<AddRedRainDto> batchList4 = new ArrayList<>();
QueryRedRainDto dto4_1 = new QueryRedRainDto(); QueryRedRainDto dto4_1 = new QueryRedRainDto();
...@@ -94,7 +95,7 @@ public class InitRedPackageTask2 { ...@@ -94,7 +95,7 @@ public class InitRedPackageTask2 {
//前10%红包 //前10%红包
int redNum = (int)(list1_1.size()*0.11); int redNum = (int)(list1_1.size()*0.11);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list1_1.size()); HashSet<Integer> set = getLuckUser(redNum,list1_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -123,7 +124,7 @@ public class InitRedPackageTask2 { ...@@ -123,7 +124,7 @@ public class InitRedPackageTask2 {
//前20%红包 //前20%红包
int redNum = (int)(list.size()*0.22); int redNum = (int)(list.size()*0.22);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list2_1.size()); HashSet<Integer> set = getLuckUser(redNum,list2_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -151,7 +152,7 @@ public class InitRedPackageTask2 { ...@@ -151,7 +152,7 @@ public class InitRedPackageTask2 {
//前65%红包 //前65%红包
int redNum = list3_1.size(); int redNum = list3_1.size();
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list3_1.size()); HashSet<Integer> set = getLuckUser(redNum,list3_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -194,7 +195,7 @@ public class InitRedPackageTask2 { ...@@ -194,7 +195,7 @@ public class InitRedPackageTask2 {
saveUserCattleDtos.add(dto); saveUserCattleDtos.add(dto);
}); });
userInfoMapper.saveCattleBrand(saveUserCattleDtos); userInfoMapper.saveCattleBrand(saveUserCattleDtos);
log.info("第批红包雨任务结束"); log.info("第批红包雨任务结束");
} }
private HashSet<Integer> getLuckUser(int count, int random){ private HashSet<Integer> getLuckUser(int count, int random){
HashSet<Integer> has = new HashSet<Integer>(); HashSet<Integer> has = new HashSet<Integer>();
......
...@@ -59,10 +59,11 @@ public class InitRedPackageTask3 { ...@@ -59,10 +59,11 @@ public class InitRedPackageTask3 {
} }
private void sendWechat(){ private void sendWechat(){
log.info("第批红包雨任务开始"); log.info("第批红包雨任务开始");
//查询出没有初始化的红包 //查询出没有初始化的红包
final int batchNum = 1; final int batchNum = 3;
final double totalMoney = 5000.00; final double totalMoney = 5800.00;
final double maxoney =500.00;
if(4==4){ if(4==4){
List<AddRedRainDto> batchList4 = new ArrayList<>(); List<AddRedRainDto> batchList4 = new ArrayList<>();
QueryRedRainDto dto4_1 = new QueryRedRainDto(); QueryRedRainDto dto4_1 = new QueryRedRainDto();
...@@ -94,7 +95,7 @@ public class InitRedPackageTask3 { ...@@ -94,7 +95,7 @@ public class InitRedPackageTask3 {
//前10%红包 //前10%红包
int redNum = (int)(list1_1.size()*0.11); int redNum = (int)(list1_1.size()*0.11);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list1_1.size()); HashSet<Integer> set = getLuckUser(redNum,list1_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -123,7 +124,7 @@ public class InitRedPackageTask3 { ...@@ -123,7 +124,7 @@ public class InitRedPackageTask3 {
//前20%红包 //前20%红包
int redNum = (int)(list.size()*0.22); int redNum = (int)(list.size()*0.22);
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.25,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list2_1.size()); HashSet<Integer> set = getLuckUser(redNum,list2_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -151,7 +152,7 @@ public class InitRedPackageTask3 { ...@@ -151,7 +152,7 @@ public class InitRedPackageTask3 {
//前65%红包 //前65%红包
int redNum = list3_1.size(); int redNum = list3_1.size();
RedPacketUtil redpack = new RedPacketUtil(); RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,200,2.1); List<Double> redAmount= redpack.getMoney(totalMoney*0.5,redNum,0.01,maxoney,2.1);
HashSet<Integer> set = getLuckUser(redNum,list3_1.size()); HashSet<Integer> set = getLuckUser(redNum,list3_1.size());
int i = 0; int i = 0;
for (Integer s : set) { for (Integer s : set) {
...@@ -194,7 +195,7 @@ public class InitRedPackageTask3 { ...@@ -194,7 +195,7 @@ public class InitRedPackageTask3 {
saveUserCattleDtos.add(dto); saveUserCattleDtos.add(dto);
}); });
userInfoMapper.saveCattleBrand(saveUserCattleDtos); userInfoMapper.saveCattleBrand(saveUserCattleDtos);
log.info("第批红包雨任务结束"); log.info("第批红包雨任务结束");
} }
private HashSet<Integer> getLuckUser(int count, int random){ private HashSet<Integer> getLuckUser(int count, int random){
HashSet<Integer> has = new HashSet<Integer>(); HashSet<Integer> has = new HashSet<Integer>();
......
...@@ -32,7 +32,7 @@ public class UserSignTask { ...@@ -32,7 +32,7 @@ public class UserSignTask {
* 补签任务 * 补签任务
*/ */
// @Scheduled( cron = "0 35 17 * * ? ") // @Scheduled( cron = "0 35 17 * * ? ")
@Scheduled( cron = "0 5 0 12,13,14,15,16,17 2 ? ") //2月12,13,14,15,16,17 0时5分0秒执行 @Scheduled( cron = "0 1 0 12,13,14,15,16,17 2 ? ") //2月12,13,14,15,16,17 0时1分0秒执行
public void execute() { public void execute() {
try { try {
sendWechat(); sendWechat();
...@@ -54,7 +54,7 @@ public class UserSignTask { ...@@ -54,7 +54,7 @@ public class UserSignTask {
userSignDto.setId(SnowFlakeUtil.nextId()); userSignDto.setId(SnowFlakeUtil.nextId());
userSignDto.setUserId(item); userSignDto.setUserId(item);
userSignDto.setSignStatus(CommonTypeEnum.USER_SIGN_STATUS2.getCode()); userSignDto.setSignStatus(CommonTypeEnum.USER_SIGN_STATUS2.getCode());
userSignDto.setSignDate(date); userSignDto.setSignDate(DateUtil.yesterday());
userSignDto.setCreateTime(date); userSignDto.setCreateTime(date);
list.add(userSignDto); list.add(userSignDto);
}); });
......
...@@ -90,9 +90,4 @@ public class WishLuckDrawTask { ...@@ -90,9 +90,4 @@ public class WishLuckDrawTask {
} }
return has; return has;
} }
public static void main(String[] args) {
WishLuckDrawTask task = new WishLuckDrawTask();
task.getLuckUser(10,14).forEach(a->System.out.println(a));
}
} }
...@@ -185,19 +185,19 @@ ...@@ -185,19 +185,19 @@
</select> </select>
<select id="getKukcyMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO"> <select id="getKukcyMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO">
SELECT SELECT
t.user_name as userName, t.user_name as userName,
t.red_balance as amount t.red_balance as amount
FROM FROM
t_user t ORDER BY t.red_balance desc t_user t order by amount desc,user_id
</select> </select>
<select id="getcollectCardMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO"> <select id="getcollectCardMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO">
SELECT SELECT
t2.user_name as userName, t2.user_name as userName,
t1.red_amount as amount t1.red_amount as amount
FROM FROM
t_red_rain t1 t_red_rain t1
LEFT JOIN t_user t2 on(t2.user_id = t1.user_id) LEFT JOIN t_user t2 on(t2.user_id = t1.user_id)
where t1.source_type = '4' ORDER BY t1.red_amount desc where t1.source_type = '4' order by amount desc,t2.user_id
</select> </select>
<select id="getGrapRedPackMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO"> <select id="getGrapRedPackMoney" resultType="com.polysoft.activity.model.vo.SmashBasinVO">
SELECT SELECT
...@@ -210,8 +210,7 @@ ...@@ -210,8 +210,7 @@
t1.source_type = '1' t1.source_type = '1'
GROUP BY GROUP BY
t1.user_id t1.user_id
ORDER BY order by amount desc,t2.user_id
amount DESC
</select> </select>
<select id="getGrapRedPackResult" resultType="com.polysoft.activity.model.vo.GrapRedPackResultVO" <select id="getGrapRedPackResult" resultType="com.polysoft.activity.model.vo.GrapRedPackResultVO"
parameterType="com.polysoft.activity.model.dto.GrapRedPackResultDto"> parameterType="com.polysoft.activity.model.dto.GrapRedPackResultDto">
......
...@@ -155,6 +155,9 @@ ...@@ -155,6 +155,9 @@
create_time =#{createTime} create_time =#{createTime}
where id = #{id} where id = #{id}
</insert> </insert>
<insert id="saveCattle" parameterType="com.polysoft.activity.model.param.UserCattleParam">
insert into t_user_cattle (id,user_id,cattle_brand_id)VALUES (#{id},#{userId},#{cattleId})
</insert>
<select id="getUserByComposeStatus" parameterType="com.polysoft.activity.model.dto.UserInfoForComposeStatusDto" <select id="getUserByComposeStatus" parameterType="com.polysoft.activity.model.dto.UserInfoForComposeStatusDto"
resultType="com.polysoft.activity.model.vo.UserInfoVO"> resultType="com.polysoft.activity.model.vo.UserInfoVO">
SELECT SELECT
...@@ -165,18 +168,18 @@ ...@@ -165,18 +168,18 @@
</select> </select>
<select id="queryUserSignByUserId" resultType="com.polysoft.activity.model.vo.UserSignVO"> <select id="queryUserSignByUserId" resultType="com.polysoft.activity.model.vo.UserSignVO">
select select
t.id, t.id,
t.sign_date, t.sign_date,
t.sign_status, t.sign_status,
t.user_id t.user_id
from from
t_user_sign t t_user_sign t
where where
user_id = #{userId} user_id = #{userId}
<if test="signDate != null and signDate != '' "> <if test="signDate != null and signDate != '' ">
and sign_date = #{signDate} and sign_date = #{signDate}
</if> </if>
order by t.sign_date asc order by t.sign_date asc
</select> </select>
<select id="getCattleAmount" resultType="com.polysoft.activity.model.vo.OpenCattleVO"> <select id="getCattleAmount" resultType="com.polysoft.activity.model.vo.OpenCattleVO">
select select
...@@ -208,5 +211,16 @@ ...@@ -208,5 +211,16 @@
share_date = DATE_FORMAT( NOW( ), '%Y-%m-%d' ) share_date = DATE_FORMAT( NOW( ), '%Y-%m-%d' )
AND user_id = #{userId} AND user_id = #{userId}
</select> </select>
<select id="queryUserSignBySignId" resultType="com.polysoft.activity.model.vo.UserSignVO">
select
t.id,
t.sign_date,
t.sign_status,
t.user_id
from
t_user_sign t
where
id =#{id}
</select>
</mapper> </mapper>
...@@ -78,10 +78,4 @@ public class RedPacketUtil { ...@@ -78,10 +78,4 @@ public class RedPacketUtil {
return splitRedPackets(money,count,MINMONEY, MAXMONEY,TIMES); return splitRedPackets(money,count,MINMONEY, MAXMONEY,TIMES);
} }
public static void main(String[] args) {
RedPacketUtil redpack = new RedPacketUtil();
List<Double> redAmount= redpack.getMoney(1250,10,0.01,200,2.1);
redAmount.forEach(a -> System.out.println(a));
}
} }
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!