Skip to content

Nuevo presupuesto

Formulario para crear un presupuesto desde cero. Al guardar nace en estado draft y el flujo continúa desde el detalle.

De un vistazo

  • Origen del presupuesto. Suele llegarse aquí desde:
    • La ficha del paciente → Nuevo presupuesto (paciente preseleccionado).
    • El listado → Nuevo presupuesto (selector de paciente obligatorio).
    • Un plan de tratamiento → genera un presupuesto sincronizado por eventos treatment_plan.treatment_added / treatment_plan.budget_sync_requested.
  • Numeración automática. El número (PRES-AAAA-####) se asigna al guardar; no es editable.
  • Validez por defecto — el formulario propone valid_from = hoy y valid_until = hoy + 30 días. Edítalo si vuestra política es otra.
  • Snapshot de precios. Cada línea guarda el precio del catálogo vigente al crear el presupuesto. Cambiar el catálogo después no afecta a presupuestos existentes.

Crear un presupuesto

Requiere budget.write.

  1. Si no vienes de la ficha del paciente, selecciona el paciente en la cabecera.
  2. Añade ítems desde el catálogo. Por cada línea puedes elegir:
    • Diente y superficies (notación FDI).
    • Cantidad, precio unitario (precargado del catálogo), descuento por línea (porcentaje o absoluto).
    • Tipo de IVA (precargado del catálogo).
  3. Aplica un descuento global si procede.
  4. Revisa los totales en el panel lateral.
  5. Guardar. El presupuesto se crea en draft y te lleva al detalle para enviarlo, firmarlo o facturarlo más tarde.

Crear desde un plan de tratamiento

Requiere budget.write y treatment_plan.write.

  1. En el plan de tratamiento, pulsa Generar presupuesto.
  2. Los tratamientos del plan llegan al formulario como líneas prerrellenadas mediante un evento snapshot.
  3. Ajusta lo que necesites y guarda.

Permisos

Lo que ves / puedes hacerPermiso
Acceder al formulario y ver el catálogobudget.read
Crear el presupuestobudget.write

Resolución de problemas

  • El selector de paciente está vacío. No tienes el permiso patients.read (sin él el formulario no puede listar pacientes).
  • No encuentro un ítem del catálogo. Comprueba que esté activo en Ajustes → Catálogo y que tu rol tenga catalog.read.
  • El total no suma lo que espero. Revisa el descuento por línea vs el global. Orden de aplicación: precio × cantidad → descuento línea → IVA → descuento global sobre el total.