Roles & Permissions

Complete reference for what each role can do in ProjectMed.

ProjectMed uses a three-tier role system to control access throughout the platform. Every user is assigned exactly one role, and each role inherits all permissions from the roles below it.

Role Description Typical User
Doctor Clinical user. Can view and manage patient records, add visits, export PDFs, and manage their own profile. Team physicians, sports medicine doctors, clinical staff
Admin Administrative user. Can view patients (read-only), manage doctors, view audit logs, soft-delete patients, and create groups. Does not create or edit patient records or visits. Clinic administrators, medical directors, team managers
Superadmin Platform owner. Full control over the entire system including managing admins, permanent deletions, data export, and system configuration. Platform owner, IT administrator
Note: All doctors and admins can see all patients in the system. Patient visibility is not restricted by group.

角色與權限

ProjectMed 中各角色權限的完整參考。

ProjectMed 使用三層角色系統來控制整個平台的存取權限。每位使用者只被分配一個角色,每個角色會繼承其下層角色的所有權限。

角色 說明 典型使用者
醫師 臨床使用者。可檢視及管理病患紀錄、新增看診紀錄、匯出 PDF,並管理自己的個人檔案。 隊醫、運動醫學醫師、臨床人員
管理員 行政管理使用者。可檢視病患(唯讀)、管理醫師、查看稽核紀錄、軟刪除病患及建立群組。無法建立或編輯病患紀錄或看診紀錄。 診所管理員、醫療主管、團隊經理
超級管理員 平台擁有者。擁有系統完整控制權,包括管理管理員、永久刪除、資料匯出及系統設定。 平台擁有者、資訊技術管理員
注意:所有醫師和管理員皆可查看系統中的所有病患。病患可見性不受群組限制。

Roles y Permisos

Referencia completa de lo que cada rol puede hacer en ProjectMed.

ProjectMed utiliza un sistema de roles de tres niveles para controlar el acceso en toda la plataforma. Cada usuario tiene exactamente un rol asignado, y cada rol hereda todos los permisos de los roles inferiores.

Rol Descripcion Usuario Tipico
Medico Usuario clinico. Puede ver y gestionar registros de pacientes, agregar consultas, exportar PDFs y gestionar su propio perfil. Medicos de equipo, medicos deportivos, personal clinico
Administrador Usuario administrativo. Puede ver pacientes (solo lectura), gestionar medicos, ver registros de auditoria, eliminar pacientes temporalmente y crear grupos. No puede crear ni editar registros de pacientes ni consultas. Administradores de clinica, directores medicos, gerentes de equipo
Superadministrador Propietario de la plataforma. Control total del sistema, incluyendo gestion de administradores, eliminaciones permanentes, exportacion de datos y configuracion del sistema. Propietario de la plataforma, administrador de TI
Nota: Todos los medicos y administradores pueden ver todos los pacientes del sistema. La visibilidad de pacientes no esta restringida por grupo.

Role Hierarchy

How roles inherit permissions from each other.

ProjectMed follows a strict role hierarchy. Each higher role inherits all permissions from the roles below it, plus gains additional capabilities:

Superadmin — Full system control
↓ inherits all Admin permissions, plus:
Manage admins, permanent delete, bulk operations, system backup, clear audit logs

Admin — Team administration
View patients (read-only), manage doctors, view audit logs, soft-delete patients, create groups
Admins do NOT inherit patient/visit creation, editing, or deletion

Doctor — Clinical access
View/create/edit patients, add visits, export PDF/FHIR, upload images, manage own profile
Key principle: Doctors can only manage their own profile and patient data. Admins can manage doctors. Only Superadmins can manage admins and perform destructive system-wide operations.

角色層級

各角色如何繼承彼此的權限。

ProjectMed 遵循嚴格的角色層級制度。每個上層角色繼承其下層角色的所有權限,並額外獲得更多功能:

超級管理員 — 系統完整控制權
↓ 繼承所有管理員權限,另外增加:
管理管理員、永久刪除、批量操作、系統備份、清除稽核紀錄

管理員 — 團隊行政管理
檢視病患(唯讀)、管理醫師、查看稽核紀錄、軟刪除病患、建立群組
管理員不會繼承病患/看診的建立、編輯或刪除權限

醫師 — 臨床存取
檢視/建立/編輯病患、新增看診、匯出 PDF/FHIR、上傳影像、管理個人檔案
核心原則:醫師只能管理自己的個人檔案和病患資料。管理員可以管理醫師。只有超級管理員可以管理管理員並執行具破壞性的系統操作。

Jerarquia de Roles

Como los roles heredan permisos entre si.

ProjectMed sigue una jerarquia de roles estricta. Cada rol superior hereda todos los permisos de los roles inferiores, ademas de obtener capacidades adicionales:

Superadministrador — Control total del sistema
↓ hereda todos los permisos de Administrador, mas:
Gestionar administradores, eliminacion permanente, operaciones masivas, respaldo del sistema, borrar registros de auditoria

Administrador — Administracion del equipo
Ver pacientes (solo lectura), gestionar medicos, ver registros de auditoria, eliminar pacientes temporalmente, crear grupos
Los administradores NO heredan la creacion, edicion o eliminacion de pacientes/consultas

Medico — Acceso clinico
Ver/crear/editar pacientes, agregar consultas, exportar PDF/FHIR, subir imagenes, gestionar perfil propio
Principio clave: Los medicos solo pueden gestionar su propio perfil y datos de pacientes. Los administradores pueden gestionar medicos. Solo los superadministradores pueden gestionar administradores y realizar operaciones destructivas a nivel del sistema.

Patient Management

Creating, editing, and deleting patient records.

Feature Doctor Admin Superadmin
View all patients (searchable list)
Create new patient
Edit patient info (name, DOB, contact, etc.)
Edit medical history
Edit allergies
Edit clearance status
Change patient status
Upload / delete images
Export PDF (PIN required)
Export FHIR R4 JSON
Email record to another doctor
Soft-delete patient (trash)
View trashed patients
Permanently delete patient
Bulk delete patients

