admin
2020-05-19 744594ef1a2f530fc3e86ea9dc48b62247f79420
fanli/src/main/java/com/yeshi/fanli/service/impl/push/DeviceTokenHWServiceImpl.java
@@ -6,6 +6,7 @@
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;
@@ -20,29 +21,32 @@
   private DeviceTokenHWMapper deviceTokenHWMapper;
   @Override
   public List<DeviceTokenHW> getDeviceTokenList(int page, int pageSize) {
      return deviceTokenHWMapper.selectList((page - 1) * pageSize, pageSize);
   public List<DeviceTokenHW> getDeviceTokenList(int page, int pageSize, List<Integer> versionList) {
      return deviceTokenHWMapper.selectList((page - 1) * pageSize, pageSize, versionList);
   }
   @Override
   public Long getDeviceTokenCount() {
      Long count = deviceTokenHWMapper.selectCount();
   public Long countDeviceToken(List<Integer> versionList) {
      Long count = deviceTokenHWMapper.selectCount(versionList);
      return count == null ? 0 : count;
   }
   @Transactional
   @Override
   public void addDeviceToken(String token, String device, Long uid) {
   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.selectByDevice(device);
      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));
@@ -51,8 +55,11 @@
         for (DeviceTokenHW deviceTokenHW : list) {
            DeviceTokenHW update = new DeviceTokenHW();
            update.setId(deviceTokenHW.getId());
            if (!StringUtil.isNullOrEmpty(token))
            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));
@@ -65,7 +72,7 @@
   public List<DeviceTokenHW> getDeviceTokenByUid(Long uid) {
      if (uid == null)
         return null;
      return deviceTokenHWMapper.selectByUid(uid);
      return deviceTokenHWMapper.selectByUid(uid, null);
   }
   @Override
@@ -80,4 +87,20 @@
      }
   }
   @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);
   }
}