Centurio Systémová a modulová dokumentácia
🏛️ Architektúra platformy 🔑 Login
🏠 Všetky moduly / inventory_logistics / Prenájom a nájomné zariadenia
📘

Prenájom a nájomné zariadenia

rental inventory_logistics 🛡️ RLS Protected

Prenájom & nájomné zariadenia <unk> procesná a API dokumentácia odvodená z kódu.

Fachliche Bestimmung: Prenájom & nájomné zariadenia <unk> procesná a API dokumentácia odvodená z kódu. Obsahuje všetky registrované procesy, schopnosti, stavebné stroje, API a tabuľky pre simulácie a preskúmanie.

⚡ Pracovné postupy a životné cykly

Použitie: nájomný zástupca plan:command_rental_agent

Kontrolovaný trvalý plán (durable_plan), začiatok: manual_command.

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

Nájomné status:rental_booking

Pozorovateľné stave (only observable_only).

1. reserved
Vymedzené
Status <unk>reservávaný <unk> stanovacej strojovej nájomnej účtovnej závierky.
2. picked_up
picked_up
Status <unk>picked_up<unk> stanovacej strojovej nájomnej účtovnej závierky.
3. returned
vrátená
Status <unk> vrátený <unk> stanovacia stroj nájomná účtovná závierka.
4. overdue
zpráva
Status <unk>prípadný <unk> stavný stroj nájomné účtovníctvo.
5. cancelled
zrušené
Status «cancelled» der Zustandsmaschine Mietbuchung.

Nájomné status:rental_order

Pozorovateľné stave (only observable_only).

1. draft
návrh
Status <unk>výpis <unk> nájomného nájmu stavebného stroja.
2. reserved
Vymedzené
Status <unk>reservávaný <unk> nájomný zápis na stroj v stave.
3. active
aktívny
Status <unk>active<unk> stavového zariadenia nájomné zariadenie.
4. closed
uzavreté
Status <unk>klosed<unk> stavového strojového nájmu.
5. cancelled
zrušené
Status <unk> zrušený<unk> nájomný zápis na stavný stroj.

🗄️ Modely údajov & Felder

RentalBookings rental_bookings RLS Aktiv
59 Poľy / stĺpce

Tabelle rental_bookings

Feldname Typ údajov Povinnosť Schlüssel Využitie
booking_number VARCHAR(32) Ja * - Feld booking_number
status VARCHAR(48) Ja * - Feld status
rental_order_id UUID Nein FK ➔ rental_orders.id Feld rental_order_id
asset_id UUID Nein FK ➔ assets.id Feld asset_id
product_id UUID Nein FK ➔ products.id Feld product_id
quantity NUMERIC(14, 4) Ja * - Feld quantity
customer_id UUID Ja * FK ➔ customers.id Feld customer_id
contract_id UUID Nein FK ➔ contracts.id Feld contract_id
project_id UUID Nein FK ➔ projects.id Feld project_id
work_order_id UUID Nein FK ➔ work_orders.id Feld work_order_id
quote_id UUID Nein FK ➔ quotes.id Feld quote_id
invoice_id UUID Nein FK ➔ invoices.id Feld invoice_id
rate_card_id UUID Nein FK ➔ rental_rate_cards.id Feld rate_card_id
kit_group_id UUID Nein - Feld kit_group_id
billing_cycle_days INTEGER Nein - Feld billing_cycle_days
cycle_billed_through DATETIME Nein - Feld cycle_billed_through
cycle_invoice_ids JSONB Ja * - Feld cycle_invoice_ids
rental_start DATETIME Ja * - Feld rental_start
rental_end DATETIME Ja * - Feld rental_end
actual_pickup_at DATETIME Nein - Feld actual_pickup_at
actual_return_at DATETIME Nein - Feld actual_return_at
pickup_location_id UUID Nein FK ➔ locations.id Feld pickup_location_id
return_location_id UUID Nein FK ➔ locations.id Feld return_location_id
pickup_movement_id UUID Nein FK ➔ stock_movements.id Feld pickup_movement_id
return_movement_id UUID Nein FK ➔ stock_movements.id Feld return_movement_id
return_order_id UUID Nein FK ➔ return_orders.id Feld return_order_id
rate_amount NUMERIC(14, 2) Nein - Feld rate_amount
rate_unit VARCHAR(48) Ja * - Feld rate_unit
deposit_amount NUMERIC(14, 2) Nein - Feld deposit_amount
deposit_status VARCHAR(48) Ja * - Feld deposit_status
deposit_collected_at DATETIME Nein - Feld deposit_collected_at
deposit_applied_amount NUMERIC(14, 2) Nein - Feld deposit_applied_amount
deposit_refunded_amount NUMERIC(14, 2) Nein - Feld deposit_refunded_amount
deposit_notes TEXT Nein - Feld deposit_notes
deposit_invoice_id UUID Nein FK ➔ invoices.id Feld deposit_invoice_id
deposit_payment_id UUID Nein FK ➔ payments.id Feld deposit_payment_id
deposit_psp_provider VARCHAR(16) Nein - Feld deposit_psp_provider
deposit_psp_session_id VARCHAR(255) Nein - Feld deposit_psp_session_id
condition_notes_out TEXT Nein - Feld condition_notes_out
condition_notes_in TEXT Nein - Feld condition_notes_in
damage_notes TEXT Nein - Feld damage_notes
meter_out NUMERIC(14, 2) Nein - Feld meter_out
meter_in NUMERIC(14, 2) Nein - Feld meter_in
inspection_checklist JSONB Ja * - Feld inspection_checklist
return_photo_document_ids JSONB Ja * - Feld return_photo_document_ids
damage_charge_amount NUMERIC(14, 2) Nein - Feld damage_charge_amount
pickup_signature_document_id UUID Nein FK ➔ documents.id Feld pickup_signature_document_id
return_signature_document_id UUID Nein FK ➔ documents.id Feld return_signature_document_id
notes TEXT Nein - Feld notes
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
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
RentalOrders rental_orders RLS Aktiv
21 Poľy / stĺpce

