diff --git a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
index 75ac450d..5039d115 100644
--- a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
+++ b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
@@ -1595,7 +1595,7 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$presupuestoServiciosExtraModel = model('App\Models\Presupuestos\PresupuestoServiciosExtraModel');
foreach ($presupuestoServiciosExtraModel->where('presupuesto_id', $presupuesto->id)->findAll() as $servicioExtra) {
$servicioExtra->presupuesto_id = $new_id;
- $presupuestoServiciosExtraModel->insert($preimpresion);
+ $presupuestoServiciosExtraModel->insert($servicioExtra);
}
$presupuestoDireccionesModel = model('App\Models\Presupuestos\PresupuestoDireccionesModel');
diff --git a/ci4/app/Views/themes/vuexy/form/facturas/_facturaLineasItems.php b/ci4/app/Views/themes/vuexy/form/facturas/_facturaLineasItems.php
index 9cd3136e..00412097 100644
--- a/ci4/app/Views/themes/vuexy/form/facturas/_facturaLineasItems.php
+++ b/ci4/app/Views/themes/vuexy/form/facturas/_facturaLineasItems.php
@@ -35,9 +35,15 @@
|
|
-
- | I.V.A.: |
- |
+
+ | IVA (4%): |
+ |
+ |
+ |
+
+
+ | IVA (21%): |
+ |
|
|
@@ -124,17 +130,26 @@ const actionBtns = function(data) {
const autoNumericSubtotal = new AutoNumeric('#subtotal-sum', 0, {
decimalPlaces: 2,
- digitGroupSeparator: ',',
- decimalCharacter: '.',
+ digitGroupSeparator: '.',
+ decimalCharacter: ',',
unformatOnSubmit: true,
decimalPlacesShownOnFocus: 2,
decimalPlacesShownOnBlur: 2,
});
-const autoNumericIVA = new AutoNumeric('#total-iva-sum', 0, {
+const autoNumericIVA_4 = new AutoNumeric('#total-iva-sum-4', 0, {
decimalPlaces: 2,
- digitGroupSeparator: ',',
- decimalCharacter: '.',
+ digitGroupSeparator: '.',
+ decimalCharacter: ',',
+ unformatOnSubmit: true,
+ decimalPlacesShownOnFocus: 2,
+ decimalPlacesShownOnBlur: 2,
+});
+
+const autoNumericIVA_21 = new AutoNumeric('#total-iva-sum-21', 0, {
+ decimalPlaces: 2,
+ digitGroupSeparator: '.',
+ decimalCharacter: ',',
unformatOnSubmit: true,
decimalPlacesShownOnFocus: 2,
decimalPlacesShownOnBlur: 2,
@@ -142,8 +157,8 @@ const autoNumericIVA = new AutoNumeric('#total-iva-sum', 0, {
const autoNumericTotal = new AutoNumeric('#total-sum', 0, {
decimalPlaces: 2,
- digitGroupSeparator: ',',
- decimalCharacter: '.',
+ digitGroupSeparator: '.',
+ decimalCharacter: ',',
unformatOnSubmit: true,
decimalPlacesShownOnFocus: 2,
decimalPlacesShownOnBlur: 2,
@@ -151,8 +166,8 @@ const autoNumericTotal = new AutoNumeric('#total-sum', 0, {
const autoNumericPendientePago = new AutoNumeric('#pendiente-pago', 0, {
decimalPlaces: 2,
- digitGroupSeparator: ',',
- decimalCharacter: '.',
+ digitGroupSeparator: '.',
+ decimalCharacter: ',',
unformatOnSubmit: true,
decimalPlacesShownOnFocus: 2,
decimalPlacesShownOnBlur: 2,
@@ -448,11 +463,38 @@ var tableLineas = $('#tableOfLineasFactura').DataTable({
const table = this.api();
const totalSubtotal = table.column(8).data().reduce((a, b) => parseFloat(a) + parseFloat(b), 0);
- const totalIVA = table.column(9).data().reduce((a, b) => parseFloat(a) + parseFloat(b), 0);
+
+ const data_table = table.rows().data();
+ const totalIVA_4 = data_table.reduce((sum, row) => {
+ if (parseInt(row['iva']) === 4) {
+ return sum + parseFloat(row['total_iva']) || 0;
+ }
+ return sum;
+ }, 0);
+ const totalIVA_21 = data_table.reduce((sum, row) => {
+ if (parseInt(row['iva']) === 21) {
+ return sum + parseFloat(row['total_iva']) || 0;
+ }
+ return sum;
+ }, 0);
+
const totalTotal = table.column(10).data().reduce((a, b) => parseFloat(a) + parseFloat(b), 0);
autoNumericSubtotal.set(totalSubtotal);
- autoNumericIVA.set(totalIVA);
+ autoNumericIVA_4.set(totalIVA_4);
+ if(totalIVA_4 == 0){
+ $('#total-iva-sum-4').closest('tr').addClass('d-none');
+ }
+ else{
+ $('#total-iva-sum-4').closest('tr').removeClass('d-none');
+ }
+ autoNumericIVA_21.set(totalIVA_21);
+ if(totalIVA_21 == 0){
+ $('#total-iva-sum-21').closest('tr').addClass('d-none');
+ }
+ else{
+ $('#total-iva-sum-21').closest('tr').removeClass('d-none');
+ }
autoNumericTotal.set(totalTotal);
var total_pagos = autoNumericTotalCobrado.getNumber();
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 55550d0b..6ef1a1c5 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php
@@ -190,6 +190,11 @@
dataType: 'json',
success:function(response){
+ if(response.error){
+ console.error(response.error);
+ return;
+ }
+
token=response.= csrf_token() ?>;
yeniden(token);
// redirect
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
index c597c3ce..1fe9218c 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
@@ -399,7 +399,9 @@ class PresupuestoAdminEdit {
self.tipo_impresion.val(response.data.tipo_impresion);
self.POD.val(response.data.POD);
- AutoNumeric.getAutoNumericElement($('#total_aceptado_revisado')[0]).set(response.data.total_aceptado_revisado);
+ const totalAceptadoRevisado = response.data.total_aceptado_revisado != null ?
+ response.data.total_aceptado_revisado : response.data.resumen.total_aceptado;
+ AutoNumeric.getAutoNumericElement($('#total_aceptado_revisado')[0]).set(totalAceptadoRevisado);
$('#aprobado_by_at').html(response.data.aprobado_by_at);
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
index f34c49d0..098b33cf 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
@@ -414,6 +414,9 @@ class Resumen {
if (total_aceptado_revisado && total_aceptado_revisado != 0) {
data.total_aceptado_revisado = total_aceptado_revisado;
}
+ else{
+ data.total_aceptado_revisado = data.total_aceptado;
+ }
return data;
}