admin
2019-08-26 6009c2c07cd32a76b32c8d63a5a017be695c5ea5
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/MsgDeviceReadStateServiceImpl.java
@@ -1,6 +1,7 @@
package com.yeshi.fanli.service.impl.msg;
import java.util.Date;
import java.util.List;
import javax.annotation.Resource;
@@ -30,15 +31,17 @@
   }
   @Override
   public void addUnreadDeviceMsg(String type, String device, int platform, int msgCount) {
   public void addUnreadDeviceMsg(String type, String device, int platform, int msgCount, String msg,Date msgTime) {
      MsgDeviceReadState state = msgDeviceReadStateMapper.selectByDeviceAndPlatformAndType(device, platform, type);
      if (state != null) {
         MsgDeviceReadState update = new MsgDeviceReadState();
         update.setId(state.getId());
         update.setUnReadCount(state.getUnReadCount() + msgCount);
         update.setUpdateTime(new Date());
         update.setLatestContent(msg);
         update.setLatestContentTime(msgTime);
         msgDeviceReadStateMapper.updateByPrimaryKeySelective(update);
      } else {//
      } else {
         state = new MsgDeviceReadState();
         state.setCreateTime(new Date());
         state.setDevice(device);
@@ -46,6 +49,8 @@
         state.setType(type);
         state.setUnReadCount(msgCount);
         state.setUpdateTime(new Date());
         state.setLatestContent(msg);
         state.setLatestContentTime(msgTime);
         msgDeviceReadStateMapper.insertSelective(state);
      }
   }
@@ -86,4 +91,22 @@
      }
   }
   @Override
   public int getUnReadCount(String device, int platform) {
      int totalCount = 0;
      List<MsgDeviceReadState> stateList = msgDeviceReadStateMapper.listByDeviceAndPlatform(device, platform);
      for (MsgDeviceReadState state : stateList) {
         totalCount += state.getUnReadCount();
      }
      return totalCount;
   }
   @Override
   public int getUnReadCount(String device, int platform, String type) {
      MsgDeviceReadState state = getByDeviceAndPlatformAndType(type, device, platform);
      if (state == null)
         return 0;
      return state.getUnReadCount() == null ? 0 : state.getUnReadCount();
   }
}