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
1c83c06a
Commit
1c83c06a
authored
Oct 12, 2020
by
缪晖
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
拼单创建加购人信息初始化修改
parent
f652f48c
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
92 additions
and
9 deletions
+92
-9
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollageMemberState.java
+21
-0
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollageOrderDto.java
+10
-0
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/CollageOrderBaseService.java
+6
-0
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/impl/CollageOrderBaseServiceImpl.java
+30
-4
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/CollageOrderResponseVo.java
+7
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
+18
-4
No files found.
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollageMemberState.java
0 → 100644
View file @
1c83c06a
package
com
.
freemud
.
sdk
.
api
.
assortment
.
shoppingcart
.
domain
;
import
lombok.Data
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-10-12 10:25
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
CollageMemberState
{
private
String
userId
;
private
String
nickName
;
private
String
photoUrl
;
private
Boolean
state
;
}
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollageOrderDto.java
View file @
1c83c06a
...
@@ -50,6 +50,16 @@ public class CollageOrderDto
...
@@ -50,6 +50,16 @@ public class CollageOrderDto
private
String
currentUserId
;
private
String
currentUserId
;
/**
/**
* 拼单当前用户昵称
*/
private
String
nickName
;
/**
* 拼单当前用户头像
*/
private
String
photoUrl
;
/**
* 购物车行ids
* 购物车行ids
*/
*/
private
List
<
String
>
cartLines
;
private
List
<
String
>
cartLines
;
...
...
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/CollageOrderBaseService.java
View file @
1c83c06a
package
com
.
freemud
.
sdk
.
api
.
assortment
.
shoppingcart
.
service
;
package
com
.
freemud
.
sdk
.
api
.
assortment
.
shoppingcart
.
service
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageMemberState
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrderDto
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrderDto
;
...
@@ -60,6 +61,11 @@ public interface CollageOrderBaseService {
...
@@ -60,6 +61,11 @@ public interface CollageOrderBaseService {
BaseResponse
<
Boolean
>
isLockedCollageOrder
(
CollageOrderDto
collageOrderDto
);
BaseResponse
<
Boolean
>
isLockedCollageOrder
(
CollageOrderDto
collageOrderDto
);
/**
/**
* 获取加购人状态
*/
BaseResponse
<
List
<
CollageMemberState
>>
getCollageMemberState
(
CollageOrderDto
collageOrderDto
);
/**
* 判断门店下的拼单是否存在该会员
* 判断门店下的拼单是否存在该会员
*/
*/
BaseResponse
judgeMemberAddStates
(
CollageOrderDto
collageOrderDto
);
BaseResponse
judgeMemberAddStates
(
CollageOrderDto
collageOrderDto
);
...
...
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/impl/CollageOrderBaseServiceImpl.java
View file @
1c83c06a
...
@@ -6,6 +6,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.adapter.CollageOrderSdkAdapte
...
@@ -6,6 +6,7 @@ import com.freemud.sdk.api.assortment.shoppingcart.adapter.CollageOrderSdkAdapte
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageLockStatus
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageLockStatus
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageOrderConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageOrderConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.RedisKeyConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.RedisKeyConstant
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageMemberState
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrderDto
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrderDto
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.CollageOrderBaseService
;
import
com.freemud.sdk.api.assortment.shoppingcart.service.CollageOrderBaseService
;
...
@@ -98,7 +99,7 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
...
@@ -98,7 +99,7 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
this
.
initCollageMember
(
collageMemberHashKey
,
collageOrderDto
.
getCurrentUserId
());
this
.
initCollageMember
(
collageMemberHashKey
,
collageOrderDto
.
getCurrentUserId
());
// 设置拼单发起人加购状态
// 设置拼单发起人加购状态
String
collageMemberStateHashKey
=
this
.
genCollageMemberStateHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
(),
collageOrderDto
.
getCreateCollageUserId
());
String
collageMemberStateHashKey
=
this
.
genCollageMemberStateHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
(),
collageOrderDto
.
getCreateCollageUserId
());
this
.
initCollageMemberState
(
collageMemberStateHashKey
,
collageOrderDto
.
getCurrentUserId
()
);
this
.
initCollageMemberState
(
collageMemberStateHashKey
,
collageOrderDto
);
// 将拼单发起人加入门店拼单客户列表
// 将拼单发起人加入门店拼单客户列表
String
collageStoreMemberKey
=
this
.
genCollageMemerHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
());
String
collageStoreMemberKey
=
this
.
genCollageMemerHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
());
this
.
putCollageStoreMember
(
collageStoreMemberKey
,
collageOrderDto
.
getCreateCollageUserId
(),
this
.
getCollageBashHashExpireSeconds
(
collageBaseHashKey
));
this
.
putCollageStoreMember
(
collageStoreMemberKey
,
collageOrderDto
.
getCreateCollageUserId
(),
this
.
getCollageBashHashExpireSeconds
(
collageBaseHashKey
));
...
@@ -183,6 +184,17 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
...
@@ -183,6 +184,17 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
}
}
@Override
@Override
public
BaseResponse
<
List
<
CollageMemberState
>>
getCollageMemberState
(
CollageOrderDto
collageOrderDto
)
{
try
{
String
collageMemberStateKey
=
this
.
genCollageMemberStateHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
(),
collageOrderDto
.
getCreateCollageUserId
());
return
CartResponseUtil
.
success
(
this
.
getCollageMemberStateHash
(
collageMemberStateKey
));
}
catch
(
Exception
e
)
{
ErrorLog
.
printErrorLog
(
"获取拼单用户状态异常"
,
"CollageOrderBaseServiceImpl/getCollageMemberState"
,
this
.
collageOrderRequest
(
collageOrderDto
),
e
);
return
CartResponseUtil
.
success
(
Collections
.
EMPTY_LIST
);
}
}
@Override
public
BaseResponse
judgeMemberAddStates
(
CollageOrderDto
collageOrderDto
){
public
BaseResponse
judgeMemberAddStates
(
CollageOrderDto
collageOrderDto
){
String
key
=
genCollageMemerHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
());
String
key
=
genCollageMemerHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
());
Boolean
states
=
(
Boolean
)
redisTemplate
.
boundHashOps
(
key
).
get
(
collageOrderDto
.
getCurrentUserId
());
Boolean
states
=
(
Boolean
)
redisTemplate
.
boundHashOps
(
key
).
get
(
collageOrderDto
.
getCurrentUserId
());
...
@@ -381,14 +393,28 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
...
@@ -381,14 +393,28 @@ public class CollageOrderBaseServiceImpl implements CollageOrderBaseService {
/**
/**
* 拼单创建加购人状态初始化
* 拼单创建加购人状态初始化
* @param collageMemberStateHashKey
* @param collageMemberStateHashKey
* @param c
urrentUserId
* @param c
ollageOrderDto
*/
*/
private
void
initCollageMemberState
(
String
collageMemberStateHashKey
,
String
currentUserId
)
{
private
void
initCollageMemberState
(
String
collageMemberStateHashKey
,
CollageOrderDto
collageOrderDto
)
{
redisTemplate
.
boundHashOps
(
collageMemberStateHashKey
).
put
(
currentUserId
,
false
);
CollageMemberState
collageMemberState
=
new
CollageMemberState
();
collageMemberState
.
setUserId
(
collageOrderDto
.
getCurrentUserId
());
collageMemberState
.
setNickName
(
collageOrderDto
.
getNickName
());
collageMemberState
.
setPhotoUrl
(
collageOrderDto
.
getPhotoUrl
());
collageMemberState
.
setState
(
false
);
redisTemplate
.
boundHashOps
(
collageMemberStateHashKey
).
put
(
collageOrderDto
.
getCurrentUserId
(),
collageMemberState
);
redisTemplate
.
boundHashOps
(
collageMemberStateHashKey
).
expire
(
1
,
TimeUnit
.
HOURS
);
redisTemplate
.
boundHashOps
(
collageMemberStateHashKey
).
expire
(
1
,
TimeUnit
.
HOURS
);
}
}
/**
/**
* 获取加购人状态信息
* @param collageMemberStateHashKey
* @return
*/
private
List
<
CollageMemberState
>
getCollageMemberStateHash
(
String
collageMemberStateHashKey
)
{
return
redisTemplate
.
boundHashOps
(
collageMemberStateHashKey
).
values
();
}
/**
* 构建拼单购物车缓存key
* 构建拼单购物车缓存key
* @param partnerId
* @param partnerId
* @param storeId
* @param storeId
...
...
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/CollageOrderResponseVo.java
View file @
1c83c06a
...
@@ -12,9 +12,12 @@
...
@@ -12,9 +12,12 @@
*/
*/
package
cn
.
freemud
.
entities
.
vo
;
package
cn
.
freemud
.
entities
.
vo
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageMemberState
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageOrder
;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.List
;
@Data
@Data
public
class
CollageOrderResponseVo
{
public
class
CollageOrderResponseVo
{
/**
/**
...
@@ -27,5 +30,8 @@ public class CollageOrderResponseVo {
...
@@ -27,5 +30,8 @@ public class CollageOrderResponseVo {
*/
*/
private
Boolean
locked
;
private
Boolean
locked
;
// 拼单参与人信息
/**
* 拼单参与人信息
*/
private
List
<
CollageMemberState
>
collageMemberStateList
;
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
View file @
1c83c06a
...
@@ -69,7 +69,9 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -69,7 +69,9 @@ public class CollageOrderServiceImpl implements CollageOrderService {
collageOrderResponseVo
.
setOrder
(
collageOrder
);
collageOrderResponseVo
.
setOrder
(
collageOrder
);
// 订单锁定状态
// 订单锁定状态
collageOrderResponseVo
.
setLocked
(
this
.
collageOrderBaseService
.
isLockedCollageOrder
(
collageOrderDto
).
getResult
());
collageOrderResponseVo
.
setLocked
(
this
.
collageOrderBaseService
.
isLockedCollageOrder
(
collageOrderDto
).
getResult
());
// TODO 订单参与人列表信息
// 订单参与人列表信息 参与人昵称头像等信息放入加购人状态锁redis对象中 userId : MemberState
collageOrderResponseVo
.
setCollageMemberStateList
(
this
.
collageOrderBaseService
.
getCollageMemberState
(
collageOrderDto
).
getResult
());
return
ResponseUtil
.
success
(
collageOrderResponseVo
);
return
ResponseUtil
.
success
(
collageOrderResponseVo
);
}
}
...
@@ -83,8 +85,11 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -83,8 +85,11 @@ public class CollageOrderServiceImpl implements CollageOrderService {
public
BaseResponse
createCollageOrder
(
CollageOrderRequestVo
request
)
{
public
BaseResponse
createCollageOrder
(
CollageOrderRequestVo
request
)
{
CollageOrderDto
collageOrderDto
=
this
.
collageOrderAdapter
.
convert2CollageOrderDto
(
request
);
CollageOrderDto
collageOrderDto
=
this
.
collageOrderAdapter
.
convert2CollageOrderDto
(
request
);
// 根据sessionId查询对应登录用户信息
// 根据sessionId查询对应登录用户信息
collageOrderDto
.
setCreateCollageUserId
(
this
.
getUserIdBySessionId
(
request
.
getSessionId
()));
CustomerInfoVo
userInfo
=
this
.
getUserInfo
(
request
.
getSessionId
());
collageOrderDto
.
setCurrentUserId
(
collageOrderDto
.
getCreateCollageUserId
());
collageOrderDto
.
setCreateCollageUserId
(
userInfo
.
getMemberId
());
collageOrderDto
.
setCurrentUserId
(
userInfo
.
getMemberId
());
collageOrderDto
.
setNickName
(
userInfo
.
getNickName
());
collageOrderDto
.
setPhotoUrl
(
userInfo
.
getPhotoUrl
());
// 创建拼单订单基础缓存信息
// 创建拼单订单基础缓存信息
BaseResponse
<
CollageOrder
>
createCollageOrderResponse
=
this
.
collageOrderBaseService
.
createCollageOrder
(
collageOrderDto
);
BaseResponse
<
CollageOrder
>
createCollageOrderResponse
=
this
.
collageOrderBaseService
.
createCollageOrder
(
collageOrderDto
);
...
@@ -149,13 +154,22 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -149,13 +154,22 @@ public class CollageOrderServiceImpl implements CollageOrderService {
}
}
/**
/**
* 根据sessionId查询登录用户的userId
* @param sessionId
* @return
*/
private
CustomerInfoVo
getUserInfo
(
String
sessionId
)
{
return
this
.
shoppingCartCollageService
.
getCustomerInfoVo
(
sessionId
);
}
/**
* 查询当前拼单订单基础信息是否存在
* 查询当前拼单订单基础信息是否存在
* @param collageOrderDto
* @param collageOrderDto
* @return
* @return
*/
*/
private
Boolean
isCollageOrderExist
(
CollageOrderDto
collageOrderDto
)
{
private
Boolean
isCollageOrderExist
(
CollageOrderDto
collageOrderDto
)
{
// 查询当前拼单订单基础信息是否存在
// 查询当前拼单订单基础信息是否存在
return
ObjectUtils
.
isEmpty
(
this
.
collageOrderBaseService
.
queryCollageOrder
(
collageOrderDto
).
getResult
())
?
false
:
true
;
return
!
ObjectUtils
.
isEmpty
(
this
.
collageOrderBaseService
.
queryCollageOrder
(
collageOrderDto
).
getResult
())
;
}
}
/**
/**
...
...
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