From 8b2191df2f7d94aa299bd43dcbe97c94e5a61bbd Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 20 十一月 2019 14:53:34 +0800
Subject: [PATCH] RocketMQ的消息整改

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneySettleServiceImpl.java |   66 ++++++++++++++++++--------------
 1 files changed, 37 insertions(+), 29 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 2b17f89..b3c5e56 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
@@ -28,7 +28,8 @@
 import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper;
 import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoWeiQuanOrderMapper;
 import com.yeshi.fanli.dto.HongBao;
-import com.yeshi.fanli.dto.order.OrderMoneyRecievedMQMsgDTO;
+import com.yeshi.fanli.dto.mq.order.OrderTopicTagEnum;
+import com.yeshi.fanli.dto.mq.order.body.OrderMoneyRecievedMQMsg;
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
@@ -59,6 +60,7 @@
 import com.yeshi.fanli.util.TimeUtil;
 import com.yeshi.fanli.util.cmq.HongBaoRecieveCMQManager;
 import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
+import com.yeshi.fanli.util.rocketmq.MQMsgBodyFactory;
 import com.yeshi.fanli.util.rocketmq.MQTopicName;
 import com.yeshi.fanli.util.taobao.TaoKeOrderApiUtil;
 
@@ -152,9 +154,10 @@
 		}
 
 		// 閭�璇疯禋鍒拌处浜嬪姟娑堟伅
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_INVITE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_INVITE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual,
+				mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -215,9 +218,9 @@
 		}
 
 		// 閭�璇疯禋鍒拌处浜嬪姟娑堟伅
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_INVITE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_INVITE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -274,9 +277,9 @@
 		}
 
 		// 閭�璇疯禋鍒拌处浜嬪姟娑堟伅
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_INVITE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_INVITE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -315,9 +318,9 @@
 				hongBaoList.addAll(tempHongBaoList);
 		}
 
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_SHARE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_SHARE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER,OrderTopicTagEnum.orderFanLiActual, mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -360,9 +363,9 @@
 				hongBaoList.addAll(tempHongBaoList);
 		}
 
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_SHARE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_SHARE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg = MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -401,9 +404,9 @@
 				hongBaoList.addAll(tempHongBaoList);
 		}
 
-		OrderMoneyRecievedMQMsgDTO mqMsg = new OrderMoneyRecievedMQMsgDTO(OrderMoneyRecievedMQMsgDTO.TYPE_SHARE, uid,
-				sourceType, null, null, new Date());
-		Message msg = new Message(MQTopicName.TOPIC_FANLI.name(), "actual", new Gson().toJson(mqMsg).getBytes());
+		OrderMoneyRecievedMQMsg mqMsg = new OrderMoneyRecievedMQMsg(OrderMoneyRecievedMQMsg.TYPE_SHARE, uid,
+				sourceType, null, null, new Date(),0);
+		Message msg =MQMsgBodyFactory.create(MQTopicName.TOPIC_ORDER, OrderTopicTagEnum.orderFanLiActual, mqMsg);
 		String taskKey = getTaskKey(uid);
 		msg.setKey(taskKey);
 		// 娣诲姞浜嬪姟娑堟伅
@@ -422,7 +425,7 @@
 
 	@Transactional
 	@Override
-	public void ziGouSettle(String orderId, int sourceType,String taskKey) throws OrderMoneySettleException {
+	public void ziGouSettle(String orderId, int sourceType, String taskKey) throws OrderMoneySettleException {
 		// 鏌ヨ鍚屼竴璁㈠崟鍙风殑绾㈠寘
 		List<CommonOrder> orderList = commonOrderService.listBySourceTypeAndOrderId(sourceType, orderId);
 		List<HongBaoV2> hongBaoList = new ArrayList<>();
@@ -466,6 +469,10 @@
 			}
 		}
 
+		// if (userMoney.isEmpty()) {
+		// throw new OrderMoneySettleException(1, "娌℃湁闇�瑕佺粨绠楃殑璁㈠崟");
+		// }
+
 		Iterator<Long> its = userMoney.keySet().iterator();
 
 		while (its.hasNext()) {
@@ -486,8 +493,8 @@
 			}
 
 			userMoneyService.addUserMoney(uid, money, userMoneyDetail);
-			
-			List<Long> hbIdList=new ArrayList<>();
+
+			List<Long> hbIdList = new ArrayList<>();
 			// 娣诲姞璧勯噾鏄庣粏涓庣孩鍖呯殑鏄犲皠鍏崇郴
 			for (HongBaoV2 v2 : userHongBao.get(uid)) {
 				hbIdList.add(v2.getId());
@@ -498,7 +505,7 @@
 					LogHelper.errorDetailInfo(e);
 				}
 			}
-			//娣诲姞缁撶畻鏄犲皠
+			// 娣诲姞缁撶畻鏄犲皠
 			hongBaoV2SettleTempService.addTemp(hbIdList, taskKey);
 
 			// 绔欏唴淇�+鎺ㄩ��
@@ -539,10 +546,9 @@
 			} else
 				throw new OrderMoneySettleException(e.getCode(), "缁存潈澶勭悊鍑洪敊:" + e.getMsg());
 		}
-		
-		//娣诲姞缁撶畻鏄犲皠
-		
-		
+
+		// 娣诲姞缁撶畻鏄犲皠
+
 	}
 
 	private HongBaoV2 filterWeiQuanINGHongBao(HongBaoV2 hongBao) {
@@ -961,7 +967,7 @@
 			for (HongBaoV2SettleTemp temp : list) {
 				Long hongBaoId = temp.getHongBaoId();
 				HongBaoV2 hongBao = hongBaoV2Mapper.selectByPrimaryKey(hongBaoId);
-				if (sourceType != null)
+				if (hongBao != null)
 					sourceType = hongBao.getOrderType();
 				if (hongBao.getParent() != null)
 					hongBao = hongBao.getParent();
@@ -1018,7 +1024,9 @@
 				}
 				// 娣诲姞璧勯噾
 				userMoneyService.addUserMoney(uid, totalMoney, userMoneyDetail);
-				// TODO 娣诲姞娑堟伅
+				// 娣诲姞娑堟伅
+				userMoneyMsgNotificationService.inviteOrderSubSidy(uid, new Date(), "绯荤粺鑷姩涓嬪彂", totalMoney,
+						userInfoMapper.selectAvailableByPrimaryKey(uid).getMyHongBao());
 			}
 		}
 	}

--
Gitblit v1.8.0