admin
2019-05-06 7f703a54a555334430e900941072f31e1c3b0210
fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java
@@ -43,12 +43,15 @@
import com.yeshi.fanli.entity.common.JumpDetailV2;
import com.yeshi.fanli.entity.goods.CommonGoods;
import com.yeshi.fanli.entity.goods.RecommendUserGoods;
import com.yeshi.fanli.entity.push.DeviceActive;
import com.yeshi.fanli.entity.push.PushGoods;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
import com.yeshi.fanli.exception.goods.CommonGoodsException;
import com.yeshi.fanli.exception.goods.RecommendUserGoodsException;
import com.yeshi.fanli.exception.msg.UserSystemMsgException;
import com.yeshi.fanli.exception.user.UserCustomSettingsException;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.BusinessSystemService;
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.goods.RecommendUserGoodsService;
@@ -61,6 +64,8 @@
import com.yeshi.fanli.service.inter.msg.MsgOtherDetailService;
import com.yeshi.fanli.service.inter.msg.UserMsgReadStateService;
import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
import com.yeshi.fanli.service.inter.push.DeviceActiveService;
import com.yeshi.fanli.service.inter.push.PushGoodsService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
@@ -70,6 +75,7 @@
import com.yeshi.fanli.util.factory.CommonGoodsFactory;
import com.yeshi.fanli.util.factory.msg.UserMsgVOFactory;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.msg.UserCommonMsgVO;
import com.yeshi.fanli.vo.msg.UserHomeMsgVO;
import com.yeshi.fanli.vo.msg.UserMsgCenter;
import com.yeshi.fanli.vo.msg.UserMsgVO;
@@ -125,6 +131,15 @@
   @Resource
   private SpecialService specialService;
   @Resource
   private JumpDetailV2Service jumpDetailV2Service;
   @Resource
   private PushGoodsService pushGoodsService;
   @Resource
   private DeviceActiveService deviceActiveService;
   // 消息的类型
   final static String MSG_TYPE_ORDER = "order";
@@ -539,6 +554,30 @@
      List<UserMsgCenter> listCenter = new ArrayList<>();
      // 单条消息
      List<UserCommonMsgVO> commonMsgList = new ArrayList<>();
      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());
      if (deviceActive != null) {
         // 设备注册时间
         Date createTime = deviceActive.getCreateTime();
         List<PushGoods> list = pushGoodsService.listHistoryByPushTime(0, 1, uid, createTime);
         if (list != null && list.size() > 0) {
            commonMsgList.add(new UserCommonMsgVO("http://img.flqapp.com/resource/msg/icon_recommend.png", "推荐记录",
                  list.get(0).getCreateTime(), UserCommonMsgVO.TYPE_RECOMMEND, list.get(0).getContent(), false,
                  jumpDetailV2Service.getByTypeCache("recommend_list"), null));
         }
      }
      //
      // list = pushGoodsService.listHistoryByPushTime(0, 1, uid, createTime);
      // 1、活动区域
      List<Special> listSpecial = specialService.listByPlaceKey("msg_activities");
      if (listSpecial != null && listSpecial.size() > 0) {
@@ -656,6 +695,7 @@
      }
      root.put("list", builder.create().toJson(listCenter));
      root.put("commonList", builder.create().toJson(commonMsgList));
      root.put("count", listCenter.size());
      out.print(JsonUtil.loadTrueResult(root));
   }
@@ -755,4 +795,29 @@
      out.print(JsonUtil.loadTrueResult(""));
   }
   /**
    * 阅读通用消息
    *
    * @param acceptData
    * @param uid
    * @param out
    */
   @RequestMapping(value = "readCommonMsg", method = RequestMethod.POST)
   public void readCommonMsg(AcceptData acceptData, Long uid, PrintWriter out) {
      if (uid == null) {
         out.print(JsonUtil.loadFalseResult(1, "用户未登录"));
         return;
      }
      UserMsgUnReadNum num = userMsgReadStateService.getReadStateByUid(uid);
      int totalNum = num.getTypeAccount() + num.getTypeInvite() + num.getTypeMoney() + num.getTypeOrder()
            + num.getTypeScore() + num.getTypeSystem() + num.getTypeOther();
      if (totalNum == 0) {
         out.print(JsonUtil.loadFalseResult(1, "没有未读消息"));
         return;
      } else
         userMsgReadStateService.setAllMsgRead(uid);
      out.print(JsonUtil.loadTrueResult(""));
   }
}