Files
KIS-TOiR/api-summary.json

2186 lines
62 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"sourceFiles": [
"domain/toir.api.dsl"
],
"enums": [
{
"name": "EquipmentStatus",
"description": null,
"values": [
{
"name": "Active",
"label": "В эксплуатации"
},
{
"name": "Repair",
"label": "В ремонте"
},
{
"name": "Reserve",
"label": "В резерве"
},
{
"name": "WriteOff",
"label": "Списано"
}
]
},
{
"name": "laborOperation",
"description": "Трудовые операции",
"values": [
{
"name": "Manual",
"label": "Ручные"
},
{
"name": "MachineManual",
"label": "Машинно-ручные"
},
{
"name": "Machine",
"label": "Машинные"
}
]
},
{
"name": "EnumPeriodicityTO",
"description": null,
"values": [
{
"name": "Ежедневное",
"label": "Ежедневное"
},
{
"name": "Еженедельное",
"label": "Еженедельное"
},
{
"name": "Ежемесячное",
"label": "Ежемесячное"
},
{
"name": "Полугодовое",
"label": "Полугодовое"
},
{
"name": "Годовое",
"label": "Годовое"
}
]
},
{
"name": "Role",
"description": null,
"values": [
{
"name": "Исполнитель",
"label": "Исполнитель"
},
{
"name": "Подписант",
"label": "Подписант"
},
{
"name": "Пользователь",
"label": "Пользователь"
}
]
},
{
"name": "CategoryPart",
"description": null,
"values": [
{
"name": "Расходник",
"label": "Расходник"
},
{
"name": "Запчасть",
"label": "Запчасть"
},
{
"name": "Инструмент",
"label": "Инструмент"
},
{
"name": "Спецодежда",
"label": "Спецодежда"
}
]
},
{
"name": "EquipmentType",
"description": "Типы оборудования",
"values": [
{
"name": "Производственное",
"label": "производственное"
},
{
"name": "Энергетическое",
"label": "энергетическое"
},
{
"name": "Насосное",
"label": "насосное"
},
{
"name": "Компрессорное",
"label": "компрессорное"
}
]
}
],
"dtos": [
{
"name": "DTO.Equipment",
"description": "Оборудование — полный response-объект",
"fields": [
{
"name": "id",
"type": "uuid",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Идентификатор оборудования",
"map": "Equipment.id",
"sync": false,
"label": null
},
{
"name": "name",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Название оборудования",
"map": "Equipment.name",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Заводской (серийный) номер",
"map": "Equipment.serialNumber",
"sync": false,
"label": null
},
{
"name": "inventoryNumber",
"type": "string",
"required": false,
"nullable": false,
"unique": true,
"primary": false,
"description": "Инвентарный номер",
"map": "Equipment.inventoryNumber",
"sync": false,
"label": null
},
{
"name": "equipmentType",
"type": "EquipmentType",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Тип оборудования",
"map": "Equipment.equipmentType",
"sync": false,
"label": null
},
{
"name": "dateOfInspection",
"type": "date",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Дата проверки",
"map": "Equipment.dateOfInspection",
"sync": false,
"label": null
},
{
"name": "periodicityTO",
"type": "EnumPeriodicityTO",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Периодичность ТО",
"map": "Equipment.periodicityTO",
"sync": false,
"label": null
},
{
"name": "location",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Место эксплуатации / скважина / куст",
"map": "Equipment.location",
"sync": false,
"label": null
},
{
"name": "status",
"type": "EquipmentStatus",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Текущий статус",
"map": "Equipment.status",
"sync": false,
"label": null
},
{
"name": "commissionedAt",
"type": "date",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Год изготовления",
"map": "Equipment.commissionedAt",
"sync": false,
"label": null
},
{
"name": "totalEngineHours",
"type": "decimal",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Общая наработка, моточасов",
"map": "Equipment.totalEngineHours",
"sync": false,
"label": null
},
{
"name": "engineHoursSinceLastRepair",
"type": "decimal",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Наработка с последнего ремонта, моточасов",
"map": "Equipment.engineHoursSinceLastRepair",
"sync": false,
"label": null
},
{
"name": "lastRepairAt",
"type": "date",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Дата последнего ремонта",
"map": "Equipment.lastRepairAt",
"sync": false,
"label": null
},
{
"name": "notes",
"type": "text",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Примечания",
"map": "Equipment.notes",
"sync": false,
"label": null
},
{
"name": "workAsPartOf",
"type": "laborOperation",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Работы в составе",
"map": "Equipment.workAsPartOf",
"sync": false,
"label": null
},
{
"name": "fuelConsumed",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Расход топлива",
"map": "Equipment.fuelConsumed",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EquipmentCreate",
"description": "Тело запроса на создание оборудования",
"fields": [
{
"name": "name",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Название оборудования",
"map": "Equipment.name",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Заводской (серийный) номер",
"map": "Equipment.serialNumber",
"sync": false,
"label": null
},
{
"name": "inventoryNumber",
"type": "string",
"required": true,
"nullable": false,
"unique": true,
"primary": false,
"description": "Инвентарный номер",
"map": "Equipment.inventoryNumber",
"sync": false,
"label": null
},
{
"name": "equipmentType",
"type": "EquipmentType",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Тип оборудования",
"map": "Equipment.equipmentType",
"sync": false,
"label": null
},
{
"name": "dateOfInspection",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Дата проверки",
"map": "Equipment.dateOfInspection",
"sync": false,
"label": null
},
{
"name": "periodicityTO",
"type": "EnumPeriodicityTO",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Периодичность ТО",
"map": "Equipment.periodicityTO",
"sync": false,
"label": null
},
{
"name": "location",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Место эксплуатации / скважина / куст",
"map": "Equipment.location",
"sync": false,
"label": null
},
{
"name": "status",
"type": "EquipmentStatus",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Текущий статус",
"map": "Equipment.status",
"sync": false,
"label": null
},
{
"name": "commissionedAt",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Год изготовления",
"map": "Equipment.commissionedAt",
"sync": false,
"label": null
},
{
"name": "totalEngineHours",
"type": "decimal",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Общая наработка, моточасов",
"map": "Equipment.totalEngineHours",
"sync": false,
"label": null
},
{
"name": "engineHoursSinceLastRepair",
"type": "decimal",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Наработка с последнего ремонта, моточасов",
"map": "Equipment.engineHoursSinceLastRepair",
"sync": false,
"label": null
},
{
"name": "lastRepairAt",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Дата последнего ремонта",
"map": "Equipment.lastRepairAt",
"sync": false,
"label": null
},
{
"name": "notes",
"type": "text",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Примечания",
"map": "Equipment.notes",
"sync": false,
"label": null
},
{
"name": "workAsPartOf",
"type": "laborOperation",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Работы в составе",
"map": "Equipment.workAsPartOf",
"sync": false,
"label": null
},
{
"name": "fuelConsumed",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Расход топлива",
"map": "Equipment.fuelConsumed",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EquipmentUpdate",
"description": "Тело запроса на обновление оборудования (частичное обновление)",
"fields": [
{
"name": "name",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Название оборудования",
"map": "Equipment.name",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Заводской (серийный) номер",
"map": "Equipment.serialNumber",
"sync": false,
"label": null
},
{
"name": "inventoryNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": true,
"primary": false,
"description": "Инвентарный номер",
"map": "Equipment.inventoryNumber",
"sync": false,
"label": null
},
{
"name": "equipmentType",
"type": "EquipmentType",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Тип оборудования",
"map": "Equipment.equipmentType",
"sync": false,
"label": null
},
{
"name": "dateOfInspection",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Дата проверки",
"map": "Equipment.dateOfInspection",
"sync": false,
"label": null
},
{
"name": "periodicityTO",
"type": "EnumPeriodicityTO",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Периодичность ТО",
"map": "Equipment.periodicityTO",
"sync": false,
"label": null
},
{
"name": "location",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Место эксплуатации / скважина / куст",
"map": "Equipment.location",
"sync": false,
"label": null
},
{
"name": "status",
"type": "EquipmentStatus",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Текущий статус",
"map": "Equipment.status",
"sync": false,
"label": null
},
{
"name": "commissionedAt",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Год изготовления",
"map": "Equipment.commissionedAt",
"sync": false,
"label": null
},
{
"name": "totalEngineHours",
"type": "decimal",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Общая наработка, моточасов",
"map": "Equipment.totalEngineHours",
"sync": false,
"label": null
},
{
"name": "engineHoursSinceLastRepair",
"type": "decimal",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Наработка с последнего ремонта, моточасов",
"map": "Equipment.engineHoursSinceLastRepair",
"sync": false,
"label": null
},
{
"name": "lastRepairAt",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Дата последнего ремонта",
"map": "Equipment.lastRepairAt",
"sync": false,
"label": null
},
{
"name": "notes",
"type": "text",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Примечания",
"map": "Equipment.notes",
"sync": false,
"label": null
},
{
"name": "workAsPartOf",
"type": "laborOperation",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Работы в составе",
"map": "Equipment.workAsPartOf",
"sync": false,
"label": null
},
{
"name": "fuelConsumed",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Расход топлива",
"map": "Equipment.fuelConsumed",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EquipmentFilter",
"description": "Фильтры для списка оборудования",
"fields": [
{
"name": "inventoryNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по инвентарному номеру",
"map": null,
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по заводскому номеру",
"map": null,
"sync": false,
"label": null
},
{
"name": "name",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по наименованию",
"map": null,
"sync": false,
"label": null
},
{
"name": "equipmentTypeCode",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Точное совпадение по коду вида оборудования",
"map": null,
"sync": false,
"label": null
},
{
"name": "equipmentPeriodicityTO",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Точное совпадение по периодичности ТО оборудования",
"map": null,
"sync": false,
"label": null
},
{
"name": "dateOfInspection",
"type": "date",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Дата проверки",
"map": null,
"sync": false,
"label": null
},
{
"name": "status",
"type": "EquipmentStatus",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтр по статусу",
"map": null,
"sync": false,
"label": null
},
{
"name": "location",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по месту эксплуатации",
"map": null,
"sync": false,
"label": null
},
{
"name": "workAsPartOf",
"type": "laborOperation",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтр по трудовой операции",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EquipmentListRequest",
"description": "Запрос постраничного списка оборудования с фильтрацией",
"fields": [
{
"name": "filter",
"type": "DTO.EquipmentFilter",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтры",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageRequest",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Параметры пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EquipmentListResponse",
"description": "Ответ постраничного списка оборудования",
"fields": [
{
"name": "content",
"type": "DTO.Equipment[]",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Список оборудования",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageInfo",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Метаданные пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.Employee",
"description": "Сотрудник — полный response-объект",
"fields": [
{
"name": "code",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": true,
"description": "Номер сотрудника (Табельный номер)",
"map": "Employee.code",
"sync": false,
"label": null
},
{
"name": "fullName",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "ФИО сотрудника",
"map": "Employee.fullName",
"sync": false,
"label": "Полное имя"
},
{
"name": "role",
"type": "Role",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Роль сотрудника",
"map": "Employee.role",
"sync": false,
"label": "Роль"
},
{
"name": "position",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Должность сотрудника",
"map": "Employee.position",
"sync": false,
"label": null
},
{
"name": "boss",
"type": "DTO.Employee",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Руководитель",
"map": "Employee.boss",
"sync": false,
"label": null
},
{
"name": "subordinates",
"type": "DTO.Employee[]",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Подчинённые",
"map": "Employee.subordinates",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Стоимость часа работы сотрудника",
"map": "Employee.price",
"sync": false,
"label": null
},
{
"name": "phoneNumber",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Номер телефона",
"map": "Employee.phoneNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EmployeeCreate",
"description": "Тело запроса на создание сотрудника",
"fields": [
{
"name": "code",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Номер сотрудника (Табельный номер)",
"map": "Employee.code",
"sync": false,
"label": null
},
{
"name": "fullName",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "ФИО сотрудника",
"map": "Employee.fullName",
"sync": false,
"label": "Полное имя"
},
{
"name": "role",
"type": "Role",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Роль сотрудника",
"map": "Employee.role",
"sync": false,
"label": "Роль"
},
{
"name": "position",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Должность сотрудника",
"map": "Employee.position",
"sync": false,
"label": null
},
{
"name": "boss",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Код руководителя",
"map": "Employee.boss",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Стоимость часа работы сотрудника",
"map": "Employee.price",
"sync": false,
"label": null
},
{
"name": "phoneNumber",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Номер телефона",
"map": "Employee.phoneNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EmployeeUpdate",
"description": "Тело запроса на обновление сотрудника (частичное обновление)",
"fields": [
{
"name": "fullName",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "ФИО сотрудника",
"map": "Employee.fullName",
"sync": false,
"label": "Полное имя"
},
{
"name": "role",
"type": "Role",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Роль сотрудника",
"map": "Employee.role",
"sync": false,
"label": "Роль"
},
{
"name": "position",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Должность сотрудника",
"map": "Employee.position",
"sync": false,
"label": null
},
{
"name": "boss",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Код руководителя",
"map": "Employee.boss",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Стоимость часа работы сотрудника",
"map": "Employee.price",
"sync": false,
"label": null
},
{
"name": "phoneNumber",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Номер телефона",
"map": "Employee.phoneNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EmployeeFilter",
"description": "Фильтры для списка сотрудников",
"fields": [
{
"name": "code",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по табельному номеру",
"map": null,
"sync": false,
"label": null
},
{
"name": "fullName",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по ФИО",
"map": null,
"sync": false,
"label": null
},
{
"name": "role",
"type": "Role",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Точное совпадение по роли",
"map": null,
"sync": false,
"label": null
},
{
"name": "position",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по должности",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EmployeeListRequest",
"description": "Запрос постраничного списка сотрудников с фильтрацией",
"fields": [
{
"name": "filter",
"type": "DTO.EmployeeFilter",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтры",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageRequest",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Параметры пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.EmployeeListResponse",
"description": "Ответ постраничного списка сотрудников",
"fields": [
{
"name": "content",
"type": "DTO.Employee[]",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Список сотрудников",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageInfo",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Метаданные пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.Part",
"description": "ЗИП/ТМЦ — полный response-объект",
"fields": [
{
"name": "id",
"type": "uuid",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Идентификатор ЗИП/ТМЦ",
"map": "Part.id",
"sync": false,
"label": null
},
{
"name": "name",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Название",
"map": "Part.name",
"sync": false,
"label": null
},
{
"name": "categories",
"type": "CategoryPart",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Категории",
"map": "Part.categories",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Стоимость ЗИП/ТМЦ",
"map": "Part.price",
"sync": false,
"label": null
},
{
"name": "description",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Описание ЗИП/ТМЦ",
"map": "Part.description",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Серийный номер запасных частей / инструментов / расходников",
"map": "Part.serialNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PartCreate",
"description": "Тело запроса на создание ЗИП/ТМЦ",
"fields": [
{
"name": "name",
"type": "string",
"required": true,
"nullable": false,
"unique": false,
"primary": false,
"description": "Название",
"map": "Part.name",
"sync": false,
"label": null
},
{
"name": "categories",
"type": "CategoryPart",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Категории",
"map": "Part.categories",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Стоимость ЗИП/ТМЦ",
"map": "Part.price",
"sync": false,
"label": null
},
{
"name": "description",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Описание ЗИП/ТМЦ",
"map": "Part.description",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Серийный номер запасных частей / инструментов / расходников",
"map": "Part.serialNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PartUpdate",
"description": "Тело запроса на обновление ЗИП/ТМЦ (частичное обновление)",
"fields": [
{
"name": "name",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Название",
"map": "Part.name",
"sync": false,
"label": null
},
{
"name": "categories",
"type": "CategoryPart",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Категории",
"map": "Part.categories",
"sync": false,
"label": null
},
{
"name": "price",
"type": "number",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Стоимость ЗИП/ТМЦ",
"map": "Part.price",
"sync": false,
"label": null
},
{
"name": "description",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Описание ЗИП/ТМЦ",
"map": "Part.description",
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Серийный номер запасных частей / инструментов / расходников",
"map": "Part.serialNumber",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PartFilter",
"description": "Фильтры для списка ЗИП/ТМЦ",
"fields": [
{
"name": "name",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по названию",
"map": null,
"sync": false,
"label": null
},
{
"name": "categories",
"type": "CategoryPart",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Точное совпадение по категории",
"map": null,
"sync": false,
"label": null
},
{
"name": "serialNumber",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по серийному номеру",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PartListRequest",
"description": "Запрос постраничного списка ЗИП/ТМЦ с фильтрацией",
"fields": [
{
"name": "filter",
"type": "DTO.PartFilter",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтры",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageRequest",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Параметры пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PartListResponse",
"description": "Ответ постраничного списка ЗИП/ТМЦ",
"fields": [
{
"name": "content",
"type": "DTO.Part[]",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Список ЗИП/ТМЦ",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageInfo",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Метаданные пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResource",
"description": "Категория ресурсов — полный response-объект",
"fields": [
{
"name": "id",
"type": "uuid",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Идентификатор категории ресурсов",
"map": "CategoryResource.id",
"sync": false,
"label": null
},
{
"name": "part",
"type": "DTO.Part",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "ЗИП/ТМЦ",
"map": "CategoryResource.part",
"sync": false,
"label": null
},
{
"name": "employee",
"type": "DTO.Employee",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Сотрудник",
"map": "CategoryResource.employee",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResourceCreate",
"description": "Тело запроса на создание категории ресурсов",
"fields": [
{
"name": "partId",
"type": "uuid",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Идентификатор ЗИП/ТМЦ",
"map": "CategoryResource.part",
"sync": false,
"label": null
},
{
"name": "employeeCode",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Код сотрудника",
"map": "CategoryResource.employee",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResourceUpdate",
"description": "Тело запроса на обновление категории ресурсов (частичное обновление)",
"fields": [
{
"name": "partId",
"type": "uuid",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Идентификатор ЗИП/ТМЦ",
"map": "CategoryResource.part",
"sync": false,
"label": null
},
{
"name": "employeeCode",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Код сотрудника",
"map": "CategoryResource.employee",
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResourceFilter",
"description": "Фильтры для списка категорий ресурсов",
"fields": [
{
"name": "partName",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по названию ЗИП/ТМЦ",
"map": null,
"sync": false,
"label": null
},
{
"name": "employeeName",
"type": "string",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Частичное совпадение по ФИО сотрудника",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResourceListRequest",
"description": "Запрос постраничного списка категорий ресурсов с фильтрацией",
"fields": [
{
"name": "filter",
"type": "DTO.CategoryResourceFilter",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Фильтры",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageRequest",
"required": false,
"nullable": true,
"unique": false,
"primary": false,
"description": "Параметры пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.CategoryResourceListResponse",
"description": "Ответ постраничного списка категорий ресурсов",
"fields": [
{
"name": "content",
"type": "DTO.CategoryResource[]",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Список категорий ресурсов",
"map": null,
"sync": false,
"label": null
},
{
"name": "page",
"type": "DTO.PageInfo",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Метаданные пагинации",
"map": null,
"sync": false,
"label": null
}
]
},
{
"name": "DTO.PriceList",
"description": "Регистр цен — response-объект",
"fields": [
{
"name": "costOfWorkingHours",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Стоимость часов работы",
"map": "Employee.price",
"sync": true,
"label": null
},
{
"name": "partPrice",
"type": "number",
"required": false,
"nullable": false,
"unique": false,
"primary": false,
"description": "Стоимость ЗИП/ТМЦ",
"map": "Part.price",
"sync": true,
"label": null
}
]
}
],
"apis": [
{
"name": "API.Equipment",
"description": "API управления справочником оборудования",
"endpoints": [
{
"name": "getEquipmentById",
"label": "GET /equipments/{id}",
"method": "GET",
"path": "/equipments/{id}",
"description": "Получить оборудование по идентификатору",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор оборудования"
},
{
"name": "response",
"type": "DTO.Equipment",
"description": null
}
]
},
{
"name": "listEquipments",
"label": "POST /equipments/page",
"method": "POST",
"path": "/equipments/page",
"description": "Постраничный список оборудования с фильтрацией",
"attributes": [
{
"name": "request",
"type": "DTO.EquipmentListRequest",
"description": null
},
{
"name": "response",
"type": "DTO.EquipmentListResponse",
"description": null
}
]
},
{
"name": "createEquipment",
"label": "POST /equipments",
"method": "POST",
"path": "/equipments",
"description": "Создать единицу оборудования",
"attributes": [
{
"name": "request",
"type": "DTO.EquipmentCreate",
"description": null
}
]
},
{
"name": "updateEquipment",
"label": "PUT /equipments/{id}",
"method": "PUT",
"path": "/equipments/{id}",
"description": "Обновить оборудование",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор оборудования"
},
{
"name": "request",
"type": "DTO.EquipmentUpdate",
"description": null
}
]
},
{
"name": "deleteEquipment",
"label": "DELETE /equipments/{id}",
"method": "DELETE",
"path": "/equipments/{id}",
"description": "Удалить единицу оборудования",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор оборудования"
}
]
}
]
},
{
"name": "API.Employee",
"description": "API управления справочником сотрудников",
"endpoints": [
{
"name": "getEmployeeByCode",
"label": "GET /employees/{code}",
"method": "GET",
"path": "/employees/{code}",
"description": "Получить сотрудника по табельному номеру",
"attributes": [
{
"name": "code",
"type": "string",
"description": "Табельный номер сотрудника"
},
{
"name": "response",
"type": "DTO.Employee",
"description": null
}
]
},
{
"name": "listEmployees",
"label": "POST /employees/page",
"method": "POST",
"path": "/employees/page",
"description": "Постраничный список сотрудников с фильтрацией",
"attributes": [
{
"name": "request",
"type": "DTO.EmployeeListRequest",
"description": null
},
{
"name": "response",
"type": "DTO.EmployeeListResponse",
"description": null
}
]
},
{
"name": "createEmployee",
"label": "POST /employees",
"method": "POST",
"path": "/employees",
"description": "Создать сотрудника",
"attributes": [
{
"name": "request",
"type": "DTO.EmployeeCreate",
"description": null
}
]
},
{
"name": "updateEmployee",
"label": "PUT /employees/{code}",
"method": "PUT",
"path": "/employees/{code}",
"description": "Обновить сотрудника",
"attributes": [
{
"name": "code",
"type": "string",
"description": "Табельный номер сотрудника"
},
{
"name": "request",
"type": "DTO.EmployeeUpdate",
"description": null
}
]
},
{
"name": "deleteEmployee",
"label": "DELETE /employees/{code}",
"method": "DELETE",
"path": "/employees/{code}",
"description": "Удалить сотрудника",
"attributes": [
{
"name": "code",
"type": "string",
"description": "Табельный номер сотрудника"
}
]
}
]
},
{
"name": "API.Part",
"description": "API управления справочником ЗИП/ТМЦ",
"endpoints": [
{
"name": "getPartById",
"label": "GET /parts/{id}",
"method": "GET",
"path": "/parts/{id}",
"description": "Получить ЗИП/ТМЦ по идентификатору",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор ЗИП/ТМЦ"
},
{
"name": "response",
"type": "DTO.Part",
"description": null
}
]
},
{
"name": "listParts",
"label": "POST /parts/page",
"method": "POST",
"path": "/parts/page",
"description": "Постраничный список ЗИП/ТМЦ с фильтрацией",
"attributes": [
{
"name": "request",
"type": "DTO.PartListRequest",
"description": null
},
{
"name": "response",
"type": "DTO.PartListResponse",
"description": null
}
]
},
{
"name": "createPart",
"label": "POST /parts",
"method": "POST",
"path": "/parts",
"description": "Создать ЗИП/ТМЦ",
"attributes": [
{
"name": "request",
"type": "DTO.PartCreate",
"description": null
}
]
},
{
"name": "updatePart",
"label": "PUT /parts/{id}",
"method": "PUT",
"path": "/parts/{id}",
"description": "Обновить ЗИП/ТМЦ",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор ЗИП/ТМЦ"
},
{
"name": "request",
"type": "DTO.PartUpdate",
"description": null
}
]
},
{
"name": "deletePart",
"label": "DELETE /parts/{id}",
"method": "DELETE",
"path": "/parts/{id}",
"description": "Удалить ЗИП/ТМЦ",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор ЗИП/ТМЦ"
}
]
}
]
},
{
"name": "API.CategoryResource",
"description": "API управления категориями ресурсов",
"endpoints": [
{
"name": "getCategoryResourceById",
"label": "GET /category-resources/{id}",
"method": "GET",
"path": "/category-resources/{id}",
"description": "Получить категорию ресурсов по идентификатору",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор категории ресурсов"
},
{
"name": "response",
"type": "DTO.CategoryResource",
"description": null
}
]
},
{
"name": "listCategoryResources",
"label": "POST /category-resources/page",
"method": "POST",
"path": "/category-resources/page",
"description": "Постраничный список категорий ресурсов с фильтрацией",
"attributes": [
{
"name": "request",
"type": "DTO.CategoryResourceListRequest",
"description": null
},
{
"name": "response",
"type": "DTO.CategoryResourceListResponse",
"description": null
}
]
},
{
"name": "createCategoryResource",
"label": "POST /category-resources",
"method": "POST",
"path": "/category-resources",
"description": "Создать категорию ресурсов",
"attributes": [
{
"name": "request",
"type": "DTO.CategoryResourceCreate",
"description": null
}
]
},
{
"name": "updateCategoryResource",
"label": "PUT /category-resources/{id}",
"method": "PUT",
"path": "/category-resources/{id}",
"description": "Обновить категорию ресурсов",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор категории ресурсов"
},
{
"name": "request",
"type": "DTO.CategoryResourceUpdate",
"description": null
}
]
},
{
"name": "deleteCategoryResource",
"label": "DELETE /category-resources/{id}",
"method": "DELETE",
"path": "/category-resources/{id}",
"description": "Удалить категорию ресурсов",
"attributes": [
{
"name": "id",
"type": "uuid",
"description": "Идентификатор категории ресурсов"
}
]
}
]
},
{
"name": "API.PriceList",
"description": "API получения регистра цен",
"endpoints": [
{
"name": "getPriceList",
"label": "GET /price-list",
"method": "GET",
"path": "/price-list",
"description": "Получить регистр цен",
"attributes": [
{
"name": "response",
"type": "DTO.PriceList",
"description": null
}
]
}
]
}
]
}