| | |
| | |
|
| | | @Resource
|
| | | private AppVersionService appVersionService;
|
| | | |
| | |
|
| | | @Resource
|
| | | private AdActivityVersionControlService adActivityVersionControlService;
|
| | | |
| | | |
| | |
|
| | | @Override
|
| | | public AppPageNotification getAppPageNotificationByType(String type) {
|
| | |
|
| | |
| | | @Cacheable(value = "configCache", key = "'getValidNotificationByTypeCache-'+#type+'-'+ #platform+'-'+#versionCode")
|
| | | @Override
|
| | | public AppPageNotification getValidNotificationByTypeCache(String type, String platform, Integer versionCode) {
|
| | | AppPageNotification record = appPageNotificationMapper.selectValidByType(type);
|
| | | if (record == null)
|
| | | List<AppPageNotification> recordList = appPageNotificationMapper.listValidByType(type);
|
| | | if (recordList == null || recordList.size() == 0)
|
| | | return null;
|
| | | |
| | |
|
| | | // 过滤版本
|
| | | AppVersionInfo app = appVersionService.getClientVersion(platform, versionCode);
|
| | | if (app == null) {
|
| | |
| | | }
|
| | | List<Long> versionIdList = new ArrayList<>();
|
| | | versionIdList.add(app.getId());
|
| | | |
| | |
|
| | | List<Long> sourceIdList = new ArrayList<>();
|
| | | sourceIdList.add(record.getId());
|
| | | for (AppPageNotification an : recordList)
|
| | | sourceIdList.add(an.getId());
|
| | | Set<Long> sourceIds = adActivityVersionControlService.filterSourceIdByVersion(sourceIdList,
|
| | | AdActivityType.notification, versionIdList);
|
| | | |
| | | if (!sourceIds.contains(record.getId())) {
|
| | | if (sourceIds == null || sourceIds.size() == 0)
|
| | | return null;
|
| | | long sourceId = sourceIds.iterator().next();
|
| | |
|
| | | for (AppPageNotification record : recordList) {
|
| | | if (record.getId().longValue() == sourceId)
|
| | | return record;
|
| | | }
|
| | | |
| | | return record;
|
| | | return null;
|
| | | }
|
| | | |
| | |
|
| | | @Override
|
| | | public void addAppPageNotification(AppPageNotification apn) throws Exception {
|
| | |
| | |
|
| | | @Override
|
| | | public void updateByPrimaryKey(AppPageNotification record) {
|
| | | appPageNotificationMapper.updateByPrimaryKey(record); |
| | | appPageNotificationMapper.updateByPrimaryKey(record);
|
| | | }
|
| | | |
| | |
|
| | | @Override
|
| | | public void updateByPrimaryKeySelective(AppPageNotification record) {
|
| | | appPageNotificationMapper.updateByPrimaryKeySelective(record); |
| | | appPageNotificationMapper.updateByPrimaryKeySelective(record);
|
| | | }
|
| | |
|
| | | @Override
|
| | |
| | | return appPageNotificationMapper.countQuery(key, show, canClose);
|
| | | }
|
| | |
|
| | | |
| | | @Transactional(rollbackFor = Exception.class)
|
| | | @Override
|
| | | public void setVersions(Long id, List<Long> versions) throws Exception {
|
| | |
| | | }
|
| | | }
|
| | | }
|
| | | |
| | |
|
| | | }
|