From 4d0c5d771b04d7ba32471df58c91c37dabe96bbf Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 24 十二月 2019 12:08:32 +0800
Subject: [PATCH] 返利订单到账时同时扣除维权金额

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java |   59 ++++++++++++++++++++++++++---------------------------------
 1 files changed, 26 insertions(+), 33 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java
index d4d5d56..d86e851 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java
@@ -114,7 +114,7 @@
 	@Resource
 	private HongBaoV2SettleTempService hongBaoV2SettleTempService;
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void inviteSettleTB(Long uid) throws OrderMoneySettleException {
 		// 鏌ヨUID鐨勪竴浜岀骇閭�璇疯禋
@@ -179,7 +179,7 @@
 		System.out.println(new Gson().toJson(mqMsg));
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void inviteSettleJD(Long uid) throws OrderMoneySettleException {
 		// 鏌ヨUID鐨勪竴浜岀骇閭�璇疯禋
@@ -238,7 +238,7 @@
 		}
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void inviteSettlePDD(Long uid) throws OrderMoneySettleException {
 		// 鏌ヨUID鐨勪竴浜岀骇閭�璇疯禋
@@ -297,7 +297,7 @@
 		}
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void shareSettleTB(Long uid) throws OrderMoneySettleException {
 		/**
@@ -342,7 +342,7 @@
 		}
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void shareSettleJD(Long uid) throws OrderMoneySettleException {
 		/**
@@ -383,7 +383,7 @@
 		}
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void shareSettlePDD(Long uid) throws OrderMoneySettleException {
 		/**
@@ -424,7 +424,7 @@
 		}
 	}
 
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void ziGouSettle(String orderId, int sourceType, String taskKey) throws OrderMoneySettleException {
 		// 鏌ヨ鍚屼竴璁㈠崟鍙风殑绾㈠寘
@@ -467,6 +467,24 @@
 						userHongBao.put(uid, new ArrayList<>());
 					userHongBao.get(uid).add(hb);
 				}
+			}
+		}
+
+		// 鑾峰彇缁存潈璧勯噾
+		if (sourceType == Constant.SOURCE_TYPE_TAOBAO) {
+			try {
+				Map<Long, BigDecimal> userSubMoneyMap = taoBaoWeiQuanDrawBackService.doWeiQuanFanli(orderId, false);
+				if (userSubMoneyMap != null) {
+					for (Iterator<Long> its = userMoney.keySet().iterator(); its.hasNext();) {
+						Long uid = its.next();
+						if (userSubMoneyMap.get(uid) != null) {
+							// 鍑忓幓缁存潈璧勯噾
+							userMoney.put(uid, userMoney.get(uid).subtract(userSubMoneyMap.get(uid)));
+						}
+					}
+				}
+			} catch (Exception e) {
+				throw new OrderMoneySettleException(2, "缁存潈璁㈠崟鍑洪敊");
 			}
 		}
 
@@ -521,31 +539,6 @@
 			userSystemCouponService.updateStateByArrivalAccount(orderId);
 		} catch (Exception e) {
 			e.printStackTrace();
-		}
-
-		// 缁存潈鎵f锛�2018-08-05鍚庡紑濮嬪疄琛岋級
-
-		try {
-			if (sourceType == Constant.SOURCE_TYPE_TAOBAO)
-				taoBaoWeiQuanDrawBackService.doWeiQuanFanli(orderId);
-		} catch (TaoBaoWeiQuanException e) {
-			if (e.getCode() == TaoBaoWeiQuanException.CODE_NEDD_UPDATE_ORDER) {
-				List<TaoBaoOrder> olist = taoBaoOrderService.getTaoBaoOrderByOrderId(orderId);
-				if (olist != null && olist.size() > 0) {
-					long time = TimeUtil.convertToTimeTemp(olist.get(0).getCreateTime(), "yyyy-MM-dd HH:mm:ss");
-					olist = TaoKeOrderApiUtil.getTaoBaoCommonOrderList(time, time + 1000 * 2L, 1);
-					if (olist != null && olist.size() > 0) {
-						for (int i = 0; i < olist.size(); i++) {
-							if (!olist.get(i).getOrderId().equalsIgnoreCase(orderId)) {// 鍒犻櫎鏃犲叧璁㈠崟
-								olist.remove(i);
-								i--;
-							}
-						}
-						taoBaoOrderService.addTaoBaoOrderList(olist);
-					}
-				}
-			} else
-				throw new OrderMoneySettleException(e.getCode(), "缁存潈澶勭悊鍑洪敊:" + e.getMsg());
 		}
 
 		// 娣诲姞缁撶畻鏄犲皠
@@ -956,7 +949,7 @@
 	 * @param orderId
 	 * @param sourceType
 	 */
-	@Transactional(rollbackFor=Exception.class)
+	@Transactional(rollbackFor = Exception.class)
 	@Override
 	public void inviteSubsidySettle(Long uid, String taskKey) throws OrderMoneySettleException {
 		// 鏌ヨkey

--
Gitblit v1.8.0