From 744594ef1a2f530fc3e86ea9dc48b62247f79420 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 19 五月 2020 17:13:23 +0800
Subject: [PATCH] 饿了么绘图,添加口碑

---
 fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java |  304 +++++++++++++++++++-------------------------------
 1 files changed, 118 insertions(+), 186 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java b/fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java
index b2ee013..2e12654 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java
@@ -1,28 +1,26 @@
 package com.yeshi.fanli.controller.admin;
 
 import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 import javax.annotation.Resource;
 
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-
-import com.yeshi.fanli.entity.bus.msg.UserSystemMsg;
-import com.yeshi.fanli.entity.bus.msg.UserSystemMsgTypeEnum;
-import com.yeshi.fanli.exception.PushException;
-import com.yeshi.fanli.service.inter.config.ConfigService;
-import com.yeshi.fanli.service.inter.config.SystemService;
-import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
-import com.yeshi.fanli.service.inter.push.PushRecordService;
-import com.yeshi.fanli.service.inter.push.PushService;
-import com.yeshi.fanli.service.inter.user.AccountMessageService;
-import com.yeshi.fanli.service.inter.user.SystemZnxService;
-import com.yeshi.fanli.util.StringUtil;
-import com.yeshi.fanli.util.factory.IOSPushFactory;
-
 import org.yeshi.utils.HttpUtil;
 import org.yeshi.utils.JsonUtil;
+
+import com.google.gson.Gson;
+import com.google.gson.reflect.TypeToken;
+import com.yeshi.fanli.entity.bus.msg.UserSystemMsg;
+import com.yeshi.fanli.entity.bus.msg.UserSystemMsgTypeEnum;
+import com.yeshi.fanli.exception.push.PushException;
+import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
+import com.yeshi.fanli.service.inter.push.PushService;
+import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.factory.IOSPushFactory;
 
 import net.sf.json.JSONObject;
 
