admin
2019-05-16 4114e871bcb3dce771b6aed64a1027d0bbb95ca6
fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java
@@ -253,12 +253,6 @@
    */
   @RequestMapping(value = "getUnReadMsgCount", method = RequestMethod.POST)
   public void getUnReadMsgCount(AcceptData acceptData, Long uid, PrintWriter out) {
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult(1, "用户未登录"));
         return;
      }
      UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid);
      GsonBuilder androidBuilder = new GsonBuilder().registerTypeAdapter(Integer.class,
            new JsonSerializer<Integer>() {
               @Override
@@ -273,8 +267,42 @@
                  }
               }
            });
      if (uid == null) {
         // 如果用户未登录就读取设备消息
         UserMsgUnReadNum num = new UserMsgUnReadNum();
         num.setTypeAccount(0);
         num.setTypeInvite(0);
         num.setTypeMoney(0);
         num.setTypeOrder(0);
         num.setTypeOther(0);
         num.setTypeScore(0);
         num.setTypeSystem(0);
         JSONObject data = null;
         if ("android".equalsIgnoreCase(acceptData.getPlatform())) {
            data = JSONObject
                  .fromObject(androidBuilder.excludeFieldsWithoutExposeAnnotation().create().toJson(num));
         } else {
            data = JSONObject.fromObject(JsonUtil.getApiCommonGson().toJson(num));
         }
         data.put("totalCount", 0);
         try {
            UserSettingsVO vo = userCustomSettingsService.getMySettings(uid);
            if (vo != null && vo.getNoNewsRedDot() != null && vo.getNoNewsRedDot() == 1) {
               data.put("totalCount", 0);
            }
         } catch (UserCustomSettingsException e) {
            e.printStackTrace();
         }
         out.print(JsonUtil.loadTrueResult(data));
         return;
      }
      UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid);
      int totalCount = num.getTypeAccount() + num.getTypeInvite() + num.getTypeMoney() + num.getTypeOrder()
            + num.getTypeScore() + num.getTypeSystem() + num.getTypeOther();
      JSONObject data = null;
      if ("android".equalsIgnoreCase(acceptData.getPlatform())) {
         data = JSONObject.fromObject(androidBuilder.excludeFieldsWithoutExposeAnnotation().create().toJson(num));
@@ -565,10 +593,9 @@
      List<UserMsgCenter> listCenter = new ArrayList<>();
      // 单条消息
      List<UserCommonMsgVO> commonMsgList = new ArrayList<>();
      List<UserCommonMsgVO> commonMsgList = new ArrayList<>();
      long currentTime = System.currentTimeMillis();
      // 官宣任务
      if (uid != null) {
@@ -589,10 +616,7 @@
                     guanXuanMsg.getJumpDetail(), guanXuanMsg.getParams()));
         }
      }
      // 返利券小助手
      MsgCommonDTO zhuShouMsg = msgConfigService.getZhuShouMsg();
      if (zhuShouMsg != null) {
@@ -615,11 +639,11 @@
                  zhuShouMsg.getUpdateTime(), UserCommonMsgVO.TYPE_ZHUSHOU, zhuShouMsg.getContent(), read,
                  zhuShouMsg.getJumpDetail(), zhuShouMsg.getParams()));
      }
      //人工客服
      // 人工客服
      commonMsgList.add(new UserCommonMsgVO("http://img.flqapp.com/resource/msg/icon_kefu.png", "人工客服", new Date(),
            UserCommonMsgVO.TYPE_KEFU, "", false, null, null));
      // 推荐记录
      DeviceActive deviceActive = deviceActiveService.getDeviceByDeviceAndPlatform(acceptData.getDevice(),
            acceptData.getDevice(), acceptData.getPlatform());
@@ -629,7 +653,7 @@
         List<PushGoods> list = pushGoodsService.listHistoryByPushTime(0, 1, uid, createTime);
         if (list != null && list.size() > 0) {
            MsgDeviceReadState state = msgDeviceReadStateService.getByDeviceAndPlatformAndType(
                  UserCommonMsgVO.TYPE_ZHUSHOU, acceptData.getDevice(),
                  UserCommonMsgVO.TYPE_RECOMMEND, acceptData.getDevice(),
                  acceptData.getPlatform().equalsIgnoreCase("android") ? 1 : 2);
            boolean read = false;
            if (state != null && state.getReadTime() != null
@@ -850,6 +874,8 @@
   @RequestMapping(value = "setAllMsgRead", method = RequestMethod.POST)
   public void setAllMsgRead(AcceptData acceptData, Long uid, PrintWriter out) {
      msgDeviceReadStateService.setAllMsgRead(acceptData.getDevice(),
            "android".equalsIgnoreCase(acceptData.getPlatform()) ? 1 : 2);
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult(1, "用户未登录"));
         return;
@@ -903,7 +929,7 @@
         msgDeviceReadStateService.setDeviceMsgRead(UserCommonMsgVO.TYPE_RECOMMEND, acceptData.getDevice(),
               (acceptData.getPlatform().equalsIgnoreCase("android") ? 1 : 2));
      } else if (type.equalsIgnoreCase(UserCommonMsgVO.TYPE_ZHUSHOU)) {
         msgDeviceReadStateService.setDeviceMsgRead(UserCommonMsgVO.TYPE_RECOMMEND, acceptData.getDevice(),
         msgDeviceReadStateService.setDeviceMsgRead(UserCommonMsgVO.TYPE_ZHUSHOU, acceptData.getDevice(),
               (acceptData.getPlatform().equalsIgnoreCase("android") ? 1 : 2));
      }
      out.print(JsonUtil.loadTrueResult(""));