diff --git a/src/main/java/top/suyiiyii/sims/common/ModelMapperConfig.java b/src/main/java/top/suyiiyii/sims/common/ModelMapperConfig.java index ad495cf..b053317 100644 --- a/src/main/java/top/suyiiyii/sims/common/ModelMapperConfig.java +++ b/src/main/java/top/suyiiyii/sims/common/ModelMapperConfig.java @@ -4,6 +4,8 @@ import org.modelmapper.ModelMapper; import org.modelmapper.convention.MatchingStrategies; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import top.suyiiyii.sims.dto.RecordDto; +import top.suyiiyii.sims.dto.UserRecordDto; /** * @Author tortoise @@ -20,24 +22,22 @@ public class ModelMapperConfig { ModelMapper modelMapper = new ModelMapper(); // 设置完全匹配 modelMapper.getConfiguration().setFullTypeMatchingRequired(true); - // 设置匹配策略为严格模式 modelMapper.getConfiguration().setMatchingStrategy(MatchingStrategies.STRICT); - // configureUser(modelMapper); + // configureUser(modelMapper); return modelMapper; } - // 配置 User 类的映射规则 + private void configureUser(ModelMapper modelMapper) { - // 定义 UserModel -> User 的映射规则 - // modelMapper.typeMap(RecordDto.class, Record.class) // 跳过设置密码字段 - // 定义 User -> UserModel 的映射规则 - // modelMapper.typeMap(User.class, RecordDto.class) - // .addMappings(mapper -> mapper.skip(RecordDto::setPassword)) // 跳过设置密码字段 - // .addMappings(mapper -> mapper.map(User::getRealName, UserModel::setName)); // 将 User 的 realName 映射为 UserModel 的 name -// .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getCreateTime, UserModel::setCreateTime)) -// .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getUpdateTime, UserModel::setUpdateTime)); +//定义 Record -> UserRecordDto 的映射规则 + //modelMapper.typeMap(Record.class, UserRecordDto.class) + // .addMappings(mapper -> mapper.skip(UserRecordDto::setRevokeDate)) + // .addMappings(mapper -> mapper.skip(UserRecordDto::setRevokeReason)) + // .addMappings(mapper -> mapper.skip(UserRecordDto::setRevokeRemark)) + // .addMappings(mapper -> mapper.skip(UserRecordDto::setOperatorUserId)) + // .addMappings(mapper -> mapper.skip(UserRecordDto::setLastUpdateTime)); } } diff --git a/src/main/java/top/suyiiyii/sims/controller/RecordController.java b/src/main/java/top/suyiiyii/sims/controller/RecordController.java index f4d169e..09177d8 100644 --- a/src/main/java/top/suyiiyii/sims/controller/RecordController.java +++ b/src/main/java/top/suyiiyii/sims/controller/RecordController.java @@ -61,12 +61,10 @@ RecordController { String token = (String) request.getAttribute("token"); String userId = JwtUtils.extractUserId(token); List<RecordDto> recordDtos = new ArrayList<>(); - List<Record> records = recordService.getMyAllRecords(page, size, userId); for (Record record : records) { RecordDto recordDto = modelMapper.map(record, RecordDto.class); recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId())); - recordDto.setSubCategoryName(categoryService.getsubCategoryName(record.getCategoryId())); diff --git a/src/main/java/top/suyiiyii/sims/dto/UserRecordDto.java b/src/main/java/top/suyiiyii/sims/dto/UserRecordDto.java new file mode 100644 index 0000000..13460de --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/dto/UserRecordDto.java @@ -0,0 +1,39 @@ +package top.suyiiyii.sims.dto; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author tortoise + * @Date 2024/8/29 21:02 + * @PackageName:top.suyiiyii.sims.dto + * @ClassName: UserRecordDto + * @Description: TODO + * @Version 1.0 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class UserRecordDto { + // 用户ID + private Integer studentId; + + + private String categoryName; + + private String subCategoryName; + // 奖惩日期 + private Long date; + // 奖惩内容 + private String content; + // 奖惩原因 + private String reason; + // 奖惩金额 + private Double amount; + // 奖惩备注 + private String remark; + // 是否撤销 + private Boolean isRevoked; + +}