|
|
|
@@ -1984,26 +1984,40 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
|
|
|
|
for (int i = 0 ; i < orderSave.size(); i ++) { |
|
|
|
OrderComposeSaveDto orderdto = orderSave.get(i); |
|
|
|
// 是否砍价 |
|
|
|
boolean isPress = orderdto.getSignleOrder().getPress() != null ? orderdto.getSignleOrder().getPress() : false; |
|
|
|
WxOrder order = null; |
|
|
|
if (checkCouponIsFree(orderdto.getWxCoupon())) { |
|
|
|
// 免费券 |
|
|
|
order = proxy.saveFreeOrderForCoupon(composeOrder,user, orderdto.getWxCoupon(),orderdto.getCount(), orderdto.getSignleOrder().getCouponChannelId(), orderdto.getSignleOrder().getFormId(), null,payWay); |
|
|
|
if (order != null) { |
|
|
|
// 6. 下订单完成,发送内部消息 |
|
|
|
// 下订单完成,发送内部消息 |
|
|
|
try { |
|
|
|
proxy.sendOrderSuccessActionMsg(order); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("内部消息发送失败: " + e.getMessage(),e); |
|
|
|
throw new MallinkException(ErrorCode.MSG_INSIDE_ERROR); |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
// 有价券 |
|
|
|
order = proxy.saveNoFreeOrderForCoupon(composeOrder,user, orderdto.getWxCoupon(),orderdto.getCount(), orderdto.getSignleOrder().getCouponChannelId(), isPress, orderdto.getSignleOrder().getOrderGroupId(), orderdto.getSignleOrder().getFormId()); |
|
|
|
} |
|
|
|
|
|
|
|
//券是一个数量一个订单, 实物是一个产品一个订单 |
|
|
|
int totalOrderCount = 1; |
|
|
|
if (orderdto.getWxCoupon().oneNumberOneOrder()) { |
|
|
|
totalOrderCount = orderdto.getCount(); |
|
|
|
} |
|
|
|
int perCouponNumber = 1; |
|
|
|
if (totalOrderCount==1) { |
|
|
|
perCouponNumber = orderdto.getCount(); |
|
|
|
} |
|
|
|
for (int j =0 ; j < totalOrderCount ; j ++) { |
|
|
|
// 是否砍价 |
|
|
|
boolean isPress = orderdto.getSignleOrder().getPress() != null ? orderdto.getSignleOrder().getPress() : false; |
|
|
|
WxOrder order = null; |
|
|
|
if (checkCouponIsFree(orderdto.getWxCoupon())) { |
|
|
|
// 免费券 |
|
|
|
order = proxy.saveFreeOrderForCoupon(composeOrder,user, orderdto.getWxCoupon(),perCouponNumber, orderdto.getSignleOrder().getCouponChannelId(), orderdto.getSignleOrder().getFormId(), null,payWay); |
|
|
|
if (order != null) { |
|
|
|
// 6. 下订单完成,发送内部消息 |
|
|
|
// 下订单完成,发送内部消息 |
|
|
|
try { |
|
|
|
proxy.sendOrderSuccessActionMsg(order); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("内部消息发送失败: " + e.getMessage(),e); |
|
|
|
throw new MallinkException(ErrorCode.MSG_INSIDE_ERROR); |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
// 有价券 |
|
|
|
order = proxy.saveNoFreeOrderForCoupon(composeOrder,user, orderdto.getWxCoupon(),perCouponNumber, orderdto.getSignleOrder().getCouponChannelId(), isPress, orderdto.getSignleOrder().getOrderGroupId(), orderdto.getSignleOrder().getFormId()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// couponActionLog |
|
|
|
// try { |
|
|
|
// wxCouponActionLogService.addOne(order, order.getProductId(), order.getOrderNumber(), EnumCouponSendSendType.ACTIVE.getCode(), orderdto.getSignleOrder().getCouponChannelId(),0L); |
|
|
|
|