Descuento via nomina en prestamos a personal

This commit is contained in:
2023-04-11 16:20:35 -07:00
parent 0be22d1f24
commit 38b5eec518
3 changed files with 690 additions and 539 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -100,6 +100,8 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
CargaCuentas(); CargaCuentas();
CargaPersonal(); CargaPersonal();
CargaReporte(); CargaReporte();
CargaConceptos();
TxtFechaDocumento.Text = DateTime.Now.ToShortDateString(); TxtFechaDocumento.Text = DateTime.Now.ToShortDateString();
TxtFechaPrestamo.Text = DateTime.Now.ToShortDateString(); TxtFechaPrestamo.Text = DateTime.Now.ToShortDateString();
txtFechaI.Text = DateTime.Now.FirstDayOfMonth().ToShortDateString(); txtFechaI.Text = DateTime.Now.FirstDayOfMonth().ToShortDateString();
@@ -162,6 +164,21 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
DdlFuncionarioEmpleadoPago.DataBind(); DdlFuncionarioEmpleadoPago.DataBind();
DdlFuncionarioEmpleadoPrestamo.DataBind(); DdlFuncionarioEmpleadoPrestamo.DataBind();
} }
private void CargaConceptos()
{
using (ClsNominas objnom = new ClsNominas())
{
if (objnom.GetConceptos(UsuarioActual.CveEmpresa))
{
DdlConcepto.DataSource = objnom.DtResultados.FiltraParametros("Tipo = 'D'");
}
}
DdlConcepto.DataBind();
DdlConcepto.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
#endregion #endregion
#region "PAGO ACREEDORES" #region "PAGO ACREEDORES"
@@ -378,17 +395,17 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
//CONTABILIZA //CONTABILIZA
if (UsuarioActual.Empresa.Funcionalidad(200).Equals("1") && MsgError.Equals("")) if (UsuarioActual.Empresa.Funcionalidad(200).Equals("1") && MsgError.Equals(""))
{ {
//if (IDCtaContablePrestamo > 0 && IDCtaContableBancos > 0) //if (IDCtaContablePrestamo > 0 && IDCtaContableBancos > 0)
//{ //{
if (ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa)) if (ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa))
{ {
IDPoliza = ObjMov.ContaIdPoliza; IDPoliza = ObjMov.ContaIdPoliza;
} }
else else
{ {
Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError); Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError);
} }
//} //}
//else //else
//{ //{
@@ -519,9 +536,43 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
protected void BtnGuardarPrestamo_Click(object sender, EventArgs e) protected void BtnGuardarPrestamo_Click(object sender, EventArgs e)
{ {
if (ChkDescuentoViaNomina.Checked)
{
if (string.IsNullOrEmpty(TxtObservacionesPrestamo.Text.Trim()))
{
Alert("Debe ingresar texto en el campo de observaciones.", TipoMensaje.MsgAdvertencia);
return;
}
if (string.IsNullOrEmpty(TxtValor.Text.Trim()))
{
Alert("Debe ingresar el valor al prestamo.", TipoMensaje.MsgAdvertencia);
return;
}
if (DdlTipoDescto.SelectedValue.ToEntero() == 3)
{
if (TxtValor.Text.ToDecimal() > TxtImportePrestamo.Text.ToDecimal())
{
Alert("El valor no puede ser mayor al importe del prestamo.", TipoMensaje.MsgAdvertencia);
return;
}
}
if (DdlTipoDescto.SelectedValue.ToEntero() == 4)
{
if (TxtValor.Text.ToDecimal() > 100m)
{
Alert("El porcentaje no puede ser mayor a 100", TipoMensaje.MsgAdvertencia);
return;
}
}
}
ClsBancos ObjIE = new ClsBancos(); ClsBancos ObjIE = new ClsBancos();
ClsContabilidad ObjMov = new ClsContabilidad(ObjIE.IniciaTransacSQL()); ClsContabilidad ObjMov = new ClsContabilidad(ObjIE.IniciaTransacSQL());
ClsCompras ObjComp = new ClsCompras(ObjIE.IniciaTransacSQL()); ClsCompras ObjComp = new ClsCompras(ObjIE.IniciaTransacSQL());
ClsNominas ObjNominas = new ClsNominas(ObjIE.IniciaTransacSQL());
string MsgError = ""; string MsgError = "";
int CveIE = 0; int CveIE = 0;
@@ -588,7 +639,7 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
//GUARDA COMPROBANTE //GUARDA COMPROBANTE
if (!filemove.Equals("")) if (!filemove.Equals(""))
{ {
filemove.FilesMove(CveIE.ToString(), string.Format(@"{0}IE", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase:false); filemove.FilesMove(CveIE.ToString(), string.Format(@"{0}IE", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase: false);
} }
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, Importe, Ref, CveConceptoContableBanco, Conc, DateTime.Now, IDCtaContableBancosPrestamo, -1, CveIE, CvePersonal: DdlFuncionarioEmpleadoPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteMN, TipoCambio: TC, TipoCambioPago: TC)) if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, Importe, Ref, CveConceptoContableBanco, Conc, DateTime.Now, IDCtaContableBancosPrestamo, -1, CveIE, CvePersonal: DdlFuncionarioEmpleadoPrestamo.SelectedValue.ToEntero(), ImporteMX: ImporteMN, TipoCambio: TC, TipoCambioPago: TC))
@@ -611,6 +662,25 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
MsgError = "No se pudo insertar concepto de acreedor complementaria"; MsgError = "No se pudo insertar concepto de acreedor complementaria";
} }
} }
if (ChkDescuentoViaNomina.Checked && string.IsNullOrEmpty(MsgError))
{
decimal montoLimite = Importe;
double valor = TxtValor.Text.ToDouble();
decimal porcentaje = (valor.ToString().ToDecimal() / montoLimite);
int vecesPorAplicar = 1;
if (porcentaje > 0)
{
vecesPorAplicar = (1m / porcentaje).ToEntero();
}
if (ObjNominas.AddMovtoPermanente(DdlConcepto.SelectedValue.ToEntero(), DdlFuncionarioEmpleadoPrestamo.SelectedValue.ToEntero(), TxtObservacionesPrestamo.Text, DdlTipoDescto.SelectedValue.ToEntero(), valor, vecesPorAplicar, montoLimite, TxtFechaPrestamo.Text, true, -1, CveIE: CveIE) <= 0)
{
MsgError = "No se pudo insertar el movimiento permanente";
}
}
} }
else else
{ {
@@ -634,17 +704,17 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
//CONTABILIZA //CONTABILIZA
if (UsuarioActual.Empresa.Funcionalidad(200).Equals("1") && MsgError.Equals("")) if (UsuarioActual.Empresa.Funcionalidad(200).Equals("1") && MsgError.Equals(""))
{ {
//if (IDCtaContablePrestamo > 0 && IDCtaContableBancosPrestamo > 0) //if (IDCtaContablePrestamo > 0 && IDCtaContableBancosPrestamo > 0)
//{ //{
if (ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa)) if (ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa))
{ {
IDPoliza = ObjMov.ContaIdPoliza; IDPoliza = ObjMov.ContaIdPoliza;
} }
else else
{ {
Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError); Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError);
} }
//} //}
//else //else
//{ //{
@@ -667,8 +737,8 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
Msg.Append("El Documento se guardo correctamente"); Msg.Append("El Documento se guardo correctamente");
} }
System.IO.FileInfo archivo = null; System.IO.FileInfo archivo = null;
if (DdlTipoTransanccionPrestamo.SelectedValue.ToEntero().Contiene(2, 8, 9)) if (DdlTipoTransanccionPrestamo.SelectedValue.ToEntero().Contiene(2, 8, 9))
{ {
archivo = new System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta)); archivo = new System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta));
@@ -690,8 +760,8 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
if (IDPoliza > 0) if (IDPoliza > 0)
{ {
Msg.AppendFormat(@"<br/><br/><a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IDPoliza); Msg.AppendFormat(@"<br/><br/><a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IDPoliza);
} }
} }
else else
{ {
@@ -771,4 +841,20 @@ public partial class Bancos_PrestamoPersonal : ClsPaginas
protected void ChkDescuentoViaNomina_CheckedChanged(object sender, EventArgs e)
{
DivMovtoPermanente.Visible = ChkDescuentoViaNomina.Checked;
UpPrestamo.Update();
}
//protected void DdlTipoDescto_SelectedIndexChanged(object sender, EventArgs e)
//{
// DivMontoLimite.Visible = DdlTipoDescto.SelectedValue.ToEntero() > 2;
// DivVencesAplicar.Visible = DdlTipoDescto.SelectedValue.ToEntero() < 3;
// DivImportePrestamo.Visible = DdlTipoDescto.SelectedValue.ToEntero() < 3;
// UpPrestamo.Update();
//}
} }