Explanation

Only doctors can create, edit, and manage patient records. Admins and superadmins have view-only access to all patient data — they can see Basic Info, Medical Background, Allergies, Clearance, and Visits, but cannot modify any clinical information. The key differences are around deletion:

  • Doctors cannot delete patients at all. They can only create and edit records.
  • Admins can soft-delete (trash) a patient, which hides the patient from the regular list but does not destroy the data. When an admin trashes a patient, all superadmins are notified by email.
  • Superadmins can see trashed patients and permanently delete them. This is a destructive, irreversible action. Superadmins can also bulk-delete multiple patients at once.
Important: Permanent deletion cannot be undone. All patient data, visits, and images are destroyed. Only Superadmins have this capability.

Patient Self-Intake

Patients can submit a pre-consultation form via a public URL (no login required). This creates a patient record with pending_intake status. Any doctor or admin can then review and complete the intake from the Dashboard.

病患管理

建立、編輯及刪除病患紀錄。

功能 醫師 管理員 超級管理員
檢視所有病患(可搜尋列表)
建立新病患
編輯病患資訊(姓名、出生日期、聯絡方式等)
編輯病史
編輯過敏資訊
編輯適性許可狀態
變更病患狀態
上傳/刪除影像
匯出 PDF(需要 PIN)
匯出 FHIR R4 JSON
以電子郵件將紀錄寄給其他醫師
軟刪除病患(移至回收站)
檢視已刪除的病患
永久刪除病患
批量刪除病患

說明

只有醫師可以建立、編輯及管理病患紀錄。管理員和超級管理員對所有病患資料只有唯讀權限 — 他們可以查看基本資訊、病史背景、過敏資訊、適性許可及看診紀錄,但無法修改任何臨床資訊。主要差異在於刪除

  • 醫師完全無法刪除病患。只能建立和編輯紀錄。
  • 管理員可以軟刪除(移至回收站)病患,這會將病患從一般列表中隱藏但不會銷毀資料。當管理員將病患移至回收站時,所有超級管理員會收到電子郵件通知。
  • 超級管理員可以查看已刪除的病患並永久刪除。這是一個具破壞性且不可逆的操作。超級管理員也可以一次批量刪除多位病患。
重要:永久刪除無法復原。所有病患資料、看診紀錄和影像都會被銷毀。只有超級管理員擁有此功能。

病患自助填寫

病患可以透過公開網址提交看診前問卷(無需登入)。這會建立一筆狀態為 pending_intake 的病患紀錄。任何醫師或管理員都可以從儀表板檢閱並完成資料登錄。

Gestion de Pacientes

Creacion, edicion y eliminacion de registros de pacientes.

Funcion Medico Administrador Superadmin
Ver todos los pacientes (lista con busqueda)
Crear nuevo paciente
Editar informacion del paciente (nombre, fecha de nacimiento, contacto, etc.)
Editar historial medico
Editar alergias
Editar estado de aptitud
Cambiar estado del paciente
Subir / eliminar imagenes
Exportar PDF (requiere PIN)
Exportar FHIR R4 JSON
Enviar registro por correo a otro medico
Eliminacion temporal de paciente (papelera)
Ver pacientes en papelera
Eliminar paciente permanentemente
Eliminacion masiva de pacientes

Explicacion

Solo los medicos pueden crear, editar y gestionar registros de pacientes. Los administradores y superadministradores tienen acceso de solo lectura a todos los datos de pacientes — pueden ver Informacion Basica, Antecedentes Medicos, Alergias, Aptitud y Consultas, pero no pueden modificar ninguna informacion clinica. Las diferencias clave estan en la eliminacion:

  • Los medicos no pueden eliminar pacientes en absoluto. Solo pueden crear y editar registros.
  • Los administradores pueden eliminar temporalmente (mover a papelera) un paciente, lo que oculta al paciente de la lista regular pero no destruye los datos. Cuando un administrador mueve un paciente a la papelera, todos los superadministradores son notificados por correo electronico.
  • Los superadministradores pueden ver los pacientes en papelera y eliminarlos permanentemente. Esta es una accion destructiva e irreversible. Los superadministradores tambien pueden eliminar masivamente multiples pacientes a la vez.
Importante: La eliminacion permanente no se puede deshacer. Todos los datos del paciente, consultas e imagenes son destruidos. Solo los superadministradores tienen esta capacidad.

Auto-registro de Pacientes

Los pacientes pueden enviar un formulario de pre-consulta a traves de una URL publica (sin necesidad de iniciar sesion). Esto crea un registro de paciente con estado pending_intake. Cualquier medico o administrador puede entonces revisar y completar el registro desde el Panel Principal.

Visits & Medical Records

Adding, editing, and exporting clinical visit records.

Feature Doctor Admin Superadmin
Add visit (any specialty)
Edit existing visit
Delete visit
ICD-10 diagnosis search
Prescribe medications
Edit visit date (retroactive)

Explanation

Visit management is exclusively a doctor function. Admins and superadmins can view all visit records but cannot create, edit, or delete visits.

Supported Specialties

ProjectMed supports 12 specialty visit templates, each with specialty-specific fields:

  • General / Sports Medicine — SOAP format with vitals, physical exam, assessment, plan
  • Internal Medicine — Problem list with status tracking, review of systems
  • OB/GYN — Prenatal and gynecological visits with specialized forms
  • Psychology — Session type, mental status exam (MSE), risk assessment, interventions
  • Pediatrics — Growth milestones, developmental screening, vaccines
  • Dermatology — Lesion tracking, ABCDE assessment, full body skin exam
  • Nutrition — Anthropometry, dietary assessment, meal planning
  • TCM (Traditional Chinese Medicine) — Tongue/pulse diagnosis, zangfu patterns, herbal formulas
  • Bone Setting — Orthopedic tests, manual therapy techniques, rehabilitation
  • Rehabilitation — Functional assessment, therapy protocols