Tabelle rental_orders

Feldname Typ údajov Povinnosť Schlüssel Využitie
order_number VARCHAR(32) Ja * - Feld order_number
status VARCHAR(48) Ja * - Feld status
source VARCHAR(48) Ja * - Feld source
customer_id UUID Ja * FK ➔ customers.id Feld customer_id
contract_id UUID Nein FK ➔ contracts.id Feld contract_id
quote_id UUID Nein FK ➔ quotes.id Feld quote_id
project_id UUID Nein FK ➔ projects.id Feld project_id
product_id UUID Nein FK ➔ products.id Feld product_id
rental_start DATETIME Ja * - Feld rental_start
rental_end DATETIME Ja * - Feld rental_end
notes TEXT Nein - Feld notes
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
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
RentalRateCards rental_rate_cards RLS Aktiv
19 Poľy / stĺpce

Tabelle rental_rate_cards

Feldname Typ údajov Povinnosť Schlüssel Využitie
code VARCHAR(64) Ja * - Feld code
name VARCHAR(200) Ja * - Feld name
asset_id UUID Nein FK ➔ assets.id Feld asset_id
rate_amount NUMERIC(14, 2) Ja * - Feld rate_amount
rate_unit VARCHAR(48) Ja * - Feld rate_unit
deposit_amount NUMERIC(14, 2) Nein - Feld deposit_amount
billing_cycle_days INTEGER Nein - Feld billing_cycle_days
currency VARCHAR(3) Ja * - Feld currency
is_active BOOLEAN Ja * - Feld is_active
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

🔌 Úvodné body (UI & API)

Art Metód Koniec / cesta Titel & Zweck Uprava
⚡ REST API GET /api/v1/rental/availability
check_availability
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/availability/product
check_product_availability
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/bookings
list_bookings
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/bookings/{booking_id}
get_booking
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/bookings/{booking_id}/charge-preview
booking_charge_preview
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/bookings/{booking_id}/kit
list_kit_members
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/orders
list_orders
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/orders/{order_id}
get_order
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/orders/{order_id}/bookings
list_order_bookings
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/products/rentable
list_rentable_products
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/rate-cards
list_rate_cards
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/rate-cards/resolve
resolve_rate_card
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/settings
get_rental_settings
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /api/v1/rental/utilisation
rental_utilisation
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /portal/{slug}/vermietung
rental_page
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /rental
rental_page
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API GET /rental/new
rental_create_page
Semantic binding: not_evaluated; mutation=False
rental
⚡ REST API PATCH /api/v1/rental/rate-cards/{rate_card_id}
update_rate_card
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings
create_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/kit
create_kit_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/cancel
cancel_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/create-invoice
create_hire_invoice
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/cycle-invoice
create_cycle_invoice
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/deposit/apply
apply_deposit
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/deposit/checkout
start_deposit_checkout
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/deposit/collect
collect_deposit
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/deposit/invoice
create_deposit_invoice
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/deposit/refund
refund_deposit
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/early-return
early_return_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/extend
extend_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/pickup
pickup_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/reschedule
reschedule_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/return
return_booking
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/bookings/{booking_id}/swap-asset
swap_booking_asset
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/orders
create_order
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/orders/from-contract/{contract_id}
create_order_from_contract
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/orders/from-product
create_order_from_product
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /api/v1/rental/rate-cards
create_rate_card
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API POST /portal/{slug}/vermietung/anfragen
rental_booking_request
Semantic binding: not_evaluated; mutation=True
rental
⚡ REST API PUT /api/v1/rental/settings
update_rental_settings
Semantic binding: not_evaluated; mutation=True
rental

🛡️ Regulatory & Compliance

Dieses Modul unterliegt folgenden gesetzlichen, regulatorischen und Revisionsstandards:

  • Prehľadateľnosť
  • Zároveň sa môže použiť aj pre výpočet na účely výpočtu hodnoty.