From 2bd2200f209ddb7bcc59b636d9de6f8b3f762958 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期四, 23 四月 2020 10:00:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/util/factory/order/dividents/TeamDividentsSourceOrderFactory.java |   41 ++++++++++++++++++++---------------------
 1 files changed, 20 insertions(+), 21 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/order/dividents/TeamDividentsSourceOrderFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/order/dividents/TeamDividentsSourceOrderFactory.java
index f5b482c..ff235c1 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/factory/order/dividents/TeamDividentsSourceOrderFactory.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/order/dividents/TeamDividentsSourceOrderFactory.java
@@ -7,41 +7,40 @@
 
 import com.yeshi.fanli.entity.order.CommonOrder;
 import com.yeshi.fanli.entity.order.dividents.TeamDividentsSourceOrder;
-import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.TimeUtil;
+import com.yeshi.fanli.util.order.CommonOrderUtil;
 
 public class TeamDividentsSourceOrderFactory {
 
-	public static TeamDividentsSourceOrder create(List<CommonOrder> commonOrderList,
-			BigDecimal rate) {
+	public static TeamDividentsSourceOrder create(List<CommonOrder> commonOrderList) {
 		BigDecimal money = new BigDecimal(0);
-		int invalidCount = 0;
-		for (CommonOrder commonOrder : commonOrderList) {
-			if (commonOrder.geteIncome() != null)
-				money = money.add(commonOrder.geteIncome());
-			if (commonOrder.getState() == CommonOrder.STATE_SX)
-				invalidCount++;
-		}
-		
-		if (invalidCount >= commonOrderList.size())
+		int orderState = CommonOrderUtil.getState(commonOrderList);
+		if (orderState == CommonOrder.STATE_SX)
 			return null;
 
 		if (money.compareTo(new BigDecimal(0)) <= 0)
 			return null;
 
-		BigDecimal dividents = MoneyBigDecimalUtil.div(money.multiply(rate), new BigDecimal(100));
 		TeamDividentsSourceOrder sourceOrder = new TeamDividentsSourceOrder();
-		sourceOrder.setMoney(dividents);
+		sourceOrder.setMoney(money);
 		sourceOrder.setOrderNo(commonOrderList.get(0).getOrderNo());
 		sourceOrder.setSourceType(commonOrderList.get(0).getSourceType());
-		sourceOrder.setState(TeamDividentsSourceOrder.STATE_CAN_SEND);
-		sourceOrder.setUid(commonOrderList.get(0).getUserInfo().getId());
 
-		Calendar calendar = Calendar.getInstance();
-		calendar.setTime(commonOrderList.get(0).getSettleTime());
-		calendar.add(Calendar.MONTH, 1);
-		sourceOrder.setPreSendTime(new Date(TimeUtil.convertToTimeTemp(
-				calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-25", "yyyy-M-dd")));
+		if (orderState == CommonOrder.STATE_JS || orderState == CommonOrder.STATE_WQ) {
+			sourceOrder.setState(TeamDividentsSourceOrder.STATE_CAN_SEND);
+			Date settlementTime = CommonOrderUtil.getSettlementTime(commonOrderList);
+			if (settlementTime == null)
+				return null;
+
+			Calendar calendar = Calendar.getInstance();
+			calendar.setTime(settlementTime);
+			calendar.add(Calendar.MONTH, 1);
+			sourceOrder.setPreSendTime(new Date(TimeUtil.convertToTimeTemp(
+					calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-25", "yyyy-M-dd")));
+		} else {
+			sourceOrder.setState(TeamDividentsSourceOrder.STATE_UNKOWN);
+		}
+		sourceOrder.setUid(commonOrderList.get(0).getUserInfo().getId());
 
 		return sourceOrder;
 	}

--
Gitblit v1.8.0