ICD-10 Codes

All specialty visit forms include an ICD-10 diagnosis search. Doctors can type a diagnosis name or ICD-10 code, and the system suggests matching entries from the built-in database (multilingual: English, Spanish, Chinese). ICD-10 codes are saved alongside the diagnosis text and appear in both the on-screen visit display and PDF/FHIR exports.

看診與醫療紀錄

新增、編輯及匯出臨床看診紀錄。

功能 醫師 管理員 超級管理員
新增看診(任何專科)
編輯既有看診紀錄
刪除看診紀錄
ICD-10 診斷碼搜尋
開立處方
編輯看診日期(可追溯)

說明

看診管理完全是醫師的功能。管理員和超級管理員可以查看所有看診紀錄,但無法建立、編輯或刪除看診紀錄。

支援的專科

ProjectMed 支援 12 種專科看診模板,每種都有專科特定的欄位:

  • 一般科/運動醫學 — SOAP 格式,含生命徵象、體格檢查、評估、計畫
  • 內科 — 問題清單與狀態追蹤、系統回顧
  • 婦產科 — 產前及婦科看診,含專科表單
  • 心理科 — 療程類型、精神狀態檢查(MSE)、風險評估、介入措施
  • 小兒科 — 生長里程碑、發展篩檢、疫苗接種
  • 皮膚科 — 病灶追蹤、ABCDE 評估、全身皮膚檢查
  • 營養科 — 人體測量、飲食評估、膳食計畫
  • 中醫 — 舌診/脈診、臟腑辨證、方劑處方
  • 傷科(骨傷科) — 骨科檢查、手法治療技術、復健
  • 復健科 — 功能評估、治療方案

ICD-10 診斷碼

所有專科看診表單都包含 ICD-10 診斷碼搜尋功能。醫師可以輸入診斷名稱或 ICD-10 代碼,系統會從內建資料庫中建議匹配的項目(多語言:英文、西班牙文、中文)。ICD-10 代碼會與診斷文字一起儲存,並同時顯示在螢幕上的看診紀錄和 PDF/FHIR 匯出中。

Consultas y Registros Medicos

Agregar, editar y exportar registros de consultas clinicas.

Funcion Medico Administrador Superadmin
Agregar consulta (cualquier especialidad)
Editar consulta existente
Eliminar consulta
Busqueda de diagnostico ICD-10
Prescribir medicamentos
Editar fecha de consulta (retroactiva)

Explicacion

La gestion de consultas es exclusivamente una funcion del medico. Los administradores y superadministradores pueden ver todos los registros de consultas pero no pueden crear, editar o eliminar consultas.

Especialidades Soportadas

ProjectMed soporta 12 plantillas de consulta por especialidad, cada una con campos especificos:

  • General / Medicina Deportiva — Formato SOAP con signos vitales, examen fisico, evaluacion, plan
  • Medicina Interna — Lista de problemas con seguimiento de estado, revision por sistemas
  • Obstetricia/Ginecologia — Consultas prenatales y ginecologicas con formularios especializados
  • Psicologia — Tipo de sesion, examen del estado mental (MSE), evaluacion de riesgo, intervenciones
  • Pediatria — Hitos de crecimiento, evaluacion del desarrollo, vacunas
  • Dermatologia — Seguimiento de lesiones, evaluacion ABCDE, examen cutaneo corporal completo
  • Nutricion — Antropometria, evaluacion dietetica, planificacion de comidas
  • Medicina Tradicional China (MTC) — Diagnostico de lengua/pulso, patrones zangfu, formulas herbales
  • Traumatologia Osea — Pruebas ortopedicas, tecnicas de terapia manual, rehabilitacion
  • Rehabilitacion — Evaluacion funcional, protocolos de terapia

Codigos ICD-10

Todos los formularios de consulta por especialidad incluyen busqueda de diagnostico ICD-10. Los medicos pueden escribir un nombre de diagnostico o codigo ICD-10, y el sistema sugiere coincidencias de la base de datos integrada (multilingue: ingles, espanol, chino). Los codigos ICD-10 se guardan junto al texto del diagnostico y aparecen tanto en la pantalla de la consulta como en las exportaciones PDF/FHIR.

Doctor Management

Adding, approving, and managing doctor accounts.

Feature Doctor Admin Superadmin
View doctors list
Create doctor account
Edit doctor details
Change doctor status
Unlock locked account
Reset doctor password
Edit clinic email
Delete single doctor
Bulk import doctors (CSV)
Assign doctor to group
Bulk delete doctors

Explanation

Doctors have no access to the Doctor Management page at all. This is an administrative function reserved for Admins and Superadmins.

  • Admins can perform all day-to-day doctor management tasks: creating accounts, changing statuses (Active, Pending, On Vacation, Suspended, etc.), unlocking locked accounts, and resetting passwords. When an admin creates a doctor, a temporary password is auto-generated and emailed to the doctor.
  • Superadmins gain two additional powers: assigning doctors to specific groups and bulk-deleting multiple doctors at once.

Doctor Statuses

StatusMeaning
pendingNewly registered, awaiting approval. Cannot log in yet.
active / approvedFully operational. Can log in and use all clinical features.
on_vacationTemporarily away. Account remains active but flagged.
on_leaveExtended leave. Account remains but flagged.
suspendedTemporarily disabled by admin. Cannot log in.
inactivePermanently deactivated. Cannot log in.

Self-Registration

Doctors can self-register via the public registration page. Self-registered accounts start with pending status and must be approved by an Admin or Superadmin before the doctor can log in. When approved, the doctor receives an email notification.

醫師管理

新增、核准及管理醫師帳戶。

