记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
018cad11
Commit
018cad11
authored
Nov 18, 2021
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add log
parent
06bb95b2
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
17 additions
and
9 deletions
+17
-9
SweetIntegralActivityDrawServiceImpl.java
...et/service/impl/SweetIntegralActivityDrawServiceImpl.java
+13
-5
RedisDataUtils.java
...ava/com/liquidnet/service/sweet/utils/RedisDataUtils.java
+4
-4
No files found.
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/service/impl/SweetIntegralActivityDrawServiceImpl.java
View file @
018cad11
...
@@ -23,9 +23,9 @@ import com.liquidnet.service.sweet.service.ISweetIntegralActivityDrawService;
...
@@ -23,9 +23,9 @@ import com.liquidnet.service.sweet.service.ISweetIntegralActivityDrawService;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.QueueUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.RedisDataUtils
;
import
com.liquidnet.service.sweet.utils.SweetNewObjectUtil
;
import
com.liquidnet.service.sweet.utils.SweetNewObjectUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.bson.Document
;
import
org.bson.Document
;
import
org.redisson.api.RLock
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
...
@@ -48,6 +48,7 @@ import java.util.*;
...
@@ -48,6 +48,7 @@ import java.util.*;
* @author jiangxiulong
* @author jiangxiulong
* @since 2021-10-26
* @since 2021-10-26
*/
*/
@Slf4j
@Service
@Service
public
class
SweetIntegralActivityDrawServiceImpl
extends
ServiceImpl
<
SweetIntegralActivityDrawMapper
,
SweetIntegralActivityDraw
>
implements
ISweetIntegralActivityDrawService
{
public
class
SweetIntegralActivityDrawServiceImpl
extends
ServiceImpl
<
SweetIntegralActivityDrawMapper
,
SweetIntegralActivityDraw
>
implements
ISweetIntegralActivityDrawService
{
...
@@ -96,6 +97,7 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
...
@@ -96,6 +97,7 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
// 判断用户积分是否>=integralActivity.setActivityNum();
// 判断用户积分是否>=integralActivity.setActivityNum();
ResponseDto
<
StoneScoreListDto
>
userInfoRes
=
feignStoneIntegralClient
.
stoneUserInfo
();
ResponseDto
<
StoneScoreListDto
>
userInfoRes
=
feignStoneIntegralClient
.
stoneUserInfo
();
if
(!
userInfoRes
.
getCode
().
equals
(
"0"
))
{
if
(!
userInfoRes
.
getCode
().
equals
(
"0"
))
{
log
.
error
(
"获取用户积分数据失败 userInfoRes:{}"
,
userInfoRes
);
return
ResponseDto
.
failure
(
"获取用户积分数据失败"
);
return
ResponseDto
.
failure
(
"获取用户积分数据失败"
);
}
else
{
}
else
{
StoneScoreListDto
userInfoData
=
userInfoRes
.
getData
();
StoneScoreListDto
userInfoData
=
userInfoRes
.
getData
();
...
@@ -129,16 +131,21 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
...
@@ -129,16 +131,21 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
// 减库存 顺便判断库存是否够 -1的时候回滚回去
// 减库存 顺便判断库存是否够 -1的时候回滚回去
long
activityPrizeNum
=
redisDataUtils
.
decrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
long
activityPrizeNum
=
redisDataUtils
.
decrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
long
activityPrizeWinnersNum
=
redisDataUtils
.
decrIntegralActivityPrizeWinnersNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
long
activityPrizeWinnersNum
=
redisDataUtils
.
decrIntegralActivityPrizeWinnersNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
log
.
info
(
"奖品库存情况 activityPrizeNum:{}"
,
activityPrizeNum
);
log
.
info
(
"奖品库存情况 activityPrizeWinnersNum:{}"
,
activityPrizeWinnersNum
);
if
(
activityPrizeNum
<
0
)
{
// 库存不够了
if
(
activityPrizeNum
<
0
)
{
// 库存不够了
redisDataUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
long
prizeNum
=
redisDataUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
log
.
info
(
"奖品库存情况回滚后 prizeNum:{}"
,
prizeNum
);
return
ResponseDto
.
failure
(
"活动太火爆了,奖品已经没有库存了!"
);
return
ResponseDto
.
failure
(
"活动太火爆了,奖品已经没有库存了!"
);
}
}
if
(
activityPrizeWinnersNum
<
0
)
{
// 库存不够了
if
(
activityPrizeWinnersNum
<
0
)
{
// 库存不够了
redisDataUtils
.
incrIntegralActivityPrizeWinnersNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
long
winnersNum
=
redisDataUtils
.
incrIntegralActivityPrizeWinnersNum
(
integralActivityId
,
sweetIntegralActivityPrizeVo
.
getPrizeId
(),
1
);
log
.
info
(
"奖品库存情况回滚后 winnersNum:{}"
,
winnersNum
);
return
ResponseDto
.
failure
(
"活动太火爆了,奖品已经没有库存了~"
);
return
ResponseDto
.
failure
(
"活动太火爆了,奖品已经没有库存了~"
);
}
}
// 减积分
// 减积分
feignStoneIntegralClient
.
de2111
(
userId
,
integralActivity
.
getActivityNum
(),
integralActivity
.
getActivityTitle
());
ResponseDto
<
String
>
de2111
=
feignStoneIntegralClient
.
de2111
(
userId
,
integralActivity
.
getActivityNum
(),
integralActivity
.
getActivityTitle
());
log
.
info
(
"减积分返回值情况 de2111:{}"
,
de2111
);
// 抽奖入库
// 抽奖入库
String
drawId
=
IDGenerator
.
nextSnowId
();
String
drawId
=
IDGenerator
.
nextSnowId
();
IntegralActivityDrawVo
integralActivityDrawVo
=
IntegralActivityDrawVo
.
getNew
();
IntegralActivityDrawVo
integralActivityDrawVo
=
IntegralActivityDrawVo
.
getNew
();
...
@@ -158,7 +165,8 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
...
@@ -158,7 +165,8 @@ public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetInteg
Integer
prizeType
=
sweetIntegralActivityPrize
.
getPrizeType
();
Integer
prizeType
=
sweetIntegralActivityPrize
.
getPrizeType
();
if
(
prizeType
==
2
)
{
// 中奖积分
if
(
prizeType
==
2
)
{
// 中奖积分
// 增加积分
// 增加积分
feignStoneIntegralClient
.
in2111
(
userId
,
sweetIntegralActivityPrize
.
getPrizeTypeNum
(),
integralActivity
.
getActivityTitle
());
ResponseDto
<
String
>
in2111
=
feignStoneIntegralClient
.
in2111
(
userId
,
sweetIntegralActivityPrize
.
getPrizeTypeNum
(),
integralActivity
.
getActivityTitle
());
log
.
info
(
"中奖加积分返回值情况 in2111:{}"
,
in2111
);
// 发放状态
// 发放状态
receivingStatus
=
2
;
receivingStatus
=
2
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-sweet/src/main/java/com/liquidnet/service/sweet/utils/RedisDataUtils.java
View file @
018cad11
...
@@ -716,20 +716,20 @@ public class RedisDataUtils {
...
@@ -716,20 +716,20 @@ public class RedisDataUtils {
return
decr
;
return
decr
;
}
}
public
void
incrIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
public
long
incrIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
.
concat
(
integralActivityId
)
.
concat
(
integralActivityId
)
.
concat
(
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_ID
)
.
concat
(
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_ID
)
.
concat
(
prizeId
);
.
concat
(
prizeId
);
long
incr
=
redisUtil
.
incr
(
redisKey
,
num
);
return
redisUtil
.
incr
(
redisKey
,
num
);
}
}
public
void
incrIntegralActivityPrizeWinnersNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
public
long
incrIntegralActivityPrizeWinnersNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_WINNERS_NUM
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_WINNERS_NUM
.
concat
(
integralActivityId
)
.
concat
(
integralActivityId
)
.
concat
(
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_ID
)
.
concat
(
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_ID
)
.
concat
(
prizeId
);
.
concat
(
prizeId
);
long
incr
=
redisUtil
.
incr
(
redisKey
,
num
);
return
redisUtil
.
incr
(
redisKey
,
num
);
}
}
public
IntegralActivityDrawVo
getIntegralActivityDrawInfo
(
String
drawId
)
{
public
IntegralActivityDrawVo
getIntegralActivityDrawInfo
(
String
drawId
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
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 comment