ordenes trabajo

This commit is contained in:
amazuecos
2025-01-02 10:50:56 +01:00
parent 340ab4ec5f
commit b50ba4f2a3
57 changed files with 3005 additions and 417 deletions

View File

@ -2,6 +2,7 @@
namespace App\Entities\Presupuestos;
use App\Entities\Tarifas\Acabados\TarifaAcabadoEntity;
use App\Models\Configuracion\MaquinaModel;
use App\Models\Tarifas\Acabados\TarifaAcabadoModel;
use App\Models\Tarifas\Maquinas\TarifaAcabadoMaquinaModel;
use CodeIgniter\Entity;
@ -35,7 +36,13 @@ class PresupuestoAcabadosEntity extends \CodeIgniter\Entity\Entity
public function maquinas() : array
{
$m = model(TarifaAcabadoMaquinaModel::class);
return $m->where("tarifa_acabado_id",$this->attributes["tarifa_acabado_id"])->findAll();
$tarifa_maquinas = $m->where("tarifa_acabado_id",$this->attributes["tarifa_acabado_id"])->findAll();
$maquinaModel = model(MaquinaModel::class);
$maquinas = [];
foreach ($tarifa_maquinas as $key => $tarifa_maquina) {
$maquinas[] = $maquinaModel->find($tarifa_maquina->maquina_id);
}
return $maquinas;
}
public function tarifa() : TarifaAcabadoEntity
{

View File

@ -3,7 +3,9 @@
namespace App\Entities\Presupuestos;
use App\Entities\Clientes\ClienteEntity;
use App\Entities\Configuracion\PapelFormatoEntity;
use App\Models\Clientes\ClienteModel;
use App\Models\Configuracion\PapelFormatoModel;
use App\Models\Presupuestos\PresupuestoAcabadosModel;
use App\Models\Presupuestos\PresupuestoEncuadernacionesModel;
use App\Models\Presupuestos\PresupuestoLineaModel;
@ -197,6 +199,55 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
$q = $model->where('presupuesto_id', $this->attributes["id"])->findAll();
return $q;
}
/**
* Obtiene las lineas de presupuesto del actual presupuesto
*
* @return PresupuestoLineaEntity
*/
public function presupuestoLineaImpresion(): PresupuestoLineaEntity
{
$model = model(PresupuestoLineaModel::class);
$q = $model->where('presupuesto_id', $this->attributes["id"])->whereIn("tipo",["lp_rot_bn","lp_rot_color","lp_color","lp_colorhq","lp_bn","lp_bnhq"])->first();
return $q;
}
/**
* Obtiene las lineas de presupuesto del actual presupuesto
*
* @return PresupuestoLineaEntity
*/
public function presupuestoLineaCubierta(): PresupuestoLineaEntity
{
$model = model(PresupuestoLineaModel::class);
$q = $model->where('presupuesto_id', $this->attributes["id"])->whereIn("tipo",["lp_cubierta"])->first();
return $q;
}
/**
* Obtiene las lineas de presupuesto del actual presupuesto
*
* @return PresupuestoLineaEntity
*/
public function presupuestoLineaSobreCubierta(): ?PresupuestoLineaEntity
{
$model = model(PresupuestoLineaModel::class);
$q = $model->where('presupuesto_id', $this->attributes["id"])->whereIn("tipo",["lp_sobrecubierta"])->first();
return $q;
}
public function hasSobrecubierta() : bool
{
$hasSobrecubierta = false;
$model = model(PresupuestoLineaModel::class);
$q = $model->where('presupuesto_id', $this->attributes["id"])->whereIn("tipo",["lp_sobrecubierta"])->countAllResults();
if($q > 0){
$hasSobrecubierta = true;
}
return $hasSobrecubierta;
}
public function cliente() : ClienteEntity
{
@ -228,4 +279,9 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
$m = model(PresupuestoServiciosExtraModel::class);
return $m->where("presupuesto_id",$this->attributes["id"])->findAll();
}
public function papel_formato() : PapelFormatoEntity
{
$m = model(PapelFormatoModel::class);
return $m->find($this->attributes["papel_formato_id"]);
}
}

View File

@ -12,6 +12,7 @@ use App\Entities\Tarifas\TarifapreimpresionEntity;
use App\Models\Configuracion\MaquinasTarifasImpresionModel;
use App\Models\Configuracion\PapelGenericoModel;
use App\Models\Configuracion\PapelImpresionModel;
use Config\LogoImpresion;
class PresupuestoLineaEntity extends \CodeIgniter\Entity\Entity
{
@ -192,4 +193,32 @@ class PresupuestoLineaEntity extends \CodeIgniter\Entity\Entity
$m = model(MaquinasTarifasImpresionModel::class);
return $m->find($this->attributes['tarifa_impresion_id']);
}
public function get_impresion_logo(){
$logo = config(LogoImpresion::class);
return $logo->get_logo_path($this->attributes["tipo"]);
}
public function get_nombre_tarea() : ?string
{
$nombre = null;
$impresion_bn = ["lp_bn","lp_bnhq","lp_rot_bn"];
$impresion_color = ["lp_color","lp_colorhq","lp_rot_color"];
$impresion_cubierta = ["lp_cubierta"];
$impresion_guardas = ["lp_guardas"];
$impresion_sobrecubierta = ["lp_sobrecubierta"];
$is_bn = in_array($this->attributes["tipo"],$impresion_bn);
$is_color = in_array($this->attributes["tipo"],$impresion_color);
$is_impresion_cubierta = in_array($this->attributes["tipo"],$impresion_cubierta);
$is_impresion_guarda = in_array($this->attributes["tipo"],$impresion_guardas);
$is_impresion_sobrecubierta = in_array($this->attributes["tipo"],$impresion_sobrecubierta);
if($is_bn) $nombre ="Impresión B/N";
if($is_color) $nombre ="Impresión color";
if($is_impresion_cubierta) $nombre ="Impresión cubierta";
if($is_impresion_guarda) $nombre ="Impresión guarda";
if($is_impresion_sobrecubierta) $nombre ="Impresión sobrecubierta";
return $nombre;
}
}