From dc5be7d38446f70e6ff86df311119c32b41fe7f8 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 28 十一月 2020 16:37:05 +0800 Subject: [PATCH] 大淘客搜索接口升级 --- fanli/src/main/java/com/yeshi/fanli/service/impl/push/OPPOPushServiceImpl.java | 83 ++++++++++++++++++++--------------------- 1 files changed, 40 insertions(+), 43 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/OPPOPushServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/OPPOPushServiceImpl.java index f6e63b8..cac79b3 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/OPPOPushServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/OPPOPushServiceImpl.java @@ -1,13 +1,12 @@ package com.yeshi.fanli.service.impl.push; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import javax.annotation.Resource; +import com.yeshi.fanli.dto.push.PushBaseContent; +import com.yeshi.fanli.entity.SystemEnum; +import com.yeshi.fanli.util.Constant; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; @@ -37,10 +36,10 @@ @Resource private UserCustomSettingsService userCustomSettingsService; - private List<Integer> getVersionCodeList(List<Integer> versionCodeList) { + private List<Integer> getVersionCodeList(List<Integer> versionCodeList,SystemEnum system) { List<Integer> versionList = new ArrayList<>(); if (versionCodeList == null) {// 鍏ㄦ帹 - List<AppVersionInfo> appInfoList = appVersionService.listByPlatformAndMinVersionCode("android", 51); + List<AppVersionInfo> appInfoList = appVersionService.listByPlatformAndMinVersionCode("android", 51,system); if (appInfoList != null) for (AppVersionInfo version : appInfoList) { versionList.add(version.getVersionCode()); @@ -58,50 +57,49 @@ @Async("pushExecutor") @Override - public void pushGoods(Long uid, Long auctionId, String title, String content, List<Integer> versionCodeList) + public void pushGoods(Long uid, Long auctionId, PushBaseContent baseContent) throws PushException { - push(PushTypeEnum.goodsdetail, uid, title, content, null, null, auctionId, versionCodeList); + push(PushTypeEnum.goodsdetail, uid, null, null, auctionId, baseContent); } @Async("pushExecutor") @Override - public void pushUrl(Long uid, String url, String title, String content, List<Integer> versionCodeList) + public void pushUrl(Long uid, String url, PushBaseContent baseContent) throws PushException { - push(PushTypeEnum.url, uid, title, content, null, url, null, versionCodeList); + push(PushTypeEnum.url, uid, null, url, null, baseContent); } @Async("pushExecutor") @Override - public void pushZNX(Long uid, String title, String content, List<Integer> versionCodeList) throws PushException { - push(PushTypeEnum.ZNX, uid, title, content, null, null, null, versionCodeList); + public void pushZNX(Long uid, PushBaseContent baseContent) throws PushException { + push(PushTypeEnum.ZNX, uid, null, null, null, baseContent); } @Async("pushExecutor") @Override - public void pushWEEX(Long uid, String title, String content, String weexUrl, List<Integer> versionCodeList) + public void pushWEEX(Long uid,String weexUrl, PushBaseContent baseContent) throws PushException { - push(PushTypeEnum.weex, uid, title, content, weexUrl, null, null, versionCodeList); + push(PushTypeEnum.weex, uid, weexUrl, null, null, baseContent); } @Async("pushExecutor") @Override - public void pushBaiChuanUrl(Long uid, String title, String content, String url, List<Integer> versionCodeList) + public void pushBaiChuanUrl(Long uid,String url, PushBaseContent baseContent) throws PushException { - - push(PushTypeEnum.baichuan, uid, title, content, null, url, null, versionCodeList); + push(PushTypeEnum.baichuan, uid, null, url, null, baseContent); } @Async("pushExecutor") @Override - public void pushWelfareCenter(Long uid, String title, String content, List<Integer> versionCodeList) + public void pushWelfareCenter(Long uid, PushBaseContent baseContent) throws PushException { - push(PushTypeEnum.welfare, uid, title, content, null, null, null, versionCodeList); + push(PushTypeEnum.welfare, uid, null, null, null, baseContent); } @Override - public void pushUserSignInNotification(Long uid, String title, String content, List<Integer> versionCodeList) + public void pushUserSignInNotification(Long uid, PushBaseContent baseContent) throws PushException { - push(PushTypeEnum.signin, uid, title, content, null, null, null, versionCodeList); + push(PushTypeEnum.signin, uid, null, null, null, baseContent); } private List<DeviceTokenOPPO> filterDeviceToken(List<DeviceTokenOPPO> deviceList, int hour) { @@ -140,16 +138,14 @@ * * @param type * @param uid - * @param title * @param content * @param url * @param webUrl - * @param versionCodeList */ - private void push(PushTypeEnum type, Long uid, String title, String content, String url, String webUrl, - Long goodsId, List<Integer> versionCodeList) throws PushException { + private void push(PushTypeEnum type, Long uid, String url, String webUrl, + Long goodsId,PushBaseContent content) throws PushException { int hour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY); - List<Integer> newVersionList = getVersionCodeList(versionCodeList); + List<Integer> newVersionList = getVersionCodeList(content.getVersionCodeList(),content.getSystem()); // 1.6.5鍚庡紑濮嬫帹閫� for (int i = 0; i < newVersionList.size(); i++) { if (newVersionList.get(i) < 47) @@ -157,11 +153,12 @@ } if (uid == null || uid == 0) { + Date minUpdatetime=new Date(System.currentTimeMillis()- Constant.PUSH_MIN_TIME); int pageSize = 200; - long deviceCount = deviceTokenOPPOService.countDeviceToken(newVersionList); + long deviceCount = deviceTokenOPPOService.countDeviceToken(newVersionList,minUpdatetime); int page = (int) (deviceCount % pageSize == 0 ? deviceCount / pageSize : deviceCount / pageSize + 1); for (int p = 1; p <= page; p++) { - List<DeviceTokenOPPO> deviceList = deviceTokenOPPOService.listDeviceToken(p, pageSize, newVersionList); + List<DeviceTokenOPPO> deviceList = deviceTokenOPPOService.listDeviceToken(p, pageSize, newVersionList,minUpdatetime); deviceList = filterDeviceToken(deviceList, hour); List<String> tokenList = new ArrayList<>(); @@ -171,25 +168,25 @@ if (type == PushTypeEnum.goodsdetail) {// 鍟嗗搧璇︽儏 if (goodsId == null) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushGoods(tokenList, title, content, 1, goodsId); + OPPOPushUtil.pushGoods(tokenList, content.getTitle(), content.getContent(), 1, goodsId); } else if (type == PushTypeEnum.url) {// 閾炬帴 if (StringUtil.isNullOrEmpty(webUrl)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushUrl(tokenList, title, content, webUrl); + OPPOPushUtil.pushUrl(tokenList, content.getTitle(), content.getContent(), webUrl); } else if (type == PushTypeEnum.ZNX) {// 绔欏唴淇� - OPPOPushUtil.pushZNX(tokenList, title, content); + OPPOPushUtil.pushZNX(tokenList, content.getTitle(), content.getContent()); } else if (type == PushTypeEnum.weex) {// weex if (StringUtil.isNullOrEmpty(url)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushWEEX(tokenList, title, content, url); + OPPOPushUtil.pushWEEX(tokenList,content.getTitle(), content.getContent(), url); } else if (type == PushTypeEnum.baichuan) {// 鐧惧窛閾炬帴 if (StringUtil.isNullOrEmpty(webUrl)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushBaiChuanUrl(tokenList, title, content, webUrl); + OPPOPushUtil.pushBaiChuanUrl(tokenList,content.getTitle(), content.getContent(), webUrl); } else if (type == PushTypeEnum.welfare) {// 绂忓埄涓績 - OPPOPushUtil.pushWelfareCenter(tokenList, title, content); + OPPOPushUtil.pushWelfareCenter(tokenList,content.getTitle(), content.getContent()); } else if (type == PushTypeEnum.signin) {// 绛惧埌 - OPPOPushUtil.pushUserSignInNotification(tokenList, title, content); + OPPOPushUtil.pushUserSignInNotification(tokenList, content.getTitle(), content.getContent()); } } catch (Exception e) { PushLogHelper.hwError(e); @@ -212,25 +209,25 @@ if (type == PushTypeEnum.goodsdetail) {// 鍟嗗搧璇︽儏 if (goodsId == null) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushGoods(tokenList, title, content, 1, goodsId); + OPPOPushUtil.pushGoods(tokenList, content.getTitle(), content.getContent(), 1, goodsId); } else if (type == PushTypeEnum.url) {// 閾炬帴 if (StringUtil.isNullOrEmpty(webUrl)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushUrl(tokenList, title, content, webUrl); + OPPOPushUtil.pushUrl(tokenList, content.getTitle(), content.getContent(), webUrl); } else if (type == PushTypeEnum.ZNX) {// 绔欏唴淇� - OPPOPushUtil.pushZNX(tokenList, title, content); + OPPOPushUtil.pushZNX(tokenList, content.getTitle(), content.getContent()); } else if (type == PushTypeEnum.weex) {// weex if (StringUtil.isNullOrEmpty(url)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushWEEX(tokenList, title, content, url); + OPPOPushUtil.pushWEEX(tokenList, content.getTitle(), content.getContent(), url); } else if (type == PushTypeEnum.baichuan) {// 鐧惧窛閾炬帴 if (StringUtil.isNullOrEmpty(webUrl)) throw new PushException(2, "鍙傛暟涓嶅畬鏁�"); - OPPOPushUtil.pushBaiChuanUrl(tokenList, title, content, webUrl); + OPPOPushUtil.pushBaiChuanUrl(tokenList, content.getTitle(), content.getContent(), webUrl); } else if (type == PushTypeEnum.welfare) {// 绂忓埄涓績 - OPPOPushUtil.pushWelfareCenter(tokenList, title, content); + OPPOPushUtil.pushWelfareCenter(tokenList, content.getTitle(), content.getContent()); } else if (type == PushTypeEnum.signin) {// 绛惧埌 - OPPOPushUtil.pushUserSignInNotification(tokenList, title, content); + OPPOPushUtil.pushUserSignInNotification(tokenList, content.getTitle(), content.getContent()); } } catch (Exception e) { PushLogHelper.oppoError(e); -- Gitblit v1.8.0