Merge branch 'dev/add_precio_coste_servicios' into 'main'

añadido el coste en las tablas de los servicios

See merge request jjimenez/safekat!333
This commit is contained in:
2024-09-22 09:56:47 +00:00
5 changed files with 123 additions and 40 deletions

View File

@ -19,6 +19,7 @@ return [
'updatedAt' => 'Updated At',
'userCreatedId' => 'User Created ID',
'userUpdateId' => 'User Update ID',
'coste' => 'Cost',
'validation' => [
'nombre' => [
'max_length' => 'The {field} field cannot exceed {param} characters in length.',

View File

@ -18,6 +18,7 @@ return [
'updatedAt' => 'Actualizado en',
'userCreatedId' => 'ID Usuario \"Creado en\"',
'userUpdateId' => 'ID Usuario \"Actualizado en\"',
'coste' => 'Coste',
'validation' => [
'nombre' => [
'max_length' => 'El campo {field} no puede exceder {param} caracteres en longitud.',

View File

@ -18,6 +18,7 @@ return [
'updatedAt' => 'Actualizado en',
'userCreatedId' => 'ID Usuario \"Creado en\"',
'userUpdateId' => 'ID Usuario \"Actualizado en\"',
'coste' => 'Coste',
'validation' => [
'nombre' => [
'max_length' => 'El campo {field} no puede exceder {param} caracteres en longitud.',

View File

@ -204,6 +204,11 @@ function init_servicio_acabado(){
else if (element.sobrecubierta == 1){
nombre_completo += ' (' + window.Presupuestos.sobrecubierta + ')'
}
var precio_unidad = parseFloat(element.precio_unidad).toFixed(2)
var margen = parseFloat(element.margen).toFixed(2)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
tableServiciosAcabado.row.add([
element.tarifa_acabado_id,
nombre_completo,
@ -212,9 +217,9 @@ function init_servicio_acabado(){
element.proveedor +
'</option>' +
'</select>',
'<span id="precio_unidad_acabado_' + element.tarifa_acabado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_acabado_' + element.tarifa_acabado_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="acabado_margen_' + element.tarifa_acabado_id + '">' + margen + '</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)
@ -300,10 +305,14 @@ function select_acabado_event(){
url: window.routes_servicios.dataTableOfPresupuestoAcabados,
data: datos,
success: function (data) {
var precio_unidad = parseFloat(data.values[0].precio_unidad).toFixed(2)
var margen = parseFloat(data.values[0].margen).toFixed(2)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
$('#precio_unidad_acabado_' + datos.tarifa_acabado_id).text(parseFloat(data.values[0].precio_unidad).toFixed(2))
$('#precio_unidad_acabado_' + datos.tarifa_acabado_id).text(precio_unidad_coste + ' / ' + precio_unidad)
$('#precio_total_acabado_' + datos.tarifa_acabado_id).val(parseFloat(data.values[0].total).toFixed(2))
$('#acabado_margen_' + datos.tarifa_acabado_id).val(parseFloat(data.values[0].margen).toFixed(2))
$('#acabado_margen_' + datos.tarifa_acabado_id).val(margen)
yeniden(data[window.csrf_token]);
return true;
@ -366,6 +375,10 @@ function get_tarifas_acabado(tarifa_id = -1, uso=null){
if(uso!= null)
nombre += ' (' + uso + ')'
var precio_unidad = parseFloat(row.precio_unidad).toFixed(2)
var margen = parseFloat(row.margen).toFixed(2)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
tableServiciosAcabado.row.add([
row.tarifa_id,
nombre,
@ -374,9 +387,9 @@ function get_tarifas_acabado(tarifa_id = -1, uso=null){
row.proveedor +
'</option>' +
'</select>',
'<span id="precio_unidad_acabado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_acabado_' + row.tarifa_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="acabado_margen_' + row.tarifa_id + '">' + margen + '</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)
@ -550,7 +563,7 @@ function get_datos_acabado(){
values['proveedor_id'] = $(this).children(":first").select2('data')[0].id
break
case 3:
values['precio_unidad'] = $(this).text()
values['precio_unidad'] = $(this).text().split('/')[1].trim()
break
case 4:
values['precio_total'] = $(this).children(":first").val()
@ -653,6 +666,10 @@ function init_servicio_encuadernado(){
const tarifa_id = element.tarifa_encuadernado_id
var proveedor_nombre = element.proveedor===null? window.Presupuestos.no_disponible: element.proveedor
var precio_unidad = parseFloat(element.precio_unidad).toFixed(2)
var margen = parseFloat(element.margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
var linea = [
element.tarifa_encuadernado_id,
element.nombre,
@ -661,11 +678,11 @@ function init_servicio_encuadernado(){
proveedor_nombre +
'</option>' +
'</select>',
'<span id="precio_unidad_encuadernado_' + element.tarifa_encuadernado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_encuadernado_' + element.tarifa_encuadernado_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
(element.hasOwnProperty('paginas_por_cuadernillo') && element.paginas_por_cuadernillo!=null)?selectForCuadernillos(element.tarifa_encuadernado_id, element.paginas_por_cuadernillo):'',
'<span id="tiempo_encuadernado_' + element.tarifa_encuadernado_id + '">' + convertirTiempo(element.tiempo) + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="enc_margen_' + element.tarifa_encuadernado_id + '">' + margen + '</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>'
]
@ -814,11 +831,15 @@ function select_enc_event(){
url: window.routes_servicios.dataTableOfPresupuestoEncuadernaciones,
data: datos,
success: function (data) {
var precio_unidad = parseFloat(data.values[0].precio_unidad).toFixed(2)
var margen = parseFloat(data.values[0].margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
$('#precio_unidad_encuadernado_' + datos.tarifa_encuadernacion_id).text(parseFloat(data.values[0].precio_unidad).toFixed(2))
$('#precio_unidad_encuadernado_' + datos.tarifa_encuadernacion_id).text(precio_unidad_coste + ' / ' + precio_unidad)
$('#tiempo_encuadernado_' + datos.tarifa_encuadernacion_id).text(convertirTiempo(data.values[0].tiempo))
$('#precio_total_encuadernado_' + datos.tarifa_encuadernacion_id).val(parseFloat(data.values[0].total).toFixed(2))
$('#enc_margen_' + datos.tarifa_encuadernacion_id).val(parseFloat(data.values[0].margen).toFixed(2))
$('#enc_margen_' + datos.tarifa_encuadernacion_id).val(margen)
yeniden(data[window.csrf_token]);
return true;
@ -889,6 +910,10 @@ async function get_tarifas_enc(tipo=null, tarifa_id = -1){
tableServiciosEnc.clear().draw()
data.values.forEach((row) => {
var precio_unidad = parseFloat(row.precio_unidad).toFixed(2)
var margen = parseFloat(row.margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
tableServiciosEnc.row.add([
row.tarifa_id,
@ -898,11 +923,11 @@ async function get_tarifas_enc(tipo=null, tarifa_id = -1){
row.proveedor +
'</option>' +
'</select>',
'<span id="precio_unidad_encuadernado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_encuadernado_' + row.tarifa_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
(row.hasOwnProperty('paginas_por_cuadernillo') && row.paginas_por_cuadernillo!=null)?selectForCuadernillos(row.tarifa_id, 32):'',
'<span id="tiempo_encuadernado_' + row.tarifa_id + '">' + convertirTiempo(row.tiempo) + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="enc_margen_' + row.tarifa_id + '">' + margen + '</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)
@ -1008,7 +1033,7 @@ function get_datos_encuadernacion(){
values['proveedor_id'] = $(this).children(":first").select2('data')[0].id
break
case 3:
values['precio_unidad'] = $(this).text()
values['precio_unidad'] = $(this).text().split('/')[1].trim()
break
case 4:
values['paginas_por_cuadernillo'] = $(this).children(":first").val()
@ -1122,13 +1147,17 @@ function init_servicio_manipulado(){
})
window.serviciosmanipuladoList.forEach((element) =>{
var precio_unidad = parseFloat(element.precio_unidad).toFixed(2)
var margen = parseFloat(element.margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
tableServiciosManipulado.row.add([
element.tarifa_manipulado_id,
element.nombre,
'<span id="precio_unidad_manipulado_' + element.tarifa_manipulado_id + '">' + parseFloat(element.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_manipulado_' + element.tarifa_manipulado_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="manipulado_margen_' + element.tarifa_manipulado_id + '">' + margen + '</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)
@ -1202,12 +1231,16 @@ async function get_tarifas_manipulado(tipo=null, tarifa_id = -1){
data.values.forEach((row) => {
var precio_unidad = parseFloat(row.precio_unidad).toFixed(2)
var margen = parseFloat(row.margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
tableServiciosManipulado.row.add([
row.tarifa_id,
row.tarifa_nombre,
'<span id="precio_unidad_manipulado_' + row.tarifa_id + '">' + parseFloat(row.precio_unidad).toFixed(2) + '</span>',
'<span id="precio_unidad_manipulado_' + row.tarifa_id + '">' + precio_unidad_coste + ' / ' + precio_unidad + '</span>',
'<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>',
'<span style="display: none;" class="update-totales" id="manipulado_margen_' + row.tarifa_id + '">' + margen + '</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)
@ -1276,7 +1309,7 @@ function get_datos_manipulado(){
values['tarifa_id'] = $(this).text()
break
case 2:
values['precio_unidad'] = $(this).text()
values['precio_unidad'] = $(this).text().split('/')[1].trim()
break
case 3:
values['precio_total'] = $(this).children(":first").val()
@ -1374,11 +1407,16 @@ function init_servicio_preimpresion(){
window.serviciospreimpresionList.forEach((element) =>{
var precio = parseFloat(element.precio).toFixed(2)
var margen = parseFloat(element.margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
tableServiciosPreimpresion.row.add([
element.tarifa_preimpresion_id,
element.nombre,
'<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>',
'<span id="coste_preimprecion_' + element.tarifa_id + '">' + coste + '</span>',
'<input class="update-totales-servicios" id="precio_preimpresion_' + element.tarifa_preimpresion_id +'" value="' + precio + '"></input>',
'<span style="display: none;" class="update-totales" id="preimpresion_margen_' + element.tarifa_preimpresion_id + '">' + margen + '</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)
@ -1433,10 +1471,15 @@ function get_tarifas_preimpresion(tarifa_id = -1){
success: function (data) {
data.values.forEach((row) => {
var precio = parseFloat(row.precio).toFixed(2)
var margen = parseFloat(row.margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
tableServiciosPreimpresion.row.add([
row.tarifa_id,
row.tarifa_nombre,
'<span id="coste_preimprecion_' + row.tarifa_id + '">' + coste + '</span>',
'<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>'
@ -1528,10 +1571,10 @@ function get_datos_preimpresion(){
case 0:
values['tarifa_id'] = $(this).text()
break
case 2:
case 3:
values['precio'] = $(this).children(":first").val()
break
case 3:
case 4:
values['margen'] = $(this).text()
break
}
@ -1627,11 +1670,16 @@ function init_servicio_extra(){
window.serviciosextraList.forEach((element) =>{
var precio = parseFloat(element.precio).toFixed(2)
var margen = parseFloat(element.margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
tableServiciosExtra.row.add([
element.tarifa_extra_id,
element.nombre,
'<input class="update-totales-servicios" id="precio_servicioextra_' + element.tarifa_extra_id +'" value="' + parseFloat(element.precio).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="servicioextra_margen_' + element.tarifa_extra_id + '">' + parseFloat(element.margen).toFixed(2) + '</span>',
'<span id="coste_servicioextra_' + element.tarifa_id + '">' + coste + '</span>',
'<input class="update-totales-servicios" id="precio_servicioextra_' + element.tarifa_extra_id +'" value="' + precio + '"></input>',
'<span style="display: none;" class="update-totales" id="servicioextra_margen_' + element.tarifa_extra_id + '">' + margen + '</span>',
'<a href="javascript:void(0);"><i class="ti ti-trash ti-sm btn-delete-serv mx-2" data-id="' + element.tarifa_extra_id +'"></i></a>'
]).draw(false)
@ -1687,11 +1735,16 @@ function get_tarifas_extra(tarifa_id = -1){
data.values.forEach((row) => {
var precio = parseFloat(row.precio).toFixed(2)
var margen = parseFloat(row.margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
tableServiciosExtra.row.add([
row.tarifa_id,
row.tarifa_nombre,
'<input class="update-totales-servicios" id="precio_servicioextra_' + row.tarifa_id +'" value="' + parseFloat(row.precio).toFixed(2) + '"></input>',
'<span style="display: none;" class="update-totales" id="servicioextra_margen_' + row.tarifa_id + '">' + parseFloat(row.margen).toFixed(2) + '</span>',
'<span id="coste_servicioextra_' + row.tarifa_id + '">' + coste + '</span>',
'<input class="update-totales-servicios" id="precio_servicioextra_' + row.tarifa_id +'" value="' + precio + '"></input>',
'<span style="display: none;" class="update-totales" id="servicioextra_margen_' + row.tarifa_id + '">' + margen + '</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)
@ -1744,10 +1797,10 @@ function get_datos_serviciosextra(){
case 0:
values['tarifa_id'] = $(this).text()
break
case 2:
case 3:
values['precio'] = $(this).children(":first").val()
break
case 3:
case 4:
values['margen'] = $(this).text()
break
}
@ -1872,6 +1925,11 @@ async function actualizar_servicios(update_preimpresion=false){
.then(response => response.json())
.then(data => {
data.lines.forEach((line) => {
var precio_unidad = parseFloat(line[0].precio_unidad).toFixed(2)
var margen = parseFloat(line[0].margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
$('#proveedor_acabado_' + line[0].tarifa_id).off('change')
if(line[0].hasOwnProperty('proveedor_id')){
$('#proveedor_acabado_' + line[0].tarifa_id)
@ -1881,9 +1939,9 @@ async function actualizar_servicios(update_preimpresion=false){
$('#proveedor_acabado_' + line[0].tarifa_id).empty()
.append('<option selected="selected" value="' + line[0].proveedor_id + '">' + window.Presupuestos.no_disponible + '</option>')
}
$('#precio_unidad_acabado_' + line[0].tarifa_id).text(parseFloat(line[0].precio_unidad).toFixed(2))
$('#precio_unidad_acabado_' + line[0].tarifa_id).text(precio_unidad_coste + " / " + precio_unidad)
$('#precio_total_acabado_' + line[0].tarifa_id).val(parseFloat(line[0].total).toFixed(2))
$('#acabado_margen_' + line[0].tarifa_id).text(parseFloat(line[0].margen).toFixed(2))
$('#acabado_margen_' + line[0].tarifa_id).text(margen)
$('#proveedor_acabado_' + line[0].tarifa_id).on('change', select_enc_event)
});
check_serv_acabado_error()
@ -1900,6 +1958,10 @@ async function actualizar_servicios(update_preimpresion=false){
.then(response => response.json())
.then(data => {
data.lines.forEach((line) => {
var precio_unidad = parseFloat(line[0].precio_unidad).toFixed(2)
var margen = parseFloat(line[0].margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
$('#proveedor_enc_' + line[0].tarifa_id).off('change')
if(line[0].hasOwnProperty('proveedor_id')){
@ -1910,9 +1972,9 @@ async function actualizar_servicios(update_preimpresion=false){
$('#proveedor_enc_' + line[0].tarifa_id).empty()
.append('<option selected="selected" value="' + line[0].proveedor_id + '">' + window.Presupuestos.no_disponible + '</option>')
}
$('#precio_unidad_encuadernado_' + line[0].tarifa_id).text(parseFloat(line[0].precio_unidad).toFixed(2))
$('#precio_unidad_encuadernado_' + line[0].tarifa_id).text(precio_unidad_coste + " / " + precio_unidad)
$('#precio_total_encuadernado_' + line[0].tarifa_id).val(parseFloat(line[0].total).toFixed(2))
$('#enc_margen_' + line[0].tarifa_id).val(parseFloat(line[0].margen).toFixed(2))
$('#enc_margen_' + line[0].tarifa_id).val(margen)
$('#proveedor_enc_' + line[0].tarifa_id).on('change', select_enc_event)
});
check_serv_enc_error()
@ -1928,9 +1990,14 @@ async function actualizar_servicios(update_preimpresion=false){
.then(response => response.json())
.then(data => {
data.lines.forEach((line) => {
$('#precio_unidad_manipulado_' + line[0].tarifa_id).text(parseFloat(line[0].precio_unidad).toFixed(2))
var precio_unidad = parseFloat(line[0].precio_unidad).toFixed(2)
var margen = parseFloat(line[0].margen).toFixed(0)
var precio_unidad_coste = (precio_unidad/(1+margen/100)).toFixed(2)
$('#precio_unidad_manipulado_' + line[0].tarifa_id).text(precio_unidad_coste + " / " + precio_unidad)
$('#precio_total_manipulado_' + line[0].tarifa_id).val(parseFloat(line[0].total).toFixed(2))
$('#manipulado_margen_' + line[0].tarifa_id).val(parseFloat(line[0].margen).toFixed(2))
$('#manipulado_margen_' + line[0].tarifa_id).val(margen)
});
check_serv_manipulado_error()
yeniden(data[window.csrf_token]);
@ -1947,8 +2014,14 @@ async function actualizar_servicios(update_preimpresion=false){
.then(data => {
data.lines.forEach((line) => {
$('#precio_preimpresion_' + line[0].tarifa_id).val(parseFloat(line[0].total).toFixed(2))
$('#preimpresion_margen_' + line[0].tarifa_id).val(parseFloat(line[0].margen).toFixed(2))
var precio = parseFloat(line[0].total).toFixed(2)
var margen = parseFloat(line[0].margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
$('#coste_preimprecion_' + line[0].tarifa_id).text(coste)
$('#precio_preimpresion_' + line[0].tarifa_id).val(precio)
$('#preimpresion_margen_' + line[0].tarifa_id).val(margen)
});
check_serv_preimpresion_error()
yeniden(data[window.csrf_token]);
@ -1965,10 +2038,15 @@ async function actualizar_servicios(update_preimpresion=false){
})
.then(response => response.json())
.then(data => {
var precio = parseFloat(data[0].total).toFixed(2)
var margen = parseFloat(data[0].margen).toFixed(2)
var coste = (precio/(1+margen/100)).toFixed(2)
data.lines.forEach((line) => {
$('#precio_serviciosextra_' + line[0].tarifa_id).val(parseFloat(line[0].total).toFixed(2))
$('#serviciosextra_margen_' + line[0].tarifa_id).val(parseFloat(line[0].margen).toFixed(2))
$('#coste_servicioextra_' + line[0].tarifa_id).text(coste)
$('#precio_serviciosextra_' + line[0].tarifa_id).val(precio)
$('#serviciosextra_margen_' + line[0].tarifa_id).val(margen)
});
check_serv_preimpresion_error();
yeniden(data[window.csrf_token]);

View File

@ -129,6 +129,7 @@
<tr>
<th><?= lang('Presupuestos.id') ?></th>
<th><?= lang('Tarifapreimpresion.tarifapreimpresion') ?></th>
<th><?= lang('Tarifapreimpresion.coste') ?></th>
<th><?= lang('Presupuestos.precio') ?></th>
<th></th>
<th class="text-nowrap"><?= lang('Basic.global.Action') ?></th>
@ -246,6 +247,7 @@
<tr>
<th><?= lang('Presupuestos.id') ?></th>
<th><?= lang('Tarifaextra.tarifaextra') ?></th>
<th><?= lang('Tarifaextra.coste') ?></th>
<th><?= lang('Presupuestos.precio') ?></th>
<th></th>
<th class="text-nowrap"><?= lang('Basic.global.Action') ?></th>