From aad0425e6a103b633aab4c36642cdd34e95ace62 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 26 八月 2019 09:40:41 +0800 Subject: [PATCH] 推送类型优化 --- fanli/src/main/java/com/yeshi/fanli/service/impl/push/PushServiceImpl.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 52 insertions(+), 6 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 3451cf8..0756848 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 @@ -9,6 +9,7 @@ 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; @@ -104,7 +105,7 @@ 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()); @@ -153,7 +154,7 @@ 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()); @@ -221,7 +222,7 @@ 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); @@ -268,7 +269,7 @@ 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); @@ -317,7 +318,7 @@ 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); @@ -363,7 +364,7 @@ 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); @@ -449,4 +450,49 @@ 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) { + // 闄愬埗鎺ㄩ�佺増鏈彿锛�0 + String codes = getEffectiveVersionCodes(0, 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) { + // 闄愬埗鎺ㄩ�佺増鏈彿锛�36 + String versions = getEffectiveVersions(36, 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); + } + + // 鎻掑叆鎺ㄩ�佽褰� + 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