FERRETERA. Descuentos, al especificarlos, el cálculo corregirlo, el IVA no mostrarlo.

This commit is contained in:
2024-02-22 17:37:18 -07:00
parent 24b46e5540
commit 272882dfde
2 changed files with 48 additions and 20 deletions

View File

@@ -24025,24 +24025,36 @@ Partial Class Ventas
ElseIf e.CommandName = "Descuento" Then
LblSubtotalDescPS.Text = ""
LblTotalDescPS.Text = ""
LblTotalFinalDescPS.Text = ""
LblTituloDesc.Text = "Descuento"
HdnConsecPS.Value = "-1"
HdnTotalCompra.Value = ""
TxtPorPS.Text = ""
LblIVADescPS.Text = ""
LblUtilidadPorcentaje.Text = ""
HdnIVADescPS.Value = "0"
Dim GvRow As GridViewRow = GvPS.Rows(e.CommandArgument.ToString().ToEntero())
LblTituloDesc.Text = $"Descuento: {GvRow.DataKey("PS")}"
HdnConsecPS.Value = GvRow.DataKey("Consec")
LblSubtotalDescPS.Text = (GvRow.DataKey("Total").ToDecimal()).FormatoNumero()
LblTotalDescPS.Text = (GvRow.DataKey("Total").ToDecimal() + GvRow.DataKey("ImporteIVA").ToDecimal()).FormatoNumero()
LblTotalFinalDescPS.Text = (GvRow.DataKey("Total").ToDecimal() + GvRow.DataKey("ImporteIVA").ToDecimal()).FormatoNumero()
LblIVADescPS.Text = GvRow.DataKey("ImporteIVA").FormatoNumero()
HdnIVADescPS.Value = GvRow.DataKey("IVA").FormatoNumero()
Using ObjPS As New ClsProductosServicios
Dim PrecioCompra = ObjPS.GetUltimoPrecioCompra(UsuarioActual.CveEmpresa, GvRow.DataKey("CvePS").ToEntero())
If PrecioCompra > 0 Then
HdnTotalCompra.Value = (PrecioCompra * GvRow.DataKey("Cantidad").ToDouble() * 1.16).ToString()
Dim TotalCompra = (PrecioCompra * GvRow.DataKey("Cantidad").ToDouble() * (1 + GvRow.DataKey("IVA").ToDecimal()))
HdnTotalCompra.Value = TotalCompra.ToString()
LblPrecioCompra.Text = $"PU Compra: {(PrecioCompra).FormatoNumero(2)}"
Dim TotalRedondeado = GvRow.DataKey("Total").ToDecimal() + GvRow.DataKey("ImporteIVA").ToDecimal()
Dim PorUtilidad = ((TotalRedondeado - TotalCompra) / TotalRedondeado) * 100D
LblUtilidadPorcentaje.Text = PorUtilidad.FormatoNumero(2)
End If
End Using
@@ -37003,11 +37015,22 @@ Partial Class Ventas
If HdnDescPS.Value.ToEntero() > 0 Then
Dim RowUpdate As DataRow = TmpDT.Select($"Consec = {HdnConsecPS.Value}").FirstOrDefault()
If RowUpdate IsNot Nothing Then
RowUpdate("Descuento") = HdnDescPS.Value.ToDecimal()
RowUpdate("ImporteIVA") = LblIVADescPS.Text.ToDecimal()
If HdnDescPS.Value.ToDecimal().RoundSQL(2) < RowUpdate("Total").ToString().ToDecimal() Then
RowUpdate("Descuento") = HdnDescPS.Value.ToDecimal().RoundSQL(2)
Dim TotalCalculableImpuestos = (RowUpdate("Cantidad").ToString().ToDecimal * RowUpdate("PU").ToString().ToDecimal) - RowUpdate("Descuento").ToString().ToDecimal()
Dim TotalCalculableImpuestosIVA As Decimal = (TotalCalculableImpuestos * (1 + RowUpdate("PorcentajeIEPS").ToString().ToDecimal))
Dim ImporteIVA = (RowUpdate("PorcentajeIVA").ToString().ToDouble * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
RowUpdate("ImporteIVA") = ImporteIVA
CalculaTotalesVenta()
RegistraScript("$('#ModalDescPS').modal('hide');")
Else
Alert("El descuento no puede ser mayor o igual al total.", TipoMensaje.MsgAdvertencia)
End If
CalculaTotalesVenta()
RegistraScript("$('#ModalDescPS').modal('hide');")
End If
Else
Alert("No se pudo aplicar el descuento", TipoMensaje.MsgAdvertencia)