Files
hzdyjs/docs/变更管理/code-adjust-record-2025-07-31-wuzilong.md
T
2025-07-31 19:52:03 +08:00

2.1 KiB

学生信息导入VO类字段缺失问题修复记录

变更时间: 2025-07-31 18:00:00
变更人员: wuzilong
变更类型: Bug修复
影响范围: 学生信息批量导入功能

问题描述

在执行学生信息批量导入时,发现SQL插入语句中缺少了很多字段,导致数据不完整。通过分析发现是XgStudentMsgImportVo类中缺少了多个重要字段,导致BeanUtil.toBean()转换时无法正确映射。

问题原因

  1. 基础字段被注释: deleted、createBy、updateBy字段在VO类中被注释掉了
  2. 重要业务字段缺失: nativePlace、sourceRegion、counselorId、counselorName字段在VO类中不存在
  3. Bean转换失败: 由于字段不匹配,导致BeanUtil.toBean(studentVo, XgStudentMsgBo.class)转换时丢失数据

修复内容

1. 恢复基础字段

// 恢复以下字段的声明(保持@ExcelProperty注解注释状态)
private Long deleted;      // 删除标志
private Long createBy;     // 创建者
private Long updateBy;     // 更新者

2. 添加缺失的业务字段

// 添加籍贯字段
@ExcelProperty(value = "籍贯")
private String nativePlace;

// 添加生源地区字段
@ExcelProperty(value = "生源地区")
private String sourceRegion;

// 添加辅导员相关字段
@ExcelProperty(value = "辅导员ID")
private Long counselorId;

@ExcelProperty(value = "辅导员姓名")
private String counselorName;

修复文件

  • backend/ruoyi-modules/ruoyi-xg/src/main/java/org/dromara/xg/domain/vo/XgStudentMsgImportVo.java

验证方法

  1. 重新执行学生信息批量导入
  2. 检查SQL插入语句是否包含完整的字段
  3. 验证导入的数据是否完整

影响评估

  • 正面影响: 修复了学生信息导入功能,确保数据完整性
  • 风险: 无,只是恢复了缺失的字段声明
  • 兼容性: 完全兼容,不影响现有功能

后续建议

  1. 建立VO类和BO类字段映射检查机制
  2. 在开发过程中确保VO类包含所有必要的字段
  3. 定期检查Bean转换的完整性