功能 醫師 管理員 超級管理員
檢視醫師列表
建立醫師帳戶
編輯醫師資訊
變更醫師狀態
解鎖已鎖定的帳戶
重設醫師密碼
編輯診所電子郵件
刪除單一醫師
批量匯入醫師(CSV)
將醫師分配至群組
批量刪除醫師

說明

醫師完全無法存取醫師管理頁面。這是專屬於管理員和超級管理員的行政功能。

  • 管理員可以執行所有日常醫師管理任務:建立帳戶、變更狀態(啟用、待審核、休假中、停權等)、解鎖已鎖定的帳戶及重設密碼。當管理員建立醫師帳戶時,系統會自動產生臨時密碼並透過電子郵件發送給醫師。
  • 超級管理員額外擁有兩項權力:將醫師分配至特定群組,以及一次批量刪除多位醫師。

醫師狀態

狀態意義
pending新註冊,等待核准。尚無法登入。
active / approved正常運作中。可登入並使用所有臨床功能。
on_vacation暫時離開。帳戶仍為啟用狀態但已標記。
on_leave長期請假。帳戶保留但已標記。
suspended被管理員暫時停權。無法登入。
inactive永久停用。無法登入。

自助註冊

醫師可以透過公開註冊頁面自行註冊。自行註冊的帳戶初始狀態為 pending,必須由管理員或超級管理員核准後才能登入。核准後,醫師會收到電子郵件通知。

Gestion de Medicos

Agregar, aprobar y gestionar cuentas de medicos.

Funcion Medico Administrador Superadmin
Ver lista de medicos
Crear cuenta de medico
Editar detalles del medico
Cambiar estado del medico
Desbloquear cuenta bloqueada
Restablecer contrasena del medico
Editar correo de clinica
Eliminar un medico
Importacion masiva de medicos (CSV)
Asignar medico a un grupo
Eliminacion masiva de medicos

Explicacion

Los medicos no tienen acceso a la pagina de Gestion de Medicos en absoluto. Esta es una funcion administrativa reservada para Administradores y Superadministradores.

  • Los administradores pueden realizar todas las tareas diarias de gestion de medicos: crear cuentas, cambiar estados (Activo, Pendiente, De Vacaciones, Suspendido, etc.), desbloquear cuentas bloqueadas y restablecer contrasenas. Cuando un administrador crea un medico, se genera automaticamente una contrasena temporal y se envia por correo al medico.
  • Los superadministradores obtienen dos poderes adicionales: asignar medicos a grupos especificos y eliminar masivamente multiples medicos a la vez.

Estados del Medico

EstadoSignificado
pendingRecien registrado, esperando aprobacion. Aun no puede iniciar sesion.
active / approvedCompletamente operativo. Puede iniciar sesion y usar todas las funciones clinicas.
on_vacationTemporalmente ausente. La cuenta permanece activa pero marcada.
on_leaveLicencia extendida. La cuenta permanece pero marcada.
suspendedTemporalmente deshabilitado por el administrador. No puede iniciar sesion.
inactiveDesactivado permanentemente. No puede iniciar sesion.

Auto-registro

Los medicos pueden auto-registrarse a traves de la pagina publica de registro. Las cuentas auto-registradas comienzan con estado pending y deben ser aprobadas por un Administrador o Superadministrador antes de que el medico pueda iniciar sesion. Al ser aprobado, el medico recibe una notificacion por correo electronico.

Admin Management

Managing administrator accounts. Superadmin-only.

Feature Doctor Admin Superadmin
View admins list
Create admin account
Edit admin details
Delete admin
Approve / reject pending admin
Unlock locked admin
Reset admin password
Assign admin to group
Edit admin clinic email
Manage groups (create/edit/delete)

Explanation

Admin management is exclusively a Superadmin function. Neither Doctors nor Admins can see or access the Admin Management page.

This is a deliberate security measure: only the platform owner (Superadmin) should be able to create, modify, or remove administrative accounts, since admins have elevated privileges over doctor accounts and patient data.

Self-protection rule: A Superadmin cannot delete or demote their own account. This prevents accidental lockout.

Admin Registration

Admins can request an account via the public admin registration page. These requests start with pending status and must be approved by a Superadmin, who assigns their role and group during the approval process.

管理員管理

管理管理員帳戶。僅限超級管理員。

功能 醫師 管理員 超級管理員
檢視管理員列表
建立管理員帳戶
編輯管理員資訊
刪除管理員
核准/拒絕待審管理員
解鎖已鎖定的管理員
重設管理員密碼
將管理員分配至群組
編輯管理員診所電子郵件
管理群組(建立/編輯/刪除)

說明

管理員管理是超級管理員的專屬功能。醫師和管理員都無法查看或存取管理員管理頁面。

這是一項刻意的安全措施:只有平台擁有者(超級管理員)才能建立、修改或移除管理員帳戶,因為管理員對醫師帳戶和病患資料擁有較高的權限。

自我保護規則:超級管理員無法刪除或降級自己的帳戶。這可以防止意外鎖定。

管理員註冊

管理員可以透過公開的管理員註冊頁面申請帳戶。這些申請的初始狀態為 pending,必須由超級管理員核准,超級管理員會在核准過程中分配角色和群組。

Gestion de Administradores

Gestion de cuentas de administrador. Solo para Superadministradores.

Funcion Medico Administrador Superadmin
Ver lista de administradores
Crear cuenta de administrador
Editar detalles del administrador
Eliminar administrador
Aprobar / rechazar administrador pendiente
Desbloquear administrador bloqueado
Restablecer contrasena de administrador
Asignar administrador a un grupo
Editar correo de clinica del administrador
Gestionar grupos (crear/editar/eliminar)

Explicacion

La gestion de administradores es exclusivamente una funcion del Superadministrador. Ni los Medicos ni los Administradores pueden ver o acceder a la pagina de Gestion de Administradores.

Esta es una medida de seguridad deliberada: solo el propietario de la plataforma (Superadministrador) debe poder crear, modificar o eliminar cuentas administrativas, ya que los administradores tienen privilegios elevados sobre las cuentas de medicos y los datos de pacientes.

