commit
build / build-push (push) Successful in 1m29s

This commit is contained in:
wanghu
2026-10-21 15:00:26 +08:00
parent b857575710
commit 9e83208f35
117 changed files with 13358 additions and 0 deletions
@@ -0,0 +1,96 @@
package com.yunhai.acaclassassign.entity;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Index;
import javax.persistence.Table;
import java.math.BigDecimal;
/**
* 分班学生:导入名单的数据行。学号/账号为标识文本列(仅展示/导出,不参与均衡),
* 不存联系方式,也不与平台账号做关联。
* <p>单科成绩、是否型/数值型自定义字段为动态结构,以 JSON 文本列存储;
* 分班结果写回 classId(与 level A/B 层)。</p>
*/
@Getter
@Setter
@NoArgsConstructor
@Entity
@Table(name = "aca_assign_student", indexes = {
@Index(name = "idx_as_project", columnList = "project_id"),
@Index(name = "idx_as_project_class", columnList = "project_id,class_id"),
@Index(name = "idx_as_name", columnList = "name")})
public class AssignStudent extends BaseEntity {
/** 所属分班项目 */
@Column(name = "project_id", nullable = false)
private Integer projectId;
/** 姓名(必填;同名/同音约束、拼音排序依据) */
@Column(name = "name", nullable = false, length = 64)
private String name;
/** 性别:1男 2女 0未知 */
@Column(name = "gender", nullable = false, columnDefinition = "TINYINT DEFAULT 0")
private Integer gender;
/** 总分(小学版恒空) */
@Column(name = "total_score", precision = 6, scale = 2)
private BigDecimal totalScore;
/** 单科成绩 JSON:{"语文":95.5,"数学":88,...} */
@Column(name = "scores_json", columnDefinition = "TEXT")
private String scoresJson;
/** 是否型自定义字段 JSON:{"特长生":true,"住宿":false,...} */
@Column(name = "tags_json", columnDefinition = "TEXT")
private String tagsJson;
/** 数值型自定义字段 JSON:{"视力分":4.8,...} */
@Column(name = "nums_json", columnDefinition = "TEXT")
private String numsJson;
/** 学号(标识文本列,仅展示/导出,不参与均衡) */
@Column(name = "student_no", length = 64)
private String studentNo;
/** 账号(标识文本列,仅展示/导出,不参与均衡,不与平台账号关联) */
@Column(name = "account", length = 64)
private String account;
/** 密码(标识文本列,生成=账号+@;仅展示/导出/推送初始密码,不参与均衡) */
@Column(name = "password", length = 64)
private String password;
/** 毕业学校(仅展示/导出/生源分析,不参与均衡) */
@Column(name = "graduate_school", length = 128)
private String graduateSchool;
/** 备注 */
@Column(name = "remark", length = 255)
private String remark;
/** 预设班级原文(如 1 / 1班 / 同班:张三 / 不同班:李四) */
@Column(name = "preset_raw", length = 255)
private String presetRaw;
/** 预设解析结果 JSON:[{"type":"class|same|diff","value":"1","target":"张三"}] */
@Column(name = "preset_json", columnDefinition = "TEXT")
private String presetJson;
/** 分班结果:所在班级id(aca_assign_class.id) */
@Column(name = "class_id")
private Integer classId;
/** 分层结果:A/B(高中版用;其他学段空) */
@Column(name = "level", length = 4)
private String level;
/** 导入行号(告警定位) */
@Column(name = "src_row")
private Integer srcRow;
}