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 (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 (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 (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 (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 (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 (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 (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> станційної машини замовлення.
2. scheduled
планується
Статус <unk>написаний <unk> стан машини замовлення.
3. active
активні
Статус <unk>активний <unk> станції GT14_0__.
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> стан машини замовлення.
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
55 Полі / графи

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
delivery_address TEXT Nein - Feld delivery_address
delivery_method VARCHAR(64) Nein - Feld delivery_method
delivery_note TEXT Nein - Feld delivery_note
incoterm VARCHAR(16) Nein - Feld incoterm
incoterm_place VARCHAR(128) Nein - Feld incoterm_place
carrier VARCHAR(128) Nein - Feld carrier
tracking_number VARCHAR(128) Nein - Feld tracking_number
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: operator_surface; mutation=True
workorders
⚡ REST API GET /api/v1/extra-work/projects/{project_id}/open
list_open_for_project
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/projects/{project_id}/flow
project_flow
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/reports/{report_id}/briefing
visit_briefing
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/reports/{report_id}/flow
report_flow
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/staff
персонал
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/download
download_latest_dossier
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/versions
dossier_versions
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/dossier/{document_id}
download_dossier_version
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/jobflow/work-orders/{work_order_id}/flow
work_order_flow
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders
list_workorders
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/stats
workorder_stats
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}
get_workorder
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/compatible-parts
workorder_compatible_parts
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/delivery-note.pdf
work_order_delivery_note
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/invoicing
order_invoicing_overview
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/items
list_workorder_items
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/logs
list_worklogs
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/material-requirements
list_material_requirements
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /api/v1/workorders/{work_order_id}/materials
list_materials
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /portal/{slug}/auftraege
workorders_page
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /workorders
workorders_page
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /workorders/new
workorders_new_page
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /workorders/{work_order_id}
workorder_detail_page
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API GET /workorders/{work_order_id}/edit
workorder_detail_page
Semantic binding: inventory_only; mutation=False
workorders
⚡ REST API PATCH /api/v1/workorders/{work_order_id}
update_workorder
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API PATCH /api/v1/workorders/{work_order_id}/items/{item_id}
update_workorder_item
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/decide
вирішувати
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/invoiced
mark_invoiced
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/extra-work/{candidate_id}/quote
create_change_quote
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/projects/{project_id}/manager
assign_project_manager
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/projects/{project_id}/status
set_project_status
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/reports/{report_id}/create-order
create_order_for_visit
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/reports/{report_id}/schedule
schedule_report
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/assign
assign_work_order
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/dossier
create_dossier
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/plan-visit
plan_visit
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/jobflow/work-orders/{work_order_id}/start
start_work_order
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders
create_workorder
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/complete
complete_workorder
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/create-invoice
create_invoice_from_workorder
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/documents
upload_workorder_document
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/invoice
create_order_invoice
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/items
add_workorder_item
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/logs
add_worklog
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements
add_material_requirement
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements/{requirement_id}/purchase
purchase_material_requirement
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/material-requirements/{requirement_id}/reserve
reserve_material_requirement
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/materials
consume_material
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API POST /api/v1/workorders/{work_order_id}/signature
save_signature
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API PUT /api/v1/workorders/{work_order_id}/invoice-settings
save_invoice_settings
Semantic binding: operator_surface; mutation=True
workorders
⚡ REST API PUT /api/v1/workorders/{work_order_id}/items/{item_id}/delivered
set_item_delivered
Semantic binding: operator_surface; 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:

  • Закон про робочий час (ArbZG Dokumentationpflicht)
  • Працьопорядка (HwO)
Зв'язані модулі:
➔ finance ➔ projects ➔ fieldservice ➔ assembly