From 403ed72427bf91a8cdd5dcbd188dd417ec8b7623 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 15 五月 2019 10:47:40 +0800 Subject: [PATCH] 动态商品更新优化 --- fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java | 60 ++++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 44 insertions(+), 16 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java index f726cf6..bc3f4fa 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java @@ -253,12 +253,8 @@ */ @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); - + int deviceCount = msgDeviceReadStateService.getUnReadCount(acceptData.getDevice(), + "android".equalsIgnoreCase(acceptData.getPlatform()) ? 1 : 2); GsonBuilder androidBuilder = new GsonBuilder().registerTypeAdapter(Integer.class, new JsonSerializer<Integer>() { @Override @@ -273,8 +269,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", deviceCount); + + 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(); + + num.getTypeScore() + num.getTypeSystem() + num.getTypeOther() + deviceCount; + JSONObject data = null; if ("android".equalsIgnoreCase(acceptData.getPlatform())) { data = JSONObject.fromObject(androidBuilder.excludeFieldsWithoutExposeAnnotation().create().toJson(num)); @@ -565,10 +595,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 +618,7 @@ guanXuanMsg.getJumpDetail(), guanXuanMsg.getParams())); } } - - - - + // 杩斿埄鍒稿皬鍔╂墜 MsgCommonDTO zhuShouMsg = msgConfigService.getZhuShouMsg(); if (zhuShouMsg != null) { @@ -615,11 +641,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()); @@ -850,6 +876,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; -- Gitblit v1.8.0