From 1e92eff67b997263ecefa255c63eb6641c47b57f Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 14 六月 2019 10:22:33 +0800 Subject: [PATCH] 设备消息BUG解决,品牌 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java | 72 +++++++++++++++++++++++++++++++----- 1 files changed, 62 insertions(+), 10 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java index 07aed3f..ddfb5db 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/UserMsgController.java @@ -76,6 +76,7 @@ import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; +import com.yeshi.fanli.util.VersionUtil; import com.yeshi.fanli.util.factory.CommonGoodsFactory; import com.yeshi.fanli.util.factory.msg.UserMsgVOFactory; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; @@ -292,7 +293,6 @@ data.put("totalCount", 0); } } catch (UserCustomSettingsException e) { - e.printStackTrace(); } out.print(JsonUtil.loadTrueResult(data)); @@ -302,6 +302,12 @@ int totalCount = num.getTypeAccount() + num.getTypeInvite() + num.getTypeMoney() + num.getTypeOrder() + num.getTypeScore() + num.getTypeSystem() + num.getTypeOther(); + + // 1.5.50鍙婁互鍚庣殑鐗堟湰闇�瑕佹坊鍔犺澶囨湭璇绘秷鎭� + if (VersionUtil.greaterThan_1_5_50(acceptData.getPlatform(), acceptData.getVersion())) { + totalCount += msgDeviceReadStateService.getUnReadCount(acceptData.getDevice(), + "android".equalsIgnoreCase(acceptData.getPlatform()) ? 1 : 2, MsgDeviceReadState.TYPE_KEFU); + } JSONObject data = null; if ("android".equalsIgnoreCase(acceptData.getPlatform())) { @@ -576,6 +582,35 @@ out.print(JsonUtil.loadTrueResult(root)); } + private UserCommonMsgVO getKeFuMsg(AcceptData acceptData) { + MsgDeviceReadState kefuState = msgDeviceReadStateService.getByDeviceAndPlatformAndType( + UserCommonMsgVO.TYPE_KEFU, acceptData.getDevice(), + acceptData.getPlatform().equalsIgnoreCase("android") ? 1 : 2); + // 浜哄伐瀹㈡湇 + UserCommonMsgVO vo = new UserCommonMsgVO("http://img.flqapp.com/resource/msg/icon_kefu.png", "浜哄伐瀹㈡湇", new Date(), + UserCommonMsgVO.TYPE_KEFU, "", false, null, null, 0); + if (kefuState != null) { + vo.setUnReadCount(kefuState.getUnReadCount() == null ? 0 : kefuState.getUnReadCount()); + if (!StringUtil.isNullOrEmpty(kefuState.getLatestContent())) + vo.setLatestMsg(kefuState.getLatestContent()); + + if (vo.getUnReadCount() != null && vo.getUnReadCount() > 0) + vo.setRead(false); + else + vo.setRead(true); + + if (kefuState.getLatestContentTime() != null) + vo.setTime(kefuState.getLatestContentTime()); + + } else + vo.setRead(true); + + if(StringUtil.isNullOrEmpty(vo.getLatestMsg())) + vo.setLatestMsg("[鐐瑰嚮鎵撳紑浜哄伐瀹㈡湇]"); + + return vo; + } + /** * 鑾峰彇娑堟伅鍒楄〃 * @@ -600,7 +635,7 @@ // 瀹樺浠诲姟 if (uid != null) { MsgCommonDTO guanXuanMsg = msgConfigService.getGuanXuanMsg(); - if (guanXuanMsg != null) { + if (guanXuanMsg != null && guanXuanMsg.getShow() == true) { boolean read = false; UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid); if (num != null && (num.getGuanXuanReadTime() != null @@ -613,16 +648,14 @@ } else commonMsgList.add(new UserCommonMsgVO(guanXuanMsg.getIcon(), guanXuanMsg.getTitle(), guanXuanMsg.getUpdateTime(), UserCommonMsgVO.TYPE_GUANXUAN, guanXuanMsg.getContent(), read, - guanXuanMsg.getJumpDetail(), guanXuanMsg.getParams())); + guanXuanMsg.getJumpDetail(), guanXuanMsg.getParams(), 0)); } } // 杩斿埄鍒稿皬鍔╂墜 MsgCommonDTO zhuShouMsg = msgConfigService.getZhuShouMsg(); - if (zhuShouMsg != null) { - + if (zhuShouMsg != null && zhuShouMsg.getShow() == true) { boolean read = false; - MsgDeviceReadState state = msgDeviceReadStateService.getByDeviceAndPlatformAndType( UserCommonMsgVO.TYPE_ZHUSHOU, acceptData.getDevice(), acceptData.getPlatform().equalsIgnoreCase("android") ? 1 : 2); @@ -637,12 +670,11 @@ } else commonMsgList.add(new UserCommonMsgVO(zhuShouMsg.getIcon(), zhuShouMsg.getTitle(), zhuShouMsg.getUpdateTime(), UserCommonMsgVO.TYPE_ZHUSHOU, zhuShouMsg.getContent(), read, - zhuShouMsg.getJumpDetail(), zhuShouMsg.getParams())); + zhuShouMsg.getJumpDetail(), zhuShouMsg.getParams(), 0)); } // 浜哄伐瀹㈡湇 - commonMsgList.add(new UserCommonMsgVO("http://img.flqapp.com/resource/msg/icon_kefu.png", "浜哄伐瀹㈡湇", new Date(), - UserCommonMsgVO.TYPE_KEFU, "", false, null, null)); + commonMsgList.add(getKeFuMsg(acceptData)); // 鎺ㄨ崘璁板綍 DeviceActive deviceActive = deviceActiveService.getDeviceByDeviceAndPlatform(acceptData.getDevice(), @@ -662,7 +694,7 @@ commonMsgList.add(new UserCommonMsgVO("http://img.flqapp.com/resource/msg/icon_recommend.png", "鎺ㄨ崘璁板綍", list.get(0).getCreateTime(), UserCommonMsgVO.TYPE_RECOMMEND, list.get(0).getContent(), read, - jumpDetailV2Service.getByTypeCache("recommend_list"), null)); + jumpDetailV2Service.getByTypeCache("recommend_list"), null, 0)); } } @@ -935,4 +967,24 @@ out.print(JsonUtil.loadTrueResult("")); } + /** + * 涓婁紶鏈�杩戠殑瀹㈡湇娑堟伅 + * + * @param acceptData + * @param content + * @param time + * @param out + */ + @RequestMapping(value = "uploadLatestKeFuMsg", method = RequestMethod.POST) + public void uploadLatestKeFuMsg(AcceptData acceptData, String content, Long datetime, PrintWriter out) { + + if (StringUtil.isNullOrEmpty(content) || datetime == null) { + out.print(JsonUtil.loadFalseResult("鍙傛暟涓嶅畬鏁�")); + return; + } + msgDeviceReadStateService.addUnreadDeviceMsg(MsgDeviceReadState.TYPE_KEFU, acceptData.getDevice(), + "android".equalsIgnoreCase(acceptData.getPlatform()) ? 1 : 2, 0, content, new Date(datetime)); + out.print(JsonUtil.loadTrueResult("")); + } + } -- Gitblit v1.8.0