Centurio Järjestelmätoduulit
🏛️ Alustan arkkitehtuuri 🔑 Login
🏠 Kaikki moduulit / manufacturing_execution / Hankkeet ja rakennuspaikat
📘

Hankkeet ja rakennuspaikat

projects manufacturing_execution 🛡️ RLS Protected

Hankkeet & rakennuspaikat <unk> koodista johdettu prosessi- ja API-asiakirja.

Fachliche Bestimmung: Projekteet & rakennuspaikat <unk> koodista johdettu prosess- ja API-asiakirja.

⚡ Työvirrat ja elinkaari

Asiakasmäärä → Varastojen poistaminen cascade:business.customer_order.fulfill

Kaskade (valvonta- ja valvontavirasto).

1. issue
Muotokuvaus
luettelo
Aktionen: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2. tour
Toimitusmatkan suunnittelu
Logistiikka
Aktionen: create_tour
3. project
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
hankkeet
Aktionen: link_project
4. task
Rahoitus
tehtävät
Aktionen: create_task

Käsitys cascade:business.order_confirmation.check

Kaskade (valvonta- ja valvontavirasto).

1. match
AB <unk> Tilauksen vertailua
Osto
Aktionen: order_confirmation.match
2. project
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
hankkeet
Aktionen: link_project
3. task
Toimituspäivä / hintojen valvonta
tehtävät
Aktionen: create_task

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cascade:business.supplier_invoice.p2p

Kaskade (valvonta- ja valvontavirasto).

1. booking
Kirjautusprosenttien laatiminen
tilinpitäminen
Aktionen: tilinpäätös
2. project
Hankkeen kustannukset
hankkeet
Aktionen: link_project
3. task
Säännön määräaika / tilinpäätös
tehtävät
Aktionen: create_task

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cascade_target:business.project.link

Kaskade (valvonta- ja valvontavirasto).

1. cascade
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Käyttäjäohje: projekti plan:command_project_crud_subagent

Tarkistettu kestävä suunnitelma (durable_plan), aloitus: manual_command.

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

- Vähintään 15 prosenttia status:project

Huomaavaa (vain havaittavissa oleva) laite.

1. draft
Ehdotus
Tilanne <unk>rakenne <unk> Tilanne_maskinassa projekti.
2. active
Vähittäiset
Valmistusrakenteen <unk>aktiivinen <unk>vaikkapausrakenne projekti.
3. on_hold
on_hold
Valmistusrakenteen <unk>on_hold<unk> asema projekti.
4. completed
Täytetty
Valmistus <unk>täydennetty<unk> valmistuslaitteen projekti.
5. cancelled
peruutettu
Talous- ja kaupankäynnin hallinta
6. archived
arkistoitu
Talous- ja kauppasovelluksen laitos

🗄️ Tiedonmallit & kentät

ProjectMeasurementLines project_measurement_lines RLS Aktiv
15 Taulukot

Tabelle project_measurement_lines

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
measurement_id UUID Ja * FK ➔ project_measurements.id Feld measurement_id
quote_item_id UUID Nein FK ➔ quote_items.id Feld quote_item_id
pos_number VARCHAR(32) Ja * - Feld pos_number
description VARCHAR(255) Ja * - Feld description
formula VARCHAR(255) Nein - Feld formula
quantity_period NUMERIC(12, 3) Ja * - Feld quantity_period
quantity_cumulative NUMERIC(12, 3) Ja * - Feld quantity_cumulative
unit VARCHAR(16) Ja * - Feld unit
unit_price NUMERIC(14, 2) Ja * - Feld unit_price
total_net_cumulative NUMERIC(14, 2) Ja * - Feld total_net_cumulative
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
ProjectMeasurements project_measurements RLS Aktiv
17 Taulukot

Tabelle project_measurements

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
project_id UUID Ja * FK ➔ projects.id Feld project_id
quote_id UUID Nein FK ➔ quotes.id Feld quote_id
measurement_number VARCHAR(64) Ja * - Feld measurement_number
measurement_date DATE Ja * - Feld measurement_date
status VARCHAR(48) Ja * - Feld status
approved_by VARCHAR(255) Nein - Feld approved_by
approved_at DATETIME Nein - Feld approved_at
notes TEXT Nein - Feld notes
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
ProjectMilestones project_milestones RLS Aktiv
18 Taulukot

Tabelle project_milestones

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
project_id UUID Ja * FK ➔ projects.id Feld project_id
name VARCHAR(255) Ja * - Feld name
due_date DATE Nein - Feld due_date
sort INTEGER Ja * - Feld sort
status VARCHAR(16) Ja * - Feld status
reached_at DATETIME Nein - Feld reached_at
reached_by UUID Nein - Feld reached_by
predecessor_id UUID Nein FK ➔ project_milestones.id Feld predecessor_id
notes TEXT Nein - Feld notes
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
ProjectRateCards project_rate_cards RLS Aktiv
16 Taulukot

Tabelle project_rate_cards

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
project_id UUID Nein FK ➔ projects.id Feld project_id
customer_id UUID Nein FK ➔ customers.id Feld customer_id
role_name VARCHAR(64) Ja * - Feld role_name
hourly_rate NUMERIC(14, 2) Ja * - Feld hourly_rate
currency VARCHAR(3) Ja * - Feld currency
valid_from DATE Nein - Feld valid_from
valid_until DATE Nein - Feld valid_until
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
ProjectTimeEntries project_time_entries RLS Aktiv
24 Taulukot

