From a364fbab598a45842d4b38d156e8b5e55f9513ad Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 23 十一月 2019 14:35:54 +0800
Subject: [PATCH] 红包封禁 + 后台管理
---
fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java | 418 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 307 insertions(+), 111 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java
index 17b462c..d47608d 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java
@@ -6,21 +6,23 @@
import org.springframework.stereotype.Service;
-import com.yeshi.fanli.controller.admin.PushController;
import com.yeshi.fanli.dao.mybatis.AccountMessageMapper;
import com.yeshi.fanli.dao.mybatis.push.PushRecordMapper;
+import com.yeshi.fanli.dto.push.PushTypeEnum;
import com.yeshi.fanli.entity.AppVersionInfo;
import com.yeshi.fanli.entity.bus.user.AccountMessage;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.system.SystemZnx;
import com.yeshi.fanli.entity.xinge.PushRecord;
-import com.yeshi.fanli.exception.PushException;
+import com.yeshi.fanli.exception.push.PushException;
import com.yeshi.fanli.service.inter.config.AppVersionService;
import com.yeshi.fanli.service.inter.push.DeviceTokenHWService;
import com.yeshi.fanli.service.inter.push.HWPushService;
import com.yeshi.fanli.service.inter.push.IOSPushService;
+import com.yeshi.fanli.service.inter.push.OPPOPushService;
import com.yeshi.fanli.service.inter.push.PushRecordService;
import com.yeshi.fanli.service.inter.push.PushService;
+import com.yeshi.fanli.service.inter.push.VIVOPushService;
import com.yeshi.fanli.service.inter.push.XMPushService;
import com.yeshi.fanli.service.inter.user.SystemZnxService;
import com.yeshi.fanli.util.Constant;
@@ -56,17 +58,22 @@
private XMPushService xmPushService;
@Resource
+ private OPPOPushService oPPOPushService;
+
+ @Resource
+ private VIVOPushService vIVOPushService;
+
+ @Resource
private PushRecordMapper pushRecordMapper;
@Resource
private AccountMessageMapper accountMessageMapper;
-
+
@Resource
private AppVersionService appVersionService;
-
-
+
@Override
- public void pushGoods(Long uid, String url, String title, String content, List<String> listIOS,
+ public void pushGoods(Long uid, String title, String content, String url, List<String> listIOS,
List<String> listAndroid) throws PushException {
String gids = url.split("id=")[1];
String gid = gids.split("&")[0];
@@ -75,31 +82,53 @@
if (StringUtil.isNullOrEmpty(title))
throw new PushException(1, "璇峰~鍐欐帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
- throw new PushException(1, "璇峰~鍐欐帹閫佸唴瀹�");
-
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+ throw new PushException(1, "璇峰~鍐欐帹閫佸唴瀹�");
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushGoods(uid, Long.parseLong(gid), title, content, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushGoods(uid, Long.parseLong(gid), title, content, versions);
}
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushGoods(uid, Long.parseLong(gid), title, content, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushGoods(uid, Long.parseLong(gid), title, content, versionCodeList);
+ }
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushGoods(uid, Long.parseLong(gid), title, content, versionCodeList);
+ }
+
}
-
-
+
PushRecord pushRecord = new PushRecord();
+ pushRecord.setUid(uid);
pushRecord.setState(1);
- pushRecord.setType(PushController.GOODS); // 閮芥垚鍔�
+ pushRecord.setType(PushTypeEnum.goodsdetail.getCode()); // 閮芥垚鍔�
pushRecord.setUrl(url);
pushRecord.setTitle(title);
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
@@ -108,9 +137,8 @@
pushRecordMapper.insertSelective(pushRecord);
}
-
@Override
- public void pushUrl(Long uid, String url, String title, String content, List<String> listIOS,
+ public void pushUrl(Long uid, String title, String content, String url, List<String> listIOS,
List<String> listAndroid) throws PushException {
if (StringUtil.isNullOrEmpty(url))
@@ -119,31 +147,54 @@
throw new PushException(1, "鏃犳帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
throw new PushException(1, "鏃犳帹閫佸唴瀹�");
-
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushUrl(uid, url, title, content, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushUrl(uid, url, title, content, versions);
- hwPushService.pushUrl(uid, url, title, content, versions);
}
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushUrl(uid, url, title, content, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushUrl(uid, url, title, content, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushUrl(uid, url, title, content, versionCodeList);
+ }
+
}
-
-
+
PushRecord pushRecord = new PushRecord();
+ pushRecord.setUid(uid);
pushRecord.setState(1);
- pushRecord.setType(PushController.URL);
+ pushRecord.setType(PushTypeEnum.url.getCode());
pushRecord.setUrl(url);
pushRecord.setTitle(title);
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
@@ -151,10 +202,9 @@
pushRecordMapper.insertSelective(pushRecord);
}
-
@Override
- public void pushZNX(Long uId, String title, String content, List<String> listIOS,
- List<String> listAndroid) throws PushException {
+ public void pushZNX(Long uId, String title, String content, List<String> listIOS, List<String> listAndroid)
+ throws PushException {
if (StringUtil.isNullOrEmpty(title))
throw new PushException(1, "鏃犳帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
@@ -162,7 +212,7 @@
SystemZnx systemZnx = null;
AccountMessage accountMessage = null;
-
+
/* 鏃爑id , 骞挎挱 鏁版嵁鎻掑叆绯荤粺琛� */
if (uId == null || uId == 0) {
// 鎻掑叆鏁版嵁搴擄紙绯荤粺绔欏唴淇℃暟鎹級
@@ -180,40 +230,60 @@
accountMessage.setContent(content);
accountMessageMapper.insertSelective(accountMessage);
}
-
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushZNX(uId, accountMessage, systemZnx, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushZNX(uId, accountMessage, systemZnx, versions);
- hwPushService.pushZNX(uId, accountMessage, systemZnx, versions);
+ }
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushZNX(uId, title, content, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushZNX(uId, title, content, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushZNX(uId, title, content, versionCodeList);
}
}
-
-
+
// 鎻掑叆鎺ㄩ�佽褰�
PushRecord pushRecord = new PushRecord();
pushRecord.setUid(uId);
pushRecord.setTitle(title);
pushRecord.setState(1); // 鎴愬姛
- pushRecord.setType(PushController.ZNX); // 绫诲瀷锛氱珯鍐呬俊
+ pushRecord.setType(PushTypeEnum.ZNX.getCode()); // 绫诲瀷锛氱珯鍐呬俊
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
pushRecord.setCreatetime(java.lang.System.currentTimeMillis());
pushRecordMapper.insertSelective(pushRecord);
}
-
@Override
public void pushWEEX(Long uid, String title, String content, String weexUrl, List<String> listIOS,
List<String> listAndroid) throws PushException {
@@ -221,137 +291,202 @@
throw new PushException(1, "鏃犳帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
throw new PushException(1, "鏃犳帹閫佸唴瀹�");
-
+
// 閫傜敤鐗堟湰 1.4.8鍙婁互鍚� 鎺ㄩ�亀eex椤甸潰
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushWEEX(uid, title, content, weexUrl, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�31
- String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(0, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushWEEX(uid, title, content, weexUrl, versions);
}
}
-
-
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushWEEX(uid, title, content, weexUrl, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushWEEX(uid, title, content, weexUrl, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushWEEX(uid, title, content, weexUrl, versionCodeList);
+ }
+
// 鎻掑叆鎺ㄩ�佽褰�
PushRecord pushRecord = new PushRecord();
pushRecord.setTitle(title);
pushRecord.setUid(uid);
pushRecord.setState(1); // 鎴愬姛
- pushRecord.setType(PushController.WEEX); // 绫诲瀷锛歐EEX
+ pushRecord.setType(PushTypeEnum.weex.getCode()); // 绫诲瀷锛歐EEX
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
pushRecord.setCreatetime(java.lang.System.currentTimeMillis());
pushRecordMapper.insertSelective(pushRecord);
}
-
@Override
public void pushBaiChuanUrl(Long uid, String title, String content, String url, List<String> listIOS,
List<String> listAndroid) throws PushException {
-
+
if (StringUtil.isNullOrEmpty(title))
throw new PushException(1, "鏃犳帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
throw new PushException(1, "鏃犳帹閫佸唴瀹�");
-
+
// 閫傜敤鐗堟湰 1.4.8鍙婁互鍚� 鎺ㄩ�佺櫨宸濈綉椤�
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushBaiChuanUrl(uid, title, content, url, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�31
- String versions = getEffectiveVersions(31, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(31, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushBaiChuanUrl(uid, title, content, url, versions);
}
}
-
-
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushBaiChuanUrl(uid, title, content, url, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushBaiChuanUrl(uid, title, content, url, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushBaiChuanUrl(uid, title, content, url, versionCodeList);
+ }
+
// 鎻掑叆鎺ㄩ�佽褰�
PushRecord pushRecord = new PushRecord();
pushRecord.setUrl(url);
pushRecord.setTitle(title);
pushRecord.setUid(uid);
pushRecord.setState(1); // 鎴愬姛
- pushRecord.setType(PushController.BAICHUAN); // 绫诲瀷锛氱櫨宸�
+ pushRecord.setType(PushTypeEnum.baichuan.getCode()); // 绫诲瀷锛氱櫨宸�
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
pushRecord.setCreatetime(java.lang.System.currentTimeMillis());
pushRecordMapper.insertSelective(pushRecord);
}
-
@Override
public void pushWelfareCenter(Long uid, String title, String content, List<String> listIOS,
List<String> listAndroid) throws PushException {
-
+
if (StringUtil.isNullOrEmpty(title))
throw new PushException(1, "鏃犳帹閫佹爣棰�");
if (StringUtil.isNullOrEmpty(content))
throw new PushException(1, "鏃犳帹閫佸唴瀹�");
-
-
- /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listIOS == null || listIOS.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�0
- String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
- if(listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ String codes = getEffectiveVersionCodes(0, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
iosPushService.pushWelfareCenter(uid, title, content, codes);
}
}
-
- /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
if (listAndroid == null || listAndroid.size() > 0) {
// 闄愬埗鎺ㄩ�佺増鏈彿锛�36
- String versions = getEffectiveVersions(36, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
- if(listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ String versions = getEffectiveVersions(36, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
xmPushService.pushWelfareCenter(uid, title, content, versions);
}
}
-
-
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushWelfareCenter(uid, title, content, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushWelfareCenter(uid, title, content, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushWelfareCenter(uid, title, content, versionCodeList);
+ }
+
// 鎻掑叆鎺ㄩ�佽褰�
PushRecord pushRecord = new PushRecord();
pushRecord.setTitle(title);
pushRecord.setUid(uid);
pushRecord.setState(1); // 鎴愬姛
- pushRecord.setType(PushController.WELFARE_CENTER); // 绫诲瀷锛氱櫨宸�
+ pushRecord.setType(PushTypeEnum.welfare.getCode()); // 绫诲瀷锛氱櫨宸�
pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
pushRecord.setCreatetime(java.lang.System.currentTimeMillis());
pushRecordMapper.insertSelective(pushRecord);
}
-
-
/**
* 鏌ヨ鑳芥帹閫佺増鏈彿
+ *
* @param versionCode
* @param listVersion
* @return
*/
- private String getEffectiveVersions(int minCode, String type, List<String> listVersion) throws PushException{
-
+ private String getEffectiveVersions(int minCode, String type, List<String> listVersion) throws PushException {
+
if (minCode == 0 && listVersion == null) {
return null;
}
-
+
String versions = "";
if (listVersion == null) {
List<AppVersionInfo> list = appVersionService.listByPlatformAndMinVersionCode(type, minCode);
@@ -364,34 +499,34 @@
List<AppVersionInfo> list = appVersionService.listByVersions(type, listVersion);
if (list != null) {
for (AppVersionInfo appVersion : list) {
- Integer code = appVersion.getVersionCode();
+ Integer code = appVersion.getVersionCode();
if (code != null && code >= minCode) {
versions += appVersion.getVersion() + ",";
}
}
- }
+ }
}
-
+
if (versions.endsWith(",")) {
versions = versions.substring(0, versions.length() - 1);
}
-
+
return versions;
}
-
-
+
/**
* 鏌ヨ鑳芥帹閫佺増鏈彿code
+ *
* @param versionCode
* @param listVersion
* @return
*/
- private String getEffectiveVersionCodes(int minCode, String type, List<String> listVersion) throws PushException{
-
+ private String getEffectiveVersionCodes(int minCode, String type, List<String> listVersion) throws PushException {
+
if (minCode == 0 && listVersion == null) {
return null;
}
-
+
String versionCodes = "";
if (listVersion == null) {
List<AppVersionInfo> list = appVersionService.listByPlatformAndMinVersionCode(type, minCode);
@@ -404,19 +539,80 @@
List<AppVersionInfo> list = appVersionService.listByVersions(type, listVersion);
if (list != null) {
for (AppVersionInfo appVersion : list) {
- Integer code = appVersion.getVersionCode();
+ Integer code = appVersion.getVersionCode();
if (code != null && code >= minCode) {
versionCodes += appVersion.getVersionCode() + ",";
}
}
- }
+ }
}
-
+
if (versionCodes.endsWith(",")) {
versionCodes = versionCodes.substring(0, versionCodes.length() - 1);
}
-
+
return versionCodes;
}
-
+
+ @Override
+ public void pushUserSignInNotification(Long uid, String title, String content, List<String> listIOS,
+ List<String> listAndroid) throws PushException {
+ if (StringUtil.isNullOrEmpty(title))
+ throw new PushException(1, "鏃犳帹閫佹爣棰�");
+ if (StringUtil.isNullOrEmpty(content))
+ throw new PushException(1, "鏃犳帹閫佸唴瀹�");
+
+ /* IOS绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+ if (listIOS == null || listIOS.size() > 0) {
+ // 闄愬埗鎺ㄩ�佺増鏈彿锛�1.6.5浠ュ悗
+ String codes = getEffectiveVersionCodes(60, AppVersionInfo.PLATFORM_IOS, listIOS);
+ if (listIOS == null || (listIOS.size() > 0 && codes != null && codes.trim().length() > 0)) {
+ iosPushService.pushUserSignInNotification(uid, title, content, codes);
+ }
+ }
+
+ /* Android绔帹閫� (娉ㄦ槑锛歭ist绛変簬 'null' 鏃跺叏鎺紝 size绛変簬0 涓嶅仛鎺ㄩ��) */
+ if (listAndroid == null || listAndroid.size() > 0) {
+ // 闄愬埗鎺ㄩ�佺増鏈彿锛�1.6.5浠ュ悗
+ String versions = getEffectiveVersions(47, AppVersionInfo.PLATFORM_ANDROID, listAndroid);
+ if (listAndroid == null || (listAndroid.size() > 0 && versions != null && versions.trim().length() > 0)) {
+ xmPushService.pushUserSignInNotification(uid, title, content, versions);
+ }
+ }
+
+ // 鍗庝负鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ hwPushService.pushUserSignInNotification(uid, title, content, versionCodeList);
+ }
+
+ // OPPO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ oPPOPushService.pushUserSignInNotification(uid, title, content, versionCodeList);
+ }
+
+ // VIVO鎺ㄩ��
+ if (listAndroid == null || listAndroid.size() > 0) {
+ List<Integer> versionCodeList = null;
+ if (listAndroid != null)
+ versionCodeList = appVersionService.listVersionCodeByVersions("android", listAndroid);
+ vIVOPushService.pushUserSignInNotification(uid, title, content, versionCodeList);
+ }
+
+ // 鎻掑叆鎺ㄩ�佽褰�
+ PushRecord pushRecord = new PushRecord();
+ pushRecord.setTitle(title);
+ pushRecord.setUid(uid);
+ pushRecord.setState(1); // 鎴愬姛
+ pushRecord.setType(PushTypeEnum.signin.getCode()); // 绫诲瀷锛氱櫨宸�
+ pushRecord.setAppName(Constant.systemCommonConfig.getProjectChineseName());
+ pushRecord.setCreatetime(java.lang.System.currentTimeMillis());
+ pushRecordMapper.insertSelective(pushRecord);
+ }
+
}
--
Gitblit v1.8.0