diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/TbUserSingleAppController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/TbUserSingleAppController.java index 3ac9a6b4..249b4e83 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/TbUserSingleAppController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/TbUserSingleAppController.java @@ -95,7 +95,16 @@ public class TbUserSingleAppController { public Result> recommend(@RequestBody TbUserSingle tbUserSingle, @RequestParam("pageNum") int pageNum, @RequestParam("pageSize") int pageSize) { - PageHelper.startPage(pageNum, pageSize); + // 获取当前登陆人信息 + TbUserSingle userSingle = tbUserSingleService.lambdaQuery().eq(TbUserSingle::getUserId, tbUserSingle.getUserId()).one(); + Long notExcludeSex = tbUserSingle.getSex(); + // 查询当前人的不喜欢列表 + List tbUserBlocks = tbUserBlockService.lambdaQuery() + .eq(TbUserBlock::getTbUserId, userSingle.getUserId()).list(); + List blockIds = tbUserBlocks.stream().map(TbUserBlock::getBlockUserId).collect(Collectors.toList()); + + // -- 参数设置成null + tbUserSingle.setUserId(null); // 18 if(tbUserSingle.getAgeStart() != null){ Calendar calendar = DateUtil.calendar(new Date()); @@ -110,13 +119,23 @@ public class TbUserSingleAppController { // 1994 tbUserSingle.setBirthdayStart(calendar.getTime()); } + PageHelper.startPage(pageNum, pageSize); List list = tbUserSingleService.selectTbUserSingleList(tbUserSingle); + list = list.stream().filter(x->!blockIds.contains(x.getUserId())).collect(Collectors.toList()); list.forEach(model->{ if(model.getBirthday() != null){ model.setAge(DateUtil.ageOfNow(model.getBirthday())); } model.setMatchSay(tbMatchSingleSayService.lambdaQuery().eq(TbMatchSingleSay::getSingleId, model.getId()).one()); model.setTbUserImgList(tbUserImgService.lambdaQuery().eq(TbUserImg::getUserId, model.getUserId()).list()); + // 填充是否已经关注 + if(ObjectUtil.isNotEmpty(userSingle)){ + long count = tbUserFollowService.lambdaQuery().eq(TbUserFollow::getFollowUserId, model.getUserId()) + .eq(TbUserFollow::getUserId, userSingle.getUserId()).count(); + if(count > 0){ + model.setIsLike(true); + } + } }); return Result.success(PageInfo.of(list)); } @@ -129,14 +148,10 @@ public class TbUserSingleAppController { public Result> recommendForSingle(@RequestBody UserSingleRecommendReq recommendReq, @RequestParam("pageNum") int pageNum, @RequestParam("pageSize") int pageSize) { - Long notExcludeSex = null; + // 获取当前登陆人信息 TbUserSingle userSingle = tbUserSingleService.lambdaQuery().eq(TbUserSingle::getUserId, recommendReq.getUserId()).one(); - if(userSingle != null){ - notExcludeSex = userSingle.getSex(); - }else { - notExcludeSex = recommendReq.getSex(); - } + Long notExcludeSex = recommendReq.getSex(); // 查询当前人的不喜欢列表 List tbUserBlocks = tbUserBlockService.lambdaQuery() .eq(TbUserBlock::getTbUserId, userSingle.getUserId()).list();