Tabelle project_time_entries

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
project_id UUID Ja * FK ➔ projects.id Feld project_id
user_id UUID Ja * FK ➔ users.id Feld user_id
ticket_id UUID Nein FK ➔ tickets.id Feld ticket_id
invoice_id UUID Nein FK ➔ invoices.id Feld invoice_id
entry_date DATE Ja * - Feld entry_date
duration_minutes INTEGER Ja * - Feld duration_minutes
rounded_minutes INTEGER Ja * - Feld rounded_minutes
activity_description TEXT Ja * - Feld activity_description
internal_notes TEXT Nein - Feld internal_notes
is_billable BOOLEAN Ja * - Feld is_billable
hourly_rate NUMERIC(14, 2) Ja * - Feld hourly_rate
total_amount_net NUMERIC(14, 2) Ja * - Feld total_amount_net
billing_status VARCHAR(48) Ja * - Feld billing_status
approved_by UUID Nein FK ➔ users.id Feld approved_by
approved_at DATETIME Nein - Feld approved_at
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
Projects projects RLS Aktiv
41 Taulukot

Tabelle projects

Feldname Tyyppi Tilanne Schlüssel Työalainen merkitys
project_number VARCHAR(32) Ja * - Feld project_number
name VARCHAR(255) Ja * - Feld name
contract_id UUID Nein - Feld contract_id
parent_id UUID Nein FK ➔ projects.id Feld parent_id
customer_id UUID Nein FK ➔ customers.id Feld customer_id
supplier_id UUID Nein FK ➔ suppliers.id Feld supplier_id
partner_type VARCHAR(32) Ja * - Feld partner_type
status VARCHAR(48) Ja * - Feld status
description TEXT Nein - Feld description
street VARCHAR(255) Nein - Feld street
postal_code VARCHAR(16) Nein - Feld postal_code
city VARCHAR(128) Nein - Feld city
country_code VARCHAR(2) Nein - Feld country_code
latitude NUMERIC(9, 6) Nein - Feld latitude
longitude NUMERIC(9, 6) Nein - Feld longitude
trade VARCHAR(64) Nein - Feld trade
manager_user_id UUID Nein FK ➔ users.id Feld manager_user_id
site_contact_name VARCHAR(255) Nein - Feld site_contact_name
site_contact_phone VARCHAR(64) Nein - Feld site_contact_phone
access_notes TEXT Nein - Feld access_notes
planned_start DATE Nein - Feld planned_start
planned_end DATE Nein - Feld planned_end
actual_start DATE Nein - Feld actual_start
actual_end DATE Nein - Feld actual_end
quoted_value NUMERIC(14, 2) Nein - Feld quoted_value
estimated_cost NUMERIC(14, 2) Nein - Feld estimated_cost
estimated_hours NUMERIC(14, 4) Nein - Feld estimated_hours
estimated_labor_cost NUMERIC(14, 2) Nein - Feld estimated_labor_cost
estimated_material_cost NUMERIC(14, 2) Nein - Feld estimated_material_cost
currency VARCHAR(3) Ja * - Feld currency
tags ARRAY Ja * - Feld tags
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
deleted_at DATETIME Nein - Feld deleted_at

🔌 Alkuperäiset kohdat (UI & API)

Art Tekijä Loppu- / kulku Titel & Zweck Ehdotus
⚡ REST API DELETE /api/v1/projects/{project_id}
delete_project
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API GET /api/v1/projects
list_projects
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}
get_project
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/budget-status
get_budget_status
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/measurements
list_measurements
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/measurements/{measurement_id}
get_measurement
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/milestones
list_milestones
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/rate-cards
list_rate_cards
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/subprojects
list_subprojects
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/summary
get_project_summary
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/time-entries
list_time_entries
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /api/v1/projects/{project_id}/workorders
list_project_workorders
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /portal/{slug}/projekte
projects_page
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /projects
projects_page
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /projects/new
project_create_page
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /projects/{project_id}
project_detail_page
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API GET /projects/{project_id}/edit
project_detail_page
Semantic binding: not_evaluated; mutation=False
projects
⚡ REST API PATCH /api/v1/projects/{project_id}
update_project
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects
create_project
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/materials
book_project_material
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/measurements
create_measurement
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/measurements/{measurement_id}/approve
approve_measurement
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/measurements/{measurement_id}/create-cumulative-invoice
create_cumulative_invoice
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/measurements/{measurement_id}/create-final-invoice
create_vob_final_invoice
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/measurements/{measurement_id}/lines
add_measurement_lines
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/milestones
add_milestone
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/milestones/{milestone_id}/reach
reach_milestone
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/milestones/{milestone_id}/unreach
unreach_milestone
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/rate-cards
create_rate_card
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/subprojects
create_subproject
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/time-entries
log_time
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/time-entries/approve
approve_time_entries
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/time-entries/invoice
generate_tm_invoice
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/worklogs
record_project_worklog
Semantic binding: not_evaluated; mutation=True
projects
⚡ REST API POST /api/v1/projects/{project_id}/workorders
create_project_workorder
Semantic binding: not_evaluated; mutation=True
projects

🛡️ Sääntely & noudattaminen

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Tilanne
  • Kuntointikerro (PostgreSQL RLS)