From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 18 一月 2020 12:06:27 +0800
Subject: [PATCH] 用户注册信息

---
 fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java |   74 +++++++++++++++++++++++++++++++------
 1 files changed, 62 insertions(+), 12 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
index 831dedb..ef79ca4 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
@@ -1,6 +1,7 @@
 package com.yeshi.fanli.util.push;
 
 import java.io.IOException;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.PostConstruct;
@@ -8,21 +9,20 @@
 import org.json.simple.parser.ParseException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.yeshi.utils.JsonUtil;
 
 import com.xiaomi.xmpush.server.Constants;
 import com.xiaomi.xmpush.server.Message;
 import com.xiaomi.xmpush.server.Message.Builder;
 import com.xiaomi.xmpush.server.Result;
 import com.xiaomi.xmpush.server.Sender;
-import com.yeshi.fanli.entity.system.System;
 import com.yeshi.fanli.entity.xinge.MessageInfo;
 import com.yeshi.fanli.entity.xinge.PushRecord;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.log.PushLogHelper;
-import com.yeshi.fanli.service.inter.config.SystemService;
+import com.yeshi.fanli.service.inter.config.BusinessSystemService;
 import com.yeshi.fanli.util.Constant;
 import com.yeshi.fanli.util.PropertiesUtil;
-import org.yeshi.utils.JsonUtil;
 
 import net.sf.json.JSONObject;
 
@@ -32,12 +32,12 @@
 	private static XiaoMiPushUtil xiaoMiPushUtil;
 
 	@Autowired
-	private SystemService systemService;
+	private BusinessSystemService businessSystemService;
 
 	@PostConstruct
 	public void init() {
 		xiaoMiPushUtil = this;
-		xiaoMiPushUtil.systemService = this.systemService;
+		xiaoMiPushUtil.businessSystemService = this.businessSystemService;
 	}
 
 	// AppKey
@@ -57,6 +57,9 @@
 	 * @return
 	 */
 	public static String allPushAndroidForXM(MessageInfo info, Map<String, Object> map) {
+		if (Constant.IS_TEST)
+			return null;
+
 		String name = info.getPackageName();
 		if (!Constant.systemCommonConfig.getAndroidPackageName().equalsIgnoreCase(name)
 				&& !Constant.systemCommonConfig.getIosBundleId().equalsIgnoreCase(name)) {
@@ -86,6 +89,59 @@
 		message = builder.build();
 		try {
 			Result result = sender.broadcastAll(message, 3);
+			return result.getMessageId();// 鎴愬姛 杩斿洖娑堟伅鐨処d锛� 澶辫触杩斿洖null
+		} catch (IOException e) {
+			e.printStackTrace();
+		} catch (ParseException e) {
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+	/**
+	 * 鎵归噺鎺ㄩ��
+	 * 
+	 * @param info
+	 * @param map
+	 * @param regList
+	 *            鏈�澶т釜鏁颁负1000
+	 * @return
+	 */
+	public static String pushBatchAndroidForXM(MessageInfo info, Map<String, Object> map, List<String> regList) {
+		if (Constant.IS_TEST)
+			return null;
+		if (regList == null || regList.size() == 0)
+			return "";
+
+		String name = info.getPackageName();
+		if (!Constant.systemCommonConfig.getAndroidPackageName().equalsIgnoreCase(name)
+				&& !Constant.systemCommonConfig.getIosBundleId().equalsIgnoreCase(name)) {
+			return null;
+		}
+
+		// 浠巌nfo涓彇椤甸潰浼犳潵鐨勫��
+		Constants.useOfficial(); // 鍚姩鎺ㄩ�佹柟娉�
+		String PackageName = info.getPackageName();
+		Sender sender = new Sender(XIAOMI_F_ANDROID_APP_SECERT); // 鐢宠鐨凙ppSecert
+		String title = info.getTitle();
+		String payload = info.getContent();
+		String description = info.getContent();
+
+		Message message = null; // 鍋氬惊鐜紶鏉ョ殑key
+		Builder builder = new Message.Builder().restrictedPackageName(PackageName).title(title).payload(payload)
+				.description(description).passThrough(0) // 璁剧疆娑堟伅鏄惁閫氳繃閫忎紶鏂瑰紡鑷矨pp,
+															// 1琛ㄧず閫忎紶锛�0琛ㄧず閫氱煡鏍忔秷鎭紙榛樿锛�
+				.notifyType(1); // 璁剧疆閫氱煡绫诲瀷, type绫诲瀷(1-榛樿鎻愮ず闊�, 2-浣跨敤榛樿闇囧姩鎻愮ず,
+								// 3-浣跨敤榛樿led鐏厜鎻愮ず)
+		// 灏唀xtra鏀惧叆MessageInfo瀵硅薄涓紝 寰幆閬嶅巻extra涓殑key 鍜� value
+		if (map != null) {
+			for (String key : map.keySet()) {
+				builder.extra(key, map.get(key).toString());
+			}
+		}
+		message = builder.build();
+		try {
+			Result result = sender.send(message, regList, 3);
 			return result.getMessageId();// 鎴愬姛 杩斿洖娑堟伅鐨処d锛� 澶辫触杩斿洖null
 		} catch (IOException e) {
 			e.printStackTrace();
@@ -203,12 +259,6 @@
 		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), system);
 	}
 
-	public static int allFanLiQuanDevice(MessageInfo info, JSONObject json, PushRecord pushRecord) {
-		System b_android = xiaoMiPushUtil.systemService.getSystem("ANDROID",
-				Constant.systemCommonConfig.getAndroidPackageName());
-		return pushApp(info, json, pushRecord, b_android);
-	}
-
 	/**
 	 * 
 	 * @param info
@@ -220,7 +270,7 @@
 		// jsonXm 杞崲涓� map
 		JSONObject mapXm = JSONObject.fromObject(json);
 		String android = allPushAndroidForXM(info, mapXm);
-		LogHelper.userInfo("瀹夊崜鎺ㄩ�佹祴璇曪細" + android);
+		LogHelper.userInfo("灏忕背鎺ㄩ�侊細" + android);
 		pushRecord.setAndroidPushId(android);
 		if (android != null) {
 			return 1;

--
Gitblit v1.8.0