记得上下班打卡 | 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
8dc130d7
Commit
8dc130d7
authored
Apr 14, 2022
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
详情增加总库存
parent
7a343950
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
37 additions
and
16 deletions
+37
-16
GoblinNftGoodsAppServiceImpl.java
...ice/goblin/service/impl/GoblinNftGoodsAppServiceImpl.java
+24
-16
GoblinRedisUtils.java
...a/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
+13
-0
No files found.
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/GoblinNftGoodsAppServiceImpl.java
View file @
8dc130d7
...
@@ -27,6 +27,7 @@ import org.springframework.stereotype.Service;
...
@@ -27,6 +27,7 @@ import org.springframework.stereotype.Service;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.Comparator
;
import
java.util.Comparator
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -77,8 +78,8 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -77,8 +78,8 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
GoblinNftGoodsSpuInfoVo
nftGoodsSpuInfoVo
=
GoblinNftGoodsSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
GoblinNftGoodsSpuInfoVo
nftGoodsSpuInfoVo
=
GoblinNftGoodsSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsSpuInfoVo
(
nftGoodsSpuInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsSpuInfoVo
(
nftGoodsSpuInfoVo
);
// 库存
// 库存
int
isStock
=
getIsStock
(
skuInfoVo
.
getSkuId
(),
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
HashMap
<
String
,
Integer
>
stockHashMap
=
getIsStock
(
skuInfoVo
.
getSkuId
(),
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
nftGoodsSkuInfoVo
.
setIsStock
(
isStock
);
nftGoodsSkuInfoVo
.
setIsStock
(
stockHashMap
.
get
(
"isStock"
)
);
// 写入列表
// 写入列表
skuList
.
add
(
nftGoodsSkuInfoVo
);
skuList
.
add
(
nftGoodsSkuInfoVo
);
skuIdList
.
add
(
nftGoodsSkuInfoVo
.
getSkuId
());
skuIdList
.
add
(
nftGoodsSkuInfoVo
.
getSkuId
());
...
@@ -98,8 +99,8 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -98,8 +99,8 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
GoblinNftGoodsSpuInfoVo
nftGoodsSpuInfoVo
=
GoblinNftGoodsSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
GoblinNftGoodsSpuInfoVo
nftGoodsSpuInfoVo
=
GoblinNftGoodsSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
goblinNftGoodsSkuListVo
.
setGoblinNftGoodsSpuInfoVo
(
nftGoodsSpuInfoVo
);
goblinNftGoodsSkuListVo
.
setGoblinNftGoodsSpuInfoVo
(
nftGoodsSpuInfoVo
);
// 库存
// 库存
int
isStock
=
getIsStock
(
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
HashMap
<
String
,
Integer
>
stockHashMap
=
getIsStock
(
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
goblinNftGoodsSkuListVo
.
setIsStock
(
isStock
);
goblinNftGoodsSkuListVo
.
setIsStock
(
stockHashMap
.
get
(
"isStock"
)
);
// 写入列表
// 写入列表
skuList
.
add
(
goblinNftGoodsSkuListVo
);
skuList
.
add
(
goblinNftGoodsSkuListVo
);
}
}
...
@@ -134,8 +135,12 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -134,8 +135,12 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
GoblinNftGoodsDetailSpuInfoVo
nftGoodsDetailSpuInfoVo
=
GoblinNftGoodsDetailSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
GoblinNftGoodsDetailSpuInfoVo
nftGoodsDetailSpuInfoVo
=
GoblinNftGoodsDetailSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsDetailSpuInfoVo
(
nftGoodsDetailSpuInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsDetailSpuInfoVo
(
nftGoodsDetailSpuInfoVo
);
// 库存
// 库存
int
isStock
=
getIsStock
(
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
HashMap
<
String
,
Integer
>
stockHashMap
=
getIsStock
(
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
nftGoodsSkuInfoVo
.
setIsStock
(
isStock
);
nftGoodsSkuInfoVo
.
setIsStock
(
stockHashMap
.
get
(
"isStock"
));
// 总库存
if
(
skuInfoVo
.
getUnbox
().
equals
(
"1"
))
{
nftGoodsSkuInfoVo
.
setSkuStock
(
stockHashMap
.
get
(
"totalStock"
));
}
// 系统时间
// 系统时间
nftGoodsSkuInfoVo
.
setSystime
(
LocalDateTime
.
now
());
nftGoodsSkuInfoVo
.
setSystime
(
LocalDateTime
.
now
());
return
nftGoodsSkuInfoVo
;
return
nftGoodsSkuInfoVo
;
...
@@ -145,28 +150,31 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -145,28 +150,31 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
}
}
// 判断是否售罄
// 判断是否售罄
private
int
getIsStock
(
String
skuId
,
String
unbox
,
String
soldoutStatus
,
List
<
String
>
skuIdList
)
{
private
HashMap
<
String
,
Integer
>
getIsStock
(
String
skuId
,
String
unbox
,
String
soldoutStatus
,
List
<
String
>
skuIdList
)
{
HashMap
<
String
,
Integer
>
returnMap
=
CollectionUtil
.
mapStringInteger
();
Integer
isStock
=
0
;
Integer
totalStock
=
0
;
if
(
null
==
soldoutStatus
||
soldoutStatus
.
equals
(
"0"
))
{
// 未设置售罄 查询库存
if
(
null
==
soldoutStatus
||
soldoutStatus
.
equals
(
"0"
))
{
// 未设置售罄 查询库存
int
stock
=
0
;
int
s
urplusS
tock
=
0
;
if
(
unbox
.
equals
(
"0"
))
{
// 不是盲盒
if
(
unbox
.
equals
(
"0"
))
{
// 不是盲盒
stock
=
goblinRedisUtils
.
getSkuStock
(
null
,
skuId
);
s
urplusS
tock
=
goblinRedisUtils
.
getSkuStock
(
null
,
skuId
);
}
else
{
}
else
{
for
(
String
skuIdItem
:
skuIdList
)
{
// 盲盒计算所有sku库存总数
for
(
String
skuIdItem
:
skuIdList
)
{
// 盲盒计算所有sku库存总数
if
(
skuIdItem
.
equals
(
skuId
))
{
// 过滤自己
if
(
skuIdItem
.
equals
(
skuId
))
{
// 过滤自己
continue
;
continue
;
}
}
GoblinGoodsSkuInfoVo
itemVo
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
skuIdItem
);
GoblinGoodsSkuInfoVo
itemVo
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
skuIdItem
);
stock
+=
goblinRedisUtils
.
getSkuAllStatusStock
(
itemVo
);
surplusStock
+=
goblinRedisUtils
.
getSkuAllStatusStock
(
itemVo
);
totalStock
+=
goblinRedisUtils
.
getSkuTotalStock
(
itemVo
);
}
}
}
}
if
(
stock
<=
0
)
{
if
(
surplusStock
>
0
)
{
return
0
;
isStock
=
1
;
}
else
{
return
1
;
}
}
}
else
{
return
0
;
}
}
returnMap
.
put
(
"isStock"
,
isStock
);
returnMap
.
put
(
"totalStock"
,
totalStock
);
return
returnMap
;
}
}
@Override
@Override
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
View file @
8dc130d7
...
@@ -1661,6 +1661,19 @@ public class GoblinRedisUtils {
...
@@ -1661,6 +1661,19 @@ public class GoblinRedisUtils {
return
false
;
return
false
;
}
}
}
}
// 各种状态下判断藏品总库存
public
Integer
getSkuTotalStock
(
GoblinGoodsSkuInfoVo
info
)
{
if
(
info
!=
null
&&
LocalDateTime
.
now
().
isAfter
(
info
.
getSaleStartTime
())
&&
(
null
==
info
.
getSoldoutStatus
()
||
info
.
getSoldoutStatus
().
equals
(
"0"
))
&&
(
null
==
info
.
getHitRatio
()
||
info
.
getHitRatio
().
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
)
{
// 可以返回库存
return
info
.
getSkuStock
();
}
else
{
// 不计入库存
return
0
;
}
}
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
...
...
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