revisando cubierta (solapas)

This commit is contained in:
jaimejimenezortega
2024-05-01 16:04:41 +02:00
parent 3650b00175
commit f289baa830
9 changed files with 19223 additions and 245 deletions

View File

@ -33,116 +33,7 @@ class PresupuestoService extends BaseService
const SANGRE_FORMAS = 5.0;
const SANGRE_FORMAS_CUBIERTA = 20.0;
public static function obtenerPresupuestoClienteInterior($data){
$uso = $data['uso'];
$tipo_impresion_id = $data['tipo_impresion_id'];
$datosPedido = $data['datosPedido'];
$papel_generico = $data['papel_generico'];
$gramaje = $data['gramaje'];
$isColor = $data['isColor'];
$isHq = $data['isHq'];
$cliente_id = $data['cliente_id'];
$paginas_color = $data['paginas_color'];
$paginas_negro = $datosPedido->paginas-$paginas_color;
$linea_negro_plana = [];
$linea_color_plana = [];
// Negro
if($datosPedido->paginas > $paginas_color){
$datosPedido->paginas = $paginas_negro;
for ($i=0; $i<2; $i++){
$lineas = PresupuestoService::obtenerComparadorPlana([
'uso' => $uso,
'tipo_impresion_id' => $tipo_impresion_id,
'datosPedido' => $datosPedido,
'papel_generico' => $papel_generico,
'gramaje' => $gramaje,
'isColor' => false,
'isHq' => $isHq,
'cliente_id' => $cliente_id,
'a_favor_fibra' => $i
]);
if (count($lineas) > 0) {
usort($lineas,
function($a, $b)
{
$result = 0;
if(floatval($a['fields']['total_impresion']) > floatval($b['fields']['total_impresion']))
$result = 1;
else if(floatval($a['fields']['total_impresion']) < floatval($b['fields']['total_impresion']))
$result = -1;
return $result;
}
);
$linea_negro_plana = $lineas[0]['fields'];
}
}
}
// Color
if($isColor){
$datosPedido->paginas = $paginas_color;
for ($i=0; $i<2; $i++){
$lineas = PresupuestoService::obtenerComparadorPlana([
'uso' => $uso,
'tipo_impresion_id' => $tipo_impresion_id,
'datosPedido' => $datosPedido,
'papel_generico' => $papel_generico,
'gramaje' => $gramaje,
'isColor' => true,
'isHq' => $isHq,
'cliente_id' => $cliente_id,
'a_favor_fibra' => $i
]);
if (count($lineas) > 0) {
usort($lineas,
function($a, $b)
{
$result = 0;
if(floatval($a['fields']['total_impresion']) > floatval($b['fields']['total_impresion']))
$result = 1;
else if(floatval($a['fields']['total_impresion']) < floatval($b['fields']['total_impresion']))
$result = -1;
return $result;
}
);
$linea_color_plana = $lineas[0]['fields'];
}
}
for ($i=0; $i<2; $i++){
$lineas = PresupuestoService::obtenerComparadorPlana([
'uso' => $uso,
'tipo_impresion_id' => $tipo_impresion_id,
'datosPedido' => $datosPedido,
'papel_generico' => $papel_generico,
'gramaje' => $gramaje,
'isColor' => true,
'isHq' => $isHq,
'cliente_id' => $cliente_id,
'a_favor_fibra' => $i
]);
if (count($lineas) > 0) {
$linea_negro_plana = array_merge($linea_negro_plana, $lineas);
}
}
}
return [$linea_negro_plana, $linea_color_plana];
}
public static function getLineaPresupuestoPlana($data)
{