forked from wangziqi/gongxue-base
24 lines
1.0 KiB
TypeScript
24 lines
1.0 KiB
TypeScript
import { DataSource } from 'typeorm';
|
|
|
|
export async function seedDefaultCampus(dataSource: DataSource) {
|
|
const deptRepo = dataSource.getRepository('departments');
|
|
const userDeptRepo = dataSource.getRepository('user_departments');
|
|
|
|
const existing = await deptRepo.count();
|
|
if (existing > 0) { console.log('Departments exist, skip seed'); return; }
|
|
|
|
const campus = await deptRepo.save({ name: '主校区', type: 'campus', sortOrder: 0 });
|
|
|
|
const tables = ['students','rooms','classrooms','class_schedules','attendance_records','room_expenses','personal_expenses','occupancies','bills','deposits','deposit_installments','classroom_rentals'];
|
|
for (const table of tables) {
|
|
await dataSource.query(`UPDATE ${table} SET department_id = ? WHERE department_id IS NULL`, [campus.id]);
|
|
}
|
|
|
|
const users = await dataSource.query('SELECT id FROM users');
|
|
for (const user of users) {
|
|
await userDeptRepo.save({ userId: user.id, departmentId: campus.id, isDefault: true });
|
|
}
|
|
|
|
console.log('Seed: default campus created, data backfilled');
|
|
}
|