Centurio Система и модульная документация
🏛️ Архитектура платформы 🔑 Login
🏠 Все модули / manufacturing_execution / Заказы на работу & Werkstatt
🧰

Заказы на работу & Werkstatt

workorders manufacturing_execution 🛡️ RLS Protected

Заказа на производство и на работу, этапы работы, определение потребностей в материалах (BOM) и временное сокращение.

Fachliche Bestimmung: Координация физического выполнения в рабочем помещении, производстве и на строительных площадках. При принятии предложений автоматически генерируется из коммерческое предложение. Удерживает потребности в заказах и списках (причем маршрутные предприятия исключаются из внутренних потребностей в материалах).

⚡ Рабочие процессы и жизненные циклы

Процесс выполнения работ workorder_execution

От планируемого заказ до подготовки к работе и до производства до принятия.

stateDiagram-v2 [*] --> SCHEDULED: Aus Angebot konvertiert SCHEDULED --> IN_PROGRESS: Techniker startet Arbeit IN_PROGRESS --> QUALITY_CHECK: Montage beendet QUALITY_CHECK --> COMPLETED: Abnahme erfolgt COMPLETED --> [*]: Übergabe an Schlussrechnung
1. SCHEDULED
Ввод
заказ существует, ресурсы и сроки доступны.
Aktionen: Проверка резервации материалов
2. IN_PROGRESS
В исполнении
сотрудник начинает обработку и содержит рабочие часы.
Aktionen: Сбор времени
3. QUALITY_CHECK
Контроль качества
Заключительный анализ по производственным нормам или критериям клиентов.
Aktionen: Задача протокола об испытании
4. COMPLETED
Завершен
заказ завершен, сдается в отчёт на проект и расчет.
Aktionen: Отключение от счета

Приказ пользователя: дополнительный рабочий агент plan:command_extra_work_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. extra_work_agent
extra_work_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "extra_work_agent", "condition_fact": null}
Aktionen: extra_work_agent

Указа пользователя: агент документации на сайте plan:command_site_documentation_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. site_documentation_agent
site_documentation_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "site_documentation_agent", "condition_fact": null}
Aktionen: site_documentation_agent

Примечание для пользователя: агент по сбору времени plan:command_time_capture_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. time_capture_agent
time_capture_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "time_capture_agent", "condition_fact": null}
Aktionen: time_capture_agent

Приказ пользователя: неспециализированный рабочий агент plan:command_unbilled_work_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. unbilled_work_agent
unbilled_work_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "unbilled_work_agent", "condition_fact": null}
Aktionen: unbilled_work_agent

Указа пользователя: агент по завершению работ plan:command_work_completion_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. work_completion_agent
work_completion_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "work_completion_agent", "condition_fact": null}
Aktionen: work_completion_agent

Приказ пользователя: рабочий заказ plan:command_workorder_crud_subagent

Проверенный план длительности (durable_plan), старт: manual_command.

1. workorder_crud_subagent
workorder_crud_subagent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "workorder_crud_subagent", "condition_fact": null}
Aktionen: workorder_crud_subagent

Указа пользователя: генеральный агент plan:command_workorder_general_agent

Проверенный план длительности (durable_plan), старт: manual_command.

1. workorder_general_agent
workorder_general_agent
{"key": "execute_command", "label": "Befehl prüfen, ausführen oder zur Freigabe vorlegen", "adapter": "agent.execute", "agent": "workorder_general_agent", "condition_fact": null}
Aktionen: workorder_general_agent

Завершенный рабочий заказ plan:unbilled_check

Проверенный длительный план (durable_plan), старт: domain_event.

1. unbilled_work_agent
unbilled_work_agent
{"key": "step_0", "label": "Nicht abgerechnete Stunden finden", "adapter": "agent.execute", "agent": "unbilled_work_agent", "condition_fact": null}
Aktionen: unbilled_work_agent

Заказ работы, зарегистрированный как готовый plan:work_completed

Проверенный длительный план (durable_plan), старт: domain_event.