Regla de autoproteccion: Un Superadministrador no puede eliminar o degradar su propia cuenta. Esto previene bloqueos accidentales.

Registro de Administradores

Los administradores pueden solicitar una cuenta a traves de la pagina publica de registro de administradores. Estas solicitudes comienzan con estado pending y deben ser aprobadas por un Superadministrador, quien asigna el rol y grupo durante el proceso de aprobacion.

Groups

Organizing doctors and admins into clinics or teams.

Feature Doctor Admin Superadmin
View groups
Create group
Edit own group
Delete group
Cascade doctors when changing admin group
Request group transfer

Explanation

Groups represent clinics, teams, or organizational units. They are used to organize doctors and admins, though patient visibility is not restricted by group.

  • Admins can create groups and edit the group they belong to (name and description).
  • Superadmins can additionally delete groups and edit any group.

Cascade Group Change

When a superadmin changes an admin's group, they are prompted with a checkbox to optionally move all doctors in that group. A warning shows the count of affected doctors.

Group Transfer Requests

Doctors can request a group transfer from their profile page. The admin of the doctor's current group (or any superadmin) can approve or reject the request.

群組

將醫師和管理員組織為診所或團隊。

功能 醫師 管理員 超級管理員
檢視群組
建立群組
編輯自己的群組
刪除群組
變更管理員群組時連動醫師
申請群組轉移

說明

群組代表診所、團隊或組織單位。用於組織醫師和管理員,但病患可見性不受群組限制。

  • 管理員可以建立群組並編輯自己所屬的群組(名稱和說明)。
  • 超級管理員另外還可以刪除群組和編輯任何群組。

連動群組變更

當超級管理員變更管理員的群組時,系統會提示一個勾選框,可選擇是否同時移動該群組中的所有醫師。警告訊息會顯示受影響的醫師數量。

群組轉移申請

醫師可以從個人檔案頁面申請群組轉移。醫師當前群組的管理員(或任何超級管理員)可以核准或拒絕該申請。

Grupos

Organizacion de medicos y administradores en clinicas o equipos.

Funcion Medico Administrador Superadmin
Ver grupos
Crear grupo
Editar grupo propio
Eliminar grupo
Transferir medicos en cascada al cambiar grupo del administrador
Solicitar transferencia de grupo

Explicacion

Los grupos representan clinicas, equipos o unidades organizativas. Se utilizan para organizar medicos y administradores, aunque la visibilidad de pacientes no esta restringida por grupo.

  • Los administradores pueden crear grupos y editar el grupo al que pertenecen (nombre y descripcion).
  • Los superadministradores adicionalmente pueden eliminar grupos y editar cualquier grupo.

Cambio de Grupo en Cascada

Cuando un superadministrador cambia el grupo de un administrador, se le presenta una casilla de verificacion para opcionalmente mover a todos los medicos de ese grupo. Una advertencia muestra la cantidad de medicos afectados.

Solicitudes de Transferencia de Grupo

Los medicos pueden solicitar una transferencia de grupo desde su pagina de perfil. El administrador del grupo actual del medico (o cualquier superadministrador) puede aprobar o rechazar la solicitud.

Audit & System

Activity tracking, system monitoring, and data backup.

Feature Doctor Admin Superadmin
View audit logs
Filter by action / date range
Select display timezone
Bulk delete audit logs
Clear all audit logs
View system overview (email stats, services)
Export full system backup (JSON)

Explanation

Every significant action in ProjectMed is logged in the audit trail: logins, patient views, record changes, exports, account management, and more. Each log entry records who performed the action, what was done, when it happened, and who or what was affected.

  • Admins can view and filter audit logs. Their view is scoped to their own group's activity.
  • Superadmins see all audit logs across all groups and can delete logs (individually, in bulk, or clear all). They also have access to a system overview dashboard showing email usage statistics and service plan information.

Tracked Actions

The following actions are automatically logged:

  • Authentication: login
  • Patients: view, create, update, trash, delete, add/edit/delete visit, export PDF, export FHIR, email record, upload/delete image
  • Doctors: create, update, delete, unlock, reset password, set/remove PIN
  • Admins: create, update, delete, unlock, reset password, set/remove PIN, approve, reject
  • Groups: create, update, delete
  • System: export backup, delete audit logs, clear all audit logs

稽核與系統

活動追蹤、系統監控及資料備份。

功能 醫師 管理員 超級管理員
檢視稽核紀錄
依操作類型/日期範圍篩選
選擇顯示時區
批量刪除稽核紀錄
清除所有稽核紀錄
檢視系統概覽(電子郵件統計、服務資訊)
匯出完整系統備份(JSON)

說明

ProjectMed 中的每一項重要操作都會記錄在稽核軌跡中:登入、病患檢視、紀錄變更、匯出、帳戶管理等。每一筆紀錄記載了執行者、操作內容、發生時間及受影響的對象。

  • 管理員可以檢視和篩選稽核紀錄。其檢視範圍限於自身群組的活動。
  • 超級管理員可以查看所有群組的稽核紀錄,並可刪除紀錄(單筆、批量或全部清除)。他們還可以存取系統概覽儀表板,顯示電子郵件使用統計和服務方案資訊。

追蹤的操作

以下操作會自動記錄:

  • 身分驗證:登入
  • 病患:檢視、建立、更新、移至回收站、刪除、新增/編輯/刪除看診、匯出 PDF、匯出 FHIR、郵件發送紀錄、上傳/刪除影像
  • 醫師:建立、更新、刪除、解鎖、重設密碼、設定/移除 PIN
  • 管理員:建立、更新、刪除、解鎖、重設密碼、設定/移除 PIN、核准、拒絕
  • 群組:建立、更新、刪除
  • 系統:匯出備份、刪除稽核紀錄、清除所有稽核紀錄

Auditoria y Sistema

