From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 二月 2025 16:41:22 +0800 Subject: [PATCH] 淘宝转链接口更新 --- fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java | 189 ++++++++++++++++++++++++++-------------------- 1 files changed, 106 insertions(+), 83 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java index 5b03516..109115d 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java @@ -1,83 +1,106 @@ -package com.yeshi.fanli.service.impl.push; - -import java.util.Date; -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Service; - -import com.yeshi.fanli.dao.mybatis.push.DeviceTokenHWMapper; -import com.yeshi.fanli.entity.bus.user.UserInfo; -import com.yeshi.fanli.entity.push.DeviceTokenHW; -import com.yeshi.fanli.service.inter.push.DeviceTokenHWService; -import com.yeshi.fanli.util.StringUtil; - -@Service -public class DeviceTokenHWServiceImpl implements DeviceTokenHWService { - - @Resource - private DeviceTokenHWMapper deviceTokenHWMapper; - - @Override - public List<DeviceTokenHW> getDeviceTokenList(int page, int pageSize) { - return deviceTokenHWMapper.selectList((page - 1) * pageSize, pageSize); - } - - @Override - public Long getDeviceTokenCount() { - Long count = deviceTokenHWMapper.selectCount(); - return count == null ? 0 : count; - } - - @Override - public void addDeviceToken(String token, String device, Long uid) { - if (StringUtil.isNullOrEmpty(device)) - return; - // - if (uid != null && uid == 0) - uid = null; - - List<DeviceTokenHW> list = deviceTokenHWMapper.selectByDevice(device); - if (list == null || list.size() == 0) { - DeviceTokenHW deviceTokenHW = new DeviceTokenHW(); - deviceTokenHW.setDevice(device); - deviceTokenHW.setDeviceToken(token); - deviceTokenHW.setUpdateTime(new Date()); - if (uid != null) - deviceTokenHW.setUser(new UserInfo(uid)); - deviceTokenHWMapper.insertSelective(deviceTokenHW); - } else { - for (DeviceTokenHW deviceTokenHW : list) { - DeviceTokenHW update = new DeviceTokenHW(); - update.setId(deviceTokenHW.getId()); - if (!StringUtil.isNullOrEmpty(token)) - update.setDeviceToken(token); - update.setUpdateTime(new Date()); - if (uid != null) - update.setUser(new UserInfo(uid)); - deviceTokenHWMapper.updateByPrimaryKeySelective(update); - } - } - } - - @Override - public List<DeviceTokenHW> getDeviceTokenByUid(Long uid) { - if (uid == null) - return null; - return deviceTokenHWMapper.selectByUid(uid); - } - - @Override - public void unBindDeviceToken(String device) { - List<DeviceTokenHW> list = deviceTokenHWMapper.selectByDevice(device); - if (list == null || list.size() == 0) - return; - for (DeviceTokenHW deviceTokenHW : list) { - deviceTokenHW.setUser(null); - deviceTokenHW.setUpdateTime(new Date()); - deviceTokenHWMapper.updateByPrimaryKey(deviceTokenHW); - } - } - -} +package com.yeshi.fanli.service.impl.push; + +import java.util.Date; +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.yeshi.fanli.dao.mybatis.push.DeviceTokenHWMapper; +import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.push.DeviceTokenHW; +import com.yeshi.fanli.service.inter.push.DeviceTokenHWService; +import com.yeshi.fanli.util.StringUtil; + +@Service +public class DeviceTokenHWServiceImpl implements DeviceTokenHWService { + + @Resource + private DeviceTokenHWMapper deviceTokenHWMapper; + + @Override + public List<DeviceTokenHW> getDeviceTokenList(int page, int pageSize, List<Integer> versionList, Date minUpdateTime) { + return deviceTokenHWMapper.selectList((page - 1) * pageSize, pageSize, minUpdateTime, versionList); + } + + @Override + public Long countDeviceToken(List<Integer> versionList,Date minUpdateTime) { + Long count = deviceTokenHWMapper.selectCount(versionList,minUpdateTime); + return count == null ? 0 : count; + } + + @Transactional + @Override + public void addDeviceToken(String token, String device, Long uid, int version) { + if (StringUtil.isNullOrEmpty(device)) + return; + // + if (uid != null && uid == 0) + uid = null; + + List<DeviceTokenHW> list = deviceTokenHWMapper.selectByDeviceForUpdate(device); + if (list == null || list.size() == 0) { + DeviceTokenHW deviceTokenHW = new DeviceTokenHW(); + deviceTokenHW.setDevice(device); + deviceTokenHW.setDeviceToken(token); + deviceTokenHW.setDeviceTokenMd5(StringUtil.Md5(token)); + deviceTokenHW.setVersion(version); + deviceTokenHW.setUpdateTime(new Date()); + if (uid != null) + deviceTokenHW.setUser(new UserInfo(uid)); + deviceTokenHWMapper.insertSelective(deviceTokenHW); + } else { + for (DeviceTokenHW deviceTokenHW : list) { + DeviceTokenHW update = new DeviceTokenHW(); + update.setId(deviceTokenHW.getId()); + if (!StringUtil.isNullOrEmpty(token)) { + update.setDeviceToken(token); + update.setDeviceTokenMd5(StringUtil.Md5(token)); + update.setVersion(version); + } + update.setUpdateTime(new Date()); + if (uid != null) + update.setUser(new UserInfo(uid)); + deviceTokenHWMapper.updateByPrimaryKeySelective(update); + } + } + } + + @Override + public List<DeviceTokenHW> getDeviceTokenByUid(Long uid) { + if (uid == null) + return null; + return deviceTokenHWMapper.selectByUid(uid, null); + } + + @Override + public void unBindDeviceToken(String device) { + List<DeviceTokenHW> list = deviceTokenHWMapper.selectByDevice(device); + if (list == null || list.size() == 0) + return; + for (DeviceTokenHW deviceTokenHW : list) { + deviceTokenHW.setUser(null); + deviceTokenHW.setUpdateTime(new Date()); + deviceTokenHWMapper.updateByPrimaryKey(deviceTokenHW); + } + } + + @Override + public void bindUid(String device, Long uid) { + deviceTokenHWMapper.bindUidByDevice(uid, device); + } + + @Override + public List<DeviceTokenHW> getDeviceTokenByUid(Long uid, List<Integer> versionList) { + if (uid == null) + return null; + + if (versionList != null && versionList.size() == 0) + return null; + + return deviceTokenHWMapper.selectByUid(uid, versionList); + } + +} -- Gitblit v1.8.0