Files
hzdyjs/docs/变更管理/code-adjust-record-2025-07-14-wuzhen.md
T
2025-07-24 21:03:00 +08:00

2.3 KiB

招生就业模块代码调整记录

修复招生报名信息学院字段拼写问题

时间: 2025-07-14 10:15:30

问题描述

在"招生就业》报名信息》查看招生报名信息"页面中,所属学院和学院代码字段没有正确显示。数据库中字段名为collage_name和collage_id,而代码中使用的是college_name和college_id。

原因分析

  1. 字段拼写不一致:

    • 数据库表中的字段名为:collage_name和collage_id
    • Java代码中的属性名为:collegeName和collegeId
    • Mapper XML中的查询使用:college_name和college_id
  2. 字段名称的差异导致:

    • MyBatis无法正确映射数据库字段到Java对象
    • 查询结果中这两个字段的值为空

修复方案

调整代码以适配数据库中实际的字段名称:

  1. 在Mapper XML中:

    • 查询时使用别名:collage_name as college_name和collage_id as college_id
    • 条件查询中使用实际的字段名:collage_name和collage_id
  2. 在实体类中:

    • 使用@TableField注解明确指定数据库字段名称
    • 例如:@TableField("collage_name") private String collegeName

修改内容

  1. 在ZsjyEnrollmentInfoMapper.xml中:

    <!-- 修改查询SQL -->
    <sql id="selectZsjyEnrollmentInfoVo">
        select id, name, ..., 
        collage_name as college_name, collage_id as college_id, ...
        from zsjy_enrollment_info
    </sql>
    
    <!-- 修改条件查询 -->
    <if test="collegeName != null and collegeName != ''">
        and collage_name like concat('%', #{collegeName}, '%')
    </if>
    <if test="collegeId != null and collegeId != ''">
        and collage_id = #{collegeId}
    </if>
    
  2. 在ZsjyEnrollmentInfo.java中:

    /**
     * 学院名称
     */
    @TableField("collage_name")
    private String collegeName;
    
    /**
     * 学院代码
     */
    @TableField("collage_id")
    private String collegeId;
    

执行步骤

已完成代码修改,需要重新编译部署后端:

# 在backend目录执行
mvn clean package -DskipTests

验证方法

  1. 重新部署后端服务
  2. 登录系统,进入"招生就业》报名信息"模块
  3. 点击查看按钮,确认所属学院和学院代码字段是否正确显示

责任人

  • 开发: 吴振
  • 测试: 待定
  • 审核: 待定