From 374fa38b5e4c17c079e027e9987e966f30a5cd36 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 05 一月 2019 12:13:46 +0800
Subject: [PATCH] 新版订单统计,返利,到账修改

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoWeiQuanDrawBackServiceImpl.java |   98 +++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 75 insertions(+), 23 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoWeiQuanDrawBackServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoWeiQuanDrawBackServiceImpl.java
index 9420e0e..945f3a3 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoWeiQuanDrawBackServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoWeiQuanDrawBackServiceImpl.java
@@ -1,6 +1,7 @@
 package com.yeshi.fanli.service.impl.taobao;
 
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -13,15 +14,18 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import com.yeshi.fanli.dao.mybatis.AccountDetailsMapper;
+import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
 import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
-import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
 import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper;
+import com.yeshi.fanli.dao.mybatis.order.CommonOrderMapper;
+import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper;
 import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoOrderMapper;
 import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoWeiQuanDrawBackMapper;
 import com.yeshi.fanli.entity.bus.user.AccountDetails;
-import com.yeshi.fanli.entity.bus.user.HongBao;
+import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
+import com.yeshi.fanli.entity.order.HongBaoOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanDrawBack;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
@@ -31,18 +35,17 @@
 import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanDrawBackService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanOrderService;
 import com.yeshi.fanli.service.inter.user.UserNotificationService;
+import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.factory.AccountDetailsFactory;
 import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
