Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
783a13a2
Commit
783a13a2
authored
Jun 16, 2021
by
hanghang.wang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
一次性卖券调整
parent
d97f0e45
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
9 deletions
+11
-9
order-application-service/src/main/java/cn/freemud/manager/BuyProductOnceManager.java
+8
-6
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+2
-2
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
+1
-1
No files found.
order-application-service/src/main/java/cn/freemud/manager/BuyProductOnceManager.java
View file @
783a13a2
...
...
@@ -26,13 +26,13 @@ public class BuyProductOnceManager {
//用户限购:每人每单限购一次 / 禁用
public
ResponseResult
checkBuyProductOnce
(
List
<
ProductInfo
>
products
,
String
partnerId
,
String
userId
)
{
List
productsCheck
=
products
.
stream
().
filter
(
product
->
product
.
getIsLimitNumProduct
()
==
1
).
collect
(
Collectors
.
toList
());
List
<
ProductInfo
>
productsCheck
=
products
.
stream
().
filter
(
product
->
product
.
getIsLimitNumProduct
()
==
1
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
productsCheck
))
{
//每人每单限购一次
if
(
productsCheck
.
size
()
>
1
)
{
return
ResponseResult
.
USER_BUY_PRODUCT_MORE_THAN_THE_NUMBER
;
}
String
key
=
this
.
getCheckBuyProductOnceKey
(
partnerId
,
userId
);
String
key
=
this
.
getCheckBuyProductOnceKey
(
partnerId
,
userId
,
productsCheck
.
get
(
0
).
getPid
()
);
if
(
redisTemplate
.
hasKey
(
key
))
{
return
ResponseResult
.
USER_BUY_PRODUCT_ALREADY
;
}
...
...
@@ -43,17 +43,19 @@ public class BuyProductOnceManager {
return
ResponseResult
.
SUCCESS
;
}
public
String
getCheckBuyProductOnceKey
(
String
partnerId
,
String
userId
)
{
public
String
getCheckBuyProductOnceKey
(
String
partnerId
,
String
userId
,
String
pid
)
{
StringBuilder
key
=
new
StringBuilder
(
RedisKeyConstant
.
USER_BUY_PRODUCT_ONCE
)
.
append
(
partnerId
)
.
append
(
":"
)
.
append
(
userId
);
.
append
(
userId
)
.
append
(
":"
)
.
append
(
pid
);
return
key
.
toString
();
}
//清掉key
public
boolean
removeCheckBuyProductOnceKey
(
String
partnerId
,
String
userId
)
{
String
key
=
this
.
getCheckBuyProductOnceKey
(
partnerId
,
userId
);
public
boolean
removeCheckBuyProductOnceKey
(
String
partnerId
,
String
userId
,
String
pid
)
{
String
key
=
this
.
getCheckBuyProductOnceKey
(
partnerId
,
userId
,
pid
);
redisTemplate
.
delete
(
key
);
return
true
;
}
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
783a13a2
...
...
@@ -2032,7 +2032,7 @@ public class OrderServiceImpl implements Orderservice {
backOrdersStatusChange
(
orderBean
.
getOid
(),
orderBean
.
getStatus
());
//取消支付时,清理key.此处不做校验是否限制次数的单子,卖券订单直接清理
if
(
Objects
.
equals
(
BizTypeEnum
.
APP_COUPON
.
getBizType
(),
orderBean
.
getBizType
())){
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
orderBean
.
getCompanyId
(),
orderBean
.
getUserId
());
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
orderBean
.
getCompanyId
(),
orderBean
.
getUserId
()
,
orderBean
.
getProductList
().
get
(
0
).
getProductId
()
);
}
return
ResponseUtil
.
success
();
}
...
...
@@ -2079,7 +2079,7 @@ public class OrderServiceImpl implements Orderservice {
backOrdersStatusChange
(
orderBean
.
getOid
(),
orderBean
.
getStatus
());
//取消支付时,清理key.此处不做校验是否限制次数的单子,卖券订单直接清理
if
(
Objects
.
equals
(
BizTypeEnum
.
APP_COUPON
.
getBizType
(),
orderBean
.
getBizType
())){
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
orderBean
.
getCompanyId
(),
orderBean
.
getUserId
());
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
orderBean
.
getCompanyId
(),
orderBean
.
getUserId
()
,
orderBean
.
getProductList
().
get
(
0
).
getProductId
()
);
}
return
ResponseUtil
.
success
();
}
...
...
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
View file @
783a13a2
...
...
@@ -255,7 +255,7 @@ public class SellCouponOrderServiceImpl {
AfterSalesType
.
SYSTEM_CANCEL
,
"商品库存不足"
,
""
,
null
);
BaseOrderResponse
orderResponse
=
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
//异常清理掉key
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
partnerId
,
userId
);
buyProductOnceManager
.
removeCheckBuyProductOnceKey
(
partnerId
,
userId
,
orderBean
.
getProductList
().
get
(
0
).
getProductId
()
);
return
ResponseUtil
.
error
(
baseResponse
.
getCode
(),
"商品库存不足"
);
}
}
...
...
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