0 Descuentos por pronto pago en facturas de Admin, 0 BUG de ProveedoresAbonar descuento masivo

This commit is contained in:
rakcsle
2025-01-22 13:40:16 -07:00
parent 9d67927778
commit 19a1ccb248
2 changed files with 137 additions and 89 deletions

View File

@@ -345,6 +345,7 @@
<asp:CheckBox Text="Descuento" ID="chkaplicaDescuento" CssClass="md-checksd" runat="server" Checked="false" OnCheckedChanged="chkaplicaDescuento_CheckedChanged" AutoPostBack="true" Visible="false" />
<asp:TextBox runat="server" ID="TxtDescuenoMasivo" ClientIDMode="Static" onkeyup="DescuenoMasivo(this)" Visible="false" Width="60px"></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtDescuenoMasivo" FilterType="Custom" ValidChars="1234567890+" />
<asp:CheckBox Text="Generar Remisión" ID="ChkGeneraRNC" CssClass="md-checksd" runat="server" Checked="false" Visible="false" />
</td>
</tr>
@@ -608,14 +609,27 @@
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script type="text/javascript" language="javascript">
var Facturas = '';
var RNCAutocheck = true;
function FnSuma(t, txt, importe) {
function FnSuma(t, txt, importe, idTxtDescuento) {
var chkPesosBancos = $get("ChkPagarPesos");
var chkDolaresBancos = $get("ChkPagarDolares");
if (t.checked) {
txt.value = FormatoNumero(importe, 2);
let txtDescuento = $("#" + idTxtDescuento)
if (typeof txtDescuento.val() === "string"){
let descuentoValue = $("#" + idTxtDescuento).val().trim();
if (descuentoValue.length > 0) {
calculaDescuentoEscalonado(importe, idTxtDescuento, txt, t, 'El Importe no debe de exceder el saldo',1);
}
}
} else {
txt.value = "";
}
@@ -644,46 +658,50 @@
if (textBoxes[i].id.indexOf('C_GvCxP_TxtAbonar') >= 0) {
if (textBoxes[i].value != '') {
idd = textBoxes[i].id.replace('C_GvCxP_TxtAbonar_', '');
Facturas = Facturas + (Importe == 0 ? '' : ', ') + $get("C_GvCxP_HplF_" + idd).innerText;
let importeFactura = 0;
let chk = $('#C_GvCxP_Chk_'+idd) //C_GvCxP_Chk_
if(chk.is(':checked')){
Facturas = Facturas + (Importe == 0 ? '' : ', ') + $get("C_GvCxP_HplF_" + idd).innerText;
let importeFactura = 0;
if (cveMonedaPago == 0) {
if (aplicaTC && $get('TxtTC') != null) {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) * parseFloat($get('TxtTC').value), 2).split(',').join(''));
} else {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
}
} else {
let cveMonedaCompra = textBoxes[i].getAttribute("cvemoneda");
if (cveMonedaPago == 0) {
if (aplicaTC && $get('TxtTC') != null) {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) * parseFloat($get('TxtTC').value), 2).split(',').join(''));
} else {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
}
} else {
let cveMonedaCompra = textBoxes[i].getAttribute("cvemoneda");
switch (cveMonedaPago) {
case 1: //PAGO CON PESOS
switch (cveMonedaPago) {
case 1: //PAGO CON PESOS
//SI SON DOLARES MULTIPLICAR POR TC
if (cveMonedaCompra == '2') {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) * parseFloat($get('TxtTC').value), 2).split(',').join(''));
//MISMA MONEDA DEBE SOLO SUMAR
} else if (cveMonedaCompra == '1') {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
}
break;
case 2: //PAGO CON DOLARES
//SI SON DOLARES MULTIPLICAR POR TC
if (cveMonedaCompra == '2') {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) * parseFloat($get('TxtTC').value), 2).split(',').join(''));
//MISMA MONEDA DEBE SOLO SUMAR
} else if (cveMonedaCompra == '1') {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
}
break;
case 2: //PAGO CON DOLARES
//MISMA MONEDA DEBE SOLO SUMAR
if (cveMonedaCompra == '2') {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
//SI SON PESOS DIVIDIR ENTRE EL TC
} else if (cveMonedaCompra == '1') {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) / parseFloat($get('TxtTC').value), 2).split(',').join(''));
}
break;
if (cveMonedaCompra == '2') {
importeFactura = parseFloat(textBoxes[i].value.split(',').join(''));
//SI SON PESOS DIVIDIR ENTRE EL TC
} else if (cveMonedaCompra == '1') {
importeFactura = parseFloat(FormatoNumero(parseFloat(textBoxes[i].value.split(',').join('')) / parseFloat($get('TxtTC').value), 2).split(',').join(''));
}
break;
}
}
}
Importe = parseFloat(Importe) + importeFactura;
Importe = parseFloat(Importe) + importeFactura;
}
}
}
if (textBoxes[i].id.indexOf('C_GvCxP_TxtComision') >= 0) {
@@ -714,12 +732,14 @@
}
function FnCambia(chk, txt, saldo, op, text, Tipo) {
debugger;
var chkPesosBancos = $get("ChkPagarPesos");
var chkDolaresBancos = $get("ChkPagarDolares");
if (op == 1) {
if (txt.value != '') {
chk.checked = true;
if( RNCAutocheck){
chk.checked = true;
}
} else {
chk.checked = false;
}
@@ -831,7 +851,7 @@
var TipoCambioActual = 0.0;
function CambiaTC(txt) {
debugger;
//let TipoCambioTxt = ToDouble(txt.value)
//if (TipoCambioActual != TipoCambioTxt) {
$get("BtnCambiaTipoMoneda").click();
@@ -839,8 +859,8 @@
//}
}
function calculaDescuentoEscalonado(saldo, TxtDescuento, TxtAbonar, chk, Text, Tipo) {
let idTxtDescuento = TxtDescuento.id;
function calculaDescuentoEscalonado(saldo, idTxtDescuento, TxtAbonar, chk, Text, Tipo) {
//let idTxtDescuento = TxtDescuento.id;
let idTxtAbonar = TxtAbonar.id;
let descuentoValue = $("#" + idTxtDescuento).val().trim();
@@ -870,6 +890,8 @@
function DescuenoMasivo(txt) {
RNCAutocheck = false;
$(".selDescuento").val(txt.value);
$(".selDescuento").trigger("keyup");
}