Перейти к основному содержимому

index

@mineflow/api-schemas


@mineflow/api-schemas

Enumerations​

EnumerationDescription
FuelSupplyRequestStatusСтатусы заявки на поставку ГСМ (SCM FuelSupplyRequest) — значения совпадают с ключами состояний fuelSupplyRequestMachine. Для лейблов и фильтров в UI.
FuelTankDerivedStatusПроизводный статус топливного резервуара (SCM) — НЕ FSM-статус, а вычисляемый по остатку индикатор для UI (бейдж/цвет уровня заполнения). Считается функцией computeFuelTankDerivedStatus.
ShiftReportStatusСтатусы сменного рапорта (PRD ShiftReport) — центральный агрегат PRD 1.0.
UserAccountIamProvisioningStatus-

Interfaces​

InterfaceDescription
AssetLabelPartsКаноническое отображаемое имя единицы техники, разделяемое web и mobile.
EndpointRbacRBAC-контракт одного эндпоинта, извлечённый из decorator-метаданных бэка.
ShiftSlot-

Type Aliases​

Type AliasDescription
AssetMovementOpТип-объединение значений AssetMovementOp.
AssetMovementStatusТип-объединение значений AssetMovementStatus.
AssetStatusТип-объединение значений AssetStatus (`'operational'
AssetTelematicsLinkStatus-
BlockStartTriggerТип-объединение значений BlockStartTrigger.
BlockStatusТип-объединение значений BlockStatus.
EndpointKeyВсе ключи таблицы ('<METHOD> <path>').
MaintenancePlanStatusТип-объединение значений MaintenancePlanStatus.
MaintenanceStatusТип-объединение значений MaintenanceStatus.
PersonnelStatusТип-объединение значений PersonnelStatus.
ProductionPlanHorizonТип-объединение значений ProductionPlanHorizon (`'year'
ProductionPlanStatusТип-объединение значений ProductionPlanStatus.
ProductionPlanVersionStatusТип-объединение значений ProductionPlanVersionStatus.
ShiftTypeТип-объединение значений ShiftType (`'day'
ShiftTypeCodeТип смены — зеркалит WorkOrderShiftType / Shift.shiftType (hr/watches).
SupplierStatusТип-объединение значений SupplierStatus.
SurveyResponseStatusТип-объединение значений SurveyResponseStatus.
SurveyStatusТип-объединение значений SurveyStatus.
SystemRoleКанонический RBAC-контракт MineFlow — 11 системных ролей в PascalCase.
TaskPriorityТип-объединение значений TaskPriority.
TaskStatusТип-объединение значений TaskStatus.
TimesheetEntryStatusТип-объединение значений TimesheetEntryStatus.
TmcInventoryStatusТип-объединение значений TmcInventoryStatus.
TmcRequestStatusТип-объединение значений TmcRequestStatus.
TmcTransferStatusТип-объединение значений TmcTransferStatus.
UserAccountStatusТип-объединение значений UserAccountStatus.
WatchAssignmentStatusТип-объединение значений WatchAssignmentStatus.
WorkOrderCloseTriggerТип-объединение значений WorkOrderCloseTrigger.
WorkOrderShiftTypeТип-объединение значений WorkOrderShiftType.
WorkOrderStatusТип-объединение значений WorkOrderStatus.

Variables​

VariableDescription
assetAssignmentMachineFSM закрепления техники за сотрудником (HR AssetAssignment) — temporal-only.
assetMachineFSM жизненного цикла единицы техники/оборудования (EAM Asset).
assetMovementMachineFSM записи журнала движений техники (EAM AssetMovement).
AssetMovementOpТип операции в записи журнала движений техники (EAM AssetMovement) — что именно зафиксировано в аудит-журнале актива. Для лейблов и фильтров в UI.
AssetMovementStatusСтатусы записи журнала движений техники (EAM AssetMovement) — значения совпадают с ключами состояний assetMovementMachine. Запись создаётся в Draft и сразу применяется в Applied (ADR-0045). Для лейблов в UI.
AssetStatusСтатусы единицы техники (EAM Asset) — значения совпадают с ключами состояний assetMachine и со строкой status в REST-ответах. Для лейблов и фильтров в UI: ключи в PascalCase, значения — lowercase-строки.
assetStatusToneEAM asset FSM (operational/maintenance/conserved/decommissioned).
assetTelematicsLinkMachineFSM-спец AssetTelematicsLink (ADR-0022): entity = source of truth, машина = spec. Циклический жизненный цикл, без жёсткого терминала: unlinked — начальное/покоя. REGISTER (создание связки) и CALIBRATE (атрибут calibrationStatus) состояние НЕ меняют, поэтому в машине переходов нет.
AssetTelematicsLinkStatus-
assetTelematicsLinkStatusToneTelematics asset-link FSM (unlinked/linked/suspended, ADR-0089). unlinked — начальное/покоя (юнит зарегистрирован, но не привязан к активу); linked — привязан и принимает телеметрию; suspended — приём приостановлен.
blockMachineBrowser/RN-safe entrypoint PRD (ADR-0042). ТОЛЬКО pure FSM-машины + status- энумы — без NestJS/Prisma. Потребляется фронтом как @mineflow/prd/client. (shift-reports — entity-driven FSM без xstate-машины, см. ADR-0022.)
BlockStartTriggerТриггер перехода pending → in_progress (prd.block.started): назначение станка в наряд-задание или появление первого факта бурения.
BlockStatusСтатусы буровзрывного блока (PRD Block, модуль prd/blocks) — значения совпадают с ключами состояний blockMachine. «На перебуре» — НЕ отдельный статус, а производный ярлык in_progress && reworkActive (см. state-machines.md). Для лейблов и фильтров в UI.
ENDPOINT_ROLESКлюч '<METHOD> <path>', путь version-agnostic (без /api/v1).
fuelSupplyRequestMachineFSM заявки на поставку ГСМ (SCM FuelSupplyRequest).
maintenancePlanMachineFSM утверждаемого графика ТО/ППР (EAM MaintenancePlan, ADR-0070).
MaintenancePlanStatusСтатусы утверждаемого графика ТО/ППР (EAM MaintenancePlan, ADR-0070). Значения совпадают с ключами состояний maintenancePlanMachine.
maintenanceRecordMachineFSM записи об обслуживании техники (EAM MaintenanceRecord).
MaintenanceStatusСтатусы записи об обслуживании (EAM MaintenanceRecord) — значения совпадают с ключами состояний maintenanceRecordMachine. Для лейблов и фильтров в UI.
OPS_REQUIRING_REASONМножество операций, для которых обязательна причина (reason). Сейчас это только AssetMovementOp.Conservation. Используется доменной валидацией; на фронте полезно для условного показа поля «причина».
personnelMachineFSM жизненного цикла сотрудника (HR Personnel).
personnelOrderMachineFSM жизненного цикла кадрового приказа (PersonnelOrder, КДП — ADR-0067).
PersonnelStatusСтатусы сотрудника (HR Personnel) — значения совпадают с ключами состояний personnelMachine. Для лейблов и фильтров в UI.
personnelStatusToneHR personnel статус (active/onWatch/onVacation/interWatch/sickLeave/terminated).
ProductionPlanHorizonГоризонт планирования производственного плана. Для лейблов и фильтров в UI.
productionPlanMachineFSM производственного плана (PRD ProductionPlan) — годовой/месячный план добычи.
ProductionPlanStatusСтатусы производственного плана (PRD ProductionPlan) — значения совпадают с ключами состояний productionPlanMachine. Для лейблов и фильтров в UI.
productionPlanStatusTonePRD production-plan FSM (draft/approved/superseded).
ProductionPlanVersionStatusСтатусы версии производственного плана (sub-FSM согласования у CEO). В отличие от ProductionPlanStatus описывает не сам план, а конкретную его версию-поправку. Для лейблов и фильтров в UI.
SHIFT_DAY_START_HOURЧас начала дневной смены (местное время объекта, Asia/Almaty).
SHIFT_NIGHT_START_HOURЧас начала ночной смены.
ShiftTypeТип смены вахтового назначения. Для лейблов и фильтров в UI.
supplierMachineFSM поставщика (SCM Supplier) — жизненный цикл карточки контрагента от черновика до архива.
SupplierStatusСтатусы поставщика (SCM Supplier). NB: значения здесь в camelCase ('underReview'), тогда как состояния supplierMachine используют snake_case ('under_review') — это лейбл-энум для UI, не ключи FSM напрямую. Для лейблов и фильтров в UI.
surveyMachineFSM жизненного цикла опроса (HR Survey).
surveyResponseMachineFSM заполнения опроса (HR SurveyResponse).
SurveyResponseStatusСтатусы заполнения опроса (HR SurveyResponse) — значения совпадают с ключами состояний surveyResponseMachine.
SurveyStatusСтатусы опроса (HR Survey) — значения совпадают с ключами состояний surveyMachine. Для лейблов и фильтров в UI.
surveyStatusToneHR survey FSM (draft/published/closed/archived/cancelled, hr/surveys).
taskMachineFSM задачи (Tasks Task, BL-31).
TaskPriorityПриоритет задачи (Tasks Task). Для сортировки/фильтров и тона бейджа в UI.
TaskStatusСтатусы задачи (Tasks Task) — значения совпадают с ключами состояний taskMachine. Для лейблов/фильтров в UI и расчёта доступных действий.
taskStatusToneTasks FSM (open/inProgress/blocked/done/cancelled, BL-31). Бейдж на web и mobile.
timesheetEntryMachineFSM строки табеля учёта рабочего времени (HR TimesheetEntry).
TimesheetEntryStatusFSM-статусы TimesheetEntry (docs/modules/hr/timesheet/state-machines.md).
TMC_REQUEST_TERMINAL_STATUSESМножество терминальных статусов заявки на ТМЦ (Fulfilled, Rejected, TMC-INV-09). Из них переходы недоступны — на фронте удобно для проверки «заявка закрыта».
tmcInventoryMachineFSM инвентаризации ТМЦ (SCM TmcInventory).
TmcInventoryStatusСтатусы инвентаризации ТМЦ (SCM TmcInventory) — значения совпадают с ключами нетерминальных состояний tmcInventoryMachine. Для лейблов и фильтров в UI.
tmcRequestMachineFSM заявки на ТМЦ (SCM TmcRequest) — от черновика до исполнения.
TmcRequestStatusСтатусы заявки на ТМЦ (SCM TmcRequest) — значения совпадают с ключами состояний tmcRequestMachine. Для лейблов и фильтров в UI.
tmcTransferMachineFSM перемещения ТМЦ между складами (SCM TmcTransfer).
TmcTransferStatusСтатусы перемещения ТМЦ между складами (SCM TmcTransfer) — значения совпадают с ключами нетерминальных состояний tmcTransferMachine. Для лейблов и фильтров в UI.
userAccountMachineFSM учётной записи пользователя (HR UserAccount).
UserAccountStatusСтатусы учётной записи (HR UserAccount) — значения совпадают с ключами состояний userAccountMachine. Для лейблов и фильтров в UI.
watchAssignmentMachineFSM вахтового назначения сотрудника (HR WatchAssignment) — заезд на вахту, присутствие и отъезд.
WatchAssignmentStatusСтатусы вахтового назначения (HR WatchAssignment) — значения совпадают с ключами состояний watchAssignmentMachine. Для лейблов и фильтров в UI.
WorkOrderCloseTriggerТриггер закрытия наряда (issued → closed).
workOrderMachine-
WorkOrderShiftTypeТип смены (ТЗ «1 дневная / 2 ночная»; зеркалит hr/watches Shift.shiftType).
WorkOrderStatusСтатусы наряд-задания на смену (PRD WorkOrder, модуль prd/work-orders) — значения совпадают с ключами состояний workOrderMachine. Чип «в наряде» на карточке станка = issued; «резерв» — строка isReserve=true (не статус). См. docs/modules/prd/work-orders/state-machines.md.

Functions​

FunctionDescription
computeFuelTankDerivedStatusВычисляет производный статус резервуара по остатку относительно ёмкости и минимального уровня.
currentShiftСмена, идущая в этот момент: тип + дата её НАЧАЛА. После полуночи (00:00–07:59) идёт ночная смена, стартовавшая накануне, поэтому её shiftDate — вчерашний. Именно эта пара опознаёт наряд и сменный рапорт (на пару участок+смена активен ≤ 1 наряд), поэтому дата и тип всегда отдаются вместе.
endpointRbacRBAC-контракт эндпоинта по method+path (path version-agnostic, без /api/v1).
formatAssetLabelОтображаемое имя техники: «Буровой станок 107».
isShiftTypeType guard: является ли строка валидным ShiftType.
isTimesheetEntryStatusType guard: является ли произвольное значение валидным TimesheetEntryStatus. Полезно для безопасного сужения типа при разборе внешних данных (REST-ответ, query-параметр).
isWatchAssignmentStatusType guard: является ли строка валидным WatchAssignmentStatus.
localIsoDateЛокальная ISO-дата из компонентов Date. НЕ toISOString().slice(0, 10): тот считает в UTC и до 05:00 по Астане отдаёт вчерашнюю дату — off-by-one на границе.
parseIsoDateЛокальный Date из YYYY-MM-DD, либо null на нераспознанном значении. Формы мало: new Date(2026, 1, 31) молча катит 31 февраля в 3 марта, поэтому дата сверяется обратно по компонентам. Разбор локальный, под стать localIsoDate; new Date('2026-07-30') читает строку как UTC и до 05:00 по Астане уводит на сутки.
previousShiftСмена, стоящая в непрерывном цикле день→ночь→день ПЕРЕД указанной. Ночной предшествует дневная того же дня; дневной — ночная, стартовавшая накануне (её shiftDate — вчерашний, см. currentShift).
resolveShiftTypeТип смены, идущей в этот момент.
rolesForEndpointРоли с доступом к эндпоинту (@RequiresRole). Пустой массив, если эндпоинт не найден или @Public. Канонический способ гейтить UI-действие по тому же контракту, что enforce'ит бэк.