@@ -30,115 +28,12 @@
 @RequestMapping("admin/new/api/v1/push")
 public class PushController {
 
-	public final static int GOODS = 1; // 鍟嗗搧鎺ㄩ��
-	public final static int URL = 2; // 缃戦〉鎺ㄩ��
-	public final static int DETAIL = 3; // 璇︽儏鎺ㄩ��
-	public final static int ZNX = 4; // 绔欏唴鎺ㄩ��
-	public final static int WEEX = 5; // 绔欏唴鎺ㄩ��
-	public final static int BAICHUAN = 6; // 绔欏唴鎺ㄩ��
-	public final static int WELFARE_CENTER = 7; // 绂忓埄涓績
-
-	@Resource
-	private PushRecordService pushRecordService;
-
-	@Resource
-	private ConfigService configService;
-
-	@Resource
-	private SystemZnxService systemZnxService;
-
-	@Resource
-	private AccountMessageService accountMessageService;
-
-	@Resource
-	private SystemService systemService;
-
 	@Resource
 	private PushService pushService;
 
 	@Resource
 	private UserSystemMsgService userSystemMsgService;
-
-	/**
-	 * 鍟嗗搧鎺ㄩ��
-	 * 
-	 * @param uId
-	 *            -鐢ㄦ埛ID 鍙负绌�
-	 * @param url
-	 *            -鍟嗗搧閾炬帴
-	 * @param title
-	 *            -鎺ㄩ�佹爣棰�
-	 * @param content
-	 *            -鎺ㄩ�佸唴瀹�
-	 * @param out
-	 * @throws Exception
-	 */
-	@RequestMapping(value = "pushGoodsAll_f", method = RequestMethod.POST)
-	public void pushGoods(Long uId, String url, String title, String content, PrintWriter out) throws Exception {
-		String auctionId = null;
-		if (!StringUtil.isNullOrEmpty(url) && url.contains("id=")) {
-			String[] sts = url.split("\\?")[1].split("&");
-			for (String st : sts)
-				if (st.contains("id=")) {
-					auctionId = st.replace("id=", "");
-				}
-		}
-
-		if (StringUtil.isNullOrEmpty(auctionId)) {
-			out.print(JsonUtil.loadFalseResult("鎻愬彇鍟嗗搧ID澶辫触"));
-			return;
-		}
-
-		JSONObject json = IOSPushFactory.createGoodsPush(Long.parseLong(auctionId), title, content);
-		if (json.toString().getBytes().length > 256) {
-			out.print(JsonUtil.loadFalseResult("鏍囬鎴栧唴瀹硅繃闀匡紝璇峰垹鍑忓悗鍐嶈瘯"));
-			return;
-		}
-
-		pushService.pushGoods(uId, url, title, content);
-		out.print(JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
-	}
-
-	/**
-	 * 缃戦〉鎺ㄩ��
-	 * 
-	 * @param url
-	 * @param title
-	 * @param content
-	 * @param out
-	 * @throws Exception
-	 */
-	@RequestMapping(value = "pushUrlAll_f", method = RequestMethod.POST)
-	public void pushUrl(String url, String title, String content, PrintWriter out) throws Exception {
-		if (StringUtil.isNullOrEmpty(url) || StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
-			out.print(JsonUtil.loadFalseResult("璇峰~鍐欓摼鎺ワ紝鏍囬涓庡唴瀹�"));
-			return;
-		}
-
-		JSONObject json = IOSPushFactory.createURLPush(HttpUtil.getShortLink(url), title, content);
-		if (json.toString().getBytes().length > 256) {
-			out.print(JsonUtil.loadFalseResult("鏍囬鎴栧唴瀹硅繃闀匡紝璇峰垹鍑忓悗鍐嶈瘯"));
-			return;
-		}
-		pushService.pushUrl(null, url, title, content);
-		out.print(JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
-	}
-
-	/**
-	 * 
-	 * 鏂规硶璇存槑: 绔欏唴淇℃帹閫�
-	 * 
-	 * @author mawurui createTime 2018骞�3鏈�12鏃� 涓嬪崍5:45:00
-	 * @param uId
-	 * @param title
-	 * @param content
-	 * @throws Exception
-	 */
-	@RequestMapping(value = "pushFanZNX_f", method = RequestMethod.POST)
-	public void pushSystemZnx(Long uId, String title, String content, PrintWriter out) throws Exception {
-		pushService.pushZNX(uId, title, content);
-		out.print(JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
-	}
+	
 
 	/**
 	 * 鐭摼鎺ヨ浆鎹�
@@ -169,52 +64,6 @@
 		}
 	}
 
-	/**
-	 * 鍟嗗搧鎺ㄩ�� -(鏂板悗鍙�)
-	 * 
-	 * @param uId
-	 *            -鐢ㄦ埛ID 鍙负绌�
-	 * @param url
-	 *            -鍟嗗搧閾炬帴
-	 * @param title
-	 *            -鎺ㄩ�佹爣棰�
-	 * @param content
-	 *            -鎺ㄩ�佸唴瀹�
-	 * @param out
-	 * @throws Exception
-	 */
-	@RequestMapping(value = "newPushGoodsAll")
-	public void newPushGoodsAll(String callback, Long uid, String url, String title, String content, PrintWriter out)
-			throws Exception {
-
-		String auctionId = null;
-		if (!StringUtil.isNullOrEmpty(url) && url.contains("id=")) {
-			String[] sts = url.split("\\?")[1].split("&");
-			for (String st : sts)
-				if (st.contains("id=")) {
-					auctionId = st.replace("id=", "");
-				}
-		}
-
-		if (StringUtil.isNullOrEmpty(auctionId)) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎻愬彇鍟嗗搧ID澶辫触"));
-			return;
-		}
-
-		JSONObject json = IOSPushFactory.createGoodsPush(Long.parseLong(auctionId), title, content);
-		if (json.toString().getBytes().length > 256) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏍囬鎴栧唴瀹硅繃闀匡紝璇峰垹鍑忓悗鍐嶈瘯"));
-			return;
-		}
-
-		try {
-			pushService.pushGoods(uid, url, title, content);
-			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
-		} catch (Exception e) {
-			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎺ㄩ�佸け璐�"));
-			e.printStackTrace();
-		}
-	}
 
 	/**
 	 * 缃戦〉鎺ㄩ�� -(鏂板悗鍙�)
@@ -226,7 +75,8 @@
 	 * @throws Exception
 	 */
 	@RequestMapping(value = "newPushUrlAll")
-	public void newPushUrlAll(String callback, String url, String title, String content, PrintWriter out) {
+	public void newPushUrlAll(String callback, String url, String title, String content, String uids, 
+			String arrayIOS, String arrayAndroid, PrintWriter out) {
 
 		if (StringUtil.isNullOrEmpty(url) || StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇峰~鍐欓摼鎺ワ紝鏍囬涓庡唴瀹�"));
@@ -240,9 +90,41 @@
 		}
 
 		try {
-			pushService.pushUrl(null, url, title, content);
+
+			List<String> listuid = null;
+			if (uids != null && uids.trim().length() > 0) {
+				listuid = Arrays.asList(uids.split(","));
+				if (listuid == null || listuid.size() == 0) {
+					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛id鏍煎紡涓嶆纭�"));
+					return;
+				}
+			}
+			
+			if ((arrayIOS == null || arrayIOS.trim().length() == 0)
+					&& (arrayAndroid == null || arrayAndroid.trim().length() == 0)) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎺ㄩ�佺増鏈笉鑳戒负绌�"));
+				return;
+			} 
+			
+			List<String> listIOS = convertList(arrayIOS);
+			List<String> listAndroid = convertList(arrayAndroid);
+			
+			if (listuid == null) {
+				// 鍏ㄦ帹
+				pushService.pushUrl(null, title, content, url, listIOS, listAndroid);
+			} else {
+				// 閮ㄥ垎鎺ㄩ��
+				for (String str_uid: listuid) {
+					if (str_uid != null && str_uid.trim().length() > 0) {
+						pushService.pushUrl(Long.parseLong(str_uid), title, content, url, listIOS, listAndroid);
+					}
+				}
+			}
+			
 			JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("鎺ㄩ�佹垚鍔�"));
 		} catch (PushException e) {
+			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(e.getMsg()));
+		} catch (Exception e) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎺ㄩ�佸け璐�"));
 			e.printStackTrace();
 		}
