Plantilla de Backend de Aplicación de Información en Radiología
Gestiona órdenes de imágenes, metadatos de estudio, flujos de trabajo de modalidades y reportes de radiólogos desde un backend
Un backend de Información en Radiología listo para producción en Back4app para solicitudes de imágenes, metadatos de estudio DICOM, flujos de trabajo de lectura de especialistas y entrega de informes. Úsalo para acelerar portales de radiología, listas de trabajo e integraciones hospitalarias en web y móvil.
Puntos clave
Esta plantilla te proporciona un backend enfocado en radiología para flujos de trabajo de ingreso a informe, de modo que tu equipo pueda enviar software de operaciones de imágenes más rápido con contratos de datos consistentes.
- Modelo de datos centrado en imágenes — Modela solicitudes, estudios, radiólogos e informes en una estructura amigable para flujos de trabajo diseñada para operaciones de radiología.
- Seguimiento de metadatos DICOM — Almacena metadatos clave a nivel de estudio, como número de acceso, modalidad, UID de estudio, parte del cuerpo y marcas de tiempo de adquisición para indexación y búsqueda.
- Soporte del ciclo de vida del informe — Gestiona informes en borrador, en revisión, enmendados y finalizados con seguimiento de asignaciones y tiempos de respuesta.
- Auditoría y trazabilidad — Rastrear quién creó, actualizó, revisó o finalizó el contenido diagnóstico para apoyar la gobernanza y la resolución de problemas.
- APIs multiplataforma — Sirve listas de trabajo de radiología y pantallas de informes a través de REST y GraphQL con Live Queries opcional para cambios de estado.
¿Qué es la Plantilla de Backend de la Aplicación de Información Radiológica?
Back4app es un backend gestionado para una entrega rápida de productos. La Plantilla de Backend de la Aplicación de Información Radiológica modela solicitudes de imagen, metadatos de estudios DICOM, asignaciones de radiólogos y flujos de trabajo de informes, para que los equipos puedan entregar sistemas de radiología más rápido y con menos trabajo de infraestructura.
Mejor para:
Resumen
Los flujos de trabajo de radiología dependen de una coordinación precisa entre la recepción de órdenes, adquisición de estudios, indexación de metadatos, asignación de especialistas y tiempo de entrega de informes.
Esta plantilla define ImagingRequest, Study, Radiologist, Report y AuditEvent con reglas de propiedad y Live Queries opcional para que los equipos puedan implementar flujos de trabajo de radiología de manera rápida y segura.
Características centrales de Información Radiológica
Cada tarjeta de tecnología en este centro utiliza el mismo esquema de Información Radiológica con SolicitudDeImágenes, Estudio, Radiólogo, Informe y EventoDeAuditoría.
Recepción de solicitudes de imágenes
Realice un seguimiento de las solicitudes con referencias de pacientes, detalles del clínico que ordena, prioridad, indicación y modalidad solicitada.
Registros de estudios y metadatos DICOM
Almacene identificadores de estudio, número de acceso, modalidad, UID de estudio, parte del cuerpo, fecha de realización y estado.
Registro y asignación de radiólogos
Mantener perfiles de especialistas, subespecialidades, indicadores de disponibilidad y enlaces a usuarios autenticados.
Flujo de trabajo de informes diagnósticos
Gestionar borradores, revisiones, enmiendas y estados de informes finales con marcas de tiempo y contexto del revisor.
Eventos de auditoría y seguimiento del tiempo de respuesta
AuditEvent captura acciones operativas como cambios de asignación, finalización de informes y correcciones de metadatos.
¿Por qué construir tu backend de Información Radiológica con Back4app?
Back4app te ofrece un contrato de backend seguro para operaciones de imágenes, para que tu equipo pueda centrarse en listas de trabajo, experiencias de lectura y entrega de informes en lugar de la infraestructura del backend.
- •Entidades listas para flujo de trabajo: Clases predefinidas para solicitudes, estudios, radiólogos e informes te ayudan a implementar flujos comunes de radiología sin tener que diseñar todo desde cero.
- •Metadatos y gobernanza buscables: Almacena campos DICOM estructurados y eventos de auditoría para que los estudios sean más fáciles de encontrar, enrutear y revisar entre equipos.
- •Flexibilidad en tiempo real y API: Utiliza Live Queries para actualizaciones de cola de lectura mientras exposes REST y GraphQL para integraciones en hospitales, adyacentes a PACS o de notificación.
Estandariza los flujos de trabajo de solicitudes de imágenes e informes a través de web y móvil con un contrato de backend y reduce el tiempo de lanzamiento al mercado para productos de radiología.
Beneficios Básicos
Un backend de flujo de trabajo de radiología que te ayuda a enviar más rápido mientras preserva la estructura, visibilidad y control.
Despliegue de flujo de trabajo de imágenes más rápido
Comienza con un modelo de solicitud a informe preconstruido para que puedas enfocarte en portales de clínicos, colas de lectura y UX diagnóstica.
Metadatos estructurados desde el primer día
Almacena campos clave de estudio relacionados con DICOM en un esquema canónico para filtrado, enrutamiento e integraciones posteriores.
Flujos de revisión y aprobación claros
Modela los estados del ciclo de vida del informe explícitamente para que el borrador, revisión, enmienda y finalización sean fáciles de gestionar.
Visibilidad de la lista de trabajo en tiempo real
Live Queries puede mostrar estudios asignados recientemente, cambios de prioridad o informes finalizados de inmediato en las pantallas relevantes.
Capa de integración extensible
Conéctese a sistemas de programación, servicios de notificación, portales o flujos de trabajo de archivo a través de REST o GraphQL.
Andamiaje asistido por IA
Utilice el aviso del Agente de IA para estructurar el backend, crear registros realistas y acelerar demostraciones o pilotos.
¿Listo para optimizar los flujos de trabajo de radiología?
Deje que el Agente de IA de Back4app estructure el backend de Información Radiológica y genere solicitudes de muestra, estudios, especialistas e informes desde un solo aviso.
Gratis para comenzar — 50 mensajes de agente AI/mes, no se requiere tarjeta de crédito
Stack técnico
Todo incluido en esta plantilla de backend de Información Radiológica.
Diagrama ER
Modelo de relación de entidades para el esquema de Información Radiológica.
Esquema que cubre solicitudes de imágenes, estudios, radiólogos, informes y eventos de auditoría.
Ver fuente del diagrama
erDiagram
ImagingCenter ||--o{ Modality : "operates"
ImagingCenter ||--o{ ImagingRequest : "receives"
User ||--o{ ImagingRequest : "orders"
Modality ||--o{ ImagingRequest : "scheduled_for"
ImagingRequest ||--o{ DicomStudy : "produces"
DicomStudy ||--o{ Report : "interpreted_as"
ImagingRequest ||--o{ WorklistItem : "creates"
User ||--o{ WorklistItem : "assigned"
User ||--o{ Report : "authors"
User ||--o{ AuditEvent : "actor_of"
User {
String objectId PK
String username
String email
String password
String role
String displayName
String specialty
Date createdAt
Date updatedAt
}
ImagingCenter {
String objectId PK
String name
String code
String location
String contactNumber
Date createdAt
Date updatedAt
}
Modality {
String objectId PK
Pointer imagingCenter FK
String name
String type
String dicomAETitle
String status
Date createdAt
Date updatedAt
}
ImagingRequest {
String objectId PK
String patientId
String patientName
String accessionNumber
String studyDescription
String priority
String status
Pointer requestedBy FK
Pointer imagingCenter FK
Pointer scheduledModality FK
Date scheduledAt
String clinicalIndication
Date createdAt
Date updatedAt
}
DicomStudy {
String objectId PK
Pointer imagingRequest FK
String studyInstanceUID
Number seriesCount
Number instanceCount
String modalityType
String bodyPartExamined
Date performedAt
String pacsLocation
String metadataStatus
Date createdAt
Date updatedAt
}
Report {
String objectId PK
Pointer dicomStudy FK
Pointer radiologist FK
String status
String findings
String impression
Boolean criticalFlag
Date signedAt
Number version
Date createdAt
Date updatedAt
}
WorklistItem {
String objectId PK
Pointer imagingRequest FK
Pointer assignedTo FK
String queueType
String status
Date dueAt
String notes
Date createdAt
Date updatedAt
}
AuditEvent {
String objectId PK
Pointer actor FK
String action
String targetClass
String targetId
String details
Date timestamp
}
Flujo de Integración
Flujo de Auth-a-CRUD para inicio de sesión en radiología, recuperación de solicitudes de imágenes, registro de estudios y finalización de informes.
Ver fuente del diagrama
sequenceDiagram
participant User as Radiology Staff
participant App as Radiology Information App
participant Back4app as Back4app Cloud
User->>App: Sign in to worklist
App->>Back4app: POST /login (username, password)
Back4app-->>App: Session token + user role
User->>App: Open today's imaging queue
App->>Back4app: GET /classes/WorklistItem?include=imagingRequest,assignedTo
Back4app-->>App: Worklist items with request context
User->>App: Register completed scan and DICOM metadata
App->>Back4app: POST /classes/DicomStudy (imagingRequest, studyInstanceUID, seriesCount, modalityType, metadataStatus)
Back4app-->>App: DicomStudy object + objectId
App->>Back4app: PUT /classes/ImagingRequest/{id} (status: completed)
Back4app-->>App: Updated ImagingRequest
User->>App: Draft and sign specialist report
App->>Back4app: POST /classes/Report (dicomStudy, radiologist, findings, impression, status: signed, signedAt)
Back4app-->>App: Signed Report saved
App->>Back4app: POST /classes/AuditEvent (action: report_signed, targetClass: Report, targetId)
Back4app-->>App: AuditEvent saved
Back4app-->>App: Live Query events (new urgent requests, signed reports)
App-->>User: Real-time queue and report status updatesDiccionario de Datos
Referencia completa a nivel de campo para cada clase en el esquema de Información de Radiología.
| Campo | Tipo | Descripción | Requerido |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Automático |
| username | String | Login username for clinicians and radiology staff | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role in the workflow (admin, scheduler, technologist, radiologist, referring_physician) | |
| displayName | String | Full name displayed in the radiology workspace | — |
| specialty | String | Clinical specialty such as neuroradiology or orthopedics | — |
| createdAt | Date | Auto-generated creation timestamp | Automático |
| updatedAt | Date | Auto-generated last-update timestamp | Automático |
9 campos en User
Seguridad y Permisos
Cómo las ACL, roles y la estrategia CLP aseguran las solicitudes de imágenes, los metadatos de estudios y los informes de especialistas.
Acceso basado en roles
Utilice roles como administrador, radiólogo, técnico y coordinador para definir las acciones CRUD y la visibilidad de la pantalla.
Permisos conscientes de las asignaciones
Restringir la redacción de informes y las actualizaciones de estudios a los especialistas asignados o al personal operativo, mientras se preservan los caminos de revisión controlados.
Historial de auditoría protegido
Los registros de AuditEvent deben ser solo de anexión y estar protegidos contra la eliminación del lado del cliente para que el historial de trabajo siga siendo confiable.
Esquema (JSON)
Definición de esquema JSON sin procesar lista para copiar en Back4app o usar como referencia de implementación.
{
"classes": [
{
"className": "User",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"username": {
"type": "String",
"required": true
},
"email": {
"type": "String",
"required": true
},
"password": {
"type": "String",
"required": true
},
"role": {
"type": "String",
"required": true
},
"displayName": {
"type": "String",
"required": false
},
"specialty": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ImagingCenter",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"name": {
"type": "String",
"required": true
},
"code": {
"type": "String",
"required": true
},
"location": {
"type": "String",
"required": false
},
"contactNumber": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Modality",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"imagingCenter": {
"type": "Pointer",
"required": true,
"targetClass": "ImagingCenter"
},
"name": {
"type": "String",
"required": true
},
"type": {
"type": "String",
"required": true
},
"dicomAETitle": {
"type": "String",
"required": false
},
"status": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "ImagingRequest",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"patientId": {
"type": "String",
"required": true
},
"patientName": {
"type": "String",
"required": true
},
"accessionNumber": {
"type": "String",
"required": true
},
"studyDescription": {
"type": "String",
"required": true
},
"priority": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"requestedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"imagingCenter": {
"type": "Pointer",
"required": true,
"targetClass": "ImagingCenter"
},
"scheduledModality": {
"type": "Pointer",
"required": false,
"targetClass": "Modality"
},
"scheduledAt": {
"type": "Date",
"required": false
},
"clinicalIndication": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "DicomStudy",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"imagingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "ImagingRequest"
},
"studyInstanceUID": {
"type": "String",
"required": true
},
"seriesCount": {
"type": "Number",
"required": false
},
"instanceCount": {
"type": "Number",
"required": false
},
"modalityType": {
"type": "String",
"required": true
},
"bodyPartExamined": {
"type": "String",
"required": false
},
"performedAt": {
"type": "Date",
"required": false
},
"pacsLocation": {
"type": "String",
"required": false
},
"metadataStatus": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Report",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"dicomStudy": {
"type": "Pointer",
"required": true,
"targetClass": "DicomStudy"
},
"radiologist": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"status": {
"type": "String",
"required": true
},
"findings": {
"type": "String",
"required": false
},
"impression": {
"type": "String",
"required": false
},
"criticalFlag": {
"type": "Boolean",
"required": false
},
"signedAt": {
"type": "Date",
"required": false
},
"version": {
"type": "Number",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "WorklistItem",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"imagingRequest": {
"type": "Pointer",
"required": true,
"targetClass": "ImagingRequest"
},
"assignedTo": {
"type": "Pointer",
"required": false,
"targetClass": "User"
},
"queueType": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"dueAt": {
"type": "Date",
"required": false
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AuditEvent",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"actor": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"action": {
"type": "String",
"required": true
},
"targetClass": {
"type": "String",
"required": true
},
"targetId": {
"type": "String",
"required": true
},
"details": {
"type": "String",
"required": false
},
"timestamp": {
"type": "Date",
"required": true
}
}
}
]
}Construir con AI Agent
Utiliza el agente de IA de Back4app para generar una aplicación completa de Información de Radiología a partir de esta plantilla, incluyendo frontend, backend, autenticación, listas de trabajo y pantallas de flujo de informes.
Crea un backend de Información de Radiología en Back4app con este esquema y comportamiento exactos. Esquema: 1. SolicitudDeImagen: requestNumber (String, requerido), patientId (String, requerido), patientName (String), orderingClinician (String), priority (String: routine, urgent, stat), modalityRequested (String), clinicalIndication (String), status (String: requested, scheduled, performed, cancelled), objectId, createdAt, updatedAt. 2. Estudio: imagingRequest (Pointer a SolicitudDeImagen, requerido), accessionNumber (String, requerido), studyInstanceUID (String, requerido), modality (String), bodyPart (String), performedAt (Date), dicomMetadata (JSON), status (String: queued, acquired, reading, reported), objectId, createdAt, updatedAt. 3. Radiólogo: user (Pointer a User incorporado, requerido), fullName (String), subspecialties (Array), active (Boolean), contact (JSON), objectId, createdAt, updatedAt. 4. Informe: estudio (Pointer a Estudio, requerido), autor (Pointer a Radiólogo), revisor (Pointer a Radiólogo, opcional), estado (String: draft, in_review, amended, final), findings (String), impression (String), finalizedAt (Date, opcional), objectId, createdAt, updatedAt. 5. EventoDeAuditoría: actor (Pointer a User), targetClass (String), targetId (String), action (String), details (JSON), timestamp (Date) — solo para añadir. Seguridad: - CLP y ACL basados en roles: solo los coordinadores y administradores pueden crear o actualizar campos de programación de SolicitudDeImagen; solo los radiólogos asignados o administradores pueden editar informes borradores; solo los revisores o administradores pueden finalizar informes. EventoDeAuditoría es solo de adición y tiene acceso restringido a lectura. Autenticación: - Los usuarios se registran e inician sesión a través de User incorporado; roles asignados por el administrador. Comportamiento: - Autenticar usuario, cargar solicitudes de imagen, crear o actualizar un Estudio con metadatos DICOM, redactar un Informe y escribir una entrada de EventoDeAuditoría para cada operación significativa. Entregar: - Aplicación Back4app con esquema, ACLs, CLPs, validaciones de Cloud Code, datos de ejemplo sembrados y un andamiaje frontend por la tecnología elegida.
Presiona el botón a continuación para abrir el Agente con este aviso de plantilla prellenado.
Este aviso base describe el esquema y comportamientos de radiología; puedes seleccionar sufijos específicos de tecnología después.
API Playground
Prueba REST y los endpoints de GraphQL contra el esquema de Información Radiológica. Las respuestas utilizan datos simulados y no requieren una cuenta de Back4app.
Utiliza el mismo esquema que esta plantilla.
Elige tu tecnología
Expande cada tarjeta para pasos de integración, patrones de estado, ejemplos de modelo de datos y notas sin conexión.
Flutter Backend de Información Radiológica
React Backend de Información Radiológica
nativo de React Backend de Información Radiológica
Next.js Backend de Información Radiológica
JavaScript Backend de Información Radiológica
Android Backend de Información Radiológica
iOS Backend de Información Radiológica
Vue Backend de Información Radiológica
Angular Backend de Información Radiológica
GraphQL Backend de Información Radiológica
REST API Backend de Información Radiológica
PHP Backend de Información Radiológica
.NET Backend de Información Radiológica
Lo que obtienes con cada tecnología
Cada stack utiliza el mismo esquema de backend de Información Radiológica y contratos API.
Estructura de datos unificada en radiología
Modelos de datos estandarizados para solicitudes de imágenes y estudios DICOM.
Seguimiento de informes en tiempo real para radiología
Monitorea el estado de los informes y las solicitudes de imágenes en tiempo real.
Compartición segura para flujos de trabajo en radiología
Comparte de manera segura datos e informes de imágenes sensibles con usuarios autorizados.
APIs REST/GraphQL para radiología
Accede y gestiona tus datos de manera eficiente con APIs flexibles.
Gestión de asignación de radiólogos
Optimiza la asignación de tareas a radiólogos para mejorar la eficiencia.
Marco extensible para radiología
Personaliza y extiende fácilmente el backend para satisfacer necesidades específicas de radiología.
Comparación del Marco de Información en Radiología
Compara la velocidad de configuración, el estilo del SDK y el soporte de IA en todas las tecnologías compatibles.
| Framework | Tiempo de Configuración | Beneficio de la Información en Radiología | Tipo de SDK | Soporte de IA |
|---|---|---|---|---|
| Acerca de 5 min | Código base único para la información de radiología en móviles y web. | Typed SDK | Completo | |
| Menos de 5 minutos | Tablero web rápido para información de radiología. | Typed SDK | Completo | |
| ~3–7 min | Aplicación móvil multiplataforma para información de radiología. | Typed SDK | Completo | |
| Configuración rápida (5 min) | Aplicación web renderizada en el servidor para información de radiología. | Typed SDK | Completo | |
| ~3–5 min | Integración web ligera para información de radiología. | Typed SDK | Completo | |
| Acerca de 5 min | Aplicación nativa Android para información de radiología. | Typed SDK | Completo | |
| Menos de 5 minutos | Aplicación nativa iOS para información de radiología. | Typed SDK | Completo | |
| ~3–7 min | Interfaz de usuario web Reactiva para información de radiología. | Typed SDK | Completo | |
| Configuración rápida (5 min) | Aplicación web empresarial para información de radiología. | Typed SDK | Completo | |
| Menos de 2 min | API flexible GraphQL para información de radiología. | GraphQL API | Completo | |
| Configuración rápida (2 min) | Integración REST API para información de radiología. | REST API | Completo | |
| ~3 min | Backend PHP del lado del servidor para información de radiología. | REST API | Completo | |
| ~3–7 min | Backend .NET para información de radiología. | Typed SDK | Completo |
El tiempo de configuración refleja la duración esperada desde el inicio del proyecto hasta la primera lista de trabajo de radiología poblada con datos de Solicitud de Imágenes y Estudio.
Preguntas Frecuentes
Preguntas comunes sobre la creación de un backend de Información de Radiología con esta plantilla.
¿Listo para construir tu aplicación de información de radiología?
Comienza tu proyecto de flujo de trabajo de radiología en minutos. No se requiere tarjeta de crédito.