| | |
| | | package com.yeshi.fanli.service.impl.push;
|
| | |
|
| | | import java.util.ArrayList;
|
| | | import java.util.List;
|
| | |
|
| | | import javax.annotation.Resource;
|
| | |
|
| | | import org.springframework.scheduling.annotation.Async;
|
| | | import org.springframework.stereotype.Service;
|
| | |
|
| | | import com.yeshi.fanli.dto.push.PushTypeEnum;
|
| | | import com.yeshi.fanli.entity.bus.user.AccountMessage;
|
| | | import com.yeshi.fanli.entity.push.DeviceTokenXM;
|
| | | 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.push.DeviceTokenXMService;
|
| | | import com.yeshi.fanli.service.inter.push.XMPushService;
|
| | | import com.yeshi.fanli.util.Constant;
|
| | | import com.yeshi.fanli.util.push.PushUtils;
|
| | |
| | |
|
| | | @Service
|
| | | public class XMPushServiceImpl implements XMPushService {
|
| | |
|
| | | @Resource
|
| | | private DeviceTokenXMService deviceTokenXMService;
|
| | |
|
| | | private List<String> getRegIds(Long uid) {
|
| | | List<DeviceTokenXM> list = deviceTokenXMService.listByUid(uid);
|
| | |
|
| | | List<String> regIds = new ArrayList<>();
|
| | | if (list != null)
|
| | | for (DeviceTokenXM token : list)
|
| | | regIds.add(token.getRegisterId());
|
| | | return regIds;
|
| | | }
|
| | |
|
| | | @Async("pushExecutor")
|
| | | @Override
|
| | |
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | // 小米 单推
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | contentJson.put("id", id);
|
| | |
|
| | | JSONObject json = new JSONObject();
|
| | | json.put("type",PushTypeEnum.ZNX.name());
|
| | | json.put("type", PushTypeEnum.ZNX.name());
|
| | | json.put("content", contentJson);
|
| | | json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
|
| | | Constant.systemCommonConfig.getAndroidBaseactivityName()));
|
| | | json.put("miPushUrl",
|
| | | String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName()));
|
| | |
|
| | | // 版本推送
|
| | | if (versions != null && versions.trim().length() > 0) {
|
| | |
| | | JSONObject json = new JSONObject();
|
| | | json.put("type", PushTypeEnum.ZNX.name());
|
| | | json.put("content", contentJson);
|
| | | json.put("miPushUrl", String.format("%s.ui.main.MainActivity",
|
| | | Constant.systemCommonConfig.getAndroidBaseactivityName()));
|
| | | json.put("miPushUrl",
|
| | | String.format("%s.ui.main.MainActivity", Constant.systemCommonConfig.getAndroidBaseactivityName()));
|
| | |
|
| | | // 版本推送
|
| | | if (versions != null && versions.trim().length() > 0) {
|
| | |
| | |
|
| | | // 小米 单推
|
| | | try {
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uId), pushRecord);
|
| | | } catch (Exception e) {
|
| | | PushLogHelper.xmError(e);
|
| | | }
|
| | |
| | | }
|
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | } else {
|
| | | info.setAlias(uid + "");
|
| | | PushUtils.singlePushXiaoMi(info, json, pushRecord);
|
| | | PushUtils.singlePushXiaoMi(info, json, getRegIds(uid), pushRecord);
|
| | | }
|
| | | }
|
| | |
|