Seguimiento de actividad, monitoreo del sistema y respaldo de datos.

Funcion Medico Administrador Superadmin
Ver registros de auditoria
Filtrar por accion / rango de fechas
Seleccionar zona horaria de visualizacion
Eliminacion masiva de registros de auditoria
Borrar todos los registros de auditoria
Ver resumen del sistema (estadisticas de correo, servicios)
Exportar respaldo completo del sistema (JSON)

Explicacion

Cada accion significativa en ProjectMed se registra en la pista de auditoria: inicios de sesion, vistas de pacientes, cambios en registros, exportaciones, gestion de cuentas y mas. Cada entrada del registro indica quien realizo la accion, que se hizo, cuando ocurrio y quien o que fue afectado.

  • Los administradores pueden ver y filtrar registros de auditoria. Su vista esta limitada a la actividad de su propio grupo.
  • Los superadministradores ven todos los registros de auditoria de todos los grupos y pueden eliminar registros (individualmente, masivamente o borrar todos). Tambien tienen acceso a un panel de resumen del sistema que muestra estadisticas de uso de correo e informacion del plan de servicio.

Acciones Rastreadas

Las siguientes acciones se registran automaticamente:

  • Autenticacion: inicio de sesion
  • Pacientes: ver, crear, actualizar, mover a papelera, eliminar, agregar/editar/eliminar consulta, exportar PDF, exportar FHIR, enviar registro por correo, subir/eliminar imagen
  • Medicos: crear, actualizar, eliminar, desbloquear, restablecer contrasena, establecer/eliminar PIN
  • Administradores: crear, actualizar, eliminar, desbloquear, restablecer contrasena, establecer/eliminar PIN, aprobar, rechazar
  • Grupos: crear, actualizar, eliminar
  • Sistema: exportar respaldo, eliminar registros de auditoria, borrar todos los registros de auditoria

Profile & Account

Managing personal settings, passwords, and PINs.

Feature Doctor Admin Superadmin
Edit name
Edit specialty, license number, ID number
Edit timezone
View clinic email (read-only)
Change password
Set / update PIN
Remove PIN
Request group transfer

Explanation

All users access the My Profile page to manage their personal settings. The main differences:

  • Doctors have additional profile fields (specialty, license number, ID number) that Admins and Superadmins do not have, since these are clinical credentials.
  • All roles can change their password and manage their PIN. Password changes require the current password. PIN is required for PDF exports.
PIN requirement: A PIN must be set before a user can export patient PDFs. New users are prompted to set a PIN on their first login.

Password Requirements

  • Minimum 8 characters
  • At least one uppercase letter, one lowercase letter, one digit, and one special character
  • Cannot reuse the last 5 passwords

PIN Requirements

  • Exactly 6 digits
  • Cannot use sequences from date of birth or license number

個人檔案與帳戶

管理個人設定、密碼和 PIN。

功能 醫師 管理員 超級管理員
編輯姓名
編輯專科、執照號碼、身分證號
編輯時區
檢視診所電子郵件(唯讀)
變更密碼
設定/更新 PIN
移除 PIN
申請群組轉移

說明

所有使用者都可透過「我的檔案」頁面管理個人設定。主要差異:

  • 醫師擁有額外的個人檔案欄位(專科、執照號碼、身分證號),管理員和超級管理員沒有這些欄位,因為這些屬於臨床證照資訊。
  • 所有角色都可以變更密碼和管理 PIN。變更密碼需要輸入現有密碼。匯出 PDF 時需要 PIN。
PIN 要求:使用者必須先設定 PIN 才能匯出病患 PDF。新使用者在首次登入時會被提示設定 PIN。

密碼要求

  • 最少 8 個字元
  • 至少包含一個大寫字母、一個小寫字母、一個數字和一個特殊字元
  • 不能重複使用最近 5 次的密碼

PIN 要求

  • 恰好 6 位數字
  • 不能使用來自出生日期或執照號碼的序列

Perfil y Cuenta

Gestion de configuraciones personales, contrasenas y PINs.

Funcion Medico Administrador Superadmin
Editar nombre
Editar especialidad, numero de licencia, numero de identificacion
Editar zona horaria
Ver correo de clinica (solo lectura)
Cambiar contrasena
Establecer / actualizar PIN
Eliminar PIN
Solicitar transferencia de grupo

Explicacion

Todos los usuarios acceden a la pagina Mi Perfil para gestionar sus configuraciones personales. Las principales diferencias:

  • Los medicos tienen campos de perfil adicionales (especialidad, numero de licencia, numero de identificacion) que los Administradores y Superadministradores no tienen, ya que son credenciales clinicas.
  • Todos los roles pueden cambiar su contrasena y gestionar su PIN. Los cambios de contrasena requieren la contrasena actual. El PIN es necesario para exportar PDFs.
Requisito de PIN: Se debe establecer un PIN antes de poder exportar PDFs de pacientes. A los nuevos usuarios se les solicita establecer un PIN en su primer inicio de sesion.

Requisitos de Contrasena

  • Minimo 8 caracteres
  • Al menos una letra mayuscula, una minuscula, un digito y un caracter especial
  • No se pueden reutilizar las ultimas 5 contrasenas

Requisitos de PIN

  • Exactamente 6 digitos
  • No se pueden usar secuencias de la fecha de nacimiento o numero de licencia

Authentication & Security

Login methods, account recovery, and security measures.

Feature Public Doctor Admin Superadmin
Doctor self-registration
Admin registration request
Admin registration with group selection
Patient self-intake form
Forgot password (OTP reset)
Forgot PIN (OTP reset)
Forgot email (ID lookup)
Login with password
Login with PIN

Login Security

ProjectMed enforces a progressive lockout policy to protect against brute-force attacks:

  1. 5 failed password attempts → User must switch to PIN-only login
  2. 5 failed PIN attempts → Account is locked
  3. 10 total failed attempts → User must reset both password and PIN
