Commit b33ca399 by 刘鹏飞

Merge remote-tracking branch 'remotes/origin/feature/coco-payGift-刘鹏飞' into develop

# Conflicts:
#	assortment-ordercenter-sdk/pom.xml
#	assortment-ordercenter-sdk/readme.md
#	order-application-service/pom.xml
parents 5220e7e0 004525d2
......@@ -22,6 +22,17 @@ import java.util.List;
public class PayGiftCheckAndJoinResponseDto {
private String activityName;
/**
* 发送方式
* 0-静默发送
* 5-手动发送
*/
private Integer sendType;
/**
* 活动类型
*/
private String type;
private List<PayGiftCouponVo> coupons;
private PayGiftWechatCouponInfoVo wechatCouponInfo;
}
......@@ -356,6 +356,13 @@ public class QueryOrderResponseVo {
//支付有礼活动名称
private String activityName;
/**
* 支付有礼发送方式
* 0-静默发送
* 5-手动发送
*/
private Integer activitySendType;
//支付有礼领券集合
private List<PayGiftCouponVo> coupons;
private PayGiftWechatCouponInfoVo wechatCouponInfo;
......
......@@ -169,6 +169,11 @@ public class OrderServiceImpl implements Orderservice {
@Value("${mq.cloud_print_exchange}")
private String cloud_print_exchange;
/**
* coco商户
*/
@Value("#{'${coco.partnerId}'.split(',')}")
private List<String> cocoPartnerId;
@Autowired
private AssortmentCloudPrinterManager cloudPrinterManager;
......@@ -892,14 +897,32 @@ public class OrderServiceImpl implements Orderservice {
// 取红包图片
queryOrderResponseVo.setRedpacketsPicture(getRedpacketsPicture(activityId));
queryOrderResponseVo.setActivityId(activityId);
// coco订单不考略是否查询待取餐的订单,直接调用支付有礼活动
// 所以在这个地方排除掉coco,在下边单独实现
//参与支付有礼活动
if(!cocoPartnerId.contains(queryOrderVo.getPartnerId())){
joinPayGift(queryOrderVo.getSessionId(), queryOrderResponseVo);
}
} catch (Exception e) {
LogUtil.error("queryOrders_activity_error", gson.toJson(queryOrdersDto), gson.toJson(queryOrderResponseVo), e);
}
});
}
// coco订单参与支付有礼活动
if(cocoPartnerId.contains(queryOrderVo.getPartnerId())){
queryOrderResponseVos.forEach(queryOrderResponseVo -> {
try {
joinPayGift(queryOrderVo.getSessionId(), queryOrderResponseVo);
} catch (Exception e) {
LogUtil.error("coco_queryOrders_activity_error", gson.toJson(queryOrdersDto), gson.toJson(queryOrderResponseVo), e);
}
});
}
responseMap.put("count", queryOrderResponse.getData() == null ? 0 : queryOrderResponse.getData().getCount());
responseMap.put("list", queryOrderResponseVos);
//只有有订单时才显示用户自定义取餐信息
......@@ -1186,6 +1209,7 @@ public class OrderServiceImpl implements Orderservice {
queryOrderResponseVo.setActivityName(payGiftResponse.getActivityName());
queryOrderResponseVo.setCoupons(payGiftResponse.getCoupons());
queryOrderResponseVo.setWechatCouponInfo(payGiftResponse.getWechatCouponInfo());
queryOrderResponseVo.setActivitySendType(payGiftResponse.getSendType());
}
}
......@@ -1333,6 +1357,12 @@ public class OrderServiceImpl implements Orderservice {
queryOrderResponseVo.setRedpacketsPicture(getRedpacketsPicture(activityId));
}
// 支付有礼
// 目前只有coco在订单详情参加支付有礼,且不检查订单的状态
if(cocoPartnerId.contains(partnerId)){
joinPayGift(sessionId, queryOrderResponseVo);
}
return ResponseUtil.success(queryOrderResponseVo);
}
......
......@@ -146,7 +146,7 @@ public class CouponClientServiceImpl implements CouponClientService {
account -> (OldOrderAccountType.PRODUCT_COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
|| OldOrderAccountType.COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
|| OldOrderAccountType.DISCOUNT_COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
) && account.getPrice() != 0l).collect(Collectors.toList());
)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList)) {
return null;
}
......
......@@ -20,6 +20,7 @@ import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.ActivityService;
import cn.freemud.service.CouponService;
import cn.freemud.service.impl.AssortmentSdkService;
import cn.freemud.service.impl.CouponServiceImpl;
import cn.freemud.service.impl.FullSubtractionActivityServiceImpl;
import cn.freemud.service.impl.mcoffee.calculation.CalculationServiceImpl;
import cn.freemud.service.impl.mcoffee.calculation.CouponDiscountCalculation;
......@@ -109,6 +110,8 @@ public class ShoppingCartMCoffeeServiceImpl {
@Autowired
private StoreCenterService storeCenterService;
@Autowired
private CouponServiceImpl couponService;
@Autowired
private ProductClient productClient;
@Autowired
private ShoppingCartConvertAdapter shoppingCartConvertAdapter;
......@@ -183,7 +186,8 @@ public class ShoppingCartMCoffeeServiceImpl {
String couponName = "";
if (StringUtils.isNotEmpty(couponCode)){
CustomerInfoVo userLoginInfoDto = getCustomerInfoVo(sessionId);
couponName = getCouponNameByCode(couponCode,userLoginInfoDto,BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode());
couponName = getCouponNameByCode(couponCode,userLoginInfoDto,
BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode(),storeId);
addCartGoods.setCouponName(couponName);
}
......@@ -1726,15 +1730,23 @@ public class ShoppingCartMCoffeeServiceImpl {
return requestVo;
}
private String getCouponNameByCode(String couponCode,CustomerInfoVo userInfo,String menuType){
private String getCouponNameByCode(String couponCode,CustomerInfoVo userInfo,String menuType,String storeId){
String couponName = "";
//加购的时候根据券号查询券名称,存入cartGood
CheckSpqInfoRequestDto checkSpqInfoRequestDto = new CheckSpqInfoRequestDto(userInfo.getPartnerId(),
userInfo.getStoreId(),couponCode , menuType);
CouponService couponService = SDKCommonBaseContextWare.getBean(CouponService.class);
CheckSpqInfoResponseDto checkSpqInfoResponseDto = couponService.checkSpqInfo(checkSpqInfoRequestDto);
if (null != checkSpqInfoRequestDto && StringUtils.isNotEmpty(checkSpqInfoResponseDto.getActivityName())){
couponName = checkSpqInfoResponseDto.getActivityName();
String partnerId = userInfo.getPartnerId();
GetMemberCouponRequestVo requestVo = new GetMemberCouponRequestVo();
requestVo.setPartnerId(partnerId);
requestVo.setCouponCode(couponCode);
requestVo.setStoreId(storeId);
GetCouponDetailResponseDto couponDetailResponseDto = couponService.getMemberCoupon(requestVo);
if (couponDetailResponseDto == null || !couponDetailResponseDto.getResult().equals(ResponseCodeConstant.RESPONSE_SUCCESS_1) || CollectionUtils.isEmpty(couponDetailResponseDto.getDetails())) {
return couponName;
}
if (null != couponDetailResponseDto && CollectionUtils.isNotEmpty(couponDetailResponseDto.getDetails())
&& null != couponDetailResponseDto.getDetails().get(0)){
couponName = couponDetailResponseDto.getDetails().get(0).getActive().getActiveName();
}
return couponName;
}
......
......@@ -205,7 +205,7 @@ public class CalculationServiceImpl {
for (ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount discount : discounts) {
int discountAmount = (discount.getDiscount() == null) ? 0 : discount.getDiscount();
Integer discountType = discount.getType();
if (discountType != null && discountAmount > 0) {
if (discountType != null && discountAmount >= 0) {
ActivityDiscountsDto activityDiscountsDto = new ActivityDiscountsDto();
activityDiscountsDto.setActivityCode(discount.getActivityCode());
activityDiscountsDto.setActivityName(discount.getActivityName());
......
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