package cn.iocoder.yudao.module.member.convert.point; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.collection.MapUtils; import cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod.MemberPointRecordRespVO; import cn.iocoder.yudao.module.member.controller.app.point.vo.AppMemberPointRecordRespVO; import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointRecordDO; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; import java.util.List; import java.util.Map; import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; /** * 用户积分记录 Convert * * @author QingX */ @Mapper public interface MemberPointRecordConvert { MemberPointRecordConvert INSTANCE = Mappers.getMapper(MemberPointRecordConvert.class); default PageResult convertPage(PageResult pageResult, List users) { PageResult voPageResult = convertPage(pageResult); // user 拼接 Map userMap = convertMap(users, MemberUserDO::getId); voPageResult.getList().forEach(record -> MapUtils.findAndThen(userMap, record.getUserId(), memberUserRespDTO -> record.setNickname(memberUserRespDTO.getNickname()))); return voPageResult; } PageResult convertPage(PageResult pageResult); }