-
-
-
-
+
+
+
+
+
+
+ 将文件拖到此处,或点击上传
+
+ 只能上传 xlsx/xls 文件,且不超过 5MB
+
+
+
+
+
+
+
+
+ 总数:{{ result.total }} 条,成功:{{ result.successCount }} 条,失败:{{ result.failCount }} 条
+
+
+
+ {{ showErrorList ? '隐藏' : '查看' }}错误详情
+
+
+
+
+
+
+
+
+
+
+
+
+
- 关闭
+ 上一步
+
+ {{ currentStep === 1 ? '开始导入' : '下一步' }}
+
+ 完成
diff --git a/pangu-ui/src/views/student/components/SchoolTree.vue b/pangu-ui/src/views/student/components/SchoolTree.vue
new file mode 100644
index 0000000..9c71f2a
--- /dev/null
+++ b/pangu-ui/src/views/student/components/SchoolTree.vue
@@ -0,0 +1,96 @@
+
+
+
+
+ 学校列表
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ node.label }}
+
+
+
+
+
+
+
+
+
+
diff --git a/pangu-ui/src/views/student/components/StudentDialog.vue b/pangu-ui/src/views/student/components/StudentDialog.vue
index 787b18d..410c820 100644
--- a/pangu-ui/src/views/student/components/StudentDialog.vue
+++ b/pangu-ui/src/views/student/components/StudentDialog.vue
@@ -1,203 +1,249 @@
+
-
-
-
-
-
-
-
-
-
- 男
- 女
- 未知
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 选择
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- 取消
- 确定
+ 取消
+ 确定
diff --git a/pangu-ui/src/views/student/index.vue b/pangu-ui/src/views/student/index.vue
index 7293c97..7194cd5 100644
--- a/pangu-ui/src/views/student/index.vue
+++ b/pangu-ui/src/views/student/index.vue
@@ -1,81 +1,76 @@
+
-
-
-
-
-
- 学校筛选
-
-
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
+
+
+
+
- 搜索
+ 查询
重置
-
-
-
- 新增
-
-
- 导入
-
+
+
+
+ 新增
+ 批量导入
-
-
-
-
+
+
+
+
+
- {{ row.gender === '1' ? '男' : row.gender === '2' ? '女' : '未知' }}
+ {{ row.genderName }}
+ {{ row.genderName }}
+ {{ row.genderName }}
-
+
+
-
-
-
-
-
+
+
+
+
编辑
- 删除
+
+
+ 删除
+
+
@@ -84,176 +79,155 @@
-
-
+
+
-
-
+
+
diff --git a/sql/pangu_student.sql b/sql/pangu_student.sql
new file mode 100644
index 0000000..d752379
--- /dev/null
+++ b/sql/pangu_student.sql
@@ -0,0 +1,47 @@
+-- ============================================================
+-- 学生管理模块 - 数据库脚本
+-- 作者:pangu
+-- 创建时间:2026-01-31
+-- ============================================================
+
+-- ----------------------------
+-- 学生表
+-- ----------------------------
+DROP TABLE IF EXISTS `pg_student`;
+CREATE TABLE `pg_student` (
+ `student_id` bigint NOT NULL AUTO_INCREMENT COMMENT '学生ID',
+ `student_name` varchar(50) NOT NULL COMMENT '学生姓名',
+ `student_no` varchar(32) DEFAULT NULL COMMENT '学号',
+ `gender` char(1) DEFAULT '0' COMMENT '性别(0未知 1男 2女)',
+ `birthday` date DEFAULT NULL COMMENT '出生年月',
+ `region_id` bigint NOT NULL COMMENT '所属区域ID',
+ `region_path` varchar(200) DEFAULT NULL COMMENT '区域路径',
+ `school_id` bigint NOT NULL COMMENT '所属学校ID',
+ `school_grade_id` bigint NOT NULL COMMENT '所属学校年级ID',
+ `school_class_id` bigint NOT NULL COMMENT '所属学校班级ID',
+ `subject_id` bigint DEFAULT NULL COMMENT '学科ID',
+ `member_id` bigint NOT NULL COMMENT '归属会员ID',
+ `status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
+ `create_by` varchar(64) DEFAULT '' COMMENT '创建者',
+ `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+ `update_by` varchar(64) DEFAULT '' COMMENT '更新者',
+ `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+ `del_flag` char(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)',
+ `remark` varchar(500) DEFAULT NULL COMMENT '备注',
+ PRIMARY KEY (`student_id`),
+ UNIQUE KEY `uk_student_no` (`student_no`),
+ KEY `idx_member_id` (`member_id`),
+ KEY `idx_school_id` (`school_id`),
+ KEY `idx_school_class_id` (`school_class_id`),
+ KEY `idx_student_name` (`student_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生表';
+
+-- ----------------------------
+-- 初始化学生示例数据
+-- ----------------------------
+INSERT INTO pg_student (student_name, student_no, gender, birthday, region_id, region_path, school_id, school_grade_id, school_class_id, member_id, status, create_by, create_time, del_flag) VALUES
+('张小明', 'STU20260001', '1', '2015-03-15', 111, '湖北省-武汉市-武昌区', 1, 1, 1, 1, '0', 'admin', NOW(), '0'),
+('张小红', 'STU20260002', '2', '2017-06-20', 111, '湖北省-武汉市-武昌区', 1, 1, 2, 1, '0', 'admin', NOW(), '0'),
+('李明明', 'STU20260003', '1', '2015-09-10', 111, '湖北省-武汉市-武昌区', 1, 2, 3, 2, '0', 'admin', NOW(), '0'),
+('王小丽', 'STU20260004', '2', '2016-12-05', 111, '湖北省-武汉市-武昌区', 1, 2, 4, 2, '0', 'admin', NOW(), '0'),
+('刘大壮', 'STU20260005', '1', '2015-08-20', 111, '湖北省-武汉市-武昌区', 1, 1, 1, 1, '0', 'admin', NOW(), '0');