Merge branch 'fix/presu_cliente_faja_comp' into 'main'

guarda faja en el comparador en cliente. Se fuerza una forma horizontal para faja

See merge request jjimenez/safekat!513
This commit is contained in:
2025-02-03 08:59:42 +00:00
2 changed files with 26 additions and 21 deletions

View File

@ -580,6 +580,15 @@ class PresupuestoModel extends \App\Models\BaseModel
'paginas' => intval($data['datos_guardas']['caras']), 'paginas' => intval($data['datos_guardas']['caras']),
); );
} }
// -- Faja --
if ($data['datos_guardas'] != 0) {
$values['faja'] = array(
'papel_id' => intval($data['faja']['papel']),
'gramaje' => intval($data['faja']['gramaje']),
);
}
} }
$json = json_encode($values); $json = json_encode($values);
return $json; return $json;

View File

@ -84,7 +84,7 @@ class PresupuestoService extends BaseService
} }
$uso_tarifa = $uso; $uso_tarifa = $uso;
if($uso == 'guardas') if ($uso == 'guardas')
$uso_tarifa = 'interior'; $uso_tarifa = 'interior';
else if ($uso == 'faja') else if ($uso == 'faja')
$uso_tarifa = 'sobrecubierta'; $uso_tarifa = 'sobrecubierta';
@ -240,7 +240,7 @@ class PresupuestoService extends BaseService
return []; return [];
} }
$paginas_pedido = (intval($datosPedido->tirada) + intval($datosPedido->merma))*intval($datosPedido->paginas); $paginas_pedido = (intval($datosPedido->tirada) + intval($datosPedido->merma)) * intval($datosPedido->paginas);
[$precio_pliego_impresion, $margen_pliego_impresion] = PresupuestoService::getPrecioPliego($maquina, $papel, $paginas_pedido); [$precio_pliego_impresion, $margen_pliego_impresion] = PresupuestoService::getPrecioPliego($maquina, $papel, $paginas_pedido);
@ -251,8 +251,7 @@ class PresupuestoService extends BaseService
$linea['fields']['precio_libro'] = $linea['fields']['pliegos_libro'] * $linea['fields']['precios_pliegos']; $linea['fields']['precio_libro'] = $linea['fields']['pliegos_libro'] * $linea['fields']['precios_pliegos'];
// Precio papel pedido // Precio papel pedido
$linea['fields']['precio_pedido'] = $linea['fields']['precio_libro'] * ($datosPedido->tirada + $datosPedido->merma); $linea['fields']['precio_pedido'] = $linea['fields']['precio_libro'] * ($datosPedido->tirada + $datosPedido->merma);
$linea['fields']['margen_papel_pedido'] = $linea['fields']['pliegos_libro'] * $margen_pliego_impresion * ($datosPedido->tirada + $datosPedido->merma); $linea['fields']['margen_papel_pedido'] = $linea['fields']['pliegos_libro'] * $margen_pliego_impresion * ($datosPedido->tirada + $datosPedido->merma);;
;
$linea['fields']['a_favor_fibra'] = $parametrosRotativa->a_favor_fibra; $linea['fields']['a_favor_fibra'] = $parametrosRotativa->a_favor_fibra;
$linea['fields']['maquina'] = $maquina->maquina; $linea['fields']['maquina'] = $maquina->maquina;
@ -274,7 +273,7 @@ class PresupuestoService extends BaseService
$linea['fields']['datosTipologias'] = //$datosTipologias[0]; $linea['fields']['datosTipologias'] = //$datosTipologias[0];
(Object) array( (object) array(
'gota_negro' => $parametrosRotativa->rotativa_gota_negro, 'gota_negro' => $parametrosRotativa->rotativa_gota_negro,
'gota_color' => $parametrosRotativa->rotativa_gota_color, 'gota_color' => $parametrosRotativa->rotativa_gota_color,
'negro' => $parametrosRotativa->rotativa_negro, 'negro' => $parametrosRotativa->rotativa_negro,
@ -374,7 +373,7 @@ class PresupuestoService extends BaseService
if ($cubierta == 0 && $sobrecubierta == 0 && $rotativa == 0 || $uso == 'faja') { if ($cubierta == 0 && $sobrecubierta == 0 && $rotativa == 0 || $uso == 'faja') {
// precio papel // precio papel
$pliegos_libro = ($datosPedido->paginas / 2.0) / $response['fields']['num_formas']['value']; $pliegos_libro = ($datosPedido->paginas / 2.0) / $response['fields']['num_formas']['value'];
if($uso != 'faja') if ($uso != 'faja')
$pliegos_libro = ceil($pliegos_libro); $pliegos_libro = ceil($pliegos_libro);
if ($uso != 'faja' && $pliegos_libro < 1) // faja pueden entrar más de una forma if ($uso != 'faja' && $pliegos_libro < 1) // faja pueden entrar más de una forma
$pliegos_libro = 1; $pliegos_libro = 1;
@ -530,7 +529,7 @@ class PresupuestoService extends BaseService
$data['alto_click'] = $maquina->alto_click; $data['alto_click'] = $maquina->alto_click;
$direccion_fibra = ($parametrosRotativa->a_favor_fibra === "false" || $parametrosRotativa->a_favor_fibra === 0 || $direccion_fibra = ($parametrosRotativa->a_favor_fibra === "false" || $parametrosRotativa->a_favor_fibra === 0 ||
$parametrosRotativa->a_favor_fibra === "0" || $parametrosRotativa->a_favor_fibra === false)? 0 : 1; $parametrosRotativa->a_favor_fibra === "0" || $parametrosRotativa->a_favor_fibra === false) ? 0 : 1;
$formas = PresupuestoService::getNumFormasRot( $formas = PresupuestoService::getNumFormasRot(
$maquina, $maquina,
@ -613,9 +612,9 @@ class PresupuestoService extends BaseService
// precio tinta // precio tinta
$data['precio_tinta'] = round( $data['precio_tinta'] = round(
round(($data['peso_gotas_negro_pedido'] / 1000.0) * $maquina->precio_tinta_negro, 2) + round(($data['peso_gotas_negro_pedido'] / 1000.0) * $maquina->precio_tinta_negro, 2) +
round(($data['peso_gotas_cyan_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2) + round(($data['peso_gotas_cyan_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2) +
round(($data['peso_gotas_magenta_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2) + round(($data['peso_gotas_magenta_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2) +
round(($data['peso_gotas_amarillo_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2), round(($data['peso_gotas_amarillo_pedido'] / 1000.0) * $maquina->precio_tinta_color, 2),
2 2
); );
@ -730,7 +729,12 @@ class PresupuestoService extends BaseService
// No es cubierta ni sobrecubierta // No es cubierta ni sobrecubierta
else { else {
// horizontales // horizontales
$h1_temp = floor(floatval($maquina->ancho_impresion) / $anchoForCalculo); if ($uso == 'faja') {
$h1_temp = 1;
} else {
$h1_temp = floor(floatval($maquina->ancho_impresion) / $anchoForCalculo);
}
$h2_temp = floor(floatval($maquina->ancho_impresion) / $altoForCalculo); $h2_temp = floor(floatval($maquina->ancho_impresion) / $altoForCalculo);
} }
@ -1008,7 +1012,6 @@ class PresupuestoService extends BaseService
{ {
$presupuesto = (new PresupuestoModel())->find($presupuesto_id); $presupuesto = (new PresupuestoModel())->find($presupuesto_id);
$lineas = (new LineaPresupuestoModel())->where('presupuesto_id', $presupuesto_id)->findAll(); $lineas = (new LineaPresupuestoModel())->where('presupuesto_id', $presupuesto_id)->findAll();
} }
public static function checkLineasPresupuesto($input_data, $array_lineas) public static function checkLineasPresupuesto($input_data, $array_lineas)
@ -1149,7 +1152,6 @@ class PresupuestoService extends BaseService
} }
$comp_data = PresupuestoService::obtenerComparadorPlana($datos); $comp_data = PresupuestoService::obtenerComparadorPlana($datos);
} }
// se ordena $comp_data usando el campo ['fields]['total_impresion'] // se ordena $comp_data usando el campo ['fields]['total_impresion']
@ -1175,7 +1177,6 @@ class PresupuestoService extends BaseService
array_push($lineas, $linea); array_push($lineas, $linea);
} }
} }
} }
} }
@ -1409,7 +1410,6 @@ class PresupuestoService extends BaseService
$servicio_temp = $servicio; $servicio_temp = $servicio;
$servicio_temp->tarifa_id = $servicio_temp->tarifa_acabado_id; $servicio_temp->tarifa_id = $servicio_temp->tarifa_acabado_id;
$model->updateTarifas($input_data['presupuesto_id'], array($servicio_temp)); $model->updateTarifas($input_data['presupuesto_id'], array($servicio_temp));
} }
} }
@ -1443,7 +1443,6 @@ class PresupuestoService extends BaseService
$servicio_temp = $servicio; $servicio_temp = $servicio;
$servicio_temp->tarifa_id = $servicio_temp->tarifa_manipulado_id; $servicio_temp->tarifa_id = $servicio_temp->tarifa_manipulado_id;
$model->updateTarifas($input_data['presupuesto_id'], array($servicio_temp)); $model->updateTarifas($input_data['presupuesto_id'], array($servicio_temp));
} }
} }
@ -1487,7 +1486,6 @@ class PresupuestoService extends BaseService
$input_data['POD'] $input_data['POD']
); );
} }
} }
// En caso de que el presupuesto no sea duplicado, recalcular la tarifa // En caso de que el presupuesto no sea duplicado, recalcular la tarifa
// con el mismo proveedor // con el mismo proveedor
@ -1600,9 +1598,7 @@ class PresupuestoService extends BaseService
$presupuestoDirecciones = new PresupuestoDireccionesModel(); $presupuestoDirecciones = new PresupuestoDireccionesModel();
$presupuestoDirecciones->updateLineaEnvio($envio); $presupuestoDirecciones->updateLineaEnvio($envio);
} }
} }
} }
} }
@ -1768,7 +1764,7 @@ class PresupuestoService extends BaseService
$tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro'); $tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro');
$uso_papel = $uso == 'faja' ? 'sobrecubierta': $uso; $uso_papel = $uso == 'faja' ? 'sobrecubierta' : $uso;
$opciones_papel = PresupuestoService::get_opciones_papel($uso_papel, $isColor); $opciones_papel = PresupuestoService::get_opciones_papel($uso_papel, $isColor);
// Se obtienen los papeles disponibles // Se obtienen los papeles disponibles