terminada faja

This commit is contained in:
2025-02-02 21:10:29 +01:00
parent 27c1e511b3
commit b4fa79cc5c
19 changed files with 384 additions and 72 deletions

View File

@ -22,7 +22,7 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
3 => "t1.precio_total"
];
protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "proveedor_id", "nombre", "precio_total", "precio_unidad", "margen", "cubierta", "sobrecubierta"];
protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "proveedor_id", "nombre", "precio_total", "precio_unidad", "margen", "cubierta", "sobrecubierta", "faja"];
protected $returnType = "App\Entities\Presupuestos\PresupuestoAcabadosEntity";
protected $useTimestamps = true;
@ -132,7 +132,8 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
foreach($tarifas as $tarifa){
if($tarifa->tarifa_id == $result->tarifa_acabado_id &&
$tarifa->cubierta == $result->cubierta &&
$tarifa->sobrecubierta == $result->sobrecubierta)
$tarifa->sobrecubierta == $result->sobrecubierta &&
$tarifa->faja == $result->faja)
$found = true;
}
if(!$found){
@ -162,6 +163,7 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
$builder->where('tarifa_acabado_id', $tarifa->tarifa_id);
$builder->where('cubierta', $tarifa->cubierta);
$builder->where('sobrecubierta', $tarifa->sobrecubierta);
$builder->where('faja', $tarifa->faja);
$result = $builder->get()->getResultObject();
if(count($result)>0){
$this->db
@ -174,6 +176,7 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
->set('margen', $tarifa->margen)
->set('cubierta', $tarifa->cubierta)
->set('sobrecubierta', $tarifa->sobrecubierta)
->set('faja', $tarifa->faja)
->update();
@ -189,6 +192,7 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
->set('margen', $tarifa->margen)
->set('cubierta', $tarifa->cubierta)
->set('sobrecubierta', $tarifa->sobrecubierta)
->set('faja', $tarifa->faja)
->insert();
}
}
@ -208,6 +212,7 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel
->select(
"t1.id AS id, t1.tarifa_acabado_id AS tarifa_acabado_id, t1.tarifa_acabado_id AS tarifa_id, t1.precio_unidad AS precio_unidad,
t1.precio_total AS precio_total, t1.margen AS margen, t2.nombre AS nombre, t1.cubierta AS cubierta, t1.sobrecubierta AS sobrecubierta,
t1.faja AS faja,
t1.proveedor_id AS proveedor_id, t3.nombre AS proveedor,"
);

View File

@ -71,14 +71,26 @@ class PresupuestoManipuladosModel extends \App\Models\BaseModel
return $ret_array;
}
else{
$ret_array[] = (object)[
'tarifa_id'=> $tarifa_manipulado_id,
'tarifa_nombre'=> $modelTarifa->getNombreTarifaManipulado($tarifa_manipulado_id)[0]->nombre,
'nombre'=> $modelTarifa->getNombreTarifaManipulado($tarifa_manipulado_id)[0]->nombre,
'precio_unidad' => 0,
'total'=> 0,
'margen' => 0,
];
if(is_array($tarifa_manipulado_id)){
$ret_array[] = (object)[
'tarifa_id'=> $tarifa_manipulado_id['id'],
'tarifa_nombre'=> $tarifa_manipulado_id['nombre'],
'nombre'=> $tarifa_manipulado_id['nombre'],
'precio_unidad' => 0,
'total'=> 0,
'margen' => 0,
];
}
else{
$ret_array[] = (object)[
'tarifa_id'=> $tarifa_manipulado_id,
'tarifa_nombre'=> $modelTarifa->getNombreTarifaManipulado($tarifa_manipulado_id)[0]->nombre,
'nombre'=> $modelTarifa->getNombreTarifaManipulado($tarifa_manipulado_id)[0]->nombre,
'precio_unidad' => 0,
'total'=> 0,
'margen' => 0,
];
}
return $ret_array;
}
}

View File

@ -129,6 +129,7 @@ class PresupuestoModel extends \App\Models\BaseModel
"barniz_cubierta_id",
"estampado_cubierta_id",
"acabado_sobrecubierta_id",
"acabado_faja_id",
"is_duplicado",
'paginas_color_consecutivas',
'papel_interior_diferente',
@ -410,8 +411,6 @@ class PresupuestoModel extends \App\Models\BaseModel
'pais_id' => 1,
'retractilado' => $data['retractilado'] ? 1 : 0,
'retractilado5' => $data['retractilado5'] ? 1 : 0,
'guardas' => in_array(62, $data['servicios']) ? 1 : 0,
'faja_color' => in_array(16, $data['servicios']) ? 1 : 0,
'ferro' => $data['ferro'] ? 1 : 0,
'ferro_digital' => $data['ferro_digital'] ? 1 : 0,
'marcapaginas' => $data['marcapaginas'] ? 1 : 0,
@ -450,8 +449,13 @@ class PresupuestoModel extends \App\Models\BaseModel
'comparador_json_data' => $this->generateJson($data),
'faja_color' => count($data['faja'])>0 ? 1 : 0,
'solapas_ancho_faja_color' => count($data['faja'])>0 ? $data['faja']['solapas'] : 60,
'alto_faja_color' => count($data['faja'])>0 ? $data['faja']['alto'] : 50,
'acabado_cubierta_id' => $data['cubierta']['acabado'],
'acabado_sobrecubierta_id' => !$data['sobrecubierta'] ? 0 : $data['sobrecubierta']['acabado'],
'acabado_faja_id' => count($data['faja'])>0 ? $data['faja']['acabado'] : 0,
'comp_tipo_impresion' => $data['isHq'] ? ($data['isColor'] ? 'colorhq' : 'negrohq') : ($data['isColor'] ? 'color' : 'negro'),

View File

@ -112,8 +112,9 @@ class TarifaManipuladoModel extends \App\Models\BaseModel
return $builder->orderBy("t1.nombre", "asc")->get()->getResultObject();
}
public function getTarifaPresupuestoManipulado($tarifa_id, $tirada){
public function getTarifaPresupuestoManipulado($tarifa_id, $tirada)
{
$builder = $this->db
->table($this->table . " t1")
->select(
@ -125,15 +126,22 @@ class TarifaManipuladoModel extends \App\Models\BaseModel
->where("t1.is_deleted", 0)
//->where("t1.mostrar_en_presupuesto", 1)
->where("t2.is_deleted", 0);
$builder->where('t1.id =', $tarifa_id);
// check if tarifa_id is an array
if (is_array($tarifa_id)) {
// check if tarifa_id['id'] exists
$builder->where('t1.id', array_key_exists('id', $tarifa_id)? $tarifa_id['id']:$tarifa_id['tarifa_id']);
} else {
$builder->where('t1.id', $tarifa_id);
}
$builder->where('t2.tirada_min <=', $tirada);
$builder->where('t2.tirada_max >=', $tirada);
return $builder->get()->getResultObject();
}
public function getNombreTarifaManipulado($id=-1)
public function getNombreTarifaManipulado($id = -1)
{
/*
Todos los servicios de encuadernacion activas que se pueden usar en presupuestos
@ -142,9 +150,13 @@ class TarifaManipuladoModel extends \App\Models\BaseModel
->table($this->table . " t1")
->select(
"t1.nombre AS nombre"
)
->where("t1.id", $id)
->where("t1.is_deleted", 0);
);
$builder->where("t1.is_deleted", 0);
if (is_array($id)) {
$builder->where("t1.id", $id['id']);
} else
$builder->where("t1.id", $id);
return $builder->orderBy("t1.nombre", "asc")->get()->getResultObject();
}