Locked accounts can only be unlocked by an Admin (for doctors) or a Superadmin (for admins). The unlock process sends a temporary password via email and forces a password reset on next login.

Account Recovery Escalation

If a user loses access to their registered email:

  • Doctor → contacts their Admin
  • Admin → contacts the Superadmin
  • Superadmin can manually reset from the Admin Management screen

身分驗證與安全

登入方式、帳戶恢復及安全措施。

功能 公開 醫師 管理員 超級管理員
醫師自助註冊
管理員註冊申請
管理員註冊含群組選擇
病患自助填寫表單
忘記密碼(OTP 重設)
忘記 PIN(OTP 重設)
忘記電子郵件(身分證號查詢)
使用密碼登入
使用 PIN 登入

登入安全

ProjectMed 實施漸進式鎖定政策以防止暴力破解攻擊:

  1. 密碼錯誤 5 次 → 使用者必須改用 PIN 登入
  2. PIN 錯誤 5 次 → 帳戶被鎖定
  3. 累計錯誤 10 次 → 使用者必須同時重設密碼和 PIN
帳戶被鎖定後,只能由管理員(針對醫師)或超級管理員(針對管理員)解鎖。解鎖流程會透過電子郵件發送臨時密碼,並強制使用者在下次登入時重設密碼。

帳戶恢復升級機制

如果使用者無法存取已註冊的電子郵件:

  • 醫師 → 聯絡其管理員
  • 管理員 → 聯絡超級管理員
  • 超級管理員可以從管理員管理畫面手動重設

Autenticacion y Seguridad

Metodos de inicio de sesion, recuperacion de cuenta y medidas de seguridad.

Funcion Publico Medico Administrador Superadmin
Auto-registro de medico
Solicitud de registro de administrador
Registro de administrador con seleccion de grupo
Formulario de auto-registro de paciente
Olvide mi contrasena (restablecimiento OTP)
Olvide mi PIN (restablecimiento OTP)
Olvide mi correo (busqueda por ID)
Iniciar sesion con contrasena
Iniciar sesion con PIN

Seguridad de Inicio de Sesion

ProjectMed aplica una politica de bloqueo progresivo para proteger contra ataques de fuerza bruta:

  1. 5 intentos fallidos con contrasena → El usuario debe cambiar a inicio de sesion solo con PIN
  2. 5 intentos fallidos con PIN → La cuenta se bloquea
  3. 10 intentos fallidos en total → El usuario debe restablecer tanto la contrasena como el PIN
Las cuentas bloqueadas solo pueden ser desbloqueadas por un Administrador (para medicos) o un Superadministrador (para administradores). El proceso de desbloqueo envia una contrasena temporal por correo electronico y obliga a restablecer la contrasena en el proximo inicio de sesion.

Escalamiento de Recuperacion de Cuenta

Si un usuario pierde acceso a su correo electronico registrado:

  • Medico → contacta a su Administrador
  • Administrador → contacta al Superadministrador
  • Superadministrador puede restablecer manualmente desde la pantalla de Gestion de Administradores

Quick Summary

At-a-glance reference of all role capabilities.

Capability Doctor Admin Superadmin
View / search patients
Create / edit patients
Add / edit / delete visits
Export PDF / FHIR
Upload patient images
Request group transfer
Email records to doctors
Manage own profile / PIN
Admin-level features
Manage doctors
View audit logs
Soft-delete (trash) patients
Create / edit groups
Superadmin-only features
Manage admins
Permanently delete patients
Bulk delete (doctors / patients)
Delete / clear audit logs
Delete groups
System overview & email stats
Export full system backup
Cascade group with doctors

快速總覽

所有角色功能的一覽參考。

功能 醫師 管理員 超級管理員
檢視/搜尋病患
建立/編輯病患
新增/編輯/刪除看診
匯出 PDF / FHIR
上傳病患影像
申請群組轉移
以郵件發送紀錄給醫師
管理個人檔案 / PIN
管理員等級功能
管理醫師
檢視稽核紀錄
軟刪除(回收站)病患
建立/編輯群組
超級管理員專屬功能
管理管理員
永久刪除病患
批量刪除(醫師/病患)
刪除/清除稽核紀錄
刪除群組
系統概覽與電子郵件統計
匯出完整系統備份
連動群組與醫師

Resumen Rapido

Referencia rapida de todas las capacidades por rol.

Capacidad Medico Administrador Superadmin
Ver / buscar pacientes
Crear / editar pacientes
Agregar / editar / eliminar consultas
Exportar PDF / FHIR
Subir imagenes de pacientes
Solicitar transferencia de grupo
Enviar registros por correo a medicos
Gestionar perfil propio / PIN
Funciones de nivel Administrador
Gestionar medicos
Ver registros de auditoria
Eliminacion temporal (papelera) de pacientes
Crear / editar grupos
Funciones exclusivas del Superadministrador
Gestionar administradores
Eliminar pacientes permanentemente
Eliminacion masiva (medicos / pacientes)
Eliminar / borrar registros de auditoria
Eliminar grupos
Resumen del sistema y estadisticas de correo
Exportar respaldo completo del sistema
Transferencia de grupo en cascada con medicos

API Endpoints Reference

Backend route guards and access control for developers.

Every API endpoint is protected by one of three role guards:

GuardAllowsUsed For
require_doctor_or_adminDoctor, Admin, SuperadminPatient CRUD, visits, images, PDF/FHIR export, doctor self-profile
require_adminAdmin, SuperadminDoctor management, audit logs, soft-delete patients, groups
require_superadminSuperadmin onlyAdmin management, hard-delete, bulk operations, system backup, audit clearing

Patient Endpoints

MethodPathGuard
GET/patients/doctor_or_admin
GET/patients/{id}doctor_or_admin
POST/patients/doctor
PUT/patients/{id}doctor
POST/patients/{id}/trashadmin
DELETE/patients/{id}superadmin
DELETE/patients/bulksuperadmin
POST/patients/intakepublic

