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
5be69c69
Commit
5be69c69
authored
Aug 06, 2020
by
徐康
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/20200727_麦咖啡p1v2支付券码路由' into develop
parents
17961380
5e28039c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
158 additions
and
160 deletions
+158
-160
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
+44
-52
order-application-service/src/main/java/cn/freemud/service/mccafe/CouponClientService.java
+1
-1
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/CouponClientServiceImpl.java
+67
-63
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/MCCafeOrderCenterSdkServiceImpl.java
+46
-44
No files found.
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
View file @
5be69c69
...
@@ -181,7 +181,6 @@ public class CheckMCCafeOrder {
...
@@ -181,7 +181,6 @@ public class CheckMCCafeOrder {
throw
new
ServiceException
(
ResponseResult
.
PARAMETER_MISSING
);
throw
new
ServiceException
(
ResponseResult
.
PARAMETER_MISSING
);
}
}
String
appId
=
userLoginInfoDto
.
getWxAppId
();
String
appId
=
userLoginInfoDto
.
getWxAppId
();
// 校验小程序是否支持到店或者外卖
// 校验小程序是否支持到店或者外卖
AssortmentOpenPlatformIappWxappConfig
config
=
openPlatformIappWxappConfigManager
.
selectIappWxappConfigByWxAppId
(
appId
);
AssortmentOpenPlatformIappWxappConfig
config
=
openPlatformIappWxappConfigManager
.
selectIappWxappConfigByWxAppId
(
appId
);
...
@@ -249,7 +248,7 @@ public class CheckMCCafeOrder {
...
@@ -249,7 +248,7 @@ public class CheckMCCafeOrder {
}
}
// 外卖单选择立即送达的话,下单时间必须在店铺外卖时间内
// 外卖单选择立即送达的话,下单时间必须在店铺外卖时间内
if
(
createOrderVo
.
getOrderType
().
compareTo
(
CreateOrderType
.
TAKE_OUT
.
getCode
())
==
0
)
{
if
(
createOrderVo
.
getOrderType
().
compareTo
(
CreateOrderType
.
TAKE_OUT
.
getCode
())
==
0
)
{
checkTakeOutTime
(
storeResponseDto
,
new
Date
(),
new
Date
()
,
true
);
checkTakeOutTime
(
storeResponseDto
,
new
Date
(),
new
Date
());
}
}
}
}
//有预约时间的自提单
//有预约时间的自提单
...
@@ -328,7 +327,7 @@ public class CheckMCCafeOrder {
...
@@ -328,7 +327,7 @@ public class CheckMCCafeOrder {
}
}
if
(
CreateOrderType
.
TAKE_OUT
.
getCode
().
equals
(
createOrderVo
.
getOrderType
()))
{
if
(
CreateOrderType
.
TAKE_OUT
.
getCode
().
equals
(
createOrderVo
.
getOrderType
()))
{
checkTakeOutTime
(
storeResponseDto
,
date
,
takeMealDateTime
,
expectTimeInTodayBusinessTime
);
checkTakeOutTime
(
storeResponseDto
,
date
,
takeMealDateTime
);
}
}
}
}
...
@@ -337,9 +336,8 @@ public class CheckMCCafeOrder {
...
@@ -337,9 +336,8 @@ public class CheckMCCafeOrder {
* @param storeResponseDto 店铺信息
* @param storeResponseDto 店铺信息
* @param now 当前时间
* @param now 当前时间
* @param expectTime 预约单送达时间/即时单下单时间
* @param expectTime 预约单送达时间/即时单下单时间
* @param expectTimeInTodayBusinessTime 是否在当日营业时间内
*/
*/
private
void
checkTakeOutTime
(
StoreResponse
.
BizVO
storeResponseDto
,
Date
now
,
Date
expectTime
,
boolean
expectTimeInTodayBusinessTime
)
{
private
void
checkTakeOutTime
(
StoreResponse
.
BizVO
storeResponseDto
,
Date
now
,
Date
expectTime
)
{
String
deliveryStr
=
storeResponseDto
.
getDeliveryHoursDay
().
replace
(
"-"
,
","
)
String
deliveryStr
=
storeResponseDto
.
getDeliveryHoursDay
().
replace
(
"-"
,
","
)
.
replace
(
"_"
,
","
);
.
replace
(
"_"
,
","
);
String
[]
deliverys
=
deliveryStr
.
split
(
","
);
String
[]
deliverys
=
deliveryStr
.
split
(
","
);
...
@@ -361,13 +359,7 @@ public class CheckMCCafeOrder {
...
@@ -361,13 +359,7 @@ public class CheckMCCafeOrder {
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
}
}
// 校验预约配送时间
// 校验预约配送时间
if
(
expectTimeInTodayBusinessTime
&&
(
expectTime
.
before
(
deliveryStartDate
)
||
expectTime
.
after
(
deliveryEndDate
)))
{
if
(
expectTime
.
before
(
deliveryStartDate
)
||
expectTime
.
after
(
deliveryEndDate
))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
}
Date
nextDeliveryStartDate
=
DateUtil
.
addDays
(
deliveryStartDate
,
1
);
Date
nextDeliveryEndDate
=
DateUtil
.
addDays
(
deliveryEndDate
,
1
);
// 隔日预约外卖校验预约配送时间
if
(!
expectTimeInTodayBusinessTime
&&
(
expectTime
.
before
(
nextDeliveryStartDate
)
||
expectTime
.
after
(
nextDeliveryEndDate
)))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
throw
new
ServiceException
(
ResponseResult
.
ORDER_CREATE_TIME_NOT_DELIVERY
);
}
}
}
}
...
@@ -602,47 +594,47 @@ public class CheckMCCafeOrder {
...
@@ -602,47 +594,47 @@ public class CheckMCCafeOrder {
requestDto
.
setShoppingCartInfoRequestVo
(
shoppingCartInfoRequestVo
);
requestDto
.
setShoppingCartInfoRequestVo
(
shoppingCartInfoRequestVo
);
//加价购商品 校验放购物车校验
//加价购商品 校验放购物车校验
requestDto
.
setPremiumExchangeActivity
(
createOrderVo
.
getPremiumExchangeActivity
());
requestDto
.
setPremiumExchangeActivity
(
createOrderVo
.
getPremiumExchangeActivity
());
cn
.
freemud
.
base
.
entity
.
BaseResponse
<
ShoppingCartGoodsDto
>
apportionResponse
=
shoppingCartClient
.
getShoppingCartGoodsApportionNew
(
requestDto
);
//
cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = shoppingCartClient.getShoppingCartGoodsApportionNew(requestDto);
//暂时写死测试数据
//暂时写死测试数据
//
cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto> apportionResponse = JSON.parseObject(
cn
.
freemud
.
base
.
entity
.
BaseResponse
<
ShoppingCartGoodsDto
>
apportionResponse
=
JSON
.
parseObject
(
//
"{\n" +
"{\n"
+
//
" \"code\": \"100\",\n" +
" \"code\": \"100\",\n"
+
//
" \"message\": \"success\",\n" +
" \"message\": \"success\",\n"
+
//
" \"result\": {\n" +
" \"result\": {\n"
+
//
" \"activityDiscountsDtos\": [],\n" +
" \"activityDiscountsDtos\": [],\n"
+
//
" \"isDiscountDelivery\": false,\n" +
" \"isDiscountDelivery\": false,\n"
+
//
" \"originalTotalAmount\": 1,\n" +
" \"originalTotalAmount\": 1,\n"
+
//
" \"products\": [\n" +
" \"products\": [\n"
+
//
" {\n" +
" {\n"
+
//
" \"activityDiscountsDtos\": [],\n" +
" \"activityDiscountsDtos\": [],\n"
+
//
" \"attributeNames\": \"{\\\"attributeNames\\\":\\\"\\\"}\",\n" +
" \"attributeNames\": \"{\\\"attributeNames\\\":\\\"\\\"}\",\n"
+
//
" \"categoryName\": \"鞍山市\",\n" +
" \"categoryName\": \"鞍山市\",\n"
+
//
" \"classificationId\": \"\",\n" +
" \"classificationId\": \"\",\n"
+
//
" \"customerCode\": \"4095\",\n" +
" \"customerCode\": \"4095\",\n"
+
//
" \"extraList\": [],\n" +
" \"extraList\": [],\n"
+
//
" \"hasProductCoupon\": false,\n" +
" \"hasProductCoupon\": false,\n"
+
//
" \"materialList\": [],\n" +
" \"materialList\": [],\n"
+
//
" \"originalPrice\": 1,\n" +
" \"originalPrice\": 1,\n"
+
//
" \"picture\": \"https://img10.sandload.cn/zfd0x0.jpg?timestamp=1593831027040\",\n" +
" \"picture\": \"https://img10.sandload.cn/zfd0x0.jpg?timestamp=1593831027040\",\n"
+
//
" \"qty\": 1,\n" +
" \"qty\": 1,\n"
+
//
" \"skuId\": \"162535232231270663\",\n" +
" \"skuId\": \"162535232231270663\",\n"
+
//
" \"skuName\": \"鱿鱼须把把串\",\n" +
" \"skuName\": \"鱿鱼须把把串\",\n"
+
//
" \"spuId\": \"162535232231270663\",\n" +
" \"spuId\": \"162535232231270663\",\n"
+
//
" \"spuName\": \"鱿鱼须把把串\",\n" +
" \"spuName\": \"鱿鱼须把把串\",\n"
+
//
" \"stockLimit\": false,\n" +
" \"stockLimit\": false,\n"
+
//
" \"totalDiscountAmount\": 0,\n" +
" \"totalDiscountAmount\": 0,\n"
+
//
" \"unit\": \"g\",\n" +
" \"unit\": \"g\",\n"
+
//
" \"weight\": 0\n" +
" \"weight\": 0\n"
+
//
" }\n" +
" }\n"
+
//
" ],\n" +
" ],\n"
+
//
" \"reduceScore\": 0,\n" +
" \"reduceScore\": 0,\n"
+
//
" \"scoreReduceAmount\": 0,\n" +
" \"scoreReduceAmount\": 0,\n"
+
//
" \"totalAmount\": 1,\n" +
" \"totalAmount\": 1,\n"
+
//
" \"totalDiscountAmount\": 0\n" +
" \"totalDiscountAmount\": 0\n"
+
//
" },\n" +
" },\n"
+
//
" \"ver\": \"1\"\n" +
" \"ver\": \"1\"\n"
+
//
"}", new TypeReference<cn.freemud.base.entity.BaseResponse<ShoppingCartGoodsDto>>(){}
"}"
,
new
TypeReference
<
cn
.
freemud
.
base
.
entity
.
BaseResponse
<
ShoppingCartGoodsDto
>>(){}
//
);
);
if
(!
ObjectUtils
.
equals
(
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
,
apportionResponse
.
getCode
()))
{
if
(!
ObjectUtils
.
equals
(
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
,
apportionResponse
.
getCode
()))
{
ResponseResult
responseResult
=
ResponseResult
.
getResponseResult
(
apportionResponse
.
getCode
());
ResponseResult
responseResult
=
ResponseResult
.
getResponseResult
(
apportionResponse
.
getCode
());
throw
new
ServiceException
(
responseResult
!=
null
?
responseResult
:
ResponseResult
.
SHOPPING_CART_GETINFO_ERROR
);
throw
new
ServiceException
(
responseResult
!=
null
?
responseResult
:
ResponseResult
.
SHOPPING_CART_GETINFO_ERROR
);
...
...
order-application-service/src/main/java/cn/freemud/service/mccafe/CouponClientService.java
View file @
5be69c69
...
@@ -12,7 +12,7 @@ import java.util.List;
...
@@ -12,7 +12,7 @@ import java.util.List;
public
interface
CouponClientService
{
public
interface
CouponClientService
{
//
CouponRedeemResponse redeem(QueryOrdersResponse.DataBean.OrderBean orderBean, List<CreateOrderAccountRequest> accounts);
CouponRedeemResponse
redeem
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
List
<
CreateOrderAccountRequest
>
accounts
);
CouponRedeemResponse
redeem
(
MCCafeConponRequest
mcCafeConponRequest
);
CouponRedeemResponse
redeem
(
MCCafeConponRequest
mcCafeConponRequest
);
...
...
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/CouponClientServiceImpl.java
View file @
5be69c69
...
@@ -3,6 +3,8 @@ package cn.freemud.service.mccafe.impl;
...
@@ -3,6 +3,8 @@ package cn.freemud.service.mccafe.impl;
import
cn.freemud.base.constant.Version
;
import
cn.freemud.base.constant.Version
;
import
cn.freemud.entities.dto.coupon.MCCafeConponRequest
;
import
cn.freemud.entities.dto.coupon.MCCafeConponRequest
;
import
cn.freemud.entities.dto.coupon.MCCafeCouponLockRequest
;
import
cn.freemud.entities.dto.coupon.MCCafeCouponLockRequest
;
import
cn.freemud.entities.dto.coupon.MCCafeProductRedeemVo
;
import
cn.freemud.entities.dto.coupon.MCCafeTransactionVo
;
import
cn.freemud.enums.CouponReqTypeEnum
;
import
cn.freemud.enums.CouponReqTypeEnum
;
import
cn.freemud.enums.MCCafeChannelEnum
;
import
cn.freemud.enums.MCCafeChannelEnum
;
import
cn.freemud.service.mccafe.CouponClientService
;
import
cn.freemud.service.mccafe.CouponClientService
;
...
@@ -15,10 +17,12 @@ import com.freemud.sdk.api.assortment.order.enums.*;
...
@@ -15,10 +17,12 @@ import com.freemud.sdk.api.assortment.order.enums.*;
import
com.freemud.sdk.api.assortment.order.request.order.CreateOrderAccountRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.CreateOrderAccountRequest
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collectors
;
@Service
@Service
public
class
CouponClientServiceImpl
implements
CouponClientService
{
public
class
CouponClientServiceImpl
implements
CouponClientService
{
...
@@ -26,69 +30,69 @@ public class CouponClientServiceImpl implements CouponClientService {
...
@@ -26,69 +30,69 @@ public class CouponClientServiceImpl implements CouponClientService {
@Autowired
@Autowired
private
CouponOfflineMCCafeClient
couponOfflineMCCafeClient
;
private
CouponOfflineMCCafeClient
couponOfflineMCCafeClient
;
//
@Override
@Override
//
public CouponRedeemResponse redeem(QueryOrdersResponse.DataBean.OrderBean orderBean, List<CreateOrderAccountRequest> accounts) {
public
CouponRedeemResponse
redeem
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
List
<
CreateOrderAccountRequest
>
accounts
)
{
//
if (null == orderBean || CollectionUtils.isEmpty(accounts)) {
if
(
null
==
orderBean
||
CollectionUtils
.
isEmpty
(
accounts
))
{
//
return null;
return
null
;
//
}
}
//
Optional<CreateOrderAccountRequest> accountRequest = accounts.stream().filter(
Optional
<
CreateOrderAccountRequest
>
accountRequest
=
accounts
.
stream
().
filter
(
//
account -> account.getAccountType().equals(QueryOrderAccountType.COUPON)
account
->
account
.
getAccountType
().
equals
(
QueryOrderAccountType
.
COUPON
)
//
|| account.getAccountType().equals(QueryOrderAccountType.PRODUCT_COUPON)
||
account
.
getAccountType
().
equals
(
QueryOrderAccountType
.
PRODUCT_COUPON
)
//
|| account.getAccountType().equals(QueryOrderAccountType.DISCOUNT_COUPON)).findFirst();
||
account
.
getAccountType
().
equals
(
QueryOrderAccountType
.
DISCOUNT_COUPON
)).
findFirst
();
//
if (!accountRequest.isPresent() || accountRequest.get().getPrice() == 0) {
if
(!
accountRequest
.
isPresent
()
||
accountRequest
.
get
().
getPrice
()
==
0
)
{
//
return null;
return
null
;
//
}
}
//
CreateOrderAccountRequest accountBean = accountRequest.get();
CreateOrderAccountRequest
accountBean
=
accountRequest
.
get
();
//
List<MCCafeProductRedeemVo> products = new ArrayList<>();
List
<
MCCafeProductRedeemVo
>
products
=
new
ArrayList
<>();
//
//商品券核销核销参数
//商品券核销核销参数
//
if (QueryOrderAccountType.PRODUCT_COUPON.equals(accountBean.getAccountType())) {
if
(
QueryOrderAccountType
.
PRODUCT_COUPON
.
equals
(
accountBean
.
getAccountType
()))
{
//
for (int i = 0; i < orderBean.getProductList().size(); i++) {
for
(
int
i
=
0
;
i
<
orderBean
.
getProductList
().
size
();
i
++)
{
//
QueryOrdersResponse.DataBean.OrderBean.ProductBean productBean = orderBean.getProductList().get(i);
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
productBean
=
orderBean
.
getProductList
().
get
(
i
);
//
String pid = StringUtils.isNotBlank(productBean.getSpecification()) ? productBean.getSpecification() : productBean.getProductId();
String
pid
=
StringUtils
.
isNotBlank
(
productBean
.
getSpecification
())
?
productBean
.
getSpecification
()
:
productBean
.
getProductId
();
//
if (!org.springframework.util.CollectionUtils.isEmpty(orderBean.getProductList().get(i).getDiscountList())) {
if
(!
org
.
springframework
.
util
.
CollectionUtils
.
isEmpty
(
orderBean
.
getProductList
().
get
(
i
).
getDiscountList
()))
{
//
List<QueryOrdersResponse.DataBean.OrderBean.ProductBean.ProductDiscount> discounts = orderBean.getProductList().get(i).getDiscountList().stream().
List
<
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
.
ProductDiscount
>
discounts
=
orderBean
.
getProductList
().
get
(
i
).
getDiscountList
().
stream
().
//
filter(productDiscount -> productDiscount.getDiscountId().equals(accountBean.getAccountId())).collect(Collectors.toList());
filter
(
productDiscount
->
productDiscount
.
getDiscountId
().
equals
(
accountBean
.
getAccountId
())).
collect
(
Collectors
.
toList
());
//
for (QueryOrdersResponse.DataBean.OrderBean.ProductBean.ProductDiscount productDiscount : discounts) {
for
(
QueryOrdersResponse
.
DataBean
.
OrderBean
.
ProductBean
.
ProductDiscount
productDiscount
:
discounts
)
{
//
if (productDiscount.getDiscountType() == null || productDiscount.getDiscountType() == 0) {
if
(
productDiscount
.
getDiscountType
()
==
null
||
productDiscount
.
getDiscountType
()
==
0
)
{
//
continue;
continue
;
//
}
}
//
MCCafeProductRedeemVo mcCafeProductRedeemVo = new MCCafeProductRedeemVo();
MCCafeProductRedeemVo
mcCafeProductRedeemVo
=
new
MCCafeProductRedeemVo
();
//
mcCafeProductRedeemVo.setPid(pid);
mcCafeProductRedeemVo
.
setPid
(
pid
);
//
mcCafeProductRedeemVo.setKeyProductCode(productBean.getCustomerCode());
mcCafeProductRedeemVo
.
setKeyProductCode
(
productBean
.
getCustomerCode
());
//
mcCafeProductRedeemVo.setCustomer_code(productBean.getCustomerCode());
mcCafeProductRedeemVo
.
setCustomer_code
(
productBean
.
getCustomerCode
());
//
mcCafeProductRedeemVo.setConsume_num(productDiscount.getDiscountQty());
mcCafeProductRedeemVo
.
setConsume_num
(
productDiscount
.
getDiscountQty
());
//
mcCafeProductRedeemVo.setSeq(i + 1);
mcCafeProductRedeemVo
.
setSeq
(
i
+
1
);
//
products.add(mcCafeProductRedeemVo);
products
.
add
(
mcCafeProductRedeemVo
);
//
}
}
//
}
}
//
}
}
//
}
}
//
MCCafeConponRequest mcCafeConponRequest = new MCCafeConponRequest();
MCCafeConponRequest
mcCafeConponRequest
=
new
MCCafeConponRequest
();
//
mcCafeConponRequest.setVer(Integer.valueOf(Version.VERSION_1));
mcCafeConponRequest
.
setVer
(
Integer
.
valueOf
(
Version
.
VERSION_1
));
//
mcCafeConponRequest.setReqtype(CouponReqTypeEnum.REDEEM.getCode());
mcCafeConponRequest
.
setReqtype
(
CouponReqTypeEnum
.
REDEEM
.
getCode
());
//
mcCafeConponRequest.setPartnerId(Integer.parseInt(orderBean.getCompanyId()));
mcCafeConponRequest
.
setPartnerId
(
Integer
.
parseInt
(
orderBean
.
getCompanyId
()));
//
mcCafeConponRequest.setStore_id(orderBean.getShopId());
mcCafeConponRequest
.
setStore_id
(
orderBean
.
getShopId
());
//
mcCafeConponRequest.setStation_id("-1");
mcCafeConponRequest
.
setStation_id
(
"-1"
);
//
mcCafeConponRequest.setOperator_id("-1");
mcCafeConponRequest
.
setOperator_id
(
"-1"
);
//
// 订单号
// 订单号
//
mcCafeConponRequest.setTrans_id(orderBean.getOid());
mcCafeConponRequest
.
setTrans_id
(
orderBean
.
getOid
());
//
mcCafeConponRequest.setChannel(OrderClientType.ALIPAY.getIndex().toString().equals(orderBean.getOrderClient())?MCCafeChannelEnum.MOCOFFEE_ZFB.getName():MCCafeChannelEnum.MOCOFFEE_WX.getName());
mcCafeConponRequest
.
setChannel
(
OrderClientType
.
ALIPAY
.
getIndex
().
toString
().
equals
(
orderBean
.
getOrderClient
())?
MCCafeChannelEnum
.
MOCOFFEE_ZFB
.
getName
():
MCCafeChannelEnum
.
MOCOFFEE_WX
.
getName
());
//
List<MCCafeTransactionVo> transactions = new ArrayList<>();
List
<
MCCafeTransactionVo
>
transactions
=
new
ArrayList
<>();
//
MCCafeTransactionVo mcCafeTransactionVo = new MCCafeTransactionVo();
MCCafeTransactionVo
mcCafeTransactionVo
=
new
MCCafeTransactionVo
();
//
mcCafeTransactionVo.setCode(accountBean.getAccountId());
mcCafeTransactionVo
.
setCode
(
accountBean
.
getAccountId
());
//
mcCafeTransactionVo.setTotalAmount(-accountBean.getPrice());
mcCafeTransactionVo
.
setTotalAmount
(-
accountBean
.
getPrice
());
//
if (CollectionUtils.isNotEmpty(products)) {
if
(
CollectionUtils
.
isNotEmpty
(
products
))
{
//
mcCafeTransactionVo.setProducts(products);
mcCafeTransactionVo
.
setProducts
(
products
);
//
}
}
//
transactions.add(mcCafeTransactionVo);
transactions
.
add
(
mcCafeTransactionVo
);
//
mcCafeConponRequest.setTransactions(transactions);
mcCafeConponRequest
.
setTransactions
(
transactions
);
//
mcCafeConponRequest.setSign("skip");
mcCafeConponRequest
.
setSign
(
"skip"
);
//
//
mcCafeConponRequest.setAppFlag("kgd.N");
mcCafeConponRequest
.
setAppFlag
(
"kgd.N"
);
//
mcCafeConponRequest.setBusiness_date(cn.freemud.base.util.DateUtil.convert2Str(new Date(), cn.freemud.base.util.DateUtil.FORMAT_yyyyMMdd));
mcCafeConponRequest
.
setBusiness_date
(
cn
.
freemud
.
base
.
util
.
DateUtil
.
convert2Str
(
new
Date
(),
cn
.
freemud
.
base
.
util
.
DateUtil
.
FORMAT_yyyyMMdd
));
//
//
return couponOfflineMCCafeClient.redeem(mcCafeConponRequest);
return
couponOfflineMCCafeClient
.
redeem
(
mcCafeConponRequest
);
//
}
}
@Override
@Override
public
CouponRedeemResponse
redeem
(
MCCafeConponRequest
mcCafeConponRequest
)
{
public
CouponRedeemResponse
redeem
(
MCCafeConponRequest
mcCafeConponRequest
)
{
...
...
order-application-service/src/main/java/cn/freemud/service/mccafe/impl/MCCafeOrderCenterSdkServiceImpl.java
View file @
5be69c69
...
@@ -6,6 +6,8 @@ import cn.freemud.amqp.MQMessage;
...
@@ -6,6 +6,8 @@ import cn.freemud.amqp.MQMessage;
import
cn.freemud.amqp.MQService
;
import
cn.freemud.amqp.MQService
;
import
cn.freemud.service.mccafe.CouponClientService
;
import
cn.freemud.service.mccafe.CouponClientService
;
import
cn.freemud.service.mccafe.MCCafeOrderCenterSdkService
;
import
cn.freemud.service.mccafe.MCCafeOrderCenterSdkService
;
import
com.freemud.application.sdk.api.couponcenter.offline.response.CouponRedeemResponse
;
import
com.freemud.sdk.api.assortment.order.enums.OldOrderType
;
import
com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService
;
import
com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
import
com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager
;
...
@@ -185,54 +187,54 @@ public class MCCafeOrderCenterSdkServiceImpl implements MCCafeOrderCenterSdkServ
...
@@ -185,54 +187,54 @@ public class MCCafeOrderCenterSdkServiceImpl implements MCCafeOrderCenterSdkServ
}
}
}
}
CouponBaseResponse
couponRedeemResponse
=
couponClientService
.
lock
(
orderBean
,
accounts
);
// CouponBaseResponse couponBaseResponse = couponClientService.lock(orderBean, accounts);
if
(
couponRedeemResponse
!=
null
){
// if (couponBaseResponse!=null){
if
(!
ObjectUtils
.
equals
(
RESPONSE_SUCCESS_STR
,
couponRedeemResponse
.
getStatusCode
()))
{
//TODO 失败取消订单,异步冲正库存
CancelOrderRequest
cancelOrderRequest
=
orderSdkAdapter
.
convent2CancelOrderRequest
(
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
AfterSalesType
.
SYSTEM_CANCEL
,
"冻结券码失败"
,
""
,
null
);
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
//失败异步冲正库存,取消订单
backOrdersNotifyActivity
(
orderBean
,
mqMessageRequest
.
getBackOrdersNotifyActivityQueue
(),
mqMessageRequest
.
getBackOrdersNotifyActivityExchange
());
return
BaseOrderResponse
.
getErrorBaseOrderResponse
(
couponRedeemResponse
.
getStatusCode
(),
"冻结券码失败"
);
}
}
// 如果是自提,则冻结优惠券,失败提示下单失败并冲正库存积分等
// 如果是外卖,则核销优惠券,失败提示下单失败并冲正库存积分等
// if(OldOrderType.TAKE_OUT.getCode().equals(orderBean.getType())) {
// CouponRedeemResponse couponRedeemResponse = couponClientService.redeem(orderBean, accounts);
//
// if (couponRedeemResponse!=null){
//
//
// if (!ObjectUtils.equals(RESPONSE_SUCCESS_STR, couponRedeemResponse.getStatusCode())) {
// if (!ObjectUtils.equals(RESPONSE_SUCCESS_STR, couponBaseResponse.getStatusCode())) {
// //TODO 失败取消订单,异步冲正库存
// //TODO 失败取消订单,异步冲正库存
// CancelOrderRequest cancelOrderRequest = orderSdkAdapter.convent2CancelOrderRequest(orderBean.getOid(), orderBean.getCompanyId(),
// CancelOrderRequest cancelOrderRequest = orderSdkAdapter.convent2CancelOrderRequest(orderBean.getOid(), orderBean.getCompanyId(),
// AfterSalesType.SYSTEM_CANCEL, "核销券码失败", "", null);
// AfterSalesType.SYSTEM_CANCEL, "冻结券码失败", "", null);
// orderCenterSdkService.orderCancel(cancelOrderRequest);
// orderCenterSdkService.orderCancel(cancelOrderRequest);
// //失败异步冲正库存,取消订单
// //失败异步冲正库存,取消订单
// backOrdersNotifyActivity(orderBean, mqMessageRequest.getBackOrdersNotifyActivityQueue(), mqMessageRequest.getBackOrdersNotifyActivityExchange());
// backOrdersNotifyActivity(orderBean, mqMessageRequest.getBackOrdersNotifyActivityQueue(), mqMessageRequest.getBackOrdersNotifyActivityExchange());
// return BaseOrderResponse.getErrorBaseOrderResponse(couponRedeemResponse.getStatusCode(), "核销券码失败");
// return BaseOrderResponse.getErrorBaseOrderResponse(couponBaseResponse.getStatusCode(), "冻结券码失败");
// }
// }
// } else if(OldOrderType.COLLECT_GOODS.getCode().equals(orderBean.getType()) || OldOrderType.EAT_IN.getCode().equals(orderBean.getType())) {
// CouponRedeemResponse couponRedeemResponse = couponClientService.lock(orderBean, accounts);
//
// if (couponRedeemResponse!=null){
//
// if (!ObjectUtils.equals(RESPONSE_SUCCESS_STR, couponRedeemResponse.getStatusCode())) {
// //TODO 失败取消订单,异步冲正库存
// CancelOrderRequest cancelOrderRequest = orderSdkAdapter.convent2CancelOrderRequest(orderBean.getOid(), orderBean.getCompanyId(),
// AfterSalesType.SYSTEM_CANCEL, "冻结券码失败", "", null);
// orderCenterSdkService.orderCancel(cancelOrderRequest);
// //失败异步冲正库存,取消订单
// backOrdersNotifyActivity(orderBean, mqMessageRequest.getBackOrdersNotifyActivityQueue(), mqMessageRequest.getBackOrdersNotifyActivityExchange());
// return BaseOrderResponse.getErrorBaseOrderResponse(couponRedeemResponse.getStatusCode(), "冻结券码失败");
// }
// }
// }
// }
// }
// 如果是自提,则冻结优惠券,失败提示下单失败并冲正库存积分等
// 如果是外卖,则核销优惠券,失败提示下单失败并冲正库存积分等
if
(
OldOrderType
.
TAKE_OUT
.
getCode
().
equals
(
orderBean
.
getType
()))
{
CouponRedeemResponse
couponRedeemResponse
=
couponClientService
.
redeem
(
orderBean
,
accounts
);
if
(
couponRedeemResponse
!=
null
){
if
(!
ObjectUtils
.
equals
(
RESPONSE_SUCCESS_STR
,
couponRedeemResponse
.
getStatusCode
()))
{
//TODO 失败取消订单,异步冲正库存
CancelOrderRequest
cancelOrderRequest
=
orderSdkAdapter
.
convent2CancelOrderRequest
(
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
AfterSalesType
.
SYSTEM_CANCEL
,
"核销券码失败"
,
""
,
null
);
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
//失败异步冲正库存,取消订单
backOrdersNotifyActivity
(
orderBean
,
mqMessageRequest
.
getBackOrdersNotifyActivityQueue
(),
mqMessageRequest
.
getBackOrdersNotifyActivityExchange
());
return
BaseOrderResponse
.
getErrorBaseOrderResponse
(
couponRedeemResponse
.
getStatusCode
(),
"核销券码失败"
);
}
}
}
else
if
(
OldOrderType
.
COLLECT_GOODS
.
getCode
().
equals
(
orderBean
.
getType
())
||
OldOrderType
.
EAT_IN
.
getCode
().
equals
(
orderBean
.
getType
()))
{
CouponBaseResponse
couponBaseResponse
=
couponClientService
.
lock
(
orderBean
,
accounts
);
if
(
couponBaseResponse
!=
null
){
if
(!
ObjectUtils
.
equals
(
RESPONSE_SUCCESS_STR
,
couponBaseResponse
.
getStatusCode
()))
{
//TODO 失败取消订单,异步冲正库存
CancelOrderRequest
cancelOrderRequest
=
orderSdkAdapter
.
convent2CancelOrderRequest
(
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
AfterSalesType
.
SYSTEM_CANCEL
,
"冻结券码失败"
,
""
,
null
);
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
//失败异步冲正库存,取消订单
backOrdersNotifyActivity
(
orderBean
,
mqMessageRequest
.
getBackOrdersNotifyActivityQueue
(),
mqMessageRequest
.
getBackOrdersNotifyActivityExchange
());
return
BaseOrderResponse
.
getErrorBaseOrderResponse
(
couponBaseResponse
.
getStatusCode
(),
"冻结券码失败"
);
}
}
}
return
BaseOrderResponse
.
getErrorBaseOrderResponse
(
RESPONSE_SUCCESS_STR
,
""
);
return
BaseOrderResponse
.
getErrorBaseOrderResponse
(
RESPONSE_SUCCESS_STR
,
""
);
}
}
...
...
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