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
fe6e7784
Commit
fe6e7784
authored
May 31, 2021
by
zhiheng.zhang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
b934a25f
65a73f45
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
130 additions
and
3 deletions
+130
-3
order-application-service/src/main/java/cn/freemud/entities/dto/CouponCodeVerificationDto.java
+15
-0
order-application-service/src/main/java/cn/freemud/entities/dto/QueryOrdersResponseDto.java
+9
-0
order-application-service/src/main/java/cn/freemud/service/coupon/impl/PlatformCouponRelationServiceImpl.java
+3
-1
shopping-cart-application-service/src/main/java/cn/freemud/demo/controller/ShoppingCartDemoController.java
+42
-1
shopping-cart-application-service/src/main/java/cn/freemud/demo/entities/bo/goods/list/ListCartGoodsBO.java
+9
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/ShoppingCartInfoRequestVo.java
+10
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+42
-1
No files found.
order-application-service/src/main/java/cn/freemud/entities/dto/CouponCodeVerificationDto.java
View file @
fe6e7784
...
...
@@ -40,6 +40,21 @@ public class CouponCodeVerificationDto extends CouponCodeBaseDto {
private
String
memberId
;
/**
* 订单金额:订单总金额(未使用优惠时)
*/
private
Long
orderTotalAmount
;
/**
* 实付金额:支付时的合计金额
*/
private
Long
orderPaymentAmount
;
/**
* 优惠金额:餐饮订单中的【商家优惠】金额
*/
private
Long
orderDiscountAmount
;
/**
* 核销交易信息
*/
private
List
<
CouponCodeVerificationTransDto
>
transactions
;
...
...
order-application-service/src/main/java/cn/freemud/entities/dto/QueryOrdersResponseDto.java
View file @
fe6e7784
...
...
@@ -74,6 +74,12 @@ public class QueryOrdersResponseDto {
* 总金额
*/
private
Long
amount
;
/**
* 订单原始金额,单位分
*/
private
BigDecimal
originalAmount
;
/**
* 吧台桌号
*/
...
...
@@ -519,6 +525,9 @@ public class QueryOrdersResponseDto {
* 自定义对象
*/
private
String
addInfo
;
//商家优惠
private
Long
shopDiscountAmount
;
}
}
}
...
...
order-application-service/src/main/java/cn/freemud/service/coupon/impl/PlatformCouponRelationServiceImpl.java
View file @
fe6e7784
...
...
@@ -38,7 +38,6 @@ import com.alibaba.fastjson.JSONObject;
import
com.freemud.application.sdk.api.couponcenter.offline.service.OfflineCouponSdkService
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
com.freemud.application.sdk.api.log.ThirdPartyLog
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.service.EmailAlertService
;
import
com.freemud.application.sdk.api.storecenter.response.StoreResponse
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse
;
...
...
@@ -104,6 +103,9 @@ public class PlatformCouponRelationServiceImpl implements CouponRelationService
||
OrderAccountType
.
PRODUCT_COUPON
.
getCode
().
equals
(
accountBean
.
getType
())
||
OrderAccountType
.
DISCOUNT_COUPON
.
getCode
().
equals
(
accountBean
.
getType
()))
{
CouponCodeVerificationDto
couponCodeVerificationDto
=
couponAdapter
.
convert2CouponCodeVerificationDto
(
activityChannelEnum
,
accountBean
.
getAccountId
(),
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
orderBean
.
getShopId
(),
orderBean
.
getUserId
(),
products
,
accountBean
.
getPrice
().
intValue
(),
couponReqType
);
couponCodeVerificationDto
.
setOrderTotalAmount
(
orderBean
.
getOriginalAmount
()==
null
?
0L
:
orderBean
.
getOriginalAmount
().
longValue
());
couponCodeVerificationDto
.
setOrderPaymentAmount
(
orderBean
.
getAmount
());
couponCodeVerificationDto
.
setOrderDiscountAmount
(
Math
.
abs
(
orderBean
.
getAccountList
().
stream
().
mapToLong
(
account
->
account
.
getShopDiscountAmount
()==
null
?
0L
:
account
.
getShopDiscountAmount
()).
sum
()));
// 核销券新增参数:组织机构ID
couponCodeVerificationDto
.
setChannel_codes
(
storeService
.
getOrgIdsArr
(
orderBean
.
getCompanyId
(),
orderBean
.
getShopId
()));
try
{
...
...
shopping-cart-application-service/src/main/java/cn/freemud/demo/controller/ShoppingCartDemoController.java
View file @
fe6e7784
...
...
@@ -61,6 +61,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -204,14 +205,16 @@ public class ShoppingCartDemoController {
premiumRequest
.
setShopId
(
listCartGoodsBO
.
getShopId
());
premiumRequest
.
setVersion
(
listCartGoodsBO
.
getVersion
());
BaseResponse
<
PremiumExchangeResponseVo
>
premiumExchangeResponseVoBaseResponse
=
SDKCommonBaseContextWare
.
getBean
(
ShoppingCartNewServiceImpl
.
class
).
premiumExchange
(
premiumRequest
);
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
=
null
;
if
(
premiumExchangeResponseVoBaseResponse
!=
null
&&
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
premiumExchangeResponseVoBaseResponse
.
getCode
())
&&
premiumExchangeResponseVoBaseResponse
.
getResult
()
!=
null
&&
CollectionUtils
.
isNotEmpty
(
premiumExchangeResponseVoBaseResponse
.
getResult
().
getProducts
())){
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
products
=
premiumExchangeResponseVoBaseResponse
.
getResult
().
getProducts
();
List
<
String
>
sendGoodsIdList
=
listCartGoodsBO
.
getSendGoods
().
stream
().
map
(
p
->
p
.
getGoodsId
()).
collect
(
toList
());
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
=
products
.
stream
().
filter
(
p
->
sendGoodsIdList
.
contains
(
p
.
getSkuId
())
||
sendGoodsIdList
.
contains
(
p
.
getSpuId
())).
collect
(
toList
());
chooseSendGoodList
=
products
.
stream
().
filter
(
p
->
sendGoodsIdList
.
contains
(
p
.
getSkuId
())
||
sendGoodsIdList
.
contains
(
p
.
getSpuId
())).
collect
(
toList
());
long
sendGoodsAmount
=
chooseSendGoodList
.
stream
().
mapToLong
(
PremiumExchangeResponseVo
.
PremiumExchangeProduct
::
getNowPrice
).
sum
();
baseListCartGoodsVO
.
setSendGoodsAmount
(
sendGoodsAmount
);
}
updateForPopupWindow
(
baseListCartGoodsVO
,
premiumExchangeResponseVoBaseResponse
.
getResult
().
getShowType
(),
chooseSendGoodList
,
baseRequestDTO
.
getSendGoods
());
}
// 添加购物车商品总价和加价购商品总价,现在是自己计算,后面需要优化为促销计算, 这段要删除
...
...
@@ -219,6 +222,44 @@ public class ShoppingCartDemoController {
}
public
void
updateForPopupWindow
(
BaseListCartGoodsVO
baseListCartGoodsVO
,
Integer
showType
,
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
,
List
<
ListCartGoodsBO
.
SendGoods
>
sendGoods
)
{
if
(
Integer
.
valueOf
(
"5"
).
equals
(
showType
)
&&
!
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
chooseSendGoodList
)){
chooseSendGoodList
.
forEach
(
good
->{
ListCartGoodsBO
.
SendGoods
first
=
null
;
if
(
sendGoods
!=
null
)
{
first
=
sendGoods
.
stream
().
filter
(
a
->
a
.
getGoodsId
().
equals
(
good
.
getPid
())).
findFirst
().
orElseGet
(
null
);
}
CartGoods
cartGoods
=
new
CartGoods
();
cartGoods
.
setSpuId
(
good
.
getSpuId
());
cartGoods
.
setSkuId
(
good
.
getSkuId
());
cartGoods
.
setSkuName
(
good
.
getSkuName
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setFinalPrice
(
good
.
getNowPrice
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setAmount
(
good
.
getNowPrice
());
cartGoods
.
setPhotoUrl
(
good
.
getPicture
());
cartGoods
.
setGoodsId
(
good
.
getPid
());
cartGoods
.
setName
(
good
.
getName
());
cartGoods
.
setSpuName
(
good
.
getSpuName
());
cartGoods
.
setQty
(
first
==
null
?
1
:
first
.
getQty
());
if
(
first
!=
null
)
{
cartGoods
.
setActivityCode
(
first
.
getActivityCode
());
if
(!
CollectionUtils
.
isEmpty
(
first
.
getAttributes
())){
List
<
CartGoods
.
CartGoodsExtra
>
extra
=
new
ArrayList
();
first
.
getAttributes
().
forEach
(
attribute
->
{
CartGoods
.
CartGoodsExtra
goodsExtra
=
new
CartGoods
.
CartGoodsExtra
();
goodsExtra
.
setAttributeId
(
attribute
.
getAttributeId
());
goodsExtra
.
setAttributeName
(
attribute
.
getAttributeValue
());
extra
.
add
(
goodsExtra
);
});
cartGoods
.
setExtra
(
extra
);
}
}
baseListCartGoodsVO
.
getProducts
().
add
(
cartGoods
);
});
}
}
/**
* 获取购物车均摊详情,点 "去支付" 时调用
...
...
shopping-cart-application-service/src/main/java/cn/freemud/demo/entities/bo/goods/list/ListCartGoodsBO.java
View file @
fe6e7784
...
...
@@ -132,6 +132,15 @@ public class ListCartGoodsBO extends BaseBo {
@NotNull
private
Integer
qty
;
private
String
activityCode
;
private
List
<
Attribute
>
attributes
;
}
@Data
public
final
static
class
Attribute
{
private
String
attributeId
;
private
String
attributeValue
;
}
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/ShoppingCartInfoRequestVo.java
View file @
fe6e7784
...
...
@@ -147,6 +147,16 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo {
@NotNull
private
Integer
qty
;
private
String
activityCode
;
private
List
<
Attribute
>
attributes
;
}
@Data
public
final
static
class
Attribute
{
private
String
attributeId
;
private
String
attributeValue
;
}
@Data
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
fe6e7784
...
...
@@ -760,14 +760,16 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
request
.
setShopId
(
shoppingCartInfoRequestVo
.
getShopId
());
request
.
setVersion
(
shoppingCartInfoRequestVo
.
getVersion
());
BaseResponse
<
PremiumExchangeResponseVo
>
premiumExchangeResponseVoBaseResponse
=
premiumExchange
(
request
);
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
=
null
;
if
(
premiumExchangeResponseVoBaseResponse
!=
null
&&
ResponseResult
.
SUCCESS
.
getCode
().
equals
(
premiumExchangeResponseVoBaseResponse
.
getCode
())
&&
premiumExchangeResponseVoBaseResponse
.
getResult
()
!=
null
&&
CollectionUtils
.
isNotEmpty
(
premiumExchangeResponseVoBaseResponse
.
getResult
().
getProducts
())){
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
products
=
premiumExchangeResponseVoBaseResponse
.
getResult
().
getProducts
();
List
<
String
>
sendGoodsIdList
=
shoppingCartInfoRequestVo
.
getSendGoods
().
stream
().
map
(
p
->
p
.
getGoodsId
()).
collect
(
toList
());
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
=
products
.
stream
().
filter
(
p
->
sendGoodsIdList
.
contains
(
p
.
getSkuId
())
||
sendGoodsIdList
.
contains
(
p
.
getSpuId
())).
collect
(
toList
());
chooseSendGoodList
=
products
.
stream
().
filter
(
p
->
sendGoodsIdList
.
contains
(
p
.
getSkuId
())
||
sendGoodsIdList
.
contains
(
p
.
getSpuId
())).
collect
(
toList
());
long
sendGoodsAmount
=
chooseSendGoodList
.
stream
().
mapToLong
(
PremiumExchangeResponseVo
.
PremiumExchangeProduct
::
getNowPrice
).
sum
();
shoppingCartGoodsResponseVo
.
setSendGoodsAmount
(
sendGoodsAmount
);
}
updateForPopupWindow
(
shoppingCartGoodsResponseVo
,
premiumExchangeResponseVoBaseResponse
.
getResult
().
getShowType
(),
chooseSendGoodList
,
shoppingCartInfoRequestVo
.
getSendGoods
());
}
// 添加购物车商品总价和加价购商品总价,现在是自己计算,后面需要优化为促销计算, 这段要删除
...
...
@@ -780,6 +782,45 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return
ResponseUtil
.
success
(
shoppingCartGoodsResponseVo
);
}
public
void
updateForPopupWindow
(
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
,
Integer
showType
,
List
<
PremiumExchangeResponseVo
.
PremiumExchangeProduct
>
chooseSendGoodList
,
List
<
ShoppingCartInfoRequestVo
.
SendGoods
>
sendGoods
)
{
if
(
Integer
.
valueOf
(
"5"
).
equals
(
showType
)
&&
!
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
chooseSendGoodList
)){
chooseSendGoodList
.
forEach
(
good
->{
ShoppingCartInfoRequestVo
.
SendGoods
first
=
null
;
if
(
sendGoods
!=
null
)
{
first
=
sendGoods
.
stream
().
filter
(
a
->
a
.
getGoodsId
().
equals
(
good
.
getPid
())).
findFirst
().
orElseGet
(
null
);
}
CartGoods
cartGoods
=
new
CartGoods
();
cartGoods
.
setSpuId
(
good
.
getSpuId
());
cartGoods
.
setSkuId
(
good
.
getSkuId
());
cartGoods
.
setSkuName
(
good
.
getSkuName
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setFinalPrice
(
good
.
getNowPrice
());
cartGoods
.
setOriginalAmount
(
good
.
getOriginalPrice
());
cartGoods
.
setAmount
(
good
.
getNowPrice
());
cartGoods
.
setPhotoUrl
(
good
.
getPicture
());
cartGoods
.
setGoodsId
(
good
.
getPid
());
cartGoods
.
setName
(
good
.
getName
());
cartGoods
.
setSpuName
(
good
.
getSpuName
());
cartGoods
.
setQty
(
first
==
null
?
1
:
first
.
getQty
());
if
(
first
!=
null
)
{
cartGoods
.
setActivityCode
(
first
.
getActivityCode
());
if
(!
CollectionUtils
.
isEmpty
(
first
.
getAttributes
())){
List
<
CartGoods
.
CartGoodsExtra
>
extra
=
new
ArrayList
();
first
.
getAttributes
().
forEach
(
attribute
->
{
CartGoods
.
CartGoodsExtra
goodsExtra
=
new
CartGoods
.
CartGoodsExtra
();
goodsExtra
.
setAttributeId
(
attribute
.
getAttributeId
());
goodsExtra
.
setAttributeName
(
attribute
.
getAttributeValue
());
extra
.
add
(
goodsExtra
);
});
cartGoods
.
setExtra
(
extra
);
}
}
shoppingCartGoodsResponseVo
.
getProducts
().
add
(
cartGoods
);
});
}
}
private
void
convert2CartGoods
(
CartGoods
cartGoods
,
GetProductsVo
productInfo
)
{
cartGoods
.
setCartGoodsUid
(
UUID
.
randomUUID
().
toString
());
Integer
goodsType
=
GoodsTypeEnum
.
SPU_GOODS
.
getGoodsType
();
...
...
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