From 0ec22dcf4fd9c4496e6f681e7fab89f56c6e4e8a Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期四, 02 四月 2020 14:45:20 +0800 Subject: [PATCH] vip 消息 --- fanli/src/main/java/com/yeshi/fanli/service/impl/push/XMPushServiceImpl.java | 242 ++++++++++++++++++------------------------------ 1 files changed, 91 insertions(+), 151 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 e44614e..0e1700b 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,20 +1,15 @@ package com.yeshi.fanli.service.impl.push; -import java.util.List; - -import javax.annotation.Resource; - +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; -import com.yeshi.fanli.dao.mybatis.AppVersionInfoMapper; -import com.yeshi.fanli.entity.AppVersionInfo; +import com.yeshi.fanli.dto.push.PushTypeEnum; import com.yeshi.fanli.entity.bus.user.AccountMessage; 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.PushException; +import com.yeshi.fanli.exception.push.PushException; import com.yeshi.fanli.log.PushLogHelper; -import com.yeshi.fanli.service.inter.config.AppVersionService; import com.yeshi.fanli.service.inter.push.XMPushService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.push.PushUtils; @@ -24,36 +19,24 @@ @Service public class XMPushServiceImpl implements XMPushService { - @Resource - private AppVersionInfoMapper appVersionInfoMapper; - - @Resource - private AppVersionService appVersionService; - + @Async("pushExecutor") @Override - public void pushGoods(Long uid, Long auctionId, String title, String content, List<String> listVersion) throws PushException { - - // 鏃犳渶浣庣増鏈檺鍒� - int minVersionCode = 0; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0) { - appVersion = getVersionByMinVersionCode(minVersionCode); - } + public void pushGoods(Long uid, Long auctionId, String title, String content, String versions) + throws PushException { String gid = auctionId + ""; JSONObject json = new JSONObject(); // json.put("url", "http://item.taobao.com/item.htm?id=" + gid);// IOS浣跨敤 json.put("id", gid); - json.put("type", "goodsdetail"); + json.put("type", PushTypeEnum.goodsdetail.name()); json.put("miPushUrl", String.format("%s.ui.recommend.GoodsBrowserActivity", Constant.systemCommonConfig.getAndroidBaseactivityName())); + // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } - + MessageInfo info = new MessageInfo(); info.setTitle(title); info.setContent(content); @@ -77,27 +60,20 @@ } } + @Async("pushExecutor") @Override - public void pushUrl(Long uid, String url, String title, String content, List<String> listVersion) throws PushException { - // 鏃犳渶浣庣増鏈檺鍒� - int minVersionCode = 0; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0) { - appVersion = getVersionByMinVersionCode(minVersionCode); - } - + public void pushUrl(Long uid, String url, String title, String content, String versions) throws PushException { + JSONObject json = new JSONObject(); json.put("url", url); - json.put("type", "url"); + json.put("type", PushTypeEnum.url.name()); json.put("webUrl", url); json.put("miPushUrl", String.format("%s.ui.invite.ShareBrowserActivity", Constant.systemCommonConfig.getAndroidBaseactivityName())); - + // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } MessageInfo info = new MessageInfo(); @@ -122,21 +98,12 @@ info.setAlias(uid + ""); PushUtils.singlePushXiaoMi(info, json, pushRecord); } - } + @Async("pushExecutor") @Override - public void pushZNX(Long uId, AccountMessage msg, SystemZnx systemZNX, List<String> listVersion) throws PushException { - - // 鏃犳渶浣庣増鏈檺鍒� - int minVersionCode = 0; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0) { - appVersion = getVersionByMinVersionCode(minVersionCode); - } - + public void pushZNX(Long uId, AccountMessage msg, SystemZnx systemZNX, String versions) throws PushException { + MessageInfo info = new MessageInfo(); info.setPackageName(Constant.systemCommonConfig.getAndroidPackageName()); @@ -156,15 +123,16 @@ contentJson.put("id", id); JSONObject json = new JSONObject(); - json.put("type", "ZNX"); + json.put("type", PushTypeEnum.ZNX.name()); json.put("content", contentJson); - json.put("miPushUrl", String.format("%s.ui.mine.AppMailDetailActivity", - Constant.systemCommonConfig.getAndroidBaseactivityName())); + json.put("miPushUrl", + String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName())); + // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } - + PushRecord pushRecord = new PushRecord(); // 灏忕背 鍏ㄦ帹 @@ -189,16 +157,16 @@ contentJson.put("id", msg.getId() + ""); JSONObject json = new JSONObject(); - json.put("type", "ZNX"); + json.put("type", PushTypeEnum.ZNX.name()); json.put("content", contentJson); - json.put("miPushUrl", String.format("%s.ui.mine.AppMailDetailActivity", - Constant.systemCommonConfig.getAndroidBaseactivityName())); - + json.put("miPushUrl", + String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName())); + // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } - + // 灏忕背 鍗曟帹 try { PushUtils.singlePushXiaoMi(info, json, pushRecord); @@ -208,26 +176,19 @@ } } + @Async("pushExecutor") @Override - public void pushWEEX(Long uid, String title, String content, String weexUrl, List<String> listVersion) throws PushException { + public void pushWEEX(Long uid, String title, String content, String weexUrl, String versions) throws PushException { - // 璁剧疆鍙帹閫佺増鏈�,1.4.8浠ュ悗鐨勭増鏈彲鎺ㄩ�� - int minVersionCode = 31; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0) { - appVersion = getVersionByMinVersionCode(minVersionCode); - } - JSONObject json = new JSONObject(); json.put("url", weexUrl); - json.put("type", "weex"); + json.put("type", PushTypeEnum.weex.name()); + // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } - + MessageInfo info = new MessageInfo(); info.setTitle(title); info.setContent(content); @@ -252,65 +213,17 @@ } } - private String getVersionByMinVersionCode(int versionCode) { - List<AppVersionInfo> list = appVersionInfoMapper - .listByPlatformAndMinVersionCode(AppVersionInfo.PLATFORM_ANDROID, versionCode); - String versions = ""; - if (list != null) - for (AppVersionInfo appVersion : list) { - versions += appVersion.getVersion() + ","; - - } - if (versions.endsWith(",")) - versions = versions.substring(0, versions.length() - 1); - - return versions; - } - - /** - * 鏌ヨ鑳芥帹閫佺増鏈彿 - * @param versionCode - * @param listVersion - * @return - */ - private String getCanPushVersions(int versionCode, List<String> listVersion) { - List<AppVersionInfo> list = appVersionService.listByVersions(AppVersionInfo.PLATFORM_ANDROID, listVersion); - String versions = ""; - - if (list != null) { - for (AppVersionInfo appVersion : list) { - Integer code = appVersion.getVersionCode(); - if (code != null && code >= versionCode) { - versions += appVersion.getVersion() + ","; - } - } - } - - if (versions.endsWith(",")) { - versions = versions.substring(0, versions.length() - 1); - } - - return versions; - } - + @Async("pushExecutor") @Override - public void pushBaiChuanUrl(Long uid, String title, String content, String url, List<String> listVersion) throws PushException { - - // 璁剧疆鍙帹閫佺増鏈�,1.4.8浠ュ悗鐨勭増鏈彲鎺ㄩ�� - int minVersionCode = 31; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0){ - appVersion = getVersionByMinVersionCode(minVersionCode); - } - + public void pushBaiChuanUrl(Long uid, String title, String content, String url, String versions) + throws PushException { + JSONObject json = new JSONObject(); json.put("url", url); - json.put("type", "baichuan"); + json.put("type", PushTypeEnum.baichuan.name()); // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } MessageInfo info = new MessageInfo(); @@ -333,28 +246,19 @@ info.setAlias(uid + ""); PushUtils.singlePushXiaoMi(info, json, pushRecord); } - } + @Async("pushExecutor") @Override - public void pushWelfareCenter(Long uid, String title, String content, List<String> listVersion) throws PushException { - - // 1.5.1涔嬪悗鐨勭増鏈彲鎺ㄩ�� - int minVersionCode = 36; - String appVersion = null; - if (listVersion != null && listVersion.size() > 0) { - appVersion = getCanPushVersions(minVersionCode, listVersion); - } else if (minVersionCode > 0){ - appVersion = getVersionByMinVersionCode(minVersionCode); - } - + public void pushWelfareCenter(Long uid, String title, String content, String versions) throws PushException { + JSONObject json = new JSONObject(); - json.put("type", "welfare"); + json.put("type", PushTypeEnum.welfare.name()); json.put("miPushUrl", String.format("%s.ui.mine.WelfareCenterActivity", Constant.systemCommonConfig.getAndroidBaseactivityName())); // 鐗堟湰鎺ㄩ�� - if (appVersion != null && appVersion.trim().length() > 0) { - json.put("app_version", appVersion); + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); } MessageInfo info = new MessageInfo(); @@ -381,4 +285,40 @@ } } + @Override + public void pushUserSignInNotification(Long uid, String title, String content, String versions) + throws PushException { + JSONObject json = new JSONObject(); + json.put("type", PushTypeEnum.signin.name()); + json.put("miPushUrl", String.format("%s.ui.goldtask.GoldTaskActivity", + Constant.systemCommonConfig.getAndroidBaseactivityName())); + // 鐗堟湰鎺ㄩ�� + if (versions != null && versions.trim().length() > 0) { + json.put("app_version", versions); + } + + MessageInfo info = new MessageInfo(); + info.setTitle(title); + info.setContent(content); + info.setDescription(content); + // 灏忕背鎺ㄩ�佺綉椤� + info.setPackageName(Constant.systemCommonConfig.getAndroidPackageName()); + info.setActivty(String.format("%s.ui.goldtask.GoldTaskActivity", + Constant.systemCommonConfig.getAndroidBaseactivityName())); + + PushRecord pushRecord = new PushRecord(); + + // 灏忕背 鍏ㄦ帹 + if (uid == null || uid == 0) { + try { + PushUtils.allPushXiaoMi(info, json, pushRecord); + } catch (Exception e) { + PushLogHelper.xmError(e); + } + } else { + info.setAlias(uid + ""); + PushUtils.singlePushXiaoMi(info, json, pushRecord); + } + } + } -- Gitblit v1.8.0