Punto 11: editor de diseno de tickets en Configuracion > Tickets
- Nuevo modelo skeen.ticket.config (AbstractModel) con layout, datos de clinica y logo en ir.config_parameter; _mezclar() hace que layouts viejos hereden las secciones nuevas; _validar() rechaza valores imposibles y textos largos. - Endpoints GET/PUT /ticket_config, PUT /ticket_config/clinica, POST /ticket_config/reset (reset solo admin) con auditoria en skeen_config_audit. - Los datos de la clinica pasan de localStorage (cada caja imprimia distinto) a configuracion compartida en el servidor. - TicketDoc.tsx renderiza segun el diseno: ancho 58/80mm, fuente, tamano de letra, separador, mayusculas, orden de bloques y 29 secciones activables. - TicketDesigner.tsx: editor completo con vista previa en vivo, reorden de bloques, textos personalizables y carga de logo. - TicketPrint.tsx ahora es un wrapper de TicketDoc; ReciboPrint, EstadoCuentaPrint, RecetaPrint, CortePrint y ConteoPrint usan useClinicaPrint(). - _sale_to_dict expone telefono del paciente, medico que atendio y datos de paquete; pos_checkout devuelve recibido/cambio en MXN y USD para imprimirlos.
This commit is contained in:
@@ -513,6 +513,11 @@ const Tickets: FC = () => {
|
||||
total: reimprimir.total,
|
||||
amount_paid: reimprimir.amount_paid,
|
||||
amount_due: reimprimir.amount_due,
|
||||
metodo: METODO_LABELS[reimprimir.payment_method || ''] || null,
|
||||
cajero: reimprimir.user_login,
|
||||
doctor: reimprimir.doctor,
|
||||
telefono_paciente: reimprimir.patient_phone,
|
||||
notas: reimprimir.notes,
|
||||
}}
|
||||
/>
|
||||
</Layout>
|
||||
|
||||
Reference in New Issue
Block a user