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
fcce0295
Commit
fcce0295
authored
Jun 17, 2021
by
徐康
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
下单和发券
parent
cc92303f
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
143 additions
and
126 deletions
+143
-126
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/OrderProductAddInfoDto.java
+8
-0
order-application-service/src/main/java/cn/freemud/adapter/CreateOrderAdapter.java
+5
-0
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+8
-0
order-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
+39
-0
order-application-service/src/main/java/cn/freemud/entities/vo/ProductVo.java
+4
-0
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
+5
-1
order-application-service/src/main/java/cn/freemud/service/impl/MCCafeOrderServiceImpl.java
+63
-121
shopping-cart-application-service/src/main/java/cn/freemud/adapter/ShoppingCartMccafeAdapter.java
+3
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
+8
-4
No files found.
assortment-ordercenter-sdk/src/main/java/com/freemud/sdk/api/assortment/order/request/order/OrderProductAddInfoDto.java
View file @
fcce0295
...
...
@@ -106,6 +106,14 @@ public class OrderProductAddInfoDto extends BaseConfig {
* 虚拟商品种子券号
*/
private
String
cardCode
;
/**
* 是否是月享卡商品
*/
private
Integer
isMonthCard
=
0
;
/**
* 是否是买3赠1券商品
*/
private
Integer
isB3S1Coupon
=
0
;
/**
* 是否赠品
...
...
order-application-service/src/main/java/cn/freemud/adapter/CreateOrderAdapter.java
View file @
fcce0295
...
...
@@ -784,8 +784,13 @@ public class CreateOrderAdapter {
});
createOrderProductDemoDto
.
setComboProduct
(
comboProducts
);
}
else
if
(
ProductTypeEnum
.
VIRTUAL_PRODUCT
.
getCode
().
equals
(
cartGoodsDetailDto
.
getProductType
()))
{
if
(
cartGoodsDetailDto
.
getIsMonthCard
()
==
1
)
{
createOrderProductDemoDto
.
setCardId
(
cartGoodsDetailDto
.
getMonthCardInfo
().
getCardNo
());
createOrderProductDemoDto
.
setCardCode
(
cartGoodsDetailDto
.
getMonthCardInfo
().
getCardCode
());
}
else
if
(
cartGoodsDetailDto
.
getIsB3S1Coupon
()
==
1
)
{
createOrderProductDemoDto
.
setCardId
(
cartGoodsDetailDto
.
getB3S1CouponGoodsInfo
().
getCardNo
());
createOrderProductDemoDto
.
setCardCode
(
cartGoodsDetailDto
.
getB3S1CouponGoodsInfo
().
getCardCode
());
}
}
}
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getMaterialList
()))
{
...
...
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
fcce0295
...
...
@@ -2391,6 +2391,9 @@ public class OrderAdapter {
if
(
OrderAccountType
.
BUY_DISCOUNT
.
getCode
().
equals
(
productDiscount
.
getDiscountType
()))
{
fullReduction
=
productDiscount
.
getDiscountAmount
();
}
if
(
OldOrderAccountType
.
B3S1_COUPON
.
getCode
().
equals
(
productDiscount
.
getDiscountType
()))
{
productVo
.
setIsB3S1CouponGoods
(
1
);
}
}
}
//优惠券满减总优惠
...
...
@@ -2650,8 +2653,13 @@ public class OrderAdapter {
});
createOrderProductDemoDto
.
setComboProduct
(
comboProducts
);
}
else
if
(
ProductTypeEnum
.
VIRTUAL_PRODUCT
.
getCode
().
equals
(
cartGoodsDetailDto
.
getProductType
()))
{
if
(
cartGoodsDetailDto
.
getIsMonthCard
()
==
1
)
{
createOrderProductDemoDto
.
setCardId
(
cartGoodsDetailDto
.
getMonthCardInfo
().
getCardNo
());
createOrderProductDemoDto
.
setCardCode
(
cartGoodsDetailDto
.
getMonthCardInfo
().
getCardCode
());
}
else
if
(
cartGoodsDetailDto
.
getIsB3S1Coupon
()
==
1
)
{
createOrderProductDemoDto
.
setCardId
(
cartGoodsDetailDto
.
getB3S1CouponGoodsInfo
().
getCardNo
());
createOrderProductDemoDto
.
setCardCode
(
cartGoodsDetailDto
.
getB3S1CouponGoodsInfo
().
getCardCode
());
}
}
}
if
(
CollectionUtils
.
isNotEmpty
(
cartGoodsDetailDto
.
getMaterialList
()))
{
...
...
order-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
View file @
fcce0295
...
...
@@ -5,11 +5,13 @@ import cn.freemud.entities.vo.SubtractStockVO;
import
com.alibaba.fastjson.JSON
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.apache.commons.collections4.CollectionUtils
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
...
...
@@ -264,12 +266,28 @@ public class ShoppingCartGoodsDto {
* 购物车行id
*/
private
String
cartGoodsUid
;
/**
* 是否是月享卡商品
*/
private
int
isMonthCard
=
0
;
/**
* 月享卡加购信息
*/
private
MonthCardVo
monthCardInfo
;
/**
* 是否是买3赠1券商品
*/
private
int
isB3S1Coupon
=
0
;
/**
* 是否使用了买3赠1券
*/
private
int
isB3S1CouponGoods
=
0
;
/**
* 买3赠1券信息
*/
private
B3S1CouponGoodsInfoVo
b3S1CouponGoodsInfo
;
/**
* 是否赠品
*/
private
Boolean
isSendGoods
;
...
...
@@ -385,4 +403,25 @@ public class ShoppingCartGoodsDto {
private
String
discountDesc
;
}
@Data
@NoArgsConstructor
public
static
class
B3S1CouponGoodsInfoVo
{
/**
* 卡号
*/
private
String
cardNo
;
/**
* 券号
*/
private
String
cardCode
;
/**
* 券号
*/
private
Set
<
String
>
cardCodeSet
;
private
Integer
useTimes
;
private
int
isUseB3S1Coupon
=
1
;
}
}
order-application-service/src/main/java/cn/freemud/entities/vo/ProductVo.java
View file @
fcce0295
...
...
@@ -186,6 +186,10 @@ public class ProductVo {
* 优惠券名称
*/
private
String
couponName
;
/**
* 是否使用了买3赠1券
*/
private
int
isB3S1CouponGoods
=
0
;
/**
* 1.5.5版本添加
...
...
order-application-service/src/main/java/cn/freemud/service/impl/CheckMCCafeOrder.java
View file @
fcce0295
...
...
@@ -559,13 +559,17 @@ public class CheckMCCafeOrder {
List
<
String
>
seedCardList
=
new
ArrayList
<>();
shoppingCartGoodsDto
.
getProducts
().
stream
().
filter
(
o
->
ProductTypeEnum
.
getVirtualProductType
().
contains
(
o
.
getProductType
()))
.
forEach
(
o
->
{
if
(
o
.
getMonthCardInfo
()
==
null
)
{
if
(
o
.
get
IsMonthCard
()
==
0
&&
o
.
get
MonthCardInfo
()
==
null
)
{
ShoppingCartGoodsDto
.
MonthCardVo
monthCardVo
=
new
ShoppingCartGoodsDto
.
MonthCardVo
();
monthCardVo
.
setCardCode
(
withOrderBuyCouponCode
);
monthCardVo
.
setCardNo
(
withOrderBuyCardId
);
o
.
setMonthCardInfo
(
monthCardVo
);
}
if
(
o
.
getIsMonthCard
()
==
1
)
{
seedCardList
.
add
(
o
.
getMonthCardInfo
().
getCardCode
());
}
else
if
(
o
.
getIsB3S1Coupon
()
==
1
)
{
seedCardList
.
add
(
o
.
getB3S1CouponGoodsInfo
().
getCardCode
());
}
});
seedCardList
.
add
(
withOrderBuyCouponCode
);
if
(
CollectionUtils
.
isNotEmpty
(
shoppingCartGoodsDto
.
getActivityDiscountsDtos
()))
{
...
...
order-application-service/src/main/java/cn/freemud/service/impl/MCCafeOrderServiceImpl.java
View file @
fcce0295
...
...
@@ -131,6 +131,7 @@ import java.util.function.Function;
import
java.util.stream.Collectors
;
@Service
@Slf4j
public
class
MCCafeOrderServiceImpl
implements
MCCafeOrderService
{
private
final
Integer
RESPONSE_SUCCESS_CODE
=
100
;
...
...
@@ -905,7 +906,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
// }
//麦咖啡随单购咖啡月卡
if
(
withOrderBuyCoupon
2
(
orderBean
,
orderExtInfoDto
.
getThirdPartyMemberId
()))
{
if
(
withOrderBuyCoupon
3
(
orderBean
,
orderExtInfoDto
.
getThirdPartyMemberId
()))
{
orderBean
=
getOrderBean
(
confirmOrderDto
);
}
...
...
@@ -1597,40 +1598,10 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
}
/**
* 开通会员卡
*
* @param partnerId 商户号
* @param ruleId 会员规则ID
* @param oid 订单号
* @param userId 用户ID
*/
private
void
activateMemberCard
(
String
partnerId
,
String
ruleId
,
String
oid
,
String
userId
)
{
PurchasePaidRequestDto
purchasePaidRequestDto
=
new
PurchasePaidRequestDto
();
purchasePaidRequestDto
.
setPartnerId
(
partnerId
);
purchasePaidRequestDto
.
setOperatorType
(
0
);
purchasePaidRequestDto
.
setRuleId
(
ruleId
);
purchasePaidRequestDto
.
setOrderId
(
oid
);
purchasePaidRequestDto
.
setMemberId
(
userId
);
// 尝试三次开通会员卡,中途成功则跳出
int
count
=
3
;
for
(
int
i
=
1
;
i
<=
count
;
i
++)
{
BaseResponse
baseResponse
=
customerApplicationClient
.
purchasePaid
(
purchasePaidRequestDto
);
// 不以响应码为判断是否开通会员卡成功的标准
if
(
baseResponse
!=
null
&&
"SUCCESS"
.
equals
(
baseResponse
.
getResult
()))
{
break
;
}
// 尝试开通会员卡失败三次
if
(
i
>=
count
)
{
LogUtil
.
error
(
"尝试开通会员卡失败"
+
count
+
"次"
,
JSON
.
toJSONString
(
purchasePaidRequestDto
),
JSON
.
toJSONString
(
baseResponse
));
}
}
}
/**
* 随单购月卡调会员发券与更新订单使用的优惠券与买的优惠券
* 月享卡2.0发券
* @param orderBean
*/
public
boolean
withOrderBuyCoupon
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
orderBean
,
String
thirdPartyMemberId
){
public
boolean
withOrderBuyCoupon
2
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
orderBean
,
String
thirdPartyMemberId
){
LogUtil
.
info
(
"发券入参:"
,
thirdPartyMemberId
,
JSON
.
toJSONString
(
orderBean
));
try
{
List
<
String
>
cardIds
=
new
ArrayList
<>();
...
...
@@ -1685,7 +1656,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
Map
<
String
,
Integer
>
cardStatusMap
=
mcdNetBatchQueryResponse
.
getCouponlist
().
stream
()
.
collect
(
Collectors
.
toMap
(
McdNetBatchQueryResponse
.
Coupon
::
getCode
,
McdNetBatchQueryResponse
.
Coupon
::
getStatusCode
,
(
k1
,
k2
)
->
k1
));
Map
<
String
,
List
<
SendCouponForqujiaDtoResponseDto
.
Card
>
>
cardMap
=
new
HashMap
<>();
Map
<
String
,
String
>
cardMap
=
new
HashMap
<>();
UpdateCouponCodeReq
req
=
new
UpdateCouponCodeReq
();
req
.
setOrderCode
(
orderBean
.
getOid
());
...
...
@@ -1705,11 +1676,16 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
cardFor:
for
(
int
i
=
0
;
i
<
cardList
.
size
();
i
++)
{
if
(
cardList
.
get
(
i
).
getCard_id
().
equals
(
extInfo
.
getCardId
()))
{
cardCodeStr
+=
cardList
.
get
(
i
).
getCard_code
()+
"/"
;
if
(
CollectionUtils
.
isEmpty
(
cardMap
.
get
(
extInfo
.
getCardCode
())))
{
cardMap
.
put
(
extInfo
.
getCardCode
(),
new
ArrayList
<>(
Arrays
.
asList
(
cardList
.
get
(
i
))));
}
else
{
cardMap
.
get
(
extInfo
.
getCardCode
()).
add
(
cardList
.
get
(
i
));
String
couponCode
=
cardList
.
get
(
i
).
getCard_code
();
cardCodeStr
+=
couponCode
+
"/"
;
if
(
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
cardStatusMap
.
get
(
couponCode
)))
{
if
(
cardMap
.
get
(
extInfo
.
getCardCode
())
==
null
)
{
UpdateCouponCodeReq
.
CouponUpdateInfo
couponUpdateInfo
=
new
UpdateCouponCodeReq
.
CouponUpdateInfo
();
couponUpdateInfo
.
setOldCouponCode
(
extInfo
.
getCardCode
());
couponUpdateInfo
.
setCouponCode
(
couponCode
);
req
.
getCouponUpdateInfoList
().
add
(
couponUpdateInfo
);
cardMap
.
put
(
extInfo
.
getCardCode
(),
couponCode
);
}
}
cardList
.
remove
(
i
);
break
cardFor
;
...
...
@@ -1721,39 +1697,9 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
}
}
for
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
.
ProductBean
productBean
:
orderBean
.
getProductList
())
{
if
(!
ProductTypeEnum
.
getVirtualProductType
().
contains
(
productBean
.
getProductType
())
&&
CollectionUtils
.
isNotEmpty
(
productBean
.
getDiscountList
()))
{
for
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
.
ProductBean
.
ProductDiscount
discount
:
productBean
.
getDiscountList
())
{
if
(
null
!=
discount
.
getDiscountType
()
&&
OldOrderAccountType
.
SEED_PRODUCT_COUPON
.
getCode
().
equals
(
discount
.
getDiscountType
())
&&
defaultCardCodes
.
contains
(
discount
.
getDiscountId
()))
{
UpdateCouponCodeReq
.
CouponUpdateInfo
couponUpdateInfo
=
new
UpdateCouponCodeReq
.
CouponUpdateInfo
();
couponUpdateInfo
.
setProductSeq
(
productBean
.
getSequence
());
couponUpdateInfo
.
setOldCouponCode
(
discount
.
getDiscountId
());
List
<
SendCouponForqujiaDtoResponseDto
.
Card
>
list
=
new
ArrayList
<>(
cardMap
.
get
(
discount
.
getDiscountId
()));
if
(
CollectionUtils
.
isEmpty
(
list
))
{
continue
;
}
cardFor:
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
if
(
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
cardStatusMap
.
get
(
list
.
get
(
i
).
getCard_code
())))
{
couponUpdateInfo
.
setCouponCode
(
list
.
get
(
i
).
getCard_code
());
list
.
remove
(
i
);
cardMap
.
put
(
discount
.
getDiscountId
(),
list
);
break
cardFor
;
}
}
if
(
StringUtils
.
isBlank
(
couponUpdateInfo
.
getCouponCode
()))
{
continue
;
}
req
.
getCouponUpdateInfoList
().
add
(
couponUpdateInfo
);
}
}
}
}
LogUtil
.
info
(
"生成参数完成:"
,
req
,
null
);
orderSdkService
.
updateCostCouponCode
(
req
,
LogTreadLocal
.
getTrackingNo
());
orderSdkService
.
updateCostCouponCode
New
(
req
,
LogTreadLocal
.
getTrackingNo
());
return
true
;
}
catch
(
Exception
e
){
...
...
@@ -1766,23 +1712,26 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
* 月享卡2.0发券
* @param orderBean
*/
public
boolean
withOrderBuyCoupon
2
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
orderBean
,
String
thirdPartyMemberId
){
public
boolean
withOrderBuyCoupon
3
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
orderBean
,
String
thirdPartyMemberId
){
LogUtil
.
info
(
"发券入参:"
,
thirdPartyMemberId
,
JSON
.
toJSONString
(
orderBean
));
try
{
List
<
String
>
cardIds
=
new
ArrayList
<>();
List
<
String
>
defaultCardCodes
=
new
ArrayList
<>();
for
(
OrderBean
.
ProductBean
productBean
:
orderBean
.
getProductList
()){
UpdateCouponCodeReq
req
=
new
UpdateCouponCodeReq
();
req
.
setOrderCode
(
orderBean
.
getOid
());
req
.
setPartnerId
(
orderBean
.
getCompanyId
());
req
.
setCouponReceiveInfoList
(
new
ArrayList
<>());
req
.
setCouponUpdateInfoList
(
new
ArrayList
<>());
for
(
OrderBean
.
ProductBean
productBean
:
orderBean
.
getProductList
())
{
if
(
ProductTypeEnum
.
getVirtualProductType
().
contains
(
productBean
.
getProductType
()))
{
List
<
String
>
cardIds
=
new
ArrayList
<>();
OrderProductAddInfoDto
extInfo
=
JSON
.
parseObject
(
productBean
.
getExtInfo
(),
OrderProductAddInfoDto
.
class
);
for
(
int
i
=
0
;
i
<
productBean
.
getNumber
();
i
++)
{
cardIds
.
add
(
extInfo
.
getCardId
());
}
defaultCardCodes
.
add
(
extInfo
.
getCardCode
());
}
}
if
(
CollectionUtils
.
isEmpty
(
cardIds
)){
return
fals
e
;
continu
e
;
}
SendCouponForqujiaRequestDto
request
=
new
SendCouponForqujiaRequestDto
();
...
...
@@ -1790,13 +1739,10 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
request
.
setCardIds
(
cardIds
);
request
.
setThirdPartyMemberId
(
thirdPartyMemberId
);
SendCouponForqujiaDtoResponseDto
responseDto
=
customerExtendClient
.
sendCouponForqujia
(
request
);
if
(!
Objects
.
equals
(
responseDto
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
())){
LogUtil
.
error
(
"sendCouponForqujia"
,
JSON
.
toJSONString
(
request
),
JSON
.
toJSONString
(
responseDto
));
return
false
;
}
if
(
responseDto
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
responseDto
.
getData
().
getCard_list
())){
return
false
;
if
(!
Objects
.
equals
(
responseDto
.
getCode
(),
ResponseResult
.
SUCCESS
.
getCode
())
||
responseDto
.
getData
()
==
null
||
CollectionUtils
.
isEmpty
(
responseDto
.
getData
().
getCard_list
())){
log
.
error
(
"发券异常 :"
+
JSON
.
toJSONString
(
request
)
+
JSON
.
toJSONString
(
responseDto
));
continue
;
}
List
<
SendCouponForqujiaDtoResponseDto
.
Card
>
cardList
=
responseDto
.
getData
().
getCard_list
();
...
...
@@ -1815,54 +1761,50 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
McdNetBatchQueryResponse
mcdNetBatchQueryResponse
=
couponClientService
.
batchQuery
(
mcCafeCouponRequest
);
if
(
mcdNetBatchQueryResponse
==
null
||
!
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
mcdNetBatchQueryResponse
.
getStatusCode
())
||
CollectionUtils
.
isEmpty
(
mcdNetBatchQueryResponse
.
getCouponlist
()))
{
LogUtil
.
error
(
"获取优惠券详情失败,发券失败"
,
mcCafeCouponRequest
,
mcdNetBatchQueryResponse
);
log
.
error
(
"获取优惠券详情失败,发券失败"
+
JSON
.
toJSONString
(
mcCafeCouponRequest
)
+
JSON
.
toJSONString
(
mcdNetBatchQueryResponse
)
);
return
false
;
}
Map
<
String
,
Integer
>
cardStatusMap
=
mcdNetBatchQueryResponse
.
getCouponlist
().
stream
()
.
collect
(
Collectors
.
toMap
(
McdNetBatchQueryResponse
.
Coupon
::
getCode
,
McdNetBatchQueryResponse
.
Coupon
::
getStatusCode
,
(
k1
,
k2
)
->
k1
));
Map
<
String
,
String
>
cardMap
=
new
HashMap
<>();
UpdateCouponCodeReq
req
=
new
UpdateCouponCodeReq
();
req
.
setOrderCode
(
orderBean
.
getOid
());
req
.
setPartnerId
(
orderBean
.
getCompanyId
());
req
.
setCouponReceiveInfoList
(
new
ArrayList
<>());
req
.
setCouponUpdateInfoList
(
new
ArrayList
<>());
LogUtil
.
info
(
"准备开始生成参数:"
,
orderBean
,
null
);
for
(
QueryOrdersResponseDto
.
DataBean
.
OrderBean
.
ProductBean
productBean
:
orderBean
.
getProductList
())
{
if
(
ProductTypeEnum
.
getVirtualProductType
().
contains
(
productBean
.
getProductType
()))
{
UpdateCouponCodeReq
.
CouponReceiveInfo
couponReceiveInfo
=
new
UpdateCouponCodeReq
.
CouponReceiveInfo
();
couponReceiveInfo
.
setGoodsId
(
productBean
.
getSpecification
());
couponReceiveInfo
.
setProductSeq
(
productBean
.
getSequence
());
OrderProductAddInfoDto
extInfo
=
JSON
.
parseObject
(
productBean
.
getExtInfo
(),
OrderProductAddInfoDto
.
class
);
String
cardCodeStr
=
""
;
numberFor:
for
(
int
j
=
0
;
j
<
productBean
.
getNumber
();
j
++)
{
cardFor:
for
(
int
i
=
0
;
i
<
cardList
.
size
();
i
++)
{
if
(
cardList
.
get
(
i
).
getCard_id
().
equals
(
extInfo
.
getCardId
()))
{
String
couponCode
=
cardList
.
get
(
i
).
getCard_code
();
cardCodeStr
+=
couponCode
+
"/"
;
if
(
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
cardStatusMap
.
get
(
couponCode
)))
{
if
(
cardMap
.
get
(
extInfo
.
getCardCode
())
==
null
)
{
UpdateCouponCodeReq
.
CouponUpdateInfo
couponUpdateInfo
=
new
UpdateCouponCodeReq
.
CouponUpdateInfo
();
couponUpdateInfo
.
setOldCouponCode
(
extInfo
.
getCardCode
());
couponUpdateInfo
.
setCouponCode
(
couponCode
);
req
.
getCouponUpdateInfoList
().
add
(
couponUpdateInfo
);
cardMap
.
put
(
extInfo
.
getCardCode
(),
couponCode
);
}
}
cardList
.
remove
(
i
);
break
cardFor
;
couponReceiveInfo
.
setCouponCode
(
mcdNetBatchQueryResponse
.
getCouponlist
().
stream
()
.
map
(
o
->
o
.
getCode
()).
collect
(
Collectors
.
joining
(
"/"
)));
req
.
getCouponReceiveInfoList
().
add
(
couponReceiveInfo
);
String
couponCode
=
""
;
if
(
extInfo
.
getIsMonthCard
()
!=
null
&&
extInfo
.
getIsMonthCard
()
==
1
)
{
Optional
<
McdNetBatchQueryResponse
.
Coupon
>
couponOptional
=
mcdNetBatchQueryResponse
.
getCouponlist
().
stream
()
.
filter
(
o
->
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
o
.
getStatusCode
())).
findFirst
();
if
(!
couponOptional
.
isPresent
())
{
log
.
error
(
"没有有效的优惠券,更新失败 "
+
JSON
.
toJSONString
(
mcCafeCouponRequest
)
+
JSON
.
toJSONString
(
mcdNetBatchQueryResponse
));
continue
;
}
else
{
couponCode
=
couponOptional
.
get
().
getCode
();
}
}
else
if
(
extInfo
.
getIsB3S1Coupon
()
!=
null
&&
extInfo
.
getIsB3S1Coupon
()
==
1
)
{
Optional
<
McdNetBatchQueryResponse
.
Coupon
>
couponOptional
=
mcdNetBatchQueryResponse
.
getCouponlist
().
stream
()
.
filter
(
o
->
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
o
.
getStatusCode
())).
findFirst
();
if
(!
couponOptional
.
isPresent
())
{
log
.
error
(
"没有有效的优惠券,更新失败 "
+
JSON
.
toJSONString
(
mcCafeCouponRequest
)
+
JSON
.
toJSONString
(
mcdNetBatchQueryResponse
));
continue
;
}
else
{
couponCode
=
couponOptional
.
get
().
getCode
();
}
}
couponReceiveInfo
.
setCouponCode
(
cardCodeStr
.
substring
(
0
,
cardCodeStr
.
length
()-
1
));
req
.
getCouponReceiveInfoList
().
add
(
couponReceiveInfo
);
if
(
StringUtils
.
isBlank
(
couponCode
))
{
log
.
error
(
"没有匹配的优惠券,更新失败 "
+
JSON
.
toJSONString
(
mcCafeCouponRequest
)
+
JSON
.
toJSONString
(
mcdNetBatchQueryResponse
));
continue
;
}
UpdateCouponCodeReq
.
CouponUpdateInfo
couponUpdateInfo
=
new
UpdateCouponCodeReq
.
CouponUpdateInfo
();
couponUpdateInfo
.
setOldCouponCode
(
extInfo
.
getCardCode
());
couponUpdateInfo
.
setCouponCode
(
couponCode
);
req
.
getCouponUpdateInfoList
().
add
(
couponUpdateInfo
);
}
LogUtil
.
info
(
"生成参数完成:"
,
req
,
null
);
}
orderSdkService
.
updateCostCouponCodeNew
(
req
,
LogTreadLocal
.
getTrackingNo
());
...
...
shopping-cart-application-service/src/main/java/cn/freemud/adapter/ShoppingCartMccafeAdapter.java
View file @
fcce0295
...
...
@@ -172,6 +172,9 @@ public class ShoppingCartMccafeAdapter {
//菜单购月享卡信息
cartGoodsDetailDto
.
setIsMonthCard
(
cartGoods
.
getIsMonthCard
());
cartGoodsDetailDto
.
setMonthCardInfo
(
cartGoods
.
getMonthCardInfo
());
cartGoodsDetailDto
.
setIsB3S1Coupon
(
cartGoods
.
getIsB3S1Coupon
());
cartGoodsDetailDto
.
setB3S1CouponGoodsInfo
(
cartGoods
.
getB3S1CouponGoodsInfo
());
cartGoodsDetailDto
.
setIsB3S1CouponGoods
(
cartGoods
.
getIsB3S1CouponGoods
());
if
(
GoodsTypeEnum
.
SET_MEAL_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
()))
{
cartGoodsDetailDto
.
setProductType
(
ProductType
.
SETMEAL
.
getCode
());
}
else
if
(
GoodsTypeEnum
.
VIRTUAL_GOODS
.
getGoodsType
().
equals
(
cartGoods
.
getGoodsType
())){
...
...
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/shoppingCart/ShoppingCartGoodsDto.java
View file @
fcce0295
...
...
@@ -274,10 +274,6 @@ public class ShoppingCartGoodsDto {
*/
private
int
isMonthCard
;
/**
* 是否是买3赠1券商品
*/
private
int
isB3S1Coupon
=
0
;
/**
* 是否为种子券商品 1:是;0:否
*/
private
int
isSeedCouponGoods
;
...
...
@@ -286,6 +282,14 @@ public class ShoppingCartGoodsDto {
*/
private
MonthCardVo
monthCardInfo
;
/**
* 是否是买3赠1券商品
*/
private
int
isB3S1Coupon
=
0
;
/**
* 是否使用了买3赠1券
*/
private
int
isB3S1CouponGoods
=
0
;
/**
* 买3赠1券信息
*/
private
B3S1CouponGoodsInfoVo
b3S1CouponGoodsInfo
;
...
...
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