falta resolver el envio en el calculo de las tiradas alt

This commit is contained in:
Jaime Jiménez
2024-03-11 21:37:37 +01:00
parent 744dd5853c
commit cd9c3df8eb
7 changed files with 243 additions and 113 deletions

View File

@ -369,7 +369,7 @@ $('.solapas_sobrecubierta').on('change', function(){
$('#compGramajeSobrecubierta').trigger('change')
})
$('#tirada').on("change", function () {
$('#tirada').on("change", function (update_tiradas_alternativas = true) {
calcular_mermas()
@ -379,13 +379,22 @@ $('#tirada').on("change", function () {
if(url_parts2[url_parts2.length-2] == 'edit'){
//update_servicios(false)
//updateLineasPresupuesto()
if(update_tiradas_alternativas)
updatePresupuesto({
update_lineas: true,
update_servicios: true,
update_envios: true,
update_resumen: true,
update_tiradas_alternativas: false
})
update_lineas: true,
update_servicios: false,
update_envios: false,
update_resumen: false,
update_tiradas_alternativas: false
})
else
updatePresupuesto({
update_lineas: true,
update_servicios: false,
update_envios: false,
update_resumen: false,
update_tiradas_alternativas: false
})
checkInsertar()
}
})

View File

@ -43,11 +43,11 @@ function get_datos_acabado(){
async function get_servAcabados_tiradasAlternativas(tirada){
serviciosAcabados ={
var serviciosAcabados ={
coste: 0.0,
margen: 0.0,
}
json_data = {
var json_data = {
datos: get_datos_acabado(),
tirada: parseInt(tirada),
POD: $('#POD').val()
@ -56,19 +56,23 @@ async function get_servAcabados_tiradasAlternativas(tirada){
json_data = Object.assign(json_data, window.token_ajax);
const response = await fetch(window.location.origin + "/presupuestos/presupuestoacabados/update/" + id , {
await fetch(window.location.origin + "/presupuestos/presupuestoacabados/update/" + id , {
method: "POST",
body: JSON.stringify(json_data),
headers: {
"Content-type": "application/json; charset=UTF-8"
}
})
const values = await response.json();
yeniden(values[window.csrf_token]);
values.lines.forEach((line) => {
.then(response => response.json())
.then(data => {
//const values = await response.json();
yeniden(data[window.csrf_token]);
data.lines.forEach((line) => {
serviciosAcabados.coste += parseFloat(line[0].total);
serviciosAcabados.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
});
serviciosAcabados.coste += parseFloat(line[0].total);
serviciosAcabados.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
});
}
return serviciosAcabados;
@ -114,11 +118,13 @@ function get_datos_encuadernacion(){
async function get_servEncuadernacion_tiradasAlternativas(tirada, paginas, ancho, alto){
serviciosEncuadernacion ={
var serviciosEncuadernacion ={
coste: 0.0,
margen: 0.0,
}
json_data = {
var json_data = {
datos: get_datos_encuadernacion(),
tirada: parseInt(tirada),
paginas: parseInt(paginas),
@ -130,21 +136,27 @@ async function get_servEncuadernacion_tiradasAlternativas(tirada, paginas, ancho
if(json_data.datos.length>0){
json_data = Object.assign(json_data, window.token_ajax);
const response = await fetch(window.location.origin + "/presupuestos/presupuestoencuadernaciones/update/" + id , {
await fetch(window.location.origin + "/presupuestos/presupuestoencuadernaciones/update/" + id , {
method: "POST",
body: JSON.stringify(json_data),
headers: {
"Content-type": "application/json; charset=UTF-8"
}
})
const values = await response.json();
yeniden(values[window.csrf_token]);
values.lines.forEach((line) => {
serviciosEncuadernacion.coste += parseFloat(line[0].total);
serviciosEncuadernacion.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
.then(response => response.json())
.then(data => {
//const values = await response.json();
yeniden(data[window.csrf_token]);
data.lines.forEach((line) => {
serviciosEncuadernacion.coste += parseFloat(line[0].total);
serviciosEncuadernacion.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
});
});
}
return serviciosEncuadernacion;
}
@ -185,11 +197,11 @@ function get_datos_manipulado(){
async function get_servManipulado_tiradasAlternativas(tirada){
serviciosManipulado ={
var serviciosManipulado ={
coste: 0.0,
margen: 0.0,
}
json_data = {
var json_data = {
datos: get_datos_manipulado(),
tirada: parseInt(tirada),
POD: $('#POD').val()
@ -197,18 +209,22 @@ async function get_servManipulado_tiradasAlternativas(tirada){
if(json_data.datos.length>0){
json_data = Object.assign(json_data, window.token_ajax);
const response = await fetch(window.location.origin + "/presupuestos/presupuestomanipulados/update/" + id , {
await fetch(window.location.origin + "/presupuestos/presupuestomanipulados/update/" + id , {
method: "POST",
body: JSON.stringify(json_data),
headers: {
"Content-type": "application/json; charset=UTF-8"
}
})
const values = await response.json();
yeniden(values[window.csrf_token]);
values.lines.forEach((line) => {
serviciosManipulado.coste += parseFloat(line[0].total);
serviciosManipulado.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
.then(response => response.json())
.then(data => {
//const values = await response.json();
yeniden(data[window.csrf_token]);
data.lines.forEach((line) => {
serviciosManipulado.coste += parseFloat(line[0].total);
serviciosManipulado.margen += parseFloat(line[0].total)*parseFloat(line[0].margen)/100.0;
});
});
}
return serviciosManipulado;
@ -246,12 +262,13 @@ function get_datos_preimpresion(){
return datosPreimpresion
}
async function get_servPreimpresion_tiradasAlternativas(){
serviciosPreimpresion ={
var serviciosPreimpresion ={
coste: 0.0,
margen: 0.0,
}
json_data = {
var json_data = {
datos: get_datos_preimpresion(),
POD: $('#POD').val()
}
@ -259,18 +276,22 @@ async function get_servPreimpresion_tiradasAlternativas(){
json_data = Object.assign(json_data, window.token_ajax);
const response = await fetch(window.location.origin + "/presupuestos/presupuestopreimpresiones/update/" + id , {
await fetch(window.location.origin + "/presupuestos/presupuestopreimpresiones/update/" + id , {
method: "POST",
body: JSON.stringify(json_data),
headers: {
"Content-type": "application/json; charset=UTF-8"
}
})
const values = await response.json();
yeniden(values[window.csrf_token]);
values.lines.forEach((line) => {
serviciosPreimpresion.coste += parseFloat(line[0].precio);
serviciosPreimpresion.margen += parseFloat(line[0].precio)*parseFloat(line[0].margen)/100.0;
.then(response => response.json())
.then(data => {
//const values = await response.json();
yeniden(data[window.csrf_token]);
data.lines.forEach((line) => {
serviciosPreimpresion.coste += parseFloat(line[0].precio);
serviciosPreimpresion.margen += parseFloat(line[0].precio)*parseFloat(line[0].margen)/100.0;
});
});
}
return serviciosPreimpresion;

View File

@ -382,7 +382,7 @@
)
}
function actualizar_servicios(update_preimpresion=false){
async function actualizar_servicios(update_preimpresion=false){
const domain = window.location.origin
const dimension = getDimensionLibro();
@ -561,10 +561,19 @@
element.tarifa_acabado_id,
nombre_completo,
'<span id="precio_unidad_acabado_' + element.tarifa_acabado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_acabado_' + element.tarifa_acabado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_acabado_' + element.tarifa_acabado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="acabado_margen_' + element.tarifa_acabado_id + '">' + parseFloat(element.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + element.tarifa_acabado_id +'" data-text="' + nombre_completo + '"></i></a>'
]).draw(false)
$('#precio_total_acabado_' + element.tarifa_acabado_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
//updateTotales(false, true, false)
updatePresupuesto({
@ -572,7 +581,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
})
@ -632,10 +641,20 @@
row.tarifa_id,
nombre,
'<span id="precio_unidad_acabado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_acabado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_acabado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="acabado_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2 tiradas-alternativas" data-id="' + row.tarifa_id +'" data-text="' + nombre +'"></i></a>'
]).draw(false)
$('#precio_total_acabado_' + row.tarifa_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
});
if(data.values.lenght > 0){
//updateTotales(false, true, false)
@ -644,7 +663,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
}
@ -793,10 +812,19 @@
'</option>' +
'</select>',
'<span id="precio_unidad_encuadernado_' + element.tarifa_encuadernado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_encuadernado_' + element.tarifa_encuadernado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_encuadernado_' + element.tarifa_encuadernado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="enc_margen_' + element.tarifa_encuadernado_id + '">' + parseFloat(element.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + element.tarifa_encuadernado_id +'"></i></a>'
]).draw(false)
$('#precio_total_encuadernado_' + element.tarifa_encuadernado_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
$('#proveedor_enc_' + element.tarifa_encuadernado_id).select2({
allowClear: false,
@ -843,7 +871,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
check_serv_enc_error()
@ -884,7 +912,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
yeniden(data.<?= csrf_token() ?>);
return true;
@ -964,10 +992,19 @@
'</option>' +
'</select>',
'<span id="precio_unidad_encuadernado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_encuadernado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_encuadernado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="enc_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + row.tarifa_id +'"></i></a>'
]).draw(false)
$('#precio_total_encuadernado_' + row.tarifa_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
$('#proveedor_enc_' + row.tarifa_id).select2({
allowClear: false,
@ -1018,7 +1055,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
}
check_serv_enc_error()
@ -1087,10 +1124,19 @@
element.tarifa_manipulado_id,
element.nombre,
'<span id="precio_unidad_manipulado_' + element.tarifa_manipulado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_manipulado_' + element.tarifa_manipulado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_manipulado_' + element.tarifa_manipulado_id +'" value="' + parseFloat(element.precio_total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="manipulado_margen_' + element.tarifa_manipulado_id + '">' + parseFloat(element.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + element.tarifa_manipulado_id +'"></i></a>'
]).draw(false)
$('#precio_total_manipulado_' + element.tarifa_manipulado_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
})
check_serv_manipulado_error()
@ -1155,10 +1201,19 @@
row.tarifa_id,
row.tarifa_nombre,
'<span id="precio_unidad_manipulado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<input class="update-totales" id="precio_total_manipulado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_total_manipulado_' + row.tarifa_id +'" value="' + parseFloat(row.total).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="manipulado_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + row.tarifa_id +'"></i></a>'
]).draw(false)
$('#precio_total_manipulado_' + row.tarifa_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
});
if(data.values.lenght > 0){
@ -1168,7 +1223,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
}
check_serv_manipulado_error()
@ -1255,10 +1310,19 @@
tableServiciosPreimpresion.row.add([
element.tarifa_preimpresion_id,
element.nombre,
'<input class="update-totales" id="precio_preimpresion_' + element.tarifa_preimpresion_id +'" value="' + parseFloat(element.precio).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_preimpresion_' + element.tarifa_preimpresion_id +'" value="' + parseFloat(element.precio).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="preimpresion_margen_' + element.tarifa_preimpresion_id + '">' + parseFloat(element.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + element.tarifa_preimpresion_id +'"></i></a>'
]).draw(false)
$('#precio_preimpresion_' + element.tarifa_preimpresion_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
})
//updateTotales(false, true, false)
@ -1267,7 +1331,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
check_serv_preimpresion_error()
}
@ -1312,10 +1376,20 @@
tableServiciosPreimpresion.row.add([
row.tarifa_id,
row.tarifa_nombre,
'<input class="update-totales" id="precio_preimpresion_' + row.tarifa_id +'" value="' + parseFloat(row.precio).toFixed(2) + '"></input>',
'<input class="update-totales-servicios" id="precio_preimpresion_' + row.tarifa_id +'" value="' + parseFloat(row.precio).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="preimpresion_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + row.tarifa_id +'"></i></a>'
]).draw(false)
$('#precio_preimpresion_' + row.tarifa_id).on('change', function(){
updatePresupuesto({
update_lineas: false,
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true})
})
});
if(data.values.lenght > 0){
@ -1325,7 +1399,7 @@
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: false
update_tiradas_alternativas: true
})
}
check_serv_preimpresion_error()

View File

@ -700,7 +700,14 @@ $(document).on('click', '.btn-delete-lp', function(e) {
.remove()
.draw();
updateTablaEnvios()
//updateTablaEnvios()
updatePresupuesto({
update_lineas: false,
update_servicios: true,
update_envios: true,
update_resumen: true,
update_tiradas_alternativas: true
})
if(data.row_id == 'lp_guardas')
servicioGuardas(false)
@ -1404,7 +1411,7 @@ function change_lp_bn_aFavorFibra(){
}
function calcularPresupuesto_bn(input_data={}, updatedTipologias = false){
async function calcularPresupuesto_bn(input_data={}, updatedTipologias = false){
const dimension = getDimensionLibro();
@ -1454,7 +1461,7 @@ function calcularPresupuesto_bn(input_data={}, updatedTipologias = false){
}
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -1768,7 +1775,7 @@ function change_lp_color_aFavorFibra(){
function calcularPresupuesto_color(input_data={}, updatedTipologias = false){
async function calcularPresupuesto_color(input_data={}, updatedTipologias = false){
const dimension = getDimensionLibro();
@ -1818,7 +1825,7 @@ function calcularPresupuesto_color(input_data={}, updatedTipologias = false){
datos.a_favor_fibra = $('#lp_color_aFavorFibra').prop('checked')
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -2099,7 +2106,7 @@ function change_lp_bnhq_aFavorFibra(){
}
function calcularPresupuesto_bnhq(input_data={}, updatedTipologias = false){
async function calcularPresupuesto_bnhq(input_data={}, updatedTipologias = false){
const dimension = getDimensionLibro();
@ -2149,7 +2156,7 @@ function calcularPresupuesto_bnhq(input_data={}, updatedTipologias = false){
datos.a_favor_fibra = $('#lp_bnhq_aFavorFibra').prop('checked')?1:0
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -2438,7 +2445,7 @@ function change_lp_colorhq_aFavorFibra(){
}
function calcularPresupuesto_colorhq(input_data={}, updatedTipologias = false){
async function calcularPresupuesto_colorhq(input_data={}, updatedTipologias = false){
const dimension = getDimensionLibro();
@ -2488,7 +2495,7 @@ function calcularPresupuesto_colorhq(input_data={}, updatedTipologias = false){
datos.a_favor_fibra = $('#lp_colorhq_aFavorFibra').prop('checked')?1:0
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -3095,7 +3102,7 @@ function change_lp_rot_color_aFavorFibra(){
}
function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=false, input_data={}){
async function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=false, input_data={}){
const dimension = getDimensionLibro();
@ -3148,7 +3155,7 @@ function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=f
datos.amarillo= $('#lp_rot_color_cobAmarillo').val()
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -3426,7 +3433,7 @@ function change_lp_cubierta_paginas(){
}
function calcularPresupuesto_cubierta(fromComparador=false, input_data={}){
async function calcularPresupuesto_cubierta(fromComparador=false, input_data={}){
const dimension = getDimensionLibro();
@ -3465,7 +3472,7 @@ function calcularPresupuesto_cubierta(fromComparador=false, input_data={}){
<?= csrf_token() ?? "token" ?> : <?= csrf_token() ?>v
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -3691,7 +3698,7 @@ function change_lp_sobrecubierta_maquina(){
}
function calcularPresupuesto_sobrecubierta(fromComparador=false, input_data={}){
async function calcularPresupuesto_sobrecubierta(fromComparador=false, input_data={}){
const dimension = getDimensionLibro();
@ -3730,7 +3737,7 @@ function calcularPresupuesto_sobrecubierta(fromComparador=false, input_data={}){
<?= csrf_token() ?? "token" ?> : <?= csrf_token() ?>v
}
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -3898,7 +3905,7 @@ function clear_guardas(){
}
function calcularPresupuesto_guardas(fromComparador=false, input_data={}){
async function calcularPresupuesto_guardas(fromComparador=false, input_data={}){
const dimension = getDimensionLibro();
@ -3934,7 +3941,7 @@ function calcularPresupuesto_guardas(fromComparador=false, input_data={}){
<?= csrf_token() ?? "token" ?> : <?= csrf_token() ?>v
};
$.ajax({
await $.ajax({
type: "POST",
url: "/cosidotapablanda/datatable",
data: datos,
@ -4449,33 +4456,33 @@ async function fill_bbdd_from_lp(presupuesto_id){
}
function updateLineasPresupuesto(){
async function updateLineasPresupuesto(){
$('#tableLineasPresupuesto tbody tr:visible ').each(function(){
$('#tableLineasPresupuesto tbody tr:visible ').each(async function(){
if(this.id.endsWith('lp_bn')){
calcularPresupuesto_bn({}, true);
await calcularPresupuesto_bn({}, true);
}
else if(this.id.endsWith('lp_bnhq')){
calcularPresupuesto_bnhq({}, true);
await calcularPresupuesto_bnhq({}, true);
}
else if(this.id.endsWith('lp_color')){
calcularPresupuesto_color({}, true);
await calcularPresupuesto_color({}, true);
}
else if(this.id.endsWith('lp_colorhq')){
calcularPresupuesto_colorhq({}, true);
await calcularPresupuesto_colorhq({}, true);
}
else if(this.id.endsWith('lp_rot_bn')){
calcularPresupuesto_rot_bn(false, true, {})
await calcularPresupuesto_rot_bn(false, true, {})
}
else if(this.id.endsWith('lp_rot_color')){
calcularPresupuesto_rot_color(false, true, {})
await calcularPresupuesto_rot_color(false, true, {})
}
else if(this.id.endsWith('_cubierta')){
calcularPresupuesto_cubierta(false, {})
await calcularPresupuesto_cubierta(false, {})
}
else if(this.id.endsWith('_guardas')){
calcularPresupuesto_guardas(false, {})
await calcularPresupuesto_guardas(false, {})
}
})

View File

@ -276,7 +276,7 @@ $(".update-totales").on("change", function(){
update_servicios: false,
update_envios: false,
update_resumen: true,
update_tiradas_alternativas: true
update_tiradas_alternativas: false
})
})

View File

@ -40,16 +40,18 @@ var tableTiradas;
})();
function actualizar_tiradas_alternativas(){
// se obtiene la primera columna de la tabla de tiradas
const data = tableTiradas.rows().data().toArray();
// se borra la tabla de tiradas
tableTiradas.clear().draw();
const tiradas = data.map(row => row.tirada);
// por cada tirada, se añade una fila a la tabla de tiradas
tiradas.forEach(tirada => {
add_tirada_alternativa(tirada);
});
async function actualizar_tiradas_alternativas(){
if(tableTiradas !== undefined && tableTiradas.rows().count() > 0){
// se obtiene la primera columna de la tabla de tiradas
const data = tableTiradas.rows().data().toArray();
// se borra la tabla de tiradas
tableTiradas.clear().draw();
const tiradas = data.map(row => row.tirada);
// por cada tirada, se añade una fila a la tabla de tiradas
await tiradas.forEach(async function(tirada){
await add_tirada_alternativa(tirada);
});
}
}
@ -63,7 +65,7 @@ $('#add_tirada_alt').on('click', function () {
// Funcion para añadir una tirada alternativa
function add_tirada_alternativa(tirada_alt) {
async function add_tirada_alternativa(tirada_alt) {
// se comprueba que la tirada no existe ya en la tabla
const exists = tableTiradas.rows().data().toArray().some(row => row.tirada == tirada_alt);
@ -93,7 +95,7 @@ function add_tirada_alternativa(tirada_alt) {
datos = Object.assign(datos, window.token_ajax);
// Se realiza la petición AJAX
$.ajax({
await $.ajax({
type: "POST",
url: window.get_tirada_url,
data: datos,
@ -110,28 +112,38 @@ function add_tirada_alternativa(tirada_alt) {
if(data.lineas.length >0){
// Se cogen los valores de la linea con los datos correspondientes
$.each(data.lineas, function(key, value) {
data.lineas.forEach(function(value) {
coste_total += value.total_coste;
margen_total += value.total_margen;
});
console.log(datos.tirada);
// Se obtiene el precio de los servicios
const valueAcabados = await get_servAcabados_tiradasAlternativas(parseInt(datos.tirada));
costes_servicios += valueAcabados.coste;
margen_servicios += valueAcabados.margen;
costes_servicios += parseFloat(valueAcabados.coste);
margen_servicios += parseFloat(valueAcabados.margen);
console.log('coste acabados ('+ datos.tirada +'): ' + valueAcabados.coste);
const valueEncuadernacion = await get_servEncuadernacion_tiradasAlternativas(
parseInt(datos.tirada), parseInt( $('#paginas').val()), parseInt(dimension.ancho), parseInt(dimension.alto));
costes_servicios += valueEncuadernacion.coste;
margen_servicios += valueEncuadernacion.margen;
costes_servicios += parseFloat(valueEncuadernacion.coste);
margen_servicios += parseFloat(valueEncuadernacion.margen);
console.log('coste encuadernacion ('+ datos.tirada +'): ' + valueEncuadernacion.coste);
const valueManipulado = await get_servManipulado_tiradasAlternativas(parseInt(datos.tirada));
costes_servicios += valueManipulado.coste;
margen_servicios += valueManipulado.margen;
costes_servicios += parseFloat(valueManipulado.coste);
margen_servicios += parseFloat(valueManipulado.margen);
console.log('coste manipulado ('+ datos.tirada +'): ' + valueManipulado.coste);
const valuePreimpresion = await get_servPreimpresion_tiradasAlternativas(parseInt(datos.tirada));
costes_servicios += valuePreimpresion.coste;
margen_servicios += valuePreimpresion.margen;
costes_servicios += parseFloat(valuePreimpresion.coste);
margen_servicios += parseFloat(valuePreimpresion.margen);
console.log('coste preimpresion ('+ datos.tirada +'): ' + valuePreimpresion.coste);
const valueTransporte = await get_coste_envio_tiradasAlternativas(parseInt(datos.tirada));
coste_envio = valueTransporte.coste;
@ -263,7 +275,7 @@ $(document).on('click', '.comfirm-tirada-alt', function (e) {
const row = $(this).closest('tr');
const data = tableTiradas.row(row).data();
$('#tirada').val(data.tirada);
$('#tirada').trigger('change');
$('#tirada').trigger('change', [false]);
})

View File

@ -305,21 +305,28 @@ const url_parts = url.split('/');
<?php if (str_contains($formAction, 'edit')): ?>
<?= $this->section("additionalInlineJs") ?>
function updatePresupuesto({update_lineas = false, update_servicios = false, update_envios = false,update_resumen = false, update_tiradas_alternativas = false}) {
async function updatePresupuesto(
{
update_lineas = false,
update_servicios = false,
update_envios = false,
update_resumen = false,
update_tiradas_alternativas = false
}) {
new Promise(
function(resolve, reject){
async function(resolve, reject){
if(update_lineas){
updateLineasPresupuesto()
await updateLineasPresupuesto()
}
else
resolve()
}
).then(function(){
new Promise(
function(resolve, reject){
async function(resolve, reject){
if(update_servicios){
actualizar_servicios()
await actualizar_servicios()
}
else
resolve()
@ -347,9 +354,9 @@ const url_parts = url.split('/');
)
}).then(function(){
new Promise(
function(resolve, reject){
async function(resolve, reject){
if(update_tiradas_alternativas){
actualizar_tiradas_alternativas()
await actualizar_tiradas_alternativas()
}
else
resolve()