From 4714dbbf7ead9e24f18a295890bdf5e75da991da Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 12 三月 2019 11:42:50 +0800 Subject: [PATCH] 取消 更新普通订单 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java | 86 +++++++++++++++++++++++++++++++++++------- 1 files changed, 71 insertions(+), 15 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 6b7878e..79f7f95 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 @@ -36,6 +36,7 @@ import com.yeshi.fanli.entity.bus.user.HongBao; import com.yeshi.fanli.entity.bus.user.HongBaoV2; import com.yeshi.fanli.entity.bus.user.Order; +import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.money.UserMoneyDetail; import com.yeshi.fanli.entity.order.CommonOrder; @@ -67,7 +68,9 @@ import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanDrawBackService; +import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService; import com.yeshi.fanli.service.inter.user.UserNotificationService; +import com.yeshi.fanli.service.inter.user.UserSystemCouponService; import com.yeshi.fanli.util.CMQManager; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; @@ -162,6 +165,12 @@ @Resource private UserMoneyMsgNotificationService userMoneyMsgNotificationService; + @Resource + private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService; + + @Resource + private UserSystemCouponService userSystemCouponService; + @Override public void processOrder(Map<String, List<TaoBaoOrder>> orders) { List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); @@ -175,18 +184,25 @@ 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()); - PidUser pidUser = pidUserMapper.selectByPid(pid); - if (pidUser != null && pidUser.getType() == PidUser.TYPE_SHARE_GOODS) {// 鍟嗗搧鍒嗕韩璁㈠崟 - // List<PidOrder> pidOrderList = new ArrayList<>(); - // for (TaoBaoOrder order : list) { - // pidOrderList.add(TaoBaoOrderUtil.convertToPidOrder(order)); - // } - // sharePidOrderMap.put(orderId, pidOrderList); + + if (!StringUtil.isNullOrEmpty(list.get(0).getRelationId())) { shareOrderMap.put(orderId, list); - } else {// 鏅�氳繑鍒╄鍗� + } else if (!StringUtil.isNullOrEmpty(list.get(0).getSpecialId())) { fanliOrderMap.put(orderId, list); + } else { + String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), + list.get(0).getSourceMediaId(), list.get(0).getAdPositionId()); + PidUser pidUser = pidUserMapper.selectByPid(pid); + if (pidUser != null && pidUser.getType() == PidUser.TYPE_SHARE_GOODS) {// 鍟嗗搧鍒嗕韩璁㈠崟 + // List<PidOrder> pidOrderList = new ArrayList<>(); + // for (TaoBaoOrder order : list) { + // pidOrderList.add(TaoBaoOrderUtil.convertToPidOrder(order)); + // } + // sharePidOrderMap.put(orderId, pidOrderList); + shareOrderMap.put(orderId, list); + } else {// 鏅�氳繑鍒╄鍗� + fanliOrderMap.put(orderId, list); + } } } } @@ -275,7 +291,16 @@ Iterator<String> its = orders.keySet().iterator(); while (its.hasNext()) { String orderId = its.next(); - processShareGoodsOrderNew(orderId, orders.get(orderId)); + try { + processShareGoodsOrderNew(orderId, orders.get(orderId)); + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e, "processShareGoodsOrderNew鍑洪敊", "璁㈠崟鍙�:" + orderId); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } } } @@ -461,7 +486,7 @@ // 灏嗚嚜宸辨坊鍔犲埌鐢ㄦ埛 Long uid = its.next(); BigDecimal money = userMoney.get(uid); - userInfoMapper.addHongBaoByUid(uid, money); + AccountDetails accountDetails = AccountDetailsFactory.create("+" + money, AccountDetailsFactory.FANLI, null, null, new UserInfo(uid)); @@ -476,7 +501,7 @@ userMoneyDetailMapper.insert(userMoneyDetail); } catch (UserMoneyDetailException e1) { try { - LogHelper.errorDetailInfo(e1); + LogHelper.errorDetailInfo(e1,"璁㈠崟鍙�:"+hongBaoOrder.getCommonOrder().getOrderNo(),""); } catch (Exception e2) { e2.printStackTrace(); } @@ -486,6 +511,8 @@ for (HongBaoV2 v2 : userHongBao.get(uid)) { accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(v2.getId(), accountDetails.getId()); } + //澧炲姞鐢ㄦ埛璧勯噾 + userInfoMapper.addHongBaoByUid(uid, money); // 绔欏唴淇�+鎺ㄩ�� UserInfo user = userInfoMapper.selectByPrimaryKey(uid); @@ -503,7 +530,12 @@ // 鏂扮増閫氱煡 userMoneyMsgNotificationService.fanliOrderReceived(uid, hongBaoOrder.getCommonOrder().getOrderNo(), userGoodsCount.get(uid), money, user.getMyHongBao()); - + } + // 閫氱煡鍏嶅崟鍒拌处 + try { + userSystemCouponService.updateStateByArrivalAccount(hongBaoOrder.getCommonOrder().getOrderNo()); + } catch (Exception e) { + e.printStackTrace(); } // 缁存潈鎵f锛�2018-08-05鍚庡紑濮嬪疄琛岋級 @@ -881,6 +913,25 @@ // 鍔犲叆鍒拌鍗曡〃 orderMapper.insertSelective(order); oldOrder = order; + } else { + UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService + .getBySpecialId(orderList.get(0).getSpecialId()); + if (info != null && info.getUser() != null) { + uid = info.getUser().getId(); + // 鎻掑叆鍒癘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(); @@ -922,7 +973,7 @@ hongBaoV2Service.addHongBao(commonOrderList, HongBaoV2.TYPE_ZIGOU); } catch (CommonOrderException e) { try { - LogHelper.errorDetailInfo(e, null, "璁㈠崟鍙�:" + orderId); + LogHelper.errorDetailInfo(e, "addTaoBaoOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); } catch (Exception e1) { e1.printStackTrace(); } @@ -941,6 +992,11 @@ PidUser pidUser = pidUserMapper.selectByPid(pid); if (pidUser != null) uid = pidUser.getUid(); + else { + UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService.getByRelationId(orderList.get(0).getRelationId()); + if (info != null && info.getUser() != null) + uid = info.getUser().getId(); + } // 灏氭湭鎵惧埌鍜孭ID瀵瑰簲鐨勭敤鎴� if (uid == null) -- Gitblit v1.8.0