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/IOSPushUtil.java |   69 ++++++++++++++++++++--------------
 1 files changed, 41 insertions(+), 28 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java
index e6dff06..af963df 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java
@@ -8,19 +8,19 @@
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.yeshi.utils.HttpUtil;
 
 import com.google.gson.Gson;
 import com.yeshi.fanli.controller.admin.PushController;
-import com.yeshi.fanli.entity.system.System;
+import com.yeshi.fanli.dto.push.PushTypeEnum;
 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.StringUtil;
 import com.yeshi.fanli.util.factory.IOSPushFactory;
-import org.yeshi.utils.HttpUtil;
 
 import javapns.devices.Device;
 import javapns.devices.implementations.basic.BasicDevice;
@@ -36,12 +36,12 @@
 	private static IOSPushUtil iosPushUtil;
 
 	@Autowired
-	private SystemService systemService;
+	private BusinessSystemService businessSystemService;
 
 	@PostConstruct
 	public void init() {
 		iosPushUtil = this;
-		iosPushUtil.systemService = this.systemService;
+		iosPushUtil.businessSystemService = this.businessSystemService;
 	}
 
 	/**
@@ -58,6 +58,9 @@
 	public static String allPushIOS(List<String> deviceTokenList, MessageInfo info, String url, int type)
 			throws Exception {
 
+		// if (Constant.IS_TEST)
+		// return null;
+
 		Gson gson = new Gson();
 		PushLogHelper.iosInfo("IOS鎺ㄩ�佽澶囨暟涓�:" + deviceTokenList.size());
 		PushLogHelper.iosInfo("IOS鎺ㄩ�佺殑鍐呭涓猴細" + gson.toJson(info));
@@ -68,7 +71,7 @@
 		// json鑷畾涔変紶鍊�
 
 		JSONObject json = null;
-		if (type == PushController.GOODS) {
+		if (type == PushTypeEnum.goodsdetail.getCode()) {
 			Long auctionId = null;
 			if (url.contains("id=")) {
 				String[] sts = url.split("\\?")[1].split("&");
@@ -81,26 +84,35 @@
 			if (auctionId == null)
 				throw new Exception("娣樺疂鍟嗗搧ID鎻愬彇鍑洪敊");
 			json = IOSPushFactory.createGoodsPush(auctionId, info.getTitle(), info.getContent());
-		} else if (type == PushController.URL) {
+		} else if (type == PushTypeEnum.url.getCode()) {
 			String shortUrl = HttpUtil.getShortLink(url);
 			if (StringUtil.isNullOrEmpty(shortUrl))
 				throw new Exception("鑾峰彇鐭摼鍑洪敊");
 			json = IOSPushFactory.createURLPush(shortUrl, info.getTitle(), info.getContent());
-		} else if (type == PushController.ZNX) {
+		} else if (type == PushTypeEnum.ZNX.getCode()) {
 			json = IOSPushFactory.createZNXPush(info.getTitle(), info.getContent());
-		} else if (type == PushController.WEEX) {
+		} else if (type == PushTypeEnum.weex.getCode()) {
 			String shortUrl = HttpUtil.getShortLink(url);
 			if (StringUtil.isNullOrEmpty(shortUrl))
 				throw new Exception("鑾峰彇鐭摼鍑洪敊");
 			json = IOSPushFactory.createWEEXPush(shortUrl, info.getTitle(), info.getContent());
-		} else if (type == PushController.BAICHUAN) {
-			String shortUrl = HttpUtil.getShortLink(url);
-			if (StringUtil.isNullOrEmpty(shortUrl))
-				throw new Exception("鑾峰彇鐭摼鍑洪敊");
+		} else if (type == PushTypeEnum.baichuan.getCode()) {
+			String shortUrl = url;
+			// HttpUtil.getShortLink(url);
+			// if (StringUtil.isNullOrEmpty(shortUrl))
+			// throw new Exception("鑾峰彇鐭摼鍑洪敊");
 			json = IOSPushFactory.createBaiChuanPush(shortUrl, info.getTitle(), info.getContent());
+		} else if (type == PushTypeEnum.welfare.getCode()) {
+			json = IOSPushFactory.createWelfarePush(info.getTitle(), info.getContent());
+		} else if (type == PushTypeEnum.signin.getCode()) {
+			json = IOSPushFactory.createUserSignInPush(info.getTitle(), info.getContent());
 		}
+
 		// 鍒嗙粍鎺ㄩ�� 姣�50涓澶囦负涓�缁�
 
+		InputStream certificate = IOSPushUtil.class.getClassLoader()
+				.getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢
+		String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd();
 		if (tokenList != null && tokenList.size() > 0) {
 			int pageSize = 50;
 			int page = tokenList.size() % pageSize == 0 ? tokenList.size() / pageSize : tokenList.size() / pageSize + 1;
@@ -109,7 +121,7 @@
 				int end = start + pageSize;
 				if (end > tokenList.size())
 					end = tokenList.size();
-				pushIOS(tokenList.subList(start, end), json);
+				pushIOS(tokenList.subList(start, end), json, certificate, certificatePassword);
 			}
 
 		}
@@ -117,14 +129,12 @@
 		return null;
 	}
 
-	private static String pushIOS(List<String> deviceTokenList, JSONObject json) throws Exception {
+	public static String pushIOS(List<String> deviceTokenList, JSONObject json, InputStream certificate,
+			String certificatePWD) throws Exception {
 		List<String> tokenList = new ArrayList<String>();
 		for (String deviceToken : deviceTokenList) {
 			tokenList.add(deviceToken);
 		}
-		InputStream certificate = IOSPushUtil.class.getClassLoader()
-				.getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢
-		String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd();// 姝ゅ娉ㄦ剰瀵煎嚭鐨勮瘉涔﹀瘑鐮佷笉鑳戒负绌哄洜涓虹┖瀵嗙爜浼氭姤閿�
 		while (json.toString().getBytes().length > 256) {
 			// 棣栧厛鍓婂噺鍐呭锛岀劧鍚庡墛鍑忔爣棰�
 			String title = json.optJSONObject("aps").optJSONObject("alert").optString("title");
@@ -149,11 +159,9 @@
 		PushNotificationManager pushManager = new PushNotificationManager();
 		// true锛氳〃绀虹殑鏄骇鍝佺嚎涓婂彂甯冩帹閫佹湇鍔� false锛氳〃绀虹殑鏄骇鍝佹祴璇曟帹閫佹湇鍔�
 		if (Constant.IS_TEST)
-			pushManager.initializeConnection(
-					new AppleNotificationServerBasicImpl(certificate, certificatePassword, false));
+			pushManager.initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePWD, false));
 		else
-			pushManager
-					.initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePassword, true));
+			pushManager.initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePWD, true));
 
 		List<Device> deviceList = new ArrayList<Device>();
 		for (String token : tokenList) {
@@ -217,7 +225,10 @@
 	 * @throws Exception
 	 */
 	public static void executePushIOS(List<String> tokenList, JSONObject json) throws Exception {
-		pushIOS(tokenList, json);
+		InputStream certificate = IOSPushUtil.class.getClassLoader()
+				.getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢
+		String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd();
+		pushIOS(tokenList, json, certificate, certificatePassword);
 	}
 
 	/**
@@ -235,7 +246,7 @@
 
 		// json鑷畾涔変紶鍊�
 		JSONObject json = null;
-		if (type == PushController.GOODS) {
+		if (type == PushTypeEnum.goodsdetail.getCode()) {
 			Long auctionId = null;
 			if (url.contains("id=")) {
 				String[] sts = url.split("\\?")[1].split("&");
@@ -248,23 +259,25 @@
 			if (auctionId == null)
 				throw new Exception("娣樺疂鍟嗗搧ID鎻愬彇鍑洪敊");
 			json = IOSPushFactory.createGoodsPush(auctionId, info.getTitle(), info.getContent());
-		} else if (type == PushController.URL) {
+		} else if (type == PushTypeEnum.url.getCode()) {
 			String shortUrl = HttpUtil.getShortLink(url);
 			if (StringUtil.isNullOrEmpty(shortUrl))
 				throw new Exception("鑾峰彇鐭摼鍑洪敊");
 			json = IOSPushFactory.createURLPush(shortUrl, info.getTitle(), info.getContent());
-		} else if (type == PushController.ZNX) {
+		} else if (type == PushTypeEnum.ZNX.getCode()) {
 			json = IOSPushFactory.createZNXPush(info.getTitle(), info.getContent());
-		} else if (type == PushController.WEEX) {
+		} else if (type == PushTypeEnum.weex.getCode()) {
 			String shortUrl = HttpUtil.getShortLink(url);
 			if (StringUtil.isNullOrEmpty(shortUrl))
 				shortUrl = url;
 			json = IOSPushFactory.createWEEXPush(shortUrl, info.getTitle(), info.getContent());
-		} else if (type == PushController.BAICHUAN) {
+		} else if (type == PushTypeEnum.baichuan.getCode()) {
 			String shortUrl = HttpUtil.getShortLink(url);
 			if (StringUtil.isNullOrEmpty(shortUrl))
 				shortUrl = url;
 			json = IOSPushFactory.createBaiChuanPush(shortUrl, info.getTitle(), info.getContent());
+		} else if (type == PushTypeEnum.signin.getCode()) {
+			json = IOSPushFactory.createUserSignInPush(info.getTitle(), info.getContent());
 		}
 
 		return json;

--
Gitblit v1.8.0