diff --git a/ci4/app/Controllers/Facturacion/Facturas.php b/ci4/app/Controllers/Facturacion/Facturas.php
index b12c6506..e2755e8e 100755
--- a/ci4/app/Controllers/Facturacion/Facturas.php
+++ b/ci4/app/Controllers/Facturacion/Facturas.php
@@ -208,8 +208,13 @@ class Facturas extends \App\Controllers\BaseResourceController
['title' => lang("Facturas.facturaList"), 'route' => route_to('facturasList'), 'active' => true]
];
+ $userModel = model('App\Models\UserModel');
+ $factura->created_by = $userModel->getFullName($factura->user_created_id);
+ $factura->updated_by = $userModel->getFullName($factura->user_updated_id);
+ $factura->created_at_footer = $factura->created_at ? date(' H:i d/m/Y', strtotime($factura->created_at)) : '';
+ $factura->updated_at_footer = $factura->updated_at ? date(' H:i d/m/Y', strtotime($factura->updated_at)) : '';
$this->viewData['facturaEntity'] = $factura;
-
+
$this->viewData['boxTitle'] = lang('Basic.global.edit2') . ' ' . lang('Facturas.factura') . ' ' . lang('Basic.global.edit3');
return $this->displayForm(__METHOD__, $id);
diff --git a/ci4/app/Controllers/Pedidos/Pedido.php b/ci4/app/Controllers/Pedidos/Pedido.php
index 4cfa2a1d..864933e1 100755
--- a/ci4/app/Controllers/Pedidos/Pedido.php
+++ b/ci4/app/Controllers/Pedidos/Pedido.php
@@ -273,8 +273,8 @@ class Pedido extends \App\Controllers\BaseResourceController
$this->obtenerDatosFormulario($pedidoEntity);
- $this->viewData['pedidoEntity'] = $pedidoEntity;
+ $this->viewData['pedidoEntity'] = $pedidoEntity;
$this->viewData['boxTitle'] = lang('Basic.global.edit2') . ' ' . lang('Pedidos.moduleTitle') . ' ' . lang('Basic.global.edit3');
@@ -382,6 +382,12 @@ class Pedido extends \App\Controllers\BaseResourceController
$pedidoEntity->fecha_impresion_text = $pedidoEntity->fecha_impresion ? date('d/m/Y', strtotime($pedidoEntity->fecha_impresion)) : '';
$pedidoEntity->fecha_encuadernado_text = $pedidoEntity->fecha_encuadernado ? date('d/m/Y', strtotime($pedidoEntity->fecha_encuadernado)) : '';
$pedidoEntity->fecha_entrega_externo_text = $pedidoEntity->fecha_entrega_externo ? date('d/m/Y', strtotime($pedidoEntity->fecha_entrega_externo)) : '';
+
+ $userModel = model('App\Models\UserModel');
+ $pedidoEntity->created_by = $userModel->getFullName($pedidoEntity->user_created_id);
+ $pedidoEntity->updated_by = $userModel->getFullName($pedidoEntity->user_updated_id);
+ $pedidoEntity->created_at_footer = $pedidoEntity->created_at ? date(' H:i d/m/Y', strtotime($pedidoEntity->created_at)) : '';
+ $pedidoEntity->updated_at_footer = $pedidoEntity->updated_at ? date(' H:i d/m/Y', strtotime($pedidoEntity->updated_at)) : '';
}
public function get_xml_pedido($pedido_id)
{
diff --git a/ci4/app/Controllers/Presupuestos/Importadorpresupuestos.php b/ci4/app/Controllers/Presupuestos/Importadorpresupuestos.php
index 163cd0b0..9e2ed6c0 100644
--- a/ci4/app/Controllers/Presupuestos/Importadorpresupuestos.php
+++ b/ci4/app/Controllers/Presupuestos/Importadorpresupuestos.php
@@ -201,7 +201,7 @@ class Importadorpresupuestos extends \App\Controllers\BaseResourceController
'libroFresadoTapaDura' => 'Tapa Dura al Cromo Fresada',
'libroFresadoTapaBlanda' => 'Rústica Fresada',
'libroCosidoTapaDura' => 'Tapa Dura al Cromo Cosida Hilo',
- 'libroCosidoTapaBlanda' => 'Rústica Cosida Hilo vegetal',
+ 'libroCosidoTapaBlanda' => 'Rústica Cosido Hilo vegetal',
'libroEspiralTapaDura' => 'Espiral',
'libroGrapado' => 'Cosido a caballete 2 grapas'
];
diff --git a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
index 2fa7a3cf..7d6765ca 100644
--- a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
+++ b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
@@ -614,6 +614,14 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$data['resumen']['total_precio_unidad'] = $presupuesto->total_precio_unidad;
$data['resumen']['total_factor'] = is_numeric($presupuesto->total_factor) ? $presupuesto->total_factor : 0;
$data['resumen']['total_factor_ponderado'] = is_numeric($presupuesto->total_factor_ponderado) ? $presupuesto->total_factor_ponderado : 0;
+
+ $data['resumen']['iva_reducido'] = $presupuesto->iva_reducido;
+
+ $data['created_by'] = model('App\Models\UserModel')->getFullName($presupuesto->user_created_id);
+ $data['updated_by'] = model('App\Models\UserModel')->getFullName($presupuesto->user_update_id);
+ $data['created_at'] = date(' H:i d/m/Y', strtotime($presupuesto->created_at));
+ $data['updated_at'] = date(' H:i d/m/Y', strtotime($presupuesto->updated_at));
+
if ($presupuesto->estado_id == 2) {
$data['resumen']['total_aceptado'] = $presupuesto->total_aceptado;
}
diff --git a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php
index 5200ba84..e7741ab0 100755
--- a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php
+++ b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php
@@ -478,7 +478,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$direcciones = $reqData['direcciones'] ?? [];
- $tipo_impresion_id = intval($reqData['tipo_presupuesto_id'] ?? 0) == 0?
+ $tipo_impresion_id = intval($reqData['tipo_presupuesto_id'] ?? 0) == 0 ?
$this->getTipoImpresion($tipo, $cubierta['tipoCubierta']) : intval($reqData['tipo_presupuesto_id']);
$lomoRedondo = $cubierta['lomoRedondo'] ?? 0;
@@ -1002,7 +1002,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$direcciones = $reqData['direcciones'] ?? [];
- if($tipo != "")
+ if ($tipo != "")
$tipo_impresion_id = $this->getTipoImpresion($tipo, $cubierta['tipoCubierta']);
else
$tipo_impresion_id = $reqData['tipo_presupuesto_id'] ?? 0;
@@ -1087,18 +1087,27 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$errors = $resultado_presupuesto['errors'];
foreach ($errors as $error) {
if (!empty($error)) {
- return $this->respond([
- 'error' => $error,
- ]);
+ if ($this->request) {
+ return $this->respond([
+ 'error' => $error,
+ ]);
+ } else {
+ return $error;
+ }
}
}
} else if (isset($resultado_presupuesto['exception'])) {
- return $this->respond([
- 'error' => $resultado_presupuesto['exception'],
- 'file' => $resultado_presupuesto['file'],
- 'line' => $resultado_presupuesto['line'],
- ]);
+ if($this->request) {
+ return $this->respond([
+ 'error' => $resultado_presupuesto['exception'],
+ 'file' => $resultado_presupuesto['file'],
+ 'line' => $resultado_presupuesto['line'],
+ ]);
+ } else {
+ return $resultado_presupuesto['exception'];
+ }
}
+
// seleccionamos el peso de la tirada seleccionada
$peso_libro = $resultado_presupuesto['peso'][array_search($selected_tirada, $tirada)];
@@ -1893,14 +1902,14 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
return $current->precio < $previous->precio ? $current : $previous;
});
} else {
- if (count($tarifas_envio) > 0){
+ if (count($tarifas_envio) > 0) {
$tarifa_envio_final = $tarifas_envio[0];
}
}
$coste = $tarifa_envio_final->precio;
$margen = $tarifa_envio_final->margen;
- if(!isset($return_data['id'])){
+ if (!isset($return_data['id'])) {
$return_data['id'] = $tarifa_envio_final->id;
}
diff --git a/ci4/app/Controllers/Presupuestos/Presupuestotiradasalternativas.php b/ci4/app/Controllers/Presupuestos/Presupuestotiradasalternativas.php
index 616a6ef4..96d6c079 100644
--- a/ci4/app/Controllers/Presupuestos/Presupuestotiradasalternativas.php
+++ b/ci4/app/Controllers/Presupuestos/Presupuestotiradasalternativas.php
@@ -378,14 +378,16 @@ class Presupuestotiradasalternativas extends \App\Controllers\BaseResourceContro
$json_data_extra = json_decode($json_data_extra, true);
if (count($json_data_extra) > 0) {
$extra = new Presupuestoserviciosextra();
- $POD = (new \App\Models\Configuracion\ConfigVariableModel())->getVariable('POD')->value;
- $result = $extra->getServiciosExtra($json_data_extra, $reqData['tirada'], $POD);
+ $json_data_extra = array_map(function($item) {
+ return $item['tarifa_id'];
+ }, $json_data_extra);
+ $result = $extra->getServiciosExtra($json_data_extra);
if (count($result) > 0) {
foreach ($result as $servicio) {
- $servicios->coste += round(floatval($servicio->total), 2);
- $base = round(floatval($servicio->total / (1 + $servicio->margen / 100.0)), 2);
+ $servicios->coste += round(floatval($servicio->precio), 2);
+ $base = round(floatval($servicio->precio / (1 + floatval($servicio->margen) / 100.0)), 2);
$base = round(floatval($base / $datosPedido->tirada) , 2)* $datosPedido->tirada;
- $servicios->margen += round(floatval($servicio->total - $base), 2);
+ $servicios->margen += round(floatval($servicio->precio - $base), 2);
}
}
}
diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php
index d8e63cb1..3f73d4f5 100755
--- a/ci4/app/Language/es/Presupuestos.php
+++ b/ci4/app/Language/es/Presupuestos.php
@@ -264,6 +264,9 @@ return [
'totalAceptado' => 'Total aceptado',
+ 'created_by_at' => 'Creado: ',
+ 'updated_by_at' => 'Actualizado: ',
+
// Placeholders
'formatoLibro' => "Formato libro",
'selectCliente' => "Seleccione cliente",
diff --git a/ci4/app/Views/themes/vuexy/form/facturas/viewFacturaForm.php b/ci4/app/Views/themes/vuexy/form/facturas/viewFacturaForm.php
index 2fbf6ea1..297cb26e 100644
--- a/ci4/app/Views/themes/vuexy/form/facturas/viewFacturaForm.php
+++ b/ci4/app/Views/themes/vuexy/form/facturas/viewFacturaForm.php
@@ -61,6 +61,22 @@
]
) ?>
+
+
+
+ = lang("Presupuestos.created_by_at") ?>
+ = $facturaEntity->created_by ?>,
+ = $facturaEntity->created_at_footer ?>
+
+
+
+
+ = lang("Presupuestos.updated_by_at") ?>
+ = $facturaEntity->updated_by ?>,
+
+
+
+
diff --git a/ci4/app/Views/themes/vuexy/form/pedidos/_cabeceraItems.php b/ci4/app/Views/themes/vuexy/form/pedidos/_cabeceraItems.php
index d85b0047..3f255b31 100644
--- a/ci4/app/Views/themes/vuexy/form/pedidos/_cabeceraItems.php
+++ b/ci4/app/Views/themes/vuexy/form/pedidos/_cabeceraItems.php
@@ -251,7 +251,23 @@ $("#fecha_entrega_externo").flatpickr({
estado !== 'finalizado' && $pedidoEntity->estado !== 'cancelado'): ?>
$('.buton-estado').on('click', function() {
- var id = =$pedidoEntity->id ?>;
+ Swal.fire({
+ title: '¿Estás seguro?',
+ text: "Esta acción no se puede deshacer",
+ icon: 'warning',
+ showCancelButton: true,
+ confirmButtonColor: '#3085d6',
+ cancelButtonColor: '#d33',
+ confirmButtonText: 'Sí',
+ cancelButtonText: 'Cancelar',
+ customClass: {
+ confirmButton: 'btn btn-primary me-1',
+ cancelButton: 'btn btn-label-secondary'
+ },
+ buttonsStyling: false
+ }).then((result) => {
+ if (result.isConfirmed) {
+ var id = =$pedidoEntity->id ?>;
var estado = $(this).attr('id').split('_')[1];
var url = '= route_to('cambiarEstadoPedido') ?>';
var data = {
@@ -273,6 +289,10 @@ $('.buton-estado').on('click', function() {
}
}
});
+ }
+ }).catch((err) => {
+ console.log(err);
+ });
});
diff --git a/ci4/app/Views/themes/vuexy/form/pedidos/viewPedidoForm.php b/ci4/app/Views/themes/vuexy/form/pedidos/viewPedidoForm.php
index a0a9bf5f..d9c4e92c 100644
--- a/ci4/app/Views/themes/vuexy/form/pedidos/viewPedidoForm.php
+++ b/ci4/app/Views/themes/vuexy/form/pedidos/viewPedidoForm.php
@@ -36,7 +36,22 @@
-
+
+
+
+
+
+ = lang("Presupuestos.created_by_at") ?>
+ = $pedidoEntity->created_by ?>,
+ = $pedidoEntity->created_at_footer ?>
+
+
+
+
+ = lang("Presupuestos.updated_by_at") ?>
+ = $pedidoEntity->updated_by ?>,
+
+
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
index 4eb6c8a2..028d0fe5 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
@@ -2,14 +2,14 @@
+ data-bs-parent="#accordionResumen">
@@ -36,9 +36,9 @@
Coste de envío
-
+
Precio de envío
-
+
Margen envío
@@ -79,22 +79,31 @@
+
+
+
+
+
estado_id == 2): ?>
-
-
-
-
-
-
+
+
\ No newline at end of file
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php
index 5d95c2f2..5a2e0ec7 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php
@@ -69,6 +69,23 @@
= anchor(route_to("presupuestoAdminList", $tipo_impresion_id), lang("Basic.global.Cancel"), ["class" => "btn btn-secondary float-start",]) ?>
+
+
+
+
+ = lang("Presupuestos.created_by_at") ?>
+ ,
+
+
+
+
+
+ = lang("Presupuestos.updated_by_at") ?>
+ ,
+
+
+
+
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/importador/viewImportadorPresupuestos.php b/ci4/app/Views/themes/vuexy/form/presupuestos/importador/viewImportadorPresupuestos.php
index c4ca1e37..2d79f7e7 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/importador/viewImportadorPresupuestos.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/importador/viewImportadorPresupuestos.php
@@ -1,7 +1,6 @@
= $this->include('themes/_commonPartialsBs/datatables') ?>
= $this->include("themes/_commonPartialsBs/select2bs5") ?>
= $this->include("themes/_commonPartialsBs/sweetalert") ?>
-
= $this->extend('themes/vuexy/main/defaultlayout') ?>
@@ -370,33 +369,31 @@
-
+
-
+
-
+
-
-
-
+
+
+
- = $this->endSection() ?>
+ = $this->endSection() ?>
+ = $this->section('css') ?>
+
+ = $this->endSection() ?>
-
- = $this->section('css') ?>
-
- = $this->endSection() ?>
-
-
- = $this->section('additionalExternalJs') ?>
-
- = $this->endSection() ?>
\ No newline at end of file
+ = $this->section('additionalExternalJs') ?>
+
+
+ = $this->endSection() ?>
\ No newline at end of file
diff --git a/httpdocs/assets/js/safekat/pages/importadorPresupuestos/importador.js b/httpdocs/assets/js/safekat/pages/importadorPresupuestos/importador.js
index 30667892..5b76c33f 100644
--- a/httpdocs/assets/js/safekat/pages/importadorPresupuestos/importador.js
+++ b/httpdocs/assets/js/safekat/pages/importadorPresupuestos/importador.js
@@ -70,7 +70,7 @@ class Importador {
}
);
-
+
this.openBtn = $('#openOld');
this.initImport = $('#initImport');
this.makeImport = $('#makeImport');
@@ -83,7 +83,7 @@ class Importador {
$(document).on('select2:open', () => {
document.querySelector('.select2-search__field').focus();
});
-
+
this.cliente.init();
this.presupuesto.init();
this.encuadernacion.init();
@@ -126,7 +126,7 @@ class Importador {
this.makeImport.on('click', this.importPresupuesto.bind(this));
}
- importPresupuesto(){
+ importPresupuesto() {
if ($("#clienteId").val() != '' && $("#presupuesto").val() != '') {
let data = this.collectData();
@@ -137,11 +137,45 @@ class Importador {
(response) => {
if (response.success) {
const urlObj = new URL(window.location.href);
- window.open(`${urlObj.origin}` + '/presupuestoadmin/edit/' + response.id);
+ Swal.fire({
+ title: 'Atención!',
+ text: 'Esto es una importación básica, por favor revisa los datos para comprobar que no hay errores. ' +
+ 'Tenga en cuenta que no todos los servicios se pueden importar.',
+ icon: 'warning',
+ showCancelButton: false,
+ confirmButtonColor: '#3085d6',
+ confirmButtonText: 'Ok',
+ customClass: {
+ confirmButton: 'btn btn-primary me-1',
+ },
+ buttonsStyling: false
+ }).then(() => {
+ window.open(`${urlObj.origin}` + '/presupuestoadmin/edit/' + response.id);
+ });
+ }
+ else {
+ Swal.fire({
+ title: 'Error',
+ text: 'No ha sido posible importar el presupuesto. Póngase en contacto con el administrador.',
+ icon: 'error',
+ customClass: {
+ confirmButton: 'btn btn-primary'
+ },
+ buttonsStyling: false
+ });
+
}
},
(error) => {
- console.error(error);
+ Swal.fire({
+ title: 'Error',
+ text: 'Ha habido un error al intentar importar el presupuesto. Asegúrese de que están todos los campos rellenos.',
+ icon: 'error',
+ customClass: {
+ confirmButton: 'btn btn-primary'
+ },
+ buttonsStyling: false
+ });
}
).post();
}
@@ -154,11 +188,11 @@ class Importador {
data.id = $("#presupuesto").val();
data.cliente_id = $("#clienteId").val();
-
+
data.paginas = $('#paginas').val();
data.tirada = $('#tirada').val();
data.papel_formato_id = $('#tamanio').val();
- data.papel_formato_personalizado = $('#papelFormatoPersonalizado').prop('checked')?1:0;
+ data.papel_formato_personalizado = $('#papelFormatoPersonalizado').prop('checked') ? 1 : 0;
data.papel_formato_ancho = $('#papelFormatoAncho').val();
data.papel_formato_alto = $('#papelFormatoAlto').val();
@@ -166,9 +200,9 @@ class Importador {
data.isHq = $('#hq').val();
data.paginas_bn = $('#compPaginasNegro').val();
- data.papel_bn = this.compPapelNegroSelected.getVal();
+ data.papel_bn = this.compPapelNegroSelected.getVal();
data.gramaje_bn = $('#compGramajeNegro').val();
-
+
data.paginas_color = $('#compPaginasColor').val();
data.papel_color = this.compPapelColorSelected.getVal();
data.gramaje_color = $('#compGramajeColor').val();
@@ -186,20 +220,20 @@ class Importador {
data.acabado_sobrecubierta = this.acabadosSobrecubierta.getVal();
data.servicios = {
- marcapaginas: $('#marcapaginas').prop('checked')?1:0,
+ marcapaginas: $('#marcapaginas').prop('checked') ? 1 : 0,
serviciosExtra: []
};
-
- if($('#ferro').prop('checked')){
+
+ if ($('#ferro').prop('checked')) {
data.servicios.serviciosExtra.push(30);
}
- if($('#ferroDigital').prop('checked')){
+ if ($('#ferroDigital').prop('checked')) {
data.servicios.serviciosExtra.push(29);
}
- if($('#prototipo').prop('checked')){
+ if ($('#prototipo').prop('checked')) {
data.servicios.serviciosExtra.push(9);
}
-
+
return data;
}
@@ -242,7 +276,6 @@ class Importador {
fillInitialData(data) {
- console.log(data);
$('#paginas').val(data.datosGenerales.paginas);
$('#tirada').val(data.datosGenerales.tirada);
if (data.datosGenerales.papel_formato_personalizado) {
@@ -386,8 +419,8 @@ class Importador {
$('#prototipo').prop('checked', false);
}
}
+ this.makeImport.prop('disabled', false);
}
-
}
document.addEventListener('DOMContentLoaded', function () {
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
index 11511be1..60ffaa21 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
@@ -370,6 +370,11 @@ class PresupuestoAdminEdit {
self.tipo_impresion.val(response.data.tipo_impresion);
self.POD.val(response.data.POD);
+ $('#created_by').html(response.data.created_by);
+ $('#updated_by').html(response.data.updated_by);
+ $('#created_at').html(response.data.created_at);
+ $('#updated_at_footer').html(response.data.updated_at);
+
self.calcularPresupuesto = false;
self.datosGenerales.cargarDatos(response.data.datosGenerales);
@@ -392,6 +397,7 @@ class PresupuestoAdminEdit {
self.tiradasAlternativas.cargar(response.data.tiradasAlternativas);
self.resumen.cargar(response.data.resumen);
+
self.datosLibro.calcular_mermas();
setTimeout(() => {
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
index 08d0b3f2..cbc1c042 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
@@ -56,6 +56,8 @@ class Resumen {
$("#totalAceptado").val(resumen.total_aceptado.toString().replace('.', ',') + "€" || "0€");
}
+ $('#ivaReducido').val(resumen.iva_reducido ? 1: 0);
+
}
update() {
@@ -208,9 +210,10 @@ class Resumen {
$('#tableOfServiciosPreimpresion').DataTable().rows().every(function (rowIdx, tableLoop, rowLoop) {
let rowData = this.data();
let total_servicio = self.roundToTwoDecimals(parseFloat(rowData.precio));
- let coste_servicio = self.roundToTwoDecimals(parseFloat(rowData.coste));
+ let base = (parseFloat(rowData.precio / (1 + parseFloat(rowData.margen) / 100.0)).toFixed(2));
+ base = self.roundToTwoDecimals(base / parseInt($('#tirada').val()))*parseInt($('#tirada').val());
+ margenServicios += self.roundToTwoDecimals(parseFloat(total_servicio - base));
totalServicios += total_servicio
- margenServicios += total_servicio - coste_servicio;
});
}
@@ -218,9 +221,10 @@ class Resumen {
$('#tableOfServiciosExtra').DataTable().rows().every(function (rowIdx, tableLoop, rowLoop) {
let rowData = this.data();
let total_servicio = self.roundToTwoDecimals(parseFloat(rowData.precio));
- let coste_servicio = self.roundToTwoDecimals(parseFloat(rowData.margen));
- totalServicios += total_servicio
- margenServicios += total_servicio - coste_servicio;
+ let base = (parseFloat(rowData.precio / (1 + parseFloat(rowData.margen) / 100.0)).toFixed(2));
+ base = self.roundToTwoDecimals(base / parseInt($('#tirada').val()))*parseInt($('#tirada').val());
+ margenServicios += self.roundToTwoDecimals(parseFloat(total_servicio - base));
+ totalServicios += total_servicio;
});
}
@@ -345,7 +349,9 @@ class Resumen {
'total_precio_unidad': $('#precioUnidadPresupuesto').text().replace('€', '').replace(',', '.'),
'total_factor': $('#factor').text().replace(/,/g, '.'),
- 'total_factor_ponderado': $('#factor_ponderado').text().replace(/,/g, '.')
+ 'total_factor_ponderado': $('#factor_ponderado').text().replace(/,/g, '.'),
+
+ 'iva_reducido': $('#ivaReducido').val()
};
if($('#confirmar_presupuesto').prop('checked')){
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/tiradasAlternativas.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/tiradasAlternativas.js
index 85ad2b67..cb35c80e 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/tiradasAlternativas.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/tiradasAlternativas.js
@@ -172,7 +172,7 @@ class TiradasAlernativas {
let datos = {
id: id,
- tirada: this.tirada.val(),
+ tirada: tirada,
peso_libro: this.get_peso_libro(),
tirada_base: $('#tirada').val(),
paginas: $('#paginas').val(),
@@ -224,19 +224,7 @@ class TiradasAlernativas {
margen_servicios += data.servicios.margen;
}
-
- $('#tableOfServiciosPreimpresion').DataTable().rows().every(function (rowIdx, tableLoop, rowLoop) {
- var rowData = this.data();
- costes_servicios += parseFloat(rowData.coste);
- margen_servicios += parseFloat(rowData.precio) - parseFloat(rowData.coste);
- });
-
- $('#tableOfServiciosExtra').DataTable().rows().every(function (rowIdx, tableLoop, rowLoop) {
- var rowData = this.data();
- costes_servicios += parseFloat(rowData.coste);
- margen_servicios += parseFloat(rowData.precio) - parseFloat(rowData.coste);
- });
-
+
if (data.envios) {
coste_envio += data.envios.coste;
margen_envio += data.envios.margen;