|
|
|
@@ -248,6 +248,9 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private WxCouponOrderReservationMapper wxCouponOrderReservationMapper; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private WxMerchantRelationMapper wxMerchantRelationMapper; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@@ -1519,6 +1522,7 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
record.setCreateDate(curr); |
|
|
|
record.setUpdateDate(curr); |
|
|
|
wxCouponOrderReservationMapper.insert(record); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
}catch(Exception e){ |
|
|
|
@@ -2234,21 +2238,21 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
* @param user |
|
|
|
*/ |
|
|
|
public void actionAfterCouponOrderSuccess(WxOrder order, WxCoupon coupon, WxCUserBasicInfo user) { |
|
|
|
WxCouponOrder couponOrderQ = new WxCouponOrder(); |
|
|
|
couponOrderQ.setOrderId(order.getId()); |
|
|
|
couponOrderQ.updateTenantInfo(order); |
|
|
|
List<WxCouponOrder> couponorderlist = wxCouponOrderMapper.findList(couponOrderQ); |
|
|
|
WxCouponOrder couponOrder = null; |
|
|
|
if (null != couponorderlist && couponorderlist.size() > 0 ) { |
|
|
|
couponOrder = couponorderlist.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if(EnumCouponType.COUPON_GIFT.getCode().equals(coupon.getType())){ |
|
|
|
WxCouponOrder couponOrderQ = new WxCouponOrder(); |
|
|
|
couponOrderQ.setOrderId(order.getId()); |
|
|
|
couponOrderQ.setCouponId(coupon.getId()); |
|
|
|
couponOrderQ.updateTenantInfo(order); |
|
|
|
List<WxCouponOrder> couponorderlist = wxCouponOrderMapper.findList(couponOrderQ); |
|
|
|
if (null != couponorderlist && couponorderlist.size() > 0 ) { |
|
|
|
WxCouponOrder couponOrder = couponorderlist.get(0); |
|
|
|
try { |
|
|
|
wxCouponOrderService.verify(couponOrder,null,EnumCouponVerifyType.VERIFY_AUTO,null); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("系统券包核销异常:" + e.getMessage(),e); |
|
|
|
} |
|
|
|
try { |
|
|
|
wxCouponOrderService.verify(couponOrder,null,EnumCouponVerifyType.VERIFY_AUTO,null); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("系统券包核销异常:" + e.getMessage(),e); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@@ -2267,18 +2271,18 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("订单发券:" + e.getMessage(),e); |
|
|
|
} |
|
|
|
//通知用户 |
|
|
|
//通知 |
|
|
|
try { |
|
|
|
sendMsgAfterCouponOrderSuccess(order,coupon,user); |
|
|
|
sendMsgAfterCouponOrderSuccess(order,couponOrder,coupon,user); |
|
|
|
} catch (Exception e) { |
|
|
|
logger.error("订单成功通知用户error:" + e.getMessage(),e); |
|
|
|
logger.error("订单成功通知error:" + e.getMessage(),e); |
|
|
|
} |
|
|
|
//同步订单 |
|
|
|
sendInsideOrderPushMsg(order,order.getComposeOrderId(),null); |
|
|
|
} |
|
|
|
|
|
|
|
private void sendMsgAfterCouponOrderSuccess(WxOrder order,WxCoupon coupon, WxCUserBasicInfo user) { |
|
|
|
// 发送短信 |
|
|
|
private void sendMsgAfterCouponOrderSuccess(WxOrder order,WxCouponOrder couponOrder,WxCoupon coupon, WxCUserBasicInfo user) { |
|
|
|
// 通知用户 |
|
|
|
if(EnumPayWay.PAY_WAY_TT.getCode().equals(order.getPayVendor())){ |
|
|
|
logger.info("订单成功短信通知start"); |
|
|
|
WxAppinfo cAppInfo = wxAppinfoService.getCAppInfo(order, EnumPayWay.PAY_WAY_TT.getPlat()); |
|
|
|
@@ -2299,6 +2303,35 @@ public class WxOrderServiceImpl implements WxOrderService { |
|
|
|
mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); |
|
|
|
logger.info("订单成功短信通知end"); |
|
|
|
} |
|
|
|
|
|
|
|
if(EnumCouponType.COUPON_DOUYIN_GO_HOME.getCode().equals(coupon.getType())){ |
|
|
|
logger.info("订单预约短信通知start"); |
|
|
|
WxCouponOrderReservation couponOrderReservation = wxCouponOrderReservationMapper.getSortByCouponOrder(couponOrder.getId(), couponOrder.getTenantId()); |
|
|
|
if(couponOrderReservation == null || couponOrderReservation.getReservationMerchantId() == null){ |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
List<Long> merchantIds = new ArrayList(); |
|
|
|
merchantIds.add(couponOrderReservation.getReservationMerchantId()); |
|
|
|
List<Long> regionMerchantIds = wxMerchantRelationMapper.getRegionMerchantId(couponOrderReservation.getReservationMerchantId()); |
|
|
|
if(!regionMerchantIds.isEmpty()){ |
|
|
|
merchantIds.addAll(regionMerchantIds); |
|
|
|
} |
|
|
|
List<String> phones = wxMerchantBUserMapper.findAdminPhone(merchantIds); |
|
|
|
if(phones.isEmpty()){ |
|
|
|
return; |
|
|
|
} |
|
|
|
String toPhone = phones.stream().collect(Collectors.joining(",")); |
|
|
|
|
|
|
|
WxMsgRecord wxMsgRecord = new WxMsgRecord(); |
|
|
|
wxMsgRecord.updateTenantInfo(order); |
|
|
|
wxMsgRecord.setMsgType(EnumMsgRecordType.SMS.getCode()); |
|
|
|
wxMsgRecord.setModelType(EnumMsgModel.COUPON_ORDER_RESERVATION_SUCCESS.getCode()); |
|
|
|
wxMsgRecord.setReceiver(toPhone); |
|
|
|
mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); |
|
|
|
logger.info("订单预约短信通知end"); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
|