trabajando en resumen

This commit is contained in:
2025-02-04 09:26:32 +01:00
parent 61c2e885eb
commit 430cf0fd6c
5 changed files with 105 additions and 63 deletions

View File

@ -1244,7 +1244,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$resultado_presupuesto['info']['merma'] = $this->calcular_merma($selected_tirada, $POD);
$datos_presupuesto['faja'] = $faja;
$id = $model_presupuesto->insertarPresupuestoCliente(
$id,
$selected_tirada,
@ -1961,7 +1961,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$peso_interior = 0.0;
foreach ($interior as $linea) {
if (count($linea) > 0) {
$costeInterior += floatval($linea['total_impresion']);
$costeInterior += round(floatval($linea['total_impresion']), 2);
$peso_interior += floatval($linea['peso']);
$lomo += floatval($linea['mano']);
$info['lomo_interior'] += floatval($linea['mano']);
@ -2021,7 +2021,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
}
foreach ($interior as $linea) {
if (count($linea) > 0) {
$costeInterior += floatval($linea['total_impresion']);
$costeInterior += round(floatval($linea['total_impresion']),2);
$peso_interior += floatval($linea['peso']);
$lomo += floatval($linea['mano']);
if ($extra_info) {
@ -2073,7 +2073,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$coste_cubierta = 0.0;
$peso_cubierta = 0.0;
if (count($cubierta) > 0) {
$coste_cubierta += floatval($cubierta['total_impresion']);
$coste_cubierta += round(floatval($cubierta['total_impresion']), 2);
$peso_cubierta += floatval($cubierta['peso']);
$lomo += floatval($cubierta['mano']);
if ($extra_info) {
@ -2130,7 +2130,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
];
return $return_data;
}
$coste_servicios += floatval($acabadoCubierta[0]->total);
$coste_servicios += round(floatval($acabadoCubierta[0]->total), 2);
}
}
@ -2157,7 +2157,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$linea_sobrecubierta = PresupuestoClienteService::obtenerSobrecubierta($input_data);
if (count($linea_sobrecubierta) > 0) {
$coste_sobrecubierta += floatval($linea_sobrecubierta['total_impresion']);
$coste_sobrecubierta += round(floatval($linea_sobrecubierta['total_impresion']),2);
$peso_sobrecubierta += floatval($linea_sobrecubierta['peso']);
if ($extra_info) {
@ -2215,7 +2215,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
return $return_data;
}
$coste_servicios += floatval($acabadoSobrecubierta[0]->total);
$coste_servicios += round(floatval($acabadoSobrecubierta[0]->total), 2);
}
}
}
@ -2251,7 +2251,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$guardas = PresupuestoClienteService::obtenerGuardas($input_data);
if (count($guardas) > 0) {
$coste_guardas += floatval($guardas['total_impresion']);
$coste_guardas += round(floatval($guardas['total_impresion']), 2);
$peso_guardas += floatval($guardas['peso']);
if ($extra_info) {
@ -2305,7 +2305,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
if (count($linea_faja) > 0) {
$linea_faja['tipo_linea'] = 'lp_faja';
$coste_faja += floatval($linea_faja['total_impresion']);
$coste_faja += round(floatval($linea_faja['total_impresion']), 2);
$peso_faja += floatval($linea_faja['peso']);
if ($extra_info) {
@ -2335,7 +2335,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
];
return $return_data;
}
// Acabado faja
if (intval($faja['acabado']) != 0) {
@ -2362,7 +2362,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
return $return_data;
}
$coste_servicios += floatval($acabadoFaja[0]->total);
$coste_servicios += round(floatval($acabadoFaja[0]->total), 2);
}
}
}
@ -2410,10 +2410,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
}
$costeServiciosDefecto += floatval($servicio->total);
$costeServiciosDefecto += round(floatval($servicio->total), 2);
if ($extra_info) {
$totalServicios += floatval($servicio->total);
$margenServicios += floatval($servicio->total) * floatval($servicio->margen) / 100.0;
$totalServicios += round(floatval($servicio->total), 2);
$margenServicios += round(floatval($servicio->total) * floatval($servicio->margen) / 100.0, 2);
}
}
@ -2445,10 +2445,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
}
$costeServiciosDefecto += floatval($servicio->total);
$costeServiciosDefecto += round(floatval($servicio->total), 2);
if ($extra_info) {
$totalServicios += floatval($servicio->total);
$margenServicios += floatval($servicio->total) * floatval($servicio->margen) / 100.0;
$totalServicios += round(floatval($servicio->total), 2);
$margenServicios += round(floatval($servicio->total) * floatval($servicio->margen) / 100.0, 2);
}
}
@ -2528,7 +2528,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
array_push($servicios, $servicio_solapas_cubierta);
if (!is_null($sobreCubierta) && $sobreCubierta) // Si hay sobrecubierta, siempre con solapas
array_push($servicios, $servicio_solapas_sobrecubierta);
if(!is_null($faja) && $faja && $faja != false) // Si hay faja, siempre con solapas
if (!is_null($faja) && $faja && $faja != false) // Si hay faja, siempre con solapas
array_push($servicios, $servicio_solapas_faja);
@ -2560,10 +2560,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
return $return_data;
}
$coste_servicios += floatval($resultado[0]->total);
$coste_servicios += round(floatval($resultado[0]->total), 2);
if ($extra_info) {
$totalServicios += floatval($resultado[0]->total);
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
$totalServicios += round(floatval($resultado[0]->total), 2);
$margenServicios += round(floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0, 2);
}
} else if ($servicio->nombre == "ferro" || $servicio->nombre == "prototipo") {
// Extra
@ -2590,10 +2590,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
array_push($serviciosAutomaticos, $resultado[0]);
$coste_servicios += floatval($resultado[0]->precio);
$coste_servicios += round(floatval($resultado[0]->precio), 2);
if ($extra_info) {
$totalServicios += floatval($resultado[0]->precio);
$margenServicios += floatval($resultado[0]->precio) * floatval($resultado[0]->margen) / 100.0;
$totalServicios += round(floatval($resultado[0]->precio), 2);
$margenServicios += round(floatval($resultado[0]->precio) * floatval($resultado[0]->margen) / 100.0, 2);
}
} else if ($servicio->nombre == 'solapas_cubierta' || $servicio->nombre == 'solapas_sobrecubierta' || $servicio->nombre == 'solapas_faja') {
// Servicios manipulado
@ -2622,10 +2622,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
array_push($serviciosAutomaticos, $resultado[0]);
}
$coste_servicios += floatval($resultado[0]->total);
$coste_servicios += round(floatval($resultado[0]->total), 2);
if ($extra_info) {
$totalServicios += floatval($resultado[0]->total);
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
$totalServicios += round(floatval($resultado[0]->total), 2);
$margenServicios += round(floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0, 2);
}
}
}
@ -2658,10 +2658,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
array_push($serviciosAutomaticos, $resultado[0]);
}
$coste_servicios += floatval($resultado[0]->total);
$coste_servicios += round(floatval($resultado[0]->total), 2);
if ($extra_info) {
$totalServicios += floatval($resultado[0]->total);
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
$totalServicios += round(floatval($resultado[0]->total), 2);
$margenServicios += round(floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0, 2);
}
}
@ -2693,14 +2693,58 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
array_push($serviciosAutomaticos, $resultado[0]);
}
$coste_servicios += floatval($resultado[0]->total);
$coste_servicios += round(floatval($resultado[0]->total), 2);
if ($extra_info) {
$totalServicios += floatval($resultado[0]->total);
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
$totalServicios += round(floatval($resultado[0]->total), 2);
$margenServicios += round(floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0, 2);
}
}
array_push($precio_u, round(($costeInterior + $coste_cubierta + $coste_sobrecubierta + $costeServiciosDefecto + $coste_servicios) / $tirada[$t], 4));
if (is_array($faja) && ($faja['solapas'] > 0 && intval($linea_faja['dimension_desarrollo']['ancho']) > 630)) {
// Servicios manipulado
$resultado = PresupuestoCLienteService::getServiciosManipulado([
'tarifa_id' => intval($servicio_solapas_grandes_faja->id),
'tirada' => $datosPedido->tirada,
'POD' => $POD,
]);
if ($resultado[0]->total <= 0) {
$errorModel = new ErrorPresupuesto();
$errorModel->insertError(
$datos_entrada['id'],
auth()->user()->id,
'No se puede obtener servicio de manupulado ' . ((string) $servicio->nombre),
$input_data
);
$return_data = [
'errors' => (object) ([
'status' => 1
]),
];
return $return_data;
} else {
array_push($serviciosAutomaticos, $resultado[0]);
}
$coste_servicios += round(floatval($resultado[0]->total), 2);
if ($extra_info) {
$totalServicios += round(floatval($resultado[0]->total), 2);
$margenServicios += round(floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0, 2);
}
}
$total_por_tirada = $costeInterior +
$coste_cubierta +
$coste_sobrecubierta +
$coste_guardas +
$coste_faja +
$costeServiciosDefecto + $coste_servicios;
array_push(
$precio_u,
round(($total_por_tirada) / $tirada[$t], 4)
);
array_push($peso, round($peso_interior + $peso_cubierta + $peso_sobrecubierta + $peso_guardas, 2));
if ($extra_info) {
@ -2782,25 +2826,25 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
{
if (count($linea) == 0)
return;
$totalPapel += $linea['precio_pedido'];
$margenPapel += $linea['margen_papel_pedido'];
$sumForFactor += $linea['precio_pedido'];
$sumForFactor -= $linea['precio_pedido'];
$totalPapel += round($linea['precio_pedido'], 2);
$margenPapel += round($linea['margen_papel_pedido'], 2);
$sumForFactor += round($linea['precio_pedido'], 2);
$sumForFactor -= round($linea['precio_pedido'], 2);
$totalImpresion += $linea['precio_impresion_horas'];
$totalImpresion += $linea['precio_click_pedido'];
$sumForFactor += $linea['precio_click_pedido'];
$totalImpresion += round($linea['precio_impresion_horas'], 2);
$totalImpresion += round($linea['precio_click_pedido'], 2);
$sumForFactor += round($linea['precio_click_pedido'], 2);
if ($linea['tipo_maquina'] == 'inkjet') {
$totalImpresion += $linea['precio_tinta'];
$totalImpresion += round($linea['precio_tinta'], 2);
if (array_key_exists('total_corte', $linea)) {
$totalImpresion += $linea['total_corte'];
$sumForFactor += $linea['total_corte'];
$totalImpresion += round($linea['total_corte'], 2);
$sumForFactor += round($linea['total_corte'], 2);
}
}
$margenImpresion += $linea['margen_impresion_horas'];
$margenImpresion += $linea['margen_click_pedido'];
$sumForFactor -= $linea['margen_click_pedido'];
$margenImpresion += round($linea['margen_impresion_horas'], 2);
$margenImpresion += round($linea['margen_click_pedido'], 2);
$sumForFactor -= round($linea['margen_click_pedido'], 2);
}
protected function calcular_lomo($lineas, $lomo_inicial)

View File

@ -1826,7 +1826,7 @@ class PresupuestoService extends BaseService
}
}
if ($uso == 'cubierta' || $uso == 'sobrecubierta') {
if ($uso == 'cubierta' || $uso == 'sobrecubierta' || $uso == 'faja') {
$linea['fields']['dimension_desarrollo']['ancho'] = $datosPedido->anchoExteriores;
$linea['fields']['dimension_desarrollo']['alto'] = $datosPedido->altoExteriores;

View File

@ -370,8 +370,7 @@ id = -1;
searching: false,
paging: true,
info: false,
dom: '<"mt-4"><"float-end"B><"float-start"l>
<t><"mt-4 mb-3"p>',
dom: '<"mt-4"><"float-end"B><"float-start"l><t><"mt-4 mb-3"p>',
ajax : $.fn.dataTable.pipeline( {
url: '<?= route_to('dataTableOfTarifaEncuadernacionLineasHoras') ?>',
data: function ( d ) {
@ -570,8 +569,7 @@ id = -1;
searching: false,
paging: true,
info: false,
dom: '<"mt-4"><"float-end"B><"float-start"l>
<t><"mt-4 mb-3"p>',
dom: '<"mt-4"><"float-end"B><"float-start"l><t><"mt-4 mb-3"p>',
ajax : $.fn.dataTable.pipeline( {
url: '<?= route_to('dataTableOfTarifaEncuadernacionLineas') ?>',
data: function ( d ) {
@ -776,8 +774,7 @@ id = -1;
paging: true,
select: true,
info: false,
dom: '<"mt-4"><"float-end"B><"float-start"l>
<t><"mt-4 mb-3"p>',
dom: '<"mt-4"><"float-end"B><"float-start"l><t><"mt-4 mb-3"p>',
ajax : $.fn.dataTable.pipeline( {
url: '<?= route_to('dataTableOfTarifaEncuadernacionTiradas') ?>',
data: {

View File

@ -89,8 +89,8 @@ class Resumen {
let totalImpresionforMargen = 0;
let margenImpresion = 0;
let totalServicios = 0;
let margenServicios = 0;
let totalServicios = parseFloat(0);
let margenServicios = parseFloat(0);
let totalEnvios = 0;
let margenEnvios = 0;
@ -177,11 +177,11 @@ class Resumen {
if (typeof $("#tableOfServiciosEncuadernacion").DataTable() !== 'undefined' && $("#tableOfServiciosEncuadernacion").DataTable().rows().count() > 0) {
$('#tableOfServiciosEncuadernacion').DataTable().rows().every(function (rowIdx, tableLoop, rowLoop) {
let rowData = this.data();
let total_servicio = parseFloat(rowData.precio_total);
let total_servicio = parseFloat(rowData.precio_total);
let margen_servicio = parseFloat(rowData.margen);
totalServicios += total_servicio
let base = total_servicio / (1 + margen_servicio / 100.0);
margenServicios = total_servicio - base;
margenServicios += parseFloat(total_servicio - base);
});
}
@ -192,7 +192,7 @@ class Resumen {
let margen_servicio = parseFloat(rowData.margen);
totalServicios += total_servicio
let base = total_servicio / (1 + margen_servicio / 100.0);
margenServicios = total_servicio - base;
margenServicios += parseFloat(total_servicio - base);
});
}
@ -202,7 +202,7 @@ class Resumen {
let total_servicio = parseFloat(rowData.precio);
let coste_servicio = parseFloat(rowData.coste);
totalServicios += total_servicio
margenServicios = total_servicio - coste_servicio;
margenServicios += total_servicio - coste_servicio;
});
}
@ -212,7 +212,7 @@ class Resumen {
let total_servicio = parseFloat(rowData.precio);
let coste_servicio = parseFloat(rowData.coste);
totalServicios += total_servicio
margenServicios = total_servicio - coste_servicio;
margenServicios += total_servicio - coste_servicio;
});
}
@ -223,7 +223,7 @@ class Resumen {
let margen_servicio = parseFloat(rowData.margen);
totalServicios += total_servicio
let base = total_servicio / (1 + margen_servicio / 100.0);
margenServicios = total_servicio - base;
margenServicios += parseFloat(total_servicio - base);
});
}

View File

@ -96,8 +96,9 @@ class TiradasAlernativas {
self.table.row(row).remove().draw();
$(document).trigger('update-envios', { tirada_inicial: $('#tirada').val(), tirada: data.tirada });
$('#tirada').val(data.tirada).trigger('change');
$(document).trigger('update-envios', { tirada_inicial: $('#tirada').val(), tirada: data.tirada });
});
$(document).on('update-tiradas-alternativas', async function () {