From 712cef82981b22e07f5cebb5cd59a080a9d56888 Mon Sep 17 00:00:00 2001 From: Cheng Zhou Date: Tue, 23 Dec 2025 17:19:32 +0800 Subject: [PATCH] =?UTF-8?q?readme=E3=80=81init=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 1 + backend/app/crud/user.py | 2 +- database/init.sql | 6 +++--- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 5ad448b7..f9c87f2e 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ ## 账号与注册 - 初始化管理员:`admin@example.com / admin123`(已修正邮箱域名,后端启动时自动创建) +- 演示账号:PM `pm@example.com / pm123456`,CRA `cra@example.com / cra123456`(仅用于体验,正式环境请修改密码或禁用) - 自助注册:前端 `/register` 提交邮箱、密码、姓名、角色(CRA/PV/IMP/PM)、部门,状态为 PENDING。 - 管理员审核:`/admin/user-approval` 列表查看待审核,支持通过/拒绝;仅 ACTIVE 用户可登录。 - 更多账号:管理员也可在 `/admin/users` 直接创建 ACTIVE 账号,再在项目成员中赋予角色。 diff --git a/backend/app/crud/user.py b/backend/app/crud/user.py index 8afc72b8..ffad8764 100644 --- a/backend/app/crud/user.py +++ b/backend/app/crud/user.py @@ -87,7 +87,7 @@ async def ensure_admin_exists(db: AsyncSession, *, default_password: str = "admi if admin: return new_admin = User( - email="admin@ctms.local", + email="admin@example.com", password_hash=hash_password(default_password), full_name="System Admin", role=UserRole.ADMIN, diff --git a/database/init.sql b/database/init.sql index 737ba507..d4f8cfd7 100644 --- a/database/init.sql +++ b/database/init.sql @@ -659,9 +659,9 @@ COPY public.subjects (id, study_id, site_id, subject_no, status, screening_date, -- COPY public.users (id, username, hashed_password, role, is_active, created_at) FROM stdin; -11111111-1111-1111-1111-111111111111 admin $2b$12$q5T2aW/GgTQ0yxOCpuRhFetYVL6CmRecEIUeXwuXiLWbY00RD3rp6 ADMIN t 2025-12-18 00:55:17.568504+00 -22222222-2222-2222-2222-222222222222 pm1 $2b$12$oMZt76T4H5GabqIPVD.uSe7NkaIJWqSreaYRvIRhF9CSWy9BVrjYS PM t 2025-12-18 00:55:17.568504+00 -33333333-3333-3333-3333-333333333333 cra1 $2b$12$iQuY.bTrrBWYRAgS.LmJbe2yqOY1Tmv86FpC0lXBH0eYPIcyeh7uO CRA t 2025-12-18 00:55:17.568504+00 +11111111-1111-1111-1111-111111111111 admin@example.com $2b$12$wvADh3A4snBRZH9/24KWbO22h6mgE3TNquzD6cy0Zu7kKKnCouwzW ADMIN t 2025-12-18 00:55:17.568504+00 +22222222-2222-2222-2222-222222222222 pm@example.com $2b$12$qbIguZoGxPDhczU98iWKE.01lpBFnrrw5kbcQdwLLw.oduq9feGcu PM t 2025-12-18 00:55:17.568504+00 +33333333-3333-3333-3333-333333333333 cra@example.com $2b$12$3VtakMu1oJXLMOgu0ylNj.F6iqmIkRgP1XI51hzoIMwHccjeMW2nO CRA t 2025-12-18 00:55:17.568504+00 \.