diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/recent/vo/OperationRespVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/recent/vo/OperationRespVO.java index 6dc3e91..ce0f003 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/recent/vo/OperationRespVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/recent/vo/OperationRespVO.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.member.controller.admin.recent.vo; +import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.module.member.service.user.BO.MemberExtBO; import cn.iocoder.yudao.module.member.service.user.BO.MemberTagExtBO; import io.swagger.v3.oas.annotations.media.Schema; @@ -16,8 +17,8 @@ import com.alibaba.excel.annotation.*; @ExcelIgnoreUnannotated public class OperationRespVO { - @Schema(description = "收件地址编号", requiredMode = Schema.RequiredMode.REQUIRED) - @ExcelProperty("收件地址编号") + @Schema(description = "操作id", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("操作id") private Long id; @Schema(description = "操作用户编号", requiredMode = Schema.RequiredMode.REQUIRED) diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/ViewRecordController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/ViewRecordController.java index a6336e1..e4995d1 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/ViewRecordController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/ViewRecordController.java @@ -12,24 +12,16 @@ import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Operation; -import javax.validation.constraints.*; import javax.validation.*; import javax.servlet.http.*; import java.util.*; -import java.io.IOException; -import cn.iocoder.yudao.framework.common.pojo.PageParam; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; -import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; - -import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; - -import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*; import cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo.*; import cn.iocoder.yudao.module.member.dal.dataobject.viewrecord.ViewRecordDO; @@ -71,28 +63,17 @@ public class ViewRecordController { @Operation(summary = "获得用户查看记录") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('member:view-record:query')") - public CommonResult getViewRecord(@RequestParam("id") Long id) { + public CommonResult getViewRecord(@RequestParam("id") Long id) { ViewRecordDO viewRecord = viewRecordService.getViewRecord(id); - return success(BeanUtils.toBean(viewRecord, ViewRecordRespVO.class)); + return success(BeanUtils.toBean(viewRecord, ViewRecordPageRespVO.class)); } @GetMapping("/page") @Operation(summary = "获得用户查看记录分页") @PreAuthorize("@ss.hasPermission('member:view-record:query')") - public CommonResult> getViewRecordPage(@Valid ViewRecordPageReqVO pageReqVO) { + public CommonResult> getViewRecordPage(@Valid ViewRecordPageRespVO pageReqVO) { PageResult pageResult = viewRecordService.getViewRecordPage(pageReqVO); - return success(BeanUtils.toBean(pageResult, ViewRecordRespVO.class)); - } - - @GetMapping("/export-excel") - @Operation(summary = "导出用户查看记录 Excel") - @PreAuthorize("@ss.hasPermission('member:view-record:export')") - @ApiAccessLog(operateType = EXPORT) - public void exportViewRecordExcel(@Valid ViewRecordPageReqVO pageReqVO, HttpServletResponse response) throws IOException { - pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); - List list = viewRecordService.getViewRecordPage(pageReqVO).getList(); - // 导出 Excel - ExcelUtils.write(response, "用户查看记录.xls", "数据", ViewRecordRespVO.class, BeanUtils.toBean(list, ViewRecordRespVO.class)); + return success(BeanUtils.toBean(pageResult, ViewRecordPageRespVO.class)); } } \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageReqVO.java deleted file mode 100644 index 8b00702..0000000 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageReqVO.java +++ /dev/null @@ -1,69 +0,0 @@ -package cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo; - -import lombok.*; - -import io.swagger.v3.oas.annotations.media.Schema; -import cn.iocoder.yudao.framework.common.pojo.PageParam; -import org.springframework.format.annotation.DateTimeFormat; - -import java.time.LocalDateTime; - -import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; - -@Schema(description = "管理后台 - 用户查看记录分页 Request VO") -@Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) -public class ViewRecordPageReqVO extends PageParam { - - @Schema(description = "用户编号", example = "11805") - private Long memberId; - - @Schema(description = "查询分类、查看朋友圈", example = "1") - private String bizType; - - @Schema(description = "查询分类、查看朋友圈", example = "9753") - private Long bizId; - - @Schema(description = "查看的标题") - private String title; - - @Schema(description = "开始查看时间") - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) - private LocalDateTime[] viewStartTime; - - @Schema(description = "结束查看时间") - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) - private LocalDateTime[] viewEndTime; - - @Schema(description = "查看时间(秒)") - private Integer viewSecond; - - @Schema(description = "创建时间") - @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) - private LocalDateTime[] createTime; - - private ViewRecordPageReqVO.MemberVo member; - /** - * 用户相关 - */ - @Data - public static class MemberVo { - - @Schema(description = "用户编号") - private Long memberId; - - @Schema(description = "用户头像") - private String memberAvatar; - - @Schema(description = "用户昵称") - private String memberNickname; - - @Schema(description = "用户年龄") - private String memberAge; - - @Schema(description = "用户职业") - private String memberOcc; - } - -} \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordRespVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageRespVO.java similarity index 93% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordRespVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageRespVO.java index e81dced..0242f43 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordRespVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/viewrecord/vo/ViewRecordPageRespVO.java @@ -1,16 +1,16 @@ package cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo; +import cn.iocoder.yudao.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; -import java.util.*; -import org.springframework.format.annotation.DateTimeFormat; + import java.time.LocalDateTime; import com.alibaba.excel.annotation.*; @Schema(description = "管理后台 - 用户查看记录 Response VO") @Data @ExcelIgnoreUnannotated -public class ViewRecordRespVO { +public class ViewRecordPageRespVO extends PageParam { @Schema(description = "收件地址编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "7112") @ExcelProperty("收件地址编号") diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/AppRecentController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/AppRecentController.java index 1fcb4db..b9e6d75 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/AppRecentController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/AppRecentController.java @@ -7,13 +7,13 @@ import cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO import cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationTotalGroupRecentRespVO; import cn.iocoder.yudao.module.member.controller.admin.recent.vo.RecentPageResVo; import cn.iocoder.yudao.module.member.controller.admin.recent.vo.RecentSaveReqVO; -import cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo.ViewRecordPageReqVO; import cn.iocoder.yudao.module.member.controller.app.recent.vo.*; import cn.iocoder.yudao.module.member.enums.MemberRecentSceneEnum; import cn.iocoder.yudao.module.member.service.recent.RecentService; import cn.iocoder.yudao.module.member.service.recent.ViewRecordService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import org.apache.ibatis.annotations.Delete; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -79,42 +79,59 @@ public class AppRecentController { @PostMapping("/like/it-page") @Operation(summary = "我喜欢-分页查询") public CommonResult> likeItPage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + dto.setOperationMemberId(getLoginUserId()); return success(recentService.likeItPage(dto)); } @PostMapping("/like/me-page") @Operation(summary = "喜欢我-分页查询") public CommonResult> likeMePage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + dto.setOperationMemberId(getLoginUserId()); return success(recentService.likeMePage(dto)); } + @GetMapping("/black/list") + @Operation(summary = "黑名单列表") + public CommonResult> blackList() { + AppRecentLikeReqVo dto = new AppRecentLikeReqVo(); + dto.setOperationMemberId(getLoginUserId()); + return success(recentService.blackList(dto)); + } + + @DeleteMapping("/black/remove") + @Operation(summary = "移除黑名单") + public CommonResult blackRemove(@RequestParam Long id) { + AppRecentLikeReqVo dto = new AppRecentLikeReqVo(); + dto.setOperationMemberId(getLoginUserId()); + dto.setOperationId(id); + return success(recentService.blackRemove(dto)); + } + @PostMapping("/look/it-page") @Operation(summary = "我看过-分页查询") - public CommonResult> lookItMePage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + public CommonResult> lookItMePage(@Valid @RequestBody AppRecentLikeReqVo dto) { + dto.setOperationMemberId(getLoginUserId()); return success(viewRecordService.lookItMePage(dto)); } @PostMapping("/look/me-page") @Operation(summary = "看过我-分页查询") - public CommonResult> lookMePage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + public CommonResult> lookMePage(@Valid @RequestBody AppRecentLikeReqVo dto) { + dto.setOperationMemberId(getLoginUserId()); return success(viewRecordService.lookMePage(dto)); } @PostMapping("/dynamic-page") @Operation(summary = "我的动态") public CommonResult> dynamicPage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + dto.setOperationMemberId(getLoginUserId()); return success(recentService.dynamicPage(dto)); } @PostMapping("/evaluate-page") @Operation(summary = "我的评价") - public CommonResult> evaluatePage(@Valid @RequestBody AppRecentLikeReqVo dto) { - dto.setMemberId(getLoginUserId()); + public CommonResult> evaluatePage(@Valid @RequestBody AppRecentLikeReqVo dto) { + dto.setOperationMemberId(getLoginUserId()); return success(recentService.evaluatePage(dto)); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/vo/AppRecentLikeReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/vo/AppRecentLikeReqVo.java index 2c212c7..bde1799 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/vo/AppRecentLikeReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/recent/vo/AppRecentLikeReqVo.java @@ -8,6 +8,9 @@ import lombok.Data; public class AppRecentLikeReqVo extends PageParam { @Schema(description = "操作用户标号") - private Long memberId; + private Long operationMemberId; + + @Schema(description = "操作id") + private Long operationId; } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/viewrecord/ViewRecordMapper.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/viewrecord/ViewRecordMapper.java index 5c1a8b1..a11f80f 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/viewrecord/ViewRecordMapper.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/viewrecord/ViewRecordMapper.java @@ -1,7 +1,5 @@ package cn.iocoder.yudao.module.member.dal.mysql.viewrecord; -import java.util.*; - import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; @@ -17,16 +15,13 @@ import cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo.*; @Mapper public interface ViewRecordMapper extends BaseMapperX { - default PageResult selectPage(ViewRecordPageReqVO reqVO) { + default PageResult selectPage(ViewRecordPageRespVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(ViewRecordDO::getMemberId, reqVO.getMemberId()) .eqIfPresent(ViewRecordDO::getBizType, reqVO.getBizType()) .eqIfPresent(ViewRecordDO::getBizId, reqVO.getBizId()) .eqIfPresent(ViewRecordDO::getTitle, reqVO.getTitle()) - .betweenIfPresent(ViewRecordDO::getViewStartTime, reqVO.getViewStartTime()) - .betweenIfPresent(ViewRecordDO::getViewEndTime, reqVO.getViewEndTime()) .eqIfPresent(ViewRecordDO::getViewSecond, reqVO.getViewSecond()) - .betweenIfPresent(ViewRecordDO::getCreateTime, reqVO.getCreateTime()) .orderByDesc(ViewRecordDO::getId)); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentService.java index ebe82be..446ed77 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentService.java @@ -60,12 +60,22 @@ public interface RecentService { /** * 我喜欢-分页查询 */ - PageResult likeItPage(@Valid AppRecentLikeReqVo dto); + PageResult likeItPage(@Valid AppRecentLikeReqVo dto); /** * 喜欢我-分页查询 */ - PageResult likeMePage(@Valid AppRecentLikeReqVo dto); + PageResult likeMePage(@Valid AppRecentLikeReqVo dto); + + /** + * 黑名单列表 + */ + PageResult blackList(@Valid AppRecentLikeReqVo dto); + + /** + * 移除黑名单 + */ + Boolean blackRemove(AppRecentLikeReqVo dto); /** * 我的动态 @@ -75,7 +85,7 @@ public interface RecentService { /** * 我的评价 */ - PageResult evaluatePage(@Valid AppRecentLikeReqVo dto); + PageResult evaluatePage(@Valid AppRecentLikeReqVo dto); /** * 我的评价总分数详情 diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentServiceImpl.java index 3f27f65..a0a0ece 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/RecentServiceImpl.java @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.member.service.recent; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.IterUtil; import cn.hutool.core.util.ObjectUtil; +import cn.iocoder.yudao.framework.common.exception.ErrorCode; import cn.iocoder.yudao.framework.common.util.number.NumberUtils; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; import cn.iocoder.yudao.module.member.api.thirdauth.ThirdAuthVo; @@ -16,6 +17,7 @@ import cn.iocoder.yudao.module.member.dal.dataobject.recent.OperationDO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import cn.iocoder.yudao.module.member.dal.mysql.recent.OperationMapper; import cn.iocoder.yudao.module.member.dal.mysql.user.MemberRecentTagMapper; +import cn.iocoder.yudao.module.member.enums.ErrorCodeConstants; import cn.iocoder.yudao.module.member.enums.MemberErrorCode; import cn.iocoder.yudao.module.member.enums.MemberRecentOperateEnum; import cn.iocoder.yudao.module.member.enums.MemberRecentSceneEnum; @@ -354,11 +356,11 @@ public class RecentServiceImpl implements RecentService { * 我喜欢-分页查询 */ @Override - public PageResult likeItPage(AppRecentLikeReqVo dto) { - PageResult resultPageList = new PageResult<>(); + public PageResult likeItPage(AppRecentLikeReqVo dto) { + PageResult resultPageList = new PageResult<>(); // 查询我喜欢 PageResult pageList = operationMapper.selectPage(dto, new LambdaQueryWrapperX() - .eq(OperationDO::getOperatorMemberId, dto.getMemberId()) + .eq(OperationDO::getOperatorMemberId, dto.getOperationMemberId()) .eq(OperationDO::getBizType, MemberRecentOperateEnum.MEMBER_COLLECT.getType()) .isNull(OperationDO::getCancelTime) .orderByDesc(OperationDO::getTapTime) @@ -366,7 +368,7 @@ public class RecentServiceImpl implements RecentService { ); List list = pageList.getList(); if (ObjectUtil.isEmpty(list)) return resultPageList; - List resultList = BeanUtils.toBean(list, OperationRespVO.class); + List resultList = BeanUtils.toBean(list, cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO.class); // 为OperationRespVO设置Member信息 convertOperationRespVOSetupMember(resultList); convertOperationRespVOSetupTagList(resultList); @@ -379,10 +381,10 @@ public class RecentServiceImpl implements RecentService { * 喜欢我-分页查询 */ @Override - public PageResult likeMePage(AppRecentLikeReqVo dto) { + public PageResult likeMePage(AppRecentLikeReqVo dto) { // 查询我喜欢 PageResult pageList = operationMapper.selectPage(dto, new LambdaQueryWrapperX() - .eq(OperationDO::getMemberId, dto.getMemberId()) + .eq(OperationDO::getMemberId, dto.getOperationMemberId()) .eq(OperationDO::getBizType, MemberRecentOperateEnum.MEMBER_COLLECT.getType()) .isNull(OperationDO::getCancelTime) .orderByDesc(OperationDO::getTapTime) @@ -390,13 +392,45 @@ public class RecentServiceImpl implements RecentService { ); List list = pageList.getList(); if (ObjectUtil.isEmpty(list)) return new PageResult<>(); - List resultList = BeanUtils.toBean(list, OperationRespVO.class); + List resultList = BeanUtils.toBean(list, cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO.class); // 为OperationRespVO设置Member信息 convertOperationRespVOSetupMember(resultList); convertOperationRespVOSetupTagList(resultList); return new PageResult<>(resultList, pageList.getTotal()); } + /** + * 黑名单列表 + */ + @Override + public PageResult blackList(AppRecentLikeReqVo dto) { + // 查询黑名单 + PageResult pageList = operationMapper.selectPage(dto, new LambdaQueryWrapperX() + .eq(OperationDO::getOperatorMemberId, dto.getOperationMemberId()) + .eq(OperationDO::getBizType, MemberRecentOperateEnum.MEMBER_SHIELD.getType()) + .isNull(OperationDO::getCancelTime) + .orderByDesc(OperationDO::getTapTime) + .orderByDesc(OperationDO::getId) + ); + List list = pageList.getList(); + if (ObjectUtil.isEmpty(list)) return new PageResult<>(); + List resultList = BeanUtils.toBean(list, cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO.class); + // 为OperationRespVO设置Member信息 + convertOperationRespVOSetupMember(resultList); + convertOperationRespVOSetupTagList(resultList); + return new PageResult<>(resultList, pageList.getTotal()); + } + + /** + * 移除黑名单 + */ + @Override + public Boolean blackRemove(AppRecentLikeReqVo dto) { + OperationDO operationDO = operationMapper.selectById(dto.getOperationId()); + if (ObjectUtil.isEmpty(operationDO)) throw exception(MemberErrorCode.EMPTY, "黑名单不存在"); + return operationMapper.deleteById(operationDO) > 0; + } + /** * 我的动态 */ @@ -417,10 +451,10 @@ public class RecentServiceImpl implements RecentService { * 我的评价 */ @Override - public PageResult evaluatePage(AppRecentLikeReqVo dto) { + public PageResult evaluatePage(AppRecentLikeReqVo dto) { // 我的评价 PageResult pageList = operationMapper.selectPage(dto, new LambdaQueryWrapperX() - .eq(OperationDO::getOperatorMemberId, dto.getMemberId()) + .eq(OperationDO::getOperatorMemberId, dto.getOperationMemberId()) .eq(OperationDO::getBizType, MemberRecentOperateEnum.MEMBER_RATING.getType()) .isNull(OperationDO::getCancelTime) .orderByDesc(OperationDO::getTapTime) @@ -428,7 +462,7 @@ public class RecentServiceImpl implements RecentService { ); List list = pageList.getList(); if (ObjectUtil.isEmpty(list)) return new PageResult<>(); - List resultList = BeanUtils.toBean(list, OperationRespVO.class); + List resultList = BeanUtils.toBean(list, cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO.class); // 为OperationRespVO设置Member信息 convertOperationRespVOSetupMember(resultList); @@ -614,23 +648,23 @@ public class RecentServiceImpl implements RecentService { /** * 为OperationRespVO设置Member信息 */ - private void convertOperationRespVOSetupMember(List list) { + private void convertOperationRespVOSetupMember(List list) { if (ObjectUtil.isEmpty(list)) return; - List memberIds = list.stream().map(OperationRespVO::getMemberId).collect(Collectors.toList()); + List memberIds = list.stream().map(cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO::getMemberId).collect(Collectors.toList()); List memberList = memberUserService.getUserExtList(memberIds); Map memberMap = IterUtil.toMap(memberList, MemberExtBO::getMemberId); - for (OperationRespVO entity : list) { + for (cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO entity : list) { MemberExtBO member = memberMap.get(entity.getMemberId()); entity.setMember(member); } } - private void convertOperationRespVOSetupTagList(List list) { + private void convertOperationRespVOSetupTagList(List list) { if (ObjectUtil.isEmpty(list)) return; - List memberIds = list.stream().map(OperationRespVO::getMemberId).collect(Collectors.toList()); + List memberIds = list.stream().map(cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO::getMemberId).collect(Collectors.toList()); List memberList = memberRecentTagService.getUserTagExtList(memberIds); Map> memberMap = IterUtil.toListMap(memberList, MemberTagExtBO::getMemberId); - for (OperationRespVO entity : list) { + for (cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO entity : list) { List tags = memberMap.get(entity.getMemberId()); entity.setMemberTagList(tags); } diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordService.java index 5e2254e..a3e8311 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordService.java @@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.member.service.recent; import javax.validation.*; import cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO; -import cn.iocoder.yudao.module.member.controller.admin.recent.vo.RecentPageResVo; import cn.iocoder.yudao.module.member.controller.admin.viewrecord.vo.*; import cn.iocoder.yudao.module.member.controller.app.recent.vo.AppRecentLikeReqVo; import cn.iocoder.yudao.module.member.controller.app.recent.vo.AppRecentViewRecordReqVo; @@ -38,15 +37,15 @@ public interface ViewRecordService { /** * 获得用户查看记录分页 */ - PageResult getViewRecordPage(ViewRecordPageReqVO pageReqVO); + PageResult getViewRecordPage(ViewRecordPageRespVO pageReqVO); /** * 我看过-分页查询 */ - PageResult lookItMePage(@Valid AppRecentLikeReqVo dto); + PageResult lookItMePage(@Valid AppRecentLikeReqVo dto); /** * 看过我-分页查询 */ - PageResult lookMePage(@Valid AppRecentLikeReqVo dto); + PageResult lookMePage(@Valid AppRecentLikeReqVo dto); } \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java index a3b4428..0d84d6b 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java @@ -3,11 +3,13 @@ package cn.iocoder.yudao.module.member.service.recent; import cn.hutool.core.collection.IterUtil; import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.module.member.controller.admin.recent.vo.OperationRespVO; import cn.iocoder.yudao.module.member.controller.app.recent.vo.AppRecentLikeReqVo; import cn.iocoder.yudao.module.member.controller.app.recent.vo.AppRecentViewRecordReqVo; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import cn.iocoder.yudao.module.member.enums.MemberErrorCode; import cn.iocoder.yudao.module.member.enums.MemberRecentViewRecordEnum; +import cn.iocoder.yudao.module.member.service.user.BO.MemberExtBO; import cn.iocoder.yudao.module.member.service.user.MemberUserService; import org.springframework.stereotype.Service; @@ -92,7 +94,7 @@ public class ViewRecordServiceImpl implements ViewRecordService { * 获得用户查看记录分页 */ @Override - public PageResult getViewRecordPage(ViewRecordPageReqVO pageReqVO) { + public PageResult getViewRecordPage(ViewRecordPageRespVO pageReqVO) { return viewRecordMapper.selectPage(pageReqVO); } @@ -100,17 +102,17 @@ public class ViewRecordServiceImpl implements ViewRecordService { * 我看过-分页查询 */ @Override - public PageResult lookItMePage(AppRecentLikeReqVo dto) { - PageResult resultPageList = new PageResult<>(); + public PageResult lookItMePage(AppRecentLikeReqVo dto) { + PageResult resultPageList = new PageResult<>(); PageResult pageList = viewRecordMapper.selectPage(dto, new LambdaQueryWrapperX() - .eq(ViewRecordDO::getMemberId, dto.getMemberId()) + .eq(ViewRecordDO::getMemberId, dto.getOperationMemberId()) .eq(ViewRecordDO::getBizType, MemberRecentViewRecordEnum.USER.getType()) - .ne(ViewRecordDO::getBizId, dto.getMemberId()) + .ne(ViewRecordDO::getBizId, dto.getOperationMemberId()) .orderByDesc(ViewRecordDO::getCreateTime) ); List list = pageList.getList(); if (ObjectUtil.isEmpty(list)) return resultPageList; - List resultList = BeanUtils.toBean(list, ViewRecordPageReqVO.class); + List resultList = BeanUtils.toBean(list, OperationRespVO.class); // 为ViewRecordPageReqVO设置Member信息 convertViewRecordPageReqVOSetupMember(resultList); resultPageList.setList(resultList); @@ -122,17 +124,17 @@ public class ViewRecordServiceImpl implements ViewRecordService { * 看过我-分页查询 */ @Override - public PageResult lookMePage(AppRecentLikeReqVo dto) { - PageResult resultPageList = new PageResult<>(); + public PageResult lookMePage(AppRecentLikeReqVo dto) { + PageResult resultPageList = new PageResult<>(); PageResult pageList = viewRecordMapper.selectPage(dto, new LambdaQueryWrapperX() - .ne(ViewRecordDO::getMemberId, dto.getMemberId()) + .ne(ViewRecordDO::getMemberId, dto.getOperationMemberId()) .eq(ViewRecordDO::getBizType, MemberRecentViewRecordEnum.USER.getType()) - .eq(ViewRecordDO::getBizId, dto.getMemberId()) + .eq(ViewRecordDO::getBizId, dto.getOperationMemberId()) .orderByDesc(ViewRecordDO::getCreateTime) ); List list = pageList.getList(); if (ObjectUtil.isEmpty(list)) return resultPageList; - List resultList = BeanUtils.toBean(list, ViewRecordPageReqVO.class); + List resultList = BeanUtils.toBean(list, OperationRespVO.class); // 为ViewRecordPageReqVO设置Member信息 convertViewRecordPageReqVOSetupMember(resultList); resultPageList.setList(resultList); @@ -141,25 +143,14 @@ public class ViewRecordServiceImpl implements ViewRecordService { } // 为ViewRecordPageReqVO设置Member信息 - private void convertViewRecordPageReqVOSetupMember(List list) { + private void convertViewRecordPageReqVOSetupMember(List list) { if (ObjectUtil.isEmpty(list)) return; - List memberIds = list.stream().map(ViewRecordPageReqVO::getMemberId).collect(Collectors.toList()); - List memberList = memberUserService.getUserList(memberIds); - Map memberMap = IterUtil.toMap(memberList, MemberUserDO::getId); - for (ViewRecordPageReqVO entity : list) { - // 用户相关 - if (ObjectUtil.isNotEmpty(memberMap)) { - MemberUserDO member = memberMap.get(entity.getMemberId()); - if (ObjectUtil.isNotEmpty(member)) { - ViewRecordPageReqVO.MemberVo memberVO = new ViewRecordPageReqVO.MemberVo(); - memberVO.setMemberId(member.getId()); - memberVO.setMemberAvatar(member.getAvatar()); - memberVO.setMemberNickname(member.getNickname()); - memberVO.setMemberAge(member.getAge()); - memberVO.setMemberOcc(member.getOcc()); - entity.setMember(memberVO); - } - } + List memberIds = list.stream().map(OperationRespVO::getMemberId).collect(Collectors.toList()); + List memberList = memberUserService.getUserExtList(memberIds); + Map memberMap = IterUtil.toMap(memberList, MemberExtBO::getMemberId); + for (OperationRespVO entity : list) { + MemberExtBO member = memberMap.get(entity.getMemberId()); + entity.setMember(member); } }