mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
dejado para pruebas
This commit is contained in:
@ -765,6 +765,7 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
||||
// Sobrecubierta
|
||||
$coste_sobrecubierta = 0.0;
|
||||
$linea_sobrecubierta = [];
|
||||
$acabadoSobrecubierta = [];
|
||||
$sobreCubierta = $reqData["sobrecubierta"] ?? null;
|
||||
if(!is_null($sobreCubierta)){
|
||||
|
||||
@ -807,6 +808,7 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
||||
}
|
||||
|
||||
//Guardas
|
||||
$guardas = [];
|
||||
if($reqData['guardas'] ?? 0 > 0){
|
||||
|
||||
$guardas = $reqData['guardas'];
|
||||
@ -863,21 +865,80 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
||||
$costeServiciosDefecto += floatval($servicio->total);
|
||||
}
|
||||
|
||||
// Servicios
|
||||
$servicios = $reqData['servicios'] ?? [];
|
||||
if($reqData['guardas'] ?? 0 > 0){
|
||||
array_push($servicios, 62); // Plegado de guardas
|
||||
}
|
||||
/*
|
||||
'retractilado' => 3,
|
||||
'retractilado5' => 5,
|
||||
'ferro' => 24,
|
||||
'prototipo' => 9,
|
||||
'fajaColor' => 16,
|
||||
'plegadoGuardas' => 62,
|
||||
*/
|
||||
$serviciosAutomaticos = [];
|
||||
|
||||
foreach($servicios as $servicio){
|
||||
if(intval($servicio) == 3 || intval($servicio) == 5 || intval($servicio) == 16)
|
||||
{
|
||||
// Servicios acabado
|
||||
$resultado = PresupuestoCLienteService::getServiciosManipulado([
|
||||
'tarifa_id' => $servicio,
|
||||
'tirada' => $datosPedido->tirada,
|
||||
'POD' => $POD,
|
||||
]);
|
||||
array_push($serviciosAutomaticos, $resultado[0]);
|
||||
if($resultado[0]->total <= 0 )
|
||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
||||
|
||||
$coste_servicios += floatval($resultado[0]->total);
|
||||
|
||||
}
|
||||
else if (intval($servicio) == 24 || intval($servicio) == 9 )
|
||||
{
|
||||
// Servicios preimpresion
|
||||
$resultado = PresupuestoCLienteService::getServiciosPreimpresion([
|
||||
'tarifa_id' => $servicio,
|
||||
]);
|
||||
array_push($serviciosAutomaticos, $resultado[0]);
|
||||
if($resultado[0]->total <= 0 )
|
||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
||||
|
||||
$coste_servicios += floatval($resultado[0]->total);
|
||||
}
|
||||
else if (intval($servicio) == 62)
|
||||
{
|
||||
// Servicios manipulado
|
||||
$resultado = PresupuestoCLienteService::getServiciosManipulado([
|
||||
'tarifa_id' => $servicio,
|
||||
'tirada' => $datosPedido->tirada,
|
||||
'POD' => $POD,
|
||||
]);
|
||||
array_push($serviciosAutomaticos, $resultado[0]);
|
||||
if($resultado[0]->total <= 0 )
|
||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
||||
|
||||
$coste_servicios += floatval($resultado[0]->total);
|
||||
}
|
||||
}
|
||||
|
||||
array_push($precio_u, round(($costeInterior + $coste_cubierta + $coste_sobrecubierta + $costeServiciosDefecto + $coste_servicios)/$tirada[$t], 4));
|
||||
foreach($error as $err){
|
||||
if($err != "")
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if($reqData['guardas'] ?? 0 > 0){
|
||||
}
|
||||
|
||||
|
||||
return [
|
||||
'errors' => $error,
|
||||
'total_lp' => $costeInterior+$coste_cubierta+$coste_sobrecubierta,
|
||||
'acabadoCubierta' => $acabadoCubierta,
|
||||
'acabadoSobrecubierta' => $acabadoSobrecubierta,
|
||||
'total_servicios_defecto' => $costeServiciosDefecto,
|
||||
'total_servicios_automaticos' => $coste_servicios,
|
||||
'tiradas' => $tirada,
|
||||
'precio_u' => $precio_u,
|
||||
|
||||
@ -886,6 +947,7 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
||||
'sobrecubierta' => $linea_sobrecubierta,
|
||||
'guardas' => $guardas,
|
||||
'serviciosDefecto' => $servDefecto,
|
||||
'servicios_automaticos' => $serviciosAutomaticos,
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@ -331,6 +331,37 @@ class PresupuestoClienteService extends BaseService
|
||||
return $values;
|
||||
}
|
||||
|
||||
public static function getServiciosManipulado($data){
|
||||
|
||||
$tarifa_id = $data['tarifa_id'] ?? -1;
|
||||
$tirada = $data['tirada'] ?? -1;
|
||||
$POD = $data['POD'] ?? -1;
|
||||
|
||||
$model = model('App\Models\Presupuestos\PresupuestoManipuladosModel');
|
||||
$values = $model->getPrecioTarifa($tarifa_id, $tirada, $POD);
|
||||
return $values;
|
||||
}
|
||||
|
||||
public static function getServiciosPreimpresion($data){
|
||||
|
||||
$tarifa_id = $data['tarifa_id'] ?? -1;
|
||||
|
||||
$model = model('App\Models\Presupuestos\PresupuestoPreimpresionesModel');
|
||||
$values = $model->getPrecioTarifa($tarifa_id);
|
||||
return $values;
|
||||
}
|
||||
|
||||
public static function getServiciosAcabados($data){
|
||||
|
||||
$tarifa_id = $data['tarifa_id'] ?? -1;
|
||||
$tirada = $data['tirada'] ?? -1;
|
||||
$POD = $data['POD'] ?? -1;
|
||||
|
||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||
$values = $model->getPrecioTarifa($tarifa_id, $tirada, $POD);
|
||||
return $values;
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtiene las lineas de rotativa en el presupuesto de cliente
|
||||
* Selecciona entre las más económicas
|
||||
|
||||
@ -73,6 +73,11 @@
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div id="errorTiradas" class="fv-plugins-message-container invalid-feedback" style="display: none;">
|
||||
<div>No puede mezclar tiradas mayores de 30 unidades con tiradas menores de 30 unidades</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-3 mb-3">
|
||||
<label for="tirada" class="form-label">
|
||||
<?= lang('Presupuestos.tirada') ?> 1
|
||||
|
||||
@ -578,9 +578,27 @@ $('.calcular-presupuesto').on('change', function () {
|
||||
calcularPresupuesto();
|
||||
});
|
||||
|
||||
function comprobarTiradasPOD(){
|
||||
const tiradas = getTiradas();
|
||||
|
||||
//Comprobar que todos los elementos del array tiradas estan por encima de 30 o por debajo
|
||||
const tiradasPOD = tiradas.every(tirada => tirada <= 30);
|
||||
const tiradasNoPOD = tiradas.every(tirada => tirada > 30);
|
||||
if (tiradasPOD == !tiradasNoPOD) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
async function calcularPresupuesto() {
|
||||
|
||||
if(!comprobarTiradasPOD()){
|
||||
$('#errorTiradas').show();
|
||||
return;
|
||||
}
|
||||
$('#errorTiradas').hide();
|
||||
|
||||
// se obtiene la propiedad serv_id de los checkboxes seleccionados de la clase .servicio-extra
|
||||
if (!checkValues()) {
|
||||
return;
|
||||
|
||||
@ -62,7 +62,10 @@
|
||||
</div>
|
||||
|
||||
<div id="errorGeneral" class="fv-plugins-message-container invalid-feedback" style="display: none;">
|
||||
<p>Se ha producido un error al calcular el presupuesto. Póngase en contacto con el administrador</p>
|
||||
<p>Se ha producido un error <br>
|
||||
al calcular el presupuesto. <br>
|
||||
Póngase en contacto con el <br>
|
||||
administrador.</p>
|
||||
</div>
|
||||
|
||||
<table id="precios" class="table table-sm" style="display: none;">
|
||||
|
||||
@ -817,7 +817,7 @@
|
||||
/**
|
||||
* JJO
|
||||
*/
|
||||
|
||||
--->
|
||||
<li class="menu-header small text-uppercase">
|
||||
<span class="menu-header-text">Test JJO</span>
|
||||
</li>
|
||||
@ -827,7 +827,7 @@
|
||||
<div data-i18n="Test">Test</div>
|
||||
</a>
|
||||
</li>
|
||||
--->
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
3560
xdebug.log
3560
xdebug.log
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user