feat: update init users

This commit is contained in:
2026-06-13 13:21:53 +08:00
parent 05ce7e987e
commit 46761906fe
11 changed files with 502 additions and 430 deletions
+26 -1
View File
@@ -2,6 +2,8 @@ import os
from django.core.management.base import BaseCommand
from django.contrib.auth import get_user_model
from apps.user.models import TeacherStudentRelation
User = get_user_model()
@@ -24,9 +26,12 @@ class Command(BaseCommand):
# 创建超级管理员
self._create_superadmin()
# 创建测试角色用户
# 创建测试角色用户(覆盖五类角色:医院管理员/内容管理员/带教医生/学生)
self._create_test_users()
# 师生关系(只在 doctor 与 student 之间)
self._create_relation()
self.stdout.write(self.style.SUCCESS('\n[完成] 用户初始化完成'))
def _create_superadmin(self):
@@ -55,6 +60,13 @@ class Command(BaseCommand):
def _create_test_users(self):
"""创建测试用户"""
test_users = [
{
'username': 'hospital_admin',
'password': 'hospital123',
'real_name': '医院管理员',
'role_type': 'hospital_admin',
'phone': '13800138003',
},
{
'username': 'doctor1',
'password': 'doctor123',
@@ -103,3 +115,16 @@ class Command(BaseCommand):
f'[已存在] 用户: {user_data["username"]} ({user_data["real_name"]})'
)
)
def _create_relation(self):
"""初始化一条师生关系(带教医生 doctor1 → 学生 student1)。"""
teacher = User.objects.filter(username='doctor1', role_type='doctor').first()
student = User.objects.filter(username='student1', role_type='student').first()
if not teacher or not student:
return
_, created = TeacherStudentRelation.objects.get_or_create(
teacher=teacher, student=student,
defaults={'relation_type': '指导', 'status': 1},
)
msg = '[创建] 师生关系: doctor1 → student1' if created else '[已存在] 师生关系: doctor1 → student1'
self.stdout.write((self.style.SUCCESS if created else self.style.WARNING)(msg))