Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
xunj
/
festival-activites
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 4ec83e71
authored
Feb 18, 2021
by
xunj
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
正是上线发布版本
1 parent
450d20f6
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
83 additions
and
74 deletions
activity-admin/src/main/java/com/polysoft/activity/constant/MsgCodeEnum.java
activity-admin/src/main/java/com/polysoft/activity/controller/RedPackageController.java
activity-admin/src/main/java/com/polysoft/activity/controller/UserController.java
activity-admin/src/main/java/com/polysoft/activity/mapper/UserInfoMapper.java
activity-admin/src/main/java/com/polysoft/activity/model/vo/GrapRedPackResultVO.java
activity-admin/src/main/java/com/polysoft/activity/model/vo/RedPackInfoVO.java
activity-admin/src/main/java/com/polysoft/activity/model/vo/SmashBasinVO.java
activity-admin/src/main/java/com/polysoft/activity/service/UserInfoService.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/CattleBrandServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/service/impl/UserInfoServiceImpl.java
activity-admin/src/main/java/com/polysoft/activity/task/CattleBrandCarveUpTask.java
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask1.java
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask2.java
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask3.java
activity-admin/src/main/java/com/polysoft/activity/task/UserSignTask.java
activity-admin/src/main/java/com/polysoft/activity/task/WishLuckDrawTask.java
activity-admin/src/main/resources/mapper/ActivityMapper.xml
activity-admin/src/main/resources/mapper/UserInfoMapper.xml
activity-common/src/main/java/com/polysoft/activity/utils/RedPacketUtil.java
activity-admin/src/main/java/com/polysoft/activity/constant/MsgCodeEnum.java
View file @
4ec83e7
...
...
@@ -9,8 +9,8 @@ public enum MsgCodeEnum {
RED_PACK_RECHAGE_NO
(
"3001"
,
"红包雨未结算完成"
),
CATTLE_OPEN__NO
(
"4001"
,
"牛牌合成未打开,请打开牛牌之后提现"
),
ACTIVITY_ALL_NO
(
"4002"
,
"
活动未全部结束
"
),
ACTIVITY_ALL_YES
(
"4003"
,
"非常遗憾,提现时效已过,
拜拜……
"
);
ACTIVITY_ALL_NO
(
"4002"
,
"
福牛活动结束后可砸盆提现
"
),
ACTIVITY_ALL_YES
(
"4003"
,
"非常遗憾,提现时效已过,
明年再努力!
"
);
private
String
code
;
private
String
msg
;
...
...
activity-admin/src/main/java/com/polysoft/activity/controller/RedPackageController.java
View file @
4ec83e7
...
...
@@ -34,11 +34,13 @@ public class RedPackageController {
@GetMapping
(
"/queryActivityInfo"
)
@ResponseBody
public
ApiResult
queryActivityInfo
()
{
return
actItemService
.
queryActivityInfo
();
}
@PostMapping
(
"/queryRedPackInfo"
)
@ResponseBody
public
ApiResult
queryRedPackInfo
(
@RequestBody
IdQueryParam
param
)
{
return
actItemService
.
queryRedPackInfo
(
param
);
}
...
...
activity-admin/src/main/java/com/polysoft/activity/controller/UserController.java
View file @
4ec83e7
...
...
@@ -16,15 +16,15 @@ import javax.annotation.Resource;
@Api
(
value
=
"用户"
,
description
=
"用户接口"
)
public
class
UserController
{
@Resource
private
UserInfoService
userInfoService
;
@PostMapping
(
"/queryAuthUser"
)
@ResponseBody
public
ApiResult
queryAuthUser
(
@RequestBody
UserInfoParam
param
)
{
return
userInfoService
.
queryAuthUser
(
param
);
}
@Resource
private
UserInfoService
userInfoService
;
@PostMapping
(
"/getFirsetLgoinRed"
)
@ResponseBody
public
ApiResult
getFirsetLgoinRed
(
@RequestBody
@Validated
UserInfoParam
param
)
{
...
...
activity-admin/src/main/java/com/polysoft/activity/mapper/UserInfoMapper.java
View file @
4ec83e7
...
...
@@ -34,6 +34,7 @@ public interface UserInfoMapper {
int
updateFirstLoginStatus
(
@Param
(
"userId"
)
Long
userId
);
UserInfoVO
getUserByComposeStatus
(
UserInfoForComposeStatusDto
dto
);
List
<
UserSignVO
>
queryUserSignByUserId
(
@Param
(
"userId"
)
Long
userId
,
@Param
(
"signDate"
)
String
signDate
);
UserSignVO
queryUserSignBySignId
(
@Param
(
"id"
)
Long
id
);
int
updateUserStates
(
UpdateUserStatesDto
dto
);
OpenCattleVO
getCattleAmount
(
@Param
(
"userId"
)
Long
userId
);
BigDecimal
getRedBalanceByUserId
(
@Param
(
"userId"
)
Long
userId
);
...
...
activity-admin/src/main/java/com/polysoft/activity/model/vo/GrapRedPackResultVO.java
View file @
4ec83e7
...
...
@@ -12,6 +12,6 @@ import java.math.BigDecimal;
public
class
GrapRedPackResultVO
{
private
int
redNum
;
private
int
cattleNum
;
private
BigDecimal
totalMoney
;
private
String
totalMoney
;
private
String
userName
;
}
activity-admin/src/main/java/com/polysoft/activity/model/vo/RedPackInfoVO.java
View file @
4ec83e7
...
...
@@ -11,8 +11,9 @@ import java.math.BigDecimal;
@Data
public
class
RedPackInfoVO
{
private
Long
redId
;
private
BigDecimal
redamount
;
private
String
redamount
;
private
String
sourceType
;
private
String
createTime
;
}
activity-admin/src/main/java/com/polysoft/activity/model/vo/SmashBasinVO.java
View file @
4ec83e7
...
...
@@ -11,5 +11,5 @@ import java.math.BigDecimal;
@Data
public
class
SmashBasinVO
{
private
String
userName
;
private
BigDecimal
amount
;
private
String
amount
;
}
activity-admin/src/main/java/com/polysoft/activity/service/UserInfoService.java
View file @
4ec83e7
...
...
@@ -6,8 +6,6 @@ import com.polysoft.activity.model.param.ShareLinkParam;
import
com.polysoft.activity.model.param.UserInfoParam
;
import
com.polysoft.activity.utils.ApiResult
;
import
java.util.List
;
public
interface
UserInfoService
{
ApiResult
queryAuthUser
(
UserInfoParam
param
);
ApiResult
getShareLink
(
ShareLinkParam
param
);
...
...
activity-admin/src/main/java/com/polysoft/activity/service/impl/CattleBrandServiceImpl.java
View file @
4ec83e7
...
...
@@ -154,7 +154,7 @@ public class CattleBrandServiceImpl implements CattleBrandService {
return
ApiResult
.
ok
(
MsgCodeEnum
.
OPEN_CATTLE2
.
getCode
(),
MsgCodeEnum
.
OPEN_CATTLE2
.
getMsg
());
}
Long
currentTime
=
System
.
currentTimeMillis
()/
1000
;
Long
guiDingTime
=
DateUtil
.
parse
(
"2021-02-17 2
2
:21:00"
,
"yyyy-MM-dd HH:mm:ss"
).
getTime
()/
1000
;
Long
guiDingTime
=
DateUtil
.
parse
(
"2021-02-17 2
0
:21:00"
,
"yyyy-MM-dd HH:mm:ss"
).
getTime
()/
1000
;
if
(
currentTime
<
guiDingTime
){
return
ApiResult
.
ok
(
MsgCodeEnum
.
OPEN_CATTLE2
.
getCode
(),
MsgCodeEnum
.
OPEN_CATTLE3
.
getMsg
());
}
...
...
activity-admin/src/main/java/com/polysoft/activity/service/impl/UserInfoServiceImpl.java
View file @
4ec83e7
...
...
@@ -23,7 +23,6 @@ import com.polysoft.activity.model.vo.*;
import
com.polysoft.activity.service.UserInfoService
;
import
com.polysoft.activity.utils.ApiResult
;
import
com.polysoft.activity.utils.MathRandom
;
import
com.polysoft.activity.utils.RandomUtils
;
import
com.polysoft.activity.utils.SHA1
;
import
com.polysoft.activity.utils.SnowFlakeUtil
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -64,6 +63,11 @@ public class UserInfoServiceImpl implements UserInfoService {
private
final
Long
divide
=
1000L
;
@Override
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
){
UserInfoVO
user
=
mapper
.
queryAuthUser
(
param
);
if
(
user
==
null
){
...
...
@@ -164,13 +168,14 @@ public class UserInfoServiceImpl implements UserInfoService {
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
ApiResult
saveUserSign
(
UserInfoParam
param
)
{
Date
date
=
new
Date
();
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
);
if
(
list2
!=
null
&&
list2
.
size
()
>
0
&&
param
.
getSignId
()
==
null
){
return
ApiResult
.
ok
();
}
Date
date
=
new
Date
();
UserSignDto
userSignDto
=
new
UserSignDto
();
CattleBrandVO
cattleBrandVO
=
null
;
CattleBrandConfVO
confVO
=
cattleBrandMapper
.
queryCattleBrandConf
(
today
);
...
...
@@ -178,6 +183,10 @@ public class UserInfoServiceImpl implements UserInfoService {
return
ApiResult
.
error
(
"牛牌概率未配置"
);
}
if
(
param
.
getSignId
()
!=
null
){
UserSignVO
userSignVO2
=
mapper
.
queryUserSignBySignId
(
param
.
getSignId
());
if
(
"1"
.
equals
(
userSignVO2
.
getSignStatus
())){
return
ApiResult
.
ok
();
}
//扣除金额
BigDecimal
kouchu
=
BigDecimal
.
valueOf
(
20.00
);
//查询余额是否大于 5 元
...
...
activity-admin/src/main/java/com/polysoft/activity/task/CattleBrandCarveUpTask.java
View file @
4ec83e7
...
...
@@ -36,7 +36,7 @@ public class CattleBrandCarveUpTask {
// @Scheduled( cron = "0 20 20 * * ? ")
// @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
()
{
try
{
sendWechat
();
...
...
@@ -60,13 +60,14 @@ public class CattleBrandCarveUpTask {
//第一批瓜分
RedPacketUtil
redpack
=
new
RedPacketUtil
();
//查询第一批红包配置
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
);
// RedAmountConfVO confVO_1 = activityMapper.getRedAmountConf("4",1L);
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
<>();
for
(
int
bt_1
=
0
;
bt_1
<
list_1
.
size
();
bt_1
++)
{
AddRedRainDto
addRedRainDto
=
new
AddRedRainDto
();
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
.
setIsEnble
(
CommonTypeEnum
.
RED_ISENBLE_NO
.
getCode
());
batchList_1
.
add
(
addRedRainDto
);
...
...
@@ -82,13 +83,14 @@ public class CattleBrandCarveUpTask {
}
List
<
Long
>
list_2
=
activityMapper
.
getRedIdToCattle
(
BigDecimal
.
valueOf
(
0.00
),
count_2
);
//查询第二批红包配置
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
);
// RedAmountConfVO confVO_2 = activityMapper.getRedAmountConf("4",2L);
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
<>();
for
(
int
bt_2
=
0
;
bt_2
<
list_2
.
size
();
bt_2
++)
{
AddRedRainDto
addRedRainDto
=
new
AddRedRainDto
();
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
.
setIsEnble
(
CommonTypeEnum
.
RED_ISENBLE_NO
.
getCode
());
batchList_2
.
add
(
addRedRainDto
);
...
...
@@ -105,13 +107,14 @@ public class CattleBrandCarveUpTask {
//生成范围
List
<
Long
>
list_3
=
activityMapper
.
getRedIdToCattle
(
BigDecimal
.
valueOf
(
0.00
),
count_3
);
//查询第三批红包配置
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
);
// RedAmountConfVO confVO_3 = activityMapper.getRedAmountConf("4",3L);
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
<>();
for
(
int
bt_3
=
0
;
bt_3
<
list_3
.
size
();
bt_3
++)
{
AddRedRainDto
addRedRainDto
=
new
AddRedRainDto
();
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
.
setIsEnble
(
CommonTypeEnum
.
RED_ISENBLE_NO
.
getCode
());
batchList_3
.
add
(
addRedRainDto
);
...
...
@@ -124,13 +127,14 @@ public class CattleBrandCarveUpTask {
int
count_4
=
list_4
.
size
();
//生成范围
//查询第四批红包配置
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
);
// RedAmountConfVO confVO_4 = activityMapper.getRedAmountConf("4",4L);
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
<>();
for
(
int
bt_4
=
0
;
bt_4
<
list_4
.
size
();
bt_4
++)
{
AddRedRainDto
addRedRainDto
=
new
AddRedRainDto
();
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
.
setIsEnble
(
CommonTypeEnum
.
RED_ISENBLE_NO
.
getCode
());
batchList_4
.
add
(
addRedRainDto
);
...
...
@@ -167,15 +171,4 @@ public class CattleBrandCarveUpTask {
double
eps
=
1
e
-
10
;
// 精度范围
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
));
}
}
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask1.java
View file @
4ec83e7
...
...
@@ -62,7 +62,8 @@ public class InitRedPackageTask1 {
log
.
info
(
"第一批红包雨任务开始"
);
//查询出没有初始化的红包
final
int
batchNum
=
1
;
final
double
totalMoney
=
5000.00
;
final
double
totalMoney
=
5800.00
;
final
double
maxoney
=
500.00
;
if
(
4
==
4
){
List
<
AddRedRainDto
>
batchList4
=
new
ArrayList
<>();
QueryRedRainDto
dto4_1
=
new
QueryRedRainDto
();
...
...
@@ -93,7 +94,7 @@ public class InitRedPackageTask1 {
//前10%红包
int
redNum
=
(
int
)(
list1_1
.
size
()*
0.11
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -122,7 +123,7 @@ public class InitRedPackageTask1 {
//前20%红包
int
redNum
=
(
int
)(
list
.
size
()*
0.22
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -150,7 +151,7 @@ public class InitRedPackageTask1 {
//前65%红包
int
redNum
=
list3_1
.
size
();
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask2.java
View file @
4ec83e7
...
...
@@ -45,7 +45,7 @@ public class InitRedPackageTask2 {
@Resource
private
CattleBrandMapper
cattleBrandMapper
;
// @Scheduled(initialDelay = 10
000, fixedRate = 1*15*60*1000)
// @Scheduled(initialDelay = 5
000, fixedRate = 1*15*60*1000)
// @Scheduled( cron = "40 10 17 * * ? ")
@Scheduled
(
cron
=
"45 0 22 11 2 ? "
)
// 2月11日 22点0分45秒执行
public
void
execute
()
{
...
...
@@ -59,10 +59,11 @@ public class InitRedPackageTask2 {
}
private
void
sendWechat
(){
log
.
info
(
"第
一
批红包雨任务开始"
);
log
.
info
(
"第
二
批红包雨任务开始"
);
//查询出没有初始化的红包
final
int
batchNum
=
1
;
final
double
totalMoney
=
5000.00
;
final
int
batchNum
=
2
;
final
double
totalMoney
=
5800.00
;
final
double
maxoney
=
500.00
;
if
(
4
==
4
){
List
<
AddRedRainDto
>
batchList4
=
new
ArrayList
<>();
QueryRedRainDto
dto4_1
=
new
QueryRedRainDto
();
...
...
@@ -94,7 +95,7 @@ public class InitRedPackageTask2 {
//前10%红包
int
redNum
=
(
int
)(
list1_1
.
size
()*
0.11
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -123,7 +124,7 @@ public class InitRedPackageTask2 {
//前20%红包
int
redNum
=
(
int
)(
list
.
size
()*
0.22
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -151,7 +152,7 @@ public class InitRedPackageTask2 {
//前65%红包
int
redNum
=
list3_1
.
size
();
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -194,7 +195,7 @@ public class InitRedPackageTask2 {
saveUserCattleDtos
.
add
(
dto
);
});
userInfoMapper
.
saveCattleBrand
(
saveUserCattleDtos
);
log
.
info
(
"第
一
批红包雨任务结束"
);
log
.
info
(
"第
二
批红包雨任务结束"
);
}
private
HashSet
<
Integer
>
getLuckUser
(
int
count
,
int
random
){
HashSet
<
Integer
>
has
=
new
HashSet
<
Integer
>();
...
...
activity-admin/src/main/java/com/polysoft/activity/task/InitRedPackageTask3.java
View file @
4ec83e7
...
...
@@ -59,10 +59,11 @@ public class InitRedPackageTask3 {
}
private
void
sendWechat
(){
log
.
info
(
"第
一
批红包雨任务开始"
);
log
.
info
(
"第
三
批红包雨任务开始"
);
//查询出没有初始化的红包
final
int
batchNum
=
1
;
final
double
totalMoney
=
5000.00
;
final
int
batchNum
=
3
;
final
double
totalMoney
=
5800.00
;
final
double
maxoney
=
500.00
;
if
(
4
==
4
){
List
<
AddRedRainDto
>
batchList4
=
new
ArrayList
<>();
QueryRedRainDto
dto4_1
=
new
QueryRedRainDto
();
...
...
@@ -94,7 +95,7 @@ public class InitRedPackageTask3 {
//前10%红包
int
redNum
=
(
int
)(
list1_1
.
size
()*
0.11
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -123,7 +124,7 @@ public class InitRedPackageTask3 {
//前20%红包
int
redNum
=
(
int
)(
list
.
size
()*
0.22
);
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -151,7 +152,7 @@ public class InitRedPackageTask3 {
//前65%红包
int
redNum
=
list3_1
.
size
();
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
());
int
i
=
0
;
for
(
Integer
s
:
set
)
{
...
...
@@ -194,7 +195,7 @@ public class InitRedPackageTask3 {
saveUserCattleDtos
.
add
(
dto
);
});
userInfoMapper
.
saveCattleBrand
(
saveUserCattleDtos
);
log
.
info
(
"第
一
批红包雨任务结束"
);
log
.
info
(
"第
三
批红包雨任务结束"
);
}
private
HashSet
<
Integer
>
getLuckUser
(
int
count
,
int
random
){
HashSet
<
Integer
>
has
=
new
HashSet
<
Integer
>();
...
...
activity-admin/src/main/java/com/polysoft/activity/task/UserSignTask.java
View file @
4ec83e7
...
...
@@ -32,7 +32,7 @@ public class UserSignTask {
* 补签任务
*/
// @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
()
{
try
{
sendWechat
();
...
...
@@ -54,7 +54,7 @@ public class UserSignTask {
userSignDto
.
setId
(
SnowFlakeUtil
.
nextId
());
userSignDto
.
setUserId
(
item
);
userSignDto
.
setSignStatus
(
CommonTypeEnum
.
USER_SIGN_STATUS2
.
getCode
());
userSignDto
.
setSignDate
(
date
);
userSignDto
.
setSignDate
(
DateUtil
.
yesterday
()
);
userSignDto
.
setCreateTime
(
date
);
list
.
add
(
userSignDto
);
});
...
...
activity-admin/src/main/java/com/polysoft/activity/task/WishLuckDrawTask.java
View file @
4ec83e7
...
...
@@ -90,9 +90,4 @@ public class WishLuckDrawTask {
}
return
has
;
}
public
static
void
main
(
String
[]
args
)
{
WishLuckDrawTask
task
=
new
WishLuckDrawTask
();
task
.
getLuckUser
(
10
,
14
).
forEach
(
a
->
System
.
out
.
println
(
a
));
}
}
activity-admin/src/main/resources/mapper/ActivityMapper.xml
View file @
4ec83e7
...
...
@@ -188,7 +188,7 @@
t.user_name as userName,
t.red_balance as amount
FROM
t_user t ORDER BY t.red_balance desc
t_user t order by amount desc,user_id
</select>
<select
id=
"getcollectCardMoney"
resultType=
"com.polysoft.activity.model.vo.SmashBasinVO"
>
SELECT
...
...
@@ -197,7 +197,7 @@
FROM
t_red_rain t1
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
id=
"getGrapRedPackMoney"
resultType=
"com.polysoft.activity.model.vo.SmashBasinVO"
>
SELECT
...
...
@@ -210,8 +210,7 @@
t1.source_type = '1'
GROUP BY
t1.user_id
ORDER BY
amount DESC
order by amount desc,t2.user_id
</select>
<select
id=
"getGrapRedPackResult"
resultType=
"com.polysoft.activity.model.vo.GrapRedPackResultVO"
parameterType=
"com.polysoft.activity.model.dto.GrapRedPackResultDto"
>
...
...
activity-admin/src/main/resources/mapper/UserInfoMapper.xml
View file @
4ec83e7
...
...
@@ -155,6 +155,9 @@
create_time =#{createTime}
where id = #{id}
</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"
resultType=
"com.polysoft.activity.model.vo.UserInfoVO"
>
SELECT
...
...
@@ -208,5 +211,16 @@
share_date = DATE_FORMAT( NOW( ), '%Y-%m-%d' )
AND user_id = #{userId}
</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>
activity-common/src/main/java/com/polysoft/activity/utils/RedPacketUtil.java
View file @
4ec83e7
...
...
@@ -78,10 +78,4 @@ public class RedPacketUtil {
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
));
}
}
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment