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
7d9b62b1
Commit
7d9b62b1
authored
Sep 28, 2020
by
徐康
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
麦咖啡套餐定制属性和加料
parent
ecf161fc
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
264 additions
and
58 deletions
+264
-58
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/adapter/OrderSdkAdapter.java
+161
-0
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/CreateOrderProductRequest.java
+2
-0
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/OrderProductAddInfoDto.java
+2
-0
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/service/OrderCenterSdkService.java
+10
-0
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/service/order/OrderCenterSdkServiceImpl.java
+24
-0
order-application-service/pom.xml
+1
-1
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+51
-27
order-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
+4
-0
order-application-service/src/main/java/cn/freemud/enums/ProductType.java
+3
-1
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
+0
-25
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+2
-2
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/MCCafeOrderCenterSdkServiceImpl.java
+1
-1
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/ProductTypeEnum.java
+3
-1
No files found.
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/adapter/OrderSdkAdapter.java
View file @
7d9b62b1
...
@@ -265,6 +265,106 @@ public class OrderSdkAdapter {
...
@@ -265,6 +265,106 @@ public class OrderSdkAdapter {
return
request
;
return
request
;
}
}
public
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
.
create
.
CreateOrderRequest
convent2NEWCreateMCCafeOrderRequest
(
BaseCreateOrderRequest
requestVO
)
{
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
.
create
.
CreateOrderRequest
request
=
new
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
.
create
.
CreateOrderRequest
();
request
.
setPartnerId
(
requestVO
.
getCompanyId
());
request
.
setStoreId
(
requestVO
.
getShopId
());
//1:线上支付 2:线下支付
request
.
setPayType
(
1
);
request
.
setUserId
(
requestVO
.
getUserId
());
request
.
setUserName
(
requestVO
.
getUserName
());
request
.
setStoreName
(
requestVO
.
getShopName
());
request
.
setPayTime
(
requestVO
.
getPayTime
());
request
.
setThirdStoreId
(
requestVO
.
getThirdShopId
());
request
.
setThirdOrderCode
(
requestVO
.
getThirdOrderCode
());
request
.
setPayChannelType
(
requestVO
.
getPayChannelType
());
if
(
requestVO
.
getOrderStatus
()
!=
null
)
{
request
.
setOrderState
(
getNewOrderStatus
(
requestVO
.
getOrderStatus
().
getCode
()));
}
if
(
requestVO
.
getPayStatus
()
!=
null
)
{
request
.
setPayState
(
requestVO
.
getPayStatus
().
getCode
());
}
if
(
requestVO
.
getPayChannel
()
!=
null
)
{
request
.
setPayChannel
(
requestVO
.
getPayChannel
());
}
if
(
requestVO
.
getPayChannelName
()
!=
null
)
{
request
.
setPayChannelName
(
requestVO
.
getPayChannelName
());
}
if
(
requestVO
.
getGmtExpect
()
!=
null
&&
requestVO
.
getGmtExpect
()
!=
0
)
{
request
.
setExpectTime
(
new
Date
(
requestVO
.
getGmtExpect
()));
}
//订单原始金额,单位分
Long
originalAmount
=
0L
;
//用户在界面上看到的支付金额
request
.
setSettlementAmount
(
requestVO
.
getAmount
());
//实际支付现金金额,扣除支付自生优惠,单位分
request
.
setActualPayAmount
(
requestVO
.
getAmount
());
if
(
requestVO
.
getOrderClient
()
!=
null
){
request
.
setOrderClient
(
requestVO
.
getOrderClient
().
getIndex
());
}
else
{
request
.
setOrderClient
(
StringUtils
.
isEmpty
(
requestVO
.
getSource
())?
OrderClientType
.
SAAS
.
getIndex
():
getNewOrderClient
(
requestVO
.
getSource
()));
}
//订单业务类型 1:普通订单 2:虚拟订单
request
.
setBizType
(
1
);
request
.
setNote
(
requestVO
.
getRemark
());
request
.
setOrderType
(
getNewOrderType
(
requestVO
.
getOrderType
(),
requestVO
.
getGmtExpect
()));
request
.
setBarCounter
(
requestVO
.
getBarCounter
());
//商品信息转换
List
<
OrderItemCreateReq
>
orderItemList
=
new
ArrayList
<>();
//优惠信息转换
List
<
OrderSettlementCreateReq
>
orderSettlementCreateReqList
=
new
ArrayList
<>();
//结算信息转换
List
<
OrderCostCreateReq
>
orderCostCreateReqs
=
new
ArrayList
<>();
// 更新订单商品详情信息
originalAmount
=
updateMCCafeOrderItemsAndSettlements
(
orderItemList
,
orderSettlementCreateReqList
,
orderCostCreateReqs
,
requestVO
.
getProducts
(),
requestVO
.
getAccounts
(),
requestVO
.
getCompanyId
());
//商品信息赋值
request
.
setOrderItemList
(
orderItemList
);
//订单原始金额,单位分
request
.
setOriginalAmount
(
originalAmount
);
//结算信息赋值
request
.
setOrderCostDetailList
(
orderCostCreateReqs
);
//商品优惠信息赋值
request
.
setOrderSettlementDetailList
(
orderSettlementCreateReqList
);
//收货人信息转换
List
<
DeliveryContactInfoCreateReq
>
deliveryContactInfoList
=
new
ArrayList
<
DeliveryContactInfoCreateReq
>();
DeliveryContactInfoCreateReq
deliveryContactInfoCreateReq
=
new
DeliveryContactInfoCreateReq
();
//地址类型 1:订单地址 2:售后单地址 3:配送员信息
deliveryContactInfoCreateReq
.
setRelateObjectType
(
1
);
//联系方式类型 1:取件 2:收件
deliveryContactInfoCreateReq
.
setInfoType
(
1
);
deliveryContactInfoCreateReq
.
setContactsName
(
requestVO
.
getUserName
());
deliveryContactInfoCreateReq
.
setMobile
(
requestVO
.
getPhone
());
deliveryContactInfoCreateReq
.
setLatitude
(
StringUtils
.
isBlank
(
requestVO
.
getLatitude
())
?
null
:
new
BigDecimal
(
requestVO
.
getLatitude
()));
deliveryContactInfoCreateReq
.
setLongitude
(
StringUtils
.
isBlank
(
requestVO
.
getLongitude
())
?
null
:
new
BigDecimal
(
requestVO
.
getLongitude
()));
deliveryContactInfoCreateReq
.
setAddressDetail
(
requestVO
.
getAddress
());
deliveryContactInfoCreateReq
.
setProvince
(
requestVO
.
getProvince
());
deliveryContactInfoCreateReq
.
setCity
(
requestVO
.
getCity
());
deliveryContactInfoCreateReq
.
setRegion
(
requestVO
.
getRegion
());
JSONObject
deliveryExtInfo
=
new
JSONObject
();
deliveryExtInfo
.
put
(
"receiveId"
,
requestVO
.
getReceiveId
());
deliveryContactInfoCreateReq
.
setExtInfo
(
deliveryExtInfo
.
toJSONString
());
deliveryContactInfoList
.
add
(
deliveryContactInfoCreateReq
);
//第三方配送信息
getThirdDeliveryInfo
(
deliveryContactInfoList
,
requestVO
.
getAddInfo
());
request
.
setDeliveryContactInfoList
(
deliveryContactInfoList
);
//保存门店渠道信息
request
.
setOrderExtended
(
requestVO
.
getOrderExtended
());
request
.
setOperator
(
requestVO
.
getOperator
());
request
.
setAppId
(
requestVO
.
getAppId
());
// 扩展字段(第三方商品分类编号)
if
(
null
!=
requestVO
&&
null
!=
requestVO
.
getOtherInfo
())
{
request
.
setExtInfo
(
JSONObject
.
toJSONString
(
requestVO
.
getOtherInfo
()));
}
//订单重量
Double
orderWeight
=
sumOrderWeight
(
requestVO
.
getProducts
());
request
.
setWeight
(
orderWeight
);
return
request
;
}
public
CreateFatherSonOrderReq
convent2NEWCreateFatherSonOrderRequest
(
CreateFatherSonOrderRequest
request
)
{
public
CreateFatherSonOrderReq
convent2NEWCreateFatherSonOrderRequest
(
CreateFatherSonOrderRequest
request
)
{
CreateFatherSonOrderReq
createFatherSonOrderReq
=
new
CreateFatherSonOrderReq
();
CreateFatherSonOrderReq
createFatherSonOrderReq
=
new
CreateFatherSonOrderReq
();
...
@@ -754,6 +854,16 @@ public class OrderSdkAdapter {
...
@@ -754,6 +854,16 @@ public class OrderSdkAdapter {
String
partnerProductId
=
orderItem
.
getProductId
()
+
"_"
+
orderItem
.
getProductSeq
();
String
partnerProductId
=
orderItem
.
getProductId
()
+
"_"
+
orderItem
.
getProductSeq
();
List
<
OrderItemResp
>
comboProducts
=
orderItemList
.
stream
().
filter
(
item
->
ObjectUtils
.
equals
(
partnerProductId
,
item
.
getParentProductId
())).
collect
(
Collectors
.
toList
());
List
<
OrderItemResp
>
comboProducts
=
orderItemList
.
stream
().
filter
(
item
->
ObjectUtils
.
equals
(
partnerProductId
,
item
.
getParentProductId
())).
collect
(
Collectors
.
toList
());
comboProducts
.
forEach
(
combo
->
productBean
.
getComboProduct
().
add
(
getOldOrderProduct
(
orderSettlementResps
,
combo
)));
comboProducts
.
forEach
(
combo
->
productBean
.
getComboProduct
().
add
(
getOldOrderProduct
(
orderSettlementResps
,
combo
)));
if
(
CollectionUtils
.
isNotEmpty
(
productBean
.
getComboProduct
()))
{
for
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
comboProductBean
:
productBean
.
getComboProduct
())
{
if
(
ObjectUtils
.
equals
(
ProductTypeEnum
.
MATERIAL_PRODUCT
.
getCode
(),
comboProductBean
.
getProductType
()))
{
comboProductBean
.
setMaterialProduct
(
new
ArrayList
<>());
String
addProductId
=
comboProductBean
.
getProductId
()
+
"_"
+
comboProductBean
.
getOpid
();
List
<
OrderItemResp
>
materialProducts
=
orderItemList
.
stream
().
filter
(
item
->
ObjectUtils
.
equals
(
addProductId
,
item
.
getParentProductId
())).
collect
(
Collectors
.
toList
());
materialProducts
.
forEach
(
material
->
comboProductBean
.
getMaterialProduct
().
add
(
getOldOrderProduct
(
new
ArrayList
<>(),
material
)));
}
}
}
}
}
if
(
ObjectUtils
.
equals
(
ProductTypeEnum
.
MATERIAL_PRODUCT
.
getCode
(),
orderItem
.
getProductType
()))
{
if
(
ObjectUtils
.
equals
(
ProductTypeEnum
.
MATERIAL_PRODUCT
.
getCode
(),
orderItem
.
getProductType
()))
{
// 获取加料子商品列表
// 获取加料子商品列表
...
@@ -2485,6 +2595,54 @@ public class OrderSdkAdapter {
...
@@ -2485,6 +2595,54 @@ public class OrderSdkAdapter {
return
originalAmount
;
return
originalAmount
;
}
}
private
Long
updateMCCafeOrderItemsAndSettlements
(
List
<
OrderItemCreateReq
>
orderItemList
,
List
<
OrderSettlementCreateReq
>
orderSettlementCreateReqList
,
List
<
OrderCostCreateReq
>
orderCostCreateReqs
,
List
<
CreateOrderProductRequest
>
products
,
List
<
CreateOrderAccountRequest
>
accounts
,
String
partnerId
)
{
Long
originalAmount
=
0L
;
// 更新订单费用信息
originalAmount
=
convertCreateOrderCost
(
originalAmount
,
orderSettlementCreateReqList
,
orderCostCreateReqs
,
accounts
);
// 更新商品属性信息
if
(
CollectionUtils
.
isEmpty
(
products
))
{
return
originalAmount
;
}
Integer
index
=
1
;
for
(
CreateOrderProductRequest
productRequest
:
products
)
{
// 普通商品 订单转换
productRequest
.
setOpid
(
index
);
originalAmount
+=
updateOrderItemAndSettlement
(
orderItemList
,
orderSettlementCreateReqList
,
productRequest
,
partnerId
,
""
,
false
);
// 如果是套餐商品,需要转换当前商品行子集ComboProduct&GroupProduct(固定商品、可选商品)
if
(
ObjectUtils
.
equals
(
ProductTypeEnum
.
SETMEAL_PRODUCT
.
getCode
(),
productRequest
.
getProductType
())
||
ObjectUtils
.
equals
(
ProductTypeEnum
.
SETMEAL_UPPRICE_PRODUCT
.
getCode
(),
productRequest
.
getProductType
()))
{
// 父类商品productId=productId+seq
String
parentProductId
=
productRequest
.
getProductId
()
+
"_"
+
index
;
if
(
CollectionUtils
.
isNotEmpty
(
productRequest
.
getComboProduct
()))
{
Integer
comboIndex
=
1
;
for
(
CreateOrderProductRequest
combo
:
productRequest
.
getComboProduct
())
{
combo
.
setOpid
(
comboIndex
);
updateOrderItemAndSettlement
(
orderItemList
,
orderSettlementCreateReqList
,
combo
,
partnerId
,
parentProductId
,
false
);
if
(
CollectionUtils
.
isNotEmpty
(
combo
.
getMaterialProduct
()))
{
String
addProductId
=
productRequest
.
getProductId
()
+
"_"
+
comboIndex
;
for
(
CreateOrderProductRequest
material
:
combo
.
getMaterialProduct
())
{
material
.
setSpecification
(
material
.
getProductId
());
material
.
setSpecificationName
(
material
.
getProductName
());
updateOrderItemAndSettlement
(
orderItemList
,
orderSettlementCreateReqList
,
material
,
partnerId
,
addProductId
,
true
);
}
}
comboIndex
++;
}
}
}
else
if
(
CollectionUtils
.
isNotEmpty
(
productRequest
.
getMaterialProduct
()))
{
// 父类商品productId=productId+seq
String
addProductId
=
productRequest
.
getProductId
()
+
"_"
+
index
;
for
(
CreateOrderProductRequest
material:
productRequest
.
getMaterialProduct
()){
material
.
setSpecification
(
material
.
getProductId
());
material
.
setSpecificationName
(
material
.
getProductName
());
updateOrderItemAndSettlement
(
orderItemList
,
orderSettlementCreateReqList
,
material
,
partnerId
,
addProductId
,
true
);
}
}
index
++;
}
return
originalAmount
;
}
/**
/**
* 更新当前商品行,订单商品明细和优惠明细
* 更新当前商品行,订单商品明细和优惠明细
*
*
...
@@ -2605,6 +2763,9 @@ public class OrderSdkAdapter {
...
@@ -2605,6 +2763,9 @@ public class OrderSdkAdapter {
extInfo
.
setThirdCensusCategoryId
(
product
.
getClassificationId
());
extInfo
.
setThirdCensusCategoryId
(
product
.
getClassificationId
());
extInfo
.
setThirdCensusCategoryName
(
product
.
getClassificationName
());
extInfo
.
setThirdCensusCategoryName
(
product
.
getClassificationName
());
}
}
if
(
CollectionUtils
.
isNotEmpty
(
product
.
getSpecialCodes
()))
{
extInfo
.
setSpecialCodes
(
product
.
getSpecialCodes
());
}
if
(
0
!=
product
.
getTax
()){
if
(
0
!=
product
.
getTax
()){
extInfo
.
setTax
(
product
.
getTax
());
extInfo
.
setTax
(
product
.
getTax
());
}
}
...
...
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/CreateOrderProductRequest.java
View file @
7d9b62b1
...
@@ -176,4 +176,6 @@ public class CreateOrderProductRequest extends BaseConfig {
...
@@ -176,4 +176,6 @@ public class CreateOrderProductRequest extends BaseConfig {
private
double
tax
;
private
double
tax
;
private
String
taxId
;
private
String
taxId
;
private
List
<
String
>
specialCodes
;
}
}
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/OrderProductAddInfoDto.java
View file @
7d9b62b1
...
@@ -70,4 +70,6 @@ public class OrderProductAddInfoDto extends BaseConfig {
...
@@ -70,4 +70,6 @@ public class OrderProductAddInfoDto extends BaseConfig {
private
double
tax
;
private
double
tax
;
private
String
taxId
;
private
String
taxId
;
private
List
<
String
>
specialCodes
;
}
}
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/service/OrderCenterSdkService.java
View file @
7d9b62b1
...
@@ -43,6 +43,16 @@ public interface OrderCenterSdkService {
...
@@ -43,6 +43,16 @@ public interface OrderCenterSdkService {
QueryOrdersResponse
queryOrders
(
QueryOrdersRequest
queryOrdersRequest
);
QueryOrdersResponse
queryOrders
(
QueryOrdersRequest
queryOrdersRequest
);
/**
/**
* 根据订单编号查询订单信息 C端
*/
QueryOrderByIdResponse
queryMCCafeOrderById
(
BaseQueryOrderRequest
baseQueryOrderRequest
);
/**
* 条件查询订单列表 C端
*/
QueryOrdersResponse
queryMCCafeOrders
(
QueryOrdersRequest
queryOrdersRequest
);
/**
* 删除订单 C端
* 删除订单 C端
*/
*/
BaseOrderResponse
deleteOrder
(
DeleteOrderRequest
deleteOrderRequest
);
BaseOrderResponse
deleteOrder
(
DeleteOrderRequest
deleteOrderRequest
);
...
...
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/service/order/OrderCenterSdkServiceImpl.java
View file @
7d9b62b1
...
@@ -464,6 +464,30 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService {
...
@@ -464,6 +464,30 @@ public class OrderCenterSdkServiceImpl implements OrderCenterSdkService {
}
}
@Override
@Override
public
QueryOrderByIdResponse
queryMCCafeOrderById
(
BaseQueryOrderRequest
request
)
{
QueryByCodeResponse
orderInfo
=
orderSdkService
.
getOrderInfo
(
request
.
getOrderClient
(),
request
.
getOrderId
(),
request
.
getThirdOrderCode
(),
request
.
getWithOperationHistory
(),
request
.
getTrackingNo
());
QueryOrderByIdResponse
response
=
new
QueryOrderByIdResponse
();
if
(
orderInfo
==
null
||
orderInfo
.
getResult
()
==
null
)
{
return
response
;
}
response
.
setErrcode
(
Integer
.
parseInt
(
orderInfo
.
getCode
()));
response
.
setErrmsg
(
orderInfo
.
getMessage
());
if
(
orderInfo
.
getResult
().
getOrderCode
()
==
null
||
""
.
equals
(
orderInfo
.
getResult
().
getOrderCode
()))
{
return
response
;
}
QueryOrderByIdResponse
orderByIdResponse
=
orderSdkAdapter
.
convent2QueryOrderByIdResponse
(
orderInfo
);
return
orderByIdResponse
;
}
@Override
public
QueryOrdersResponse
queryMCCafeOrders
(
QueryOrdersRequest
queryOrdersRequest
)
{
OrderUserConditionsReq
request
=
orderSdkAdapter
.
convent2QueryOrdersRequest
(
queryOrdersRequest
);
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
.
BaseResponse
<
QueryOrderForUserResp
>
userorderResponse
=
orderSdkService
.
queryOrderForUser
(
request
,
queryOrdersRequest
.
getTrackingNo
());
return
orderSdkAdapter
.
convent2QueryOrdersResponse
(
userorderResponse
);
}
@Override
public
BaseOrderResponse
deleteOrder
(
DeleteOrderRequest
deleteOrderRequest
)
{
public
BaseOrderResponse
deleteOrder
(
DeleteOrderRequest
deleteOrderRequest
)
{
OrderDeleteReq
request
=
new
OrderDeleteReq
();
OrderDeleteReq
request
=
new
OrderDeleteReq
();
request
.
setOrderCode
(
deleteOrderRequest
.
getOrderId
());
request
.
setOrderCode
(
deleteOrderRequest
.
getOrderId
());
...
...
order-application-service/pom.xml
View file @
7d9b62b1
...
@@ -40,7 +40,7 @@
...
@@ -40,7 +40,7 @@
<dependency>
<dependency>
<groupId>
cn.freemud
</groupId>
<groupId>
cn.freemud
</groupId>
<artifactId>
assortment-ordercenter-sdk
</artifactId>
<artifactId>
assortment-ordercenter-sdk
</artifactId>
<version>
2.0.
9-RELEASE
</version>
<version>
2.0.
16-SNAPSHOT
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.freemud.application.service.sdk
</groupId>
<groupId>
com.freemud.application.service.sdk
</groupId>
...
...
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
7d9b62b1
...
@@ -162,13 +162,11 @@ public class OrderAdapter {
...
@@ -162,13 +162,11 @@ public class OrderAdapter {
createOrderProductDto
.
setIgnoreProductPrice
(
1
);
createOrderProductDto
.
setIgnoreProductPrice
(
1
);
products
.
add
(
createOrderProductDto
);
products
.
add
(
createOrderProductDto
);
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getActivityDiscountsDtos
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getActivityDiscountsDtos
()))
{
List
<
CreateOrderAccountRequest
>
accounts
=
null
;
if
(
mcCafePartnerId
.
equals
(
createOrderDto
.
getCompanyId
()))
{
if
(
mcCafePartnerId
.
equals
(
createOrderDto
.
getCompanyId
()))
{
accounts
=
getMCCafeAccounts
(
createOrderProductDto
,
cartGoodsDetailDto
.
getActivityDiscountsDtos
(
));
createOrderProductDto
.
setAccounts
(
getMCCafeAccounts
(
createOrderProductDto
,
cartGoodsDetailDto
.
getActivityDiscountsDtos
()
));
}
else
{
}
else
{
accounts
=
getAccounts
(
createOrderProductDto
,
cartGoodsDetailDto
.
getActivityDiscountsDtos
(
));
createOrderProductDto
.
setAccounts
(
getAccounts
(
createOrderProductDto
,
cartGoodsDetailDto
.
getActivityDiscountsDtos
()
));
}
}
createOrderProductDto
.
setAccounts
(
accounts
);
}
}
}
}
}
}
...
@@ -1810,7 +1808,20 @@ public class OrderAdapter {
...
@@ -1810,7 +1808,20 @@ public class OrderAdapter {
List
<
ProductVo
>
setMealProducts
=
new
ArrayList
<>();
List
<
ProductVo
>
setMealProducts
=
new
ArrayList
<>();
productBean
.
getComboProduct
().
forEach
(
product
->
{
productBean
.
getComboProduct
().
forEach
(
product
->
{
if
(!
"无"
.
equals
(
product
.
getSpecificationName
()))
{
if
(!
"无"
.
equals
(
product
.
getSpecificationName
()))
{
setMealProducts
.
add
(
convent2ProductVo
(
product
));
ProductVo
comboProduct
=
convent2ProductVo
(
product
);
setMealProducts
.
add
(
comboProduct
);
if
(
ObjectUtils
.
equals
(
ProductTypeEnum
.
MATERIAL_PRODUCT
.
getCode
(),
comboProduct
.
getProductType
())
&&
CollectionUtils
.
isNotEmpty
(
product
.
getMaterialProduct
()))
{
List
<
ProductVo
>
setMaterialProducts
=
new
ArrayList
<>();
product
.
getMaterialProduct
().
forEach
(
materialProduct
->
{
ProductVo
material
=
convent2ProductVo
(
materialProduct
);
setMaterialProducts
.
add
(
material
);
productVo
.
setOriginalPrice
(
new
BigDecimal
(
productVo
.
getOriginalPrice
()).
subtract
(
new
BigDecimal
(
material
.
getOriginalPrice
())).
longValue
());
productVo
.
setFinalPrice
(
new
BigDecimal
(
productVo
.
getFinalPrice
()).
subtract
(
new
BigDecimal
(
material
.
getFinalPrice
())).
longValue
());
productVo
.
setOriginalTotalAmount
(
new
BigDecimal
(
productVo
.
getOriginalTotalAmount
()).
subtract
(
new
BigDecimal
(
material
.
getOriginalTotalAmount
())).
longValue
());
productVo
.
setSaleTotalAmount
(
new
BigDecimal
(
productVo
.
getSaleTotalAmount
()).
subtract
(
new
BigDecimal
(
product
.
getSettlementPrice
())).
longValue
());
});
comboProduct
.
setSetMaterialProducts
(
setMaterialProducts
);
}
}
}
});
});
productVo
.
setSetMealProducts
(
setMealProducts
);
productVo
.
setSetMealProducts
(
setMealProducts
);
...
@@ -2116,26 +2127,36 @@ public class OrderAdapter {
...
@@ -2116,26 +2127,36 @@ public class OrderAdapter {
}
}
public
CreateOrderProductRequest
convent2MCCafeOrderProduct
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
cartGoodsDetailDto
)
{
public
CreateOrderProductRequest
convent2MCCafeOrderProduct
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
cartGoodsDetailDto
)
{
CreateOrderProductRequest
createOrderProductDemoDto
=
convent2MCCafeOrderProductDemo
(
cartGoodsDetailDto
);
CreateOrderProductRequest
createOrderProductDemoDto
=
convent2MCCafeOrderProductDemo
(
cartGoodsDetailDto
,
0
,
cartGoodsDetailDto
.
getProductType
());
//套餐
if
(
cartGoodsDetailDto
.
getProductType
()
!=
null
)
{
if
(
cartGoodsDetailDto
.
getProductType
()
!=
null
&&
(
cartGoodsDetailDto
.
getProductType
()
==
ProductType
.
SETMEALPRODUCT
.
getCode
()
||
cartGoodsDetailDto
.
getProductType
()
==
ProductType
.
SETMEALPRODUCT_UPPRICE
.
getCode
()))
{
if
(
cartGoodsDetailDto
.
getProductType
()
==
ProductType
.
SETMEALPRODUCT
.
getCode
()
List
<
CreateOrderProductRequest
>
comboProducts
=
new
ArrayList
<>();
||
cartGoodsDetailDto
.
getProductType
()
==
ProductType
.
SETMEALPRODUCT_UPPRICE
.
getCode
())
{
cartGoodsDetailDto
.
getComboProducts
().
forEach
(
product
->
{
//套餐
comboProducts
.
add
(
convent2OrderProductDemo
(
product
));
List
<
CreateOrderProductRequest
>
comboProducts
=
new
ArrayList
<>();
});
cartGoodsDetailDto
.
getComboProducts
().
forEach
(
product
->
{
createOrderProductDemoDto
.
setComboProduct
(
comboProducts
);
CreateOrderProductRequest
createOrderComboProduct
=
convent2MCCafeOrderProductDemo
(
product
,
product
.
getOriginalPrice
(),
cartGoodsDetailDto
.
getProductType
());
}
comboProducts
.
add
(
createOrderComboProduct
);
//加料商品
if
(
CollectionUtils
.
isNotEmpty
(
product
.
getMaterialList
()))
{
if
(
cartGoodsDetailDto
.
getProductType
()
!=
null
&&
(
cartGoodsDetailDto
.
getProductType
()
==
ProductType
.
MATERIALPRODUCT_UPPRICE
.
getCode
()))
{
//加料商品
List
<
CreateOrderProductRequest
>
materialProducts
=
new
ArrayList
<>();
List
<
CreateOrderProductRequest
>
materialProducts
=
new
ArrayList
<>();
cartGoodsDetailDto
.
getMaterialList
().
forEach
(
product
->
{
product
.
getMaterialList
().
forEach
(
cartMaterial
->
{
materialProducts
.
add
(
convent2OrderProductMaterial
(
product
));
product
.
setProductType
(
ProductType
.
MATERIALPRODUCT_UPPRICE
.
getCode
());
});
materialProducts
.
add
(
convent2MCCafeOrderProductDemo
(
cartMaterial
,
cartMaterial
.
getOriginalPrice
(),
ProductType
.
LITTLE_MATERIAL_PRODUCT
.
getCode
()));
createOrderProductDemoDto
.
setMaterialProduct
(
materialProducts
);
});
createOrderComboProduct
.
setMaterialProduct
(
materialProducts
);
}
});
createOrderProductDemoDto
.
setComboProduct
(
comboProducts
);
}
else
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getMaterialList
()))
{
//加料商品
List
<
CreateOrderProductRequest
>
materialProducts
=
new
ArrayList
<>();
cartGoodsDetailDto
.
getMaterialList
().
forEach
(
product
->
{
product
.
setProductType
(
ProductType
.
MATERIALPRODUCT_UPPRICE
.
getCode
());
materialProducts
.
add
(
convent2MCCafeOrderProductDemo
(
product
,
product
.
getOriginalPrice
(),
ProductType
.
LITTLE_MATERIAL_PRODUCT
.
getCode
()));
});
createOrderProductDemoDto
.
setMaterialProduct
(
materialProducts
);
}
}
}
createOrderProductDemoDto
.
setProductType
(
cartGoodsDetailDto
.
getProductType
());
return
createOrderProductDemoDto
;
return
createOrderProductDemoDto
;
}
}
...
@@ -2199,20 +2220,20 @@ public class OrderAdapter {
...
@@ -2199,20 +2220,20 @@ public class OrderAdapter {
return
createOrderProductDemoDto
;
return
createOrderProductDemoDto
;
}
}
public
CreateOrderProductRequest
convent2MCCafeOrderProductDemo
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
cartGoodsDetailDto
)
{
public
CreateOrderProductRequest
convent2MCCafeOrderProductDemo
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
cartGoodsDetailDto
,
long
price
,
Integer
productType
)
{
CreateOrderProductRequest
createOrderProductDemoDto
=
new
CreateOrderProductRequest
();
CreateOrderProductRequest
createOrderProductDemoDto
=
new
CreateOrderProductRequest
();
createOrderProductDemoDto
.
setProductId
(
cartGoodsDetailDto
.
getSpuId
());
createOrderProductDemoDto
.
setProductId
(
cartGoodsDetailDto
.
getSpuId
());
createOrderProductDemoDto
.
setProductName
(
cartGoodsDetailDto
.
getSpuName
());
createOrderProductDemoDto
.
setProductName
(
cartGoodsDetailDto
.
getSpuName
());
createOrderProductDemoDto
.
setSpecification
(
cartGoodsDetailDto
.
getSkuId
());
createOrderProductDemoDto
.
setSpecification
(
cartGoodsDetailDto
.
getSkuId
());
createOrderProductDemoDto
.
setSpecificationName
(
cartGoodsDetailDto
.
getSkuName
());
createOrderProductDemoDto
.
setSpecificationName
(
cartGoodsDetailDto
.
getSkuName
());
createOrderProductDemoDto
.
setPrice
(
0
l
);
createOrderProductDemoDto
.
setPrice
(
price
);
createOrderProductDemoDto
.
setSalePrice
(
cartGoodsDetailDto
.
getOriginalPrice
());
createOrderProductDemoDto
.
setSalePrice
(
cartGoodsDetailDto
.
getOriginalPrice
());
createOrderProductDemoDto
.
setTotalDiscountAmount
(
cartGoodsDetailDto
.
getTotalDiscountAmount
()
==
null
?
0
:
cartGoodsDetailDto
.
getTotalDiscountAmount
().
longValue
());
createOrderProductDemoDto
.
setTotalDiscountAmount
(
cartGoodsDetailDto
.
getTotalDiscountAmount
()
==
null
?
0
:
cartGoodsDetailDto
.
getTotalDiscountAmount
().
longValue
());
createOrderProductDemoDto
.
setNumber
(
cartGoodsDetailDto
.
getQty
());
createOrderProductDemoDto
.
setNumber
(
cartGoodsDetailDto
.
getQty
());
createOrderProductDemoDto
.
setPicture
(
cartGoodsDetailDto
.
getPicture
());
createOrderProductDemoDto
.
setPicture
(
cartGoodsDetailDto
.
getPicture
());
createOrderProductDemoDto
.
setAddInfo
(
cartGoodsDetailDto
.
getAttributeNames
());
createOrderProductDemoDto
.
setAddInfo
(
cartGoodsDetailDto
.
getAttributeNames
());
createOrderProductDemoDto
.
setDiscountId
(
cartGoodsDetailDto
.
getCouponCode
());
createOrderProductDemoDto
.
setDiscountId
(
cartGoodsDetailDto
.
getCouponCode
());
createOrderProductDemoDto
.
setProductType
(
cartGoodsDetailDto
.
getProductType
()
);
createOrderProductDemoDto
.
setProductType
(
productType
);
createOrderProductDemoDto
.
setParentProductId
(
cartGoodsDetailDto
.
getParentProductId
());
createOrderProductDemoDto
.
setParentProductId
(
cartGoodsDetailDto
.
getParentProductId
());
createOrderProductDemoDto
.
setIsFixedProduct
(
cartGoodsDetailDto
.
getIsFixedProduct
());
createOrderProductDemoDto
.
setIsFixedProduct
(
cartGoodsDetailDto
.
getIsFixedProduct
());
createOrderProductDemoDto
.
setCustomerCode
(
cartGoodsDetailDto
.
getCustomerCode
());
createOrderProductDemoDto
.
setCustomerCode
(
cartGoodsDetailDto
.
getCustomerCode
());
...
@@ -2226,6 +2247,9 @@ public class OrderAdapter {
...
@@ -2226,6 +2247,9 @@ public class OrderAdapter {
createOrderProductDemoDto
.
setTaxId
(
cartGoodsDetailDto
.
getTaxId
());
createOrderProductDemoDto
.
setTaxId
(
cartGoodsDetailDto
.
getTaxId
());
createOrderProductDemoDto
.
setClassificationId
(
cartGoodsDetailDto
.
getClassificationId
());
createOrderProductDemoDto
.
setClassificationId
(
cartGoodsDetailDto
.
getClassificationId
());
createOrderProductDemoDto
.
setClassificationName
(
cartGoodsDetailDto
.
getClassificationName
());
createOrderProductDemoDto
.
setClassificationName
(
cartGoodsDetailDto
.
getClassificationName
());
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getExtraList
()))
{
createOrderProductDemoDto
.
setSpecialCodes
(
cartGoodsDetailDto
.
getExtraList
().
stream
().
map
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
.
CartGoodsExtra
::
getSpecialCode
).
collect
(
Collectors
.
toList
()));
}
return
createOrderProductDemoDto
;
return
createOrderProductDemoDto
;
}
}
...
...
order-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
View file @
7d9b62b1
...
@@ -231,6 +231,10 @@ public class ShoppingCartGoodsDto {
...
@@ -231,6 +231,10 @@ public class ShoppingCartGoodsDto {
* 属性名
* 属性名
*/
*/
private
String
attributeName
;
private
String
attributeName
;
/**
* 入机code
*/
private
String
specialCode
;
}
}
...
...
order-application-service/src/main/java/cn/freemud/enums/ProductType.java
View file @
7d9b62b1
...
@@ -17,7 +17,9 @@ public enum ProductType {
...
@@ -17,7 +17,9 @@ public enum ProductType {
HAVESPEC
(
10
,
"有规格"
),
HAVESPEC
(
10
,
"有规格"
),
SETMEALPRODUCT
(
6
,
"套餐商品"
),
SETMEALPRODUCT
(
6
,
"套餐商品"
),
SETMEALPRODUCT_UPPRICE
(
7
,
"加价套餐商品"
),
SETMEALPRODUCT_UPPRICE
(
7
,
"加价套餐商品"
),
MATERIALPRODUCT_UPPRICE
(
88
,
"加料商品"
);
MATERIALPRODUCT_UPPRICE
(
88
,
"加料商品"
),
LITTLE_MATERIAL_PRODUCT
(
89
,
"小料"
),
;
private
int
code
;
private
int
code
;
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
View file @
7d9b62b1
...
@@ -480,31 +480,6 @@ public class CheckMCCafeOrder {
...
@@ -480,31 +480,6 @@ public class CheckMCCafeOrder {
.
buyMemberCard
(
null
)
.
buyMemberCard
(
null
)
.
menuType
(
createOrderVo
.
getMenuType
())
.
menuType
(
createOrderVo
.
getMenuType
())
.
build
();
.
build
();
// 如果使用优惠券或者商品券,校验 couponCode
// if (StringUtils.isNotBlank(createOrderVo.getCouponCode())) {
// // 校验couponCode
// GetCouponDetailResponseDto getCouponDetailResponseDto = couponService.getMemberCoupon(GetMemberCouponRequestVo.builder()
// .partnerId(createOrderVo.getPartnerId())
// .couponCode(createOrderVo.getCouponCode()).build());
// if (Objects.equals(getCouponDetailResponseDto, null) || CollectionUtils.isEmpty(getCouponDetailResponseDto.getDetails())
// || getCouponDetailResponseDto.getDetails().get(0).getActive() == null
// || getCouponDetailResponseDto.getDetails().get(0).getActive().getActiveCode() == null) {
// if ((CollectionUtils.isNotEmpty(getCouponDetailResponseDto.getDetails().get(0).getActiveRestrictionVOS())
// && CollectionUtils.isEmpty(getCouponDetailResponseDto.getDetails().get(0).getActiveRestrictionVOS().stream()
// .filter(a -> Objects.equals(a.getStoreIdPartner(), createOrderVo.getShopId())).collect(Collectors.toList()))
// )) {
// throw new ServiceException(ResponseResult.COUPON_SHOP_NOTSUPPORT);
// } else {
// throw new ServiceException(ResponseResult.COUPON_GETINFO_INVAILD);
// }
// }
// String activeCode = getCouponDetailResponseDto.getDetails().get(0).getActive().getActiveCode();
// // 校验点餐方式,查询购物车接口内部已校验
// shoppingCartInfoRequestVo.setCouponCode(createOrderVo.getCouponCode());
// // 活动code
// shoppingCartInfoRequestVo.setActivityCode(activeCode);
// shoppingCartInfoRequestVo.setCardCode(createOrderVo.getCardCode());
// }
if
(
StringUtils
.
isNotBlank
(
createOrderVo
.
getCouponCode
()))
{
if
(
StringUtils
.
isNotBlank
(
createOrderVo
.
getCouponCode
()))
{
// 校验couponCode
// 校验couponCode
MCCafeCouponRequest
mcCafeCouponRequest
=
MCCafeCouponRequest
.
builder
()
MCCafeCouponRequest
mcCafeCouponRequest
=
MCCafeCouponRequest
.
builder
()
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
7d9b62b1
...
@@ -903,7 +903,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -903,7 +903,7 @@ public class OrderServiceImpl implements Orderservice {
QueryOrdersRequest
queryOrdersRequest2
=
new
QueryOrdersRequest
();
QueryOrdersRequest
queryOrdersRequest2
=
new
QueryOrdersRequest
();
BeanUtil
.
convertBean
(
queryOrdersDto
,
queryOrdersRequest2
);
BeanUtil
.
convertBean
(
queryOrdersDto
,
queryOrdersRequest2
);
queryOrdersRequest2
.
setTrackingNo
(
LogTreadLocal
.
getTrackingNo
());
queryOrdersRequest2
.
setTrackingNo
(
LogTreadLocal
.
getTrackingNo
());
queryOrderResponse
=
orderCenterSdkService
.
queryOrders
(
queryOrdersRequest2
);
queryOrderResponse
=
orderCenterSdkService
.
query
MCCafe
Orders
(
queryOrdersRequest2
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
LogUtil
.
error
(
"queryOrders_error"
,
gson
.
toJson
(
queryOrdersDto
),
e
);
LogUtil
.
error
(
"queryOrders_error"
,
gson
.
toJson
(
queryOrdersDto
),
e
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
);
...
@@ -1269,7 +1269,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1269,7 +1269,7 @@ public class OrderServiceImpl implements Orderservice {
BaseQueryOrderRequest
baseQueryOrderRequest
=
new
BaseQueryOrderRequest
();
BaseQueryOrderRequest
baseQueryOrderRequest
=
new
BaseQueryOrderRequest
();
baseQueryOrderRequest
.
setOrderId
(
oid
);
baseQueryOrderRequest
.
setOrderId
(
oid
);
baseQueryOrderRequest
.
setTrackingNo
(
LogTreadLocal
.
getTrackingNo
());
baseQueryOrderRequest
.
setTrackingNo
(
LogTreadLocal
.
getTrackingNo
());
QueryOrderByIdResponse
response
=
orderCenterSdkService
.
queryOrderById
(
baseQueryOrderRequest
);
QueryOrderByIdResponse
response
=
orderCenterSdkService
.
query
MCCafe
OrderById
(
baseQueryOrderRequest
);
if
(!
RESPONSE_SUCCESS_CODE
.
equals
(
response
.
getErrcode
())
||
response
.
getData
()
==
null
)
{
if
(!
RESPONSE_SUCCESS_CODE
.
equals
(
response
.
getErrcode
())
||
response
.
getData
()
==
null
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
);
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_QUERYORDER_ERROR
);
}
}
...
...
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/MCCafeOrderCenterSdkServiceImpl.java
View file @
7d9b62b1
...
@@ -104,7 +104,7 @@ public class MCCafeOrderCenterSdkServiceImpl implements MCCafeOrderCenterSdkServ
...
@@ -104,7 +104,7 @@ public class MCCafeOrderCenterSdkServiceImpl implements MCCafeOrderCenterSdkServ
@Override
@Override
public
CreateOrderResponse
createMCCafeOrderFlow
(
CreateOrderRequest
config
)
{
public
CreateOrderResponse
createMCCafeOrderFlow
(
CreateOrderRequest
config
)
{
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
.
create
.
CreateOrderRequest
request
=
orderSdkAdapter
.
convent2NEWCreateOrderRequest
(
config
.
getBaseCreateOrderRequest
());
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
request
.
create
.
CreateOrderRequest
request
=
orderSdkAdapter
.
convent2NEWCreate
MCCafe
OrderRequest
(
config
.
getBaseCreateOrderRequest
());
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
.
BaseResponse
<
OrderInfoReqs
>
order
=
orderSdkService
.
createOrder
(
request
,
config
.
getTrackingNo
());
com
.
freemud
.
application
.
sdk
.
api
.
ordercenter
.
response
.
BaseResponse
<
OrderInfoReqs
>
order
=
orderSdkService
.
createOrder
(
request
,
config
.
getTrackingNo
());
CreateOrderResponse
createOrderResponse
=
orderSdkAdapter
.
convent2NEWOrderInfoReqs
(
order
);
CreateOrderResponse
createOrderResponse
=
orderSdkAdapter
.
convent2NEWOrderInfoReqs
(
order
);
if
(!
RESPONSE_SUCCESS
.
equals
(
createOrderResponse
.
getErrcode
())
if
(!
RESPONSE_SUCCESS
.
equals
(
createOrderResponse
.
getErrcode
())
...
...
ordercenter-sdk/src/main/java/com/freemud/application/sdk/api/ordercenter/enums/ProductTypeEnum.java
View file @
7d9b62b1
...
@@ -23,7 +23,9 @@ public enum ProductTypeEnum {
...
@@ -23,7 +23,9 @@ public enum ProductTypeEnum {
MORD_SPECIFICATION_PRODUCT
(
10
,
"多规格商品"
),
MORD_SPECIFICATION_PRODUCT
(
10
,
"多规格商品"
),
WEIGHT_PRODUCT
(
11
,
"称重商品"
),
WEIGHT_PRODUCT
(
11
,
"称重商品"
),
TABLEWARE_PRODUCT
(
12
,
"餐具商品"
),
TABLEWARE_PRODUCT
(
12
,
"餐具商品"
),
MATERIAL_PRODUCT
(
88
,
"加料商品"
);
MATERIAL_PRODUCT
(
88
,
"加料商品"
),
LITTLE_MATERIAL_PRODUCT
(
89
,
"小料"
),
;
...
...
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