+import com.yeshi.fanli.vo.order.CommonOrderVO;
 
 @Service
 public class TaoBaoWeiQuanDrawBackServiceImpl implements TaoBaoWeiQuanDrawBackService {
 	@Resource
 	private TaoBaoWeiQuanDrawBackMapper taoBaoWeiQuanDrawBackMapper;
-
-	@Resource
-	private HongBaoMapper hongBaoMapper;
 
 	@Resource
 	private TaoBaoWeiQuanOrderService taoBaoWeiQuanOrderService;
@@ -61,6 +64,15 @@
 
 	@Resource
 	private UserNotificationService userNotificationService;
+
+	@Resource
+	private CommonOrderMapper commonOrderMapper;
+
+	@Resource
+	private HongBaoV2Mapper hongBaoV2Mapper;
+
+	@Resource
+	private HongBaoOrderMapper hongBaoOrderMapper;
 
 	@Override
 	public void addWeiQuanDrawBack(TaoBaoWeiQuanDrawBack taoBaoWeiQuanDrawBack) {
@@ -86,12 +98,24 @@
 				sumFee = sumFee.add(order.geteIncome());
 		// 鑾峰彇鍜岃璁㈠崟鍙锋湁鍏宠仈鐨勭敤鎴�
 		// 鑾峰彇涓荤孩鍖�(鍚屼竴涓鍗曞彿鐨勫崟鍙細瀵瑰簲鍚屼竴涓敤鎴�)
-		List<HongBao> mainHongBaoList = hongBaoMapper.selectByOrderIdWithoutChild(orderId);
+		List<CommonOrderVO> typeList = new ArrayList<>();
+		CommonOrderVO cv = new CommonOrderVO();
+		cv.setSourceType(Constant.SOURCE_TYPE_TAOBAO);
+		cv.setOrderNo(orderId);
+		typeList.add(cv);
+
+		List<CommonOrderVO> commonOrderList = commonOrderMapper.listByOrderNoAndType(typeList);
+		List<HongBaoV2> mainHongBaoList = new ArrayList<>();
+		if (commonOrderList != null)
+			for (CommonOrderVO vo : commonOrderList) {
+				HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(vo.getId());
+				mainHongBaoList.add(hongBaoOrder.getHongBaoV2());
+			}
 		if (mainHongBaoList == null || mainHongBaoList.size() == 0)
 			return;
 		for (int i = 0; i < mainHongBaoList.size(); i++) {
 			// 鍙鐞嗚繑鍒╄鍗�
-			if (mainHongBaoList.get(i).getType() != HongBao.TYPE_TAOBAO) {
+			if (mainHongBaoList.get(i).getType() != HongBaoV2.TYPE_ZIGOU) {
 				mainHongBaoList.remove(i);
 				i--;
 			}
@@ -104,8 +128,8 @@
 		Map<Long, BigDecimal> fanMoneyMap = new HashMap<>();
 
 		if (mainHongBaoList != null)
-			for (HongBao hongBao : mainHongBaoList) {
-				if (hongBao.getState() == HongBao.STATE_SHIXIAO)
+			for (HongBaoV2 hongBao : mainHongBaoList) {
+				if (hongBao.getState() == HongBaoV2.STATE_SHIXIAO)
 					continue;
 				// 绱涓荤孩鍖呯殑閲戦
 				if (fanMoneyMap.get(hongBao.getUserInfo().getId()) == null) {
@@ -187,7 +211,21 @@
 				sumFee = sumFee.add(order.geteIncome());
 		// 鑾峰彇鍜岃璁㈠崟鍙锋湁鍏宠仈鐨勭敤鎴�
 		// 鑾峰彇涓荤孩鍖�(鍚屼竴涓鍗曞彿鐨勫崟鍙細瀵瑰簲鍚屼竴涓敤鎴�)
-		List<HongBao> mainHongBaoList = hongBaoMapper.selectByOrderIdWithoutChild(orderId);
+
+		List<CommonOrderVO> typeList = new ArrayList<>();
+		CommonOrderVO cv = new CommonOrderVO();
+		cv.setSourceType(Constant.SOURCE_TYPE_TAOBAO);
+		cv.setOrderNo(orderId);
+		typeList.add(cv);
+
+		List<CommonOrderVO> commonOrderList = commonOrderMapper.listByOrderNoAndType(typeList);
+		List<HongBaoV2> mainHongBaoList = new ArrayList<>();
+		if (commonOrderList != null)
+			for (CommonOrderVO vo : commonOrderList) {
+				HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(vo.getId());
+				mainHongBaoList.add(hongBaoOrder.getHongBaoV2());
+			}
+
 		if (mainHongBaoList == null || mainHongBaoList.size() == 0)
 			return;
 
@@ -195,11 +233,13 @@
 		Map<Long, BigDecimal> fanMoneyMap = new HashMap<>();
 
 		if (mainHongBaoList != null)
-			for (HongBao hongBao : mainHongBaoList) {
-				if (hongBao.getState() == HongBao.STATE_SHIXIAO)
+			for (HongBaoV2 hongBao : mainHongBaoList) {
+				hongBao = hongBaoV2Mapper.selectByPrimaryKey(hongBao.getId());
+				if (hongBao.getState() == HongBaoV2.STATE_SHIXIAO)
 					continue;
+
 				// 杩斿埄绾㈠寘涓嶈鍏�
-				if (hongBao.getType() != HongBao.TYPE_TAOBAO) {
+				if (hongBao.getType() != HongBaoV2.TYPE_ZIGOU) {
 					// 绱涓荤孩鍖呯殑閲戦
 					if (fanMoneyMap.get(hongBao.getUserInfo().getId()) == null) {
 						fanMoneyMap.put(hongBao.getUserInfo().getId(), hongBao.getMoney());
@@ -208,10 +248,10 @@
 								fanMoneyMap.get(hongBao.getUserInfo().getId()).add(hongBao.getMoney()));
 				}
 				// 绱瀛愮孩鍖呯殑閲戦
-				List<HongBao> childHongBaoList = hongBaoMapper.selectChildHongBaoByPid(hongBao.getId());
+				List<HongBaoV2> childHongBaoList = hongBaoV2Mapper.listChildrenById(hongBao.getId());
 				if (childHongBaoList != null)
-					for (HongBao child : childHongBaoList) {
-						if (child.getState() == HongBao.STATE_SHIXIAO)
+					for (HongBaoV2 child : childHongBaoList) {
+						if (child.getState() == HongBaoV2.STATE_SHIXIAO)
 							continue;
 						if (fanMoneyMap.get(child.getUserInfo().getId()) == null) {
 							fanMoneyMap.put(child.getUserInfo().getId(), child.getMoney());
@@ -294,7 +334,19 @@
 				sumFee = sumFee.add(order.geteIncome());
 		// 鑾峰彇鍜岃璁㈠崟鍙锋湁鍏宠仈鐨勭敤鎴�
 		// 鑾峰彇涓荤孩鍖�(鍚屼竴涓鍗曞彿鐨勫崟鍙細瀵瑰簲鍚屼竴涓敤鎴�)
-		List<HongBao> mainHongBaoList = hongBaoMapper.selectByOrderIdWithoutChild(orderId);
+		List<CommonOrderVO> typeList = new ArrayList<>();
+		CommonOrderVO cv = new CommonOrderVO();
+		cv.setSourceType(Constant.SOURCE_TYPE_TAOBAO);
+		cv.setOrderNo(orderId);
+		typeList.add(cv);
+
+		List<CommonOrderVO> commonOrderList = commonOrderMapper.listByOrderNoAndType(typeList);
+		List<HongBaoV2> mainHongBaoList = new ArrayList<>();
+		if (commonOrderList != null)
+			for (CommonOrderVO vo : commonOrderList) {
+				HongBaoOrder hongBaoOrder = hongBaoOrderMapper.selectByCommonOrderId(vo.getId());
+				mainHongBaoList.add(hongBaoOrder.getHongBaoV2());
+			}
 		if (mainHongBaoList == null || mainHongBaoList.size() == 0)
 			return;
 
@@ -302,11 +354,11 @@
 		Map<Long, BigDecimal> fanMoneyMap = new HashMap<>();
 
 		if (mainHongBaoList != null)
-			for (HongBao hongBao : mainHongBaoList) {
-				if (hongBao.getState() == HongBao.STATE_SHIXIAO)
+			for (HongBaoV2 hongBao : mainHongBaoList) {
+				if (hongBao.getState() == HongBaoV2.STATE_SHIXIAO)
 					continue;
 				// 杩斿埄绾㈠寘涓嶈鍏�
-				if (hongBao.getType() != HongBao.TYPE_TAOBAO) {
+				if (hongBao.getType() != HongBaoV2.TYPE_ZIGOU) {
 					// 绱涓荤孩鍖呯殑閲戦
 					if (fanMoneyMap.get(hongBao.getUserInfo().getId()) == null) {
 						fanMoneyMap.put(hongBao.getUserInfo().getId(), hongBao.getMoney());
@@ -315,10 +367,10 @@
 								fanMoneyMap.get(hongBao.getUserInfo().getId()).add(hongBao.getMoney()));
 				}
 				// 绱瀛愮孩鍖呯殑閲戦
-				List<HongBao> childHongBaoList = hongBaoMapper.selectChildHongBaoByPid(hongBao.getId());
+				List<HongBaoV2> childHongBaoList = hongBaoV2Mapper.listChildrenById(hongBao.getId());
 				if (childHongBaoList != null)
-					for (HongBao child : childHongBaoList) {
-						if (child.getState() == HongBao.STATE_SHIXIAO)
+					for (HongBaoV2 child : childHongBaoList) {
+						if (child.getState() == HongBaoV2.STATE_SHIXIAO)
 							continue;
 						if (fanMoneyMap.get(child.getUserInfo().getId()) == null) {
 							fanMoneyMap.put(child.getUserInfo().getId(), child.getMoney());

--
Gitblit v1.8.0