From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 20 五月 2020 17:25:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java |   44 ++++++++++++++++++++++++++++++++------------
 1 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java
index 40ddc87..ce8c2f3 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java
@@ -1,15 +1,22 @@
 package com.yeshi.fanli.service.impl.push;
 
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.annotation.Resource;
+
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
 import com.yeshi.fanli.dto.push.PushTypeEnum;
 import com.yeshi.fanli.entity.bus.user.AccountMessage;
+import com.yeshi.fanli.entity.push.DeviceTokenXM;
 import com.yeshi.fanli.entity.system.SystemZnx;
 import com.yeshi.fanli.entity.xinge.MessageInfo;
 import com.yeshi.fanli.entity.xinge.PushRecord;
 import com.yeshi.fanli.exception.push.PushException;
 import com.yeshi.fanli.log.PushLogHelper;
+import com.yeshi.fanli.service.inter.push.DeviceTokenXMService;
 import com.yeshi.fanli.service.inter.push.XMPushService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.push.PushUtils;
@@ -18,6 +25,19 @@
 
 @Service
 public class XMPushServiceImpl implements XMPushService {
+
+	@Resource
+	private DeviceTokenXMService deviceTokenXMService;
+
+	private List<String> getRegIds(Long uid) {
+		List<DeviceTokenXM> list = deviceTokenXMService.listByUid(uid);
+
+		List<String> regIds = new ArrayList<>();
+		if (list != null)
+			for (DeviceTokenXM token : list)
+				regIds.add(token.getRegisterId());
+		return regIds;
+	}
 
 	@Async("pushExecutor")
 	@Override
@@ -56,7 +76,7 @@
 		} else {
 			info.setAlias(uid + "");
 			// 灏忕背 鍗曟帹
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 
@@ -96,7 +116,7 @@
 			}
 		} else {
 			info.setAlias(uid + "");
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 
@@ -123,10 +143,10 @@
 			contentJson.put("id", id);
 
 			JSONObject json = new JSONObject();
-			json.put("type",PushTypeEnum.ZNX.name());
+			json.put("type", PushTypeEnum.ZNX.name());
 			json.put("content", contentJson);
-			json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
-					Constant.systemCommonConfig.getAndroidBaseactivityName()));
+			json.put("miPushUrl",
+					String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName()));
 
 			// 鐗堟湰鎺ㄩ��
 			if (versions != null && versions.trim().length() > 0) {
@@ -159,8 +179,8 @@
 			JSONObject json = new JSONObject();
 			json.put("type", PushTypeEnum.ZNX.name());
 			json.put("content", contentJson);
-			json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
-					Constant.systemCommonConfig.getAndroidBaseactivityName()));
+			json.put("miPushUrl",
+					String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName()));
 
 			// 鐗堟湰鎺ㄩ��
 			if (versions != null && versions.trim().length() > 0) {
@@ -169,7 +189,7 @@
 
 			// 灏忕背 鍗曟帹
 			try {
-				PushUtils.singlePushXiaoMi(info, json, pushRecord);
+				PushUtils.singlePushXiaoMi(info, json, getRegIds(uId), pushRecord);
 			} catch (Exception e) {
 				PushLogHelper.xmError(e);
 			}
@@ -209,7 +229,7 @@
 			}
 		} else {
 			info.setAlias(uid + "");
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 
@@ -244,7 +264,7 @@
 			}
 		} else {
 			info.setAlias(uid + "");
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 
@@ -281,7 +301,7 @@
 			}
 		} else {
 			info.setAlias(uid + "");
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 
@@ -317,7 +337,7 @@
 			}
 		} else {
 			info.setAlias(uid + "");
-			PushUtils.singlePushXiaoMi(info, json, pushRecord);
+			PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
 		}
 	}
 

--
Gitblit v1.8.0