From 8e30aa7c1f0384f09278699318b4902b815b42a7 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 26 四月 2019 18:01:25 +0800 Subject: [PATCH] 维权返利初步修改,拼多多初步增加 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java | 68 +++++++++++++++++++++++++++------- 1 files changed, 54 insertions(+), 14 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 fe7d20e..4e86ce6 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 @@ -37,6 +37,7 @@ import com.yeshi.fanli.entity.taobao.PidUser; import com.yeshi.fanli.entity.taobao.TaoBaoOrder; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; +import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack; import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder; import com.yeshi.fanli.exception.HongBaoException; import com.yeshi.fanli.exception.OrderItemException; @@ -57,9 +58,11 @@ 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.UserMoneyService; 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.Constant; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TaoBaoConstant; @@ -133,6 +136,9 @@ @Resource private UserSystemCouponService userSystemCouponService; + @Resource + private UserMoneyService userMoneyService; + @Override public void processOrder(Map<String, List<TaoBaoOrder>> orders) { List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); @@ -146,14 +152,16 @@ 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 (!StringUtil.isNullOrEmpty(list.get(0).getRelationId())) { - shareOrderMap.put(orderId, list); - } else if (!StringUtil.isNullOrEmpty(list.get(0).getSpecialId())) { + 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 { - 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<>(); @@ -462,13 +470,11 @@ } } - userMoneyDetailMapper.insertSelective(userMoneyDetail); + userMoneyService.addUserMoney(uid, money, userMoneyDetail); // 娣诲姞璧勯噾鏄庣粏涓庣孩鍖呯殑鏄犲皠鍏崇郴 for (HongBaoV2 v2 : userHongBao.get(uid)) { accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(v2.getId(), userMoneyDetail.getId()); } - // 澧炲姞鐢ㄦ埛璧勯噾 - userInfoMapper.addHongBaoByUid(uid, money); // 绔欏唴淇�+鎺ㄩ�� UserInfo user = userInfoMapper.selectByPrimaryKey(uid); @@ -554,11 +560,38 @@ 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("2018-08-05", "yyyy-MM-dd")) { - return; - } + // if (order.getJieSuanTime().getTime() >= + // TimeUtil.convertToTimeTemp("2018-08-05", "yyyy-MM-dd")) { + // return; + // } // TODO 澶勭悊缁存潈鎴愬姛浣嗘槸宸插埌璐︾殑璁㈠崟 + + 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 + try { + taoBaoWeiQuanDrawBackService.doWeiQuanFanli(order.getOrderId()); + taoBaoWeiQuanDrawBackService.doWeiQuanInvite(order.getOrderId()); + taoBaoWeiQuanDrawBackService.doWeiQuanShare(order.getOrderId()); + } catch (TaoBaoWeiQuanException e) { + try { + LogHelper.errorDetailInfo(e, null, "璁㈠崟鍙�:" + order.getOrderId()); + } catch (Exception e1) { + e1.printStackTrace(); + } + } + } + } + } + } } @Override @@ -779,8 +812,10 @@ // 2018-08-05 杩囧悗鐨勮鍗曟墠澶勭悊缁存潈 Date balanceTime = null; HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByHongBaoId(hongBao.getId()); - if (hongBaoOrder != null) + if (hongBaoOrder != null) { balanceTime = hongBaoOrder.getCommonOrder().getSettleTime(); + shareGoodsCount += hongBaoOrder.getCommonOrder().getCount(); + } shareOrders.add(hongBaoOrder.getCommonOrder().getOrderNo()); if (balanceTime != null && balanceTime.getTime() >= TimeUtil.convertToTimeTemp("2018-08-05", "yyyy-MM-dd")) { @@ -888,8 +923,13 @@ orderMapper.insertSelective(order); oldOrder = order; } else { - UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService - .getBySpecialId(orderList.get(0).getSpecialId()); + UserExtraTaoBaoInfo info = null; + if (pid.equalsIgnoreCase(TaoBaoConstant.TAOBAO_RELATION_AS_SPECIAL_PID) + && !StringUtil.isNullOrEmpty(orderList.get(0).getRelationId())) { + info = userExtraTaoBaoInfoService.getByRelationId(orderList.get(0).getRelationId()); + } else if (!StringUtil.isNullOrEmpty(orderList.get(0).getSpecialId())) { + info = userExtraTaoBaoInfoService.getBySpecialId(orderList.get(0).getSpecialId()); + } if (info != null && info.getUser() != null) { uid = info.getUser().getId(); // 鎻掑叆鍒癘rder涓� -- Gitblit v1.8.0