From 21a5d62894e6cca7d536ffcc1d63898ffaf16185 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 25 二月 2019 11:41:17 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java | 66 +++++++++++++++++++++++++-------- 1 files changed, 50 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 5e0f2c0..ab6b1e1 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 @@ -11,6 +11,7 @@ import java.util.Set; import javax.annotation.Resource; +import javax.servlet.http.HttpSession; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -53,6 +54,7 @@ import com.yeshi.fanli.service.inter.user.UserCustomSettingsService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.factory.CommonGoodsFactory; @@ -101,6 +103,9 @@ @Resource private UserCustomSettingsService userCustomSettingsService; + + @Resource + private RedisManager redisManager; // 娑堟伅鐨勭被鍨� final static String MSG_TYPE_ORDER = "order"; @@ -162,8 +167,13 @@ List<MsgInviteDetail> detailList3 = msgInviteDetailService.listMsgInviteDetail(uid, page); count = msgInviteDetailService.countMsgInviteDetail(uid); if (detailList3 != null) - for (MsgInviteDetail detail : detailList3) - list.add(UserMsgVOFactory.create(detail)); + for (MsgInviteDetail detail : detailList3) { + UserMsgVO vo = UserMsgVOFactory.create(detail); + if (vo != null) + list.add(vo); + else + count--; + } break; } @@ -331,7 +341,7 @@ * @param out */ @RequestMapping(value = "getHomeMsgList", method = RequestMethod.POST) - public void getHomeMsgList(AcceptData acceptData, Long uid, int page, PrintWriter out) { + public void getHomeMsgList(AcceptData acceptData, Long uid, int page, HttpSession session, PrintWriter out) { if (uid == null) { out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; @@ -345,22 +355,25 @@ canAdd = true; } else { // 鏄惁鍜屼笂娆¢棿闅旀椂闂磋冻澶� - if (System.currentTimeMillis() - goods.getCreateTime().getTime() >= 1000 * 60 * 60 * 8L) { + if (System.currentTimeMillis() - goods.getCreateTime().getTime() >= 1000 * 60 * 60 * 4L) { canAdd = true; } } - if (canAdd) { + String key = "recommend-goods-user-" + uid; + if (canAdd && StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { + redisManager.cacheCommonString(key, "1", 20); if (hour < 12) addRecommendGoods(uid); else addRecommendGoods(uid, acceptData.getImei(), acceptData.getIdfa()); + session.removeAttribute("recommendgoods"); } } List<UserHomeMsgVO> volist = new ArrayList<>(); List<RecommendUserGoods> list = recommendUserGoodsService.listRecommend(uid, page, Constant.PAGE_SIZE); - long count = recommendUserGoodsService.countRecommend(uid) + 1;// 璁$畻娆㈣繋璇殑鏁伴噺 + long count = recommendUserGoodsService.countRecommend(uid);// Date now = new Date(); for (RecommendUserGoods goods : list) { @@ -376,11 +389,17 @@ List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); for (CommonGoods cg : goods.getGoodsList()) { if (goods.getGoodsList().size() == 1) - cg.setPicture(TbImgUtil.getTBSizeImg(cg.getPicture(), 400)); + cg.setPicture(TbImgUtil.getTBSizeImg( + StringUtil.isNullOrEmpty(cg.getPictureWhite()) ? cg.getPicture() : cg.getPictureWhite(), + 400)); else if (goods.getGoodsList().size() == 2) - cg.setPicture(TbImgUtil.getTBSizeImg(cg.getPicture(), 320)); + cg.setPicture(TbImgUtil.getTBSizeImg( + StringUtil.isNullOrEmpty(cg.getPictureWhite()) ? cg.getPicture() : cg.getPictureWhite(), + 320)); else if (goods.getGoodsList().size() == 3) - cg.setPicture(TbImgUtil.getTBSizeImg(cg.getPicture(), 220)); + cg.setPicture(TbImgUtil.getTBSizeImg( + StringUtil.isNullOrEmpty(cg.getPictureWhite()) ? cg.getPicture() : cg.getPictureWhite(), + 220)); TaoBaoGoodsBrief tbGoods = new TaoBaoGoodsBrief(); if (cg.getCouponAmount() == null) tbGoods.setCouponAmount(new BigDecimal(0)); @@ -397,14 +416,21 @@ volist.add(vo); } + Long time = userInfoService.getUserById(uid).getCreatetime(); + if (time > TimeUtil.convertToTimeTemp("2019-01-28", "yyyy-MM-dd")) + count++;// 璁$畻娆㈣繋璇殑鏁伴噺 + if (volist.size() > 0 && volist.size() < Constant.PAGE_SIZE) { // 娣诲姞娆㈣繋璇� - UserHomeMsgVO vo = new UserHomeMsgVO(); - vo.setContent("鎭枩浣狅紝鎴愪负杩斿埄鍒哥殑鐢ㄦ埛\n鐙浼樻儬鍒稿府浣犵渷閽憋紱\n鍙備笌濂栭噾娲诲姩甯綘璧氶挶锛沑n璁╄繑鍒╁埜鎴愪负浣犵殑鐪侀挶鍔╂墜鍚э紒"); - vo.setTitle("鏂颁汉娆㈣繋"); - vo.setCreateTime(getTimeDesc(now, new Date(userInfoService.getUserById(uid).getCreatetime()))); - vo.setType(UserHomeMsgVO.TYPE_WELCOME); - volist.add(vo); + // 鍒涘缓鏃堕棿鍦�28鍙峰悗鐨勬墠鏈夋柊浜烘杩� + if (time > TimeUtil.convertToTimeTemp("2019-01-28", "yyyy-MM-dd")) { + UserHomeMsgVO vo = new UserHomeMsgVO(); + vo.setContent("鎭枩浣狅紝鎴愪负杩斿埄鍒哥殑鐢ㄦ埛\n鐙浼樻儬鍒稿府浣犵渷閽憋紱\n鍙備笌濂栭噾娲诲姩甯綘璧氶挶锛沑n璁╄繑鍒╁埜鎴愪负浣犵殑鐪侀挶鍔╂墜鍚э紒"); + vo.setTitle("鏂颁汉娆㈣繋"); + vo.setCreateTime(getTimeDesc(now, new Date(time))); + vo.setType(UserHomeMsgVO.TYPE_WELCOME); + volist.add(vo); + } } JSONObject root = new JSONObject(); @@ -491,7 +517,15 @@ out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); return; } - userMsgReadStateService.setAllMsgRead(uid); + + UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid); + int totalNum = num.getTypeAccount() + num.getTypeInvite() + num.getTypeMoney() + num.getTypeOrder() + + num.getTypeScore() + num.getTypeSystem(); + if (totalNum == 0) { + out.print(JsonUtil.loadFalseResult(1, "娌℃湁鏈娑堟伅")); + return; + } else + userMsgReadStateService.setAllMsgRead(uid); out.print(JsonUtil.loadTrueResult("")); } -- Gitblit v1.8.0