Модель описывает файл, загруженный и хранимый в системе REGOS: содержит метаданные файла (идентификатор, имя, размеры, формат, хеш, уровень доступа, владельца, ссылки для доступа и т.п.).
| Название | Тип данных | Описание |
|---|---|---|
| id | long | Уникальный идентификатор файла в системе |
| name | string | Отображаемое (читабельное) имя файла без пути. То, что видит пользователь |
| size | long | Размер файла в байтах |
| extension | string | Расширение файла без точки (например, "pdf", "jpg") |
| mime_type | string | MIME-тип содержимого (например, "application/pdf", "image/jpeg"). Используется клиентами и сервисами для корректной обработки файла |
| date | long | Время создания файла в формате Unix time (timestamp). Используется для отображения и сортировки по дате загрузки/создания |
| user_id | long | Идентификатор пользователя, который создал файл (владелец) |
| access_level | FileAccessLevelEnum | Уровень доступа к файлу (системный, персональный, общедоступный). Определяет, кто и как может использовать файл |
| hash | string | Хеш содержимого файла (SHA-256). Используется для проверки целостности и выявления дубликатов |
| folder_id | long | Идентификатор виртуальной папки, к которой относится файл. До реализации структуры папок все файлы относятся к папке с id = 1 |
| url | string | Публичный URL для доступа к файлу (прямой или временно подписанный), используется для скачивания/просмотра файла клиентами |
| last_update | long | Время последнего обновления метаданных или содержимого файла в формате Unix time |
access_level (FileAccessLevelEnum)| Значение | Описание |
|---|---|
system |
Системный файл — создан внутренними процессами и связан с другой сущностью (документ и т.п.). Управление таким файлом осуществляется через связанную сущность |
personal |
Персональный файл — принадлежит конкретному пользователю и доступен только ему, внутренним сервисам и другим пользователям при наличии специальных прав доступа |
public |
Общедоступный файл — доступен всем пользователям системы в рамках их общих прав доступа |