Commit 11208477 by ping.wu

Merge remote-tracking branch 'origin/master'

parents d7cc97ec 767e22ae
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.1.48-RELEASE</version> <version>2.1.49-RELEASE</version>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>ordercenter-sdk</artifactId> <artifactId>ordercenter-sdk</artifactId>
<version>1.3.44.RELEASE</version> <version>1.3.45.RELEASE</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -122,4 +122,5 @@ ...@@ -122,4 +122,5 @@
| 2.1.45-RELEASE | ordercentersdk 升级 | 王航航 | 2021-04-07 | | 2.1.45-RELEASE | ordercentersdk 升级 | 王航航 | 2021-04-07 |
| 2.1.46-RELEASE | 单品立减平台化 | 梁崇福 | 2021-04-08 | | 2.1.46-RELEASE | 单品立减平台化 | 梁崇福 | 2021-04-08 |
| 2.1.47-RELEASE | 赠品落库 | 梁崇福 | 2021-04-08 | | 2.1.47-RELEASE | 赠品落库 | 梁崇福 | 2021-04-08 |
| 2.1.48-RELEASE | 小程序外卖单,接单,配送自动扭转时间为空设置默认值 | 伍平 | 2021-04-12 | | 2.1.48-RELEASE | 小程序外卖单,接单,配送自动扭转时间为空设置默认值 | 伍平 | 2021-04-12 |
\ No newline at end of file | 2.1.49-RELEASE | 月享卡2.0 | 徐康 | 2021-04-15 |
\ No newline at end of file
...@@ -968,6 +968,7 @@ public class OrderSdkAdapter { ...@@ -968,6 +968,7 @@ public class OrderSdkAdapter {
productDiscount.setCustomerCode(""); productDiscount.setCustomerCode("");
productDiscount.setAddInfo(orderSettlementResp.getExtInfo()); productDiscount.setAddInfo(orderSettlementResp.getExtInfo());
productDiscount.setProductId(orderSettlementResp.getProductId()); productDiscount.setProductId(orderSettlementResp.getProductId());
productDiscount.setExtInfo(orderSettlementResp.getExtInfo());
discountList.add(productDiscount); discountList.add(productDiscount);
} }
} }
...@@ -1416,6 +1417,9 @@ public class OrderSdkAdapter { ...@@ -1416,6 +1417,9 @@ public class OrderSdkAdapter {
case "FULL_BUYM_SENDN": case "FULL_BUYM_SENDN":
type=230; type=230;
break; break;
case "MONTH_CARD_TOTAL_DISCOUNT":
type=231;
break;
case "SINGLE_PRODUCT_REDUCTION": case "SINGLE_PRODUCT_REDUCTION":
type=22; type=22;
break; break;
...@@ -2035,6 +2039,9 @@ public class OrderSdkAdapter { ...@@ -2035,6 +2039,9 @@ public class OrderSdkAdapter {
case 230: case 230:
newOrderAccountType=OldOrderAccountType.FULL_BUYM_SENDN.getCode(); newOrderAccountType=OldOrderAccountType.FULL_BUYM_SENDN.getCode();
break; break;
case 231:
newOrderAccountType=OldOrderAccountType.MONTH_CARD_TOTAL_DISCOUNT.getCode();
break;
case 22: case 22:
newOrderAccountType=OldOrderAccountType.SINGLE_PRODUCT_REDUCTION.getCode(); newOrderAccountType=OldOrderAccountType.SINGLE_PRODUCT_REDUCTION.getCode();
break; break;
......
...@@ -43,6 +43,7 @@ public enum OldOrderAccountType { ...@@ -43,6 +43,7 @@ public enum OldOrderAccountType {
NEW_USER_DISCOUNT(101, "新用户立减", "NEW_USER_DISCOUNT"), NEW_USER_DISCOUNT(101, "新用户立减", "NEW_USER_DISCOUNT"),
PRICE_DEDUCTION_COUPON(103, "抵价券", "PRICE_DEDUCTION_COUPON"), PRICE_DEDUCTION_COUPON(103, "抵价券", "PRICE_DEDUCTION_COUPON"),
TOTAL_DISCOUNT(205, "优惠总金额", "TOTAL_DISCOUNT"), TOTAL_DISCOUNT(205, "优惠总金额", "TOTAL_DISCOUNT"),
MONTH_CARD_TOTAL_DISCOUNT(231, "月享卡优惠总金额", "MONTH_CARD_TOTAL_DISCOUNT"),
GATHER_SPOT(221, "集点活动","GATHER_SPOT"), GATHER_SPOT(221, "集点活动","GATHER_SPOT"),
MEMBER_PRICE_DISCOUNT(220, "会员价优惠", "MEMBER_PRICE_DISCOUNT"), MEMBER_PRICE_DISCOUNT(220, "会员价优惠", "MEMBER_PRICE_DISCOUNT"),
COCO_PRODUCT_CASH_COUPON(36, "coco商品代金券","COCO_PRODUCT_CASH_COUPON"), COCO_PRODUCT_CASH_COUPON(36, "coco商品代金券","COCO_PRODUCT_CASH_COUPON"),
......
...@@ -37,6 +37,7 @@ public enum QueryOrderAccountType { ...@@ -37,6 +37,7 @@ public enum QueryOrderAccountType {
CARD_DISCOUNT_AMOUNT("CARD_DISCOUNT_AMOUNT", "会员卡优惠金额"), CARD_DISCOUNT_AMOUNT("CARD_DISCOUNT_AMOUNT", "会员卡优惠金额"),
XY_DISCOUNT("XY_DISCOUNT", "x件y折"), XY_DISCOUNT("XY_DISCOUNT", "x件y折"),
TOTAL_DISCOUNT("TOTAL_DISCOUNT", "优惠总金额"), TOTAL_DISCOUNT("TOTAL_DISCOUNT", "优惠总金额"),
MONTH_CARD_TOTAL_DISCOUNT("MONTH_CARD_TOTAL_DISCOUNT", "月享卡优惠总金额"),
ONLINE_PAY("ONLINE_PAY", "线上支付"), ONLINE_PAY("ONLINE_PAY", "线上支付"),
FULL_DISTRIBUTION_FEE("FULL_DISTRIBUTION_FEE", "满减配送费"), FULL_DISTRIBUTION_FEE("FULL_DISTRIBUTION_FEE", "满减配送费"),
OFFLINE_PAY("OFFLINE_PAY", "线下支付"), OFFLINE_PAY("OFFLINE_PAY", "线下支付"),
......
...@@ -716,6 +716,8 @@ public class QueryOrdersResponse { ...@@ -716,6 +716,8 @@ public class QueryOrdersResponse {
private String addInfo; private String addInfo;
private String productId; private String productId;
private String extInfo;
} }
@NoArgsConstructor @NoArgsConstructor
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>assortment-shoppingcart-sdk</artifactId> <artifactId>assortment-shoppingcart-sdk</artifactId>
<version>1.2.6.RELEASE</version> <version>1.2.7.RELEASE</version>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
......
...@@ -15,4 +15,5 @@ ...@@ -15,4 +15,5 @@
| 1.2.3.RELEASE| 麦咖啡商品券门槛金额字段| 孙昱 | 2021-02-04 | | 1.2.3.RELEASE| 麦咖啡商品券门槛金额字段| 孙昱 | 2021-02-04 |
| 1.2.4.RELEASE| 多小料| 刘鹏飞 | 2021-03-03 | | 1.2.4.RELEASE| 多小料| 刘鹏飞 | 2021-03-03 |
| 1.2.5.RELEASE| 频次券| 梁崇福 | 2021-03-09 | | 1.2.5.RELEASE| 频次券| 梁崇福 | 2021-03-09 |
| 1.2.6.RELEASE| 多规格加料校验| 梁崇福 | 2021-03-25 | | 1.2.6.RELEASE| 多规格加料校验| 梁崇福 | 2021-03-25 |
\ No newline at end of file | 1.2.7.RELEASE| 麦咖啡月享卡2.0| 孙昱 | 2021-04-15 |
...@@ -80,7 +80,13 @@ public class CartGoods { ...@@ -80,7 +80,13 @@ public class CartGoods {
/** /**
* 是否为种子券商品 1:是;0:否 * 是否为种子券商品 1:是;0:否
*/ */
private int isSeedCouponGoods; private int isMonthCardGoods;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private int isUseMonthCard;
/** /**
* 是否是太阳蛋商品 * 是否是太阳蛋商品
*/ */
...@@ -314,6 +320,12 @@ public class CartGoods { ...@@ -314,6 +320,12 @@ public class CartGoods {
* 月享卡类型:1.月享卡(单商品购买);2.月享卡(多商品购买);3.普通月卡 * 月享卡类型:1.月享卡(单商品购买);2.月享卡(多商品购买);3.普通月卡
*/ */
private Integer type; private Integer type;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private int isUseMonthCard;
} }
@Data @Data
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.1.48-RELEASE</version> <version>2.1.49-RELEASE</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -243,7 +243,8 @@ public class OrderAdapter { ...@@ -243,7 +243,8 @@ public class OrderAdapter {
if(ActivityTypeEnum.TYPE_11.getCode().equals(activityDiscountsDto.getActivityType()) if(ActivityTypeEnum.TYPE_11.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_12.getCode().equals(activityDiscountsDto.getActivityType()) || ActivityTypeEnum.TYPE_12.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_32.getCode().equals(activityDiscountsDto.getActivityType()) || ActivityTypeEnum.TYPE_32.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_37.getCode().equals(activityDiscountsDto.getActivityType())) { || ActivityTypeEnum.TYPE_37.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_38.getCode().equals(activityDiscountsDto.getActivityType())) {
jsonObject.put("tenderId", activityDiscountsDto.getTenderId()); jsonObject.put("tenderId", activityDiscountsDto.getTenderId());
} else if(ActivityTypeEnum.TYPE_34.getCode().equals(activityDiscountsDto.getActivityType())) { } else if(ActivityTypeEnum.TYPE_34.getCode().equals(activityDiscountsDto.getActivityType())) {
jsonObject.put("customerCode", activityDiscountsDto.getTenderId()); jsonObject.put("customerCode", activityDiscountsDto.getTenderId());
...@@ -317,6 +318,16 @@ public class OrderAdapter { ...@@ -317,6 +318,16 @@ public class OrderAdapter {
.build(); .build();
orderAccountDtos.add(createOrderAccountDto); orderAccountDtos.add(createOrderAccountDto);
} }
if(shoppingCartGoodsDto.getMonthCardDiscount() != null && shoppingCartGoodsDto.getMonthCardDiscount().getDiscountAmount() != 0) {
CreateOrderAccountRequest createOrderAccountDto = CreateOrderAccountRequest.builder()
.accountId("")
.name(shoppingCartGoodsDto.getMonthCardDiscount().getDiscountDesc())
.price(shoppingCartGoodsDto.getMonthCardDiscount().getDiscountAmount())
.accountType(QueryOrderAccountType.MONTH_CARD_TOTAL_DISCOUNT)
.sequence(orderAccountIndex++)
.build();
orderAccountDtos.add(createOrderAccountDto);
}
createOrderDto.setAccounts(CollectionUtils.isNotEmpty(orderAccountDtos) ? orderAccountDtos : Collections.emptyList()); createOrderDto.setAccounts(CollectionUtils.isNotEmpty(orderAccountDtos) ? orderAccountDtos : Collections.emptyList());
// update by miaohui 20201030 for 【ID1018638】【C端服务端】活动库存接口调整对接 // update by miaohui 20201030 for 【ID1018638】【C端服务端】活动库存接口调整对接
...@@ -442,7 +453,8 @@ public class OrderAdapter { ...@@ -442,7 +453,8 @@ public class OrderAdapter {
.build(); .build();
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
if(ActivityTypeEnum.TYPE_32.getCode().equals(activityDiscountsDto.getActivityType()) if(ActivityTypeEnum.TYPE_32.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_37.getCode().equals(activityDiscountsDto.getActivityType())) { || ActivityTypeEnum.TYPE_37.getCode().equals(activityDiscountsDto.getActivityType())
|| ActivityTypeEnum.TYPE_38.getCode().equals(activityDiscountsDto.getActivityType())) {
jsonObject.put("tenderId", activityDiscountsDto.getTenderId()); jsonObject.put("tenderId", activityDiscountsDto.getTenderId());
} }
if(null != activityDiscountsDto.getExtendType()) { if(null != activityDiscountsDto.getExtendType()) {
...@@ -1356,7 +1368,7 @@ public class OrderAdapter { ...@@ -1356,7 +1368,7 @@ public class OrderAdapter {
String customerScorePrompt = null; String customerScorePrompt = null;
if (CollectionUtils.isNotEmpty(ordersBean.getAccountList())) { if (CollectionUtils.isNotEmpty(ordersBean.getAccountList())) {
for (QueryOrdersResponse.DataBean.OrderBean.AccountBean accountBean : ordersBean.getAccountList()) { for (QueryOrdersResponse.DataBean.OrderBean.AccountBean accountBean : ordersBean.getAccountList()) {
if (accountBean.getPrice() < 0) { if (accountBean.getPrice() < 0 && !OldOrderAccountType.MONTH_CARD_TOTAL_DISCOUNT.getCode().equals(accountBean.getType())) {
discountTotalAmount = discountTotalAmount + (0 - accountBean.getPrice()); discountTotalAmount = discountTotalAmount + (0 - accountBean.getPrice());
} }
if (OrderAccountType.BUY_DISCOUNT.getCode().equals(accountBean.getType())) { if (OrderAccountType.BUY_DISCOUNT.getCode().equals(accountBean.getType())) {
...@@ -1394,7 +1406,11 @@ public class OrderAdapter { ...@@ -1394,7 +1406,11 @@ public class OrderAdapter {
customerScorePrompt = decimalFormat.format(customerScoreAmount / 100.0); customerScorePrompt = decimalFormat.format(customerScoreAmount / 100.0);
// customerScorePrompt = "积分抵扣-¥" + customerScoreAmountStr; // customerScorePrompt = "积分抵扣-¥" + customerScoreAmountStr;
} }
if (Integer.valueOf(99).equals(accountBean.getType())) { if (OldOrderAccountType.MONTH_CARD_TOTAL_DISCOUNT.getCode().equals(accountBean.getType())) {
responseVo.setMonthCardTotalDiscount(accountBean.getPrice());
responseVo.setMonthCardTotalDiscountName(accountBean.getName());
}
if (OldOrderAccountType.FREIGHT_COUPON.getCode().equals(accountBean.getType())) {
responseVo.setFreightCouponName(accountBean.getName()); responseVo.setFreightCouponName(accountBean.getName());
} }
} }
...@@ -2175,16 +2191,15 @@ public class OrderAdapter { ...@@ -2175,16 +2191,15 @@ public class OrderAdapter {
discountTotalAmount = discountTotalAmount + productDiscount.getDiscountAmount()*productDiscount.getDiscountQty(); discountTotalAmount = discountTotalAmount + productDiscount.getDiscountAmount()*productDiscount.getDiscountQty();
if (OrderAccountType.PRODUCT_COUPON.getCode().equals(productDiscount.getDiscountType())) { if (OrderAccountType.PRODUCT_COUPON.getCode().equals(productDiscount.getDiscountType())) {
hasProductCoupon = true; hasProductCoupon = true;
productVo.setCouponName(productDiscount.getDiscountDesc()); if(StringUtils.isNotBlank(productDiscount.getExtInfo())) {
// Integer extendType = StringUtils.isBlank(productDiscount.getAddInfo())?null:JSON.parseObject(productDiscount.getAddInfo()).getInteger("extendType"); JSONObject productDiscountExtInfo = JSON.parseObject(productDiscount.getExtInfo());
// if(null != extendType && (3 == extendType || 4 == extendType || 5 == extendType)) { Integer extendType = productDiscountExtInfo.getInteger("extendType");
// productVo.setCouponName(productDiscount.getDiscountDesc()); if(null == extendType || extendType != 12) {
// } else { productVo.setCouponName(productDiscount.getDiscountDesc());
// productVo.setName(productDiscount.getDiscountDesc()); } else {
// productVo.setSpuName(productDiscount.getDiscountDesc()); productVo.setFinalPrice(productVo.getOriginalPrice());
// productVo.setExtras(""); }
// productVo.setSpecification(""); }
// }
} }
if (OrderAccountType.BUYM_SENDN.getCode().equals(productDiscount.getDiscountType())) { if (OrderAccountType.BUYM_SENDN.getCode().equals(productDiscount.getDiscountType())) {
activityType = ActivityTypeEnum.TYPE_61.getCode(); activityType = ActivityTypeEnum.TYPE_61.getCode();
...@@ -2634,6 +2649,9 @@ public class OrderAdapter { ...@@ -2634,6 +2649,9 @@ public class OrderAdapter {
if (ActivityTypeEnum.TYPE_32.getCode().equals(activityType)) { if (ActivityTypeEnum.TYPE_32.getCode().equals(activityType)) {
return OldOrderAccountType.PRODUCT_COUPON; return OldOrderAccountType.PRODUCT_COUPON;
} }
if (ActivityTypeEnum.TYPE_38.getCode().equals(activityType)) {
return OldOrderAccountType.PRODUCT_COUPON;
}
if (ActivityTypeEnum.TYPE_37.getCode().equals(activityType)) { if (ActivityTypeEnum.TYPE_37.getCode().equals(activityType)) {
return OldOrderAccountType.SEED_PRODUCT_COUPON; return OldOrderAccountType.SEED_PRODUCT_COUPON;
} }
...@@ -2687,6 +2705,9 @@ public class OrderAdapter { ...@@ -2687,6 +2705,9 @@ public class OrderAdapter {
if (ActivityTypeEnum.TYPE_230.getCode().equals(activityType)){ if (ActivityTypeEnum.TYPE_230.getCode().equals(activityType)){
return OldOrderAccountType.FULL_BUYM_SENDN; return OldOrderAccountType.FULL_BUYM_SENDN;
} }
if (ActivityTypeEnum.TYPE_231.getCode().equals(activityType)){
return OldOrderAccountType.MONTH_CARD_TOTAL_DISCOUNT;
}
return OldOrderAccountType.BUYM_SENDN; return OldOrderAccountType.BUYM_SENDN;
} }
......
...@@ -107,6 +107,11 @@ public class ShoppingCartGoodsDto { ...@@ -107,6 +107,11 @@ public class ShoppingCartGoodsDto {
*/ */
private Long payCardFee; private Long payCardFee;
/**
* 月享卡总优惠金额
*/
private MonthCardDiscount monthCardDiscount;
@Data @Data
public static class CartGoodsDetailDto { public static class CartGoodsDetailDto {
/** /**
...@@ -356,4 +361,28 @@ public class ShoppingCartGoodsDto { ...@@ -356,4 +361,28 @@ public class ShoppingCartGoodsDto {
private Integer type; private Integer type;
} }
@Data
public static class MonthCardDiscount {
/**
* 月享卡2.0优惠总额
*/
private Long discountAmount;
/**
* 月享卡券号
*/
private String couponCode;
/**
* 券标识
*/
private String couponLogo;
/**
* 优惠标识
*/
private String discountLogo;
/**
* 优惠描述
*/
private String discountDesc;
}
} }
...@@ -114,6 +114,14 @@ public class QueryOrderResponseVo { ...@@ -114,6 +114,14 @@ public class QueryOrderResponseVo {
*/ */
private String freightCouponName; private String freightCouponName;
/** /**
* 月享卡优惠总金额
*/
private Long monthCardTotalDiscount;
/**
* 月享卡优惠总金额
*/
private String monthCardTotalDiscountName;
/**
* 限时折扣优惠金额 * 限时折扣优惠金额
*/ */
private Long discountLimitAmount; private Long discountLimitAmount;
......
...@@ -34,6 +34,7 @@ public enum ActivityTypeEnum { ...@@ -34,6 +34,7 @@ public enum ActivityTypeEnum {
TYPE_34(34, "运费券"), TYPE_34(34, "运费券"),
TYPE_35(35, "买1赠3券"), TYPE_35(35, "买1赠3券"),
TYPE_37(37, "种子券"), TYPE_37(37, "种子券"),
TYPE_38(38, "月享卡2.0"),
TYPE_5(5, "整单满金额折"), TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"), TYPE_51(51, "每满金额折"),
TYPE_52(52, "阶梯满金额折"), TYPE_52(52, "阶梯满金额折"),
...@@ -42,6 +43,7 @@ public enum ActivityTypeEnum { ...@@ -42,6 +43,7 @@ public enum ActivityTypeEnum {
TYPE_61(61, "单品买M赠N"), TYPE_61(61, "单品买M赠N"),
TYPE_7(7, "满额赠券"), TYPE_7(7, "满额赠券"),
TYPE_8(8, "满N件换购"), TYPE_8(8, "满N件换购"),
TYPE_231(231, "月享卡总优惠"),
/** /**
* 加价购 * 加价购
*/ */
......
...@@ -80,15 +80,8 @@ import java.util.stream.Collectors; ...@@ -80,15 +80,8 @@ import java.util.stream.Collectors;
public class CheckMCCafeOrder { public class CheckMCCafeOrder {
@Autowired @Autowired
private StoreTableNumberManager storeTableNumberManager;
@Autowired
private AssortmentOpenPlatformIappWxappConfigManager openPlatformIappWxappConfigManager; private AssortmentOpenPlatformIappWxappConfigManager openPlatformIappWxappConfigManager;
@Autowired @Autowired
private AssortmentOpenPlatformPartnerStoreDeliveryConfigManager deliveryConfigManager;
// 缓存取用户数据用
// @Autowired
// private UserServiceImpl userService;
@Autowired
private AssortmentCustomerInfoManager customerInfoManager; private AssortmentCustomerInfoManager customerInfoManager;
//门店SDK //门店SDK
@Autowired @Autowired
...@@ -101,23 +94,15 @@ public class CheckMCCafeOrder { ...@@ -101,23 +94,15 @@ public class CheckMCCafeOrder {
private MemberPropertyService memberPropertyService; private MemberPropertyService memberPropertyService;
@Autowired @Autowired
private ShoppingCartClient shoppingCartClient; private ShoppingCartClient shoppingCartClient;
// @Autowired
// private OrderAdapter orderAdapter;
@Autowired
private StoreServiceImpl storeService;
@Autowired
private StockClient stockClient;
@Autowired
private ItemServiceImpl itemService;
@Autowired @Autowired
private CouponService couponService; private CouponService couponService;
@Autowired @Autowired
private CouponClientService couponClientService; private CouponClientService couponClientService;
@Autowired @Autowired
private DeliveryFeiginMCCafeClient deliveryFeiginMCCafeClient;
@Autowired
private DeliveryServiceFeiginMCCafeClient deliveryServiceFeiginMCCafeClient; private DeliveryServiceFeiginMCCafeClient deliveryServiceFeiginMCCafeClient;
@Value("${mcCafe.withOrderBuy.cardId}")
private String withOrderBuyCardId;
@Value("${mccafe.universal.coupon.code}") @Value("${mccafe.universal.coupon.code}")
private String withOrderBuyCouponCode; private String withOrderBuyCouponCode;
...@@ -563,8 +548,17 @@ public class CheckMCCafeOrder { ...@@ -563,8 +548,17 @@ public class CheckMCCafeOrder {
} }
List<MCCafeCouponVo> mcCafeCouponVos = new ArrayList<>(); List<MCCafeCouponVo> mcCafeCouponVos = new ArrayList<>();
Map<String, String> mcCafeUsedCoupon = new HashMap<>(); Map<String, String> mcCafeUsedCoupon = new HashMap<>();
List<String> seedCardList = shoppingCartGoodsDto.getProducts().stream().filter(o -> ProductTypeEnum.getVirtualProductType().contains(o.getProductType())) List<String> seedCardList = new ArrayList<>();
.map(o -> o.getMonthCardInfo().getCardCode()).collect(Collectors.toList()); shoppingCartGoodsDto.getProducts().stream().filter(o -> ProductTypeEnum.getVirtualProductType().contains(o.getProductType()))
.forEach(o -> {
if(o.getMonthCardInfo() == null) {
ShoppingCartGoodsDto.MonthCardVo monthCardVo = new ShoppingCartGoodsDto.MonthCardVo();
monthCardVo.setCardCode(withOrderBuyCouponCode);
monthCardVo.setCardNo(withOrderBuyCardId);
o.setMonthCardInfo(monthCardVo);
}
seedCardList.add(o.getMonthCardInfo().getCardCode());
});
seedCardList.add(withOrderBuyCouponCode); seedCardList.add(withOrderBuyCouponCode);
if(CollectionUtils.isNotEmpty(shoppingCartGoodsDto.getActivityDiscountsDtos())) { if(CollectionUtils.isNotEmpty(shoppingCartGoodsDto.getActivityDiscountsDtos())) {
shoppingCartGoodsDto.getActivityDiscountsDtos().forEach(o-> { shoppingCartGoodsDto.getActivityDiscountsDtos().forEach(o-> {
......
...@@ -593,8 +593,8 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -593,8 +593,8 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
*/ */
public CreateOrderResponse createOrder(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, public CreateOrderResponse createOrder(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto,
OrderExtendedReq orderExtendedReq, OrderClientType orderClient,String appId) { OrderExtendedReq orderExtendedReq, OrderClientType orderClient,String appId) {
processRepeatGoodsWithSeedCoupon(shoppingCartGoodsDto); // processRepeatGoodsWithSeedCoupon(shoppingCartGoodsDto);
log.info("购物车拆行:"+JSON.toJSONString(shoppingCartGoodsDto)); // log.info("购物车拆行:"+JSON.toJSONString(shoppingCartGoodsDto));
BaseCreateOrderRequest baseCreateOrderRequest = orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto, storeResponseDto); BaseCreateOrderRequest baseCreateOrderRequest = orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto, storeResponseDto);
//查询第三方商品编号 //查询第三方商品编号
baseCreateOrderRequest = getProductCustomerCode(baseCreateOrderRequest); baseCreateOrderRequest = getProductCustomerCode(baseCreateOrderRequest);
...@@ -903,7 +903,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -903,7 +903,7 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
// } // }
//麦咖啡随单购咖啡月卡 //麦咖啡随单购咖啡月卡
if(withOrderBuyCoupon(orderBean, orderExtInfoDto.getThirdPartyMemberId())) { if(withOrderBuyCoupon2(orderBean, orderExtInfoDto.getThirdPartyMemberId())) {
orderBean = getOrderBean(confirmOrderDto); orderBean = getOrderBean(confirmOrderDto);
} }
...@@ -1739,4 +1739,115 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -1739,4 +1739,115 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
return true; return true;
} }
/**
* 月享卡2.0发券
* @param orderBean
*/
public boolean withOrderBuyCoupon2(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()){
if(ProductTypeEnum.getVirtualProductType().contains(productBean.getProductType())) {
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 false;
}
SendCouponForqujiaRequestDto request = new SendCouponForqujiaRequestDto();
request.setReceivedId(orderBean.getOid());
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;
}
List<SendCouponForqujiaDtoResponseDto.Card> cardList = responseDto.getData().getCard_list();
MCCafeCouponRequest mcCafeCouponRequest = MCCafeCouponRequest.builder()
.ver(88)
.reqtype(CouponReqTypeEnum.BATCH_QUERY.getCode())
.partnerId(Integer.parseInt(orderBean.getCompanyId()))
.store_id(orderBean.getShopId())
.station_id("1")
.operator_id(orderBean.getUserId())
.channel(OrderSource.ALIPAY.getSource().equals(orderBean.getSource())?MCCafeChannelEnum.MOCOFFEE_ZFB.getName():MCCafeChannelEnum.MOCOFFEE_WX.getName())
.couponlist(cardList.stream().map(o -> new MCCafeCouponVo(o.getCard_code())).collect(Collectors.toList()))
.sign("skip")
.build();
McdNetBatchQueryResponse mcdNetBatchQueryResponse = couponClientService.batchQuery(mcCafeCouponRequest);
if (mcdNetBatchQueryResponse == null || !ResponseCodeConstant.RESPONSE_SUCCESS.equals(mcdNetBatchQueryResponse.getStatusCode())
|| CollectionUtils.isEmpty(mcdNetBatchQueryResponse.getCouponlist())) {
LogUtil.error("获取优惠券详情失败,发券失败", mcCafeCouponRequest, 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(cardCodeStr.substring(0, cardCodeStr.length()-1));
req.getCouponReceiveInfoList().add(couponReceiveInfo);
}
}
LogUtil.info("生成参数完成:", req, null);
orderSdkService.updateCostCouponCodeNew(req, LogTreadLocal.getTrackingNo());
return true;
} catch (Exception e){
LogUtil.error("发券异常", null, null, e);
}
return true;
}
} }
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<version>1.0.0</version> <version>1.0.0</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<version>1.3.44.RELEASE</version> <version>1.3.45.RELEASE</version>
<artifactId>ordercenter-sdk</artifactId> <artifactId>ordercenter-sdk</artifactId>
<dependencies> <dependencies>
......
...@@ -75,4 +75,5 @@ ...@@ -75,4 +75,5 @@
| 1.3.41.RELEASE | 美业 | 刘鹏飞 | 2021-03-12 | | 1.3.41.RELEASE | 美业 | 刘鹏飞 | 2021-03-12 |
| 1.3.42.RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 | | 1.3.42.RELEASE | 三方展示活动信息 | 张志恒 | 2021-03-22 |
| 1.3.43.RELEASE | 小助手刷卡支付 | 王航航 | 2021-03-31 | | 1.3.43.RELEASE | 小助手刷卡支付 | 王航航 | 2021-03-31 |
| 1.3.44.RELEASE | 新增支付号升级SDK | 王航航 | 2021-04-06 | | 1.3.44.RELEASE | 新增支付号升级SDK | 王航航 | 2021-04-06 |
\ No newline at end of file | 1.3.45.RELEASE | 月享卡2.0 | 徐康 | 2021-04-15 |
\ No newline at end of file
...@@ -229,6 +229,7 @@ public class InterfaceAddressConstant { ...@@ -229,6 +229,7 @@ public class InterfaceAddressConstant {
* 修改费用表购买的优惠券和优惠表使用的优惠券 * 修改费用表购买的优惠券和优惠表使用的优惠券
*/ */
public static final String UPDATE_COST_COUPONCODE = "/order/v2/mcCafe/updateCostCouponCode"; public static final String UPDATE_COST_COUPONCODE = "/order/v2/mcCafe/updateCostCouponCode";
public static final String UPDATE_COST_COUPONCODE_NEW = "/order/v2/mcCafe/updateCostCouponCodeNew";
/** /**
* 查询使用了优惠券的订单数量 * 查询使用了优惠券的订单数量
......
...@@ -902,6 +902,19 @@ public class OrderSdkService { ...@@ -902,6 +902,19 @@ public class OrderSdkService {
} }
/** /**
* 修改费用表购买的优惠券和优惠表使用的优惠券
* @param request
* @param trackingNo
* @return
*/
public BaseResponse updateCostCouponCodeNew(UpdateCouponCodeReq request, String trackingNo) {
OrderBaseResp responseDTO = RequestThirdPartyUtils.httpJsonReqComplexNew(restTemplate, UPDATE_COST_COUPONCODE_NEW,
createBaseRequest(request, trackingNo), new ParameterizedTypeReference<OrderBaseResp>() {
});
return responseHandle(responseDTO);
}
/**
* 查询使用了特定优惠券的订单数量 * 查询使用了特定优惠券的订单数量
* @param request * @param request
* @param trackingNo * @param trackingNo
......
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-shoppingcart-sdk</artifactId> <artifactId>assortment-shoppingcart-sdk</artifactId>
<version>1.2.6.RELEASE</version> <version>1.2.7.RELEASE</version>
</dependency> </dependency>
<!-- 再来一单查询订单信息 --> <!-- 再来一单查询订单信息 -->
<dependency> <dependency>
......
...@@ -331,8 +331,11 @@ public class ShoppingCartMccafeAdapter { ...@@ -331,8 +331,11 @@ public class ShoppingCartMccafeAdapter {
* 1. 商品券:cartGoodsDetailDto.couponCode非空,保留ApportionGoods#ApportionDetails#apportionType中32的 * 1. 商品券:cartGoodsDetailDto.couponCode非空,保留ApportionGoods#ApportionDetails#apportionType中32的
* 2. 普通商品:cartGoodsDetailDto.couponCode空,去掉32的 * 2. 普通商品:cartGoodsDetailDto.couponCode空,去掉32的
*/ */
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods.ApportionDetails> apportionDetails = apportionGoods.getApportionDetails().stream().filter(detail -> !detail.getActivityType().equals(ActivityTypeEnum.TYPE_32.getCode()) List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods.ApportionDetails> apportionDetails = apportionGoods.getApportionDetails().stream()
&& !detail.getActivityType().equals(ActivityTypeEnum.TYPE_104.getCode()) && !detail.getActivityType().equals(ActivityTypeEnum.TYPE_2.getCode()) && !detail.getActivityType().equals(ActivityTypeEnum.TYPE_21.getCode())).collect(Collectors.toList()); .filter(detail -> !detail.getActivityType().equals(ActivityTypeEnum.TYPE_32.getCode())
&& !detail.getActivityType().equals(ActivityTypeEnum.TYPE_37.getCode())
&& !detail.getActivityType().equals(ActivityTypeEnum.TYPE_38.getCode()) && !detail.getActivityType().equals(ActivityTypeEnum.TYPE_104.getCode())
&& !detail.getActivityType().equals(ActivityTypeEnum.TYPE_2.getCode()) && !detail.getActivityType().equals(ActivityTypeEnum.TYPE_21.getCode())).collect(Collectors.toList());
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods.ApportionDetails detail : apportionDetails) { for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.ApportionGoods.ApportionDetails detail : apportionDetails) {
List<ActivityDiscountsDto> currentDiscount = activityDiscountsDtoList.stream().filter(discount -> ObjectUtils.equals(discount.getActivityCode(), detail.getActivityCode())).collect(Collectors.toList()); List<ActivityDiscountsDto> currentDiscount = activityDiscountsDtoList.stream().filter(discount -> ObjectUtils.equals(discount.getActivityCode(), detail.getActivityCode())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(currentDiscount)) { if (CollectionUtils.isNotEmpty(currentDiscount)) {
......
...@@ -88,10 +88,6 @@ public class ActivityCalculationDiscountRequestDto { ...@@ -88,10 +88,6 @@ public class ActivityCalculationDiscountRequestDto {
*/ */
private String activityCode; private String activityCode;
/** /**
* 是否为种子券商品
*/
private Integer isSeedCouponGoods;
/**
* 购物车商品行uid(种子券商品才传) * 购物车商品行uid(种子券商品才传)
*/ */
private String cartGoodsUid; private String cartGoodsUid;
......
...@@ -57,6 +57,12 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -57,6 +57,12 @@ public class ActivityCalculationDiscountResponseDto {
* 总的优惠信息集合 * 总的优惠信息集合
*/ */
private List<Discount> discounts; private List<Discount> discounts;
/**
* 月享卡2.0优惠
*/
private MonthCardDiscount monthlyEnjoyCardDiscount;
/** /**
* 商品优惠信息 * 商品优惠信息
*/ */
...@@ -115,6 +121,30 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -115,6 +121,30 @@ public class ActivityCalculationDiscountResponseDto {
private SendPoint sendPointVo; private SendPoint sendPointVo;
@Data
public static class MonthCardDiscount{
/**
* 月享卡2.0优惠总额
*/
private Long discountAmount;
/**
* 月享卡券号
*/
private String couponCode;
/**
* 券标识
*/
private String couponLogo;
/**
* 优惠标识
*/
private String discountLogo;
/**
* 优惠描述
*/
private String discountDesc;
}
@Data @Data
public static class ActivityPrompt { public static class ActivityPrompt {
......
package cn.freemud.entities.dto.shoppingCart; package cn.freemud.entities.dto.shoppingCart;
import cn.freemud.entities.dto.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.dto.OrderProductAddInfo; import cn.freemud.entities.dto.OrderProductAddInfo;
import cn.freemud.entities.dto.activity.ActivityDiscountsDto; import cn.freemud.entities.dto.activity.ActivityDiscountsDto;
import cn.freemud.entities.dto.activity.ShareDiscountActivityDto; import cn.freemud.entities.dto.activity.ShareDiscountActivityDto;
...@@ -92,6 +93,12 @@ public class ShoppingCartGoodsDto { ...@@ -92,6 +93,12 @@ public class ShoppingCartGoodsDto {
* 订单享受的促销活动 * 订单享受的促销活动
*/ */
private List<ActivityDiscountsDto> activityDiscountsDtos; private List<ActivityDiscountsDto> activityDiscountsDtos;
/**
* 月享卡2.0优惠集合
*/
private ActivityCalculationDiscountResponseDto.CalculationDiscountResult.MonthCardDiscount monthCardDiscount;
/** /**
* 扣减库存 * 扣减库存
*/ */
......
...@@ -41,4 +41,17 @@ public class BatchOperateCartGoodsRequestVo extends BaseRequestVo{ ...@@ -41,4 +41,17 @@ public class BatchOperateCartGoodsRequestVo extends BaseRequestVo{
*/ */
private List<BatchGoodsInfoVo> goodsInfos; private List<BatchGoodsInfoVo> goodsInfos;
/**
* 根据券号清除当前购物车中月卡及商品信息
*/
private String redundancyCouponCode;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private int isUseMonthCard;
} }
\ No newline at end of file
...@@ -238,15 +238,15 @@ public class CartGoods { ...@@ -238,15 +238,15 @@ public class CartGoods {
/** /**
* 是否是月享卡商品 * 是否是月享卡商品
*/ */
private int isMonthCard; private int isMonthCard = 0;
/** /**
* 是否是太阳蛋商品 * 是否是太阳蛋商品
*/ */
private int isSunnyCoupon=0; private int isSunnyCoupon=0;
/** /**
* 是否为种子券商品 1:是;0:否 * 是否为月享卡商品 1:是;0:否
*/ */
private int isSeedCouponGoods; private int isMonthCardGoods = 0;
/** /**
* 月享卡信息 * 月享卡信息
*/ */
......
package cn.freemud.entities.vo;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
@Data
public class ClearCouponCodeRequestVo extends BaseRequestVo {
@NotEmpty(message = "券号不可为空")
private String redundancyCouponCode;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private int isUseMonthCard;
}
...@@ -29,4 +29,10 @@ public class MonthCardVo { ...@@ -29,4 +29,10 @@ public class MonthCardVo {
* 月享卡类型:1.月享卡(单商品购买);2.月享卡(多商品购买);3.普通月卡 * 月享卡类型:1.月享卡(单商品购买);2.月享卡(多商品购买);3.普通月卡
*/ */
private Integer type; private Integer type;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private int isUseMonthCard = 1;
} }
...@@ -69,6 +69,13 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo { ...@@ -69,6 +69,13 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo {
* 优惠券code列表 * 优惠券code列表
*/ */
private List<couponCode> couponCodes; private List<couponCode> couponCodes;
/**
* 是否使用月享卡2.0
* 1 是
* 0 否
*/
private Integer isUseMonthCard = 1;
/** /**
* 优惠券对应的活动号 * 优惠券对应的活动号
*/ */
......
...@@ -36,6 +36,7 @@ public enum ActivityTypeEnum { ...@@ -36,6 +36,7 @@ public enum ActivityTypeEnum {
TYPE_32(32, "商品券"), TYPE_32(32, "商品券"),
TYPE_33(33, "换购券"), TYPE_33(33, "换购券"),
TYPE_37(37, "月享卡种子券"), TYPE_37(37, "月享卡种子券"),
TYPE_38(38,"月享卡2.0"),
TYPE_5(5, "整单满金额折"), TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"), TYPE_51(51, "每满金额折"),
TYPE_52(52, "阶梯满金额折"), TYPE_52(52, "阶梯满金额折"),
......
...@@ -102,7 +102,6 @@ public enum ResponseResult { ...@@ -102,7 +102,6 @@ public enum ResponseResult {
SHOPPING_CART_BUY_ONE_SEND_GOODS_ERR("44033", "寄件活动商品错误"), SHOPPING_CART_BUY_ONE_SEND_GOODS_ERR("44033", "寄件活动商品错误"),
SHOPPING_CART_COUPON_MIX_NOT_EXIST("44034", "券商品不存在"), SHOPPING_CART_COUPON_MIX_NOT_EXIST("44034", "券商品不存在"),
SHOPPING_CART_QTY_LIMIT_ERR("44035", "该商品单次购买数量限制为10,请知晓"), SHOPPING_CART_QTY_LIMIT_ERR("44035", "该商品单次购买数量限制为10,请知晓"),
SHOPPING_CART_SEED_COUPON_VALID("44037","券商品数量不可大于券数量"),
SHOPPING_CART_MATERIA_QTY_LIMIT_ERR("44038", "商品加料超过最大限制"), SHOPPING_CART_MATERIA_QTY_LIMIT_ERR("44038", "商品加料超过最大限制"),
/** /**
......
...@@ -20,6 +20,7 @@ import cn.freemud.service.CommonService; ...@@ -20,6 +20,7 @@ import cn.freemud.service.CommonService;
import cn.freemud.service.impl.ItemServiceImpl; import cn.freemud.service.impl.ItemServiceImpl;
import cn.freemud.service.thirdparty.ActivityClient; import cn.freemud.service.thirdparty.ActivityClient;
import cn.freemud.utils.PropertyConvertUtil; import cn.freemud.utils.PropertyConvertUtil;
import com.alibaba.fastjson.JSON;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest; import com.freemud.application.sdk.api.membercenter.request.QueryReceiveAddressRequest;
...@@ -197,7 +198,7 @@ public class CalculationServiceImpl { ...@@ -197,7 +198,7 @@ public class CalculationServiceImpl {
calculationDiscountResult == null ? new ArrayList<>() : calculationDiscountResult.getApportionGoods(); calculationDiscountResult == null ? new ArrayList<>() : calculationDiscountResult.getApportionGoods();
Map<String, String> duplicateGoodsMap = new HashMap<>(); Map<String, String> duplicateGoodsMap = new HashMap<>();
cartGoodsList.stream().collect(Collectors.groupingBy(CartGoods::getGoodsId, Collectors.counting())).forEach((goodsId, count) -> { cartGoodsList.stream().filter(cartGoods -> !StringUtils.equals(cartGoods.getSkuId(),"9999")).collect(Collectors.groupingBy(CartGoods::getGoodsId, Collectors.counting())).forEach((goodsId, count) -> {
duplicateGoodsMap.put(goodsId,String.format("%s,0", count)); duplicateGoodsMap.put(goodsId,String.format("%s,0", count));
}); });
for (int i = 0, len = cartGoodsList.size(); i < len; i++) { for (int i = 0, len = cartGoodsList.size(); i < len; i++) {
...@@ -251,7 +252,7 @@ public class CalculationServiceImpl { ...@@ -251,7 +252,7 @@ public class CalculationServiceImpl {
} }
} }
List<ShoppingCartGoodsDto.CartGoodsDetailDto> products = shoppingCartGoodsDto.getProducts(); List<ShoppingCartGoodsDto.CartGoodsDetailDto> products = shoppingCartGoodsDto.getProducts().stream().filter(p-> !StringUtils.equals("9999",p.getSkuId())).collect(Collectors.toList());
List<String> productIds = products.stream().map(t -> t.getSkuId()).collect(Collectors.toList()); List<String> productIds = products.stream().map(t -> t.getSkuId()).collect(Collectors.toList());
//调用商品的接口获取商品键位 //调用商品的接口获取商品键位
...@@ -405,9 +406,11 @@ public class CalculationServiceImpl { ...@@ -405,9 +406,11 @@ public class CalculationServiceImpl {
calculationDiscountGoods.setGoodsQuantity(goodsQuantity); calculationDiscountGoods.setGoodsQuantity(goodsQuantity);
calculationDiscountGoods.setOriginalPrice(originalPrice); calculationDiscountGoods.setOriginalPrice(originalPrice);
calculationDiscountGoods.setMemberDiscount(memberDiscount); calculationDiscountGoods.setMemberDiscount(memberDiscount);
//新增咖啡月卡券券号
calculationDiscountGoods.setCouponCode(cartGoods.getCouponCode());
calculationDiscountGoods.setCartGoodsUid(cartGoods.getCartGoodsUid()); calculationDiscountGoods.setCartGoodsUid(cartGoods.getCartGoodsUid());
//新增咖啡月卡券券号,同一行商品才替换券号,防止不同商品券相同sku之间的覆盖
if (cartGoods.getCartGoodsUid().equals(calculationDiscountGoods.getCartGoodsUid())) {
calculationDiscountGoods.setCouponCode(StringUtils.isEmpty(cartGoods.getCouponCode()) ? null : cartGoods.getCouponCode());
}
ArrayList<ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material> materials = new ArrayList<>(); ArrayList<ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material> materials = new ArrayList<>();
//可选搭配 //可选搭配
......
...@@ -105,9 +105,9 @@ public class BatchGoodsInfoVo { ...@@ -105,9 +105,9 @@ public class BatchGoodsInfoVo {
*/ */
private int isMonthCard; private int isMonthCard;
/** /**
* 是否为种子券商品 1:是;0:否 * 是否为月享卡商品
*/ */
private int isSeedCouponGoods; private int isMonthCardGoods;
/** /**
* 月享卡加购信息 * 月享卡加购信息
*/ */
......
...@@ -144,9 +144,9 @@ public class MCoffeeAddGoodsRequestVo { ...@@ -144,9 +144,9 @@ public class MCoffeeAddGoodsRequestVo {
*/ */
private int isMonthCard; private int isMonthCard;
/** /**
* 是否为种子券商品 1:是;0:否 * 是否为月享卡商品
*/ */
private int isSeedCouponGoods; private int isMonthCardGoods;
/** /**
* 月享卡加购信息 * 月享卡加购信息
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment