From dd24286b6da752433ba5b2360929a04e5040936c Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 29 五月 2019 10:57:15 +0800 Subject: [PATCH] 叮咚呛修改 --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java | 124 ++++------------------------------------ 1 files changed, 14 insertions(+), 110 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 78ae16f..ef1b81c 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 @@ -17,14 +17,11 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; -import com.yeshi.fanli.dao.mybatis.AccountMessageMapper; -import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper; import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper; import com.yeshi.fanli.dao.mybatis.UserInfoMapper; import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper; import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper; import com.yeshi.fanli.dao.mybatis.order.OrderMapper; -import com.yeshi.fanli.dao.mybatis.share.PidUserMapper; import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoWeiQuanOrderMapper; import com.yeshi.fanli.dto.HongBao; import com.yeshi.fanli.entity.bus.user.HongBaoV2; @@ -46,14 +43,11 @@ import com.yeshi.fanli.exception.order.CommonOrderException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.hongbao.AccountDetailsHongBaoMapService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service; import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService; import com.yeshi.fanli.service.inter.order.CommonOrderService; import com.yeshi.fanli.service.inter.order.LostOrderService; import com.yeshi.fanli.service.inter.order.OrderProcessService; -import com.yeshi.fanli.service.inter.order.OrderService; -import com.yeshi.fanli.service.inter.push.PushService; import com.yeshi.fanli.service.inter.taobao.TaoBaoBuyRelationMapService; import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService; import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; @@ -64,7 +58,6 @@ 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; import com.yeshi.fanli.util.TimeUtil; @@ -78,22 +71,7 @@ private OrderMapper orderMapper; @Resource - private PidUserMapper pidUserMapper; - - @Resource private UserInfoMapper userInfoMapper; - - @Resource - private HongBaoManageMapper hongBaoManageMapper; - - @Resource - private AccountMessageMapper accountMessageMapper; - - @Resource - private OrderService orderService; - - @Resource - private PushService pushService; @Resource private UserNotificationService userNotificationService; @@ -107,17 +85,12 @@ @Resource private TaoBaoOrderService taoBaoOrderService; - @Resource - private RedisManager redisManager; @Resource private LostOrderService lostOrderService; @Resource private TaoBaoWeiQuanOrderMapper taoBaoWeiQuanOrderMapper; - - @Resource - private HongBaoManageService hongBaoManageService; @Resource private AccountDetailsHongBaoMapService accountDetailsHongBaoMapService; @@ -142,9 +115,15 @@ @Resource private TaoBaoBuyRelationMapService taoBaoBuyRelationMapService; + + @Resource + private CommonOrderService commonOrderService; + + @Resource + private HongBaoV2Service hongBaoV2Service; @Override - public void processOrder(Map<String, List<TaoBaoOrder>> orders) { + public synchronized void processOrder(Map<String, List<TaoBaoOrder>> orders) { List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID); // 鍒嗙鍑鸿繑鍒╄鍗曚笌鍒嗕韩璧氳鍗� @@ -166,7 +145,7 @@ shareOrderMap.put(orderId, list); } else { - PidUser pidUser = pidUserMapper.selectByPid(pid); + PidUser pidUser = null;//pidUserMapper.selectByPid(pid); if (pidUser != null && pidUser.getType() == PidUser.TYPE_SHARE_GOODS) {// 鍟嗗搧鍒嗕韩璁㈠崟 // List<PidOrder> pidOrderList = new ArrayList<>(); // for (TaoBaoOrder order : list) { @@ -187,41 +166,6 @@ processShareGoodsOrder(shareOrderMap); } - /** - * 鍒╃敤redis鐨勫師瀛愭�у皢璁㈠崟鍙烽攣浣忥紝涓嶈鍏朵粬澶勭悊 - * - * @param orderId - */ - private void redisLockOrder(String orderId) { - String key = "doorder-" + orderId; - redisManager.cacheCommonString(key, "1"); - } - - /** - * 璁㈠崟瑙i攣 - * - * @param orderId - */ - private void redisUnlockOrder(String orderId) { - String key = "doorder-" + orderId; - redisManager.removeCommonString(key); - } - - /** - * 璁㈠崟鏄惁琚攣浣忎簡 - * - * @param orderId - * @return - */ - private boolean isRedisLockOrder(String orderId) { - String key = "doorder-" + orderId; - String doing = redisManager.getCommonString(key); - if (!StringUtil.isNullOrEmpty(doing)) - return true; - else - return false; - } - @Override public void processShopingFanliOrder(Map<String, List<TaoBaoOrder>> orders) { // 鏌ヨ鍦∣rder涓槸鍚﹀瓨鍦ㄨ璁㈠崟鍙� @@ -240,7 +184,7 @@ // 鍑洪敊浜嗗氨涓嶅鐞嗚璁㈠崟浜嗭紝闇�瑕佸畾鏈熸鏌� // 鏇存敼涓㈠け璁㈠崟鐨勭姸鎬� - lostOrderService.processSuceess(orderId); + lostOrderService.processSuceess(orderId, Constant.SOURCE_TYPE_TAOBAO); } catch (HongBaoException e1) { e1.printStackTrace(); @@ -277,30 +221,6 @@ } } - } - - /** - * 鑾峰彇鏈�澶х殑鍒涘缓鏃堕棿涓庢渶灏忕殑鍒涘缓鏃堕棿 - * - * @param hongBaoList - * @return - */ - private Map<String, Long> getMaxAndMinCreateTime(List<HongBao> hongBaoList) { - if (hongBaoList.size() > 0) { - Map<String, Long> map = new HashMap<>(); - long min = hongBaoList.get(0).getCreatetime(); - long max = hongBaoList.get(0).getCreatetime(); - for (HongBao hb : hongBaoList) { - if (hb.getCreatetime() > max) - max = hb.getCreatetime(); - if (hb.getCreatetime() < min) - min = hb.getCreatetime(); - } - map.put("max", max); - map.put("min", min); - return map; - } - return null; } @Override @@ -362,20 +282,6 @@ } } - /** - * 鍒ゆ柇璁㈠崟鏄惁澶辨晥 鍏ㄩ儴璁㈠崟澶辨晥鎵嶅垽鏂负澶辨晥 - * - * @param list - * @return - */ - private boolean isOrderValid(List<TaoBaoOrder> list) { - int validCount = 0; - for (TaoBaoOrder order : list) { - if (order.getOrderState().equalsIgnoreCase("璁㈠崟澶辨晥")) - validCount++; - } - return validCount >= list.size(); - } @Resource private HongBaoOrderMapper hongBaoOrderMapper; @@ -884,11 +790,7 @@ } - @Resource - private CommonOrderService commonOrderService; - @Resource - private HongBaoV2Service hongBaoV2Service; @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) @Override @@ -905,11 +807,11 @@ String pid = String.format("mm_%s_%s_%s", configList.get(0).getAccountId(), orderList.get(0).getSourceMediaId(), orderList.get(0).getAdPositionId()); - Order oldOrder = orderMapper.selectOrderByOrderId(orderId); + Order oldOrder = orderMapper.selectOrderByOrderIdAndOrderType(orderId, Constant.SOURCE_TYPE_TAOBAO); // 鍘熸潵涓嶅瓨鍦ㄨ鍗� Long uid = null; if (oldOrder == null) { - PidUser pidUser = pidUserMapper.selectByPid(pid); + PidUser pidUser =null;// pidUserMapper.selectByPid(pid); if (pidUser != null) { uid = pidUser.getUid(); @@ -995,6 +897,8 @@ try { commonOrderList = commonOrderService.addTaoBaoOrder(orderList, uid); hongBaoV2Service.addHongBao(commonOrderList, HongBaoV2.TYPE_ZIGOU); + + } catch (CommonOrderException e) { try { LogHelper.errorDetailInfo(e, "addTaoBaoOrder鎴朼ddHongBao鍑洪敊", "璁㈠崟鍙�:" + orderId); @@ -1013,7 +917,7 @@ orderList.get(0).getSourceMediaId(), orderList.get(0).getAdPositionId()); // 鍘熸潵涓嶅瓨鍦ㄨ鍗� Long uid = null; - PidUser pidUser = pidUserMapper.selectByPid(pid); + PidUser pidUser =null; //pidUserMapper.selectByPid(pid);-PID鏈哄埗绉婚櫎 if (pidUser != null) uid = pidUser.getUid(); else { -- Gitblit v1.8.0