记得上下班打卡 | 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
a56b7e6e
Commit
a56b7e6e
authored
May 01, 2022
by
wanglele
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
删除new
parent
4395a16b
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
118 additions
and
262 deletions
+118
-262
PageInfoVo.java
.../java/com/liquidnet/service/goblin/dto/vo/PageInfoVo.java
+19
-5
CollectionUtil.java
.../java/com/liquidnet/commons/lang/util/CollectionUtil.java
+10
-1
GoblinNftOrderServiceImpl.java
...service/order/service/impl/GoblinNftOrderServiceImpl.java
+3
-0
GoblinNftExActivityServiceImpl.java
...m/service/impl/goblin/GoblinNftExActivityServiceImpl.java
+8
-4
GoblinNftExCodeServiceImpl.java
...tform/service/impl/goblin/GoblinNftExCodeServiceImpl.java
+31
-72
GoblinNftExCodeTaskServiceImpl.java
...m/service/impl/goblin/GoblinNftExCodeTaskServiceImpl.java
+1
-1
GoblinNftExSkuServiceImpl.java
...atform/service/impl/goblin/GoblinNftExSkuServiceImpl.java
+28
-168
ObjectUtil.java
...java/com/liquidnet/service/platform/utils/ObjectUtil.java
+18
-11
No files found.
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/dto/vo/PageInfoVo.java
View file @
a56b7e6e
...
@@ -12,16 +12,30 @@ public class PageInfoVo {
...
@@ -12,16 +12,30 @@ public class PageInfoVo {
private
int
total
;
private
int
total
;
private
Object
list
;
private
Object
list
;
public
PageInfoVo
(){
public
PageInfoVo
()
{
}
}
public
PageInfoVo
(
ArrayList
<
GoblinNftExActivityVo
>
goblinNftExActivityArrayList
,
int
count
,
int
num
)
{
/*
public PageInfoVo(ArrayList<GoblinNftExActivityVo> goblinNftExActivityArrayList, int count, int num) {
this.list = goblinNftExActivityArrayList;
this.list = goblinNftExActivityArrayList;
this
.
total
=
count
;
this.total
= count;
}
}
public
PageInfoVo
(
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeVos
,
int
count
,
String
vio
){
public PageInfoVo(ArrayList<GoblinNftExCodeVo> goblinNftExCodeVos, int count, String vio) {
this.list = goblinNftExCodeVos;
this.list = goblinNftExCodeVos;
this
.
total
=
count
;
this.total
= count;
}
}
*/
private
static
final
PageInfoVo
obj
=
new
PageInfoVo
();
public
static
PageInfoVo
getNew
()
{
try
{
return
(
PageInfoVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
PageInfoVo
();
}
}
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/CollectionUtil.java
View file @
a56b7e6e
...
@@ -10,6 +10,8 @@ public class CollectionUtil {
...
@@ -10,6 +10,8 @@ public class CollectionUtil {
private
static
final
HashMap
<
String
,
String
>
STRING_STRING_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
String
>
STRING_STRING_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
Object
>
STRING_OBJECT_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
Object
>
STRING_OBJECT_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
Integer
>
STRING_INTEGER_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
Integer
>
STRING_INTEGER_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
BigDecimal
>
STRING_BIG_DECIMAL_HASH_MAP
=
new
HashMap
<>();
private
static
final
HashMap
<
String
,
Map
<
String
,
Object
>>
STRING_MAP_HASH_MAP
=
new
HashMap
<>();
private
static
final
LinkedList
<
String
>
STRING_LINKED_LIST
=
new
LinkedList
<>();
private
static
final
LinkedList
<
String
>
STRING_LINKED_LIST
=
new
LinkedList
<>();
private
static
final
LinkedList
<
Object
[]>
OBJECTS_LINKED_LIST
=
new
LinkedList
<>();
private
static
final
LinkedList
<
Object
[]>
OBJECTS_LINKED_LIST
=
new
LinkedList
<>();
private
static
final
LinkedMultiValueMap
<
String
,
String
>
STRING_STRING_LINKED_MULTI_VALUE_MAP
=
new
LinkedMultiValueMap
<>();
private
static
final
LinkedMultiValueMap
<
String
,
String
>
STRING_STRING_LINKED_MULTI_VALUE_MAP
=
new
LinkedMultiValueMap
<>();
...
@@ -20,7 +22,6 @@ public class CollectionUtil {
...
@@ -20,7 +22,6 @@ public class CollectionUtil {
private
static
final
ArrayList
<
BigDecimal
>
BIG_DECIMALS_ARRAY_LIST
=
new
ArrayList
<>();
private
static
final
ArrayList
<
BigDecimal
>
BIG_DECIMALS_ARRAY_LIST
=
new
ArrayList
<>();
private
static
final
ArrayList
<
BigDecimal
>
BIGDECIMAL_ARRAY_LIST
=
new
ArrayList
<>();
private
static
final
ArrayList
<
BigDecimal
>
BIGDECIMAL_ARRAY_LIST
=
new
ArrayList
<>();
public
static
HashMap
<
String
,
String
>
mapStringString
()
{
public
static
HashMap
<
String
,
String
>
mapStringString
()
{
return
(
HashMap
<
String
,
String
>)
STRING_STRING_HASH_MAP
.
clone
();
return
(
HashMap
<
String
,
String
>)
STRING_STRING_HASH_MAP
.
clone
();
}
}
...
@@ -33,6 +34,14 @@ public class CollectionUtil {
...
@@ -33,6 +34,14 @@ public class CollectionUtil {
return
(
HashMap
<
String
,
Integer
>)
STRING_INTEGER_HASH_MAP
.
clone
();
return
(
HashMap
<
String
,
Integer
>)
STRING_INTEGER_HASH_MAP
.
clone
();
}
}
public
static
HashMap
<
String
,
BigDecimal
>
mapStringBigDecimal
()
{
return
(
HashMap
<
String
,
BigDecimal
>)
STRING_BIG_DECIMAL_HASH_MAP
.
clone
();
}
public
static
HashMap
<
String
,
Map
<
String
,
Object
>>
mapHashMap
()
{
return
(
HashMap
<
String
,
Map
<
String
,
Object
>>)
STRING_MAP_HASH_MAP
.
clone
();
}
public
static
LinkedList
<
String
>
linkedListString
()
{
public
static
LinkedList
<
String
>
linkedListString
()
{
return
(
LinkedList
<
String
>)
STRING_LINKED_LIST
.
clone
();
return
(
LinkedList
<
String
>)
STRING_LINKED_LIST
.
clone
();
}
}
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/service/impl/GoblinNftOrderServiceImpl.java
View file @
a56b7e6e
...
@@ -251,6 +251,7 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService {
...
@@ -251,6 +251,7 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService {
if
(
size
>
0
)
{
// 说明有未设置抽奖概率的
if
(
size
>
0
)
{
// 说明有未设置抽奖概率的
avgHitRatio
=
new
BigDecimal
(
100
).
subtract
(
sumHitRatio
).
divide
(
new
BigDecimal
(
size
),
2
,
RoundingMode
.
HALF_UP
);
avgHitRatio
=
new
BigDecimal
(
100
).
subtract
(
sumHitRatio
).
divide
(
new
BigDecimal
(
size
),
2
,
RoundingMode
.
HALF_UP
);
}
}
// 未设置概率的写入概率
// 未设置概率的写入概率
ArrayList
<
GoblinGoodsSkuInfoVo
>
newSkuInfoVos
=
ObjectUtil
.
cloneArrayGoblinGoodsSkuInfoListVo
();
ArrayList
<
GoblinGoodsSkuInfoVo
>
newSkuInfoVos
=
ObjectUtil
.
cloneArrayGoblinGoodsSkuInfoListVo
();
int
skuListSize
=
skuInfoVos
.
size
();
int
skuListSize
=
skuInfoVos
.
size
();
...
@@ -274,6 +275,8 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService {
...
@@ -274,6 +275,8 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService {
}
}
newSkuInfoVos
.
add
(
infoVo
);
newSkuInfoVos
.
add
(
infoVo
);
}
}
if
(
CollectionUtil
.
isEmpty
(
newSkuInfoVos
))
{
if
(
CollectionUtil
.
isEmpty
(
newSkuInfoVos
))
{
log
.
info
(
"该盲盒概率超过100导致不能卖 skuIdList:{}"
,
skuIdList
);
log
.
info
(
"该盲盒概率超过100导致不能卖 skuIdList:{}"
,
skuIdList
);
return
null
;
return
null
;
...
...
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/service/impl/goblin/GoblinNftExActivityServiceImpl.java
View file @
a56b7e6e
...
@@ -78,7 +78,6 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
...
@@ -78,7 +78,6 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
PageHelper
.
startPage
(
goblinNftExActivityParam
.
getPageNum
(),
20
,
true
);
PageHelper
.
startPage
(
goblinNftExActivityParam
.
getPageNum
(),
20
,
true
);
/*
/*
* 获取分页nft兑换活动数据
* 获取分页nft兑换活动数据
*/
*/
...
@@ -98,7 +97,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
...
@@ -98,7 +97,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
}
}
ArrayList
<
GoblinNftExActivityVo
>
goblinNftExActivityArrayList
=
ObjectUtil
.
getGoblinNftExActivityArrayList
();
ArrayList
<
GoblinNftExActivityVo
>
goblinNftExActivityArrayList
=
ObjectUtil
.
getGoblinNftExActivity
Vo
ArrayList
();
if
(
StringUtil
.
isNotBlank
(
activityIds
))
{
if
(
StringUtil
.
isNotBlank
(
activityIds
))
{
activityIds
.
deleteCharAt
(
activityIds
.
length
()
-
1
);
activityIds
.
deleteCharAt
(
activityIds
.
length
()
-
1
);
...
@@ -141,8 +140,12 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
...
@@ -141,8 +140,12 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
}
}
}
}
PageInfoVo
pageInfo
=
new
PageInfoVo
(
goblinNftExActivityArrayList
,
count
,
0
);
return
pageInfo
;
PageInfoVo
pageInfoVo
=
PageInfoVo
.
getNew
();
pageInfoVo
.
setList
(
goblinNftExActivityArrayList
);
pageInfoVo
.
setTotal
(
count
);
// PageInfoVo pageInfo = new PageInfoVo(goblinNftExActivityArrayList, count, 0);
return
pageInfoVo
;
}
}
@Override
@Override
...
@@ -250,6 +253,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
...
@@ -250,6 +253,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
ArrayList
<
ActivityExcelVo
>
activityExcelVoArrayList
=
ObjectUtil
.
getActivityExcelVoArrayList
();
ArrayList
<
ActivityExcelVo
>
activityExcelVoArrayList
=
ObjectUtil
.
getActivityExcelVoArrayList
();
if
(
StringUtil
.
isNotBlank
(
activityIds
))
{
if
(
StringUtil
.
isNotBlank
(
activityIds
))
{
activityIds
.
deleteCharAt
(
activityIds
.
length
()
-
1
);
activityIds
.
deleteCharAt
(
activityIds
.
length
()
-
1
);
long
k
=
System
.
currentTimeMillis
();
long
k
=
System
.
currentTimeMillis
();
...
...
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/service/impl/goblin/GoblinNftExCodeServiceImpl.java
View file @
a56b7e6e
...
@@ -85,7 +85,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
...
@@ -85,7 +85,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
String
skuName
=
goblinNftExCodeParam
.
getSkuName
();
String
skuName
=
goblinNftExCodeParam
.
getSkuName
();
List
<
GoblinGoodsSku
>
goblinGoodsSkus
=
goblinGoodsSkuMapper
.
selectSkuLikeName
(
skuName
);
List
<
GoblinGoodsSku
>
goblinGoodsSkus
=
goblinGoodsSkuMapper
.
selectSkuLikeName
(
skuName
);
if
(
goblinGoodsSkus
.
size
()
<=
0
)
{
if
(
goblinGoodsSkus
.
size
()
<=
0
)
{
return
new
PageInfoVo
();
return
PageInfoVo
.
getNew
();
}
}
StringBuffer
skuIds
=
new
StringBuffer
();
StringBuffer
skuIds
=
new
StringBuffer
();
for
(
GoblinGoodsSku
goblinGoodsSku
:
goblinGoodsSkus
)
{
for
(
GoblinGoodsSku
goblinGoodsSku
:
goblinGoodsSkus
)
{
...
@@ -112,7 +112,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
...
@@ -112,7 +112,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
}
}
// 获取返回对象实例
// 获取返回对象实例
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeArrayList
=
ObjectUtil
.
getGoblinNftExCodeArrayList
();
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeArrayList
=
ObjectUtil
.
getGoblinNftExCode
Vo
ArrayList
();
if
(
StringUtil
.
isNotBlank
(
skuIds
))
{
if
(
StringUtil
.
isNotBlank
(
skuIds
))
{
// 批量查询
// 批量查询
...
@@ -138,87 +138,55 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
...
@@ -138,87 +138,55 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
// 根据活动ids 获取兑换活动和sku的关联
// 根据活动ids 获取兑换活动和sku的关联
List
<
GoblinNftExSku
>
goblinNftExSkus
=
goblinNftExSkuMapper
.
selectGoblinNftExSkuByActivityIds
(
acticityIds
.
toString
());
List
<
GoblinNftExSku
>
goblinNftExSkus
=
goblinNftExSkuMapper
.
selectGoblinNftExSkuByActivityIds
(
acticityIds
.
toString
());
Map
<
String
,
List
<
GoblinNftExSku
>>
map
=
new
HashMap
<>();
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkus
)
{
if
(
map
.
get
(
goblinNftExSku
.
getActivityId
())
==
null
)
{
map
.
put
(
goblinNftExSku
.
getActivityId
(),
new
ArrayList
<>());
}
map
.
get
(
goblinNftExSku
.
getActivityId
()).
add
(
goblinNftExSku
);
}
LocalDateTime
now
=
LocalDateTime
.
now
();
LocalDateTime
now
=
LocalDateTime
.
now
();
for
(
GoblinNftExCodeVo
gnc
:
goblinNftExCodeArrayList
)
{
for
(
GoblinNftExCodeVo
gnc
:
goblinNftExCodeArrayList
)
{
List
<
GoblinNftExSku
>
goblinNftExSkuList
=
map
.
get
(
gnc
.
getActivityId
());
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkus
)
{
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkuList
)
{
if
(
gnc
.
getActivityId
().
equals
(
goblinNftExSku
.
getActivityId
()))
{
if
(
StringUtil
.
isNotBlank
(
gnc
.
getBoxSkuId
())
&&
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
if
(
StringUtil
.
isNotBlank
(
gnc
.
getBoxSkuId
())
&&
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
if
(
now
.
isAfter
(
goblinNftExSku
.
getExStopTime
()))
{
gnc
.
setState
(
3
);
}
break
;
}
else
{
if
(
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
if
(
now
.
isAfter
(
goblinNftExSku
.
getExStopTime
()))
{
if
(
now
.
isAfter
(
goblinNftExSku
.
getExStopTime
()))
{
gnc
.
setState
(
3
);
gnc
.
setState
(
3
);
}
}
break
;
break
;
}
else
{
if
(
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
if
(
now
.
isAfter
(
goblinNftExSku
.
getExStopTime
()))
{
gnc
.
setState
(
3
);
}
break
;
}
}
}
}
}
}
}
}
}
PageInfoVo
pageInfo
=
new
PageInfoVo
(
goblinNftExCodeArrayList
,
count
,
""
);
PageInfoVo
pageInfoVo
=
PageInfoVo
.
getNew
();
pageInfoVo
.
setList
(
goblinNftExCodeArrayList
);
return
pageInfo
;
pageInfoVo
.
setTotal
(
count
);
return
pageInfoVo
;
}
}
@Override
@Override
@Transactional
public
Boolean
defDrivLoseCode
(
String
codeIds
)
{
public
Boolean
defDrivLoseCode
(
String
codeIds
)
{
// 获取兑换码
// 获取兑换码
List
<
GoblinNftExCode
>
goblinNftExCodes
=
goblinNftExCodeMapper
.
selectByIds
(
codeIds
);
List
<
GoblinNftExCode
>
goblinNftExCodes
=
goblinNftExCodeMapper
.
selectByIds
(
codeIds
);
List
<
String
>
codes
=
new
ArrayList
<>();
Map
<
String
,
Integer
>
skuMap
=
new
HashMap
<>();
for
(
GoblinNftExCode
goblinNftExCode
:
goblinNftExCodes
)
{
for
(
GoblinNftExCode
goblinNftExCode
:
goblinNftExCodes
)
{
// redis 主动失效
// redis 主动失效
codes
.
add
(
goblinNftExCode
.
getCode
());
goblinNftExCode
.
setState
(
3
);
goblinNftExCode
.
setState
(
3
);
goblinNftExCode
.
setUpdatedAt
(
LocalDateTime
.
now
());
goblinNftExCode
.
setUpdatedAt
(
LocalDateTime
.
now
());
String
skuId
=
""
;
if
(
StringUtil
.
isNotBlank
(
goblinNftExCode
.
getBoxSkuId
()))
{
skuId
=
goblinNftExCode
.
getBoxSkuId
();
}
else
{
skuId
=
goblinNftExCode
.
getSkuId
();
}
if
(
StringUtil
.
isNotBlank
(
skuId
))
{
if
(
skuMap
.
get
(
skuId
)
==
null
)
{
skuMap
.
put
(
skuId
,
0
);
}
Integer
number
=
skuMap
.
get
(
skuId
);
skuMap
.
put
(
skuId
,
number
+
1
);
}
goblinRedisUtils
.
removeCode
(
goblinNftExCode
.
getCode
());
goblinRedisUtils
.
removeCode
(
goblinNftExCode
.
getCode
());
}
}
/* if (skuMap.size() > 0) {
for (String key : skuMap.keySet()) {
// goblinRedisUtils.incrSkuStock(null, key, skuMap.get(key));
}
}*/
// 批量修改
// 批量修改
goblinNftExCodeMapper
.
updateCodes
(
goblinNftExCodes
);
goblinNftExCodeMapper
.
updateCodes
(
goblinNftExCodes
);
return
true
;
return
true
;
}
}
@Override
@Override
@Transactional
@Transactional
public
ResponseDto
<
Boolean
>
addAirdrop
(
GoblinNftExCodeParam
goblinNftExCodeParam
)
{
public
ResponseDto
<
Boolean
>
addAirdrop
(
GoblinNftExCodeParam
goblinNftExCodeParam
)
{
...
@@ -313,8 +281,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
...
@@ -313,8 +281,7 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
}
}
// 获取返回对象实例
// 获取返回对象实例
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeArrayList
=
ObjectUtil
.
getGoblinNftExCodeArrayList
();
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeArrayList
=
ObjectUtil
.
getGoblinNftExCodeVoArrayList
();
if
(
StringUtil
.
isNotBlank
(
skuIds
))
{
if
(
StringUtil
.
isNotBlank
(
skuIds
))
{
// 批量查询
// 批量查询
...
@@ -344,35 +311,27 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
...
@@ -344,35 +311,27 @@ public class GoblinNftExCodeServiceImpl implements IGoblinNftExCodeService {
// 根据活动ids 获取兑换活动和sku的关联
// 根据活动ids 获取兑换活动和sku的关联
List
<
GoblinNftExSku
>
goblinNftExSkus
=
goblinNftExSkuMapper
.
selectGoblinNftExSkuByActivityIds
(
acticityIds
.
toString
());
List
<
GoblinNftExSku
>
goblinNftExSkus
=
goblinNftExSkuMapper
.
selectGoblinNftExSkuByActivityIds
(
acticityIds
.
toString
());
Map
<
String
,
List
<
GoblinNftExSku
>>
map
=
new
HashMap
<>();
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkus
)
{
if
(
map
.
get
(
goblinNftExSku
.
getActivityId
())
==
null
)
{
map
.
put
(
goblinNftExSku
.
getActivityId
(),
new
ArrayList
<>());
}
map
.
get
(
goblinNftExSku
.
getActivityId
()).
add
(
goblinNftExSku
);
}
ArrayList
<
CodeExcelVo
>
codeExcelVoArrayList
=
ObjectUtil
.
getCodeExcelVoArrayList
();
ArrayList
<
CodeExcelVo
>
codeExcelVoArrayList
=
ObjectUtil
.
getCodeExcelVoArrayList
();
for
(
GoblinNftExCodeVo
gnc
:
goblinNftExCodeArrayList
)
{
for
(
GoblinNftExCodeVo
gnc
:
goblinNftExCodeArrayList
)
{
List
<
GoblinNftExSku
>
goblinNftExSkuList
=
map
.
get
(
gnc
.
getActivityId
());
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkuList
)
{
if
(
StringUtil
.
isNotBlank
(
gnc
.
getBoxSkuId
())
&&
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
for
(
GoblinNftExSku
goblinNftExSku
:
goblinNftExSkus
)
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
if
(
gnc
.
getActivityId
().
equals
(
goblinNftExSku
.
getActivityId
()))
{
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
if
(
StringUtil
.
isNotBlank
(
gnc
.
getBoxSkuId
())
&&
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
break
;
}
else
{
if
(
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
break
;
break
;
}
else
{
if
(
gnc
.
getSkuId
().
equals
(
goblinNftExSku
.
getSkuId
()))
{
gnc
.
setExStartTime
(
goblinNftExSku
.
getExStartTime
());
gnc
.
setExStopTime
(
goblinNftExSku
.
getExStopTime
());
break
;
}
}
}
}
}
}
}
CodeExcelVo
codeExcelVo
=
new
CodeExcelVo
();
CodeExcelVo
codeExcelVo
=
CodeExcelVo
.
getNew
();
codeExcelVo
.
setCode
(
gnc
.
getCode
());
codeExcelVo
.
setCode
(
gnc
.
getCode
());
String
val
=
""
;
String
val
=
""
;
switch
(
gnc
.
getState
())
{
switch
(
gnc
.
getState
())
{
...
...
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/service/impl/goblin/GoblinNftExCodeTaskServiceImpl.java
View file @
a56b7e6e
...
@@ -77,6 +77,7 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
...
@@ -77,6 +77,7 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
List
<
GoblinNftExSku
>
goblinNftExSkus
=
new
ArrayList
<>();
List
<
GoblinNftExSku
>
goblinNftExSkus
=
new
ArrayList
<>();
StringBuffer
updTaskIds
=
new
StringBuffer
();
StringBuffer
updTaskIds
=
new
StringBuffer
();
for
(
GoblinNftExCodeTask
goblinNftExCodeTask
:
goblinNftExCodeTasks
)
{
for
(
GoblinNftExCodeTask
goblinNftExCodeTask
:
goblinNftExCodeTasks
)
{
GoblinNftExSku
goblinNftExSku
=
new
GoblinNftExSku
();
GoblinNftExSku
goblinNftExSku
=
new
GoblinNftExSku
();
...
@@ -92,7 +93,6 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
...
@@ -92,7 +93,6 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
goblinNftExSku
.
setCreatedAt
(
now
);
goblinNftExSku
.
setCreatedAt
(
now
);
goblinNftExSkus
.
add
(
goblinNftExSku
);
goblinNftExSkus
.
add
(
goblinNftExSku
);
updTaskIds
.
append
(
goblinNftExCodeTask
.
getTaskId
()).
append
(
","
);
updTaskIds
.
append
(
goblinNftExCodeTask
.
getTaskId
()).
append
(
","
);
switch
(
goblinNftExCodeTask
.
getUnbox
())
{
switch
(
goblinNftExCodeTask
.
getUnbox
())
{
...
...
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/service/impl/goblin/GoblinNftExSkuServiceImpl.java
View file @
a56b7e6e
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.platform.service.impl.goblin;
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.platform.service.impl.goblin;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.commons.lang.util.StringUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
...
@@ -57,11 +58,14 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -57,11 +58,14 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
//ArrayList<GoblinNftExSkuVo> goblinNftExSkuArrayList = ObjectUtil.getGoblinNftExSkuArrayList();
//ArrayList<GoblinNftExSkuVo> goblinNftExSkuArrayList = ObjectUtil.getGoblinNftExSkuArrayList();
//FArrayList<GoblinNftExCodeVo> goblinNftExCodeArrayList = ObjectUtil.getGoblinNftExCodeArrayList();
//FArrayList<GoblinNftExCodeVo> goblinNftExCodeArrayList = ObjectUtil.getGoblinNftExCodeArrayList();
// 是否存在盲盒
Boolean
bol
=
false
;
Boolean
bol
=
false
;
// 配置库存
Integer
stockNumber
=
0
;
Integer
stockNumber
=
0
;
StringBuffer
spuIds
=
new
StringBuffer
();
StringBuffer
spuIds
=
new
StringBuffer
();
StringBuffer
skuIds
=
new
StringBuffer
();
StringBuffer
skuIds
=
new
StringBuffer
();
for
(
GoblinNftExSkuParam
goblinNftExSkuParam
:
goblinNftExSkuParams
)
{
for
(
GoblinNftExSkuParam
goblinNftExSkuParam
:
goblinNftExSkuParams
)
{
if
(
goblinNftExSkuParam
.
getUnbox
().
equals
(
"1"
))
{
if
(
goblinNftExSkuParam
.
getUnbox
().
equals
(
"1"
))
{
bol
=
true
;
bol
=
true
;
...
@@ -79,10 +83,12 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -79,10 +83,12 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
return
ResponseDto
.
failure
(
"sku数据不可传空!"
);
return
ResponseDto
.
failure
(
"sku数据不可传空!"
);
}
}
// 获取sku数据校验是否正确
// 获取sku数据校验是否正确
List
<
GoblinGoodsSku
>
goblinGoodsSkuListCheck
=
goblinGoodsSkuMapper
.
selectBySkuIds
(
skuIds
.
toString
());
List
<
GoblinGoodsSku
>
goblinGoodsSkuListCheck
=
goblinGoodsSkuMapper
.
selectBySkuIds
(
skuIds
.
toString
());
List
<
String
>
skuIdList
=
new
ArrayList
<>();
ArrayList
<
String
>
skuIdList
=
CollectionUtil
.
arrayListString
();
for
(
GoblinGoodsSku
goblinGoodsSku
:
goblinGoodsSkuListCheck
)
{
for
(
GoblinGoodsSku
goblinGoodsSku
:
goblinGoodsSkuListCheck
)
{
// 不能购买的 没库存的 概率是0的 过滤
// 不能购买的 没库存的 概率是0的 过滤
if
(
getSkuAllStatusShow
(
goblinGoodsSku
))
{
if
(
getSkuAllStatusShow
(
goblinGoodsSku
))
{
...
@@ -95,7 +101,9 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -95,7 +101,9 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
}
}
Map
<
String
,
BigDecimal
>
map
=
new
HashMap
<>();
// sku --> 概率
HashMap
<
String
,
BigDecimal
>
map
=
CollectionUtil
.
mapStringBigDecimal
();
if
(
bol
)
{
if
(
bol
)
{
// 获取spu下所有sku
// 获取spu下所有sku
List
<
GoblinGoodsSku
>
goblinGoodsSkus
=
goblinGoodsSkuMapper
.
selectBySpuIds
(
spuIds
.
toString
());
List
<
GoblinGoodsSku
>
goblinGoodsSkus
=
goblinGoodsSkuMapper
.
selectBySpuIds
(
spuIds
.
toString
());
...
@@ -118,11 +126,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -118,11 +126,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
}
}
List
<
GoblinNftExCodeTask
>
goblinNftExCodeTasks
=
new
ArrayList
<>();
List
<
GoblinNftExCodeTask
>
goblinNftExCodeTasks
=
ObjectUtil
.
getGoblinNftExCodeTaskArrayList
();
// List<GoblinNftExCode> goblinNftExCodes = new ArrayList<>();
// sku ---> 兑换码关联
// Map<String, GoblinNftExSkuParam> goblinNftExSkuParamMap = new HashMap<>();
// 构建对象
// 构建对象
for
(
GoblinNftExSkuParam
goblinNftExSkuParam
:
goblinNftExSkuParams
)
{
for
(
GoblinNftExSkuParam
goblinNftExSkuParam
:
goblinNftExSkuParams
)
{
...
@@ -147,7 +151,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -147,7 +151,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
goblinNftExCodeTask
.
setCreatedAt
(
now
);
goblinNftExCodeTask
.
setCreatedAt
(
now
);
if
(
goblinNftExSkuParam
.
getUnbox
().
equals
(
"1"
))
{
if
(
goblinNftExSkuParam
.
getUnbox
().
equals
(
"1"
))
{
List
<
GoblinNftExCodeTaskRelation
>
goblinNftExCodeTaskRelations
=
new
ArrayList
<>
();
ArrayList
<
GoblinNftExCodeTaskRelation
>
goblinNftExCodeTaskRelations
=
ObjectUtil
.
getGoblinNftExCodeTaskRelationArrayList
();
// sku ---> 库存
// sku ---> 库存
Map
<
String
,
Integer
>
skuMap
=
getSkuHitRatio
(
goblinNftExSkuParam
.
getExStock
(),
map
);
Map
<
String
,
Integer
>
skuMap
=
getSkuHitRatio
(
goblinNftExSkuParam
.
getExStock
(),
map
);
...
@@ -161,7 +165,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -161,7 +165,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
if
(
stock
<
0
)
{
if
(
stock
<
0
)
{
goblinRedisUtils
.
incrSkuStock
(
null
,
key
,
stockNum
);
goblinRedisUtils
.
incrSkuStock
(
null
,
key
,
stockNum
);
}
else
{
}
else
{
GoblinNftExCodeTaskRelation
goblinNftExCodeTaskRelation
=
new
GoblinNftExCodeTaskRelation
();
GoblinNftExCodeTaskRelation
goblinNftExCodeTaskRelation
=
GoblinNftExCodeTaskRelation
.
getNew
();
goblinNftExCodeTaskRelation
.
setTaskId
(
goblinNftExCodeTask
.
getTaskId
());
goblinNftExCodeTaskRelation
.
setTaskId
(
goblinNftExCodeTask
.
getTaskId
());
goblinNftExCodeTaskRelation
.
setSkuId
(
key
);
goblinNftExCodeTaskRelation
.
setSkuId
(
key
);
goblinNftExCodeTaskRelation
.
setStock
(
stockNum
);
goblinNftExCodeTaskRelation
.
setStock
(
stockNum
);
...
@@ -182,156 +186,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -182,156 +186,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
}
}
goblinNftExCodeTasks
.
add
(
goblinNftExCodeTask
);
goblinNftExCodeTasks
.
add
(
goblinNftExCodeTask
);
// 盲盒 概率
/*switch (goblinNftExSkuParam.getUnbox()) {
case "1":
// sku ---> 库存
Map<String, Integer> skuMap = getSkuHitRatio(goblinNftExSkuParam.getExStock(), map);
for (String key : skuMap.keySet()) {
Integer stockNum = skuMap.get(key);
// 根据sku减库存
int stock = goblinRedisUtils.decrSkuStock(null, key, stockNum);
if (stock < 0) {
goblinRedisUtils.incrSkuStock(null, key, stockNum);
} else {
for (int i = 0; i < stockNum; i++) {
GoblinNftExCode goblinNftExCode = GoblinNftExCode.getNew();
goblinNftExCode.setCodeId(IDGenerator.nextSnowId());
goblinNftExCode.setActivityId(goblinNftExSkuParam.getActivityId());
// 获取兑换码ZA
// 样例 2978-6496-9269-0694-XX
String code = IDGenerator.createCode(3, 4, true);
goblinNftExCode.setCode(code);
goblinNftExCode.setBoxSkuId(key);
goblinNftExCode.setState(1);
goblinNftExCode.setCreatedAt(now);
goblinNftExCodes.add(goblinNftExCode);
GoblinNftExCodeVo goblinNftExCodeVo = GoblinNftExCodeVo.getNew().copy(goblinNftExCode);
// 赋值额外属性
goblinNftExCodeVo.setExLimit(goblinNftExSkuParam.getExLimit());
goblinNftExCodeVo.setExStartTime(goblinNftExSkuParam.getExStartTime());
goblinNftExCodeVo.setExStopTime(goblinNftExSkuParam.getExStopTime());
goblinNftExCodeVo.setStoreId(goblinNftExSkuParam.getStoreId());
goblinNftExCodeVo.setSpuId(goblinNftExSkuParam.getSpuId());
// LocalDateTime exStartTime = goblinNftExSkuParam.getExStartTime();
LocalDateTime exStopTime = goblinNftExSkuParam.getExStopTime();
// 时间差 以秒表示
long millisNum = Duration.between(LocalDateTime.now(), exStopTime).toMillis();
// redis 存储
goblinRedisUtils.addCode(code, goblinNftExCodeVo, millisNum);
goblinNftExCode.setSkuId(goblinNftExSkuParam.getSkuId());
}
// goblinNftExSkuParamMap.put(key, goblinNftExSkuParam);
}
}
break;
default:
// 根据sku减库存
int stock = goblinRedisUtils.decrSkuStock(null, goblinNftExSkuParam.getSkuId(), goblinNftExSkuParam.getExStock());
if (stock < 0) {
goblinRedisUtils.incrSkuStock(null, goblinNftExSkuParam.getSkuId(), goblinNftExSkuParam.getExStock());
} else {
// 构建兑换码数量
for (int i = 0; i < goblinNftExSkuParam.getExStock(); i++) {
GoblinNftExCode goblinNftExCode = GoblinNftExCode.getNew();
goblinNftExCode.setCodeId(IDGenerator.nextSnowId());
goblinNftExCode.setActivityId(goblinNftExSkuParam.getActivityId());
// 获取兑换码ZA
// 样例 2978-6496-9269-0694-XX
String code = IDGenerator.createCode(3, 4, true);
goblinNftExCode.setCode(code);
goblinNftExCode.setSkuId(goblinNftExSkuParam.getSkuId());
goblinNftExCode.setState(1);
goblinNftExCode.setCreatedAt(now);
goblinNftExCodes.add(goblinNftExCode);
GoblinNftExCodeVo goblinNftExCodeVo = GoblinNftExCodeVo.getNew().copy(goblinNftExCode);
// 赋值额外属性
goblinNftExCodeVo.setStoreId(goblinNftExSkuParam.getStoreId());
goblinNftExCodeVo.setExLimit(goblinNftExSkuParam.getExLimit());
goblinNftExCodeVo.setExStartTime(goblinNftExSkuParam.getExStartTime());
goblinNftExCodeVo.setExStopTime(goblinNftExSkuParam.getExStopTime());
goblinNftExCodeVo.setSpuId(goblinNftExSkuParam.getSpuId());
// LocalDateTime exStartTime = goblinNftExSkuParam.getExStartTime();
LocalDateTime exStopTime = goblinNftExSkuParam.getExStopTime();
// 时间差 以秒表示
long millisNum = Duration.between(LocalDateTime.now(), exStopTime).toMillis();
// redis 存储
goblinRedisUtils.addCode(code, goblinNftExCodeVo, millisNum);
// goblinNftExCodeArrayList.add(GoblinNftExCodeVo.getNew().copy(goblinNftExCode));
}
GoblinNftExSkuParam value = goblinNftExSkuParamMap.get(goblinNftExSkuParam.getSkuId());
if (value == null) {
goblinNftExSkuParamMap.put(goblinNftExSkuParam.getSkuId(), goblinNftExSkuParam);
}
}
// goblinNftExSkuArrayList.add(GoblinNftExSkuVo.getNew().copy(goblinNftExSku));
}*/
}
/*
for (String key : goblinNftExSkuParamMap.keySet()) {
GoblinNftExSkuVo goblinNftExSkuVo = goblinRedisUtils.getSkuTime(key);
GoblinNftExSkuParam goblinNftExSkuParam = goblinNftExSkuParamMap.get(key);
LocalDateTime exStartTime = goblinNftExSkuParam.getExStartTime(); // "2022-06-26 19:00:00";
LocalDateTime exStopTime = goblinNftExSkuParam.getExStopTime(); // "2024-06-26 19:00:00";
if (!StringUtil.isEmpty(goblinNftExSkuVo)) {
// redis存储 单个sku的开始和结束时间
LocalDateTime rdExStartTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStartTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00";
LocalDateTime rdExStopTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStopTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00";
// 时间比对
if (!rdExStartTime.isAfter(exStartTime)) {
exStartTime = rdExStartTime;
}
if (rdExStopTime.isAfter(exStopTime)) {
exStopTime = rdExStopTime;
}
}
GoblinNftExSkuVo goblinNftExSku = GoblinNftExSkuVo.getNew();
goblinNftExSku.setExStartTime(exStartTime);
goblinNftExSku.setExStopTime(exStopTime);
goblinNftExSku.setRdStartTime(exStartTime.toString());
goblinNftExSku.setRdStopTime(exStopTime.toString());
goblinRedisUtils.addSkuTime(key, goblinNftExSku);
}
}
*/
// 数据库操作
// 数据库操作
long
startm
=
System
.
currentTimeMillis
();
long
startm
=
System
.
currentTimeMillis
();
if
(
goblinNftExCodeTasks
.
size
()
>
0
)
{
if
(
goblinNftExCodeTasks
.
size
()
>
0
)
{
...
@@ -371,13 +226,14 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -371,13 +226,14 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
// 获取sku总概率
// 获取sku总概率
BigDecimal
hitRatioCount
=
new
BigDecimal
(
0
);
BigDecimal
hitRatioCount
=
new
BigDecimal
(
0
);
// sku --> 概率/库存
Map
<
String
,
Map
<
String
,
Object
>>
mapMap
=
new
HashMap
<>();
int
countNumber
=
0
;
// Map<String, Map<String, Object>> mapMap = new HashMap<>();
// sku --> 概率/库存
HashMap
<
String
,
Map
<
String
,
Object
>>
mapMap
=
CollectionUtil
.
mapHashMap
();
for
(
String
key
:
map
.
keySet
())
{
for
(
String
key
:
map
.
keySet
())
{
BigDecimal
skuHitRatio
=
map
.
get
(
key
);
BigDecimal
skuHitRatio
=
BigDecimal
.
valueOf
(
Double
.
valueOf
(
map
.
get
(
key
).
toString
())
);
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<>
();
HashMap
<
String
,
Object
>
objectMap
=
CollectionUtil
.
mapStringObject
();
if
(
skuHitRatio
==
null
)
{
if
(
skuHitRatio
==
null
)
{
continue
;
continue
;
}
}
...
@@ -390,13 +246,17 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -390,13 +246,17 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
// sku ---> 库存
// sku ---> 库存
Map
<
String
,
Integer
>
stockMap
=
new
HashMap
<>
();
HashMap
<
String
,
Integer
>
stockMap
=
CollectionUtil
.
mapStringInteger
();
getStock
(
exStock
,
hitRatioCount
,
mapMap
,
stockMap
);
getStock
(
exStock
,
hitRatioCount
,
mapMap
,
stockMap
);
return
stockMap
;
return
stockMap
;
}
}
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"1"
,
new
BigDecimal
(
"0.11"
));
System
.
out
.
println
(
BigDecimal
.
valueOf
(
Double
.
valueOf
(
map
.
get
(
"1"
).
toString
())));
Map
<
String
,
Map
<
String
,
Object
>>
mapMap
=
new
HashMap
<>();
Map
<
String
,
Map
<
String
,
Object
>>
mapMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<>();
objectMap
.
put
(
"hitRatio"
,
10
);
objectMap
.
put
(
"hitRatio"
,
10
);
...
@@ -436,7 +296,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -436,7 +296,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
continue
;
continue
;
}
}
BigDecimal
bigDecimal
=
BigDecimal
.
valueOf
(
exStock
).
multiply
((
new
BigDecimal
(
hitRatio
.
toString
()).
divide
(
hitRatioCount
,
2
,
BigDecimal
.
ROUND_HALF_UP
))).
setScale
(
0
,
BigDecimal
.
ROUND_HALF_UP
);
//
BigDecimal bigDecimal = BigDecimal.valueOf(exStock).multiply((new BigDecimal(hitRatio.toString()).divide(hitRatioCount, 2, BigDecimal.ROUND_HALF_UP))).setScale(0, BigDecimal.ROUND_HALF_UP);
// 要减去的库存
// 要减去的库存
int
subStock
=
BigDecimal
.
valueOf
(
exStock
).
multiply
((
new
BigDecimal
(
hitRatio
.
toString
()).
divide
(
hitRatioCount
,
2
,
BigDecimal
.
ROUND_HALF_UP
))).
setScale
(
0
,
BigDecimal
.
ROUND_HALF_UP
).
intValue
();
int
subStock
=
BigDecimal
.
valueOf
(
exStock
).
multiply
((
new
BigDecimal
(
hitRatio
.
toString
()).
divide
(
hitRatioCount
,
2
,
BigDecimal
.
ROUND_HALF_UP
))).
setScale
(
0
,
BigDecimal
.
ROUND_HALF_UP
).
intValue
();
...
@@ -460,7 +320,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
...
@@ -460,7 +320,7 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
}
}
}
}
exStock
-=
subNumber
;
exStock
-=
subNumber
;
if
(
exStock
>
0
)
{
if
(
exStock
>
0
)
{
for
(
String
key
:
mapMap
.
keySet
())
{
for
(
String
key
:
mapMap
.
keySet
())
{
Object
hitRatio
=
mapMap
.
get
(
key
).
get
(
"hitRatio"
);
Object
hitRatio
=
mapMap
.
get
(
key
).
get
(
"hitRatio"
);
...
...
liquidnet-bus-service/liquidnet-service-platform/liquidnet-service-platform-impl/src/main/java/com/liquidnet/service/platform/utils/ObjectUtil.java
View file @
a56b7e6e
...
@@ -7,6 +7,8 @@ import com.liquidnet.service.candy.entity.CandyCouponCode;
...
@@ -7,6 +7,8 @@ import com.liquidnet.service.candy.entity.CandyCouponCode;
import
com.liquidnet.service.candy.entity.CandyUserCoupon
;
import
com.liquidnet.service.candy.entity.CandyUserCoupon
;
import
com.liquidnet.service.goblin.dto.GoblinStoreMarketDto
;
import
com.liquidnet.service.goblin.dto.GoblinStoreMarketDto
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.entity.GoblinNftExCodeTask
;
import
com.liquidnet.service.goblin.entity.GoblinNftExCodeTaskRelation
;
import
com.liquidnet.service.kylin.dto.vo.KylinApiCameraDevicesVo
;
import
com.liquidnet.service.kylin.dto.vo.KylinApiCameraDevicesVo
;
import
com.liquidnet.service.kylin.entity.KylinOrderCoupons
;
import
com.liquidnet.service.kylin.entity.KylinOrderCoupons
;
import
com.liquidnet.service.goblin.dto.vo.ActivityExcelVo
;
import
com.liquidnet.service.goblin.dto.vo.ActivityExcelVo
;
...
@@ -60,10 +62,11 @@ public class ObjectUtil {
...
@@ -60,10 +62,11 @@ public class ObjectUtil {
private
static
final
ArrayList
<
SellDataOneVO
>
sellDataOneVOArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
SellDataOneVO
>
sellDataOneVOArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExActivityVo
>
goblinNftExActivityVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExActivityVo
>
goblinNftExActivityVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExCodeVo
>
goblinNftExCodeVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExSkuVo
>
goblinNftExSkuVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftSkuVo
>
goblinNftSkuVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftSkuVo
>
goblinNftSkuVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
ActivityExcelVo
>
activityExcelVoArrayList
=
new
ArrayList
();
private
static
final
ArrayList
<
ActivityExcelVo
>
activityExcelVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
CodeExcelVo
>
codeExcelVoArrayList
=
new
ArrayList
();
private
static
final
ArrayList
<
CodeExcelVo
>
codeExcelVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExCodeTaskRelation
>
goblinNftExCodeTaskRelationArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinNftExCodeTask
>
goblinNftExCodeTaskArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinStoreMarketDto
>
goblinStoreMarketDtoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
GoblinStoreMarketDto
>
goblinStoreMarketDtoArrayList
=
new
ArrayList
<>();
...
@@ -143,18 +146,14 @@ public class ObjectUtil {
...
@@ -143,18 +146,14 @@ public class ObjectUtil {
return
(
ArrayList
<
KylinApiCameraDevicesVo
>)
kylinApiCameraDevicesVoArrayList
.
clone
();
return
(
ArrayList
<
KylinApiCameraDevicesVo
>)
kylinApiCameraDevicesVoArrayList
.
clone
();
}
}
public
static
ArrayList
<
GoblinNftExActivityVo
>
getGoblinNftExActivityArrayList
()
{
public
static
ArrayList
<
GoblinNftExActivityVo
>
getGoblinNftExActivity
Vo
ArrayList
()
{
return
(
ArrayList
<
GoblinNftExActivityVo
>)
goblinNftExActivityVoArrayList
.
clone
();
return
(
ArrayList
<
GoblinNftExActivityVo
>)
goblinNftExActivityVoArrayList
.
clone
();
}
}
public
static
ArrayList
<
GoblinNftExCodeVo
>
getGoblinNftExCodeArrayList
()
{
public
static
ArrayList
<
GoblinNftExCodeVo
>
getGoblinNftExCode
Vo
ArrayList
()
{
return
(
ArrayList
<
GoblinNftExCodeVo
>)
goblinNftExCodeVoArrayList
.
clone
();
return
(
ArrayList
<
GoblinNftExCodeVo
>)
goblinNftExCodeVoArrayList
.
clone
();
}
}
public
static
ArrayList
<
GoblinNftExSkuVo
>
getGoblinNftExSkuArrayList
()
{
return
(
ArrayList
<
GoblinNftExSkuVo
>)
goblinNftExSkuVoArrayList
.
clone
();
}
public
static
ArrayList
<
GoblinNftSkuVo
>
getGoblinNftSkuVoArrayList
()
{
public
static
ArrayList
<
GoblinNftSkuVo
>
getGoblinNftSkuVoArrayList
()
{
return
(
ArrayList
<
GoblinNftSkuVo
>)
goblinNftSkuVoArrayList
.
clone
();
return
(
ArrayList
<
GoblinNftSkuVo
>)
goblinNftSkuVoArrayList
.
clone
();
}
}
...
@@ -163,8 +162,16 @@ public class ObjectUtil {
...
@@ -163,8 +162,16 @@ public class ObjectUtil {
return
(
ArrayList
<
ActivityExcelVo
>)
activityExcelVoArrayList
.
clone
();
return
(
ArrayList
<
ActivityExcelVo
>)
activityExcelVoArrayList
.
clone
();
}
}
public
static
ArrayList
<
CodeExcelVo
>
getCodeExcelVoArrayList
(){
public
static
ArrayList
<
CodeExcelVo
>
getCodeExcelVoArrayList
()
{
return
(
ArrayList
<
CodeExcelVo
>)
codeExcelVoArrayList
.
clone
();
return
(
ArrayList
<
CodeExcelVo
>)
codeExcelVoArrayList
.
clone
();
}
public
static
ArrayList
<
GoblinNftExCodeTaskRelation
>
getGoblinNftExCodeTaskRelationArrayList
()
{
return
(
ArrayList
<
GoblinNftExCodeTaskRelation
>)
goblinNftExCodeTaskRelationArrayList
.
clone
();
}
public
static
ArrayList
<
GoblinNftExCodeTask
>
getGoblinNftExCodeTaskArrayList
()
{
return
(
ArrayList
<
GoblinNftExCodeTask
>)
goblinNftExCodeTaskArrayList
.
clone
();
}
}
...
...
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