From 457265eb82265650cf6c87519803975f23bd2fd3 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 13 四月 2020 18:33:21 +0800
Subject: [PATCH] 订单统计与返利到账集成测试相关的bug修改

---
 fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java |   42 +++++++++++++-----------------------------
 1 files changed, 13 insertions(+), 29 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
index 3086e42..3ced9a0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/order/OrderDividentsMessageListener.java
@@ -1,8 +1,6 @@
 package com.yeshi.fanli.util.rocketmq.consumer.order;
 
 import java.math.BigDecimal;
-import java.util.Calendar;
-import java.util.Date;
 import java.util.List;
 
 import javax.annotation.Resource;
@@ -16,12 +14,11 @@
 import com.google.gson.Gson;
 import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum;
 import com.yeshi.fanli.dto.mq.order.body.OrderConfirmMQMsg;
+import com.yeshi.fanli.dto.mq.order.body.OrderWeiQuanMQMsg;
 import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum;
 import com.yeshi.fanli.dto.mq.user.body.UserForbiddenMQMsg;
 import com.yeshi.fanli.entity.order.CommonOrder;
-import com.yeshi.fanli.entity.order.dividents.TeamDividentsSourceOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
-import com.yeshi.fanli.exception.ParamsException;
 import com.yeshi.fanli.exception.money.TeamDividentsDebtException;
 import com.yeshi.fanli.exception.order.dividents.TeamDividentsSourceOrderException;
 import com.yeshi.fanli.log.LogHelper;
@@ -29,7 +26,6 @@
 import com.yeshi.fanli.service.inter.order.dividents.TeamDividentsSourceOrderService;
 import com.yeshi.fanli.service.manger.order.TeamDividentsManager;
 import com.yeshi.fanli.util.Constant;
-import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.rocketmq.MQTopicName;
 
 /**
@@ -76,40 +72,28 @@
 				List<CommonOrder> commonOrderList = commonOrderService.listBySourceTypeAndOrderId(dto.getSourceType(),
 						dto.getOrderNo());
 				BigDecimal eincome = new BigDecimal(0);
-				Date settleTime = null;
 				for (CommonOrder order : commonOrderList) {
 					if (order.getState() == CommonOrder.STATE_JS)
 						eincome = eincome.add(order.geteIncome());
-					if (settleTime == null)
-						settleTime = order.getSettleTime();
 				}
 
-				Calendar calendar = Calendar.getInstance();
-				calendar.setTime(settleTime);
-				calendar.add(Calendar.MONTH, 1);
-				Date preSendTime = new Date(TimeUtil.convertToTimeTemp(
-						calendar.get(Calendar.YEAR) + "-" + (calendar.get(Calendar.MONTH) + 1) + "-25", "yyyy-M-dd"));
-
-				TeamDividentsSourceOrder sourceOrder = new TeamDividentsSourceOrder();
-				sourceOrder.setMoney(eincome);
-				sourceOrder.setOrderNo(dto.getOrderNo());
-				sourceOrder.setPreSendTime(preSendTime);
-				sourceOrder.setSourceType(dto.getSourceType());
-				sourceOrder.setState(TeamDividentsSourceOrder.STATE_CAN_SEND);
-				sourceOrder.setUid(dto.getSourceUid());
 				try {
-					teamDividentsSourceOrderService.addTeamDividentsSourceOrder(sourceOrder);
-					return Action.CommitMessage;
-				} catch (ParamsException e) {
-					e.printStackTrace();
-				} catch (TeamDividentsSourceOrderException e) {
-					e.printStackTrace();
+					teamDividentsManager.addDividentsSourceOrder(commonOrderList);
+				}
+
+				catch (TeamDividentsSourceOrderException e) {
+					if (e.getCode() == TeamDividentsSourceOrderException.CODE_EXIST)
+						return Action.CommitMessage;
+					else {
+						e.printStackTrace();
+						return Action.ReconsumeLater;
+					}
 				}
 
 			} else if (tag.equalsIgnoreCase(OrderTopicTagEnum.taoBaoOrderWeiQuan.name())) {
-				TaoBaoWeiQuanOrder dto = new Gson().fromJson(new String(message.getBody()), TaoBaoWeiQuanOrder.class);
+				OrderWeiQuanMQMsg dto = new Gson().fromJson(new String(message.getBody()), OrderWeiQuanMQMsg.class);
 				try {
-					teamDividentsManager.weiQuan(dto.getOrderId(), Constant.SOURCE_TYPE_TAOBAO);
+					teamDividentsManager.weiQuan(dto.getOrderNo(), dto.getSourceType());
 					return Action.CommitMessage;
 				} catch (TeamDividentsDebtException e) {
 					e.printStackTrace();

--
Gitblit v1.8.0