1. extra_work_agent
extra_work_agent
{"key": "step_0", "label": "Zusatzleistungen erkennen", "adapter": "agent.execute", "agent": "extra_work_agent", "condition_fact": null}
Aktionen: extra_work_agent
2. service_history_agent
service_history_agent
{"key": "step_1", "label": "Wartungseintrag fuer Anlage", "adapter": "agent.execute", "agent": "service_history_agent", "condition_fact": "asset_id"}
Aktionen: service_history_agent
3. billing_agent
billing_agent
{"key": "step_2", "label": "Rechnungsentwurf erstellen", "adapter": "agent.execute", "agent": "billing_agent", "condition_fact": "billable"}
Aktionen: billing_agent

Площадь status:work_order

Осуществляемая машина (особенно наблюдаемое)

1. draft
Проект
Статус <unk>проект <unk> станции GT14_0__.
2. scheduled
План
Статус <unk>спланированный <unk> станции GT14_0__.
3. active
активные
Статус <unk>актив<unk> станковой машины заказ.
4. waiting_customer
waiting_customer
Статус <unk> waiting_customer<unk> станции заказ.
5. waiting_vendor
waiting_vendor
Статус <unk> waiting_vendor<unk> станции заказ.
6. completed
завершенные
Статус <unk>полной <unk> станции заказ.
7. approved
утвержден
Статус <unk>одобрил<unk> станковой машины заказ.
8. invoiced
вклады
Статус <unk>фактурирован <unk> станции <unk>GT14_0__.
9. cancelled
отменены
Статус <unk>отменен <unk> станции заказ.

🗄️ Модели данных & поля

WorkLogs work_logs RLS Aktiv
16 Поле / столбцы

Tabelle work_logs

Feldname Тип данных Обязательность Schlüssel Профессиональное значение
work_order_id UUID Nein FK ➔ work_orders.id Feld work_order_id
project_id UUID Nein FK ➔ projects.id Feld project_id
user_id UUID Nein FK ➔ users.id Feld user_id
started_at DATETIME Nein - Feld started_at
ended_at DATETIME Nein - Feld ended_at
duration_minutes INTEGER Ja * - Feld duration_minutes
description TEXT Nein - Feld description
billable BOOLEAN Ja * - Feld billable
hourly_rate NUMERIC(14, 2) Nein - Feld hourly_rate
source VARCHAR(48) Ja * - Feld source
idempotency_key VARCHAR(128) Nein - Feld idempotency_key
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
metadata JSONB Ja * - Feld metadata
WorkOrders work_orders RLS Aktiv
48 Поле / столбцы

Tabelle work_orders

Feldname Тип данных Обязательность Schlüssel Профессиональное значение
work_order_number VARCHAR(32) Ja * - Feld work_order_number
project_id UUID Nein FK ➔ projects.id Feld project_id
customer_id UUID Nein FK ➔ customers.id Feld customer_id
asset_id UUID Nein FK ➔ assets.id Feld asset_id
location_id UUID Nein FK ➔ locations.id Feld location_id
title VARCHAR(255) Ja * - Feld title
description TEXT Nein - Feld description
order_type VARCHAR(32) Ja * - Feld order_type
priority VARCHAR(16) Ja * - Feld priority
contract_id UUID Nein - Feld contract_id
ticket_id UUID Nein FK ➔ tickets.id Feld ticket_id
status VARCHAR(48) Ja * - Feld status
scheduled_start DATETIME Nein - Feld scheduled_start
scheduled_end DATETIME Nein - Feld scheduled_end
started_at DATETIME Nein - Feld started_at
completed_at DATETIME Nein - Feld completed_at
assigned_user_id UUID Nein FK ➔ users.id Feld assigned_user_id
customer_signature_document_id UUID Nein FK ➔ documents.id Feld customer_signature_document_id
completion_summary TEXT Nein - Feld completion_summary
billable BOOLEAN Ja * - Feld billable
currency VARCHAR(3) Ja * - Feld currency
subtotal NUMERIC(14, 2) Ja * - Feld subtotal
tax_total NUMERIC(14, 2) Ja * - Feld tax_total
total NUMERIC(14, 2) Ja * - Feld total
invoice_policy VARCHAR(12) Ja * - Feld invoice_policy
invoice_status VARCHAR(12) Ja * - Feld invoice_status
invoice_customer_id UUID Nein FK ➔ customers.id Feld invoice_customer_id
payment_terms VARCHAR(128) Nein - Feld payment_terms
payment_term_code VARCHAR(32) Nein - Feld payment_term_code
payment_term_days INTEGER Nein - Feld payment_term_days
skonto_days INTEGER Nein - Feld skonto_days
skonto_percent NUMERIC(5, 2) Nein - Feld skonto_percent
customer_reference VARCHAR(128) Nein - Feld customer_reference
cost_center VARCHAR(64) Nein - Feld cost_center
cost_object VARCHAR(64) Nein - Feld cost_object
tax_exemption_reason VARCHAR(255) Nein - Feld tax_exemption_reason
prepayment_percent NUMERIC(5, 2) Nein - Feld prepayment_percent
invoice_note TEXT Nein - Feld invoice_note
semantic_attributes JSONB Nein - Feld semantic_attributes
id UUID Nein PK Feld id
tenant_id UUID Ja * FK ➔ organizations.id Feld tenant_id
created_at DATETIME Ja * - Feld created_at
updated_at DATETIME Ja * - Feld updated_at
created_by UUID Nein - Feld created_by
updated_by UUID Nein - Feld updated_by
source_type VARCHAR(32) Nein - Feld source_type
source_id UUID Nein - Feld source_id
metadata JSONB Ja * - Feld metadata

