diff --git a/pkg/models/contabilidad.go b/pkg/models/contabilidad.go index 717d955..1ad2ae4 100644 --- a/pkg/models/contabilidad.go +++ b/pkg/models/contabilidad.go @@ -122,7 +122,9 @@ func (ConsolidadoMensual) TableName() string { return "contab_consolidado" } // ============================================================================= func GetAllCuentas(limit, offset int, search string) ([]Cuenta, int64, error) { - var items []Cuenta + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []Cuenta{} var total int64 db := app.Http.Database.DB.Model(&Cuenta{}) if search != "" { @@ -138,7 +140,9 @@ func GetAllCuentas(limit, offset int, search string) ([]Cuenta, int64, error) { } func GetAllCuentasSelect() ([]Cuenta, error) { - var items []Cuenta + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []Cuenta{} if err := app.Http.Database.DB.Where("activo = ?", true).Order("nombre ASC").Find(&items).Error; err != nil { return nil, err } @@ -168,7 +172,9 @@ func DeleteCuenta(id uint) error { // ============================================================================= func GetAllEntidades(limit, offset int, search string) ([]Entidad, int64, error) { - var items []Entidad + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []Entidad{} var total int64 db := app.Http.Database.DB.Model(&Entidad{}) if search != "" { @@ -185,7 +191,9 @@ func GetAllEntidades(limit, offset int, search string) ([]Entidad, int64, error) } func GetAllEntidadesSelect() ([]Entidad, error) { - var items []Entidad + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []Entidad{} if err := app.Http.Database.DB.Where("activo = ?", true).Order("nombre ASC").Find(&items).Error; err != nil { return nil, err } @@ -238,7 +246,9 @@ func DeleteEntidad(id uint) error { // ============================================================================= func GetAllTransacciones(limit, offset int, search string, filtroTipo string, mes int, anio int) ([]Transaccion, int64, error) { - var items []Transaccion + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []Transaccion{} var total int64 db := app.Http.Database.DB.Model(&Transaccion{}).Preload("Cuenta").Preload("Entidad") if search != "" { @@ -326,7 +336,9 @@ func recomputarConsolidadoDeFecha(fecha time.Time) { // ============================================================================= func GetAllCuentasCobro(limit, offset int, search string, estado string) ([]CuentaCobro, int64, error) { - var items []CuentaCobro + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []CuentaCobro{} var total int64 db := app.Http.Database.DB.Model(&CuentaCobro{}).Preload("Cliente").Preload("Entidad").Preload("Transaccion") if search != "" { @@ -617,7 +629,9 @@ func GetCuentaPagarByID(id uint) (*CuentaPagar, error) { } func GetAllCuentasPagar(limit, offset int, search string, estado string) ([]CuentaPagar, int64, error) { - var items []CuentaPagar + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []CuentaPagar{} var total int64 db := app.Http.Database.DB.Model(&CuentaPagar{}).Preload("Entidad").Preload("Transaccion") if search != "" { @@ -750,7 +764,9 @@ func CalcularYGuardarConsolidado(mes, anio int) (*ConsolidadoMensual, error) { } func ListConsolidados(anio int) ([]ConsolidadoMensual, error) { - var items []ConsolidadoMensual + // Inicializado para que sin filas el JSON sea [] y no null: null obliga + // a cada vista a defenderse y hace que "vacío" y "roto" se vean igual. + items := []ConsolidadoMensual{} db := app.Http.Database.DB.Model(&ConsolidadoMensual{}).Order("anio DESC, mes DESC") if anio > 0 { db = db.Where("anio = ?", anio) diff --git a/resources/views/contabilidad/cuentas.html b/resources/views/contabilidad/cuentas.html index ba0d84b..5331cdf 100644 --- a/resources/views/contabilidad/cuentas.html +++ b/resources/views/contabilidad/cuentas.html @@ -24,7 +24,10 @@ -