From e5e38de6745c8fcae91fa7e459898f3663d00001 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 19 八月 2019 17:41:32 +0800
Subject: [PATCH] 通用模板修改

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 51 insertions(+), 9 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 5304b5b..2a76464 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
@@ -16,6 +16,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
+import org.yeshi.utils.NumberUtil;
 
 import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
 import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
@@ -227,8 +228,9 @@
 
 	@Override
 	public void fanli() {
+		LogHelper.test("澶勭悊杩斿埄鍒拌处");
 		// 鑾峰彇涓荤孩鍖�
-		List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listCanBalanceHongBaoByType(HongBao.TYPE_TAOBAO, 100);
+		List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listCanBalanceHongBaoByType(HongBaoV2.TYPE_ZIGOU, 1000);
 		//
 		// /**
 		// * 闇�瑕佸疄鏃舵洿鏂板緟杩斿埄鐨勮鍗�
@@ -292,10 +294,22 @@
 	public void fanli(HongBaoV2 hb1) throws TaoBaoWeiQuanException {
 		// 鏌ヨ鏈�鏂扮殑绾㈠寘鏁版嵁
 		hb1 = hongBaoV2Mapper.selectByPrimaryKeyForUpdate(hb1.getId());
+		// 姝e父鐢ㄦ埛鎵嶈兘鍒拌处
+		UserInfo mainUser = userInfoMapper.selectByPrimaryKey(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
+				|| hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_JD
+				|| hongBaoOrder.getCommonOrder().getSourceType() == Constant.SOURCE_TYPE_PDD) {
 			return;
 		}
 
@@ -554,6 +568,31 @@
 		types.add(HongBaoV2.TYPE_YIJI);
 		types.add(HongBaoV2.TYPE_ERJI);
 		List<HongBaoV2> hongBaoList = hongBaoV2Mapper.listCanBalanceHongBaoByTypeAndUid(types, uid, 1000);
+		// 鐏板害娴嬭瘯涓紝浜笢/鎷煎澶氳鍗曞垎浜�/閭�璇疯鍗曚笉杩斿埄
+		for (int i = 0; i < hongBaoList.size(); i++) {
+			HongBaoV2 item = hongBaoList.get(i);
+			if (item.getType() == HongBaoV2.TYPE_SHARE_GOODS) {
+			} else {
+				item = item.getParent();
+			}
+			if (item != null) {
+				HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByHongBaoId(item.getId());
+				if (hongBaoOrder != null && hongBaoOrder.getCommonOrder() != null) {
+					CommonOrder co = hongBaoOrder.getCommonOrder();
+					if (co.getSourceType() == Constant.SOURCE_TYPE_JD
+							|| co.getSourceType() == Constant.SOURCE_TYPE_PDD) {
+						hongBaoList.remove(i);
+						i--;
+					} else {// 涓婄骇鐢ㄦ埛涓嶆槸姝e父鐢ㄦ埛锛岃鍗曞潎涓嶈兘鍒拌处
+						UserInfo userInfo = userInfoMapper.selectByPrimaryKey(item.getUserInfo().getId());
+						if (userInfo == null || userInfo.getState() != UserInfo.STATE_NORMAL) {
+							hongBaoList.remove(i);
+							i--;
+						}
+					}
+				}
+			}
+		}
 
 		List<Long> hbIdList = new ArrayList<>();
 
@@ -736,12 +775,12 @@
 
 				Date minDate = new Date(TimeUtil
 						.convertToTimeTemp(ca.get(Calendar.YEAR) + "-" + (ca.get(Calendar.MONTH) + 1), "yyyy-M"));
-				long validCount = commonOrderService.countByUidAndOrderStateWithOrderBalanceTime(uid,
-						CommonOrder.STATE_JS, minDate, maxDate);
-				long weiQuanCount = commonOrderService.countByUidAndOrderStateWithOrderBalanceTime(uid,
-						CommonOrder.STATE_WQ, minDate, maxDate);
-				long invalidCount = commonOrderService.countByUidAndOrderStateWithOrderBalanceTime(uid,
-						CommonOrder.STATE_SX, minDate, maxDate);
+				long validCount = hongBaoV2Mapper.countShareOrderCountByUidAndSettleTime(uid, CommonOrder.STATE_JS,
+						minDate, maxDate);
+				long weiQuanCount = hongBaoV2Mapper.countShareOrderCountByUidAndSettleTime(uid, CommonOrder.STATE_WQ,
+						minDate, maxDate);
+				long invalidCount = hongBaoV2Mapper.countShareOrderCountByUidAndSettleTime(uid, CommonOrder.STATE_SX,
+						minDate, maxDate);
 
 				UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createShare(uid, Constant.SOURCE_TYPE_TAOBAO,
 						(int) validCount, (int) weiQuanCount, (int) invalidCount, sharemoney, new Date());
@@ -936,7 +975,7 @@
 			return;
 		String uidStr = order.getExt1();
 		Long uid = null;
-		if (!StringUtil.isNullOrEmpty(uidStr))
+		if (!StringUtil.isNullOrEmpty(uidStr) && NumberUtil.isNumeric(uidStr))
 			uid = Long.parseLong(uidStr);
 		Long positionId = order.getOrderItemList().get(0).getPositionId();
 		if (positionId == JDApiUtil.POSITION_FANLI)// 杩斿埄璁㈠崟
@@ -954,6 +993,7 @@
 
 	/**
 	 * 澶勭悊浜笢杩斿埄璁㈠崟
+	 * 
 	 * @param jdOrder
 	 * @param uid
 	 */
@@ -1026,6 +1066,7 @@
 
 	/**
 	 * 澶勭悊浜笢鍒嗕韩璁㈠崟
+	 * 
 	 * @param order
 	 * @param uid
 	 */
@@ -1076,6 +1117,7 @@
 
 	/**
 	 * 澶勭悊鎷煎澶氳嚜璐繑鍒╄鍗�
+	 * 
 	 * @param pddOrder
 	 * @param uid
 	 */
@@ -1138,9 +1180,9 @@
 		}
 	}
 
-	
 	/**
 	 * 澶勭悊鎷煎澶氬垎浜鍗�
+	 * 
 	 * @param order
 	 * @param uid
 	 */

--
Gitblit v1.8.0