From 1340beb67a9b6d777821d0139bcc7c9b0896ed4e Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 05 九月 2020 10:59:26 +0800 Subject: [PATCH] 拼多多比价修改 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java | 2920 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 1,466 insertions(+), 1,454 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java index d3259a5..5cfbe2f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java @@ -102,1612 +102,1624 @@ @Service public class OrderProcessServiceImpl implements OrderProcessService { - @Resource - private OrderMapper orderMapper; + @Resource + private OrderMapper orderMapper; - @Resource - private UserInfoMapper userInfoMapper; + @Resource + private UserInfoMapper userInfoMapper; - @Resource - private TaoBaoUnionConfigService taoBaoUnionConfigService; + @Resource + private TaoBaoUnionConfigService taoBaoUnionConfigService; - @Resource - private TaoBaoWeiQuanDrawBackService taoBaoWeiQuanDrawBackService; + @Resource + private TaoBaoWeiQuanDrawBackService taoBaoWeiQuanDrawBackService; - @Resource - private TaoBaoOrderService taoBaoOrderService; + @Resource + private TaoBaoOrderService taoBaoOrderService; - @Resource - private LostOrderService lostOrderService; + @Resource + private LostOrderService lostOrderService; - @Resource - private TaoBaoWeiQuanOrderMapper taoBaoWeiQuanOrderMapper; + @Resource + private TaoBaoWeiQuanOrderMapper taoBaoWeiQuanOrderMapper; - @Resource - private HongBaoV2Mapper hongBaoV2Mapper; + @Resource + private HongBaoV2Mapper hongBaoV2Mapper; - @Resource - private UserOrderMsgNotificationService userOrderMsgNotificationService; + @Resource + private UserOrderMsgNotificationService userOrderMsgNotificationService; - @Resource - private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; + @Resource + private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; - @Resource - private UserMoneyService userMoneyService; + @Resource + private UserMoneyService userMoneyService; - @Resource - private TaoBaoBuyRelationMapService taoBaoBuyRelationMapService; + @Resource + private TaoBaoBuyRelationMapService taoBaoBuyRelationMapService; - @Resource - private CommonOrderService commonOrderService; + @Resource + private CommonOrderService commonOrderService; - @Resource - private HongBaoV2Service hongBaoV2Service; + @Resource + private HongBaoV2Service hongBaoV2Service; - @Resource - private JDOrderService jdOrderService; + @Resource + private JDOrderService jdOrderService; - @Resource - private PDDOrderService pddOrderService; + @Resource + private PDDOrderService pddOrderService; - @Resource(name = "orderTransactionProducer") - private TransactionProducer orderTransactionProducer; + @Resource(name = "orderTransactionProducer") + private TransactionProducer orderTransactionProducer; - @Resource - private RocketMQManager rocketMQManager; + @Resource + private RocketMQManager rocketMQManager; - @Resource - private OrderMoneySettleService orderMoneySettleService; + @Resource + private OrderMoneySettleService orderMoneySettleService; - @Resource - private HongBaoV2AddManager hongBaoV2AddManager; + @Resource + private HongBaoV2AddManager hongBaoV2AddManager; - /** - * 鏄惁鏄垎浜鍗� - * - * @param order - * @return - */ - private boolean isShareOrder(TaoBaoOrder order) { - List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); - String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), order.getSourceMediaId(), - order.getAdPositionId()); - if (!StringUtil.isNullOrEmpty(order.getSpecialId()) - || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID)) {// 璁剧疆娓犻亾ID褰撳仛浼氬憳杩愯惀ID鐨勪綅缃甀D - return false; - } else if (!StringUtil.isNullOrEmpty(order.getRelationId())) { - return true; - } else { - // 閫氳繃绾㈠寘鏌ヨ - CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, - order.getTradeId()); + /** + * 鏄惁鏄垎浜鍗� + * + * @param order + * @return + */ + private boolean isShareOrder(TaoBaoOrder order) { + List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); + String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), order.getSourceMediaId(), + order.getAdPositionId()); + if (!StringUtil.isNullOrEmpty(order.getSpecialId()) + || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID)) {// 璁剧疆娓犻亾ID褰撳仛浼氬憳杩愯惀ID鐨勪綅缃甀D + return false; + } else if (!StringUtil.isNullOrEmpty(order.getRelationId())) { + return true; + } else { + // 閫氳繃绾㈠寘鏌ヨ + CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, + order.getTradeId()); - if (commonOrder != null) { - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); - if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null - && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { - return true; - } - } - return false; - } - } + if (commonOrder != null) { + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); + if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null + && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { + return true; + } + } + return false; + } + } - @Override - public synchronized void processOrder(Map<String, List<TaoBaoOrder>> orders) { - List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); + @Override + public synchronized void processOrder(Map<String, List<TaoBaoOrder>> orders) { + List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); - // 鍒嗙鍑鸿繑鍒╄鍗曚笌鍒嗕韩璧氳鍗� - Iterator<String> its = orders.keySet().iterator(); - Map<String, List<TaoBaoOrder>> fanliOrderMap = new HashMap<>(); - Map<String, List<TaoBaoOrder>> shareOrderMap = new HashMap<>(); - Map<String, List<TaoBaoOrder>> elmeOrderMap = new HashMap<>(); - while (its.hasNext()) { - String orderId = its.next(); + // 鍒嗙鍑鸿繑鍒╄鍗曚笌鍒嗕韩璧氳鍗� + Iterator<String> its = orders.keySet().iterator(); + Map<String, List<TaoBaoOrder>> fanliOrderMap = new HashMap<>(); + Map<String, List<TaoBaoOrder>> shareOrderMap = new HashMap<>(); + Map<String, List<TaoBaoOrder>> elmeOrderMap = new HashMap<>(); + while (its.hasNext()) { + String orderId = its.next(); - if (orders.get(orderId) != null && orders.get(orderId).size() > 0) { - List<TaoBaoOrder> list = orders.get(orderId); - String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), - list.get(0).getSourceMediaId(), list.get(0).getAdPositionId()); - if ("楗夸簡涔�".equalsIgnoreCase(list.get(0).getOrderType()) - && !pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT)) { - // 楗夸簡涔堣鍗曞紑濮嬪綊鍏ュ埌娣樺疂璁㈠崟 - if (TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), - "yyyy-MM-dd HH:mm:ss") >= Constant.NEW_ORDER_FANLI_RULE_TIME) { - fanliOrderMap.put(orderId, list); - } else { - elmeOrderMap.put(orderId, list); - } - } else if ("鍙g".equalsIgnoreCase(list.get(0).getOrderType()) - && pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_KOUBEI_PID)) {// 鍙g鑷喘 - fanliOrderMap.put(orderId, list); - } else { - if (!StringUtil.isNullOrEmpty(list.get(0).getSpecialId()) - || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID)) {// 璁剧疆娓犻亾ID褰撳仛浼氬憳杩愯惀ID鐨勪綅缃甀D - fanliOrderMap.put(orderId, list); - } else if (!StringUtil.isNullOrEmpty(list.get(0).getRelationId())) { - shareOrderMap.put(orderId, list); - } else { - // 閫氳繃绾㈠寘鏌ヨ - CommonOrder commonOrder = commonOrderService - .selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, list.get(0).getTradeId()); + if (orders.get(orderId) != null && orders.get(orderId).size() > 0) { + List<TaoBaoOrder> list = orders.get(orderId); + String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), + list.get(0).getSourceMediaId(), list.get(0).getAdPositionId()); + if ("楗夸簡涔�".equalsIgnoreCase(list.get(0).getOrderType()) + && !pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_PID_DEFAULT)) { + // 楗夸簡涔堣鍗曞紑濮嬪綊鍏ュ埌娣樺疂璁㈠崟 + if (TimeUtil.convertToTimeTemp(list.get(0).getCreateTime(), + "yyyy-MM-dd HH:mm:ss") >= Constant.NEW_ORDER_FANLI_RULE_TIME) { + fanliOrderMap.put(orderId, list); + } else { + elmeOrderMap.put(orderId, list); + } + } else if ("鍙g".equalsIgnoreCase(list.get(0).getOrderType()) + && pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_KOUBEI_PID)) {// 鍙g鑷喘 + fanliOrderMap.put(orderId, list); + } else { + if (!StringUtil.isNullOrEmpty(list.get(0).getSpecialId()) + || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID)) {// 璁剧疆娓犻亾ID褰撳仛浼氬憳杩愯惀ID鐨勪綅缃甀D + fanliOrderMap.put(orderId, list); + } else if (!StringUtil.isNullOrEmpty(list.get(0).getRelationId())) { + shareOrderMap.put(orderId, list); + } else { + // 閫氳繃绾㈠寘鏌ヨ + CommonOrder commonOrder = commonOrderService + .selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, list.get(0).getTradeId()); - if (commonOrder != null) { - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); - if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null - && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { - shareOrderMap.put(orderId, list); - continue; - } - } - fanliOrderMap.put(orderId, list); - } - } - } - } + if (commonOrder != null) { + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); + if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null + && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { + shareOrderMap.put(orderId, list); + continue; + } + } + fanliOrderMap.put(orderId, list); + } + } + } + } - // 澶勭悊杩斿埄璁㈠崟 - processShopingFanliOrder(fanliOrderMap); - // 澶勭悊鍒嗕韩璧氳鍗� - processShareGoodsOrder(shareOrderMap); - // 澶勭悊楗夸簡涔堣鍗� - processElemeOrder(elmeOrderMap); - } + // 澶勭悊杩斿埄璁㈠崟 + processShopingFanliOrder(fanliOrderMap); + // 澶勭悊鍒嗕韩璧氳鍗� + processShareGoodsOrder(shareOrderMap); + // 澶勭悊楗夸簡涔堣鍗� + processElemeOrder(elmeOrderMap); + } - private ElmeOrder createElmeOrder(TaoBaoOrder taoBaoOrder) { - ElmeOrder elmeOrder = new ElmeOrder(); - elmeOrder.setChannelId(""); - elmeOrder.setCreateTime(new Date()); - elmeOrder - .setOrderDate(new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); - elmeOrder.setOrderId(taoBaoOrder.getOrderId()); - elmeOrder.setPayMoney(taoBaoOrder.getPayment()); - elmeOrder.setRid(taoBaoOrder.getRelationId()); - if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) - elmeOrder.setIsSettle(true); - else - elmeOrder.setIsSettle(false); + private ElmeOrder createElmeOrder(TaoBaoOrder taoBaoOrder) { + ElmeOrder elmeOrder = new ElmeOrder(); + elmeOrder.setChannelId(""); + elmeOrder.setCreateTime(new Date()); + elmeOrder + .setOrderDate(new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); + elmeOrder.setOrderId(taoBaoOrder.getOrderId()); + elmeOrder.setPayMoney(taoBaoOrder.getPayment()); + elmeOrder.setRid(taoBaoOrder.getRelationId()); + if (taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) + elmeOrder.setIsSettle(true); + else + elmeOrder.setIsSettle(false); - if (!taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) - elmeOrder.setState(1); - else { - elmeOrder.setState(0); - elmeOrder.setPayMoney(new BigDecimal(0)); - } - elmeOrder.setTrackPid( - String.format("mm_124933865_%s_%s", taoBaoOrder.getSourceMediaId(), taoBaoOrder.getAdPositionId())); - if (!StringUtil.isNullOrEmpty(taoBaoOrder.getRelationId())) { - UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoService.getByRelationId(taoBaoOrder.getRelationId(),null); - if (extraInfo != null) - elmeOrder.setUid(extraInfo.getUser().getId()); - } - return elmeOrder; - } + if (!taoBaoOrder.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) + elmeOrder.setState(1); + else { + elmeOrder.setState(0); + elmeOrder.setPayMoney(new BigDecimal(0)); + } + elmeOrder.setTrackPid( + String.format("mm_124933865_%s_%s", taoBaoOrder.getSourceMediaId(), taoBaoOrder.getAdPositionId())); + if (!StringUtil.isNullOrEmpty(taoBaoOrder.getRelationId())) { + UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoService.getByRelationId(taoBaoOrder.getRelationId(), null); + if (extraInfo != null) + elmeOrder.setUid(extraInfo.getUser().getId()); + } + return elmeOrder; + } - private void processElemeOrder(Map<String, List<TaoBaoOrder>> orders) { - for (Iterator<String> its = orders.keySet().iterator(); its.hasNext();) { - String orderId = its.next(); - List<TaoBaoOrder> orderList = orders.get(orderId); - for (TaoBaoOrder taoBaoOrder : orderList) { - ElmeOrder elmeOrder = createElmeOrder(taoBaoOrder); - try { - elmeOrderProcessService.processOrder(elmeOrder); - } catch (ElmeOrderException e) { - e.printStackTrace(); - } + private void processElemeOrder(Map<String, List<TaoBaoOrder>> orders) { + for (Iterator<String> its = orders.keySet().iterator(); its.hasNext(); ) { + String orderId = its.next(); + List<TaoBaoOrder> orderList = orders.get(orderId); + for (TaoBaoOrder taoBaoOrder : orderList) { + ElmeOrder elmeOrder = createElmeOrder(taoBaoOrder); + try { + elmeOrderProcessService.processOrder(elmeOrder); + } catch (ElmeOrderException e) { + e.printStackTrace(); + } - } - } - } + } + } + } - @Override - public void processShopingFanliOrder(Map<String, List<TaoBaoOrder>> orders) { - // 鏌ヨ鍦∣rder涓槸鍚﹀瓨鍦ㄨ璁㈠崟鍙� - Iterator<String> its = orders.keySet().iterator(); - String tempOrderId = ""; - while (its.hasNext()) { - try { - String orderId = its.next(); - tempOrderId = orderId; - // 澶勭悊绾㈠寘涓庡瓙绾㈠寘 - // if (isRedisLockOrder(orderId)) - // continue; - // redisLockOrder(orderId); - processShopingFanliOrderNew(orderId, orders.get(orderId)); - // redisUnlockOrder(orderId); - // 鍑洪敊浜嗗氨涓嶅鐞嗚璁㈠崟浜嗭紝闇�瑕佸畾鏈熸鏌� + @Override + public void processShopingFanliOrder(Map<String, List<TaoBaoOrder>> orders) { + // 鏌ヨ鍦∣rder涓槸鍚﹀瓨鍦ㄨ璁㈠崟鍙� + Iterator<String> its = orders.keySet().iterator(); + String tempOrderId = ""; + while (its.hasNext()) { + try { + String orderId = its.next(); + tempOrderId = orderId; + // 澶勭悊绾㈠寘涓庡瓙绾㈠寘 + // if (isRedisLockOrder(orderId)) + // continue; + // redisLockOrder(orderId); + processShopingFanliOrderNew(orderId, orders.get(orderId)); + // redisUnlockOrder(orderId); + // 鍑洪敊浜嗗氨涓嶅鐞嗚璁㈠崟浜嗭紝闇�瑕佸畾鏈熸鏌� - // 鏇存敼涓㈠け璁㈠崟鐨勭姸鎬� - lostOrderService.processSuceess(orderId, Constant.SOURCE_TYPE_TAOBAO); + // 鏇存敼涓㈠け璁㈠崟鐨勭姸鎬� + lostOrderService.processSuceess(orderId, Constant.SOURCE_TYPE_TAOBAO); - } catch (HongBaoException e1) { - e1.printStackTrace(); - } catch (OrderItemException e2) { - e2.printStackTrace(); - } catch (Exception e) { - e.printStackTrace(); - try { - LogHelper.errorDetailInfo(e, null, tempOrderId); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } - } + } catch (HongBaoException e1) { + e1.printStackTrace(); + } catch (OrderItemException e2) { + e2.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + try { + LogHelper.errorDetailInfo(e, null, tempOrderId); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } + } - @Transactional - @Override - public void processShareGoodsOrder(Map<String, List<TaoBaoOrder>> orders) { - // pidOrderService.addPidOrderFromTaoBao(orders); - if (orders != null) { - Iterator<String> its = orders.keySet().iterator(); - while (its.hasNext()) { - String orderId = its.next(); - try { - processShareGoodsOrderNew(orderId, orders.get(orderId)); - } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e, "processShareGoodsOrderNew鍑洪敊", "璁㈠崟鍙�:" + orderId); - } catch (Exception e1) { - e1.printStackTrace(); - } - } + @Transactional + @Override + public void processShareGoodsOrder(Map<String, List<TaoBaoOrder>> orders) { + // pidOrderService.addPidOrderFromTaoBao(orders); + if (orders != null) { + Iterator<String> its = orders.keySet().iterator(); + while (its.hasNext()) { + String orderId = its.next(); + try { + processShareGoodsOrderNew(orderId, orders.get(orderId)); + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e, "processShareGoodsOrderNew鍑洪敊", "璁㈠崟鍙�:" + orderId); + } catch (Exception e1) { + e1.printStackTrace(); + } + } - } - } - } + } + } + } - @Override - public void fanli() { - LogHelper.test("澶勭悊杩斿埄鍒拌处"); - // 鑾峰彇涓荤孩鍖� - List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listCanBalanceHongBaoByType(HongBaoV2.TYPE_ZIGOU, 1000); - // - // /** - // * 闇�瑕佸疄鏃舵洿鏂板緟杩斿埄鐨勮鍗� - // */ - // - // // 璁$畻鏈�澶х殑鍒涘缓鏃堕棿涓庢渶灏忕殑鍒涘缓鏃堕棿 - // Map<String, Long> map = getMaxAndMinCreateTime(hongBaoList); - // if (map != null) { - // long max = map.get("max"); - // long min = map.get("min"); - // // 鏈�灏忔椂闂存彁鍓�10鍒嗛挓 - // min = min - 1000 * 60 * 10L; - // // 鏇存柊璇ユ鏃堕棿鐨勮鍗� - // List<TaoBaoOrder> orderList = new ArrayList<>(); - // try { - // orderList = TaoBaoOrderUtil.getOrderList(min, max); - // } catch (TaoBaoOrderException e) { - // e.printStackTrace(); - // } - // // try { - // if (orderList != null) - // processOrder(TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(orderList)); - // // } catch (Exception e) { - // // e.printStackTrace(); - // // try { - // // LogHelper.errorDetailInfo(e); - // // } catch (Exception e1) { - // // e1.printStackTrace(); - // // } - // // } - // } + @Override + public void fanli() { + LogHelper.test("澶勭悊杩斿埄鍒拌处"); + // 鑾峰彇涓荤孩鍖� + List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listCanBalanceHongBaoByType(HongBaoV2.TYPE_ZIGOU, 1000); + // + // /** + // * 闇�瑕佸疄鏃舵洿鏂板緟杩斿埄鐨勮鍗� + // */ + // + // // 璁$畻鏈�澶х殑鍒涘缓鏃堕棿涓庢渶灏忕殑鍒涘缓鏃堕棿 + // Map<String, Long> map = getMaxAndMinCreateTime(hongBaoList); + // if (map != null) { + // long max = map.get("max"); + // long min = map.get("min"); + // // 鏈�灏忔椂闂存彁鍓�10鍒嗛挓 + // min = min - 1000 * 60 * 10L; + // // 鏇存柊璇ユ鏃堕棿鐨勮鍗� + // List<TaoBaoOrder> orderList = new ArrayList<>(); + // try { + // orderList = TaoBaoOrderUtil.getOrderList(min, max); + // } catch (TaoBaoOrderException e) { + // e.printStackTrace(); + // } + // // try { + // if (orderList != null) + // processOrder(TaoBaoOrderUtil.classifyTaoBaoOrderByOrderId(orderList)); + // // } catch (Exception e) { + // // e.printStackTrace(); + // // try { + // // LogHelper.errorDetailInfo(e); + // // } catch (Exception e1) { + // // e1.printStackTrace(); + // // } + // // } + // } - /** - * 寮�濮嬭繑鍒� - */ - for (HongBaoV2 hb : hongBaoList) { - // - if (hb.getState() == HongBaoV2.STATE_SHIXIAO || hb.getState() == HongBaoV2.STATE_YILINGQU) - continue; + /** + * 寮�濮嬭繑鍒� + */ + for (HongBaoV2 hb : hongBaoList) { + // + if (hb.getState() == HongBaoV2.STATE_SHIXIAO || hb.getState() == HongBaoV2.STATE_YILINGQU) + continue; - if (hb.getPreGetTime() == null || hb.getPreGetTime().getTime() == 0 - || hb.getPreGetTime().getTime() > System.currentTimeMillis()) - continue; - try { - if (Constant.ENABLE_MQ) - CMQManager.getInstance().addFanLiMsgNew(hb); - } catch (Exception e) { - try { - LogHelper.errorDetailInfo(e); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } - } + if (hb.getPreGetTime() == null || hb.getPreGetTime().getTime() == 0 + || hb.getPreGetTime().getTime() > System.currentTimeMillis()) + continue; + try { + if (Constant.ENABLE_MQ) + CMQManager.getInstance().addFanLiMsgNew(hb); + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } + } - @Resource - private HongBaoOrderMapper hongBaoOrderMapper; + @Resource + private HongBaoOrderMapper hongBaoOrderMapper; - @Override - @Transactional(rollbackFor = Exception.class) - public void fanli(HongBaoV2 hb1) throws TaoBaoWeiQuanException { - // 鏌ヨ鏈�鏂扮殑绾㈠寘鏁版嵁 - hb1 = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hb1.getId()); + @Override + @Transactional(rollbackFor = Exception.class) + public void fanli(HongBaoV2 hb1) throws TaoBaoWeiQuanException { + // 鏌ヨ鏈�鏂扮殑绾㈠寘鏁版嵁 + hb1 = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hb1.getId()); - if (hb1 == null || hb1.getState() != HongBaoV2.STATE_KELINGQU || hb1.getPreGetTime() == null - || hb1.getPreGetTime().getTime() > System.currentTimeMillis()) - return; + if (hb1 == null || hb1.getState() != HongBaoV2.STATE_KELINGQU || hb1.getPreGetTime() == null + || hb1.getPreGetTime().getTime() > System.currentTimeMillis()) + return; - // 姝e父鐢ㄦ埛鎵嶈兘鍒拌处 - UserInfo mainUser = userInfoMapper.selectAvailableByPrimaryKey(hb1.getUserInfo().getId()); - if (mainUser == null || mainUser.getState() != UserInfo.STATE_NORMAL) { - return; - } - // 鏌ヨ绾㈠寘鐩稿叧鑱旂殑璁㈠崟 - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByHongBaoId(hb1.getId()); - if (hongBaoOrder == null) { - LogHelper.error("杩斿埄澶辫触:" + hb1.getId()); - return; - } + // 姝e父鐢ㄦ埛鎵嶈兘鍒拌处 + UserInfo mainUser = userInfoMapper.selectAvailableByPrimaryKey(hb1.getUserInfo().getId()); + if (mainUser == null || mainUser.getState() != UserInfo.STATE_NORMAL) { + return; + } + // 鏌ヨ绾㈠寘鐩稿叧鑱旂殑璁㈠崟 + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByHongBaoId(hb1.getId()); + if (hongBaoOrder == null) { + LogHelper.error("杩斿埄澶辫触:" + hb1.getId()); + return; + } - if (hongBaoOrder.getCommonOrder() == null) { - return; - } + if (hongBaoOrder.getCommonOrder() == null) { + return; + } - // 濡傛灉鏄嫾澶氬/浜笢缁存潈鍒欒繑鍥烇紝涓嶉渶瑕佽繑鍒� - if ((hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_PDD - || hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_JD) - && hongBaoOrder.getCommonOrder().getState() == CommonOrder.STATE_WQ) - return; + // 濡傛灉鏄嫾澶氬/浜笢缁存潈鍒欒繑鍥烇紝涓嶉渶瑕佽繑鍒� + if ((hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_PDD + || hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_JD) + && hongBaoOrder.getCommonOrder().getState() == CommonOrder.STATE_WQ) + return; - if (hongBaoOrder.getCommonOrder() != null - && hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_TAOBAO) { - // 缁存潈涓殑涓嶈繑鍒� - List<TaoBaoWeiQuanOrder> taoBaoWeiQuanList = taoBaoWeiQuanOrderMapper - .selectListByOrderIdAndState(hongBaoOrder.getCommonOrder().getOrderNo(), "缁存潈鍒涘缓"); - if (taoBaoWeiQuanList != null && taoBaoWeiQuanList.size() > 0) - return; + if (hongBaoOrder.getCommonOrder() != null + && hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_TAOBAO) { + // 缁存潈涓殑涓嶈繑鍒� + List<TaoBaoWeiQuanOrder> taoBaoWeiQuanList = taoBaoWeiQuanOrderMapper + .selectListByOrderIdAndState(hongBaoOrder.getCommonOrder().getOrderNo(), "缁存潈鍒涘缓"); + if (taoBaoWeiQuanList != null && taoBaoWeiQuanList.size() > 0) + return; - taoBaoWeiQuanList = taoBaoWeiQuanOrderMapper - .selectListByOrderIdAndState(hongBaoOrder.getCommonOrder().getOrderNo(), "绛夊緟澶勭悊"); - if (taoBaoWeiQuanList != null && taoBaoWeiQuanList.size() > 0) - return; - } + taoBaoWeiQuanList = taoBaoWeiQuanOrderMapper + .selectListByOrderIdAndState(hongBaoOrder.getCommonOrder().getOrderNo(), "绛夊緟澶勭悊"); + if (taoBaoWeiQuanList != null && taoBaoWeiQuanList.size() > 0) + return; + } - // 鏌ヨ璇ヨ鍗曚箣鍓嶆槸鍚︽湁鍒拌处 - List<HongBaoOrder> list = hongBaoOrderMapper.listByOrderIdAndSourceType( - hongBaoOrder.getCommonOrder().getOrderNo(), hongBaoOrder.getCommonOrder().getSourceType()); - List<Long> hongBaoIdList = new ArrayList<>(); - if (list != null) { - for (HongBaoOrder ho : list) { - hongBaoIdList.add(ho.getHongBaoV2().getId()); - } - } + // 鏌ヨ璇ヨ鍗曚箣鍓嶆槸鍚︽湁鍒拌处 + List<HongBaoOrder> list = hongBaoOrderMapper.listByOrderIdAndSourceType( + hongBaoOrder.getCommonOrder().getOrderNo(), hongBaoOrder.getCommonOrder().getSourceType()); + List<Long> hongBaoIdList = new ArrayList<>(); + if (list != null) { + for (HongBaoOrder ho : list) { + hongBaoIdList.add(ho.getHongBaoV2().getId()); + } + } - List<HongBaoV2> allHongBaoList = hongBaoV2Mapper.listByIds(hongBaoIdList); - boolean first = true; - for (HongBaoV2 v2 : allHongBaoList) - if (v2.getState() == HongBaoV2.STATE_YILINGQU) { - first = false; - break; - } + List<HongBaoV2> allHongBaoList = hongBaoV2Mapper.listByIds(hongBaoIdList); + boolean first = true; + for (HongBaoV2 v2 : allHongBaoList) + if (v2.getState() == HongBaoV2.STATE_YILINGQU) { + first = false; + break; + } - // 鑷喘鍒拌处浜嬪姟娑堟伅 - OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_ZIGOU, - mainUser.getId(), hongBaoOrder.getCommonOrder().getSourceType(), - hongBaoOrder.getCommonOrder().getOrderNo(), null, new Date(), 0); - mqMsg.setOrderFirst(first); - Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg); - String key = mainUser.getId() + "-" + UUID.randomUUID().toString(); - msg.setKey(key); - try { - if (!Constant.IS_TEST) - orderTransactionProducer.send(msg, new LocalTransactionExecuter() { - @Override - public TransactionStatus execute(Message arg0, Object arg1) { - try { - orderMoneySettleService.ziGouSettle(hongBaoOrder.getCommonOrder().getOrderNo(), - hongBaoOrder.getCommonOrder().getSourceType(), key); - return TransactionStatus.CommitTransaction; - } catch (Exception e) { - e.printStackTrace(); - return TransactionStatus.RollbackTransaction; - } - } - }, null); - else { - try { - orderMoneySettleService.ziGouSettle(hongBaoOrder.getCommonOrder().getOrderNo(), - hongBaoOrder.getCommonOrder().getSourceType(), key); - } catch (Exception e) { - } - } - } catch (Exception e) { - LogHelper.mqError(e.getMessage(), msg.getTopic(), msg.getTag(), new Gson().toJson(mqMsg)); - } - } + // 鑷喘鍒拌处浜嬪姟娑堟伅 + OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_ZIGOU, + mainUser.getId(), hongBaoOrder.getCommonOrder().getSourceType(), + hongBaoOrder.getCommonOrder().getOrderNo(), null, new Date(), 0); + mqMsg.setOrderFirst(first); + Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg); + String key = mainUser.getId() + "-" + UUID.randomUUID().toString(); + msg.setKey(key); + try { + if (!Constant.IS_TEST) + orderTransactionProducer.send(msg, new LocalTransactionExecuter() { + @Override + public TransactionStatus execute(Message arg0, Object arg1) { + try { + orderMoneySettleService.ziGouSettle(hongBaoOrder.getCommonOrder().getOrderNo(), + hongBaoOrder.getCommonOrder().getSourceType(), key); + return TransactionStatus.CommitTransaction; + } catch (Exception e) { + e.printStackTrace(); + return TransactionStatus.RollbackTransaction; + } + } + }, null); + else { + try { + orderMoneySettleService.ziGouSettle(hongBaoOrder.getCommonOrder().getOrderNo(), + hongBaoOrder.getCommonOrder().getSourceType(), key); + } catch (Exception e) { + } + } + } catch (Exception e) { + LogHelper.mqError(e.getMessage(), msg.getTopic(), msg.getTag(), new Gson().toJson(mqMsg)); + } + } - @Override - public void weiQuanOrder(List<TaoBaoWeiQuanOrder> orderList) { - if (orderList != null) - for (TaoBaoWeiQuanOrder order : orderList) { - try { - if (order.getState().contains("缁存潈鎴愬姛")) { - if (Constant.ENABLE_MQ) - CMQManager.getInstance().addWeiQuanOrderMsg(order); - } - } catch (Exception e) { - LogHelper.error("缁存潈璁㈠崟鍔犲叆鍒伴槦鍒楀嚭閿�:" + order != null ? new Gson().toJson(order) : null); - } - } - } + @Override + public void weiQuanOrder(List<TaoBaoWeiQuanOrder> orderList) { + if (orderList != null) + for (TaoBaoWeiQuanOrder order : orderList) { + try { + if (order.getState().contains("缁存潈鎴愬姛")) { + if (Constant.ENABLE_MQ) + CMQManager.getInstance().addWeiQuanOrderMsg(order); + } + } catch (Exception e) { + LogHelper.error("缁存潈璁㈠崟鍔犲叆鍒伴槦鍒楀嚭閿�:" + order != null ? new Gson().toJson(order) : null); + } + } + } - @Transactional - @Override - public void weiQuanOrder(TaoBaoWeiQuanOrder order) { - // 璁㈠崟缁撶畻鏃堕棿鍦�2018-08-05鍚庡氨涓嶅鐞嗙淮鏉冧簡 + @Transactional + @Override + public void weiQuanOrder(TaoBaoWeiQuanOrder order) { + // 璁㈠崟缁撶畻鏃堕棿鍦�2018-08-05鍚庡氨涓嶅鐞嗙淮鏉冧簡 - List<TaoBaoOrder> orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(order.getOrderId()); - if (orderList != null && orderList.size() > 0 & !StringUtil.isNullOrEmpty(orderList.get(0).getSettlementTime())) - order.setJieSuanTime( - new Date(TimeUtil.convertToTimeTemp(orderList.get(0).getSettlementTime(), "yyyy-MM-dd HH:mm:ss"))); + List<TaoBaoOrder> orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(order.getOrderId()); + if (orderList != null && orderList.size() > 0 & !StringUtil.isNullOrEmpty(orderList.get(0).getSettlementTime())) + order.setJieSuanTime( + new Date(TimeUtil.convertToTimeTemp(orderList.get(0).getSettlementTime(), "yyyy-MM-dd HH:mm:ss"))); - // 澶勭悊缁存潈鎴愬姛浣嗘槸宸插埌璐︾殑璁㈠崟 - if (order.getJieSuanTime().getTime() > TimeUtil.convertToTimeTemp("2019-01-01", "yyyy-MM-dd")) {// 缁撶畻鏃堕棿鍦�2鏈�1鍙风殑寮�濮嬪鐞嗗凡鍒拌处浣嗘槸缁存潈鐨� - CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, - order.getOrderItemId()); - if (commonOrder != null && !StringUtil.isNullOrEmpty(commonOrder.getTradeId())) { - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); - if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null - && hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_YILINGQU) {// 宸茬粡鍒拌处鐨勭湅鏄惁闇�瑕佹墸娆� - TaoBaoWeiQuanDrawBack drawBack = taoBaoWeiQuanDrawBackService - .selectByOrderItemId(order.getOrderItemId()); - if (drawBack == null) {// 杩樻湭鎵f - OrderLogHelper.taoBaoWeiQuan("宸插埌璐︽湭鎵f澶勭悊:瀛愯鍗曞彿:" + order.getOrderItemId()); - try { - taoBaoWeiQuanDrawBackService.doWeiQuanFanli(order.getOrderId(), true); - taoBaoWeiQuanDrawBackService.doWeiQuanShare(order.getOrderId()); - taoBaoWeiQuanDrawBackService.doWeiQuanInvite(order.getOrderId()); - } catch (TaoBaoWeiQuanException e) { - try { - LogHelper.errorDetailInfo(e, "鍒拌处鍚庡鐞嗙淮鏉冩墸娆惧嚭閿�", "璁㈠崟鍙�:" + order.getOrderId()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } else { - // 鏌ヨ瀛愮孩鍖呮槸鍚﹀凡鍒拌处 - List<HongBaoV2> children = hongBaoV2Service - .listChildrenById(hongBaoOrder.getHongBaoV2().getId()); - for (HongBaoV2 hongBaoV2 : children) { - if (hongBaoV2.getState() == HongBaoV2.STATE_YILINGQU) { - try { - taoBaoWeiQuanDrawBackService.doWeiQuanInvite(order.getOrderId()); - } catch (TaoBaoWeiQuanException e) { - try { - LogHelper.errorDetailInfo(e, "鍒拌处鍚庡鐞嗙淮鏉冩墸娆惧嚭閿�", "璁㈠崟鍙�:" + order.getOrderId()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - break; - } - } - } - } - } - } - } + // 澶勭悊缁存潈鎴愬姛浣嗘槸宸插埌璐︾殑璁㈠崟 + if (order.getJieSuanTime().getTime() > TimeUtil.convertToTimeTemp("2019-01-01", "yyyy-MM-dd")) {// 缁撶畻鏃堕棿鍦�2鏈�1鍙风殑寮�濮嬪鐞嗗凡鍒拌处浣嗘槸缁存潈鐨� + CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, + order.getOrderItemId()); + if (commonOrder != null && !StringUtil.isNullOrEmpty(commonOrder.getTradeId())) { + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); + if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null + && hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_YILINGQU) {// 宸茬粡鍒拌处鐨勭湅鏄惁闇�瑕佹墸娆� + TaoBaoWeiQuanDrawBack drawBack = taoBaoWeiQuanDrawBackService + .selectByOrderItemId(order.getOrderItemId()); + if (drawBack == null) {// 杩樻湭鎵f + OrderLogHelper.taoBaoWeiQuan("宸插埌璐︽湭鎵f澶勭悊:瀛愯鍗曞彿:" + order.getOrderItemId()); + try { + taoBaoWeiQuanDrawBackService.doWeiQuanFanli(order.getOrderId(), true); + taoBaoWeiQuanDrawBackService.doWeiQuanShare(order.getOrderId()); + taoBaoWeiQuanDrawBackService.doWeiQuanInvite(order.getOrderId()); + } catch (TaoBaoWeiQuanException e) { + try { + LogHelper.errorDetailInfo(e, "鍒拌处鍚庡鐞嗙淮鏉冩墸娆惧嚭閿�", "璁㈠崟鍙�:" + order.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } else { + // 鏌ヨ瀛愮孩鍖呮槸鍚﹀凡鍒拌处 + List<HongBaoV2> children = hongBaoV2Service + .listChildrenById(hongBaoOrder.getHongBaoV2().getId()); + for (HongBaoV2 hongBaoV2 : children) { + if (hongBaoV2.getState() == HongBaoV2.STATE_YILINGQU) { + try { + taoBaoWeiQuanDrawBackService.doWeiQuanInvite(order.getOrderId()); + } catch (TaoBaoWeiQuanException e) { + try { + LogHelper.errorDetailInfo(e, "鍒拌处鍚庡鐞嗙淮鏉冩墸娆惧嚭閿�", "璁㈠崟鍙�:" + order.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + break; + } + } + } + } + } + } + } - @Override - public void fanliPreInvaite(Date maxTime) { - // 鏌ュ嚭閭�璇疯禋鐨勭敤鎴稩D - List<Integer> typeList = new ArrayList<>(); - typeList.add(HongBaoV2.TYPE_YIJI); - typeList.add(HongBaoV2.TYPE_ERJI); - typeList.add(HongBaoV2.TYPE_SHARE_YIJI); - typeList.add(HongBaoV2.TYPE_SHARE_ERJI); + @Override + public void fanliPreInvaite(Date maxTime) { + // 鏌ュ嚭閭�璇疯禋鐨勭敤鎴稩D + List<Integer> typeList = new ArrayList<>(); + typeList.add(HongBaoV2.TYPE_YIJI); + typeList.add(HongBaoV2.TYPE_ERJI); + typeList.add(HongBaoV2.TYPE_SHARE_YIJI); + typeList.add(HongBaoV2.TYPE_SHARE_ERJI); - long count = hongBaoV2Mapper.countUidCanBanlanceByTypeAndMaxTime(typeList, maxTime); - int pageSize = 1000; - int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); - Set<Long> uidSets = new HashSet<>(); - for (int i = 0; i < page; i++) { - List<Long> inviteAndShareUids = hongBaoV2Mapper.listUidCanBanlanceByTypeAndMaxTime(typeList, maxTime, - i * pageSize, pageSize); - if (inviteAndShareUids != null) - for (Long uid : inviteAndShareUids) { - if (userInfoMapper.selectAvailableByPrimaryKey(uid) != null) - uidSets.add(uid); - } - } - // 鏍规嵁鐢ㄦ埛ID - Iterator<Long> its = uidSets.iterator(); - while (its.hasNext()) { - Long uid = its.next(); - try { - if (Constant.ENABLE_MQ) - TeamOrderCMQManager.getInstance().addFanLiTeamIncomePreMsg(new UidDateDTO(uid, maxTime)); - } catch (Exception e) { - e.printStackTrace(); - LogHelper.error(e); - } - } + long count = hongBaoV2Mapper.countUidCanBanlanceByTypeAndMaxTime(typeList, maxTime); + int pageSize = 1000; + int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); + Set<Long> uidSets = new HashSet<>(); + for (int i = 0; i < page; i++) { + List<Long> inviteAndShareUids = hongBaoV2Mapper.listUidCanBanlanceByTypeAndMaxTime(typeList, maxTime, + i * pageSize, pageSize); + if (inviteAndShareUids != null) + for (Long uid : inviteAndShareUids) { + if (userInfoMapper.selectAvailableByPrimaryKey(uid) != null) + uidSets.add(uid); + } + } + // 鏍规嵁鐢ㄦ埛ID + Iterator<Long> its = uidSets.iterator(); + while (its.hasNext()) { + Long uid = its.next(); + try { + if (Constant.ENABLE_MQ) + TeamOrderCMQManager.getInstance().addFanLiTeamIncomePreMsg(new UidDateDTO(uid, maxTime)); + } catch (Exception e) { + e.printStackTrace(); + LogHelper.error(e); + } + } - } + } - @Override - public void fanliShare(Date maxTime) { - // 鏌ュ嚭閭�璇疯禋鐨勭敤鎴稩D - List<Integer> typeList = new ArrayList<>(); - typeList.add(HongBaoV2.TYPE_SHARE_GOODS); + @Override + public void fanliShare(Date maxTime) { + // 鏌ュ嚭閭�璇疯禋鐨勭敤鎴稩D + List<Integer> typeList = new ArrayList<>(); + typeList.add(HongBaoV2.TYPE_SHARE_GOODS); - long count = hongBaoV2Mapper.countUidCanBanlanceByTypeAndMaxTime(typeList, maxTime); - int pageSize = 1000; - int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); - Set<Long> uidSets = new HashSet<>(); - for (int i = 0; i < page; i++) { - List<Long> inviteAndShareUids = hongBaoV2Mapper.listUidCanBanlanceByTypeAndMaxTime(typeList, maxTime, - i * pageSize, pageSize); - if (inviteAndShareUids != null) - for (Long uid : inviteAndShareUids) { - if (userInfoMapper.selectAvailableByPrimaryKey(uid) != null) - uidSets.add(uid); - } - } - // 鏍规嵁鐢ㄦ埛ID - Iterator<Long> its = uidSets.iterator(); - while (its.hasNext()) { - Long uid = its.next(); - try { - if (Constant.ENABLE_MQ) - CMQManager.getInstance().addFanLiShareMsg(new UidDateDTO(uid, maxTime)); - } catch (Exception e) { - e.printStackTrace(); - LogHelper.error(e); - } - } + long count = hongBaoV2Mapper.countUidCanBanlanceByTypeAndMaxTime(typeList, maxTime); + int pageSize = 1000; + int page = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1); + Set<Long> uidSets = new HashSet<>(); + for (int i = 0; i < page; i++) { + List<Long> inviteAndShareUids = hongBaoV2Mapper.listUidCanBanlanceByTypeAndMaxTime(typeList, maxTime, + i * pageSize, pageSize); + if (inviteAndShareUids != null) + for (Long uid : inviteAndShareUids) { + if (userInfoMapper.selectAvailableByPrimaryKey(uid) != null) + uidSets.add(uid); + } + } + // 鏍规嵁鐢ㄦ埛ID + Iterator<Long> its = uidSets.iterator(); + while (its.hasNext()) { + Long uid = its.next(); + try { + if (Constant.ENABLE_MQ) + CMQManager.getInstance().addFanLiShareMsg(new UidDateDTO(uid, maxTime)); + } catch (Exception e) { + e.printStackTrace(); + LogHelper.error(e); + } + } - } + } - @Override - // @Transactional(rollbackFor = Exception.class) - public void fanliPreInvaite(Long uid, Date maxPreGetTime) { - // 閭�璇疯禋鍒拌处 - try { - orderMoneySettleService.inviteSettleTB(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + @Override + // @Transactional(rollbackFor = Exception.class) + public void fanliPreInvaite(Long uid, Date maxPreGetTime) { + // 閭�璇疯禋鍒拌处 + try { + orderMoneySettleService.inviteSettleTB(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.inviteSettleJD(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.inviteSettleJD(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.inviteSettlePDD(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.inviteSettlePDD(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.inviteSettleVipShop(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.inviteSettleVipShop(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.inviteSettleSuning(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } - } + try { + orderMoneySettleService.inviteSettleSuning(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } + } - @Override - @Transactional(rollbackFor = Exception.class) - public void fanliShare(Long uid, Date maxPreGetTime) { - // 閭�璇疯禋鍒拌处 - try { - orderMoneySettleService.shareSettleTB(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + @Override + @Transactional(rollbackFor = Exception.class) + public void fanliShare(Long uid, Date maxPreGetTime) { + // 閭�璇疯禋鍒拌处 + try { + orderMoneySettleService.shareSettleTB(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.shareSettleJD(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.shareSettleJD(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.shareSettlePDD(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.shareSettlePDD(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.shareSettleVipShop(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } + try { + orderMoneySettleService.shareSettleVipShop(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } - try { - orderMoneySettleService.shareSettleSuning(uid, maxPreGetTime); - } catch (OrderMoneySettleException e) { - e.printStackTrace(); - } - } + try { + orderMoneySettleService.shareSettleSuning(uid, maxPreGetTime); + } catch (OrderMoneySettleException e) { + e.printStackTrace(); + } + } - @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) - @Override - public void processShopingFanliOrderNew(String orderId, List<TaoBaoOrder> orderList) - throws HongBaoException, OrderItemException { + @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) + @Override + public void processShopingFanliOrderNew(String orderId, List<TaoBaoOrder> orderList) + throws HongBaoException, OrderItemException { - LogHelper.test(String.format("璁㈠崟澶勭悊:璁㈠崟鍙�-%s 璁㈠崟鏁伴噺-%s", orderId, orderList.size() + "")); - if (orderList.size() == 1) - LogHelper.test("璁㈠崟鎺掑簭鍊�:" + orderList.get(0).getOrderBy()); + LogHelper.test(String.format("璁㈠崟澶勭悊:璁㈠崟鍙�-%s 璁㈠崟鏁伴噺-%s", orderId, orderList.size() + "")); + if (orderList.size() == 1) + LogHelper.test("璁㈠崟鎺掑簭鍊�:" + orderList.get(0).getOrderBy()); - List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); + List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); - if (orderList != null && orderList.size() > 0) { - String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), - orderList.get(0).getSourceMediaId(), orderList.get(0).getAdPositionId()); + if (orderList != null && orderList.size() > 0) { + String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), + orderList.get(0).getSourceMediaId(), orderList.get(0).getAdPositionId()); - Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(orderId, Constant.SOURCE_TYPE_TAOBAO); - // 鍘熸潵涓嶅瓨鍦ㄨ鍗� - Long uid = null; - if (oldOrder == null) { - Long targetUid = null; - if (pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID) - && !StringUtil.isNullOrEmpty(orderList.get(0).getRelationId())) {// 澶勭悊闈炶繑鍒╁晢鍝佸簱鐨勫晢鍝� - targetUid = taoBaoBuyRelationMapService.selectUidByRelationId(orderList.get(0).getRelationId()); + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(orderId, Constant.SOURCE_TYPE_TAOBAO); + // 鍘熸潵涓嶅瓨鍦ㄨ鍗� + Long uid = null; + if (oldOrder == null) { + Long targetUid = null; + if (pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID) + && !StringUtil.isNullOrEmpty(orderList.get(0).getRelationId())) {// 澶勭悊闈炶繑鍒╁晢鍝佸簱鐨勫晢鍝� + targetUid = taoBaoBuyRelationMapService.selectUidByRelationId(orderList.get(0).getRelationId()); - } else if ((pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_ELEME_PID) - || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_KOUBEI_PID)) - && !StringUtil.isNullOrEmpty(orderList.get(0).getRelationId())) {// 澶勭悊楗夸簡涔�,鍙g鐨勮鍗� - UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoService - .getByRelationId(orderList.get(0).getRelationId(),null); - if (extraInfo != null) { - targetUid = extraInfo.getUser().getId(); - } - } else if (!StringUtil.isNullOrEmpty(orderList.get(0).getSpecialId())) { - UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService - .getBySpecialId(orderList.get(0).getSpecialId(),null); - if (info != null && info.getUser() != null) - targetUid = info.getUser().getId(); - } + } else if ((pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_ELEME_PID) + || pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_KOUBEI_PID)) + && !StringUtil.isNullOrEmpty(orderList.get(0).getRelationId())) {// 澶勭悊楗夸簡涔�,鍙g鐨勮鍗� + UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoService + .getByRelationId(orderList.get(0).getRelationId(), null); + if (extraInfo != null) { + targetUid = extraInfo.getUser().getId(); + } + } else if (!StringUtil.isNullOrEmpty(orderList.get(0).getSpecialId())) { + UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService + .getBySpecialId(orderList.get(0).getSpecialId(), null); + if (info != null && info.getUser() != null) + targetUid = info.getUser().getId(); + } - if (targetUid != null) { - uid = targetUid; - // 鎻掑叆鍒癘rder涓� - // 娣诲姞鍒拌鍗曚腑鍘� - Order order = new Order(); - order.setBeizhu("PID杩斿埄璁㈠崟"); - order.setCreatetime(System.currentTimeMillis()); - order.setOrderId(orderId); - order.setOrderType(1); - order.setState(Order.STATE_YIZHIFU); - order.setUserInfo(new UserInfo(uid)); - order.setVersion(2); - // 鍔犲叆鍒拌鍗曡〃 - orderMapper.insertSelective(order); - oldOrder = order; - } + if (targetUid != null) { + uid = targetUid; + // 鎻掑叆鍒癘rder涓� + // 娣诲姞鍒拌鍗曚腑鍘� + Order order = new Order(); + order.setBeizhu("PID杩斿埄璁㈠崟"); + order.setCreatetime(System.currentTimeMillis()); + order.setOrderId(orderId); + order.setOrderType(1); + order.setState(Order.STATE_YIZHIFU); + order.setUserInfo(new UserInfo(uid)); + order.setVersion(2); + // 鍔犲叆鍒拌鍗曡〃 + orderMapper.insertSelective(order); + oldOrder = order; + } - } else { - uid = oldOrder.getUserInfo().getId(); - } - // 灏氭湭鎵惧埌鍜孭ID瀵瑰簲鐨勭敤鎴� - if (uid == null) - return; + } else { + uid = oldOrder.getUserInfo().getId(); + } + // 灏氭湭鎵惧埌鍜孭ID瀵瑰簲鐨勭敤鎴� + if (uid == null) + return; - // 璁$畻璁㈠崟鎬婚搴� - Order updateOrder = new Order(); - updateOrder.setId(oldOrder.getId()); - BigDecimal money = new BigDecimal(0); - for (TaoBaoOrder o : orderList) { - if (o.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) - money = money.add(o.getSettlement()); - else { - money = money.add(o.getPayment()); - } - } - updateOrder.setMoney(money); - String thirdState = null; - for (TaoBaoOrder o : orderList) - if (!o.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) { - thirdState = o.getOrderState(); - break; - } + // 璁$畻璁㈠崟鎬婚搴� + Order updateOrder = new Order(); + updateOrder.setId(oldOrder.getId()); + BigDecimal money = new BigDecimal(0); + for (TaoBaoOrder o : orderList) { + if (o.getOrderState().equalsIgnoreCase("璁㈠崟缁撶畻")) + money = money.add(o.getSettlement()); + else { + money = money.add(o.getPayment()); + } + } + updateOrder.setMoney(money); + String thirdState = null; + for (TaoBaoOrder o : orderList) + if (!o.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) { + thirdState = o.getOrderState(); + break; + } - if (StringUtil.isNullOrEmpty(thirdState)) - thirdState = "璁㈠崟澶辨晥"; - updateOrder.setThirdState(thirdState); - updateOrder.setThirdCreateTime( - new Date(TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); - orderMapper.updateByPrimaryKeySelective(updateOrder); + if (StringUtil.isNullOrEmpty(thirdState)) + thirdState = "璁㈠崟澶辨晥"; + updateOrder.setThirdState(thirdState); + updateOrder.setThirdCreateTime( + new Date(TimeUtil.convertToTimeTemp(orderList.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); + orderMapper.updateByPrimaryKeySelective(updateOrder); - // 鐢ㄧ涓�涓瓙璁㈠崟閿佸畾鐢ㄦ埛 - List<CommonOrderAddResultDTO> commonOrderList = null; - try { - commonOrderList = commonOrderService.addTaoBaoOrder(orderList, uid); - addHongBaoWithMQ(commonOrderList, orderId, uid, Constant.SOURCE_TYPE_TAOBAO, HongBaoV2.TYPE_ZIGOU); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(orderId); - order.setOrderType(Constant.SOURCE_TYPE_TAOBAO); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addTaoBaoOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } - } + // 鐢ㄧ涓�涓瓙璁㈠崟閿佸畾鐢ㄦ埛 + List<CommonOrderAddResultDTO> commonOrderList = null; + try { + commonOrderList = commonOrderService.addTaoBaoOrder(orderList, uid); + addHongBaoWithMQ(commonOrderList, orderId, uid, Constant.SOURCE_TYPE_TAOBAO, HongBaoV2.TYPE_ZIGOU); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(orderId); + order.setOrderType(Constant.SOURCE_TYPE_TAOBAO); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addTaoBaoOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } + } - @Override - public void processShareGoodsOrderNew(String orderId, List<TaoBaoOrder> orderList) { - if (orderList != null && orderList.size() > 0) { - // 鍘熸潵涓嶅瓨鍦ㄨ鍗� - Long uid = null; - UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService.getByRelationId(orderList.get(0).getRelationId(),null); - if (info != null && info.getUser() != null) - uid = info.getUser().getId(); - // 灏氭湭鎵惧埌鍜孭ID瀵瑰簲鐨勭敤鎴� - if (uid == null) { - // 閫氳繃绾㈠寘鏌ヨ - CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, - orderList.get(0).getTradeId()); + @Override + public void processShareGoodsOrderNew(String orderId, List<TaoBaoOrder> orderList) { + if (orderList != null && orderList.size() > 0) { + // 鍘熸潵涓嶅瓨鍦ㄨ鍗� + Long uid = null; + UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService.getByRelationId(orderList.get(0).getRelationId(), null); + if (info != null && info.getUser() != null) + uid = info.getUser().getId(); + // 灏氭湭鎵惧埌鍜孭ID瀵瑰簲鐨勭敤鎴� + if (uid == null) { + // 閫氳繃绾㈠寘鏌ヨ + CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, + orderList.get(0).getTradeId()); - if (commonOrder != null) { - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); - if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null - && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { - uid = hongBaoOrder.getHongBaoV2().getUserInfo().getId(); - } - } - } + if (commonOrder != null) { + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); + if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null + && hongBaoOrder.getHongBaoV2().getType() == HongBaoV2.TYPE_SHARE_GOODS) { + uid = hongBaoOrder.getHongBaoV2().getUserInfo().getId(); + } + } + } - if (uid == null) - return; + if (uid == null) + return; - // 鐢ㄧ涓�涓瓙璁㈠崟閿佸畾鐢ㄦ埛 - try { - List<CommonOrderAddResultDTO> commonOrders = commonOrderService.addTaoBaoOrder(orderList, uid); - addHongBaoWithMQ(commonOrders, orderId, uid, Constant.SOURCE_TYPE_TAOBAO, HongBaoV2.TYPE_SHARE_GOODS); - if (isCommonOrderAllAdd(commonOrders)) { - Order order = new Order(); - order.setOrderId(orderId); - order.setOrderType(Constant.SOURCE_TYPE_TAOBAO); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - e.printStackTrace(); - } - } - } + // 鐢ㄧ涓�涓瓙璁㈠崟閿佸畾鐢ㄦ埛 + try { + List<CommonOrderAddResultDTO> commonOrders = commonOrderService.addTaoBaoOrder(orderList, uid); + addHongBaoWithMQ(commonOrders, orderId, uid, Constant.SOURCE_TYPE_TAOBAO, HongBaoV2.TYPE_SHARE_GOODS); + if (isCommonOrderAllAdd(commonOrders)) { + Order order = new Order(); + order.setOrderId(orderId); + order.setOrderType(Constant.SOURCE_TYPE_TAOBAO); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + e.printStackTrace(); + } + } + } - /** - * 鏄惁涓哄垎浜鍗� - * - * @param order - * @return - */ - private boolean isShareOrder(JDOrder order) { - if (order == null || order.getOrderItemList() == null || order.getOrderItemList().size() == 0) - return false; - Long positionId = order.getOrderItemList().get(0).getPositionId(); - if (positionId == JDApiUtil.POSITION_SHARE) {// 鍒嗕韩璁㈠崟 - return true; - } - return false; - } + /** + * 鏄惁涓哄垎浜鍗� + * + * @param order + * @return + */ + private boolean isShareOrder(JDOrder order) { + if (order == null || order.getOrderItemList() == null || order.getOrderItemList().size() == 0) + return false; + Long positionId = order.getOrderItemList().get(0).getPositionId(); + if (positionId == JDApiUtil.POSITION_SHARE) {// 鍒嗕韩璁㈠崟 + return true; + } + return false; + } - @Override - public void processJDOrder(JDOrder order) { - if (order == null || order.getOrderItemList() == null || order.getOrderItemList().size() == 0) - return; - // 鎷嗗崟鐨勪笉鍋氬鐞� - if (order.getValidCode() == 2) - return; + @Override + public void processJDOrder(JDOrder order) { + if (order == null || order.getOrderItemList() == null || order.getOrderItemList().size() == 0) + return; + // 鎷嗗崟鐨勪笉鍋氬鐞� + if (order.getValidCode() == 2) + return; + + // 鏍规嵁ext1涓巗ubUnionId璺熷崟 + String uidStr = order.getExt1(); + if (StringUtil.isNullOrEmpty(uidStr)) + uidStr = order.getOrderItemList().get(0).getSubUnionId(); + + Long uid = null; + if (!StringUtil.isNullOrEmpty(uidStr) && NumberUtil.isNumeric(uidStr)) + uid = Long.parseLong(uidStr); + Long positionId = order.getOrderItemList().get(0).getPositionId(); + if (positionId == JDApiUtil.POSITION_FANLI)// 杩斿埄璁㈠崟 + { + processFanLiJDOrder(order, uid); + lostOrderService.processSuceess(order.getOrderId() + "", Constant.SOURCE_TYPE_JD); + } else if (positionId == JDApiUtil.POSITION_SHARE) {// 鍒嗕韩璁㈠崟 + if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� + return; + processShareJDOrder(order, uid); + } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� + processFanLiJDOrder(order, null); + } + } - // 鏍规嵁ext1涓巗ubUnionId璺熷崟 - String uidStr = order.getExt1(); - if (StringUtil.isNullOrEmpty(uidStr)) - uidStr = order.getOrderItemList().get(0).getSubUnionId(); + /** + * 澶勭悊浜笢杩斿埄璁㈠崟 + * + * @param jdOrder + * @param uid + */ + private void processFanLiJDOrder(JDOrder jdOrder, Long uid) { + int invalidCount = 0; + BigDecimal totalMoney = new BigDecimal(0); + // 璁㈠崟鐘舵�佸垽鏂� + for (JDOrderItem item : jdOrder.getOrderItemList()) { + if (item.getEstimateCosPrice() != null) + totalMoney = totalMoney.add(item.getEstimateCosPrice()); - Long uid = null; - if (!StringUtil.isNullOrEmpty(uidStr) && NumberUtil.isNumeric(uidStr)) - uid = Long.parseLong(uidStr); - Long positionId = order.getOrderItemList().get(0).getPositionId(); - if (positionId == JDApiUtil.POSITION_FANLI)// 杩斿埄璁㈠崟 - { - processFanLiJDOrder(order, uid); - lostOrderService.processSuceess(order.getOrderId() + "", Constant.SOURCE_TYPE_JD); - } else if (positionId == JDApiUtil.POSITION_SHARE) {// 鍒嗕韩璁㈠崟 - if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� - return; - processShareJDOrder(order, uid); - } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� - processFanLiJDOrder(order, null); - } - } + if (item.getValidCode() == 16 || item.getValidCode() == 17 || item.getValidCode() == 18) {// 宸蹭粯娆� - /** - * 澶勭悊浜笢杩斿埄璁㈠崟 - * - * @param jdOrder - * @param uid - */ - private void processFanLiJDOrder(JDOrder jdOrder, Long uid) { - int invalidCount = 0; - BigDecimal totalMoney = new BigDecimal(0); - // 璁㈠崟鐘舵�佸垽鏂� - for (JDOrderItem item : jdOrder.getOrderItemList()) { - if (item.getEstimateCosPrice() != null) - totalMoney = totalMoney.add(item.getEstimateCosPrice()); + } else if (item.getValidCode() == 15) {// 鏈敮浠� - if (item.getValidCode() == 16 || item.getValidCode() == 17 || item.getValidCode() == 18) {// 宸蹭粯娆� + } else { + invalidCount++; + } + } - } else if (item.getValidCode() == 15) {// 鏈敮浠� + // 鍔犲叆璁㈠崟 + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(jdOrder.getOrderId() + "", + Constant.SOURCE_TYPE_JD); + if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) + uid = oldOrder.getUserInfo().getId(); - } else { - invalidCount++; - } - } + if (uid == null) + return; - // 鍔犲叆璁㈠崟 - Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(jdOrder.getOrderId() + "", - Constant.SOURCE_TYPE_JD); - if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) - uid = oldOrder.getUserInfo().getId(); + if (oldOrder == null)// 鏂板 + { + Order order = new Order(); + order.setBeizhu("浜笢杩斿埄璁㈠崟"); + order.setCreatetime(System.currentTimeMillis()); + order.setOrderId(jdOrder.getOrderId() + ""); + order.setOrderType(Constant.SOURCE_TYPE_JD); + order.setState( + invalidCount == jdOrder.getOrderItemList().size() ? Order.STATE_SHIXIAO : Order.STATE_YIZHIFU); + order.setUserInfo(new UserInfo(uid)); + order.setVersion(2); + order.setThirdCreateTime(new Date(jdOrder.getOrderTime())); + order.setMoney(totalMoney); + // 鍔犲叆鍒拌鍗曡〃 + orderMapper.insertSelective(order); + } else { + Order updateOrder = new Order(); + updateOrder.setId(oldOrder.getId()); + updateOrder.setMoney(totalMoney); + orderMapper.updateByPrimaryKeySelective(updateOrder); + } - if (uid == null) - return; + try { + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addJDOrder(jdOrder, uid); + addHongBaoWithMQ(commonOrderList, jdOrder.getOrderId() + "", uid, Constant.SOURCE_TYPE_JD, + HongBaoV2.TYPE_ZIGOU); - if (oldOrder == null)// 鏂板 - { - Order order = new Order(); - order.setBeizhu("浜笢杩斿埄璁㈠崟"); - order.setCreatetime(System.currentTimeMillis()); - order.setOrderId(jdOrder.getOrderId() + ""); - order.setOrderType(Constant.SOURCE_TYPE_JD); - order.setState( - invalidCount == jdOrder.getOrderItemList().size() ? Order.STATE_SHIXIAO : Order.STATE_YIZHIFU); - order.setUserInfo(new UserInfo(uid)); - order.setVersion(2); - order.setThirdCreateTime(new Date(jdOrder.getOrderTime())); - order.setMoney(totalMoney); - // 鍔犲叆鍒拌鍗曡〃 - orderMapper.insertSelective(order); - } else { - Order updateOrder = new Order(); - updateOrder.setId(oldOrder.getId()); - updateOrder.setMoney(totalMoney); - orderMapper.updateByPrimaryKeySelective(updateOrder); - } + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(jdOrder.getOrderId() + ""); + order.setOrderType(Constant.SOURCE_TYPE_JD); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - try { - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addJDOrder(jdOrder, uid); - addHongBaoWithMQ(commonOrderList, jdOrder.getOrderId() + "", uid, Constant.SOURCE_TYPE_JD, - HongBaoV2.TYPE_ZIGOU); + /** + * 澶勭悊浜笢鍒嗕韩璁㈠崟 + * + * @param jdOrder + * @param uid + */ + private void processShareJDOrder(JDOrder jdOrder, Long uid) { + try { + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addJDOrder(jdOrder, uid); + addHongBaoWithMQ(commonOrderList, jdOrder.getOrderId() + "", uid, Constant.SOURCE_TYPE_JD, + HongBaoV2.TYPE_SHARE_GOODS); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(jdOrder.getOrderId() + ""); + order.setOrderType(Constant.SOURCE_TYPE_JD); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(jdOrder.getOrderId() + ""); - order.setOrderType(Constant.SOURCE_TYPE_JD); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderId()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + /** + * 鏄惁鏄垎浜禋璁㈠崟 + * + * @param pddOrder + * @return + */ + private boolean isShareOrder(PDDOrder pddOrder) { + String positionId = pddOrder.getpId(); + if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) + return true; + else + return false; + } - /** - * 澶勭悊浜笢鍒嗕韩璁㈠崟 - * @param jdOrder - * @param uid - */ - private void processShareJDOrder(JDOrder jdOrder, Long uid) { - try { - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addJDOrder(jdOrder, uid); - addHongBaoWithMQ(commonOrderList, jdOrder.getOrderId() + "", uid, Constant.SOURCE_TYPE_JD, - HongBaoV2.TYPE_SHARE_GOODS); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(jdOrder.getOrderId() + ""); - order.setOrderType(Constant.SOURCE_TYPE_JD); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderId()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + /** + * 澶勭悊鎷煎澶氳鍗� + */ + @Override + public void processPDDOrder(PDDOrder pddOrder) { + if (pddOrder == null) + return; + String uidStr = pddOrder.getCustomParameters(); + Long uid = null; + if (!StringUtil.isNullOrEmpty(uidStr)) + uid = Long.parseLong(uidStr); + String positionId = pddOrder.getpId(); + if (PinDuoDuoApiUtil.PID_FANLI.equalsIgnoreCase(positionId))// 杩斿埄璁㈠崟 + { + processFanLiPDDOrder(pddOrder, uid); + lostOrderService.processSuceess(pddOrder.getOrderSn(), Constant.SOURCE_TYPE_PDD); + } else if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) {// 鍒嗕韩璁㈠崟 + if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� + return; + processSharePDDOrder(pddOrder, uid); + } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� + processFanLiPDDOrder(pddOrder, null); + } + } - /** - * 鏄惁鏄垎浜禋璁㈠崟 - * @param pddOrder - * @return - */ - private boolean isShareOrder(PDDOrder pddOrder) { - String positionId = pddOrder.getpId(); - if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) - return true; - else - return false; - } + /** + * 澶勭悊鎷煎澶氳嚜璐繑鍒╄鍗� + * + * @param pddOrder + * @param uid + */ + private void processFanLiPDDOrder(PDDOrder pddOrder, Long uid) { + int orderState = 0; + if (pddOrder.getOrderStatus() == -1 || pddOrder.getOrderStatus() == 8) + orderState = Order.STATE_SHIXIAO; + else + orderState = Order.STATE_YIZHIFU; - /** - * 澶勭悊鎷煎澶氳鍗� - */ - @Override - public void processPDDOrder(PDDOrder pddOrder) { - if (pddOrder == null) - return; - String uidStr = pddOrder.getCustomParameters(); - Long uid = null; - if (!StringUtil.isNullOrEmpty(uidStr)) - uid = Long.parseLong(uidStr); - String positionId = pddOrder.getpId(); - if (PinDuoDuoApiUtil.PID_FANLI.equalsIgnoreCase(positionId))// 杩斿埄璁㈠崟 - { - processFanLiPDDOrder(pddOrder, uid); - lostOrderService.processSuceess(pddOrder.getOrderSn(), Constant.SOURCE_TYPE_PDD); - } else if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) {// 鍒嗕韩璁㈠崟 - if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� - return; - processSharePDDOrder(pddOrder, uid); - } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� - processFanLiPDDOrder(pddOrder, null); - } - } + BigDecimal totalMoney = MoneyBigDecimalUtil.div(new BigDecimal(pddOrder.getOrderAmount()), new BigDecimal(100)); - /** - * 澶勭悊鎷煎澶氳嚜璐繑鍒╄鍗� - * @param pddOrder - * @param uid - */ - private void processFanLiPDDOrder(PDDOrder pddOrder, Long uid) { - int orderState = 0; - if (pddOrder.getOrderStatus() == -1 || pddOrder.getOrderStatus() == 8) - orderState = Order.STATE_SHIXIAO; - else - orderState = Order.STATE_YIZHIFU; + // 鍔犲叆璁㈠崟 + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(pddOrder.getOrderSn(), Constant.SOURCE_TYPE_PDD); + if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) + uid = oldOrder.getUserInfo().getId(); - BigDecimal totalMoney = MoneyBigDecimalUtil.div(new BigDecimal(pddOrder.getOrderAmount()), new BigDecimal(100)); + if (uid == null) + return; - // 鍔犲叆璁㈠崟 - Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(pddOrder.getOrderSn(), Constant.SOURCE_TYPE_PDD); - if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) - uid = oldOrder.getUserInfo().getId(); + if (oldOrder == null)// 鏂板 + { + Order order = new Order(); + order.setBeizhu("鎷煎澶氳繑鍒╄鍗�"); + order.setCreatetime(System.currentTimeMillis()); + order.setOrderId(pddOrder.getOrderSn()); + order.setOrderType(Constant.SOURCE_TYPE_PDD); + order.setState(orderState); + order.setUserInfo(new UserInfo(uid)); + order.setVersion(2); + if (pddOrder.getFailReason() != null && pddOrder.getFailReason().contains("姣斾环")) + order.setStateDesc("姣斾环璁㈠崟"); + order.setThirdCreateTime(new Date(pddOrder.getOrderCreateTime() * 1000)); + order.setMoney(totalMoney); + // 鍔犲叆鍒拌鍗曡〃 + orderMapper.insertSelective(order); + } else { + Order updateOrder = new Order(); + updateOrder.setId(oldOrder.getId()); + updateOrder.setMoney(totalMoney); + if (pddOrder.getFailReason() != null && pddOrder.getFailReason().contains("姣斾环")) + updateOrder.setStateDesc("姣斾环璁㈠崟"); + orderMapper.updateByPrimaryKeySelective(updateOrder); + } - if (uid == null) - return; + try { + List<PDDOrder> pddOrderList = new ArrayList<>(); + pddOrderList.add(pddOrder); + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addPDDOrder(pddOrderList, uid); + addHongBaoWithMQ(commonOrderList, pddOrder.getOrderSn(), uid, Constant.SOURCE_TYPE_PDD, + HongBaoV2.TYPE_ZIGOU); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(pddOrder.getOrderSn()); + order.setOrderType(Constant.SOURCE_TYPE_PDD); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addPDDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + pddOrder.getOrderSn()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - if (oldOrder == null)// 鏂板 - { - Order order = new Order(); - order.setBeizhu("鎷煎澶氳繑鍒╄鍗�"); - order.setCreatetime(System.currentTimeMillis()); - order.setOrderId(pddOrder.getOrderSn()); - order.setOrderType(Constant.SOURCE_TYPE_PDD); - order.setState(orderState); - order.setUserInfo(new UserInfo(uid)); - order.setVersion(2); - order.setThirdCreateTime(new Date(pddOrder.getOrderCreateTime() * 1000)); - order.setMoney(totalMoney); - // 鍔犲叆鍒拌鍗曡〃 - orderMapper.insertSelective(order); - } else { - Order updateOrder = new Order(); - updateOrder.setId(oldOrder.getId()); - updateOrder.setMoney(totalMoney); - orderMapper.updateByPrimaryKeySelective(updateOrder); - } + /** + * 澶勭悊鎷煎澶氬垎浜鍗� + * + * @param pddOrder + * @param uid + */ + private void processSharePDDOrder(PDDOrder pddOrder, Long uid) { + try { + List<PDDOrder> pddOrderList = new ArrayList<>(); + pddOrderList.add(pddOrder); + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addPDDOrder(pddOrderList, uid); + addHongBaoWithMQ(commonOrderList, pddOrder.getOrderSn(), uid, Constant.SOURCE_TYPE_PDD, + HongBaoV2.TYPE_SHARE_GOODS); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(pddOrder.getOrderSn()); + order.setOrderType(Constant.SOURCE_TYPE_PDD); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + pddOrder.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - try { - List<PDDOrder> pddOrderList = new ArrayList<>(); - pddOrderList.add(pddOrder); - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addPDDOrder(pddOrderList, uid); - addHongBaoWithMQ(commonOrderList, pddOrder.getOrderSn(), uid, Constant.SOURCE_TYPE_PDD, - HongBaoV2.TYPE_ZIGOU); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(pddOrder.getOrderSn()); - order.setOrderType(Constant.SOURCE_TYPE_PDD); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addPDDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + pddOrder.getOrderSn()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + @Override + public void processVipShopOrder(VipShopOrder order) { - /** - * 澶勭悊鎷煎澶氬垎浜鍗� - * @param pddOrder - * @param uid - */ - private void processSharePDDOrder(PDDOrder pddOrder, Long uid) { - try { - List<PDDOrder> pddOrderList = new ArrayList<>(); - pddOrderList.add(pddOrder); - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addPDDOrder(pddOrderList, uid); - addHongBaoWithMQ(commonOrderList, pddOrder.getOrderSn(), uid, Constant.SOURCE_TYPE_PDD, - HongBaoV2.TYPE_SHARE_GOODS); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(pddOrder.getOrderSn()); - order.setOrderType(Constant.SOURCE_TYPE_PDD); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + pddOrder.getOrderId()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + if (order == null || order.getDetailList() == null || order.getDetailList().size() == 0) + return; - @Override - public void processVipShopOrder(VipShopOrder order) { - - if (order == null || order.getDetailList() == null || order.getDetailList().size() == 0) - return; - - // 鏍规嵁ext1涓巗ubUnionId璺熷崟 - String channelTag = order.getChannelTag(); + // 鏍规嵁ext1涓巗ubUnionId璺熷崟 + String channelTag = order.getChannelTag(); - String uidStr = VipShopUtil.getUidFromChanTag(channelTag); + String uidStr = VipShopUtil.getUidFromChanTag(channelTag); - Long uid = null; - if (!StringUtil.isNullOrEmpty(uidStr) && NumberUtil.isNumeric(uidStr)) - uid = Long.parseLong(uidStr); - String type = VipShopUtil.getTypeFromChanTag(channelTag); - if ("buy".equalsIgnoreCase(type))// 杩斿埄璁㈠崟 - { - processFanLiVipShopOrder(order, uid); - lostOrderService.processSuceess(order.getOrderSn() + "", Constant.SOURCE_TYPE_VIP); - } else if ("share".equalsIgnoreCase(type)) {// 鍒嗕韩璁㈠崟 - if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� - return; - processShareVipShopOrder(order, uid); - } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� - processFanLiVipShopOrder(order, null); - } - } + Long uid = null; + if (!StringUtil.isNullOrEmpty(uidStr) && NumberUtil.isNumeric(uidStr)) + uid = Long.parseLong(uidStr); + String type = VipShopUtil.getTypeFromChanTag(channelTag); + if ("buy".equalsIgnoreCase(type))// 杩斿埄璁㈠崟 + { + processFanLiVipShopOrder(order, uid); + lostOrderService.processSuceess(order.getOrderSn() + "", Constant.SOURCE_TYPE_VIP); + } else if ("share".equalsIgnoreCase(type)) {// 鍒嗕韩璁㈠崟 + if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� + return; + processShareVipShopOrder(order, uid); + } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� + processFanLiVipShopOrder(order, null); + } + } - /** - * 澶勭悊浜笢杩斿埄璁㈠崟 - * @param vipShopOrder - * @param uid - */ - private void processFanLiVipShopOrder(VipShopOrder vipShopOrder, Long uid) { - int invalidCount = 0; - BigDecimal totalMoney = new BigDecimal(0); - // 璁㈠崟鐘舵�佸垽鏂� - for (VipShopOrderDetail item : vipShopOrder.getDetailList()) { - if (item.getCommissionTotalCost() != null) - totalMoney = totalMoney.add(item.getCommissionTotalCost()); - if (item.getStatus() == VipShopOrderDetail.STATUS_INVALID) { - invalidCount++; - } - } + /** + * 澶勭悊浜笢杩斿埄璁㈠崟 + * + * @param vipShopOrder + * @param uid + */ + private void processFanLiVipShopOrder(VipShopOrder vipShopOrder, Long uid) { + int invalidCount = 0; + BigDecimal totalMoney = new BigDecimal(0); + // 璁㈠崟鐘舵�佸垽鏂� + for (VipShopOrderDetail item : vipShopOrder.getDetailList()) { + if (item.getCommissionTotalCost() != null) + totalMoney = totalMoney.add(item.getCommissionTotalCost()); + if (item.getStatus() == VipShopOrderDetail.STATUS_INVALID) { + invalidCount++; + } + } - // 鍔犲叆璁㈠崟 - Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(vipShopOrder.getOrderSn() + "", - Constant.SOURCE_TYPE_VIP); - if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) - uid = oldOrder.getUserInfo().getId(); + // 鍔犲叆璁㈠崟 + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(vipShopOrder.getOrderSn() + "", + Constant.SOURCE_TYPE_VIP); + if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) + uid = oldOrder.getUserInfo().getId(); - if (uid == null) - return; + if (uid == null) + return; - if (oldOrder == null)// 鏂板 - { - Order order = new Order(); - order.setBeizhu("鍞搧浼氳繑鍒╄鍗�"); - order.setCreatetime(System.currentTimeMillis()); - order.setOrderId(vipShopOrder.getOrderSn() + ""); - order.setOrderType(Constant.SOURCE_TYPE_VIP); - order.setState( - invalidCount == vipShopOrder.getDetailList().size() ? Order.STATE_SHIXIAO : Order.STATE_YIZHIFU); - order.setUserInfo(new UserInfo(uid)); - order.setVersion(2); - order.setThirdCreateTime(new Date(vipShopOrder.getOrderTime())); - order.setMoney(totalMoney); - // 鍔犲叆鍒拌鍗曡〃 - orderMapper.insertSelective(order); - } else { - Order updateOrder = new Order(); - updateOrder.setId(oldOrder.getId()); - updateOrder.setMoney(totalMoney); - orderMapper.updateByPrimaryKeySelective(updateOrder); - } + if (oldOrder == null)// 鏂板 + { + Order order = new Order(); + order.setBeizhu("鍞搧浼氳繑鍒╄鍗�"); + order.setCreatetime(System.currentTimeMillis()); + order.setOrderId(vipShopOrder.getOrderSn() + ""); + order.setOrderType(Constant.SOURCE_TYPE_VIP); + order.setState( + invalidCount == vipShopOrder.getDetailList().size() ? Order.STATE_SHIXIAO : Order.STATE_YIZHIFU); + order.setUserInfo(new UserInfo(uid)); + order.setVersion(2); + order.setThirdCreateTime(new Date(vipShopOrder.getOrderTime())); + order.setMoney(totalMoney); + // 鍔犲叆鍒拌鍗曡〃 + orderMapper.insertSelective(order); + } else { + Order updateOrder = new Order(); + updateOrder.setId(oldOrder.getId()); + updateOrder.setMoney(totalMoney); + orderMapper.updateByPrimaryKeySelective(updateOrder); + } - try { - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addVipShopOrder(vipShopOrder, uid); - addHongBaoWithMQ(commonOrderList, vipShopOrder.getOrderSn() + "", uid, Constant.SOURCE_TYPE_VIP, - HongBaoV2.TYPE_ZIGOU); + try { + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addVipShopOrder(vipShopOrder, uid); + addHongBaoWithMQ(commonOrderList, vipShopOrder.getOrderSn() + "", uid, Constant.SOURCE_TYPE_VIP, + HongBaoV2.TYPE_ZIGOU); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(vipShopOrder.getOrderSn() + ""); - order.setOrderType(Constant.SOURCE_TYPE_VIP); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addVipShopOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + vipShopOrder.getOrderSn()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(vipShopOrder.getOrderSn() + ""); + order.setOrderType(Constant.SOURCE_TYPE_VIP); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addVipShopOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + vipShopOrder.getOrderSn()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - /** - * 澶勭悊浜笢鍒嗕韩璁㈠崟 - * @param jdOrder - * @param uid - */ - private void processShareVipShopOrder(VipShopOrder jdOrder, Long uid) { - try { - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addVipShopOrder(jdOrder, uid); - addHongBaoWithMQ(commonOrderList, jdOrder.getOrderSn() + "", uid, Constant.SOURCE_TYPE_VIP, - HongBaoV2.TYPE_SHARE_GOODS); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(jdOrder.getOrderSn() + ""); - order.setOrderType(Constant.SOURCE_TYPE_VIP); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderSn()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + /** + * 澶勭悊浜笢鍒嗕韩璁㈠崟 + * + * @param jdOrder + * @param uid + */ + private void processShareVipShopOrder(VipShopOrder jdOrder, Long uid) { + try { + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addVipShopOrder(jdOrder, uid); + addHongBaoWithMQ(commonOrderList, jdOrder.getOrderSn() + "", uid, Constant.SOURCE_TYPE_VIP, + HongBaoV2.TYPE_SHARE_GOODS); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(jdOrder.getOrderSn() + ""); + order.setOrderType(Constant.SOURCE_TYPE_VIP); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + jdOrder.getOrderSn()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - /** - * 澶勭悊鑻忓畞璁㈠崟 - */ - @Override - public void processSuningOrder(SuningOrderInfo suningOrder) { - if (suningOrder == null) - return; - String uidStr = suningOrder.getChildAccountId(); - Long uid = null; - if (!StringUtil.isNullOrEmpty(uidStr)) - uid = Long.parseLong(uidStr); - String positionId = suningOrder.getPositionId(); - if (SuningApiUtil.PID_BUY.equalsIgnoreCase(positionId))// 杩斿埄璁㈠崟 - { - processFanLiSuningOrder(suningOrder, uid); - lostOrderService.processSuceess(suningOrder.getOrderCode(), Constant.SOURCE_TYPE_SUNING); - } else if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) {// 鍒嗕韩璁㈠崟 - if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� - return; - processShareSuningOrder(suningOrder, uid); - } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� - processFanLiSuningOrder(suningOrder, null); - } - } + /** + * 澶勭悊鑻忓畞璁㈠崟 + */ + @Override + public void processSuningOrder(SuningOrderInfo suningOrder) { + if (suningOrder == null) + return; + String uidStr = suningOrder.getChildAccountId(); + Long uid = null; + if (!StringUtil.isNullOrEmpty(uidStr)) + uid = Long.parseLong(uidStr); + String positionId = suningOrder.getPositionId(); + if (SuningApiUtil.PID_BUY.equalsIgnoreCase(positionId))// 杩斿埄璁㈠崟 + { + processFanLiSuningOrder(suningOrder, uid); + lostOrderService.processSuceess(suningOrder.getOrderCode(), Constant.SOURCE_TYPE_SUNING); + } else if (PinDuoDuoApiUtil.PID_SHARE.equalsIgnoreCase(positionId)) {// 鍒嗕韩璁㈠崟 + if (uid == null)// 鍒嗕韩璁㈠崟涓嶅厑璁告壘鍥� + return; + processShareSuningOrder(suningOrder, uid); + } else {// 澶勭悊鏄惁鏈夎鍗曟壘鍥炵殑鐘舵�� + processFanLiSuningOrder(suningOrder, null); + } + } - /** - * 澶勭悊鎷煎澶氳嚜璐繑鍒╄鍗� - * @param suningOrder - * @param uid - */ - private void processFanLiSuningOrder(SuningOrderInfo suningOrder, Long uid) { - int orderState = 0; + /** + * 澶勭悊鎷煎澶氳嚜璐繑鍒╄鍗� + * + * @param suningOrder + * @param uid + */ + private void processFanLiSuningOrder(SuningOrderInfo suningOrder, Long uid) { + int orderState = 0; - // 绛夊緟浠樻锛涙敮浠樺畬鎴愶紱閫�娆撅紱璁㈠崟宸插彇娑堬紱纭鏀惰揣 + // 绛夊緟浠樻锛涙敮浠樺畬鎴愶紱閫�娆撅紱璁㈠崟宸插彇娑堬紱纭鏀惰揣 - if ("璁㈠崟宸插彇娑�".equalsIgnoreCase(suningOrder.getOrderLineStatusDesc()) - || "閫�娆�".equalsIgnoreCase(suningOrder.getOrderLineStatusDesc())) - orderState = Order.STATE_SHIXIAO; - else - orderState = Order.STATE_YIZHIFU; + if ("璁㈠崟宸插彇娑�".equalsIgnoreCase(suningOrder.getOrderLineStatusDesc()) + || "閫�娆�".equalsIgnoreCase(suningOrder.getOrderLineStatusDesc())) + orderState = Order.STATE_SHIXIAO; + else + orderState = Order.STATE_YIZHIFU; - BigDecimal totalMoney = new BigDecimal(suningOrder.getPayAmount()); + BigDecimal totalMoney = new BigDecimal(suningOrder.getPayAmount()); - // 鍔犲叆璁㈠崟 - Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(suningOrder.getOrderCode(), - Constant.SOURCE_TYPE_SUNING); - if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) - uid = oldOrder.getUserInfo().getId(); + // 鍔犲叆璁㈠崟 + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(suningOrder.getOrderCode(), + Constant.SOURCE_TYPE_SUNING); + if (uid == null && oldOrder != null && oldOrder.getBeizhu() != null && oldOrder.getBeizhu().contains("琛ュ崟")) + uid = oldOrder.getUserInfo().getId(); - if (uid == null) - return; + if (uid == null) + return; - if (oldOrder == null)// 鏂板 - { - Order order = new Order(); - order.setBeizhu("鑻忓畞杩斿埄璁㈠崟"); - order.setCreatetime(System.currentTimeMillis()); - order.setOrderId(suningOrder.getOrderCode()); - order.setOrderType(Constant.SOURCE_TYPE_SUNING); - order.setState(orderState); - order.setUserInfo(new UserInfo(uid)); - order.setVersion(2); - order.setThirdCreateTime( - new Date(TimeUtil.convertToTimeTemp(suningOrder.getOrderSubmitTime(), "yyyy-MM-dd HH:mm:ss"))); - order.setMoney(totalMoney); - // 鍔犲叆鍒拌鍗曡〃 - orderMapper.insertSelective(order); - } else { - Order updateOrder = new Order(); - updateOrder.setId(oldOrder.getId()); - updateOrder.setMoney(totalMoney); - orderMapper.updateByPrimaryKeySelective(updateOrder); - } + if (oldOrder == null)// 鏂板 + { + Order order = new Order(); + order.setBeizhu("鑻忓畞杩斿埄璁㈠崟"); + order.setCreatetime(System.currentTimeMillis()); + order.setOrderId(suningOrder.getOrderCode()); + order.setOrderType(Constant.SOURCE_TYPE_SUNING); + order.setState(orderState); + order.setUserInfo(new UserInfo(uid)); + order.setVersion(2); + order.setThirdCreateTime( + new Date(TimeUtil.convertToTimeTemp(suningOrder.getOrderSubmitTime(), "yyyy-MM-dd HH:mm:ss"))); + order.setMoney(totalMoney); + // 鍔犲叆鍒拌鍗曡〃 + orderMapper.insertSelective(order); + } else { + Order updateOrder = new Order(); + updateOrder.setId(oldOrder.getId()); + updateOrder.setMoney(totalMoney); + orderMapper.updateByPrimaryKeySelective(updateOrder); + } - try { - List<SuningOrderInfo> pddOrderList = new ArrayList<>(); - pddOrderList.add(suningOrder); - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addSuningOrder(pddOrderList, uid); - addHongBaoWithMQ(commonOrderList, suningOrder.getOrderCode(), uid, Constant.SOURCE_TYPE_SUNING, - HongBaoV2.TYPE_ZIGOU); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(suningOrder.getOrderCode()); - order.setOrderType(Constant.SOURCE_TYPE_SUNING); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addPDDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + suningOrder.getOrderCode()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + try { + List<SuningOrderInfo> pddOrderList = new ArrayList<>(); + pddOrderList.add(suningOrder); + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addSuningOrder(pddOrderList, uid); + addHongBaoWithMQ(commonOrderList, suningOrder.getOrderCode(), uid, Constant.SOURCE_TYPE_SUNING, + HongBaoV2.TYPE_ZIGOU); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(suningOrder.getOrderCode()); + order.setOrderType(Constant.SOURCE_TYPE_SUNING); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addPDDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + suningOrder.getOrderCode()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - /** - * 澶勭悊鎷煎澶氬垎浜鍗� - * @param suningOrder - * @param uid - */ - private void processShareSuningOrder(SuningOrderInfo suningOrder, Long uid) { - try { - List<SuningOrderInfo> suningOrderList = new ArrayList<>(); - suningOrderList.add(suningOrder); - List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addSuningOrder(suningOrderList, uid); - addHongBaoWithMQ(commonOrderList, suningOrder.getOrderCode(), uid, Constant.SOURCE_TYPE_SUNING, - HongBaoV2.TYPE_SHARE_GOODS); - if (isCommonOrderAllAdd(commonOrderList)) { - Order order = new Order(); - order.setOrderId(suningOrder.getOrderCode()); - order.setOrderType(Constant.SOURCE_TYPE_SUNING); - order.setUserInfo(new UserInfo(uid)); - try { - if (Constant.ENABLE_MQ) - PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); - } catch (Exception e) { - } - } - } catch (CommonOrderException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + suningOrder.getOrderCode()); - } catch (Exception e1) { - e1.printStackTrace(); - } - } - } + /** + * 澶勭悊鎷煎澶氬垎浜鍗� + * + * @param suningOrder + * @param uid + */ + private void processShareSuningOrder(SuningOrderInfo suningOrder, Long uid) { + try { + List<SuningOrderInfo> suningOrderList = new ArrayList<>(); + suningOrderList.add(suningOrder); + List<CommonOrderAddResultDTO> commonOrderList = commonOrderService.addSuningOrder(suningOrderList, uid); + addHongBaoWithMQ(commonOrderList, suningOrder.getOrderCode(), uid, Constant.SOURCE_TYPE_SUNING, + HongBaoV2.TYPE_SHARE_GOODS); + if (isCommonOrderAllAdd(commonOrderList)) { + Order order = new Order(); + order.setOrderId(suningOrder.getOrderCode()); + order.setOrderType(Constant.SOURCE_TYPE_SUNING); + order.setUserInfo(new UserInfo(uid)); + try { + if (Constant.ENABLE_MQ) + PlaceOrderCMQManager.getInstance().addPlaceOrderMsg(order); + } catch (Exception e) { + } + } + } catch (CommonOrderException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + suningOrder.getOrderCode()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } - @Override - public void repairCommonOrderByByTaoBaoOrder(String orderId) { - // 鏍规嵁璁㈠崟鍙锋煡璇㈡窐瀹濊鍗� - List<TaoBaoOrder> orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId); - if (orderList != null) - for (TaoBaoOrder order : orderList) { - // 鏍规嵁浜ゆ槗ID鏌ヨ甯歌璁㈠崟 - CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, - order.getTradeId()); - // 淇orderby - if (commonOrder != null) { - CommonOrder update = new CommonOrder(commonOrder.getId()); - update.setOrderBy(order.getOrderBy()); - update.setUpdateTime(new Date()); - commonOrderService.updateByPrimaryKeySelective(update); - } - } + @Override + public void repairCommonOrderByByTaoBaoOrder(String orderId) { + // 鏍规嵁璁㈠崟鍙锋煡璇㈡窐瀹濊鍗� + List<TaoBaoOrder> orderList = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId); + if (orderList != null) + for (TaoBaoOrder order : orderList) { + // 鏍规嵁浜ゆ槗ID鏌ヨ甯歌璁㈠崟 + CommonOrder commonOrder = commonOrderService.selectBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, + order.getTradeId()); + // 淇orderby + if (commonOrder != null) { + CommonOrder update = new CommonOrder(commonOrder.getId()); + update.setOrderBy(order.getOrderBy()); + update.setUpdateTime(new Date()); + commonOrderService.updateByPrimaryKeySelective(update); + } + } - } + } - @Override - public boolean isShareOrder(CommonOrder commonOrder) { - switch (commonOrder.getSourceType()) { - case Constant.SOURCE_TYPE_TAOBAO: - return isShareOrder(taoBaoOrderService.selectByTradeId(commonOrder.getTradeId())); - case Constant.SOURCE_TYPE_JD: - return isShareOrder(jdOrderService.selectDetailByOrderId(Long.parseLong(commonOrder.getOrderNo()))); - case Constant.SOURCE_TYPE_PDD: - return isShareOrder(pddOrderService.selectByOrderSn(commonOrder.getOrderNo()).get(0)); - } - return false; - } + @Override + public boolean isShareOrder(CommonOrder commonOrder) { + switch (commonOrder.getSourceType()) { + case Constant.SOURCE_TYPE_TAOBAO: + return isShareOrder(taoBaoOrderService.selectByTradeId(commonOrder.getTradeId())); + case Constant.SOURCE_TYPE_JD: + return isShareOrder(jdOrderService.selectDetailByOrderId(Long.parseLong(commonOrder.getOrderNo()))); + case Constant.SOURCE_TYPE_PDD: + return isShareOrder(pddOrderService.selectByOrderSn(commonOrder.getOrderNo()).get(0)); + } + return false; + } - /** - * 杞负鏅�氳鍗� - * - * @param dtoList - * @return - */ - private List<CommonOrder> convertCommonOrder(List<CommonOrderAddResultDTO> dtoList) { - List<CommonOrder> commonOrderList = new ArrayList<>(); - if (dtoList != null) - for (CommonOrderAddResultDTO dto : dtoList) - commonOrderList.add(dto.getCommonOrder()); - return commonOrderList; - } + /** + * 杞负鏅�氳鍗� + * + * @param dtoList + * @return + */ + private List<CommonOrder> convertCommonOrder(List<CommonOrderAddResultDTO> dtoList) { + List<CommonOrder> commonOrderList = new ArrayList<>(); + if (dtoList != null) + for (CommonOrderAddResultDTO dto : dtoList) + commonOrderList.add(dto.getCommonOrder()); + return commonOrderList; + } - /** - * 鏄惁鍏ㄦ槸澧炲姞 - * - * @param list - * @return - */ - private boolean isCommonOrderAllAdd(List<CommonOrderAddResultDTO> list) { - if (list == null || list.size() == 0) - return false; - int addCount = 0; - if (list != null) - for (CommonOrderAddResultDTO dto : list) { - if (dto.getType() == CommonOrderAddResultDTO.TYPE_ADD) - addCount++; - } - if (addCount == list.size()) - return true; - else - return false; - } + /** + * 鏄惁鍏ㄦ槸澧炲姞 + * + * @param list + * @return + */ + private boolean isCommonOrderAllAdd(List<CommonOrderAddResultDTO> list) { + if (list == null || list.size() == 0) + return false; + int addCount = 0; + if (list != null) + for (CommonOrderAddResultDTO dto : list) { + if (dto.getType() == CommonOrderAddResultDTO.TYPE_ADD) + addCount++; + } + if (addCount == list.size()) + return true; + else + return false; + } - @Transactional(rollbackFor = Exception.class) - public void invalidHongBaoV2AndGiveGodenCorn(Long hongBaoId, Long uid, String orderId, int sourceType, - String beiZhu) throws Exception { - HongBaoOrder hongbaoOrder = hongBaoOrderMapper.selectByHongBaoId(hongBaoId); - if (hongbaoOrder != null) { - CommonOrder commonOrder = commonOrderService.selectByPrimaryKey(hongbaoOrder.getCommonOrder().getId()); - if (commonOrder != null) { - if (commonOrder.getState() == CommonOrder.STATE_FK) { - CommonOrder updateOrder = new CommonOrder(commonOrder.getId()); - updateOrder.setState(CommonOrder.STATE_SX); - updateOrder.setUpdateTime(new Date()); - commonOrderService.updateByPrimaryKeySelective(updateOrder); - } - } - } + @Transactional(rollbackFor = Exception.class) + public void invalidHongBaoV2AndGiveGodenCorn(Long hongBaoId, Long uid, String orderId, int sourceType, + String beiZhu) throws Exception { + HongBaoOrder hongbaoOrder = hongBaoOrderMapper.selectByHongBaoId(hongBaoId); + if (hongbaoOrder != null) { + CommonOrder commonOrder = commonOrderService.selectByPrimaryKey(hongbaoOrder.getCommonOrder().getId()); + if (commonOrder != null) { + if (commonOrder.getState() == CommonOrder.STATE_FK) { + CommonOrder updateOrder = new CommonOrder(commonOrder.getId()); + updateOrder.setState(CommonOrder.STATE_SX); + updateOrder.setUpdateTime(new Date()); + commonOrderService.updateByPrimaryKeySelective(updateOrder); + } + } + } - HongBaoV2 hongBao = hongBaoV2Service.selectByPrimaryKey(hongBaoId); - if (hongBao == null || hongBao.getState() == HongBaoV2.STATE_SHIXIAO) - return; + HongBaoV2 hongBao = hongBaoV2Service.selectByPrimaryKey(hongBaoId); + if (hongBao == null || hongBao.getState() == HongBaoV2.STATE_SHIXIAO) + return; - HongBaoV2 v2 = new HongBaoV2(hongBaoId); - v2.setState(HongBaoV2.STATE_SHIXIAO); - v2.setBeizhu(beiZhu); - v2.setUpdateTime(new Date()); - hongBaoV2Service.updateByPrimaryKeySelective(v2); - List<HongBaoV2> children = hongBaoV2Service.listChildrenById(hongBaoId); - if (children != null) - for (HongBaoV2 child : children) { - HongBaoV2 update = new HongBaoV2(child.getId()); - update.setState(HongBaoV2.STATE_SHIXIAO); - update.setBeizhu(beiZhu); - update.setUpdateTime(new Date()); - hongBaoV2Service.updateByPrimaryKeySelective(update); - } + HongBaoV2 v2 = new HongBaoV2(hongBaoId); + v2.setState(HongBaoV2.STATE_SHIXIAO); + v2.setBeizhu(beiZhu); + v2.setUpdateTime(new Date()); + hongBaoV2Service.updateByPrimaryKeySelective(v2); + List<HongBaoV2> children = hongBaoV2Service.listChildrenById(hongBaoId); + if (children != null) + for (HongBaoV2 child : children) { + HongBaoV2 update = new HongBaoV2(child.getId()); + update.setState(HongBaoV2.STATE_SHIXIAO); + update.setBeizhu(beiZhu); + update.setUpdateTime(new Date()); + hongBaoV2Service.updateByPrimaryKeySelective(update); + } - if (hongBao.getType() == HongBaoV2.TYPE_ZIGOU || hongBao.getType() == HongBaoV2.TYPE_SHARE_GOODS) { - userOrderMsgNotificationService.orderInvalidToBusinessRunning(uid, orderId, sourceType, hongBao.getType()); - } - } + if (hongBao.getType() == HongBaoV2.TYPE_ZIGOU || hongBao.getType() == HongBaoV2.TYPE_SHARE_GOODS) { + userOrderMsgNotificationService.orderInvalidToBusinessRunning(uid, orderId, sourceType, hongBao.getType()); + } + } - @Transactional - @Override - public void doTaoBaoSellerNotPaid(TaoBaoOrder order) { + @Transactional + @Override + public void doTaoBaoSellerNotPaid(TaoBaoOrder order) { - // 鏍规嵁浜ゆ槗ID鏌ヨ - if (!StringUtil.isNullOrEmpty(order.getTradeId())) { - List<CommonOrder> commonOrderList = commonOrderService - .listBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, order.getTradeId()); - if (commonOrderList != null) - // 鏌ヨ涓昏鍗� - for (CommonOrder commonOrder : commonOrderList) { - // 鏌ヨ涓荤孩鍖� - HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); - if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null) { - if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_BUKELINGQU || hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_SHIXIAO) { - // 璁㈠崟澶辨晥,璧犻�侀噾甯� - try { - invalidHongBaoV2AndGiveGodenCorn(hongBaoOrder.getHongBaoV2().getId(), hongBaoOrder.getHongBaoV2().getUserInfo().getId(), commonOrder.getOrderNo(), commonOrder.getSourceType(), "璁㈠崟鎴愬姛锛屽晢瀹舵湭鎵撴"); - } catch (Exception e) { - e.printStackTrace(); - } - } + // 鏍规嵁浜ゆ槗ID鏌ヨ + if (!StringUtil.isNullOrEmpty(order.getTradeId())) { + List<CommonOrder> commonOrderList = commonOrderService + .listBySourceTypeAndTradeId(Constant.SOURCE_TYPE_TAOBAO, order.getTradeId()); + if (commonOrderList != null) + // 鏌ヨ涓昏鍗� + for (CommonOrder commonOrder : commonOrderList) { + // 鏌ヨ涓荤孩鍖� + HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(commonOrder.getId()); + if (hongBaoOrder != null && hongBaoOrder.getHongBaoV2() != null) { + if (hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_BUKELINGQU || hongBaoOrder.getHongBaoV2().getState() == HongBaoV2.STATE_SHIXIAO) { + // 璁㈠崟澶辨晥,璧犻�侀噾甯� + try { + invalidHongBaoV2AndGiveGodenCorn(hongBaoOrder.getHongBaoV2().getId(), hongBaoOrder.getHongBaoV2().getUserInfo().getId(), commonOrder.getOrderNo(), commonOrder.getSourceType(), "璁㈠崟鎴愬姛锛屽晢瀹舵湭鎵撴"); + } catch (Exception e) { + e.printStackTrace(); + } + } - } + } - } - } - } + } + } + } - public void elmeFanli() { + public void elmeFanli() { - } + } - // 楗夸簡涔堣鍗� - @Resource - private ElmeHongBaoOrderMapService elmeHongBaoOrderMapService; + // 楗夸簡涔堣鍗� + @Resource + private ElmeHongBaoOrderMapService elmeHongBaoOrderMapService; - @Resource - private ElmeOrderService elmeOrderService; + @Resource + private ElmeOrderService elmeOrderService; - @Resource - private ElmeOrderProcessService elmeOrderProcessService; + @Resource + private ElmeOrderProcessService elmeOrderProcessService; - /** - * 鑾峰彇楗夸簡涔堝彲浠ヨ繑鍒╃殑绾㈠寘 - * - * @return - */ - @Override - public List<HongBaoV2> getCanBalanceElmeFanliHongBao() { - List<Integer> list = new ArrayList<>(); - list.add(HongBaoV2.TYPE_ELME); - return hongBaoV2Mapper.listCanBalanceHongBaoByTypeAndUid(list, null, null, new Date(), 0, 1000); - } + /** + * 鑾峰彇楗夸簡涔堝彲浠ヨ繑鍒╃殑绾㈠寘 + * + * @return + */ + @Override + public List<HongBaoV2> getCanBalanceElmeFanliHongBao() { + List<Integer> list = new ArrayList<>(); + list.add(HongBaoV2.TYPE_ELME); + return hongBaoV2Mapper.listCanBalanceHongBaoByTypeAndUid(list, null, null, new Date(), 0, 1000); + } - @Override - @Transactional - public void elmeFanli(Long hongBaoId) { - // 鏌ヨ璇︽儏 - HongBaoV2 hongBao = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hongBaoId); - if (hongBao.getType() == HongBaoV2.TYPE_ELME && hongBao.getState() == HongBaoV2.STATE_KELINGQU - && hongBao.getPreGetTime() != null && System.currentTimeMillis() > hongBao.getPreGetTime().getTime()) {// 鍙互鍒拌处浜� - // 鍒ゆ柇鐢ㄦ埛鐘舵�� - UserInfo user = userInfoMapper.selectByPrimaryKey(hongBao.getUserInfo().getId()); - if (user == null || user.getState() != UserInfo.STATE_NORMAL) - return; - ElmeHongBaoOrderMap map = elmeHongBaoOrderMapService.selectByHongBaoId(hongBaoId); - if (map == null) - return; - ElmeOrder order = elmeOrderService.selectByPrimaryKey(map.getElmeOrder().getId()); - if (order == null) - return; + @Override + @Transactional + public void elmeFanli(Long hongBaoId) { + // 鏌ヨ璇︽儏 + HongBaoV2 hongBao = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hongBaoId); + if (hongBao.getType() == HongBaoV2.TYPE_ELME && hongBao.getState() == HongBaoV2.STATE_KELINGQU + && hongBao.getPreGetTime() != null && System.currentTimeMillis() > hongBao.getPreGetTime().getTime()) {// 鍙互鍒拌处浜� + // 鍒ゆ柇鐢ㄦ埛鐘舵�� + UserInfo user = userInfoMapper.selectByPrimaryKey(hongBao.getUserInfo().getId()); + if (user == null || user.getState() != UserInfo.STATE_NORMAL) + return; + ElmeHongBaoOrderMap map = elmeHongBaoOrderMapService.selectByHongBaoId(hongBaoId); + if (map == null) + return; + ElmeOrder order = elmeOrderService.selectByPrimaryKey(map.getElmeOrder().getId()); + if (order == null) + return; - // 鍒拌处锛屽姞鏁版嵁 - HongBaoV2 update = new HongBaoV2(hongBao.getId()); - update.setUpdateTime(new Date()); - update.setGetTime(new Date()); - update.setState(HongBaoV2.STATE_YILINGQU); - hongBaoV2Mapper.updateByPrimaryKeySelective(update); - // 澧炲姞璧勯噾 - UserMoneyDetail detail = null; - try { - detail = UserMoneyDetailFactory.createElmeFanLi(hongBao.getUserInfo().getId(), order.getOrderId(), - hongBao.getId(), hongBao.getMoney()); - } catch (UserMoneyDetailException e) { - e.printStackTrace(); - } - userMoneyService.addUserMoney(hongBao.getUserInfo().getId(), hongBao.getMoney(), detail); - BigDecimal balance = userInfoMapper.selectByPrimaryKey(hongBao.getUserInfo().getId()).getMyHongBao(); - } - // 杩斿埄鍒拌处 - } + // 鍒拌处锛屽姞鏁版嵁 + HongBaoV2 update = new HongBaoV2(hongBao.getId()); + update.setUpdateTime(new Date()); + update.setGetTime(new Date()); + update.setState(HongBaoV2.STATE_YILINGQU); + hongBaoV2Mapper.updateByPrimaryKeySelective(update); + // 澧炲姞璧勯噾 + UserMoneyDetail detail = null; + try { + detail = UserMoneyDetailFactory.createElmeFanLi(hongBao.getUserInfo().getId(), order.getOrderId(), + hongBao.getId(), hongBao.getMoney()); + } catch (UserMoneyDetailException e) { + e.printStackTrace(); + } + userMoneyService.addUserMoney(hongBao.getUserInfo().getId(), hongBao.getMoney(), detail); + BigDecimal balance = userInfoMapper.selectByPrimaryKey(hongBao.getUserInfo().getId()).getMyHongBao(); + } + // 杩斿埄鍒拌处 + } - /** - * 娣诲姞绾㈠寘涓庝簨鍔℃秷鎭� - * - * @param commonOrderList - * @param orderId - * @param uid - * @param sourceType - * @param hongBaoType - */ - private void addHongBaoWithMQ(List<CommonOrderAddResultDTO> commonOrderList, String orderId, Long uid, - int sourceType, int hongBaoType) { - final List<CommonOrder> coList = convertCommonOrder(commonOrderList); - HongBaoAddResult result = null; - try { - long time = TimeUtil.convertToTimeTemp("2019-12-06", "yyyy-MM-dd"); - if (!Constant.IS_TEST) - time = TimeUtil.convertToTimeTemp("2019-12-20", "yyyy-MM-dd"); + /** + * 娣诲姞绾㈠寘涓庝簨鍔℃秷鎭� + * + * @param commonOrderList + * @param orderId + * @param uid + * @param sourceType + * @param hongBaoType + */ + private void addHongBaoWithMQ(List<CommonOrderAddResultDTO> commonOrderList, String orderId, Long uid, + int sourceType, int hongBaoType) { + final List<CommonOrder> coList = convertCommonOrder(commonOrderList); + HongBaoAddResult result = null; + try { + long time = TimeUtil.convertToTimeTemp("2019-12-06", "yyyy-MM-dd"); + if (!Constant.IS_TEST) + time = TimeUtil.convertToTimeTemp("2019-12-20", "yyyy-MM-dd"); - if (coList.get(0).getThirdCreateTime().getTime() < time) - result = hongBaoV2Service.addHongBao(coList, hongBaoType); - else - result = hongBaoV2AddManager.addHongBao(coList, hongBaoType); - } catch (HongBaoException e) { - try { - LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); - } catch (Exception e1) { - e1.printStackTrace(); - } - } catch (UserAccountException e) { + if (coList.get(0).getThirdCreateTime().getTime() < time) + result = hongBaoV2Service.addHongBao(coList, hongBaoType); + else + result = hongBaoV2AddManager.addHongBao(coList, hongBaoType); + } catch (HongBaoException e) { + try { + LogHelper.errorDetailInfo(e, "addJDOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); + } catch (Exception e1) { + e1.printStackTrace(); + } + } catch (UserAccountException e) { - } - if (!Constant.IS_TEST) - if (result.getResultCode() == HongBaoAddResult.CODE_ADD) {// 鍙彂閫佹柊澧炴秷鎭� - OrderMQMsg mqMsg = new OrderMQMsg(orderId, sourceType, uid, OrderMQMsg.HANDLE_TYPE_ADD, - isCommonOrderValid(coList), 0, new Date(), result.isMiandan(),coList.get(0).getThirdCreateTime()); - Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderStatistic, mqMsg); - rocketMQManager.sendNormalMsg(msg, null); - } - } + } + if (!Constant.IS_TEST) + if (result.getResultCode() == HongBaoAddResult.CODE_ADD) {// 鍙彂閫佹柊澧炴秷鎭� + OrderMQMsg mqMsg = new OrderMQMsg(orderId, sourceType, uid, OrderMQMsg.HANDLE_TYPE_ADD, + isCommonOrderValid(coList), 0, new Date(), result.isMiandan(), coList.get(0).getThirdCreateTime()); + Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderStatistic, mqMsg); + rocketMQManager.sendNormalMsg(msg, null); + } + } - /** - * 璁㈠崟鏄惁鏈夋晥 - * - * @param coList - * @return - */ - private boolean isCommonOrderValid(List<CommonOrder> coList) { - for (CommonOrder commonOrder : coList) { - if (commonOrder.getState() == CommonOrder.STATE_JS || commonOrder.getState() == CommonOrder.STATE_FK - || commonOrder.getState() == CommonOrder.STATE_WQ) { - return true; - } - } - return false; - } + /** + * 璁㈠崟鏄惁鏈夋晥 + * + * @param coList + * @return + */ + private boolean isCommonOrderValid(List<CommonOrder> coList) { + for (CommonOrder commonOrder : coList) { + if (commonOrder.getState() == CommonOrder.STATE_JS || commonOrder.getState() == CommonOrder.STATE_FK + || commonOrder.getState() == CommonOrder.STATE_WQ) { + return true; + } + } + return false; + } } -- Gitblit v1.8.0