Шаблон CRM для участников клинических испытаний Backend
Отслеживание пользователей, исследований, участников, скринингов, визитов и неблагоприятных событий
Готовый к производству CRM для участников клинических испытаний Backend на Back4app с Исследованием, Участником, Скринингом, Визитом, НеблагоприятнымСобытием и ЗаписьюУчастника рабочими процессами. Включает ER-диаграмму, словарь данных, JSON-схему, API-площадку и запрос AI Agent для быстрого развертывания.
Выводы испытания
Этот шаблон предоставляет вам бэкенд CRM для субъектов клинического испытания с классами User, Study, Subject, Screening, Visit, AdverseEvent и SubjectNote, чтобы координаторы могли выполнять операции с субъектами с меньшим количеством ручных доработок.
- Отслеживание статуса скрининга — Моделируйте каждую запись Subject и Screening, чтобы координаторы могли видеть ожидающие, успешные, неуспешные или повторные состояния с screeningDate и заметками.
- Видимость расписания визитов — Используйте Visit.visitType, scheduledAt, visitStatus, location и coordinator, чтобы поддерживать запланированные визиты и изменения расписания в запрашиваемом состоянии.
- Учёт нежелательных явлений — Записывайте AdverseEvent.eventTerm, severity, serious, onsetDate, status и reportedBy для проверки безопасности.
- Дружественный к координатору рабочий процесс — Поддержка исследовательского персонала с назначениями Subject.coordinator, Screening.completedBy, Visit.coordinator и SubjectNote.author в одном бэкэнде.
- Многофункциональные операции клинических испытаний — Обеспечьте веб-, мобильные и клинические панели управления через один REST и GraphQL API для субъектов, визитов, заметок по безопасности и неблагоприятных событий.
Что такое шаблон CRM для субъектов клинических испытаний?
Отчеты в CRM для субъектов клинических испытаний должны отвечать на вопросы руководства без необходимости вручную искать в папках и потоках сообщений. Это редко одинокая ошибка — это отклонение. Back4app закрепляет основные сущности для практики CRM субъектов клинических испытаний, которым нужны сроки, документы и коммуникации в одном разрешенном рабочем пространстве. Схема охватывает записи User, Study, Subject, Screening, Visit, AdverseEvent и SubjectNote с встроенными авторизацией и работами, учитывающими безопасность. Подключите ваш предпочтительный фронтенд и отправляйте быстрее.
Лучше всего для:
Обзор бэкэнда CRM участников клинических испытаний
Команды CRM участников клинических испытаний выигрывают, когда повседневная работа скучна: предсказуемые записи, очевидная ответственность и уведомления перед тем, как небольшие проблемы станут инцидентами.
Просмотрите сначала отслеживание назначения исследования, реестр участников, рабочий процесс отбора, затем откройте карточку стека, чтобы увидеть специальные заметки по SDK и схемы интеграции.
Основные функции клинических испытаний
Каждая карточка технологии в этом центре использует одну и ту же схему заднего плана клинического испытания с Пользователем, Исследованием, Темой, Скринингом, Визитом, НежелательнымСобытием и ЗапискойПоТемe.
Отслеживание назначения исследования
Исследование хранит protocolId, название, статус, главного исследователя и название сайта.
Реестр участников
Участник хранит subjectId, полное имя, статус скрининга, исследование, координатора, дату рождения, пол при рождении и дату подписания согласия.
Скрининг рабочий процесс
Скрининг связывает объект, исследование, статус скрининга, дату скрининга, выполнившего и заметки.
Запланированные посещения
Посещение включает объект, исследование, тип посещения, запланировано на, статус посещения, местоположение и координатора.
Регистрация событий безопасности
AdverseEvent хранит объект, исследование, термин события, степень тяжести, серьезность, дату начала, статус и информацию о том, кто сообщил.
Почему строить бэкенд для CRM субъектов клинических испытаний с Back4app?
Back4app предоставляет примитивы User, Study, Subject, Screening, Visit, AdverseEvent и SubjectNote, чтобы координаторы могли сосредоточиться на операциях испытаний, а не на прокладке инфраструктуры.
- •Скрининг и поток субъектов в одной схеме: Классы Subject и Screening хранят subjectId, fullName, screeningStatus, screeningDate и completedBy в одном месте.
- •Расписания посещений остаются доступными для запросов: Поля Visit и SubjectNote облегчают обзор запланированных встреч, переноса встреч и последующих действий персонала.
- •Журналирование безопасности явное: Записи AdverseEvent с eventTerm, severity, serious, onsetDate, status и reportedBy поддерживают проверяемые временные шкалы событий.
Создайте бэкенд для клинических испытаний, который поддерживает согласованность скринингов, посещений, заметок и неблагоприятных событий между командами.
Преимущества испытания
Задний план клинического испытания, который помогает координаторам работать быстрее, сохраняя структуру операций с субъектами.
Быстрый запуск испытания
Начните с полной схемы Пользователя, Исследования, Темы, Скрининга, Визита, НежелательногоСобытия и ЗапискиПоТемe, а не создавайте таблицы испытания с нуля.
Четкий статус скрининга
Используйте Subject.screeningStatus и Screening.screeningStatus, чтобы разделить ожидающие, прошедшие, неудачные и повторные случаи скрининга.
Координация визитов без догадок
Запланируйте и перенесите записи о визитах с visitType, scheduledAt, visitStatus и местоположением, чтобы сотрудники знали, что будет дальше.
Обзор безопасности
AdverseEvent.severity, serious, onsetDate, status и reportedBy предоставляют командам безопасности читаемую историю событий.
Заметки по субъекту остаются привязанными к записи
SubjectNote.noteType, noteText, author и subject сохраняют заметки о звонках, визитах и скринингах, прикрепленные к правильному участнику.
Рабочий процесс с поддержкой ИИ
Быстро создавайте серверную структуру и руководство по интеграции с помощью одного структурированного запроса.
Готовы запустить ваш CRM для субъектов клинических испытаний?
Позвольте Back4app AI Agent создать структуру вашего CRM для субъектов клинических испытаний и сгенерировать рабочие процессы для User, Study, Subject, Screening, Visit, AdverseEvent и SubjectNote из одного запроса.
Бесплатно для начала — 50 подсказок AI-агента в месяц, карта не требуется
Технический стек клинических испытаний
Всё включено в этот шаблон backend для клинических испытаний.
Клиническая схема карты
Модель отношений между сущностями для схемы бэкэнда CRM для субъектов клинических испытаний.
Схема, охватывающая пользователей, исследования, субъекты, записи о скрининге, визиты, неблагоприятные события и примечания к субъектам.
Просмотреть источник диаграммы
erDiagram
User ||--o{ Study : "principalInvestigator"
User ||--o{ Subject : "coordinator"
User ||--o{ Screening : "completedBy"
User ||--o{ Visit : "coordinator"
User ||--o{ AdverseEvent : "reportedBy"
User ||--o{ SubjectNote : "author"
Study ||--o{ Subject : "study"
Study ||--o{ Screening : "study"
Study ||--o{ Visit : "study"
Study ||--o{ AdverseEvent : "study"
Subject ||--o{ Screening : "subject"
Subject ||--o{ Visit : "subject"
Subject ||--o{ AdverseEvent : "subject"
Subject ||--o{ SubjectNote : "subject"
User {
String objectId PK
String username
String email
String password
String role
String siteName
Date createdAt
Date updatedAt
}
Study {
String objectId PK
String protocolId
String title
String status
String principalInvestigatorId FK
String siteName
Date createdAt
Date updatedAt
}
Subject {
String objectId PK
String subjectId
String fullName
String screeningStatus
String studyId FK
String coordinatorId FK
Date dob
String sexAtBirth
Date consentSignedAt
Date createdAt
Date updatedAt
}
Screening {
String objectId PK
String subjectId FK
String studyId FK
String screeningStatus
Date screeningDate
String completedById FK
String notes
Date createdAt
Date updatedAt
}
Visit {
String objectId PK
String subjectId FK
String studyId FK
String visitType
Date scheduledAt
String visitStatus
String location
String coordinatorId FK
Date createdAt
Date updatedAt
}
AdverseEvent {
String objectId PK
String subjectId FK
String studyId FK
String eventTerm
String severity
Boolean serious
Date onsetDate
String status
String reportedById FK
Date createdAt
Date updatedAt
}
SubjectNote {
String objectId PK
String subjectId FK
String authorId FK
String noteType
String noteText
Date createdAt
Date updatedAt
}
Клиническая интеграция
Типичный поток выполнения для входа пользователя, скрининга субъекта, планирования визита, ввода примечания к субъекту и регистрации неблагоприятного события.
Просмотреть источник диаграммы
sequenceDiagram
participant User
participant App as Clinical Trial Subject CRM App
participant Back4app as Back4app Cloud
User->>App: Sign in
App->>Back4app: POST /login
Back4app-->>App: Session token
User->>App: Open screening queue
App->>Back4app: GET /classes/Screening?include=subject,study&order=-screeningDate
Back4app-->>App: Screening rows with subjectId and screeningStatus
User->>App: Add a visit schedule
App->>Back4app: POST /classes/Visit
Back4app-->>App: Visit objectId and scheduledAt
User->>App: Log an adverse event
App->>Back4app: POST /classes/AdverseEvent
Back4app-->>App: AdverseEvent objectId and status
App->>Back4app: Subscribe to live updates for Visit and AdverseEvent
Back4app-->>App: Real-time subject activityПолевой справочник
Полное ссылочное руководство по каждому классу в схеме клинических испытаний.
| Поле | Тип | Описание | Обязательный |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | Авто |
| username | String | User login name | |
| String | User email address | ||
| password | String | Hashed password (write-only) | |
| role | String | Role of the user, such as coordinator, investigator, or sponsor | |
| siteName | String | Clinical site or clinic name | — |
| createdAt | Date | Auto-generated creation timestamp | Авто |
| updatedAt | Date | Auto-generated last-update timestamp | Авто |
8 поля в User
Контроль доступа в клинических испытаниях
Как стратегия ACL и CLP защищает исследования, субъекты, визиты, заметки о субъектах и журналы неблагоприятных событий.
Доступ с ограничением по координатору
Только одобренный персонал испытания может создавать или редактировать записи о Испытуемых, Скрининге, Визитах, НеблагоприятныхСобытиях и ЗаписяхИспытуемых.
Разделение данных на уровне сайта
Используйте владение исследованием и запросы на основе указателей, чтобы команды видели только испытуемых, назначенных их сайту.
Целостность журнала безопасности
Записи НеблагоприятныхСобытий должны быть ограничены для записи и проверены в Cloud Code перед поступлением на проверку.
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
},
"siteName": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Study",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"protocolId": {
"type": "String",
"required": true
},
"title": {
"type": "String",
"required": true
},
"status": {
"type": "String",
"required": true
},
"principalInvestigator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"siteName": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Subject",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"subjectId": {
"type": "String",
"required": true
},
"fullName": {
"type": "String",
"required": true
},
"screeningStatus": {
"type": "String",
"required": true
},
"study": {
"type": "Pointer",
"required": true,
"targetClass": "Study"
},
"coordinator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"dob": {
"type": "Date",
"required": false
},
"sexAtBirth": {
"type": "String",
"required": false
},
"consentSignedAt": {
"type": "Date",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Screening",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"subject": {
"type": "Pointer",
"required": true,
"targetClass": "Subject"
},
"study": {
"type": "Pointer",
"required": true,
"targetClass": "Study"
},
"screeningStatus": {
"type": "String",
"required": true
},
"screeningDate": {
"type": "Date",
"required": true
},
"completedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"notes": {
"type": "String",
"required": false
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "Visit",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"subject": {
"type": "Pointer",
"required": true,
"targetClass": "Subject"
},
"study": {
"type": "Pointer",
"required": true,
"targetClass": "Study"
},
"visitType": {
"type": "String",
"required": true
},
"scheduledAt": {
"type": "Date",
"required": true
},
"visitStatus": {
"type": "String",
"required": true
},
"location": {
"type": "String",
"required": false
},
"coordinator": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "AdverseEvent",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"subject": {
"type": "Pointer",
"required": true,
"targetClass": "Subject"
},
"study": {
"type": "Pointer",
"required": true,
"targetClass": "Study"
},
"eventTerm": {
"type": "String",
"required": true
},
"severity": {
"type": "String",
"required": true
},
"serious": {
"type": "Boolean",
"required": true
},
"onsetDate": {
"type": "Date",
"required": true
},
"status": {
"type": "String",
"required": true
},
"reportedBy": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
},
{
"className": "SubjectNote",
"fields": {
"objectId": {
"type": "String",
"required": false
},
"subject": {
"type": "Pointer",
"required": true,
"targetClass": "Subject"
},
"author": {
"type": "Pointer",
"required": true,
"targetClass": "User"
},
"noteType": {
"type": "String",
"required": true
},
"noteText": {
"type": "String",
"required": true
},
"createdAt": {
"type": "Date",
"required": false
},
"updatedAt": {
"type": "Date",
"required": false
}
}
}
]
}Создать с помощью AI Agent
Используйте Back4app AI Agent для создания настоящего приложения CRM для испытуемых клинических испытаний из этого шаблона, включая фронтенд, бэкенд, аутентификацию и потоки скрининга, посещения, заметок и безопасности.
Создайте безопасный бэкенд CRM для испытуемых клинических испытаний на Back4app с этой точной схемой и поведением. Схема: 1. Пользователь (использовать встроенное Back4app): имя пользователя, электронная почта, пароль, роль, название сайта; objectId, createdAt, updatedAt (система). 2. Исследование: protocolId (String, обязательно), название (String, обязательно), статус (String, обязательно), главный исследователь (Указатель на Пользователя, обязательно), название сайта (String, обязательно); objectId, createdAt, updatedAt (система). 3. Испытуемый: subjectId (String, обязательно), полное имя (String, обязательно), статус скрининга (String, обязательно), исследование (Указатель на Исследование, обязательно), координатор (Указатель на Пользователя, обязательно), дата рождения, пол при рождении, согласие подписано в; objectId, createdAt, updatedAt (система). 4. Скрининг: subject (Указатель на Испытуемого, обязательно), study (Указатель на Исследование, обязательно), screeningStatus (String, обязательно), screeningDate (Date, обязательно), completedBy (Указатель на Пользователя, обязательно), notes (String); objectId, createdAt, updatedAt (система). 5. Посещение: subject (Указатель на Испытуемого, обязательно), research (Указатель на Исследование, обязательно), visitType (String, обязательно), scheduledAt (Date, обязательно), visitStatus (String, обязательно), location (String), координатор (Указатель на Пользователя, обязательно); objectId, createdAt, updatedAt (система). 6. Нежелательное событие: subject (Указатель на Испытуемого, обязательно), study (Указатель на Исследование, обязательно), eventTerm (String, обязательно), severity (String, обязательно), serious (Boolean, обязательно), onsetDate (Date, обязательно), status (String, обязательно), reportedBy (Указатель на Пользователя, обязательно); objectId, createdAt, updatedAt (система). 7. Заметка об испытуемом: subject (Указатель на Испытуемого, обязательно), author (Указатель на Пользователя, обязательно), noteType (String, обязательно), noteText (String, обязательно); objectId, createdAt, updatedAt (система). Безопасность: - Сохраните списки испытуемых только для аутентифицированного персонала. - Позвольте координаторам редактировать Испытуемых и Посещения для их сайта. - Ограничьте ввод Нежелательных событий только для аутентифицированных пользователей с ролями координатора или исследователя. - Используйте ACL и CLP, чтобы статус скрининга, расписания посещений, заметки об испытуемых и журналы нежелательных событий были защищены от публичного доступа. Аутентификация: - Регистрация, вход, выход. Поведение: - Отслеживайте очередь скрининга, назначение испытуемых, расписания посещений, журналы нежелательных событий и заметки об испытуемых. - Поддерживайте запросы, фильтруемые по исследованию, screeningStatus, visitStatus и серьезным нежелательным событиям. Доставка: - Приложение Back4app с схемой, ACL, CLP; фронтенд для панелей управления скринингом, планирования посещений, отчетности о нежелательных событиях и заметок об испытуемых.
Нажмите кнопку ниже, чтобы открыть Агент с предварительно заполненным шаблоном подсказки.
Это базовая подсказка без технологического суффикса. Вы можете адаптировать созданный стек фронтенда позже.
API песочница
Попробуйте конечные точки REST и GraphQL с использованием схемы клинического испытания. Ответы используют фиктивные данные и не требуют учетной записи Back4app
Использует ту же схему, что и этот шаблон.
Выберите ваш стек
Разверните каждую карточку, чтобы увидеть, как интегрировать Изучение, Предмет и Скрининг с вашим выбранным стеком.
Flutter CRM для участников клинических испытаний
React CRM для участников клинических испытаний
React Native CRM для участников клинических испытаний
Next.js CRM для участников клинических испытаний
JavaScript CRM для участников клинических испытаний
Android CRM для участников клинических испытаний
iOS CRM для участников клинических испытаний
Vue CRM для участников клинических испытаний
Angular CRM для участников клинических испытаний
GraphQL CRM для участников клинических испытаний
REST API CRM для участников клинических испытаний
PHP CRM для участников клинических испытаний
.NET CRM для участников клинических испытаний
Что вы получаете с каждой технологией
Каждый стек использует одну и ту же схему бэкенда клинических испытаний и API-контракты.
Унифицированная структура данных операций испытаний
Легко управляйте записями Пользователя, Исследования, Предмета, Скрининга, Визита, Неблагоприятного события и Заметки по предмету с помощью единой схемы.
Контроль статуса скрининга для команд испытаний
Отслеживайте соответствие критериям и вехи зачисления с явными полями для предметов.
Запланирование визитов для координаторов
Координируйте запланированные, завершенные, пропущенные или отмененные визиты в одном месте.
Регистрация событий безопасности для клинических рабочих процессов
Записывайте неблагоприятные события с указанием степени тяжести и статуса последующего наблюдения.
Сравнение клинических стеков
Сравните скорость настройки, стиль SDK и поддержку ИИ среди всех поддерживаемых технологий.
| Фреймворк | Время настройки | Преимущества клинических испытаний | Тип SDK | Поддержка ИИ |
|---|---|---|---|---|
| Около 5 минут | Единая кодовая база для координационных приложений на мобильных и веб-устройствах. | Типизированный SDK | Полный | |
| Менее 5 минут | Быстрая веб-панель для скрининга и планирования визитов. | Типизированный SDK | Полный | |
| ~3–7 мин | Кроссплатформенное мобильное приложение для персонала сайта. | Типизированный SDK | Полный | |
| Быстрая (5 мин) настройка | Серверный клинический панель операций. | Типизированный SDK | Полный | |
| ~3–5 мин | Легкая веб-интеграция для пробных операций. | Typed SDK | Полный | |
| Около 5 мин | Нативное приложение Android для координаторов. | Typed SDK | Полный | |
| Менее 5 минут | Нативное приложение iOS для обзора посещений и безопасности. | Typed SDK | Полный | |
| ~3–7 мин | React веб-интерфейс для отслеживания предметов. | Написанный SDK | Полный | |
| Быстрая (5 мин) настройка | Корпоративная панель мониторинга для клинических команд. | Написанный SDK | Полный | |
| Менее 2 минут | Гибкий GraphQL API для вложенных запросов по испытаниям. | GraphQL API | Полный | |
| Быстрая (2 мин) настройка | REST API интеграция для клинических операций. | REST API | Полный | |
| ~3 мин | Серверная интеграция PHP для инструментов координаторов. | REST API | Полный | |
| ~3–7 мин | .NET бэкенд для приложений с регулируемыми рабочими процессами. | Типизированный SDK | Полный |
Время настройки отражает ожидаемую продолжительность от запуска проекта до первого запроса на тему или визита с использованием этой схемы шаблона.
Часто задаваемые вопросы о клинических испытаниях
Общие вопросы о создании бэкенда CRM для участников клинических испытаний с помощью этого шаблона.
Готовы создать ваше приложение CRM для участников клинических испытаний?
Начните свой проект клинического испытания за пару минут. Кредитная карта не требуется.