Creando presupuestos encuandernado

This commit is contained in:
imnavajas
2023-10-03 15:39:47 +02:00
parent 26e9e7c27b
commit 080bc225a1
9 changed files with 459 additions and 23 deletions

View File

@ -2,7 +2,7 @@
namespace App\Models\Presupuestos;
class PresupuestoAcabadoModel extends \App\Models\GoBaseModel
class PresupuestoAcabadosModel extends \App\Models\GoBaseModel
{
protected $table = "presupuesto_acabados";
@ -19,7 +19,7 @@ class PresupuestoAcabadoModel extends \App\Models\GoBaseModel
2 => "t1.precio_total"
];
protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "nombre", "precio", "precio_unidad"];
protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "nombre", "precio_total", "precio_unidad"];
protected $returnType = "App\Entities\Presupuestos\PresupuestoAcabadosEntity";
protected $useTimestamps = true;
@ -52,7 +52,7 @@ class PresupuestoAcabadoModel extends \App\Models\GoBaseModel
*
* @return \CodeIgniter\Database\BaseBuilder
*/
public function getResource(string $search = "", $presupuesto_id = -1)
public function getResource($presupuesto_id = -1)
{
$builder = $this->db
->table($this->table . " t1")
@ -63,13 +63,6 @@ class PresupuestoAcabadoModel extends \App\Models\GoBaseModel
$builder->where('t1.presupuesto_id', $presupuesto_id);
$builder->join("lg_tarifa_acabado t2", "t1.tarifa_acabado_id = t2.id", "left");
return empty($search)
? $builder
: $builder
->groupStart()
->like("t2.nombre", $search)
->orlike("t1.precio_unidad", $search)
->orLike("t1.precio_total", $search)
->groupEnd();
return $builder;
}
}

View File

@ -0,0 +1,68 @@
<?php
namespace App\Models\Presupuestos;
class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel
{
protected $table = "presupuesto_encuadernaciones";
/**
* Whether primary key uses auto increment.
*
* @var bool
*/
protected $useAutoIncrement = true;
const SORTABLE = [
0 => "t2.nombre",
1 => "t1.precio_unidad",
2 => "t1.precio_total"
];
protected $allowedFields = ["presupuesto_id", "tarifa_encuadernado_id", "nombre", "precio_total", "precio_unidad"];
protected $returnType = "App\Entities\Presupuestos\PresupuestoEncuadernacionesEntity";
protected $useTimestamps = true;
protected $useSoftDeletes = false;
protected $createdField = "created_at";
protected $updatedField = "updated_at";
public static $labelField = "nombre";
protected $validationRules = [
"precio_total" => [
"label" => "Presupuestos.precioTotal",
"rules" => "decimal|required",
],
];
protected $validationMessages = [
"precio_total" => [
"decimal" => "Presupuestos.validation.decimal",
"requerido" => "Presupuestos.validation.decimal",
],
];
/**
* Get resource data.
*
* @param string $search
*
* @return \CodeIgniter\Database\BaseBuilder
*/
public function getResource($presupuesto_id = -1)
{
$builder = $this->db
->table($this->table . " t1")
->select(
"t1.id AS id, t1.tarifa_encuadernado_id AS tarifa_encuadernado_id, t1.precio_unidad AS precio_unidad, t1.precio_total AS precio_total, t2.nombre AS nombre"
);
$builder->where('t1.presupuesto_id', $presupuesto_id);
$builder->join("tarifa_encuadernacion t2", "t1.tarifa_encuadernado_id = t2.id", "left");
return $builder;
}
}