Шаблон бэкенда для приложения по информации по радиологии
Управляйте заказами на обследования, метаданными исследований, рабочими процессами модальностей и отчетами радиологов из одного бэкенда
Готовый к производству бэкенд информации по радиологии на Back4app для запросов на обследования, DICOM метаданных исследований, рабочих процессов чтения специалистов и доставки отчетов. Используйте его для ускорения работы порталов радиологии, списков задач и интеграций с больницами на веб и мобильных устройствах.
Основные выводы
Этот шаблон предлагает вам бэкенд, сосредоточенный на радиологии, для рабочих процессов от приема до отчета, чтобы ваша команда могла быстрее разрабатывать программное обеспечение для операций с изображениями с единообразными контрактами данных.
- Модель данных с приоритетом на изображения — Моделируйте запросы, исследования, радиологов и отчеты в структуре, удобной для рабочего процесса, предназначенной для операций радиологии.
- Отслеживание метаданных DICOM — Храните ключевые метаданные на уровне исследования, такие как номер акта, модальность, UID исследования, часть тела и временные метки получения для индексации и поиска.
- Поддержка жизненного цикла отчетов — Обрабатывайте черновики, находящиеся на рассмотрении, исправленные и окончательные отчеты с отслеживанием назначений и сроков.
- Аудит и прослеживаемость — Отслеживайте, кто создал, обновил, проверил или завершил диагностический контент, чтобы поддерживать управление и устранение неполадок.
- Кроссплатформенные API — Предоставляйте рабочие списки радиологии и экраны отчетов через REST и GraphQL с опциональными Live Queries для изменений статуса.
Что такое шаблон бэкенда приложения информационной радиологии?
Back4app — это управляемый бэкенд для быстрой доставки продуктов. Шаблон бэкенда приложения информационной радиологии моделирует запросы на изображения, метаданные исследований DICOM, назначения радиологов и рабочие процессы отчетов, чтобы команды могли быстрее предоставлять радиологические системы и с меньшими затратами на инфраструктуру.
Лучше всего для:
Обзор
Рабочие процессы радиологии зависят от точной координации между приемом заказов, приобретением исследований, индексацией метаданных, назначением специалистов и сроками подготовки отчетов.
Этот шаблон определяет ImagingRequest, Study, Radiologist, Report и AuditEvent с правилами владения и необязательным Live Queries, чтобы команды могли быстро и безопасно реализовывать рабочие процессы радиологии.
Основные функции радиологической информации
Каждая технологическая карточка в этом центре использует одну и ту же схему информации радиологии с ImagingRequest, Study, Radiologist, Report и AuditEvent.
Прием запросов на визуализацию
Отслеживайте запросы с помощью ссылок на пациентов, данных о назначившем специалисте, приоритета, показания и запрашиваемой модальности.
Записи исследований и метаданные DICOM
Храните идентификаторы исследований, номер доступа, модальность, UID исследования, часть тела, дату выполнения и статус.
Регистрация и назначение радиологов
Управление профилями специалистов, подсpecialties, индикаторами доступности и ссылками на проверенных пользователей.
Рабочий процесс диагностического отчета
Управление состояниями черновика, рецензии, изменения и окончательного отчета с отметками времени и контекстом рецензента.
События аудита и отслеживание времени обработки
AuditEvent фиксирует операционные действия, такие как изменения назначений, завершение отчетов и исправления метаданных.
Почему строить ваш бэкенд для радиологической информации с Back4app?
Back4app предоставляет безопасный бэкенд для операций с изображениями, чтобы ваша команда могла сосредоточиться на рабочих списках, процессе чтения и доставке отчетов вместо работы с бэкендом.
- •Готовые к рабочему процессу сущности: Предопределенные классы для запросов, исследований, радиологов и отчетов помогут вам реализовать общие радиологические процессы, не разрабатывая все с нуля.
- •Индструктируемые метаданные и управление: Храните структурированные поля, связанные с DICOM, и события аудита, чтобы исследования было легче находить, маршрутизировать и проверять между командами.
- •Гибкость в режиме реального времени и API: Используйте Live Queries для обновлений очереди чтения, предоставляя REST и GraphQL для интеграций с больницами, PACS или уведомлениями.
Стандартизируйте запросы на изображения и рабочие процессы отчетности в вебе и мобильном приложении с помощью одного контракта бэкенда и уменьшите время выхода на рынок для радиологических продуктов.
Основные преимущества
Бэкенд рабочего процесса радиологии, который помогает вам выполнять задачи быстрее, сохраняя структуру, видимость и контроль.
Быстрое развертывание рабочего процесса визуализации
Начните с предустановленной модели запроса-отчета, чтобы вы могли сосредоточиться на порталах для клиницистов, очередях чтения и диагностическом пользовательском опыте.
Структурированные метаданные с первого дня
Храните ключевые поля изучения, относящиеся к DICOM, в канонической схеме для фильтрации, маршрутизации и интеграции на downstream.
Четкие потоки проверки и утверждения
Явно моделируйте состояния жизненного цикла отчета, чтобы черновики, проверки, изменения и окончательные версии было легко управлять.
Видимость рабочего списка в реальном времени
Live Queries может немедленно отображать новые назначенные исследования, изменения приоритетов или финализированные отчеты на соответствующих экранах.
Расширяемый интеграционный слой
Подключайтесь к системам планирования, уведомительным службам, порталам или архивным рабочим процессам через REST или GraphQL.
Поддержка ИИ при создании структуры
Используйте подсказку ИИ-агента для создания структуры backend, заполнения реалистичными записями и ускорения демонстраций или пилотных проектов.
Готовы оптимизировать рабочие процессы радиологии?
Позвольте Back4app ИИ-агенту создать структуру backend для информации о радиологии и заполнить образцы запросов, исследований, специалистов и отчетов из одной подсказки.
Бесплатно для начала — 50 подсказок AI Agent в месяц, без кредитной карты
Технический стек
Все включено в этот шаблон бэкенда для радиологии.
ER Диаграмма
Модель взаимосвязей сущностей для схемы радиологической информации.
Схема, охватывающая запросы на изображения, исследования, радиологов, отчеты и события аудита.
Просмотреть источник диаграммы
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
}
Поток интеграции
Поток Auth-to-CRUD для входа в радиологию, извлечения запросов на изображения, регистрации исследований и окончательной доработки отчетов.
Просмотреть источник диаграммы
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 updatesСловарь данных
Полная справка по каждому полю для всех классов в схеме информации по радиологии.
| Поле | Тип | Описание | Обязательно |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Авто |
| 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 | Авто |
| updatedAt | Date | Auto-generated last-update timestamp | Авто |
9 поля в User
Безопасность и разрешения
Как стратегии ACL, роли и CLP защищают запросы на изображения, метаданные исследований и отчеты специалистов.
Доступ на основе ролей
Используйте роли, такие как администратор, радиолог, техник и координатор, для определения действий CRUD и видимости экранов.
Правомочия, осведомленные о назначениях
Ограничьте составление отчетов и обновления исследований для назначенных специалистов или оперативного персонала, сохраняя при этом контролируемые пути проверки.
Защищенная история аудита
Записи AuditEvent должны быть только для добавления и защищены от удаления на стороне клиента, чтобы история рабочего процесса оставалась надежной.
Схема (JSON)
Сырая схема JSON, готовая для копирования в Back4app или использования в качестве справки по внедрению.
{
"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
}
}
}
]
}Создайте с AI Agent
Используйте агента Back4app AI для создания полного приложения информации по радиологии из этого шаблона, включая фронтенд, бэкенд, авторизацию, рабочие списки и экраны рабочего процесса отчетов.
Создайте бэкенд информации по радиологии на Back4app с этой точной схемой и поведением. Схема: 1. ImagingRequest: requestNumber (Строка, обязательное), patientId (Строка, обязательное), patientName (Строка), orderingClinician (Строка), priority (Строка: обычный, срочный, немедленный), modalityRequested (Строка), clinicalIndication (Строка), status (Строка: запрашиваемый, запланированный, выполненный, отмененный), objectId, createdAt, updatedAt. 2. Study: imagingRequest (Указатель на ImagingRequest, обязательное), accessionNumber (Строка, обязательное), studyInstanceUID (Строка, обязательное), modality (Строка), bodyPart (Строка), performedAt (Дата), dicomMetadata (JSON), status (Строка: в очереди, полученный, чтение, отчетный), objectId, createdAt, updatedAt. 3. Radiologist: user (Указатель на встроенного пользователя, обязательное), fullName (Строка), subspecialties (Массив), active (Логическое), contact (JSON), objectId, createdAt, updatedAt. 4. Report: study (Указатель на Study, обязательное), author (Указатель на Radiologist), reviewer (Указатель на Radiologist, необязательное), status (Строка: черновик, на проверке, измененный, окончательный), findings (Строка), impression (Строка), finalizedAt (Дата, необязательное), objectId, createdAt, updatedAt. 5. AuditEvent: actor (Указатель на пользователя), targetClass (Строка), targetId (Строка), action (Строка), details (JSON), timestamp (Дата) — только добавление. Безопасность: - Ролевые CLP и ACL: только координаторы и администраторы могут создавать или обновлять поля расписания ImagingRequest; только назначенные радиологи или администраторы могут редактировать черновики отчетов; только рецензенты или администраторы могут завершать отчеты. AuditEvent — только добавление и ограниченный доступ для чтения. Авторизация: - Пользователи регистрируются и входят через встроенного пользователя; роли назначаются администратором. Поведение: - Аутентификация пользователя, загрузка запросов на изображения, создание или обновление исследования с DICOM-метаданными, составление отчета и запись записи AuditEvent для каждой значимой операции. Доставка: - Приложение Back4app со схемой, ACL, CLP, проверками облачного кода, предварительно заполненными данными и каркасом фронтенда в соответствии с выбранной технологией.
Нажмите кнопку ниже, чтобы открыть агента с предзаполненным запросом этого шаблона.
Этот основной запрос описывает схему радиологии и поведение; вы можете выбрать специфические суффиксы технологий позже.
API Песочница
Попробуйте REST и GraphQL конечные точки с использованием схемы информации по радиологии. Ответы используют фиктивные данные и не требуют аккаунта Back4app.
Использует ту же схему, что и этот шаблон.
Выберите свою технологию
Разверните каждую карточку для получения шагов интеграции, шаблонов состояний, примеров модели данных и заметок для оффлайна.
Flutter База информации по радиологии
React База информации по радиологии
React Native База информации по радиологии
Next.js База информации по радиологии
JavaScript База информации по радиологии
Android База информации по радиологии
iOS База информации по радиологии
Vue База информации по радиологии
Angular База информации по радиологии
GraphQL База информации по радиологии
REST API База информации по радиологии
PHP База информации по радиологии
.NET База информации по радиологии
Что вы получаете с каждой технологией
Каждый стек использует одну и ту же схему бэкенда и API-контракты для радиологии.
Унифицированная структура данных радиологии
Стандартизированные модели данных для запросов на визуализацию и исследований DICOM.
Отслеживание отчетов в реальном времени для радиологии
Мониторьте статус отчетов и запросов на визуализацию в реальном времени.
Безопасный обмен для рабочих процессов радиологии
Безопасно делитесь конфиденциальными данными визуализации и отчетами с авторизованными пользователями.
REST/GraphQL API для радиологии
Эффективно получайте и управляйте вашими данными с помощью гибких API.
Управление назначениями радиологов
Упрощайте назначение задач радиологам для повышения эффективности.
Расширяемая рамка для радиологии
Легко настраивайте и расширяйте бэкенд для удовлетворения конкретных потребностей в радиологии.
Сравнение информационных рамок радиологии
Сравните скорость настройки, стиль SDK и поддержку ИИ по всем поддерживаемым технологиям.
| Фреймворк | Время настройки | Преимущества информации по радиологии | Тип SDK | Поддержка ИИ |
|---|---|---|---|---|
| Около 5 минут | Единая кодовая база для информации по радиологии на мобильных устройствах и в вебе. | Typed SDK | Полный | |
| Менее 5 минут | Быстрая веб-панель управления для информации по радиологии. | Typed SDK | Полный | |
| ~3–7 минут | Кроссплатформенное мобильное приложение для информации по радиологии. | Typed SDK | Полный | |
| Быстрая (5 минут) настройка | Серверное веб-приложение для информации по радиологии. | Typed SDK | Полный | |
| ~3–5 минут | Легкая веб-интеграция для информации по радиологии. | Typed SDK | Полный | |
| Около 5 минут | Нативное приложение Android для информации по радиологии. | Typed SDK | Полный | |
| Менее 5 минут | Нативное приложение iOS для информации по радиологии. | Typed SDK | Полный | |
| ~3–7 минут | React веб-интерфейс для информации по радиологии. | Typed SDK | Полный | |
| Быстрая (5 минут) настройка | Корпоративное веб-приложение для информации по радиологии. | Typed SDK | Полный | |
| Менее 2 минут | Гибкое API GraphQL для информации по радиологии. | GraphQL API | Полный | |
| Быстрая (2 минуты) настройка | Интеграция REST API для информации по радиологии. | REST API | Полный | |
| ~3 минуты | Серверная PHP бэкенд для информации по радиологии. | REST API | Полный | |
| ~3–7 минут | .NET бэкенд для информации по радиологии. | Typed SDK | Полный |
Время настройки отражает ожидаемую продолжительность от первоначальной настройки проекта до первого рабочего списка радиологии, заполненного данными ImagingRequest и Study.
Часто задаваемые вопросы
Распространенные вопросы о создании backend для информации по радиологии с использованием этого шаблона.
Готовы создать свое приложение для радиологической информации?
Начните ваш проект радиологического рабочего процесса за несколько минут. Кредитная карта не требуется.