@startuml uml-state-cargo-extra !include _style.iuml title 6. State machine — Cargo extra (estatus_cargo_extra) [*] --> propuesto : proponer(prestador, monto, motivo) [orden in en_camino|en_progreso] propuesto --> aceptado : aceptar(cliente) / suma a total_orden propuesto --> rechazado : rechazar(cliente) aceptado --> [*] rechazado --> [*] note right of propuesto Estado inicial al crear el cargo (00.sql:482, DEFAULT 'propuesto'). La orden debe estar en transito o en progreso (validacion en SP). end note note right of aceptado Estado terminal: el monto se agrega al subtotal de la orden y forma parte de la liquidacion. end note note left of rechazado Estado terminal: no afecta el total de la orden. Queda en bitacora para metricas. end note footer Fuente: ENUM estatus_cargo_extra 00.sql:69 | tabla cargos_extra 00.sql:482 | actions ordenes.ts @enduml