Files
safekat/ci4/app/Models/Configuracion/SeriesFacturasModel.php
2024-06-13 18:58:54 +02:00

81 lines
2.2 KiB
PHP

<?php
namespace App\Models\Configuracion;
class SeriesFacturasModel extends \App\Models\BaseModel
{
protected $table = "series";
/**
* Whether primary key uses auto increment.
*
* @var bool
*/
protected $useAutoIncrement = true;
const SORTABLE = [
1 => "t1.id",
2 => "t1.nombre",
3 => "t1.tipo",
4 => "t1.formato",
5 => "t1.next",
6 => "t1.grupo"
];
protected $allowedFields = ["nombre", "tipo", "formato", "next", "grupo"];
protected $returnType = "App\Entities\Configuracion\SeriesFacturasEntity";
public static $labelField = "nombre";
protected $validationRules = [
"nombre" => [
"label" => "SeriesFacturas.nombre",
"rules" => "trim|required|max_length[255]",
],
"formato" => [
"label" => "SeriesFacturas.nombre",
"rules" => "trim|required|max_length[255]",
]
];
protected $validationMessages = [
"nombre" => [
"max_length" => "SeriesFacturas.validation.nombre.max_length",
"required" => "SeriesFacturas.validation.nombre.required",
],
"formato" => [
"max_length" => "SeriesFacturas.validation.nombre.max_length",
"required" => "SeriesFacturas.validation.nombre.required",
],
];
/**
* Get resource data.
*
* @param string $search
*
* @return \CodeIgniter\Database\BaseBuilder
*/
public function getResource(string $search = "")
{
$builder = $this->db
->table($this->table . " t1")
->select(
"t1.id AS id, t1.nombre AS nombre, t1.tipo AS tipo, t1.formato AS formato,
t1.next AS next, t1.grupo AS grupo"
);
return empty($search)
? $builder
: $builder
->groupStart()
->like("t1.id", $search)
->orLike("t1.nombre", $search)
->orLike("t1.tipo", $search)
->orLike("t1.formato", $search)
->orLike("t1.next", $search)
->orLike("t1.grupo", $search)
->groupEnd();
}
}