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
ec989a00
Commit
ec989a00
authored
Jul 20, 2020
by
xiaoer.li@freemud.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'remotes/origin/feature/1.9.30_门店起送规则' into develop
parents
6e6bb6af
1c9d4c57
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
37 additions
and
12 deletions
+37
-12
order-application-service/pom.xml
+1
-1
order-application-service/src/main/java/cn/freemud/entities/dto/StoreDeliveryInfoDto.java
+9
-0
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
+6
-4
order-application-service/src/main/java/cn/freemud/service/impl/AppOrderServiceImpl.java
+2
-2
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
+17
-3
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+2
-2
No files found.
order-application-service/pom.xml
View file @
ec989a00
...
...
@@ -88,7 +88,7 @@
<dependency>
<groupId>
com.freemud.application.service.sdk
</groupId>
<artifactId>
storecenter-sdk
</artifactId>
<version>
2.10.1.RELEASE
</version>
<version>
3.0.1-SNAPSHOT
</version>
</dependency>
<dependency>
<groupId>
cn.freemud
</groupId>
...
...
order-application-service/src/main/java/cn/freemud/entities/dto/StoreDeliveryInfoDto.java
View file @
ec989a00
...
...
@@ -82,4 +82,13 @@ public class StoreDeliveryInfoDto {
*/
private
Integer
pushOrderTime
;
/**
* 外卖起送条件(1:杯数,2:金额)
*/
private
Integer
deliveryCondition
;
/**
* 起送杯数
*/
private
Integer
freeDeliveryCup
;
}
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
View file @
ec989a00
...
...
@@ -55,10 +55,12 @@ public enum ResponseResult {
STORE_ITEM_NOT_DELIVERY
(
"43008"
,
"门店不支持外卖配送"
),
STORE_ITEM_NOT_IN_DELIVERY_LIMIT_AMOUNT
(
"43009"
,
"订单金额未满足门店起送费"
),
STORE_BUSINESS_HOUR_ERROR
(
"43010"
,
"门店营业时间错误"
),
STORE_NOT_ENABLE_COLLECT_GOODS
(
"43011"
,
"门店不支持到店"
),
STORE_NOT_TABLE_INFO
(
"43012"
,
"查询桌号失败"
),
STORE_DISCONTENT_DELIVERY_FEE
(
"43013"
,
"不满足起送金额"
),
STORE_BIND_MALL_NOT_FOUND
(
"43014"
,
"商城门店存在"
),
STORE_NOT_ENABLE_COLLECT_GOODS
(
"43011"
,
"门店不支持到店"
),
STORE_NOT_TABLE_INFO
(
"43012"
,
"查询桌号失败"
),
STORE_DISCONTENT_DELIVERY_FEE
(
"43013"
,
"不满足起送金额"
),
STORE_BIND_MALL_NOT_FOUND
(
"43014"
,
"商城门店存在"
),
STORE_DISCONTENT_DELIVERY_CONDITION
(
"43015"
,
"门店起送条件设置错误"
),
STORE_DISCONTENT_DELIVERY_CUP
(
"43016"
,
"不满足起送杯数"
),
/**
* 购物车状态码
...
...
order-application-service/src/main/java/cn/freemud/service/impl/AppOrderServiceImpl.java
View file @
ec989a00
...
...
@@ -94,7 +94,7 @@ public class AppOrderServiceImpl implements AppOrderService {
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
ShoppingCartGoodsDto
shoppingCartGoodsDto
=
checkOrder
.
getShoppingCartGoodsDto
(
createOrderVo
);
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
.
getTotalAmount
()
,
trackingNo
);
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
,
trackingNo
);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDto
extInfo
=
orderservice
.
getExtInfo
(
userLoginInfoDto
,
storeResponseDto
,
pushOrderTime
,
createOrderVo
);
...
...
@@ -170,7 +170,7 @@ public class AppOrderServiceImpl implements AppOrderService {
BeanUtil
.
convertBean
(
createOrderReq
,
createOrderVo
);
createOrderVo
.
setStoreName
(
storeResponse
.
getBizVO
().
getStoreName
());
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
customerInfo
,
storeResponse
.
getBizVO
(),
shoppingCartGoodsDto
.
getTotalAmount
()
,
trackingNo
);
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
customerInfo
,
storeResponse
.
getBizVO
(),
shoppingCartGoodsDto
,
trackingNo
);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDto
extInfo
=
orderservice
.
getExtInfo
(
customerInfo
,
storeResponse
.
getBizVO
(),
pushOrderTime
,
createOrderVo
);
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CheckOrder.java
View file @
ec989a00
...
...
@@ -174,7 +174,7 @@ public class CheckOrder {
* 下单订单类型校验
*/
public
Integer
checkOrderByOrderType
(
CreateOrderVo
createOrderVo
,
AssortmentCustomerInfoVo
userLoginInfoDto
,
StoreResponse
.
BizVO
storeResponseDto
,
Long
totalAmount
,
String
trackingNo
)
{
StoreResponse
.
BizVO
storeResponseDto
,
ShoppingCartGoodsDto
shoppingCartGoodsDto
,
String
trackingNo
)
{
Integer
pushOrderTime
=
0
;
//非到店或者外卖,类型错误
if
(!(
CreateOrderType
.
COLLECT_GOODS
.
getCode
().
equals
(
createOrderVo
.
getOrderType
())
||
...
...
@@ -228,15 +228,27 @@ public class CheckOrder {
}
//获取门店配送信息
StoreDeliveryInfoDto
storeDeliveryInfoDto
=
null
;
if
(
storeDeliveryUseOld
)
{
if
(
storeDeliveryUseOld
)
{
storeDeliveryInfoDto
=
getStoreDeliveryInfo
(
storeResponseDto
,
config
,
appId
);
}
else
{
storeDeliveryInfoDto
=
getNewStoreDeliveryInfo
(
storeResponseDto
,
config
,
appId
,
trackingNo
);
}
//todo : 这里不再支持从表中获取门店配送信息 改用接口方式调用
//外卖起送条件(1:杯数,2:金额)
if
(!
Arrays
.
asList
(
1
,
2
).
contains
(
storeDeliveryInfoDto
.
getDeliveryCondition
()))
{
throw
new
ServiceException
(
ResponseResult
.
STORE_DISCONTENT_DELIVERY_CONDITION
);
}
if
(
1
==
storeDeliveryInfoDto
.
getDeliveryCondition
())
{
int
sum
=
shoppingCartGoodsDto
.
getProducts
().
stream
().
mapToInt
(
ShoppingCartGoodsDto
.
CartGoodsDetailDto
::
getQty
).
sum
();
if
(
sum
<
storeDeliveryInfoDto
.
getFreeDeliveryCup
())
{
throw
new
ServiceException
(
ResponseResult
.
STORE_DISCONTENT_DELIVERY_CUP
);
}
}
//订单金额小于起送费提示
if
(
storeDeliveryInfoDto
.
getDeliveryLimitAmount
()
>
totalAmount
)
{
else
if
(
2
==
storeDeliveryInfoDto
.
getDeliveryCondition
()
&&
storeDeliveryInfoDto
.
getDeliveryLimitAmount
()
>
shoppingCartGoodsDto
.
getTotalAmount
()
)
{
throw
new
ServiceException
(
ResponseResult
.
STORE_DISCONTENT_DELIVERY_FEE
);
}
storeDeliveryInfoDto
.
setEnableTakeaway
(
true
);
// 校验收货地址是否可配送
checkReceiveAddress
(
storeDeliveryInfoDto
,
createOrderVo
);
...
...
@@ -582,6 +594,8 @@ public class CheckOrder {
storeDeliveryInfoDto
.
setPushOrderTime
(
0
);
}
}
storeDeliveryInfoDto
.
setDeliveryCondition
(
deliveryDetail
.
getDeliveryType
());
storeDeliveryInfoDto
.
setFreeDeliveryCup
(
deliveryDetail
.
getFreeDeliveryCup
());
return
storeDeliveryInfoDto
;
}
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
ec989a00
...
...
@@ -282,7 +282,7 @@ public class OrderServiceImpl implements Orderservice {
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
ShoppingCartGoodsDto
shoppingCartGoodsDto
=
checkOrder
.
getShoppingCartGoodsDto
(
createOrderVo
);
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
.
getTotalAmount
()
,
trackingNo
);
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
,
trackingNo
);
OrderExtInfoDto
extInfo
=
getExtInfo
(
userLoginInfoDto
,
storeResponseDto
,
pushOrderTime
,
createOrderVo
);
//1.9.2套餐需求同步优化创建订单代码
BaseResponse
createOrderOperateDtoResponse
=
this
.
sdkCreateOrder
(
createOrderVo
,
storeResponseDto
,
shoppingCartGoodsDto
,
userLoginInfoDto
);
...
...
@@ -308,7 +308,7 @@ public class OrderServiceImpl implements Orderservice {
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
ShoppingCartGoodsDto
shoppingCartGoodsDto
=
checkOrder
.
getShoppingCartGoodsDto
(
createOrderVo
);
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
.
getTotalAmount
()
,
trackingNo
);
Integer
pushOrderTime
=
checkOrder
.
checkOrderByOrderType
(
createOrderVo
,
userLoginInfoDto
,
storeResponseDto
,
shoppingCartGoodsDto
,
trackingNo
);
//1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDto
extInfo
=
getExtInfo
(
userLoginInfoDto
,
storeResponseDto
,
pushOrderTime
,
createOrderVo
);
...
...
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