feat:详情tag

This commit is contained in:
dzc committed 2025-11-27 13:49:09 +08:00
1 parent 8ad378666e
commit bb6bad33b2
3 files changed
+40 -17

No files matched your search

@@ -58,7 +58,7 @@ public interface MemberErrorCode {
//========== 用户朋友圈 1-004-012-000 ==========
ErrorCode OPERATION_NOT_EXISTS = new ErrorCode(2_001_000_001, "朋友圈操作不存在");
ErrorCode RECENT_NOT_EXISTS = new ErrorCode(2_001_000_001, "朋友圈操作不存在");
ErrorCode RECENT_NOT_EXISTS = new ErrorCode(2_001_000_001, "朋友圈不存在");
ErrorCode REPORT_TYPE_NOT_NULL = new ErrorCode(2_001_000_002, "举报类型不能为空");
ErrorCode RATING_SCORE_NOT_NULL = new ErrorCode(2_001_000_003, "评价分数不能为空");
ErrorCode VIEW_RECORD_NOT_EXISTS = new ErrorCode(2_001_000_004, "用户查看记录不存在");
@@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.member.controller.app.recent.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -12,14 +13,13 @@ public class AppRecentSaveReqVO {
@Schema(description = "用户编号")
private Long memberId;
@Schema(description = "视频")
@NotEmpty(message = "视频不能为空")
private String coverVideo;
@Schema(description = "主图")
@Schema(description = "主图url")
@NotEmpty(message = "主图不能为空")
private String coverPic;
@Schema(description = "视频url")
private String coverVideo;
@Schema(description = "描述")
@NotEmpty(message = "描述不能为空")
private String description;
@@ -131,6 +131,8 @@ public class RecentServiceImpl implements RecentService {
convertRecentPageResVoSetupMember(result);
// 查询用户最新的位置
convertRecentPageResVoSetupLocation(result, currentUserLastLocation);
// 用户tag
convertRecentPageResVoSetupTag(result);
return result;
}
@@ -441,6 +443,20 @@ public class RecentServiceImpl implements RecentService {
}
}
private void convertRecentPageResVoSetupMember(RecentPageResVo detail) {
if (ObjectUtil.isEmpty(detail)) return;
MemberUserDO member = memberUserService.getUser(detail.getMemberId());
if (ObjectUtil.isNotEmpty(member)) {
RecentPageResVo.MemberVo memberVO = new RecentPageResVo.MemberVo();
memberVO.setMemberId(member.getId());
memberVO.setMemberAvatar(member.getAvatar());
memberVO.setMemberNickname(member.getNickname());
memberVO.setMemberAge(member.getAge());
memberVO.setMemberOcc(member.getOcc());
detail.setMember(memberVO);
}
}
// 为RecentPageResVo设置Tag信息
private void convertRecentPageResVoSetupTag(List<RecentPageResVo> list) {
if (ObjectUtil.isEmpty(list)) return;
@@ -468,17 +484,24 @@ public class RecentServiceImpl implements RecentService {
}
}
private void convertRecentPageResVoSetupMember(RecentPageResVo detail) {
if (ObjectUtil.isEmpty(detail)) return;
MemberUserDO member = memberUserService.getUser(detail.getMemberId());
if (ObjectUtil.isNotEmpty(member)) {
RecentPageResVo.MemberVo memberVO = new RecentPageResVo.MemberVo();
memberVO.setMemberId(member.getId());
memberVO.setMemberAvatar(member.getAvatar());
memberVO.setMemberNickname(member.getNickname());
memberVO.setMemberAge(member.getAge());
memberVO.setMemberOcc(member.getOcc());
detail.setMember(memberVO);
private void convertRecentPageResVoSetupTag(RecentPageResVo entity) {
if (ObjectUtil.isEmpty(entity)) return;
List<MemberRecentTagDO> memberRecentTagList = memberRecentTagMapper.selectList(new LambdaQueryWrapperX<MemberRecentTagDO>()
.in(MemberRecentTagDO::getMemberId, entity.getMemberId())
);
if (ObjectUtil.isNotEmpty(memberRecentTagList)) {
List<MemberRecentTagDO> targetList = memberRecentTagList.stream().filter(v -> ObjectUtil.equals(v.getMemberId(), entity.getMemberId())).collect(Collectors.toList());
if (ObjectUtil.isEmpty(targetList)) {
entity.setMemberTagList(new ArrayList<>());
} else {
List<RecentPageResVo.MemberTag> tagList = targetList.stream().map(v -> {
RecentPageResVo.MemberTag tag = new RecentPageResVo.MemberTag();
tag.setTagTitle(v.getTagTitle());
tag.setTagBizType(v.getTagBizType());
return tag;
}).collect(Collectors.toList());
entity.setMemberTagList(tagList);
}
}
}