feat: 拆分学号/身份证字段 + 考勤教师展示 + 代码优化
- 入住导入模板:学号和身份证号拆为独立字段,前后端对齐 - 排课查询关联教师,考勤归档页展示教师姓名 - 抽查时段增加 IsIn 校验 - 抽取 withPessimisticWriteLock 去重悲观锁查询 - import 增加文件空 buffer 校验 - 测试 mock 补全,适配事务 manager - MySQL init.sql VALUES() 语法兼容修复
This commit is contained in:
@@ -348,8 +348,8 @@ INSERT INTO `permissions` (`id`, `code`, `name`, `group`) VALUES
|
||||
('89', 'department:delete', '删除部门', 'department'),
|
||||
('90', 'ai:config:read', '查看 AI 配置', 'ai'),
|
||||
('91', 'ai:config:write', '修改 AI 配置', 'ai'),
|
||||
('92', 'ai:config:test', '测试 AI 连接', 'ai')
|
||||
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`), `group` = VALUES(`group`);
|
||||
('92', 'ai:config:test', '测试 AI 连接', 'ai') AS new_values
|
||||
ON DUPLICATE KEY UPDATE `name` = new_values.`name`, `group` = new_values.`group`;
|
||||
|
||||
INSERT INTO `roles` (`id`, `name`, `code`, `description`, `is_system`, `status`) VALUES
|
||||
('1', '超级管理员', 'super_admin', '系统初始化、应急维护和全局权限处理', '1', '1'),
|
||||
@@ -357,8 +357,8 @@ INSERT INTO `roles` (`id`, `name`, `code`, `description`, `is_system`, `status`)
|
||||
('3', '教务管理员', 'academic', '管理学生、班级、教师、全局排课和历史考勤', '1', '1'),
|
||||
('4', '住宿运营管理员', 'accommodation_operations', '管理宿舍、入住、住宿费用、账单、押金和退宿结算', '1', '1'),
|
||||
('5', '教室运营管理员', 'classroom_operations', '管理教室、教室排期、外部机构和租赁订单', '1', '1'),
|
||||
('6', '系统管理员', 'system_admin', '管理账号、角色、日志、同步和系统配置', '1', '1')
|
||||
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`), `description` = VALUES(`description`), `is_system` = VALUES(`is_system`), `status` = VALUES(`status`);
|
||||
('6', '系统管理员', 'system_admin', '管理账号、角色、日志、同步和系统配置', '1', '1') AS new_values
|
||||
ON DUPLICATE KEY UPDATE `name` = new_values.`name`, `description` = new_values.`description`, `is_system` = new_values.`is_system`, `status` = new_values.`status`;
|
||||
|
||||
INSERT IGNORE INTO `role_permissions` (`role_id`, `permission_id`) VALUES
|
||||
('1', '1'),
|
||||
@@ -571,8 +571,8 @@ ON DUPLICATE KEY UPDATE `username` = `username`;
|
||||
INSERT IGNORE INTO `user_roles` (`user_id`, `role_id`) VALUES (1, 1);
|
||||
|
||||
INSERT INTO `organizations` (`id`, `public_id`, `code`, `name`, `is_host`, `color`, `notes`, `status`) VALUES
|
||||
('1', '01900000-0000-7000-8000-000000000001', 'HOST', '本机构', '1', '#1677ff', '系统默认运营主体', 'active')
|
||||
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`), `is_host` = VALUES(`is_host`), `status` = VALUES(`status`);
|
||||
('1', '01900000-0000-7000-8000-000000000001', 'HOST', '本机构', '1', '#1677ff', '系统默认运营主体', 'active') AS new_values
|
||||
ON DUPLICATE KEY UPDATE `name` = new_values.`name`, `is_host` = new_values.`is_host`, `status` = new_values.`status`;
|
||||
|
||||
INSERT INTO `expense_types` (`code`, `name`, `category`, `sort_order`, `enabled`) VALUES
|
||||
('water', '水费', 'room', '1', '1'),
|
||||
@@ -583,16 +583,16 @@ INSERT INTO `expense_types` (`code`, `name`, `category`, `sort_order`, `enabled`
|
||||
('key', '钥匙费', 'personal', '6', '1'),
|
||||
('remote', '空调遥控器', 'personal', '7', '1'),
|
||||
('deposit_deduction', '押金扣除', 'personal', '8', '1'),
|
||||
('other', '其他', 'both', '99', '1')
|
||||
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`), `category` = VALUES(`category`), `sort_order` = VALUES(`sort_order`), `enabled` = VALUES(`enabled`);
|
||||
('other', '其他', 'both', '99', '1') AS new_values
|
||||
ON DUPLICATE KEY UPDATE `name` = new_values.`name`, `category` = new_values.`category`, `sort_order` = new_values.`sort_order`, `enabled` = new_values.`enabled`;
|
||||
|
||||
INSERT INTO `ai_config` (`singleton_key`, `provider`, `enabled`, `timeout_ms`, `verified`) VALUES
|
||||
('GLOBAL', 'OPENAI', '0', '30000', '0')
|
||||
ON DUPLICATE KEY UPDATE `singleton_key` = `singleton_key`;
|
||||
|
||||
INSERT INTO `integration_config` (`id`, `type`, `is_sync`) VALUES
|
||||
('1', 'THIRD', '0')
|
||||
ON DUPLICATE KEY UPDATE `type` = VALUES(`type`);
|
||||
('1', 'THIRD', '0') AS new_values
|
||||
ON DUPLICATE KEY UPDATE `type` = new_values.`type`;
|
||||
|
||||
-- 让后续 AUTO_INCREMENT 从安全位置继续。
|
||||
ALTER TABLE `permissions` AUTO_INCREMENT = 1000;
|
||||
|
||||
Reference in New Issue
Block a user