Visit Endpoints

MethodPathGuard
POST/patients/{id}/visitsdoctor
PUT/patients/{id}/visits/{vid}doctor
DELETE/patients/{id}/visits/{vid}doctor

Export Endpoints

MethodPathGuard
GET/patients/{id}/exportdoctor_or_admin
GET/patients/{id}/export-fhirdoctor_or_admin
POST/patients/{id}/email-recorddoctor_or_admin

Doctor Endpoints

MethodPathGuard
GET/doctors/admin
POST/doctors/admin
PUT/doctors/{id}admin
DELETE/doctors/{id}admin
DELETE/doctors/bulksuperadmin
GET/PUT/doctors/medoctor_or_admin

Admin Endpoints

MethodPathGuard
GET/admins/superadmin
POST/admins/superadmin
PUT/admins/{id}superadmin
DELETE/admins/{id}superadmin
GET/admins/exportsuperadmin

Audit Endpoints

MethodPathGuard
GET/audit/admin
DELETE/audit/bulksuperadmin
DELETE/audit/clear-allsuperadmin

Transfer Endpoints

MethodPathGuard
POST/doctors/me/transfer-groupdoctor
GET/doctors/transfer-requestsadmin
POST/doctors/transfer-requests/{id}/approveadmin
POST/doctors/transfer-requests/{id}/rejectadmin

API 端點參考

後端路由守衛與存取控制(開發者參考)。

每個 API 端點都受到三種角色守衛之一的保護:

守衛允許角色用途
require_doctor_or_admin醫師、管理員、超級管理員病患 CRUD、看診、影像、PDF/FHIR 匯出、醫師個人檔案
require_admin管理員、超級管理員醫師管理、稽核紀錄、軟刪除病患、群組
require_superadmin僅超級管理員管理員管理、永久刪除、批量操作、系統備份、清除稽核紀錄

病患端點

方法路徑守衛
GET/patients/doctor_or_admin
GET/patients/{id}doctor_or_admin
POST/patients/doctor
PUT/patients/{id}doctor
POST/patients/{id}/trashadmin
DELETE/patients/{id}superadmin
DELETE/patients/bulksuperadmin
POST/patients/intakepublic

看診端點

方法路徑守衛
POST/patients/{id}/visitsdoctor
PUT/patients/{id}/visits/{vid}doctor
DELETE/patients/{id}/visits/{vid}doctor

匯出端點

方法路徑守衛
GET/patients/{id}/exportdoctor_or_admin
GET/patients/{id}/export-fhirdoctor_or_admin
POST/patients/{id}/email-recorddoctor_or_admin

醫師端點

方法路徑守衛
GET/doctors/admin
POST/doctors/admin
PUT/doctors/{id}admin
DELETE/doctors/{id}admin
DELETE/doctors/bulksuperadmin
GET/PUT/doctors/medoctor_or_admin

管理員端點

方法路徑守衛
GET/admins/superadmin
POST/admins/superadmin
PUT/admins/{id}superadmin
DELETE/admins/{id}superadmin
GET/admins/exportsuperadmin

稽核端點

方法路徑守衛
GET/audit/admin
DELETE/audit/bulksuperadmin
DELETE/audit/clear-allsuperadmin

轉移端點

方法路徑守衛
POST/doctors/me/transfer-groupdoctor
GET/doctors/transfer-requestsadmin
POST/doctors/transfer-requests/{id}/approveadmin
POST/doctors/transfer-requests/{id}/rejectadmin

Referencia de Endpoints API

Guardias de rutas del backend y control de acceso para desarrolladores.

Cada endpoint de la API esta protegido por uno de tres guardias de rol:

GuardiaPermiteUso
require_doctor_or_adminMedico, Administrador, SuperadminCRUD de pacientes, consultas, imagenes, exportacion PDF/FHIR, perfil propio del medico
require_adminAdministrador, SuperadminGestion de medicos, registros de auditoria, eliminacion temporal de pacientes, grupos
require_superadminSolo SuperadminGestion de administradores, eliminacion permanente, operaciones masivas, respaldo del sistema, borrado de auditoria

Endpoints de Pacientes

MetodoRutaGuardia
GET/patients/doctor_or_admin
GET/patients/{id}doctor_or_admin
POST/patients/doctor
PUT/patients/{id}doctor
POST/patients/{id}/trashadmin
DELETE/patients/{id}superadmin
DELETE/patients/bulksuperadmin
POST/patients/intakepublic

Endpoints de Consultas

MetodoRutaGuardia
POST/patients/{id}/visitsdoctor
PUT/patients/{id}/visits/{vid}doctor
DELETE/patients/{id}/visits/{vid}doctor

Endpoints de Exportacion

MetodoRutaGuardia
GET/patients/{id}/exportdoctor_or_admin
GET/patients/{id}/export-fhirdoctor_or_admin
POST/patients/{id}/email-recorddoctor_or_admin

Endpoints de Medicos

MetodoRutaGuardia
GET/doctors/admin
POST/doctors/admin
PUT/doctors/{id}admin
DELETE/doctors/{id}admin
DELETE/doctors/bulksuperadmin
GET/PUT/doctors/medoctor_or_admin

Endpoints de Administradores

MetodoRutaGuardia
GET/admins/superadmin
POST/admins/superadmin
PUT/admins/{id}superadmin
DELETE/admins/{id}superadmin
GET/admins/exportsuperadmin

Endpoints de Auditoria

MetodoRutaGuardia
GET/audit/admin
DELETE/audit/bulksuperadmin
DELETE/audit/clear-allsuperadmin

Endpoints de Transferencia

MetodoRutaGuardia
POST/doctors/me/transfer-groupdoctor
GET/doctors/transfer-requestsadmin
POST/doctors/transfer-requests/{id}/approveadmin
POST/doctors/transfer-requests/{id}/rejectadmin