记得上下班打卡 | 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
706e6de9
Commit
706e6de9
authored
May 10, 2022
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
goblin相关 获取判断库存增加listId
parent
ec5e7c15
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
19 additions
and
13 deletions
+19
-13
GoblinNftGoodsAppServiceImpl.java
...ice/goblin/service/impl/GoblinNftGoodsAppServiceImpl.java
+3
-4
GoblinNftJobServiceImpl.java
...ce/goblin/service/impl/inner/GoblinNftJobServiceImpl.java
+3
-1
GoblinMongoUtils.java
...a/com/liquidnet/service/goblin/util/GoblinMongoUtils.java
+4
-2
GoblinOrderUtils.java
...a/com/liquidnet/service/goblin/util/GoblinOrderUtils.java
+7
-4
GoblinRedisUtils.java
...a/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
+2
-2
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 @
706e6de9
...
@@ -69,10 +69,9 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -69,10 +69,9 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
for
(
int
i
=
finalCount
;
i
<
initCount
;
i
++)
{
for
(
int
i
=
finalCount
;
i
<
initCount
;
i
++)
{
String
skuId
=
allIdList
.
get
(
i
);
String
skuId
=
allIdList
.
get
(
i
);
// sku信息
// sku信息
HashMap
<
String
,
Object
>
map
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
now
,
skuId
);
HashMap
<
String
,
Object
>
map
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
now
,
skuId
);
GoblinGoodsSkuInfoVo
skuInfoVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
GoblinGoodsSkuInfoVo
skuInfoVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
Integer
tagType
=
(
Integer
)
map
.
get
(
"tagType"
);
Integer
tagType
=
(
Integer
)
map
.
get
(
"tagType"
);
String
listId
=
(
String
)
map
.
get
(
"listId"
);
GoblinNftGoodsSkuListVo
goblinNftGoodsSkuListVo
=
GoblinNftGoodsSkuListVo
.
getNew
().
copy
(
skuInfoVo
);
GoblinNftGoodsSkuListVo
goblinNftGoodsSkuListVo
=
GoblinNftGoodsSkuListVo
.
getNew
().
copy
(
skuInfoVo
);
// spu信息
// spu信息
Object
spuInfoMap
=
spuInfoList
.
get
(
skuInfoVo
.
getSpuId
());
Object
spuInfoMap
=
spuInfoList
.
get
(
skuInfoVo
.
getSpuId
());
...
@@ -106,7 +105,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -106,7 +105,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
@Override
@Override
public
GoblinNftGoodsSkuInfoVo
goodsDetail
(
String
skuId
)
{
public
GoblinNftGoodsSkuInfoVo
goodsDetail
(
String
skuId
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
LocalDateTime
now
=
LocalDateTime
.
now
();
HashMap
<
String
,
Object
>
map
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
now
,
skuId
);
HashMap
<
String
,
Object
>
map
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
now
,
skuId
);
GoblinGoodsSkuInfoVo
skuInfoVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
GoblinGoodsSkuInfoVo
skuInfoVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
Integer
tagType
=
(
Integer
)
map
.
get
(
"tagType"
);
Integer
tagType
=
(
Integer
)
map
.
get
(
"tagType"
);
String
listId
=
(
String
)
map
.
get
(
"listId"
);
String
listId
=
(
String
)
map
.
get
(
"listId"
);
...
@@ -129,7 +128,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
...
@@ -129,7 +128,7 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
GoblinNftGoodsDetailSpuInfoVo
nftGoodsDetailSpuInfoVo
=
GoblinNftGoodsDetailSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
GoblinNftGoodsDetailSpuInfoVo
nftGoodsDetailSpuInfoVo
=
GoblinNftGoodsDetailSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsDetailSpuInfoVo
(
nftGoodsDetailSpuInfoVo
);
nftGoodsSkuInfoVo
.
setGoblinNftGoodsDetailSpuInfoVo
(
nftGoodsDetailSpuInfoVo
);
// 库存
// 库存
HashMap
<
String
,
Integer
>
stockHashMap
=
goblinOrderUtils
.
getIsStock
(
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
HashMap
<
String
,
Integer
>
stockHashMap
=
goblinOrderUtils
.
getIsStock
(
listId
,
skuId
,
skuInfoVo
.
getUnbox
(),
skuInfoVo
.
getSoldoutStatus
(),
goodsInfoVo
.
getSkuIdList
());
nftGoodsSkuInfoVo
.
setIsStock
(
stockHashMap
.
get
(
"isStock"
));
nftGoodsSkuInfoVo
.
setIsStock
(
stockHashMap
.
get
(
"isStock"
));
// 总库存
// 总库存
if
(
skuInfoVo
.
getUnbox
().
equals
(
"1"
))
{
if
(
skuInfoVo
.
getUnbox
().
equals
(
"1"
))
{
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/inner/GoblinNftJobServiceImpl.java
View file @
706e6de9
...
@@ -92,7 +92,9 @@ public class GoblinNftJobServiceImpl {
...
@@ -92,7 +92,9 @@ public class GoblinNftJobServiceImpl {
if
(
info
.
getUnbox
().
equals
(
"1"
))
{
// 是盲盒,非盲盒少查一次spu
if
(
info
.
getUnbox
().
equals
(
"1"
))
{
// 是盲盒,非盲盒少查一次spu
skuIdList
=
goblinRedisUtils
.
getGoodsInfoVo
(
info
.
getSpuId
()).
getSkuIdList
();
skuIdList
=
goblinRedisUtils
.
getGoodsInfoVo
(
info
.
getSpuId
()).
getSkuIdList
();
}
}
HashMap
<
String
,
Integer
>
stockHashMap
=
goblinOrderUtils
.
getIsStock
(
info
.
getSkuId
(),
info
.
getUnbox
(),
info
.
getSoldoutStatus
(),
skuIdList
);
HashMap
<
String
,
Object
>
map
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
nowTime
,
info
.
getSkuId
());
String
listId
=
(
String
)
map
.
get
(
"listId"
);
HashMap
<
String
,
Integer
>
stockHashMap
=
goblinOrderUtils
.
getIsStock
(
listId
,
info
.
getSkuId
(),
info
.
getUnbox
(),
info
.
getSoldoutStatus
(),
skuIdList
);
if
(
stockHashMap
.
get
(
"isStock"
)
==
1
)
{
// 已开卖-未售罄
if
(
stockHashMap
.
get
(
"isStock"
)
==
1
)
{
// 已开卖-未售罄
startSkuIdList
.
add
(
info
.
getSkuId
());
startSkuIdList
.
add
(
info
.
getSkuId
());
}
else
{
// 已开卖-已售罄 时间正序
}
else
{
// 已开卖-已售罄 时间正序
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/util/GoblinMongoUtils.java
View file @
706e6de9
...
@@ -1577,8 +1577,10 @@ public class GoblinMongoUtils {
...
@@ -1577,8 +1577,10 @@ public class GoblinMongoUtils {
if
(
skuIdItem
.
equals
(
vo
.
getSkuId
()))
{
// 过滤自己
if
(
skuIdItem
.
equals
(
vo
.
getSkuId
()))
{
// 过滤自己
continue
;
continue
;
}
}
GoblinGoodsSkuInfoVo
itemVo
=
redisUtils
.
getGoodsSkuInfoVo
(
skuIdItem
);
HashMap
<
String
,
Object
>
map
=
redisUtils
.
getGoodsSkuInfoVo
(
LocalDateTime
.
now
(),
skuIdItem
);
stock
+=
redisUtils
.
getSkuAllStatusStock
(
itemVo
);
GoblinGoodsSkuInfoVo
itemVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
String
listId
=
(
String
)
map
.
get
(
"listId"
);
stock
+=
redisUtils
.
getSkuAllStatusStock
(
itemVo
,
listId
);
}
}
mgtGoodsSkuListVo
.
setSurplusStock
(
stock
);
mgtGoodsSkuListVo
.
setSurplusStock
(
stock
);
}
}
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/util/GoblinOrderUtils.java
View file @
706e6de9
...
@@ -19,6 +19,7 @@ import org.springframework.stereotype.Component;
...
@@ -19,6 +19,7 @@ import org.springframework.stereotype.Component;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.util.MultiValueMap
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -90,21 +91,23 @@ public class GoblinOrderUtils {
...
@@ -90,21 +91,23 @@ public class GoblinOrderUtils {
}
}
// NFT判断是否售罄
// NFT判断是否售罄
public
HashMap
<
String
,
Integer
>
getIsStock
(
String
skuId
,
String
unbox
,
String
soldoutStatus
,
List
<
String
>
skuIdList
)
{
public
HashMap
<
String
,
Integer
>
getIsStock
(
String
listId
,
String
skuId
,
String
unbox
,
String
soldoutStatus
,
List
<
String
>
skuIdList
)
{
HashMap
<
String
,
Integer
>
returnMap
=
CollectionUtil
.
mapStringInteger
();
HashMap
<
String
,
Integer
>
returnMap
=
CollectionUtil
.
mapStringInteger
();
Integer
isStock
=
0
;
Integer
isStock
=
0
;
Integer
totalStock
=
0
;
Integer
totalStock
=
0
;
if
(
null
==
soldoutStatus
||
soldoutStatus
.
equals
(
"0"
))
{
// 未设置售罄 查询库存
if
(
null
==
soldoutStatus
||
soldoutStatus
.
equals
(
"0"
))
{
// 未设置售罄 查询库存
int
surplusStock
=
0
;
int
surplusStock
=
0
;
if
(
unbox
.
equals
(
"0"
))
{
// 不是盲盒
if
(
unbox
.
equals
(
"0"
))
{
// 不是盲盒
surplusStock
=
redisUtils
.
getSkuStock
(
null
,
skuId
);
surplusStock
=
redisUtils
.
getSkuStock
(
listId
,
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
=
redisUtils
.
getGoodsSkuInfoVo
(
skuIdItem
);
HashMap
<
String
,
Object
>
map
=
redisUtils
.
getGoodsSkuInfoVo
(
LocalDateTime
.
now
(),
skuIdItem
);
surplusStock
+=
redisUtils
.
getSkuAllStatusStock
(
itemVo
);
GoblinGoodsSkuInfoVo
itemVo
=
(
GoblinGoodsSkuInfoVo
)
map
.
get
(
"vo"
);
String
listId2
=
(
String
)
map
.
get
(
"listId"
);
surplusStock
+=
redisUtils
.
getSkuAllStatusStock
(
itemVo
,
listId2
);
totalStock
+=
redisUtils
.
getSkuTotalStock
(
itemVo
);
totalStock
+=
redisUtils
.
getSkuTotalStock
(
itemVo
);
}
}
}
}
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
View file @
706e6de9
...
@@ -1710,7 +1710,7 @@ public class GoblinRedisUtils {
...
@@ -1710,7 +1710,7 @@ public class GoblinRedisUtils {
* String unbox; 是否盲盒[0-否|1-是]
* String unbox; 是否盲盒[0-否|1-是]
*/
*/
// 获取盲盒下藏品的库存 各种状态下不能算库存的排除掉
// 获取盲盒下藏品的库存 各种状态下不能算库存的排除掉
public
int
getSkuAllStatusStock
(
GoblinGoodsSkuInfoVo
info
)
{
public
int
getSkuAllStatusStock
(
GoblinGoodsSkuInfoVo
info
,
String
listId
)
{
if
(
if
(
info
!=
null
info
!=
null
&&
LocalDateTime
.
now
().
isAfter
(
info
.
getSaleStartTime
())
&&
LocalDateTime
.
now
().
isAfter
(
info
.
getSaleStartTime
())
...
@@ -1718,7 +1718,7 @@ public class GoblinRedisUtils {
...
@@ -1718,7 +1718,7 @@ public class GoblinRedisUtils {
&&
(
null
==
info
.
getHitRatio
()
||
info
.
getHitRatio
().
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
&&
(
null
==
info
.
getHitRatio
()
||
info
.
getHitRatio
().
compareTo
(
BigDecimal
.
ZERO
)
>
0
)
&&
(
null
==
info
.
getSkuCanbuy
()
||
info
.
getSkuCanbuy
().
equals
(
"1"
))
&&
(
null
==
info
.
getSkuCanbuy
()
||
info
.
getSkuCanbuy
().
equals
(
"1"
))
)
{
// 可以返回库存
)
{
// 可以返回库存
return
getSkuStock
(
null
,
info
.
getSkuId
());
return
getSkuStock
(
listId
,
info
.
getSkuId
());
}
else
{
// 不计入库存
}
else
{
// 不计入库存
return
0
;
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