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
|
// Sobrecubierta
|
||||||
$coste_sobrecubierta = 0.0;
|
$coste_sobrecubierta = 0.0;
|
||||||
$linea_sobrecubierta = [];
|
$linea_sobrecubierta = [];
|
||||||
|
$acabadoSobrecubierta = [];
|
||||||
$sobreCubierta = $reqData["sobrecubierta"] ?? null;
|
$sobreCubierta = $reqData["sobrecubierta"] ?? null;
|
||||||
if(!is_null($sobreCubierta)){
|
if(!is_null($sobreCubierta)){
|
||||||
|
|
||||||
@ -807,6 +808,7 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Guardas
|
//Guardas
|
||||||
|
$guardas = [];
|
||||||
if($reqData['guardas'] ?? 0 > 0){
|
if($reqData['guardas'] ?? 0 > 0){
|
||||||
|
|
||||||
$guardas = $reqData['guardas'];
|
$guardas = $reqData['guardas'];
|
||||||
@ -863,21 +865,80 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
|||||||
$costeServiciosDefecto += floatval($servicio->total);
|
$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));
|
array_push($precio_u, round(($costeInterior + $coste_cubierta + $coste_sobrecubierta + $costeServiciosDefecto + $coste_servicios)/$tirada[$t], 4));
|
||||||
foreach($error as $err){
|
foreach($error as $err){
|
||||||
if($err != "")
|
if($err != "")
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if($reqData['guardas'] ?? 0 > 0){
|
|
||||||
}
|
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'errors' => $error,
|
'errors' => $error,
|
||||||
'total_lp' => $costeInterior+$coste_cubierta+$coste_sobrecubierta,
|
'total_lp' => $costeInterior+$coste_cubierta+$coste_sobrecubierta,
|
||||||
'acabadoCubierta' => $acabadoCubierta,
|
'acabadoCubierta' => $acabadoCubierta,
|
||||||
|
'acabadoSobrecubierta' => $acabadoSobrecubierta,
|
||||||
'total_servicios_defecto' => $costeServiciosDefecto,
|
'total_servicios_defecto' => $costeServiciosDefecto,
|
||||||
|
'total_servicios_automaticos' => $coste_servicios,
|
||||||
'tiradas' => $tirada,
|
'tiradas' => $tirada,
|
||||||
'precio_u' => $precio_u,
|
'precio_u' => $precio_u,
|
||||||
|
|
||||||
@ -886,6 +947,7 @@ class Presupuestocliente extends \App\Controllers\GoBaseResourceController
|
|||||||
'sobrecubierta' => $linea_sobrecubierta,
|
'sobrecubierta' => $linea_sobrecubierta,
|
||||||
'guardas' => $guardas,
|
'guardas' => $guardas,
|
||||||
'serviciosDefecto' => $servDefecto,
|
'serviciosDefecto' => $servDefecto,
|
||||||
|
'servicios_automaticos' => $serviciosAutomaticos,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -331,6 +331,37 @@ class PresupuestoClienteService extends BaseService
|
|||||||
return $values;
|
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
|
* Obtiene las lineas de rotativa en el presupuesto de cliente
|
||||||
* Selecciona entre las más económicas
|
* Selecciona entre las más económicas
|
||||||
|
|||||||
@ -73,6 +73,11 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<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">
|
<div class="col-sm-3 mb-3">
|
||||||
<label for="tirada" class="form-label">
|
<label for="tirada" class="form-label">
|
||||||
<?= lang('Presupuestos.tirada') ?> 1
|
<?= lang('Presupuestos.tirada') ?> 1
|
||||||
|
|||||||
@ -578,9 +578,27 @@ $('.calcular-presupuesto').on('change', function () {
|
|||||||
calcularPresupuesto();
|
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() {
|
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
|
// se obtiene la propiedad serv_id de los checkboxes seleccionados de la clase .servicio-extra
|
||||||
if (!checkValues()) {
|
if (!checkValues()) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@ -62,7 +62,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="errorGeneral" class="fv-plugins-message-container invalid-feedback" style="display: none;">
|
<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>
|
</div>
|
||||||
|
|
||||||
<table id="precios" class="table table-sm" style="display: none;">
|
<table id="precios" class="table table-sm" style="display: none;">
|
||||||
|
|||||||
@ -817,7 +817,7 @@
|
|||||||
/**
|
/**
|
||||||
* JJO
|
* JJO
|
||||||
*/
|
*/
|
||||||
|
--->
|
||||||
<li class="menu-header small text-uppercase">
|
<li class="menu-header small text-uppercase">
|
||||||
<span class="menu-header-text">Test JJO</span>
|
<span class="menu-header-text">Test JJO</span>
|
||||||
</li>
|
</li>
|
||||||
@ -827,7 +827,7 @@
|
|||||||
<div data-i18n="Test">Test</div>
|
<div data-i18n="Test">Test</div>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
--->
|
|
||||||
|
|
||||||
|
|
||||||
</ul>
|
</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