🔌 Входные пункты (UI & API)

Art Метод Конечный пункт / путь Titel & Zweck Право на
⚡ REST API DELETE /api/v1/workorders/{work_order_id}/items/{item_id}
delete_workorder_item
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API GET /api/v1/extra-work/projects/{project_id}/open
list_open_for_project
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/projects/{project_id}/flow
project_flow
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/reports/{report_id}/briefing
visit_briefing
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/reports/{report_id}/flow
report_flow
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/staff
рабочие
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/download
download_latest_dossier
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/versions
dossier_versions
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/{document_id}
download_dossier_version
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/flow
work_order_flow
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders
list_workorders
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/stats
workorder_stats
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}
get_workorder
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/compatible-parts
workorder_compatible_parts
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/delivery-note.pdf
work_order_delivery_note
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/invoicing
order_invoicing_overview
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/items
list_workorder_items
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/logs
list_worklogs
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/material-requirements
list_material_requirements
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/materials
list_materials
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /portal/{slug}/auftraege
workorders_page
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /workorders
workorders_page
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /workorders/new
workorders_new_page
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /workorders/{work_order_id}
workorder_detail_page
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API GET /workorders/{work_order_id}/edit
workorder_detail_page
Semantic binding: not_evaluated; mutation=False
workorders
⚡ REST API PATCH /api/v1/workorders/{work_order_id}
update_workorder
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API PATCH /api/v1/workorders/{work_order_id}/items/{item_id}
update_workorder_item
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/decide
решать
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/invoiced
mark_invoiced
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/quote
create_change_quote
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/projects/{project_id}/manager
assign_project_manager
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/projects/{project_id}/status
set_project_status
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/reports/{report_id}/create-order
create_order_for_visit
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/reports/{report_id}/schedule
schedule_report
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/assign
assign_work_order
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/dossier
create_dossier
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/plan-visit
plan_visit
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/start
start_work_order
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders
create_workorder
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/complete
complete_workorder
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/create-invoice
create_invoice_from_workorder
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/documents
upload_workorder_document
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/invoice
create_order_invoice
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/items
add_workorder_item
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/logs
add_worklog
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements
add_material_requirement
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements/{requirement_id}/purchase
purchase_material_requirement
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements/{requirement_id}/reserve
reserve_material_requirement
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/materials
consume_material
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/signature
save_signature
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API PUT /api/v1/workorders/{work_order_id}/invoice-settings
save_invoice_settings
Semantic binding: not_evaluated; mutation=True
workorders
⚡ REST API PUT /api/v1/workorders/{work_order_id}/items/{item_id}/delivered
set_item_delivered
Semantic binding: not_evaluated; mutation=True
workorders
🖥️ WEB-UI GET /auftraege
Перечень заказов
Перечень всех работ по монтажу и монтажу
workorders:read
⚡ REST API PATCH /api/v1/workorders/{id}/status
Изменение статуса
Продолжайте
workorders:write

🛡️ Регуляторство и соответствие

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Закон о рабочем времени (Об обязательном документообороте)
  • Профессиональная работа
Связанные модули:
➔ finance ➔ projects ➔ fieldservice ➔ assembly