@@ -258,7 +140,8 @@
 	 * @throws Exception
 	 */
 	@RequestMapping(value = "newPushFanZNX")
-	public void newPushFanZNX(String callback, String uids, String title, String content, PrintWriter out) {
+	public void newPushFanZNX(String callback, String uids, String title, String content, String arrayIOS, 
+			String arrayAndroid, PrintWriter out) {
 
 		if (StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇峰~鍐欐爣棰樹笌鍐呭"));
@@ -267,18 +150,33 @@
 
 		try {
 
-			String[] uidArray = null;
-			if (uids != null) {
-				uidArray = uids.split(",");
+			List<String> listuid = null;
+			if (uids != null && uids.trim().length() > 0) {
+				listuid = Arrays.asList(uids.split(","));
+				if (listuid == null || listuid.size() == 0) {
+					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛id鏍煎紡涓嶆纭�"));
+					return;
+				}
 			}
+			
 
-			if (uidArray == null) {
-				pushService.pushZNX(null, title, content);
+			if ((arrayIOS == null || arrayIOS.trim().length() == 0)
+					&& (arrayAndroid == null || arrayAndroid.trim().length() == 0)) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎺ㄩ�佺増鏈笉鑳戒负绌�"));
+				return;
+			} 
+			
+			List<String> listIOS = convertList(arrayIOS);
+			List<String> listAndroid = convertList(arrayAndroid);
+			
+			if (listuid == null) {
+				// 鍏ㄦ帹
+				pushService.pushZNX(null, title, content, listIOS, listAndroid);
 			} else {
-				for (int i = 0; i < uidArray.length; i++) {
-					String str_uid = uidArray[i];
+				// 閮ㄥ垎鎺ㄩ��
+				for (String str_uid: listuid) {
 					if (str_uid != null && str_uid.trim().length() > 0) {
-						pushService.pushZNX(Long.parseLong(str_uid), title, content);
+						pushService.pushZNX(Long.parseLong(str_uid), title, content, listIOS, listAndroid);
 
 						userSystemMsgService.addUserSystemMsg(Long.parseLong(str_uid), UserSystemMsgTypeEnum.question,
 								title, content, UserSystemMsg.TIME_TAG_EMERGENT, null);
@@ -304,7 +202,8 @@
 	 * @throws Exception
 	 */
 	@RequestMapping(value = "pushBaiChuan")
-	public void pushBaiChuan(String callback, String uids, String title, String content, String url, PrintWriter out) {
+	public void pushBaiChuan(String callback, String uids, String title, String content, String url, String arrayIOS,
+			String arrayAndroid, PrintWriter out) {
 
 		if (StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
 			JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("璇峰~鍐欐爣棰樹笌鍐呭"));
@@ -313,18 +212,32 @@
 
 		try {
 
-			String[] uidArray = null;
-			if (uids != null) {
-				uidArray = uids.split(",");
+			List<String> listuid = null;
+			if (uids != null && uids.trim().length() > 0) {
+				listuid = Arrays.asList(uids.split(","));
+				if (listuid == null || listuid.size() == 0) {
+					JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛id鏍煎紡涓嶆纭�"));
+					return;
+				}
 			}
-
-			if (uidArray == null) {
-				pushService.pushBaiChuanUrl(null, title, content, url);
+			
+			if ((arrayIOS == null || arrayIOS.trim().length() == 0)
+					&& (arrayAndroid == null || arrayAndroid.trim().length() == 0)) {
+				JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎺ㄩ�佺増鏈笉鑳戒负绌�"));
+				return;
+			} 
+			
+			List<String> listIOS = convertList(arrayIOS);
+			List<String> listAndroid = convertList(arrayAndroid);
+			
+			if (listuid == null) {
+				// 鍏ㄦ帹
+				pushService.pushBaiChuanUrl(null, title, content, url, listIOS, listAndroid);
 			} else {
-				for (int i = 0; i < uidArray.length; i++) {
-					String str_uid = uidArray[i];
+				// 閮ㄥ垎鎺ㄩ��
+				for (String str_uid: listuid) {
 					if (str_uid != null && str_uid.trim().length() > 0) {
-						pushService.pushBaiChuanUrl(Long.parseLong(str_uid), title, content, url);
+						pushService.pushBaiChuanUrl(Long.parseLong(str_uid), title, content, url, listIOS, listAndroid);
 					}
 				}
 			}
@@ -338,4 +251,23 @@
 		}
 	}
 
+	
+	/**
+	 * 鐗堟湰澶勭悊
+	 * @param array
+	 * @return
+	 */
+	public List<String> convertList (String array) {
+		Gson gson = new Gson();
+		List<String> list = null;
+		if (array == null || array.trim().length() == 0) {
+			list = new ArrayList<String>(); // 闀垮害涓�0 涓嶆帹閫�
+		} else {
+			list = gson.fromJson(array, new TypeToken<ArrayList<String>>() {}.getType());
+			if (list != null && list.size() > 0 && list.contains("鍏ㄦ帹")) {
+				list = null; // 鍏ㄦ帹
+			}
+		}
+		return list;
+	}
 }

--
Gitblit v1.8.0