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
6421e937
Commit
6421e937
authored
Nov 27, 2020
by
缪晖
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
拼单订单修改内容提交
parent
62aa3a19
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
164 additions
and
19 deletions
+164
-19
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/constant/RedisKeyConstant.java
+3
-3
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollagePartnerMember.java
+27
-0
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/impl/CollageOrderBaseServiceImpl.java
+0
-0
order-application-service/src/main/java/cn/freemud/controller/CollageOrderController.java
+10
-0
order-application-service/src/main/java/cn/freemud/entities/dto/wechat/GroupBuyDto.java
+18
-0
order-application-service/src/main/java/cn/freemud/entities/dto/wechat/GroupBuyResp.java
+18
-0
order-application-service/src/main/java/cn/freemud/entities/vo/WechatGroupBuyVo.java
+21
-0
order-application-service/src/main/java/cn/freemud/service/CollageOrderService.java
+9
-1
order-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
+18
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/ShoppingCartInfoRequestVo.java
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/CollageOrderService.java
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
+16
-7
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartCollageServiceImpl.java
+21
-5
No files found.
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/constant/RedisKeyConstant.java
View file @
6421e937
...
@@ -111,10 +111,10 @@ public class RedisKeyConstant {
...
@@ -111,10 +111,10 @@ public class RedisKeyConstant {
public
final
static
String
COLLAGE_MEMBER_STATE_KEY
=
"kgd:collage:member:state:{0}:{1}:{2}"
;
public
final
static
String
COLLAGE_MEMBER_STATE_KEY
=
"kgd:collage:member:state:{0}:{1}:{2}"
;
/**
/**
* kgd:collage:store:member:{partnerId}
:{storeId}
* kgd:collage:store:member:{partnerId}
*
门店
下拼单人员缓存key
*
商户
下拼单人员缓存key
*/
*/
public
final
static
String
COLLAGE_
STORE_MEMBER_KEY
=
"kgd:collage:store:member:{0}:{1
}"
;
public
final
static
String
COLLAGE_
PARTNER_MEMBER_KEY
=
"kgd:collage:partner:member:{0
}"
;
/**
/**
* kgd:collage:cart:lock:{partnerId}:{storeId}:{邀请用户ID}
* kgd:collage:cart:lock:{partnerId}:{storeId}:{邀请用户ID}
...
...
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/domain/CollagePartnerMember.java
0 → 100644
View file @
6421e937
package
com
.
freemud
.
sdk
.
api
.
assortment
.
shoppingcart
.
domain
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-11-27 11:53
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
CollagePartnerMember
implements
Serializable
{
private
String
partnerId
;
private
String
storeId
;
private
String
createCollageUserId
;
private
Long
expire
;
}
assortment-shoppingcart-sdk/src/main/java/com/freemud/sdk/api/assortment/shoppingcart/service/impl/CollageOrderBaseServiceImpl.java
View file @
6421e937
This diff is collapsed.
Click to expand it.
order-application-service/src/main/java/cn/freemud/controller/CollageOrderController.java
View file @
6421e937
...
@@ -2,7 +2,9 @@ package cn.freemud.controller;
...
@@ -2,7 +2,9 @@ package cn.freemud.controller;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.WechatGroupBuyVo
;
import
cn.freemud.service.impl.CollageOrderServiceImpl
;
import
cn.freemud.service.impl.CollageOrderServiceImpl
;
import
cn.freemud.utils.ResponseUtil
;
import
com.freemud.application.sdk.api.log.ApiAnnotation
;
import
com.freemud.application.sdk.api.log.ApiAnnotation
;
import
com.freemud.application.sdk.api.log.LogParams
;
import
com.freemud.application.sdk.api.log.LogParams
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
...
@@ -45,4 +47,12 @@ public class CollageOrderController {
...
@@ -45,4 +47,12 @@ public class CollageOrderController {
return
collageOrderService
.
create
(
requestVo
);
return
collageOrderService
.
create
(
requestVo
);
}
}
@ApiOperation
(
value
=
"创建拼单群收款"
,
notes
=
"创建拼单群收款"
)
@ApiImplicitParam
(
value
=
"请求"
,
required
=
true
,
dataType
=
"CreateOrderVo"
,
name
=
"CreateOrderVo"
)
@ApiAnnotation
(
logMessage
=
"createGroupBuy"
)
@PostMapping
(
value
=
"/collage/groupBuy"
)
public
BaseResponse
createGroupBuy
(
@Validated
@LogParams
@RequestBody
WechatGroupBuyVo
requestVo
)
{
return
collageOrderService
.
createGroupBuy
(
requestVo
);
}
}
}
order-application-service/src/main/java/cn/freemud/entities/dto/wechat/GroupBuyDto.java
0 → 100644
View file @
6421e937
package
cn
.
freemud
.
entities
.
dto
.
wechat
;
import
lombok.Data
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-11-27 17:48
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
GroupBuyDto
{
}
order-application-service/src/main/java/cn/freemud/entities/dto/wechat/GroupBuyResp.java
0 → 100644
View file @
6421e937
package
cn
.
freemud
.
entities
.
dto
.
wechat
;
import
lombok.Data
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0.0
* @Description:
* @author: hui.miao
* @date: 2020-11-27 17:50
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
GroupBuyResp
{
private
String
groupBuyOrderId
;
}
order-application-service/src/main/java/cn/freemud/entities/vo/WechatGroupBuyVo.java
0 → 100644
View file @
6421e937
package
cn
.
freemud
.
entities
.
vo
;
import
lombok.Data
;
import
org.hibernate.validator.constraints.NotEmpty
;
@Data
public
class
WechatGroupBuyVo
{
@NotEmpty
(
message
=
"sessionId 不能为空"
)
private
String
sessionId
;
@NotEmpty
(
message
=
"商户号 不能为空"
)
private
String
partnerId
;
@NotEmpty
(
message
=
"门店号 不能为空"
)
private
String
shopId
;
@NotEmpty
(
message
=
"订单编号 不能为空"
)
private
String
orderCode
;
}
order-application-service/src/main/java/cn/freemud/service/CollageOrderService.java
View file @
6421e937
...
@@ -2,6 +2,7 @@ package cn.freemud.service;
...
@@ -2,6 +2,7 @@ package cn.freemud.service;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.WechatGroupBuyVo
;
/**
/**
* All rights Reserved, Designed By www.freemud.cn
* All rights Reserved, Designed By www.freemud.cn
...
@@ -15,7 +16,14 @@ import cn.freemud.entities.vo.CreateOrderVo;
...
@@ -15,7 +16,14 @@ import cn.freemud.entities.vo.CreateOrderVo;
*/
*/
public
interface
CollageOrderService
{
public
interface
CollageOrderService
{
/**
/**
* 创建订单
* 创建
拼单
订单
*/
*/
BaseResponse
create
(
CreateOrderVo
createOrderVo
);
BaseResponse
create
(
CreateOrderVo
createOrderVo
);
/**
* 创建群收款
* @param requestVo
* @return
*/
BaseResponse
createGroupBuy
(
WechatGroupBuyVo
requestVo
);
}
}
order-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
View file @
6421e937
...
@@ -14,9 +14,12 @@ package cn.freemud.service.impl;
...
@@ -14,9 +14,12 @@ package cn.freemud.service.impl;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.entities.dto.wechat.GroupBuyResp
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.WechatGroupBuyVo
;
import
cn.freemud.enums.OrderMarketType
;
import
cn.freemud.enums.OrderMarketType
;
import
cn.freemud.service.CollageOrderService
;
import
cn.freemud.service.CollageOrderService
;
import
cn.freemud.utils.ResponseUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -27,10 +30,25 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -27,10 +30,25 @@ public class CollageOrderServiceImpl implements CollageOrderService {
@Autowired
@Autowired
private
OrderServiceImpl
orderService
;
private
OrderServiceImpl
orderService
;
/**
* 创建拼单订单
*/
@Override
@Override
public
BaseResponse
create
(
CreateOrderVo
createOrderVo
)
{
public
BaseResponse
create
(
CreateOrderVo
createOrderVo
)
{
// 标记订单类型-4 拼单
// 标记订单类型-4 拼单
createOrderVo
.
setMarketingType
(
OrderMarketType
.
COLLAGE
.
getIndex
());
createOrderVo
.
setMarketingType
(
OrderMarketType
.
COLLAGE
.
getIndex
());
return
this
.
orderService
.
createOrderNew
(
createOrderVo
);
return
this
.
orderService
.
createOrderNew
(
createOrderVo
);
}
}
/**
* 创建群收款
* @param requestVo
* @return
*/
@Override
public
BaseResponse
createGroupBuy
(
WechatGroupBuyVo
requestVo
)
{
GroupBuyResp
groupBuyResp
=
new
GroupBuyResp
();
groupBuyResp
.
setGroupBuyOrderId
(
"AARwDhsBAAABAAAAAAA8qP8oA4wVBRDgTYemXSAAAAC+NhafsoPlHq4RjEYubHs/qZzK7T9Q 02qG5CNcaTRRAyNIF/DIBcbFQuBKJTnEezsaW1SDpyM9G6MNK9T2wzeWQlajckiSTDZDWjAn9O1 WASuHkIZdf9SRQrIAwZdwjsBf7MPxtQP/4ExaW0B9g9IG"
);
return
ResponseUtil
.
success
(
groupBuyResp
);
}
}
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/ShoppingCartInfoRequestVo.java
View file @
6421e937
...
@@ -43,7 +43,7 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo {
...
@@ -43,7 +43,7 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo {
/**
/**
* 拼单场景使用
* 拼单场景使用
* 0个人购物车
1整个
购物车
* 0个人购物车
;1全员购物车;2整合
购物车
*/
*/
private
Integer
type
;
private
Integer
type
;
...
...
shopping-cart-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
View file @
6421e937
...
@@ -146,7 +146,7 @@ public enum ResponseResult {
...
@@ -146,7 +146,7 @@ public enum ResponseResult {
COLLAGE_ALREADY_EXIST
(
"49005"
,
"当前用户存在进行中的拼单订单"
),
COLLAGE_ALREADY_EXIST
(
"49005"
,
"当前用户存在进行中的拼单订单"
),
COLLAGE_NOT_OWNER
(
"49006"
,
"当前用户不是拼单发起人,无法操作"
),
COLLAGE_NOT_OWNER
(
"49006"
,
"当前用户不是拼单发起人,无法操作"
),
COLLAGE_GOOD_NOT_ONESELF
(
"49007"
,
"只能操作自己的商品"
),
COLLAGE_GOOD_NOT_ONESELF
(
"49007"
,
"只能操作自己的商品"
),
COLLAGE_MEMBER_ALREADY_ADD
(
"49008"
,
"用户
已经加入其他的拼单
"
),
COLLAGE_MEMBER_ALREADY_ADD
(
"49008"
,
"用户
存在进行中的拼单,无法再次加入
"
),
COLLAGE_CREATE_NOT_OUT_OF
(
"49009"
,
"拼单发起人不能退出拼单,请取消"
),
COLLAGE_CREATE_NOT_OUT_OF
(
"49009"
,
"拼单发起人不能退出拼单,请取消"
),
COLLAGE_MEMBER_NOT_ADD
(
"49010"
,
"用户未参加拼单,请确认"
),
COLLAGE_MEMBER_NOT_ADD
(
"49010"
,
"用户未参加拼单,请确认"
),
COLLAGE_MEMBER_NOT_CREATE
(
"49011"
,
"只有拼单发起者才能移除拼单人员,请确认"
),
COLLAGE_MEMBER_NOT_CREATE
(
"49011"
,
"只有拼单发起者才能移除拼单人员,请确认"
),
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/CollageOrderService.java
View file @
6421e937
...
@@ -77,7 +77,7 @@ public interface CollageOrderService {
...
@@ -77,7 +77,7 @@ public interface CollageOrderService {
* @param request
* @param request
* @return
* @return
*/
*/
BaseResponse
addCollageOrder
(
CollageOrderRequestVo
request
);
BaseResponse
addCollageOrder
(
CollageOrderRequestVo
request
)
throws
Exception
;
/**
/**
* 退出拼单订单
* 退出拼单订单
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CollageOrderServiceImpl.java
View file @
6421e937
...
@@ -2,7 +2,6 @@ package cn.freemud.service.impl;
...
@@ -2,7 +2,6 @@ package cn.freemud.service.impl;
import
cn.freemud.adapter.CollageOrderAdapter
;
import
cn.freemud.adapter.CollageOrderAdapter
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.entities.vo.CartGoods
;
import
cn.freemud.entities.vo.CollageOrderRequestVo
;
import
cn.freemud.entities.vo.CollageOrderRequestVo
;
import
cn.freemud.entities.vo.CollageOrderResponseVo
;
import
cn.freemud.entities.vo.CollageOrderResponseVo
;
import
cn.freemud.entities.vo.CustomerInfoVo
;
import
cn.freemud.entities.vo.CustomerInfoVo
;
...
@@ -10,8 +9,6 @@ import cn.freemud.enums.ResponseResult;
...
@@ -10,8 +9,6 @@ import cn.freemud.enums.ResponseResult;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.service.CollageOrderService
;
import
cn.freemud.service.CollageOrderService
;
import
cn.freemud.utils.ResponseUtil
;
import
cn.freemud.utils.ResponseUtil
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageMemberStateType
;
import
com.freemud.sdk.api.assortment.shoppingcart.constant.CollageMemberStateType
;
import
com.freemud.sdk.api.assortment.shoppingcart.domain.CollageMemberState
;
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
;
...
@@ -58,8 +55,10 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -58,8 +55,10 @@ public class CollageOrderServiceImpl implements CollageOrderService {
public
BaseResponse
queryCollageOrder
(
CollageOrderRequestVo
request
)
{
public
BaseResponse
queryCollageOrder
(
CollageOrderRequestVo
request
)
{
CollageOrderDto
collageOrderDto
=
this
.
collageOrderAdapter
.
convert2CollageOrderDto
(
request
);
CollageOrderDto
collageOrderDto
=
this
.
collageOrderAdapter
.
convert2CollageOrderDto
(
request
);
// 查询时需传入拼单创建人的userId,若上送字段为空时,默认查询当前登录人自己的拼单信息
// 查询时需传入拼单创建人的userId,若上送字段为空时,默认查询当前登录人自己的拼单信息
String
currentUserId
=
this
.
getUserIdBySessionId
(
request
.
getSessionId
());
if
(
StringUtils
.
isEmpty
(
request
.
getCreateCollageUserId
()))
{
if
(
StringUtils
.
isEmpty
(
request
.
getCreateCollageUserId
()))
{
collageOrderDto
.
setCreateCollageUserId
(
this
.
getUserIdBySessionId
(
request
.
getSessionId
()));
collageOrderDto
.
setCreateCollageUserId
(
currentUserId
);
collageOrderDto
.
setCurrentUserId
(
currentUserId
);
}
}
BaseResponse
<
CollageOrder
>
queryCollageOrderResponse
=
this
.
collageOrderBaseService
.
queryCollageOrder
(
collageOrderDto
);
BaseResponse
<
CollageOrder
>
queryCollageOrderResponse
=
this
.
collageOrderBaseService
.
queryCollageOrder
(
collageOrderDto
);
CollageOrder
collageOrder
=
queryCollageOrderResponse
.
getResult
();
CollageOrder
collageOrder
=
queryCollageOrderResponse
.
getResult
();
...
@@ -67,6 +66,11 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -67,6 +66,11 @@ public class CollageOrderServiceImpl implements CollageOrderService {
// SDK查询订单返回非成功code或返回结果订单信息为空时,返回前端异常信息
// SDK查询订单返回非成功code或返回结果订单信息为空时,返回前端异常信息
Optional
.
ofNullable
(
queryCollageOrderResponse
).
filter
(
resp
->
(
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
resp
.
getCode
())
&&
!
ObjectUtils
.
isEmpty
(
collageOrder
))).
orElseThrow
(()
->
new
ServiceException
(
ResponseResult
.
COLLAGE_NOT_EXIST
));
Optional
.
ofNullable
(
queryCollageOrderResponse
).
filter
(
resp
->
(
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
resp
.
getCode
())
&&
!
ObjectUtils
.
isEmpty
(
collageOrder
))).
orElseThrow
(()
->
new
ServiceException
(
ResponseResult
.
COLLAGE_NOT_EXIST
));
// 现在改为同时可查询自己发起以及参与的拼单所以查询到拼单信息后,后续查询需要使用拼单hash的三要素信息继续查询
collageOrderDto
.
setPartnerId
(
collageOrder
.
getPartnerId
());
collageOrderDto
.
setStoreId
(
collageOrder
.
getStoreId
());
collageOrderDto
.
setCreateCollageUserId
(
collageOrder
.
getCreateCollageUserId
());
CollageOrderResponseVo
collageOrderResponseVo
=
new
CollageOrderResponseVo
();
CollageOrderResponseVo
collageOrderResponseVo
=
new
CollageOrderResponseVo
();
// 订单基础信息
// 订单基础信息
collageOrderResponseVo
.
setOrder
(
collageOrder
);
collageOrderResponseVo
.
setOrder
(
collageOrder
);
...
@@ -74,11 +78,16 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -74,11 +78,16 @@ public class CollageOrderServiceImpl implements CollageOrderService {
collageOrderResponseVo
.
setLocked
(
this
.
collageOrderBaseService
.
isLockedCollageOrder
(
collageOrderDto
).
getResult
());
collageOrderResponseVo
.
setLocked
(
this
.
collageOrderBaseService
.
isLockedCollageOrder
(
collageOrderDto
).
getResult
());
// 订单参与人列表信息 参与人昵称头像等信息放入加购人状态锁redis对象中 userId : MemberState
// 订单参与人列表信息 参与人昵称头像等信息放入加购人状态锁redis对象中 userId : MemberState
List
<
CollageMemberState
>
collageMemberStateList
=
this
.
collageOrderBaseService
.
getCollageMemberState
(
collageOrderDto
).
getResult
();
List
<
CollageMemberState
>
collageMemberStateList
=
this
.
collageOrderBaseService
.
getCollageMemberState
(
collageOrderDto
).
getResult
();
if
(
null
!=
collageMemberStateList
&&
collageMemberStateList
.
size
()
>
0
&&
collageMemberStateList
.
stream
().
filter
(
member
->
member
.
getUserId
().
equals
(
currentUserId
)).
count
()
>
0
)
{
collageOrderResponseVo
.
setCollageMemberStateList
(
collageMemberStateList
);
collageOrderResponseVo
.
setCollageMemberStateList
(
collageMemberStateList
);
// 未加购完毕人数统计
// 未加购完毕人数统计
collageOrderResponseVo
.
setShoppingMemberNum
(
collageMemberStateList
.
stream
().
filter
(
member
->
member
.
getState
()
==
CollageMemberStateType
.
SHOPPING
.
getValue
()).
collect
(
Collectors
.
toList
()).
size
());
collageOrderResponseVo
.
setShoppingMemberNum
(
collageMemberStateList
.
stream
().
filter
(
member
->
member
.
getState
()
==
CollageMemberStateType
.
SHOPPING
.
getValue
()).
collect
(
Collectors
.
toList
()).
size
());
return
ResponseUtil
.
success
(
collageOrderResponseVo
);
return
ResponseUtil
.
success
(
collageOrderResponseVo
);
}
else
{
return
ResponseUtil
.
error
(
ResponseResult
.
COLLAGE_MEMBER_NOT_ADD
);
}
}
}
/**
/**
...
@@ -253,8 +262,8 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -253,8 +262,8 @@ public class CollageOrderServiceImpl implements CollageOrderService {
Optional
.
ofNullable
(
collageOrder
).
orElseThrow
(()
->
new
ServiceException
(
ResponseResult
.
COLLAGE_NOT_EXIST
));
Optional
.
ofNullable
(
collageOrder
).
orElseThrow
(()
->
new
ServiceException
(
ResponseResult
.
COLLAGE_NOT_EXIST
));
// 判断当前登陆用户是否参加过当前店铺其他的拼团
// 判断当前登陆用户是否参加过当前店铺其他的拼团
// 因为一个用户在一个
店铺下只能参加一个拼单,所以通过判断用户在店铺
下的拼单结束时间确认
// 因为一个用户在一个
商户下只能参加一个拼单,所以通过判断用户在商户
下的拼单结束时间确认
Boolean
flag
=
collageOrderBaseService
.
isInCollage
Store
MemberList
(
collageOrderDto
);
Boolean
flag
=
collageOrderBaseService
.
isInCollage
Partner
MemberList
(
collageOrderDto
);
if
(
flag
){
if
(
flag
){
throw
new
ServiceException
(
ResponseResult
.
COLLAGE_MEMBER_ALREADY_ADD
);
throw
new
ServiceException
(
ResponseResult
.
COLLAGE_MEMBER_ALREADY_ADD
);
}
}
...
@@ -266,7 +275,7 @@ public class CollageOrderServiceImpl implements CollageOrderService {
...
@@ -266,7 +275,7 @@ public class CollageOrderServiceImpl implements CollageOrderService {
String
collageMemberStateHashKey
=
collageOrderBaseService
.
genCollageMemberStateHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
(),
collageOrderDto
.
getCreateCollageUserId
());
String
collageMemberStateHashKey
=
collageOrderBaseService
.
genCollageMemberStateHashKey
(
collageOrderDto
.
getPartnerId
(),
collageOrderDto
.
getStoreId
(),
collageOrderDto
.
getCreateCollageUserId
());
collageOrderBaseService
.
addCollageMemberState
(
collageMemberStateHashKey
,
collageOrderDto
);
collageOrderBaseService
.
addCollageMemberState
(
collageMemberStateHashKey
,
collageOrderDto
);
// 设置用户在该
店铺的拼单结束时间
// 设置用户在该
商户下拼单参与列表记录
collageOrderBaseService
.
setCollageMemberAddTime
(
collageOrderDto
);
collageOrderBaseService
.
setCollageMemberAddTime
(
collageOrderDto
);
return
ResponseUtil
.
success
();
return
ResponseUtil
.
success
();
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartCollageServiceImpl.java
View file @
6421e937
...
@@ -47,7 +47,6 @@ import org.springframework.stereotype.Service;
...
@@ -47,7 +47,6 @@ import org.springframework.stereotype.Service;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collector
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
static
java
.
util
.
stream
.
Collectors
.
toList
;
import
static
java
.
util
.
stream
.
Collectors
.
toList
;
...
@@ -483,11 +482,28 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
...
@@ -483,11 +482,28 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
ShoppingCartCollageResponseVo
shoppingCartCollageResponseVo
;
ShoppingCartCollageResponseVo
shoppingCartCollageResponseVo
;
if
(
shoppingCartInfoRequestVo
.
getType
()
!=
null
&&
shoppingCartInfoRequestVo
.
getType
().
intValue
()
==
1
){
if
(
shoppingCartInfoRequestVo
.
getType
()
!=
null
&&
shoppingCartInfoRequestVo
.
getType
().
intValue
()
==
1
){
// 根据人员分类购物车
// 根据人员分类购物车
全员购物车
shoppingCartCollageResponseVo
=
splitByUser
(
shoppingCartGoodsResponseVo
,
crateUserId
,
partnerId
,
storeId
,
null
);
shoppingCartCollageResponseVo
=
splitByUser
(
shoppingCartGoodsResponseVo
,
crateUserId
,
partnerId
,
storeId
,
null
);
}
else
{
}
else
if
(
shoppingCartInfoRequestVo
.
getType
()
!=
null
&&
shoppingCartInfoRequestVo
.
getType
().
intValue
()
==
0
)
{
// 根据人员分类购物车
// 根据人员分类购物车
个人购物车
shoppingCartCollageResponseVo
=
splitByUser
(
shoppingCartGoodsResponseVo
,
crateUserId
,
partnerId
,
storeId
,
currentUserId
);
shoppingCartCollageResponseVo
=
splitByUser
(
shoppingCartGoodsResponseVo
,
crateUserId
,
partnerId
,
storeId
,
currentUserId
);
}
else
{
// 整合购物车
shoppingCartCollageResponseVo
=
new
ShoppingCartCollageResponseVo
();
BeanUtils
.
copyProperties
(
shoppingCartGoodsResponseVo
,
shoppingCartCollageResponseVo
);
List
<
CartGoods
>
cartGoods
=
shoppingCartGoodsResponseVo
.
getProducts
();
List
<
ShoppingCartCollageGoodsResponseVo
>
userProducts
=
new
ArrayList
<>();
ShoppingCartCollageGoodsResponseVo
shoppingCartCollageGoodsResponseVo
=
new
ShoppingCartCollageGoodsResponseVo
();
shoppingCartCollageGoodsResponseVo
.
setProducts
(
cartGoods
);
shoppingCartCollageGoodsResponseVo
.
setUid
(
currentUserId
);
shoppingCartCollageGoodsResponseVo
.
setUserName
(
currentUserInfoVo
.
getNickName
());
shoppingCartCollageGoodsResponseVo
.
setPhotoUrl
(
currentUserInfoVo
.
getPhotoUrl
());
shoppingCartCollageGoodsResponseVo
.
setPackPrice
(
shoppingCartGoodsResponseVo
.
getNewPackAmount
());
shoppingCartCollageGoodsResponseVo
.
setProductsCount
(
shoppingCartGoodsResponseVo
.
getProductsCount
());
shoppingCartCollageGoodsResponseVo
.
setTotalAmount
(
shoppingCartGoodsResponseVo
.
getTotalAmount
());
shoppingCartCollageGoodsResponseVo
.
setOriginalTotalAmount
(
shoppingCartGoodsResponseVo
.
getOriginalTotalAmount
());
userProducts
.
add
(
shoppingCartCollageGoodsResponseVo
);
shoppingCartCollageResponseVo
.
setUserProducts
(
userProducts
);
}
}
return
ResponseUtil
.
success
(
shoppingCartCollageResponseVo
);
return
ResponseUtil
.
success
(
shoppingCartCollageResponseVo
);
...
@@ -1061,7 +1077,7 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
...
@@ -1061,7 +1077,7 @@ public class ShoppingCartCollageServiceImpl extends AbstractShoppingCartImpl imp
.
partnerId
(
partnerId
)
.
partnerId
(
partnerId
)
.
storeId
(
storeId
)
.
storeId
(
storeId
)
.
build
();
.
build
();
Boolean
flag
=
collageOrderBaseService
.
isInCollage
Store
MemberList
(
collageOrderDto
);
Boolean
flag
=
collageOrderBaseService
.
isInCollage
Partner
MemberList
(
collageOrderDto
);
if
(
flag
){
if
(
flag
){
throw
new
ServiceException
(
ResponseResult
.
COLLAGE_ALREADY_CHOOSE
);
throw
new
ServiceException
(
ResponseResult
.
COLLAGE_ALREADY_CHOOSE
);
}
}
...
...
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