View File

@@ -1342,24 +1342,25 @@
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("TipoDescuentoTexto")%>'></asp:LinkButton> CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("TipoDescuentoTexto")%>'></asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Valor"> <asp:TemplateField HeaderText="Valor" ItemStyle-HorizontalAlign="Right">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click" <asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click"
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("Valor")%>'></asp:LinkButton> CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("Valor","{0:###,###.##}")%>'></asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Veces por aplicar"> <asp:TemplateField HeaderText="Veces por aplicar" ItemStyle-HorizontalAlign="Right">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click" <asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click"
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("VecesAplicar","{0:###,###.##}")%>'></asp:LinkButton> CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("VecesAplicar","{0:###,###.##}")%>'></asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Monto limite"> <asp:TemplateField HeaderText="Monto limite" ItemStyle-HorizontalAlign="Right">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click" <asp:LinkButton data-toggle="tooltip" title="Editar" OnClick="LnkEditarMovtoPermanente_Click"
CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("MontoLimite","{0:###,###.##}")%>'></asp:LinkButton> CssClass="lnkMovotPermanente" runat="server" Text='<%# Eval("MontoLimite","{0:###,###.##}")%>'></asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:HyperLinkField HeaderText="Movto. Bancario" DataNavigateUrlFields="CveIE" DataTextField="FolioIE" DataNavigateUrlFormatString="/Bancos/IE.aspx?CveIE={0}" Target="_blank" />
<asp:TemplateField ItemStyle-Width="38"> <asp:TemplateField ItemStyle-Width="38">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton data-toggle="tooltip" title="Editar" ID="LnkEditarmovtoper" OnClick="LnkEditarMovtoPermanente_Click" CssClass="btn btn-circle btn-sm btn-xs green" runat="server" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton> <asp:LinkButton data-toggle="tooltip" title="Editar" ID="LnkEditarmovtoper" OnClick="LnkEditarMovtoPermanente_Click" CssClass="btn btn-circle btn-sm btn-xs green" runat="server" Text="<i class='fa fa-pencil'></i>"></asp:LinkButton>