记得上下班打卡 | 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
516ff8e0
Commit
516ff8e0
authored
Jul 07, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
判断 如果盲盒库存不足 拦截
parent
1ad8c80f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
31 additions
and
16 deletions
+31
-16
GoblinMixServiceImpl.java
...vice/goblin/service/impl/manage/GoblinMixServiceImpl.java
+30
-15
MixOrderServiceImpl.java
...idnet/service/order/service/impl/MixOrderServiceImpl.java
+1
-1
No files found.
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/manage/GoblinMixServiceImpl.java
View file @
516ff8e0
...
...
@@ -172,7 +172,7 @@ public class GoblinMixServiceImpl implements IGoblinMixService {
BigDecimal
sellPrice
=
BigDecimal
.
ZERO
;
for
(
GoblinMixDetailsItemParam
itemParam
:
itemParams
)
{
GoblinMixDetailsItemVo
itemVo
=
GoblinMixDetailsItemVo
.
getNew
().
copyByInsert
(
itemParam
);
sellPrice
=
sellPrice
.
add
(
itemVo
.
getPrice
());
sellPrice
=
sellPrice
.
add
(
itemVo
.
getPrice
());
price
=
price
.
add
(
itemVo
.
getSkuPrice
());
itemList
.
add
(
itemVo
);
goblinMixDetails
.
add
(
new
Object
[]{
...
...
@@ -296,22 +296,37 @@ public class GoblinMixServiceImpl implements IGoblinMixService {
nftBoxUtils
.
arrangeHitRatioMap
(
map
,
hitRatioCount
);
}
Map
<
String
,
Integer
>
skuMap
=
nftBoxUtils
.
getSkuHitRatio
(
stock
*
item
.
getCount
(),
map
);
if
(
skuMap
.
size
()==
0
)
{
if
(
skuMap
.
size
()
==
0
)
{
errorNameList
.
add
(
item
.
getSkuName
());
}
for
(
String
key
:
skuMap
.
keySet
())
{
Integer
stockNum
=
skuMap
.
get
(
key
);
//库存
int
skuStock
=
redisUtils
.
decrSkuStock
(
null
,
key
,
stockNum
);
log
.
info
(
"盲盒库存 SKUID = "
+
key
+
" 数量 = "
+
stockNum
);
if
(
skuStock
<
0
)
{
redisUtils
.
incrSkuStock
(
null
,
key
,
stockNum
);
}
else
{
int
boxStock
=
0
;
List
<
String
>
boxSkuId
=
CollectionUtil
.
linkedListString
();
for
(
String
key
:
skuMap
.
keySet
())
{
Integer
stockNum
=
skuMap
.
get
(
key
);
//库存
int
skuStock
=
redisUtils
.
decrSkuStock
(
null
,
key
,
stockNum
);
log
.
info
(
"盲盒库存 SKUID = "
+
key
+
" 数量 = "
+
stockNum
);
boxStock
+=
stockNum
;
if
(
skuStock
<
0
)
{
redisUtils
.
incrSkuStock
(
null
,
key
,
stockNum
);
errorNameList
.
add
(
"盲盒"
+
item
.
getSkuName
());
}
else
{
boxSkuId
.
add
(
key
+
","
+
stockNum
);
redisUtils
.
setSkuStock
(
mixId
,
key
,
stockNum
);
redisUtils
.
addGoblinMixRelationBox
(
skuId
,
mixId
,
key
);
log
.
debug
(
"id = "
+
redisUtils
.
getGoblinMixRelationBox
(
skuId
,
mixId
));
sucSkuId
.
add
(
key
);
}
}
if
(
boxStock
<
stock
*
item
.
getCount
())
{
errorNameList
.
add
(
"盲盒"
+
item
.
getSkuName
());
}
else
{
redisUtils
.
setSkuStock
(
mixId
,
key
,
stockNum
);
redisUtils
.
addGoblinMixRelationBox
(
skuId
,
mixId
,
key
);
log
.
debug
(
"id = "
+
redisUtils
.
getGoblinMixRelationBox
(
skuId
,
mixId
));
sucSkuId
.
add
(
key
);
for
(
String
temp
:
boxSkuId
)
{
String
id
=
temp
.
split
(
","
)[
0
];
int
count
=
Integer
.
parseInt
(
temp
.
split
(
","
)[
1
]);
redisUtils
.
incrSkuStock
(
null
,
id
,
count
);
redisUtils
.
decrSkuStock
(
mixId
,
id
,
count
);
}
}
}
}
else
{
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/service/impl/MixOrderServiceImpl.java
View file @
516ff8e0
...
...
@@ -125,7 +125,7 @@ public class MixOrderServiceImpl implements IMixOrderService {
}
else
{
GoblinGoodsSkuInfoVo
boxSkuInfo
=
nftOrderUtils
.
lotteryDraw
(
skuIdList
,
itemVo
.
getCount
(),
nt
,
mixId
);
if
(
null
==
boxSkuInfo
)
{
return
ResponseDto
.
failure
(
"
盲盒
库存不足啦~"
);
return
ResponseDto
.
failure
(
"库存不足啦~"
);
}
else
{
log
.
debug
(
"stockId = "
+
boxSkuInfo
.
getSkuId
()
+
" stock = "
+
itemVo
.
getCount
());
canBuyIds
.
add
(
boxSkuInfo
.
getSkuId
()
+
","
+
itemVo
.
getCount
());
...
...
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