ProveedoresAbonar Descuento escalonado
This commit is contained in:
@@ -368,108 +368,131 @@
|
|||||||
</asp:UpdatePanel>
|
</asp:UpdatePanel>
|
||||||
|
|
||||||
<asp:UpdatePanel ID="UPCompras" runat="server" UpdateMode="Conditional">
|
<asp:UpdatePanel ID="UPCompras" runat="server" UpdateMode="Conditional">
|
||||||
<ContentTemplate>
|
<ContentTemplate>
|
||||||
<asp:GridView ID="GvCxP" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Cuentas X Pagar Pendientes"
|
<asp:GridView ID="GvCxP" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Cuentas X Pagar Pendientes"
|
||||||
DataKeyNames="CveCompra,ImporteProgramo,Saldo,SubTotal,IVA,IVADeducible,IVANoDeducible,IEPS,RetIVA,RetISR,Total,UUID,RFC,CveFactura,SerieFolio,Descripcion,CvePrePoliza,Fecha,EstatusInventario,CveProveedor,TipoCambio,TipoCambioOriginal, CveMoneda,CveRetIVAConcepto,IVAPorPagar,IVAPorPagarDeducible,IVAPorPagarNoDeducible,IEPSPorPagar,CveRetISRConcepto,PorcentajeIVA,CveTipoConcepto,CveSubProyecto,TotalOriginal,EsImportacion,NoDeducible"
|
DataKeyNames="CveCompra,ImporteProgramo,Saldo,SubTotal,IVA,IVADeducible,IVANoDeducible,IEPS,RetIVA,RetISR,Total,UUID,RFC,CveFactura,SerieFolio,Descripcion,CvePrePoliza,Fecha,EstatusInventario,CveProveedor,TipoCambio,TipoCambioOriginal, CveMoneda,CveRetIVAConcepto,IVAPorPagar,IVAPorPagarDeducible,IVAPorPagarNoDeducible,IEPSPorPagar,CveRetISRConcepto,PorcentajeIVA,CveTipoConcepto,CveSubProyecto,TotalOriginal,EsImportacion,NoDeducible"
|
||||||
Width="100%" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" Style="text-align: center;" GridLines="None">
|
Width="100%" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" Style="text-align: center;" GridLines="None">
|
||||||
<Columns>
|
<Columns>
|
||||||
<asp:TemplateField>
|
<%-- 0 --%>
|
||||||
<HeaderTemplate></HeaderTemplate>
|
<asp:TemplateField>
|
||||||
<ItemTemplate>
|
<HeaderTemplate></HeaderTemplate>
|
||||||
<asp:CheckBox ID="Chk" runat="server"></asp:CheckBox>
|
<ItemTemplate>
|
||||||
</ItemTemplate>
|
<asp:CheckBox ID="Chk" runat="server"></asp:CheckBox>
|
||||||
</asp:TemplateField>
|
</ItemTemplate>
|
||||||
<asp:TemplateField ItemStyle-Width="115px">
|
</asp:TemplateField>
|
||||||
<HeaderTemplate>Factura</HeaderTemplate>
|
<%-- 1 --%>
|
||||||
<ItemTemplate>
|
<asp:TemplateField ItemStyle-Width="115px">
|
||||||
<asp:HyperLink ID="HplF" CssClass="Texto" NavigateUrl='<%# Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}")%>' Text='<%# Eval("SerieFolio")%>' runat="server"></asp:HyperLink>
|
<HeaderTemplate>Factura</HeaderTemplate>
|
||||||
</ItemTemplate>
|
<ItemTemplate>
|
||||||
</asp:TemplateField>
|
<asp:HyperLink ID="HplF" CssClass="Texto" NavigateUrl='<%# Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}")%>' Text='<%# Eval("SerieFolio")%>' runat="server"></asp:HyperLink>
|
||||||
<%--<asp:HyperLinkField DataNavigateUrlFields="CveCompra" DataNavigateUrlFormatString="/Compras/Compras.aspx?CveCompra={0}" DataTextField="SerieFolio" HeaderText="Factura" ControlStyle-CssClass="Texto" />--%>
|
</ItemTemplate>
|
||||||
<asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<HeaderTemplate>Aplica NC</HeaderTemplate>
|
<%-- 2 --%>
|
||||||
<ItemTemplate>
|
<asp:TemplateField>
|
||||||
<asp:HyperLink ID="HplNC" Visible='<%# Eval("AplicaNotaCredito").ToString = "True"%>' ToolTip="Aplica Nota de Crédito" ImageUrl="/Imagenes/flag_blue.png" NavigateUrl='<%# Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}")%>' runat="server"></asp:HyperLink>
|
<HeaderTemplate>Aplica NC</HeaderTemplate>
|
||||||
</ItemTemplate>
|
<ItemTemplate>
|
||||||
</asp:TemplateField>
|
<asp:HyperLink ID="HplNC" Visible='<%# Eval("AplicaNotaCredito").ToString = "True"%>' ToolTip="Aplica Nota de Crédito" ImageUrl="/Imagenes/flag_blue.png" NavigateUrl='<%# Eval("CveCompra", "/Compras/Compras.aspx?CveCompra={0}")%>' runat="server"></asp:HyperLink>
|
||||||
<asp:TemplateField HeaderText="Alm." ItemStyle-Width="10%" Visible="false">
|
</ItemTemplate>
|
||||||
<ItemTemplate>
|
</asp:TemplateField>
|
||||||
<asp:Label data-toggle="tooltip" data-html="true" Text='' ID="LbEstatusInv" runat="server" />
|
<%-- 3 --%>
|
||||||
</ItemTemplate>
|
<asp:TemplateField HeaderText="Alm." ItemStyle-Width="10%" Visible="false">
|
||||||
</asp:TemplateField>
|
<ItemTemplate>
|
||||||
<asp:TemplateField>
|
<asp:Label data-toggle="tooltip" data-html="true" Text='' ID="LbEstatusInv" runat="server" />
|
||||||
<HeaderTemplate>Descripción</HeaderTemplate>
|
</ItemTemplate>
|
||||||
<ItemTemplate>
|
</asp:TemplateField>
|
||||||
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Descripcion") %>'></asp:Literal>
|
<%-- 4 --%>
|
||||||
</ItemTemplate>
|
<asp:TemplateField>
|
||||||
<ItemStyle HorizontalAlign="Left" />
|
<HeaderTemplate>Descripción</HeaderTemplate>
|
||||||
</asp:TemplateField>
|
<ItemTemplate>
|
||||||
<asp:TemplateField>
|
<asp:Literal ID="LtlDescripcion" runat="server" Text='<%# Eval("Descripcion") %>'></asp:Literal>
|
||||||
<HeaderTemplate>Fecha Compra</HeaderTemplate>
|
|
||||||
<ItemTemplate>
|
</ItemTemplate>
|
||||||
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}") %>'></asp:Literal>
|
<ItemStyle HorizontalAlign="Left" />
|
||||||
</ItemTemplate>
|
</asp:TemplateField>
|
||||||
</asp:TemplateField>
|
<%-- 5 --%>
|
||||||
<asp:TemplateField>
|
<asp:TemplateField>
|
||||||
<HeaderTemplate>Vencimiento</HeaderTemplate>
|
<HeaderTemplate>Fecha Compra</HeaderTemplate>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Literal ID="LtlFechaVenci" runat="server" Text='<%# Eval("FechaVencimiento", "{0:d}") %>'></asp:Literal>
|
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("Fecha", "{0:d}") %>'></asp:Literal>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<asp:TemplateField>
|
<%-- 6 --%>
|
||||||
<HeaderTemplate>Días Vencidos</HeaderTemplate>
|
<asp:TemplateField>
|
||||||
<ItemTemplate>
|
<HeaderTemplate>Vencimiento</HeaderTemplate>
|
||||||
<asp:Literal ID="LtlDiasVencido" runat="server" Text='<%# Eval("DiasVencidos", "{0}") %>'></asp:Literal>
|
<ItemTemplate>
|
||||||
</ItemTemplate>
|
<asp:Literal ID="LtlFechaVenci" runat="server" Text='<%# Eval("FechaVencimiento", "{0:d}") %>'></asp:Literal>
|
||||||
</asp:TemplateField>
|
</ItemTemplate>
|
||||||
<asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<HeaderTemplate>Monto Compra</HeaderTemplate>
|
<%-- 7 --%>
|
||||||
<ItemTemplate>
|
<asp:TemplateField>
|
||||||
<asp:Literal ID="LtlSaldoOriginal" runat="server" Text='<%# Eval("Original", "{0:N2}") %>'></asp:Literal>
|
<HeaderTemplate>Días Vencidos</HeaderTemplate>
|
||||||
</ItemTemplate>
|
<ItemTemplate>
|
||||||
</asp:TemplateField>
|
<asp:Literal ID="LtlDiasVencido" runat="server" Text='<%# Eval("DiasVencidos", "{0}") %>'></asp:Literal>
|
||||||
<asp:TemplateField>
|
|
||||||
<HeaderTemplate>Abonado</HeaderTemplate>
|
</ItemTemplate>
|
||||||
<ItemTemplate>
|
</asp:TemplateField>
|
||||||
<asp:Literal ID="LtlAbonado" runat="server" Text='<%# Eval("Abonado", "{0:N2}") %>'></asp:Literal>
|
<%-- 8 --%>
|
||||||
</ItemTemplate>
|
<asp:TemplateField>
|
||||||
</asp:TemplateField>
|
<HeaderTemplate>Monto Compra</HeaderTemplate>
|
||||||
<asp:TemplateField>
|
<ItemTemplate>
|
||||||
<HeaderTemplate>Saldo</HeaderTemplate>
|
<asp:Literal ID="LtlSaldoOriginal" runat="server" Text='<%# Eval("Original", "{0:N2}") %>'></asp:Literal>
|
||||||
<ItemTemplate>
|
|
||||||
<asp:Literal ID="LtlSaldo" runat="server" Text='<%# Eval("Saldo", "{0:N2}") %>'></asp:Literal>
|
</ItemTemplate>
|
||||||
</ItemTemplate>
|
</asp:TemplateField>
|
||||||
</asp:TemplateField>
|
<%-- 9 --%>
|
||||||
<asp:TemplateField>
|
<asp:TemplateField>
|
||||||
<HeaderTemplate>Abonar</HeaderTemplate>
|
<HeaderTemplate>Abonado</HeaderTemplate>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:TextBox ID="TxtAbonar" Width="80px" runat="server" Style="text-align: right;" onkeyup="FormatoMoneda(this)"></asp:TextBox>
|
<asp:Literal ID="LtlAbonado" runat="server" Text='<%# Eval("Abonado", "{0:N2}") %>'></asp:Literal>
|
||||||
<asp:RangeValidator ID="RVAbonar" runat="server" Enabled="false" Type="Currency" MinimumValue="0" MaximumValue='<%# Eval("Saldo", "{0:N2}") %>' ErrorMessage="*" ControlToValidate="TxtAbonar" Display="Dynamic"></asp:RangeValidator>
|
|
||||||
<%-- <ajax:FilteredTextBoxExtender ID="FTBEA" runat="server"
|
</ItemTemplate>
|
||||||
TargetControlID="TxtAbonar"
|
</asp:TemplateField>
|
||||||
FilterType="Custom, Numbers"
|
<%-- 10 --%>
|
||||||
ValidChars="+-.," />--%>
|
<asp:TemplateField>
|
||||||
</ItemTemplate>
|
<HeaderTemplate>Saldo</HeaderTemplate>
|
||||||
</asp:TemplateField>
|
<ItemTemplate>
|
||||||
<asp:TemplateField Visible="false">
|
<asp:Literal ID="LtlSaldo" runat="server" Text='<%# Eval("Saldo", "{0:N2}") %>'></asp:Literal>
|
||||||
<HeaderTemplate>Comisión</HeaderTemplate>
|
|
||||||
<ItemTemplate>
|
</ItemTemplate>
|
||||||
<asp:TextBox ID="TxtComision" Width="50px" runat="server" Style="text-align: right;"></asp:TextBox>
|
</asp:TemplateField>
|
||||||
<asp:RangeValidator ID="RVComision" runat="server" Enabled="false" Type="Currency" MinimumValue='<%# CType(Eval("Saldo", "{0:N2}"), Integer) * -1 %>' MaximumValue='<%# Eval("Saldo", "{0:N2}") %>' ErrorMessage="*" ControlToValidate="TxtComision" Display="Dynamic"></asp:RangeValidator>
|
<%-- 11 --%>
|
||||||
|
<asp:TemplateField Visible="false">
|
||||||
</ItemTemplate>
|
<HeaderTemplate>Aplica<br>Desc.</HeaderTemplate>
|
||||||
</asp:TemplateField>
|
<ItemTemplate>
|
||||||
<asp:TemplateField>
|
<asp:TextBox ID="TxtDescuento" Width="60px" runat="server" Style="text-align: right;" MaxLength="5"></asp:TextBox>
|
||||||
<HeaderTemplate>Auxiliar</HeaderTemplate>
|
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtDescuento" ValidChars="1234567890+" FilterType="Custom" />
|
||||||
<ItemTemplate>
|
|
||||||
<asp:Literal ID="LtlAux" runat="server"></asp:Literal>
|
</ItemTemplate>
|
||||||
</ItemTemplate>
|
</asp:TemplateField>
|
||||||
</asp:TemplateField>
|
<%-- 12 --%>
|
||||||
</Columns>
|
<asp:TemplateField>
|
||||||
|
<HeaderTemplate>Abonar</HeaderTemplate>
|
||||||
</asp:GridView>
|
<ItemTemplate>
|
||||||
|
<asp:TextBox ID="TxtAbonar" Width="80px" runat="server" Style="text-align: right;" onkeyup="FormatoMoneda(this)"></asp:TextBox>
|
||||||
</ContentTemplate>
|
<asp:RangeValidator ID="RVAbonar" runat="server" Enabled="false" Type="Currency" MinimumValue="0" MaximumValue='<%# Eval("Saldo", "{0:N2}") %>' ErrorMessage="*" ControlToValidate="TxtAbonar" Display="Dynamic"></asp:RangeValidator>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<%-- 13 --%>
|
||||||
|
<asp:TemplateField Visible="false">
|
||||||
|
<HeaderTemplate>Comisión</HeaderTemplate>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:TextBox ID="TxtComision" Width="50px" runat="server" Style="text-align: right;"></asp:TextBox>
|
||||||
|
<asp:RangeValidator ID="RVComision" runat="server" Enabled="false" Type="Currency" MinimumValue='<%# CType(Eval("Saldo", "{0:N2}"), Integer) * -1 %>' MaximumValue='<%# Eval("Saldo", "{0:N2}") %>' ErrorMessage="*" ControlToValidate="TxtComision" Display="Dynamic"></asp:RangeValidator>
|
||||||
|
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<%-- 14 --%>
|
||||||
|
<asp:TemplateField>
|
||||||
|
<HeaderTemplate>Auxiliar</HeaderTemplate>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:Literal ID="LtlAux" runat="server"></asp:Literal>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
</Columns>
|
||||||
|
|
||||||
|
</asp:GridView>
|
||||||
|
|
||||||
|
</ContentTemplate>
|
||||||
</asp:UpdatePanel>
|
</asp:UpdatePanel>
|
||||||
|
|
||||||
|
|
||||||
@@ -700,5 +723,58 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function calculaDescuentoEscalonado(saldo, TxtDescuento, TxtAbonar) {
|
||||||
|
|
||||||
|
let idTxtDescuento = TxtDescuento.id
|
||||||
|
let idTxtAbonar = TxtAbonar.id
|
||||||
|
|
||||||
|
let descuentoValue = $("#" + idTxtDescuento).val().trim();
|
||||||
|
let descuentoParts = descuentoValue.split('+');
|
||||||
|
let abonarConDescuento = 0.0;
|
||||||
|
|
||||||
|
|
||||||
|
if (descuentoParts.length === 1) {
|
||||||
|
|
||||||
|
|
||||||
|
if (isNaN(parseFloat(descuentoParts[0])) || descuentoParts[0] == "0") {
|
||||||
|
$("#" + idTxtAbonar).val(saldo.toFixed(2));
|
||||||
|
|
||||||
|
} else {
|
||||||
|
let descuento = saldo * (parseFloat(descuentoParts[0]) / 100);
|
||||||
|
abonarConDescuento = saldo - descuento;
|
||||||
|
$("#" + idTxtAbonar).val(FormatoNumero(abonarConDescuento.toFixed(2),2));
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (descuentoParts.length === 2) {
|
||||||
|
|
||||||
|
if (isNaN(parseFloat(descuentoParts[0]))) {
|
||||||
|
$("#" + idTxtAbonar).val("");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let descuento1 = saldo * (parseFloat(descuentoParts[0]) / 100);
|
||||||
|
|
||||||
|
if (isNaN(parseFloat(descuentoParts[1]))) {
|
||||||
|
|
||||||
|
let descuento = saldo * (parseFloat(descuentoParts[0]) / 100);
|
||||||
|
abonarConDescuento = saldo - descuento;
|
||||||
|
$("#" + idTxtAbonar).val(FormatoNumero(abonarConDescuento.toFixed(2), 2));
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let descuento = saldo * (parseFloat(descuentoParts[0]) / 100);
|
||||||
|
abonarConDescuento = saldo - descuento;
|
||||||
|
|
||||||
|
let abonarConDescuento2 = abonarConDescuento - (abonarConDescuento * (parseFloat(descuentoParts[1]) / 100));
|
||||||
|
|
||||||
|
$("#" + idTxtAbonar).val(FormatoNumero(abonarConDescuento2.toFixed(2), 2));
|
||||||
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$("#" + idTxtAbonar).val("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
</asp:Content>
|
</asp:Content>
|
||||||
|
|||||||
@@ -315,6 +315,10 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
LnkExcelSolicitud.Visible = True
|
LnkExcelSolicitud.Visible = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If UsuarioActual.CveRol = 1 Then
|
||||||
|
GvCxP.Columns(11).Visible = True
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -533,6 +537,10 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
e.Row.FCCheckBox("Chk").Enabled = False
|
e.Row.FCCheckBox("Chk").Enabled = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
e.Row.FCTextBox("TxtDescuento").Attributes.Add("onkeyup", $"calculaDescuentoEscalonado({e.Row.DBCampo("Saldo")},{e.Row.FCTextBox("TxtDescuento").ClientID},{e.Row.FCTextBox("TxtAbonar").ClientID})")
|
||||||
|
Else
|
||||||
|
e.Row.FCTextBox("TxtDescuento").Visible = False
|
||||||
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1354,12 +1362,12 @@ Partial Class Bancos_ProveedoresAbonar
|
|||||||
DdlProsepago.Visible = False
|
DdlProsepago.Visible = False
|
||||||
TxtOtrosImportes.Visible = True
|
TxtOtrosImportes.Visible = True
|
||||||
TxtTotal.Visible = True
|
TxtTotal.Visible = True
|
||||||
GvCxP.Columns(12).Visible = True
|
GvCxP.Columns(13).Visible = True
|
||||||
Else
|
Else
|
||||||
DdlProsepago.Visible = False
|
DdlProsepago.Visible = False
|
||||||
TxtOtrosImportes.Visible = False
|
TxtOtrosImportes.Visible = False
|
||||||
TxtTotal.Visible = False
|
TxtTotal.Visible = False
|
||||||
GvCxP.Columns(12).Visible = False
|
GvCxP.Columns(13).Visible = False
|
||||||
TxtOtrosImportes.Text = ""
|
TxtOtrosImportes.Text = ""
|
||||||
TxtTotal.Text = ""
|
TxtTotal.Text = ""
|
||||||
RegistraScript("$get('TxtImporte').value = FormatoNumero(SumaValores(), 2);")
|
RegistraScript("$get('TxtImporte').value = FormatoNumero(SumaValores(), 2);")
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user