From 6de72804a7d788c592f5b71b9355cc08e78533c2 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 10 Jul 2024 17:14:41 -0700 Subject: [PATCH] Pago Acreedores --- Bancos/PagoAcreedor.aspx | 59 ++++++++++++++++++++++++++++++++++--- Bancos/PagoAcreedor.aspx.cs | 45 ++++++++++++++++++++++++++-- 2 files changed, 97 insertions(+), 7 deletions(-) diff --git a/Bancos/PagoAcreedor.aspx b/Bancos/PagoAcreedor.aspx index 704c2ed38..56deee488 100644 --- a/Bancos/PagoAcreedor.aspx +++ b/Bancos/PagoAcreedor.aspx @@ -272,7 +272,8 @@
- + +
@@ -284,7 +285,7 @@
- +
@@ -637,7 +638,21 @@ txt.value = ""; } - $get('TxtImporte').value = FormatoNumero(SumaValores(CveMonedaPago), 2); + let Suma = SumaValores(CveMonedaPago); + let TxtDDImporte; + if ($('#TxtDDImporte').length > 0) { + TxtDDImporte = parseFloat($('#TxtDDImporte').val().replace(/,/g, '')); + } else { + TxtDDImporte = 0; // Asigna un valor por defecto si el elemento no existe + } + + //let TxtDDImporte = parseFloat($('#TxtDDImporte').val().replace(/,/g, '')); + + if (!isNaN(TxtDDImporte)) { + Suma = Suma + TxtDDImporte; + } + + $get('TxtImporte').value = FormatoNumero(Suma, 2); } function FnCambia(chk, txt, saldo, op, text, CveMonedaPago) { @@ -653,7 +668,21 @@ txt.value = saldo; alert(text); } - var Suma = SumaValores(CveMonedaPago); + + let Suma = SumaValores(CveMonedaPago); + + //let TxtDDImporte = parseFloat($('#TxtDDImporte').val().replace(/,/g, '')); + let TxtDDImporte; + if ($('#TxtDDImporte').length > 0) { + TxtDDImporte = parseFloat($('#TxtDDImporte').val().replace(/,/g, '')); + } else { + TxtDDImporte = 0; // Asigna un valor por defecto si el elemento no existe + } + + if (!isNaN(TxtDDImporte) ) { + Suma = Suma + TxtDDImporte; + } + $get('TxtImporte').value = FormatoNumero(Suma, 2); if ($get('TxtTotal') != null) { @@ -720,6 +749,28 @@ return Importe } } + + + function validaDeudoresDiversos(CveMoneda) { + + $get('TxtImporte').value = FormatoNumero(SumaValores(CveMoneda), 2) + + let TxtImporte = parseFloat($get('TxtImporte').value.replace(/,/g, '')); + let TxtDDImporte = parseFloat($get('TxtDDImporte').value.replace(/,/g, '')); + + + + if (isNaN(TxtImporte) || isNaN(TxtDDImporte)) { + return; + } + let resultado = TxtImporte + TxtDDImporte; + + $get('TxtImporte').value = resultado.toFixed(2); + // $('#TxtDDImporte').val(TxtDDImporte.toFixed(2)); + + + } + diff --git a/Bancos/PagoAcreedor.aspx.cs b/Bancos/PagoAcreedor.aspx.cs index d72929c9c..dbae5d93f 100644 --- a/Bancos/PagoAcreedor.aspx.cs +++ b/Bancos/PagoAcreedor.aspx.cs @@ -6,6 +6,7 @@ using System.Text; using System.Web; using System.Web.UI.WebControls; using static Extensiones.ModExtensiones; +using static Microsoft.EntityFrameworkCore.DbLoggerCategory; public partial class Bancos_PagoAcreedor : ClsPaginas { @@ -140,6 +141,10 @@ public partial class Bancos_PagoAcreedor : ClsPaginas Folio = bancos.GetNextFolio(DdlCuenta.SelectedValue.ToEntero(), DdlTipoTransaccion.SelectedValue.ToEntero()); bancos.Dispose(); TxtFolio.Text = Folio.ToString(); + + + TxtDDImporte.Attributes.Add("onblur",$"validaDeudoresDiversos({CveMonedaCuentaPago});FormatoMoneda(this);"); + UpDatos.Update(); } protected void DdlProveedores_selectedindexchange(object sender, EventArgs e) @@ -345,12 +350,13 @@ public partial class Bancos_PagoAcreedor : ClsPaginas MsgError = "No se pudo insertar concepto de diferencia cambiaria"; } - if (ImporteComision != 0 && MsgError == "") + if (ImporteComision != 0 && MsgError == "" && DdlOtrosPagos.SelectedValue == "2" ) { + ImporteComisionMN = (ImporteComision * TCPago).RoundSQL(); int tTipoConceptoOtro = 255; - if (DdlOtrosPagos.SelectedValue == "3") tTipoConceptoOtro = 43; //deudores diversos + //if (DdlOtrosPagos.SelectedValue == "3") tTipoConceptoOtro = 43; //deudores diversos if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoComision, ImporteComision, ImporteComisionMN, tTipoConceptoOtro, Ref, Conc, CveIE: CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(),CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), TipoCambio: TC, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero())) { MsgError = "No se pudo insertar concepto de pago acreedor"; @@ -360,6 +366,39 @@ public partial class Bancos_PagoAcreedor : ClsPaginas } } + if (TxtDDImporte.Text.ToDecimal() != 0 && MsgError == "" && DdlOtrosPagos.SelectedValue == "3") + { + ImporteComision = TxtDDImporte.Text.ToDecimal(); + ImporteComisionMN = ImporteComision; + + if (TxtDDImporte.Text.ToDecimal() < 0) + { + TipoMovtoComision = true; + ImporteComision = ImporteComision * -1; + ImporteComisionMN = ImporteComisionMN * -1; + } + else + { + TipoMovtoComision = false; + } + + //Decimal TC = get_GlobalTipoCambio(TxtFechaDocumento.Text.ToDate()).ToDecimal(); + //int tCveMoneda = get_GlobalDTBancosCuentas(-1, DdlCuenta.SelectedValue.ToEntero()).FiltroPrimeroValor("CveMoneda").ToEntero(); + //CveMonedaPago + + ImporteComision = ImporteComision.RoundSQL(); + ImporteComisionMN = (ImporteComision * TCPago).RoundSQL() ; + + ImporteComisionMN = (ImporteComision * TCPago).RoundSQL(); + + + int tTipoConceptoOtro = 43; //deudores diversos + if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoComision, ImporteComision, ImporteComisionMN, tTipoConceptoOtro, Ref, Conc, CveIE: CveIE, CveProveedor: DdlProveedores.SelectedValue.ToEntero(), TipoCambio: TCPago, TipoCambioPago: TCPago, CveSubProyecto: DdlSubProyectoPago.SelectedValue.ToEntero())) + { + MsgError = "No se pudo insertar concepto de pago acreedor"; + } + } + if (CveMonedaPago != 1) { ImporteComplementaria = (ImporteBanco * TCPago - ImporteBanco).RoundSQL(); @@ -767,7 +806,7 @@ public partial class Bancos_PagoAcreedor : ClsPaginas divDD.Visible = false; if (DdlOtrosPagos.SelectedValue == "2") { - TxtOtrosImportes.Visible = true; + TxtOtrosImportes.Visible = true; TxtTotal.Visible = true; GvMovAcreedor.Columns[8].Visible = true; TxtOtrosImportes.Text = "";