feat:预览bug

This commit is contained in:
dzc committed 2025-12-04 16:25:14 +08:00
1 parent 75be4d0f73
commit acfd9b7bc3
12 files changed
+189 -218

No files matched your search

@@ -1,12 +1,12 @@
package cn.iocoder.yudao.module.member.controller.admin.recent.vo;
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;
import lombok.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;
@@ -75,29 +75,8 @@ public class OperationRespVO {
@ExcelProperty("创建时间")
private LocalDateTime createTime;
private MemberVo member;
private MemberExtBO 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;
}
private List<MemberTagExtBO> memberTagList;
}
@@ -1,10 +1,11 @@
package cn.iocoder.yudao.module.member.controller.admin.recent.vo;
import cn.iocoder.yudao.module.member.dal.dataobject.recent.RecentDO;
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;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
@Data
@@ -14,10 +15,10 @@ public class RecentPageResVo extends RecentDO {
private Long id;
@Schema(description = "用户相关")
private MemberVo member;
private MemberExtBO member;
@Schema(description = "操作统计相关")
private OperationTotal operationTotal;
private OperationTotalGroupRecentRespVO operationTotal;
@Schema(description = "操作相关状态")
private OperationStatusVo userOperationStatus;
@@ -26,7 +27,7 @@ public class RecentPageResVo extends RecentDO {
private OperationStatusVo recentOperationStatus;
@Schema(description = "用户tag")
private List<MemberTag> memberTagList;
private List<MemberTagExtBO> memberTagList;
@Schema(description = "用户相册")
private List<RecentPageResVo.MemberPhoto> MemberPhotoList;
@@ -34,73 +35,6 @@ public class RecentPageResVo extends RecentDO {
@Schema(description = "距离(km)")
private Double distance;
@Data
public static class MemberVo {
@Schema(description = "用户编号")
private Long memberId;
@Schema(description = "用户性别")
private Integer memberSex;
@Schema(description = "用户头像")
private String memberAvatar;
@Schema(description = "用户昵称")
private String memberNickname;
@Schema(description = "用户年龄")
private String memberAge;
@Schema(description = "用户职业")
private String memberOcc;
@Schema(description = "身高(cm)")
private Double memberHeight;
@Schema(description = "体重(kg)")
private String memberWeight;
@Schema(description = "城市")
private String memberCity;
@Schema(description = "经度")
private Double memberLat;
@Schema(description = "纬度")
private Double memberLng;
@Schema(description = "最近登录时间")
private LocalDateTime appRefreshDate;
}
@Data
public static class OperationTotal {
@Schema(description = "朋友圈点赞总数")
private Integer recentLikeTotal = 0;
@Schema(description = "朋友圈举报总数")
private Integer recentReportTotal = 0;
@Schema(description = "朋友圈屏蔽总数")
private Integer recentShieldTotal = 0;
@Schema(description = "用户点赞总数")
private Integer userLikeTotal = 0;
}
@Data
public static class MemberTag {
@Schema(description = "tag标题")
private String tagTitle;
@Schema(description = "tag业务类型")
private String tagBizType;
}
@Data
public static class MemberPhoto {
@@ -3,11 +3,13 @@ package cn.iocoder.yudao.module.member.controller.app.recent.vo;
import cn.iocoder.yudao.module.member.enums.MemberRecentViewRecordEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Data
public class AppRecentViewRecordReqVo {
@@ -10,8 +10,6 @@ import cn.iocoder.yudao.module.member.controller.admin.photo.vo.*;
/**
* 用户相册 Mapper
*
* @author 聊天交友
*/
@Mapper
public interface PhotoMapper extends BaseMapperX<PhotoDO> {
@@ -33,5 +31,4 @@ public interface PhotoMapper extends BaseMapperX<PhotoDO> {
.orderByAsc(PhotoDO::getId));
}
void getByUserId(RecentPageResVo.MemberVo member);
}
@@ -13,7 +13,6 @@ import cn.iocoder.yudao.module.member.controller.app.recent.vo.AppRecentQuickPag
import cn.iocoder.yudao.module.member.dal.dataobject.location.LocationDO;
import cn.iocoder.yudao.module.member.dal.dataobject.photo.PhotoDO;
import cn.iocoder.yudao.module.member.dal.dataobject.recent.OperationDO;
import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberRecentTagDO;
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;
@@ -24,6 +23,9 @@ import cn.iocoder.yudao.module.member.enums.tag.MemberRecentTagEnum;
import cn.iocoder.yudao.module.member.service.location.LocationService;
import cn.iocoder.yudao.module.member.client.service.ThirdAuthService;
import cn.iocoder.yudao.module.member.service.photo.PhotoService;
import cn.iocoder.yudao.module.member.service.user.BO.MemberExtBO;
import cn.iocoder.yudao.module.member.service.user.BO.MemberTagExtBO;
import cn.iocoder.yudao.module.member.service.user.MemberRecentTagService;
import cn.iocoder.yudao.module.member.service.user.MemberUserService;
import cn.iocoder.yudao.module.system.enums.common.SexEnum;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -82,6 +84,8 @@ public class RecentServiceImpl implements RecentService {
private PhotoService photoService;
@Resource
private OperationService operationService;
@Resource
private MemberRecentTagService memberRecentTagService;
/**
* 创建朋友圈
@@ -365,6 +369,7 @@ public class RecentServiceImpl implements RecentService {
List<OperationRespVO> resultList = BeanUtils.toBean(list, OperationRespVO.class);
// 为OperationRespVO设置Member信息
convertOperationRespVOSetupMember(resultList);
convertOperationRespVOSetupTagList(resultList);
resultPageList.setList(resultList);
resultPageList.setTotal(pageList.getTotal());
return resultPageList;
@@ -388,6 +393,7 @@ public class RecentServiceImpl implements RecentService {
List<OperationRespVO> resultList = BeanUtils.toBean(list, OperationRespVO.class);
// 为OperationRespVO设置Member信息
convertOperationRespVOSetupMember(resultList);
convertOperationRespVOSetupTagList(resultList);
return new PageResult<>(resultList, pageList.getTotal());
}
@@ -426,6 +432,7 @@ public class RecentServiceImpl implements RecentService {
// 为OperationRespVO设置Member信息
convertOperationRespVOSetupMember(resultList);
convertOperationRespVOSetupTagList(resultList);
return new PageResult<>(resultList, pageList.getTotal());
}
@@ -489,28 +496,11 @@ public class RecentServiceImpl implements RecentService {
private void convertRecentPageResVoSetupMember(List<RecentPageResVo> list) {
if (ObjectUtil.isEmpty(list)) return;
List<Long> memberIds = list.stream().map(RecentPageResVo::getMemberId).collect(Collectors.toList());
List<MemberUserDO> memberList = memberUserService.getUserList(memberIds);
Map<Long, MemberUserDO> memberMap = IterUtil.toMap(memberList, MemberUserDO::getId);
List<MemberExtBO> memberList = memberUserService.getUserExtList(memberIds);
Map<Long, MemberExtBO> memberMap = IterUtil.toMap(memberList, MemberExtBO::getMemberId);
for (RecentPageResVo entity : list) {
// 用户相关
if (ObjectUtil.isNotEmpty(memberMap)) {
MemberUserDO member = memberMap.get(entity.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());
memberVO.setMemberHeight(member.getHeight());
memberVO.setMemberWeight(member.getWeight());
memberVO.setMemberSex(member.getSex());
memberVO.setAppRefreshDate(member.getAppRefreshDate());
memberVO.setMemberLat(member.getLat());
memberVO.setMemberLng(member.getLng());
entity.setMember(memberVO);
}
}
MemberExtBO member = memberMap.get(entity.getMemberId());
entity.setMember(member);
}
}
@@ -530,37 +520,14 @@ public class RecentServiceImpl implements RecentService {
for (RecentPageResVo entity : list) {
// 操作统计相关
OperationTotalGroupRecentRespVO total = totalMap.get(entity.getId());
if (ObjectUtil.isNotEmpty(total)) {
RecentPageResVo.OperationTotal operationTotal = new RecentPageResVo.OperationTotal();
operationTotal.setRecentLikeTotal(total.getLikeTotal());
operationTotal.setRecentReportTotal(total.getReportTotal());
operationTotal.setRecentShieldTotal(total.getShieldTotal());
operationTotal.setUserLikeTotal(total.getUserLikeTotal());
entity.setOperationTotal(operationTotal);
} else {
entity.setOperationTotal(new RecentPageResVo.OperationTotal());
}
entity.setOperationTotal(total);
}
}
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());
memberVO.setMemberHeight(member.getHeight());
memberVO.setMemberWeight(member.getWeight());
memberVO.setMemberSex(member.getSex());
memberVO.setAppRefreshDate(member.getAppRefreshDate());
memberVO.setMemberLat(member.getLat());
memberVO.setMemberLng(member.getLng());
detail.setMember(memberVO);
}
MemberExtBO member = memberUserService.getUserExt(detail.getMemberId());
detail.setMember(member);
}
// 为RecentPageResVo设置userOperationStatus信息
@@ -601,71 +568,27 @@ public class RecentServiceImpl implements RecentService {
private void convertRecentPageResVoSetupTag(List<RecentPageResVo> list) {
if (ObjectUtil.isEmpty(list)) return;
List<Long> memberIds = list.stream().map(RecentPageResVo::getMemberId).collect(Collectors.toList());
if (ObjectUtil.isNotEmpty(memberIds)) {
List<MemberRecentTagDO> memberRecentTagList = memberRecentTagMapper.selectList(new LambdaQueryWrapperX<MemberRecentTagDO>()
.in(MemberRecentTagDO::getMemberId, memberIds)
);
if (ObjectUtil.isNotEmpty(memberRecentTagList)) {
for (RecentPageResVo entity : list) {
List<MemberRecentTagDO> targetList = memberRecentTagList.stream().filter(v -> ObjectUtil.equals(v.getMemberId(), entity.getMemberId())).collect(Collectors.toList());
if (ObjectUtil.isEmpty(targetList)) {
entity.setMemberTagList(new ArrayList<>());
continue;
}
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);
}
}
List<MemberTagExtBO> memberList = memberRecentTagService.getUserTagExtList(memberIds);
Map<Long, List<MemberTagExtBO>> memberMap = IterUtil.toListMap(memberList, MemberTagExtBO::getMemberId);
for (RecentPageResVo entity : list) {
List<MemberTagExtBO> tags = memberMap.get(entity.getMemberId());
entity.setMemberTagList(tags);
}
}
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);
}
}
List<MemberTagExtBO> memberList = memberRecentTagService.getUserTagExtList(entity.getMemberId());
entity.setMemberTagList(memberList);
}
/**
* 为RecentPageResVo设置Location信息
*/
private void convertRecentPageResVoSetupLocation(List<RecentPageResVo> list, LocationDO selfLocation) {
if (ObjectUtil.isEmpty(list)) return;
for (RecentPageResVo entity : list) {
RecentPageResVo.MemberVo targetLocation = entity.getMember();
if (ObjectUtil.isAllNotEmpty(targetLocation.getMemberLat(), targetLocation.getMemberLng())) {
continue;
}
double distance = NumberUtils.getDistance(targetLocation.getMemberLat(), targetLocation.getMemberLng(), selfLocation.getLat(), selfLocation.getLon());
entity.setDistance(distance);
}
}
/**
* 为RecentPageResVo设置Location信息
*/
private void convertRecentPageResVoSetupLocation(RecentPageResVo detail, LocationDO selfLocation) {
if (ObjectUtil.isEmpty(detail)) return;
RecentPageResVo.MemberVo member = detail.getMember();
MemberExtBO member = detail.getMember();
if (ObjectUtil.isAllNotEmpty(member.getMemberLng(), member.getMemberLat())) {
double distance = NumberUtils.getDistance(member.getMemberLat(), member.getMemberLng(), selfLocation.getLat(), selfLocation.getLon());
detail.setDistance(distance);
@@ -694,22 +617,22 @@ public class RecentServiceImpl implements RecentService {
private void convertOperationRespVOSetupMember(List<OperationRespVO> list) {
if (ObjectUtil.isEmpty(list)) return;
List<Long> memberIds = list.stream().map(OperationRespVO::getMemberId).collect(Collectors.toList());
List<MemberUserDO> memberList = memberUserService.getUserList(memberIds);
Map<Long, MemberUserDO> memberMap = IterUtil.toMap(memberList, MemberUserDO::getId);
List<MemberExtBO> memberList = memberUserService.getUserExtList(memberIds);
Map<Long, MemberExtBO> memberMap = IterUtil.toMap(memberList, MemberExtBO::getMemberId);
for (OperationRespVO entity : list) {
// 用户相关
if (ObjectUtil.isNotEmpty(memberMap)) {
MemberUserDO member = memberMap.get(entity.getMemberId());
if (ObjectUtil.isNotEmpty(member)) {
OperationRespVO.MemberVo memberVO = new OperationRespVO.MemberVo();
memberVO.setMemberId(member.getId());
memberVO.setMemberAvatar(member.getAvatar());
memberVO.setMemberNickname(member.getNickname());
memberVO.setMemberAge(member.getAge());
memberVO.setMemberOcc(member.getOcc());
entity.setMember(memberVO);
}
}
MemberExtBO member = memberMap.get(entity.getMemberId());
entity.setMember(member);
}
}
private void convertOperationRespVOSetupTagList(List<OperationRespVO> list) {
if (ObjectUtil.isEmpty(list)) return;
List<Long> memberIds = list.stream().map(OperationRespVO::getMemberId).collect(Collectors.toList());
List<MemberTagExtBO> memberList = memberRecentTagService.getUserTagExtList(memberIds);
Map<Long, List<MemberTagExtBO>> memberMap = IterUtil.toListMap(memberList, MemberTagExtBO::getMemberId);
for (OperationRespVO entity : list) {
List<MemberTagExtBO> tags = memberMap.get(entity.getMemberId());
entity.setMemberTagList(tags);
}
}
@@ -49,6 +49,7 @@ public class ViewRecordServiceImpl implements ViewRecordService {
// 插入
ViewRecordDO viewRecord = BeanUtils.toBean(dto, ViewRecordDO.class);
viewRecord.setViewSecond((dto.getViewEndTime().getSecond() - dto.getViewStartTime().getSecond()));
viewRecord.setBizType(dto.getBizType().getType());
if (ObjectUtil.equals(viewRecord.getBizType(), MemberRecentViewRecordEnum.RECENT.getType())) {
viewRecord.setTitle("访问朋友圈");
}
@@ -0,0 +1,47 @@
package cn.iocoder.yudao.module.member.service.user.BO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class MemberExtBO {
@Schema(description = "用户编号")
private Long memberId;
@Schema(description = "用户性别")
private Integer memberSex;
@Schema(description = "用户头像")
private String memberAvatar;
@Schema(description = "用户昵称")
private String memberNickname;
@Schema(description = "用户年龄")
private String memberAge;
@Schema(description = "用户职业")
private String memberOcc;
@Schema(description = "身高(cm)")
private Double memberHeight;
@Schema(description = "体重(kg)")
private String memberWeight;
@Schema(description = "城市")
private String memberCity;
@Schema(description = "经度")
private Double memberLat;
@Schema(description = "纬度")
private Double memberLng;
@Schema(description = "最近登录时间")
private LocalDateTime appRefreshDate;
}
@@ -0,0 +1,18 @@
package cn.iocoder.yudao.module.member.service.user.BO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class MemberTagExtBO {
@Schema(description = "会员id")
private Long memberId;
@Schema(description = "tag标题")
private String tagTitle;
@Schema(description = "tag业务类型")
private String tagBizType;
}
@@ -1,6 +1,7 @@
package cn.iocoder.yudao.module.member.service.user;
import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberRecentTagDO;
import cn.iocoder.yudao.module.member.service.user.BO.MemberTagExtBO;
import java.util.List;
@@ -18,4 +19,11 @@ public interface MemberRecentTagService {
* 获取用户tag
*/
List<MemberRecentTagDO> getByMemberId(Long memberId);
/**
* 获取用户tag信息
*/
List<MemberTagExtBO> getUserTagExtList(List<Long> memberIds);
List<MemberTagExtBO> getUserTagExtList(Long memberId);
}
@@ -6,13 +6,16 @@ import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberRecentTagDO;
import cn.iocoder.yudao.module.member.dal.mysql.user.MemberRecentTagMapper;
import cn.iocoder.yudao.module.member.enums.tag.MemberRecentTagEnum;
import cn.iocoder.yudao.module.member.service.user.BO.MemberTagExtBO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
@Service
@Valid
@@ -54,4 +57,28 @@ public class MemberRecentTagServiceImp implements MemberRecentTagService {
public List<MemberRecentTagDO> getByMemberId(Long memberId) {
return memberRecentTagMapper.getByMemberId(memberId);
}
/**
* 获取用户tag信息
*/
@Override
public List<MemberTagExtBO> getUserTagExtList(List<Long> memberIds) {
List<MemberRecentTagDO> list = memberRecentTagMapper.selectList(new LambdaQueryWrapperX<MemberRecentTagDO>()
.in(MemberRecentTagDO::getMemberId, memberIds)
);
if (ObjectUtil.isEmpty(list)) return Collections.emptyList();
return list.stream().map(item -> {
MemberTagExtBO entity = new MemberTagExtBO();
entity.setMemberId(item.getMemberId());
entity.setTagBizType(item.getTagBizType());
entity.setTagTitle(item.getTagTitle());
return entity;
}).collect(Collectors.toList());
}
@Override
public List<MemberTagExtBO> getUserTagExtList(Long memberId) {
return getUserTagExtList(Arrays.asList(memberId));
}
}
@@ -7,6 +7,7 @@ import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserPageReq
import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserUpdateReqVO;
import cn.iocoder.yudao.module.member.controller.app.user.vo.*;
import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO;
import cn.iocoder.yudao.module.member.service.user.BO.MemberExtBO;
import javax.validation.Valid;
import java.util.Collection;
@@ -76,12 +77,13 @@ public interface MemberUserService {
/**
* 通过用户 ID 查询用户们
*
* @param ids 用户 ID
* @return 用户对象信息数组
*/
List<MemberUserDO> getUserList(Collection<Long> ids);
List<MemberExtBO> getUserExtList(Collection<Long> ids);
MemberExtBO getUserExt(Long userId);
/**
* 【会员】修改基本信息
*
@@ -25,6 +25,7 @@ import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper;
import cn.iocoder.yudao.module.member.enums.photo.PhotoBizTypeEnum;
import cn.iocoder.yudao.module.member.enums.tag.MemberRecentTagEnum;
import cn.iocoder.yudao.module.member.mq.producer.user.MemberUserProducer;
import cn.iocoder.yudao.module.member.service.user.BO.MemberExtBO;
import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi;
import cn.iocoder.yudao.module.system.api.sms.dto.code.SmsCodeUseReqDTO;
import cn.iocoder.yudao.module.system.api.social.SocialClientApi;
@@ -41,7 +42,9 @@ import org.springframework.transaction.support.TransactionSynchronizationManager
import javax.annotation.Resource;
import javax.validation.Valid;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
@@ -158,6 +161,36 @@ public class MemberUserServiceImpl implements MemberUserService {
return memberUserMapper.selectBatchIds(ids);
}
@Override
public List<MemberExtBO> getUserExtList(Collection<Long> ids) {
if (CollUtil.isEmpty(ids)) {
return ListUtil.empty();
}
List<MemberUserDO> memberUserDOS = memberUserMapper.selectBatchIds(ids);
return memberUserDOS.stream().map(member -> {
MemberExtBO entity = new MemberExtBO();
entity.setMemberId(member.getId());
entity.setMemberAvatar(member.getAvatar());
entity.setMemberNickname(member.getNickname());
entity.setMemberAge(member.getAge());
entity.setMemberOcc(member.getOcc());
entity.setMemberHeight(member.getHeight());
entity.setMemberWeight(member.getWeight());
entity.setMemberSex(member.getSex());
entity.setAppRefreshDate(member.getAppRefreshDate());
entity.setMemberLat(member.getLat());
entity.setMemberLng(member.getLng());
return entity;
}).collect(Collectors.toList());
}
@Override
public MemberExtBO getUserExt(Long userId) {
List<MemberExtBO> list = getUserExtList(Arrays.asList(userId));
if (ObjectUtil.isEmpty(list)) return null;
return list.get(0);
}
@Override
public void updateUser(Long userId, AppMemberUserUpdateReqVO reqVO) {
MemberUserDO updateObj = BeanUtils.toBean(reqVO, MemberUserDO.class).setId(userId);