This commit is contained in:
rakcsle
2021-12-05 22:49:27 -07:00
6 changed files with 442 additions and 144 deletions

View File

@@ -31,6 +31,9 @@
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkDownExcel" OnClick="LnkDownExcel_Click" runat="server"><i class="fa fa-download"></i> Descargar excel</asp:LinkButton>
</li>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
@@ -79,7 +82,7 @@
<asp:Literal ID="LtlTotal" runat="server"></asp:Literal>
</div>
<div class="desc">
Total aguinaldo
Total neto aguinaldo
</div>
</div>
</div>
@@ -127,53 +130,127 @@
<br />
<div style="text-align: right">
<asp:Button ID="BtnRecalcular" CssClass="btn btn-primary" OnClick="BtnRecalcular_Click" runat="server" Text="Recalcular" />
<asp:TextBox ID="TxtBusqueda" runat="server" CssClass="form-control input-sm" style="display: inline-block; margin-right: -20px; width: 150px;"></asp:TextBox>
<a href="javascript:;" onclick="<%= String.Format("FiltrarTabla('{1}','{0}')", GVCalcularAguinaldo.ClientID,TxtBusqueda.ClientID) %>" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"><i class="icon-magnifier"></i></a>
</div>
<asp:GridView ID="GVCalcularAguinaldo" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVCalcularUtilidades" AutoGenerateColumns="False"
DataKeyNames="Nombre,CvePersonal" OnRowDataBound="GVCalcularAguinaldo_RowDataBound">
DataKeyNames="Nombre,CvePersonal,CveSubProyecto,CveNomina,CveMetodoPago" OnRowDataBound="GVCalcularAguinaldo_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="Nombre ">
<ItemTemplate>
<asp:Label ID="lblnombreCompleto" runat="server" Text='<%# Eval("Nombre")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Salario diario">
<asp:TemplateField >
<HeaderTemplate>
Fecha<br />ingreso
</HeaderTemplate>
<ItemTemplate>
<asp:TextBox ID="TxtsueldoDiario" runat="server" Text='<%# Eval("SalarioDiario", "${0:N2}")%>'> </asp:TextBox>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dSala" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Días laborados">
<ItemTemplate>
<asp:TextBox ID="TxtdiasLaborados" runat="server" Text='<%# Eval("DiasLaborados")%>'> </asp:TextBox>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dlab" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Días aguinaldo">
<ItemTemplate>
<asp:TextBox ID="TxtdiasAguinaldo" runat="server" Text='<%# Eval("NumDiasAguinaldo")%>'> </asp:TextBox>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dlab" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Aguinaldo completo">
<ItemTemplate>
<asp:Label ID="lblsueldoAguinaldoCompleto" runat="server" Text='<%# Eval("AguinaldoCompleto", "${0:N2}")%>'> </asp:Label>
<asp:Label runat="server" Text='<%# Eval("FechaInicio", "{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Aguinaldo gravado">
<asp:TemplateField>
<HeaderTemplate>
Salario<br />diario
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="TxtsueldoDiario" runat="server" Text='<%# Eval("SalarioDiario", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dSala" />
</asp:TemplateField>
<asp:TemplateField >
<HeaderTemplate>
Días <br />laborados
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="TxtdiasLaborados" runat="server" Text='<%# Eval("DiasLaborados", "{0:N0}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dlab" />
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
Días <br />base
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="TxtdiasAguinaldo" runat="server" Text='<%# Eval("NumDiasAguinaldo")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dlab" />
</asp:TemplateField>
<asp:TemplateField >
<HeaderTemplate>
Días <br /> aguinaldo
</HeaderTemplate>
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("diasPropAgui", "{0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="" />
</asp:TemplateField>
<asp:TemplateField >
<HeaderTemplate>
Aguinaldo <br /> completo
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="lblsueldoAguinaldoCompleto" runat="server" Text='<%# Eval("Aguinaldo", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<%-- <asp:TemplateField HeaderText="Aguinaldo exento">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("AguinaldoExento", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dSala" />
</asp:TemplateField>--%>
<asp:TemplateField >
<HeaderTemplate>
Aguinaldo <br /> gravado
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="lblAguinaldoGravado" runat="server" Text='<%# Eval("AguinaldoGravado", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Impuesto">
<asp:TemplateField HeaderText="Fraccion I">
<ItemTemplate>
<asp:Label ID="lblFraccion1" runat="server" > </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Fraccion II">
<ItemTemplate>
<asp:Label ID="lblFraccion2" runat="server" > </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Fraccion III">
<ItemTemplate>
<asp:Label ID="lblFraccion3" runat="server" > </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Fraccion IV">
<ItemTemplate>
<asp:Label ID="lblFraccion4" runat="server" > </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="I.S.R.">
<ItemTemplate>
<asp:Label ID="lblISRAguinaldo" runat="server" Text='<%# Eval("ISR", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Aguinaldo por pagar">
<asp:TemplateField HeaderText="Descuento">
<ItemTemplate>
<asp:TextBox ID="TxtDescuento" runat="server" Text=''> </asp:TextBox>
<asp:Label ID="lblDescuento" runat="server" > </asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Right" CssClass="dSala" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Neto por pagar">
<ItemTemplate>
<asp:Label ID="lblAguinaldo" runat="server" Text='<%# Eval("Aguinaldo", "${0:N2}")%>'> </asp:Label>
</ItemTemplate>
@@ -247,5 +324,20 @@
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function filtraaguinaldo() {
FiltrarTabla('<%= TxtBusqueda.ClientID %>', '<%= GVCalcularAguinaldo.ClientID %>');
}
function ADSReady() {
// onkeyup = String.Format("FiltrarTabla('TxtBusqueda','{0}')", GVCalcularAguinaldo.ClientID)'
setTimeout(filtraaguinaldo, 250);
$('#<%= TxtBusqueda.ClientID %> ').keyup(function () {
filtraaguinaldo();
});
$('#<%= TxtBusqueda.ClientID %> ').bind("copy paste cut ", function () {
filtraaguinaldo();
});
}
</script>
</asp:Content>

View File

@@ -36,6 +36,11 @@ public partial class Nomina_Aguinaldo : ClsPaginas
DdlEjercicios.DataSource = objnom.DtResultados;
}
DdlEjercicios.DataBind();
try
{
DdlEjercicios.SelectedValueExistInsert(DateTime.Now.Year, DateTime.Now.Year.ToString());
}
catch (Exception) { }
DdlTipoPeriodo.DataSource = GlobalDTTipoPeriodo.FiltraParametros("Estatus = 'Activo' AND CveTipoPeriodo <>-1");
DdlTipoPeriodo.DataBind();
@@ -52,7 +57,7 @@ public partial class Nomina_Aguinaldo : ClsPaginas
{
if (objbase.runQuerystr($"SELECT Valor UMA FROM [dbo].[RH_TablasValores] WHERE Tipo =1 AND CveEmpresa ={cveempresa} AND Fecha<'{DateTime.Now:yyyy/MM/dd}' ORDER BY Fecha DESC"))
{
if(objbase.DtResultados.Rows.Count > 0)
if (objbase.DtResultados.Rows.Count > 0)
{
LtlUma.Text = objbase.DtResultados.Rows[0]["UMA"].ToString();
}
@@ -127,6 +132,8 @@ public partial class Nomina_Aguinaldo : ClsPaginas
int ejercicio = DdlEjercicios.SelectedValue.ToEntero();
int CvePersonal;
int CvePeriodo;
decimal ImporteDescuento = 0;
decimal ImporteISR = 0;
decimal ImporteGravado = 0;
decimal ImporteExento = 0;
decimal ImporteValor = 0;
@@ -134,6 +141,9 @@ public partial class Nomina_Aguinaldo : ClsPaginas
int CveMetodoPago = 0;
int CveNomina = 0;
int CveConcepto = 0;
int CveConceptoISR = 0;
int CveConceptoDescuento = 0;
if (continuar)
{
using (ClsNominas objNomina = new ClsNominas())
@@ -159,6 +169,16 @@ public partial class Nomina_Aguinaldo : ClsPaginas
{
CveConcepto = rowc["CveConcepto"].ToString().ToEntero();
}
DataRow rowcz = objNomina.DtResultados.FiltroPrimero("CveSistema=21");
if ((rowcz != null))
{
CveConceptoISR = rowcz["CveConcepto"].ToString().ToEntero();
}
DataRow rowcy = objNomina.DtResultados.FiltroPrimero("CveConceptoContable=174");
if ((rowcz != null))
{
CveConceptoDescuento = rowcy["CveConcepto"].ToString().ToEntero();
}
//else
//{
// CveConcepto = objNomina.AddConcepto("PTU", "Utilidades", "P", "", true, true, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, false, -1, -1, -1, 0, -1, 0, 0, 0, 0, 0);
@@ -171,8 +191,25 @@ public partial class Nomina_Aguinaldo : ClsPaginas
}
if (continuar)
{
foreach (DataRow row in DTAguinaldos.Rows)
foreach (GridViewRow gvrow in GVCalcularAguinaldo.Rows)
{
CveNomina = gvrow.DataKey("CveNomina").ToEntero();
CvePersonal = gvrow.DataKey("CvePersonal").ToEntero();
CveMetodoPago = gvrow.DataKey("CveMetodoPago").ToEntero();
Importe = gvrow.FCLabel("lblsueldoAguinaldoCompleto").Text.ToDecimal();
ImporteGravado = gvrow.FCLabel("lblAguinaldoGravado").Text.ToDecimal();
ImporteExento = Importe - ImporteGravado;
ImporteValor = gvrow.FCLabel("diasPropAgui").Text.ToEntero();
ImporteDescuento = gvrow.FCTextBox("TxtDescuento").Text.ToDecimal();
ImporteISR = gvrow.FCLabel("lblISRAguinaldo").Text.ToDecimal();
// foreach (DataRow row in DTAguinaldos.Rows)
//{
//DiasLaborados = row["DiasLaborados"].ToString().ToEntero();
CvePeriodo = CvePeriodoSeleccionado;
/*
@@ -180,16 +217,16 @@ public partial class Nomina_Aguinaldo : ClsPaginas
{CveNomina
continuar = objNomina.AddUtilidad(CvePersonal, Importe, CvePeriodo, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ejercicio, DiasLaborados, SueldoTotal);
}*/
CveNomina = 0;
CvePersonal = row["CvePersonal"].ToString().ToEntero();
CveMetodoPago = row["CveMetodoPago"].ToString().ToEntero();
Importe = row["Aguinaldo"].ToString().ToDecimal();
ImporteGravado = row["AguinaldoGravado"].ToString().ToDecimal();
ImporteExento = Importe - ImporteGravado;
ImporteValor = row["DiasLaborados"].ToString().ToDecimal();
//CveNomina = 0;
//CvePersonal = row["CvePersonal"].ToString().ToEntero();
//CveMetodoPago = row["CveMetodoPago"].ToString().ToEntero();
//Importe = row["Aguinaldo"].ToString().ToDecimal();
//ImporteGravado = row["AguinaldoGravado"].ToString().ToDecimal();
//ImporteExento = Importe - ImporteGravado;
//ImporteValor = row["DiasLaborados"].ToString().ToDecimal();
if (CvePersonal > 0 && Importe > 0 && row["CveNomina"].ToString().ToEntero() == 0)
if (CvePersonal > 0 && Importe > 0 && CveNomina == 0)
{
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoSeleccionado, -1, UsuarioActual.CveEmpresa))
{
@@ -217,7 +254,15 @@ public partial class Nomina_Aguinaldo : ClsPaginas
if (CveNomina > 0)
{
if (!objNomina.AddUPNom_NominasDetalles(objNomina.CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConcepto, Importe, ImporteGravado, ImporteExento, ImporteValor, UsuarioActual.CveUsuario, false, 1, 1, 1))
if (continuar &&!objNomina.AddUPNom_NominasDetalles(objNomina.CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConcepto, Importe, ImporteGravado, ImporteExento, ImporteValor, UsuarioActual.CveUsuario, false, 1, 1, 1))
{
continuar = false;
}
if (continuar && !objNomina.AddUPNom_NominasDetalles(objNomina.CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConceptoISR, ImporteISR, 0, 0, ImporteGravado, UsuarioActual.CveUsuario, false, 1, 1, 1))
{
continuar = false;
}
if (continuar && ImporteDescuento >0 && !objNomina.AddUPNom_NominasDetalles(objNomina.CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConceptoDescuento, ImporteDescuento, 0, 0, 0, UsuarioActual.CveUsuario, false, 1, 1, 1))
{
continuar = false;
}
@@ -285,7 +330,7 @@ public partial class Nomina_Aguinaldo : ClsPaginas
decimal uma = LtlUma.Text.ToDecimal();
decimal aguiexentogral = uma * 30;
decimal salariodiario = 0;
decimal diasanio = 366;
decimal diasanio = 365;
decimal diaslaborados = 0;
decimal diasaguinaldo = 0;
decimal diasaguipago = 0;
@@ -301,105 +346,236 @@ public partial class Nomina_Aguinaldo : ClsPaginas
decimal FraccionIII_2 = 0;
decimal FraccionV = 0;
decimal FraccionIV = 0;
decimal aguinaldoExcentoreg = 0;
decimal Aguinaldoapagar = 0;
decimal descuento = 0;
decimal aguinaldoSubproyeto = 0;
decimal aguinaldogravadoSubproyeto = 0;
decimal descuentoSubproyeto = 0;
decimal ISRSubproyeto = 0;
decimal AguinaldoapagarTotalSubproyeto = 0;
decimal aguinaldoTotal = 0;
decimal aguinaldogravadoTotal = 0;
decimal descuentoTotal = 0;
decimal ISRTOTAL = 0;
decimal AguinaldoapagarTotal = 0;
GridViewRow gvrowTotal = null;
GridViewRow gvrowSubProyecto = null;
int CvePersonal = 0;
int CveSubProyecto = 0;
StringBuilder str = new StringBuilder();
using (ClsClaseBaseD objbase = new ClsClaseBaseD())
{
foreach (GridViewRow gvrow in GVCalcularAguinaldo.Rows)
{
salariodiario = gvrow.FCTextBox("TxtsueldoDiario").Text.ToDecimal();
diaslaborados = gvrow.FCTextBox("TxtdiasLaborados").Text.ToDecimal();
diasaguinaldo = gvrow.FCTextBox("TxtdiasAguinaldo").Text.ToDecimal();
if (salariodiario > 0)
CveSubProyecto = gvrow.DataKey("CveSubProyecto").ToEntero();
CvePersonal = gvrow.DataKey("CvePersonal").ToEntero();
salariodiario = gvrow.FCLabel("TxtsueldoDiario").Text.ToDecimal();
diaslaborados = gvrow.FCLabel("TxtdiasLaborados").Text.ToDecimal();
diasaguinaldo = gvrow.FCLabel("TxtdiasAguinaldo").Text.ToDecimal();
descuento = gvrow.FCTextBox("TxtDescuento").Text.ToDecimal();
//aguinaldoExcentoreg = gvrow.FCTextBox("TxtAguinaldoExento").Text.ToDecimal();
if (CvePersonal > 0)
{
diasaguipago = (diaslaborados / diasanio) * diasaguinaldo;
salariomensual = salariodiario * 30;
aguinaldo = diasaguipago * salariodiario;
aguinaldoexcento = (aguiexentogral > aguinaldo ? aguinaldo : aguiexentogral);
aguinaldogravado = aguinaldo - aguinaldoexcento;
if (aguinaldogravado > 0)
if (salariodiario > 0)
{
FraccionI = (aguinaldogravado / diasanio) * diasmes;
FraccionII_1 = salariomensual + FraccionI;
str.Clear();
str.AppendFormat("SELECT dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionII_2,", FraccionII_1, diasmes);
str.AppendFormat(" dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionIII_1", salariomensual, diasmes);
if (objbase.runQuerystr(str.ToString()))
{
DataRow drow = objbase.DtResultados.Rows[0];
FraccionII_2 = drow["isrFraccionII_2"].ToString().ToDecimal();
FraccionIII_1 = drow["isrFraccionIII_1"].ToString().ToDecimal();
}
else { break; }
FraccionIII_2 = FraccionII_2 - FraccionIII_1;
FraccionV = FraccionIII_2 / FraccionI;
FraccionIV = aguinaldogravado * FraccionV;
Aguinaldoapagar = aguinaldo - FraccionIV;
diasaguipago = (diaslaborados / diasanio) * diasaguinaldo;
salariomensual = salariodiario * 30;
aguinaldo = diasaguipago * salariodiario;
/*if (gvrow.FCTextBox("TxtAguinaldoExento").Text.Length > 0)
{
aguinaldoexcento = (aguinaldoExcentoreg > aguinaldo ? aguinaldo : aguinaldoExcentoreg);
gvrow.FCTextBox("TxtAguinaldoExento").Text = string.Format("{0}", aguinaldoexcento);
}
else
{
}*/
aguinaldoexcento = (aguiexentogral > aguinaldo ? aguinaldo : aguiexentogral);
aguinaldogravado = aguinaldo - aguinaldoexcento;
if (aguinaldogravado > 0)
{
FraccionI = (aguinaldogravado / diasanio) * diasmes;
FraccionII_1 = salariomensual + FraccionI;
str.Clear();
str.AppendFormat("SELECT dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionII_2,", FraccionII_1, diasmes);
str.AppendFormat(" dbo.Fnc_NomValues(40, 0, 00, -1, {0}, {1}, {1}) isrFraccionIII_1", salariomensual, diasmes);
if (objbase.runQuerystr(str.ToString()))
{
DataRow drow = objbase.DtResultados.Rows[0];
FraccionII_2 = drow["isrFraccionII_2"].ToString().ToDecimal();
FraccionIII_1 = drow["isrFraccionIII_1"].ToString().ToDecimal();
}
else { break; }
FraccionIII_2 = FraccionII_2 - FraccionIII_1;
FraccionV = FraccionIII_2 / FraccionI;
FraccionIV = aguinaldogravado * FraccionV;
Aguinaldoapagar = aguinaldo - FraccionIV;
}
else
{
FraccionIV = 0;
Aguinaldoapagar = aguinaldo - FraccionIV;
}
}
else
{
aguinaldo = 0;
Aguinaldoapagar = 0;
aguinaldogravado = 0;
FraccionIV = 0;
Aguinaldoapagar = aguinaldo - FraccionIV;
}
Aguinaldoapagar = Aguinaldoapagar - descuento;
aguinaldogravadoSubproyeto += aguinaldogravado;
descuentoSubproyeto += descuento;
aguinaldoSubproyeto += aguinaldo;
ISRSubproyeto += FraccionIV;
AguinaldoapagarTotalSubproyeto += Aguinaldoapagar;
aguinaldogravadoTotal += aguinaldogravado;
descuentoTotal += descuento;
ISRTOTAL += FraccionIV;
aguinaldoTotal += aguinaldo;
AguinaldoapagarTotal += Aguinaldoapagar;
gvrow.FCLabel("lblsueldoAguinaldoCompleto").Text = string.Format("${0:N2}", aguinaldo);
gvrow.FCLabel("lblAguinaldoGravado").Text = string.Format("${0:N2}", aguinaldogravado);
gvrow.FCLabel("lblFraccion1").Text = string.Format("${0:N2}", FraccionI);
gvrow.FCLabel("lblFraccion2").Text = string.Format("${0:N2}", FraccionII_2);
gvrow.FCLabel("lblFraccion3").Text = string.Format("${0:N2}", FraccionIII_2);
gvrow.FCLabel("lblFraccion4").Text = string.Format("${0:N2}", FraccionIV);
gvrow.FCLabel("lblISRAguinaldo").Text = string.Format("${0:N2}", FraccionIV);
gvrow.FCLabel("lblAguinaldo").Text = string.Format("${0:N2}", Aguinaldoapagar);
}
else
{
aguinaldo = 0;
Aguinaldoapagar = 0;
aguinaldogravado = 0;
FraccionIV = 0;
if (gvrowSubProyecto != null)
{
gvrowSubProyecto.FCLabel("lblISRAguinaldo").Text = string.Format("${0:N2}", ISRSubproyeto);
gvrowSubProyecto.FCLabel("lblAguinaldoGravado").Text = string.Format("${0:N2}", aguinaldogravadoSubproyeto);
gvrowSubProyecto.FCLabel("lblDescuento").Text = string.Format("${0:N2}", descuentoSubproyeto);
gvrowSubProyecto.FCLabel("lblsueldoAguinaldoCompleto").Text = string.Format("${0:N2}", aguinaldoSubproyeto);
gvrowSubProyecto.FCLabel("lblAguinaldo").Text = string.Format("${0:N2}", AguinaldoapagarTotalSubproyeto);
}
if (CveSubProyecto > 0)
{
gvrowSubProyecto = gvrow;
}
else
{
gvrowTotal = gvrow;
}
ISRSubproyeto = 0;
aguinaldogravadoSubproyeto = 0;
aguinaldoSubproyeto = 0;
AguinaldoapagarTotalSubproyeto = 0;
descuentoSubproyeto = 0;
gvrow.CssClass = "Totales"; gvrow.FCTextBox("TxtDescuento").Visible = false;
}
AguinaldoapagarTotal += Aguinaldoapagar;
gvrow.FCLabel("lblsueldoAguinaldoCompleto").Text = string.Format("${0:N2}", aguinaldo);
gvrow.FCLabel("lblAguinaldo").Text = string.Format("${0:N2}", Aguinaldoapagar);
gvrow.FCLabel("lblAguinaldoGravado").Text = string.Format("${0:N2}", aguinaldogravado);
gvrow.FCLabel("lblISRAguinaldo").Text = string.Format("${0:N2}", FraccionIV);
}
}
if (gvrowSubProyecto != null)
{
gvrowSubProyecto.FCLabel("lblISRAguinaldo").Text = string.Format("${0:N2}", ISRSubproyeto);
gvrowSubProyecto.FCLabel("lblAguinaldoGravado").Text = string.Format("${0:N2}", aguinaldogravadoSubproyeto);
gvrowSubProyecto.FCLabel("lblDescuento").Text = string.Format("${0:N2}", descuentoSubproyeto);
gvrowSubProyecto.FCLabel("lblsueldoAguinaldoCompleto").Text = string.Format("${0:N2}", aguinaldoSubproyeto);
gvrowSubProyecto.FCLabel("lblAguinaldo").Text = string.Format("${0:N2}", AguinaldoapagarTotalSubproyeto);
}
if (gvrowTotal != null)
{
gvrowTotal.FCLabel("lblISRAguinaldo").Text = string.Format("${0:N2}", ISRTOTAL );
gvrowTotal.FCLabel("lblAguinaldoGravado").Text = string.Format("${0:N2}", aguinaldogravadoTotal);
gvrowTotal.FCLabel("lblDescuento").Text = string.Format("${0:N2}", descuentoTotal);
gvrowTotal.FCLabel("lblsueldoAguinaldoCompleto").Text = string.Format("${0:N2}", aguinaldoTotal);
gvrowTotal.FCLabel("lblAguinaldo").Text = string.Format("${0:N2}", AguinaldoapagarTotal);
}
LtlTotal.Text = string.Format("${0:N2}", AguinaldoapagarTotal);
/*
*
*
lblAguinaldo
lblAguinaldoGravado
lblISRAguinaldo
salario diario
dias año
Dias laborados
dias Aguinaldo
dias aguinaldo(PAGO)
UMA
Salario mensual
Aguinaldo
Aguinaldo excento
Aguinaldo gravado
dias mes
FraccionI
FraccionII
FraccionII
FraccionIII
FraccionIII
FraccionV
FraccionIV
}
Aguinaldoapagar
protected void LnkDownExcel_Click(object sender, EventArgs e)
{
// GVCalcularAguinaldo.ExportToExcelx(string.Format("Aguinaldo {0}", DdlEjercicios.SelectedItem.Text));
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
var libro = wb.AddWorksheet("Nomina");
int fila = 0;
fila = fila + 1;
int filatitulo = fila;
libro.SheetView.Freeze(filatitulo, 1);
libro.Cell(fila, 1).Value = "Empleado";
libro.Cell(fila, 2).Value = "Salario diario";
libro.Cell(fila, 3).Value = "Días laborados";
libro.Cell(fila, 4).Value = "Días aguinaldo";
libro.Cell(fila, 5).Value = "Aguinaldo completo";
libro.Cell(fila, 6).Value = "Aguinaldo gravado";
libro.Cell(fila, 7).Value = "Aguinaldo exento";
libro.Cell(fila, 8).Value = "I.S.R.";
libro.Cell(fila, 9).Value = "Aguinaldo por pagar";
*
*/
libro.Range(fila, 1, fila, 8).Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
libro.Range(fila, 1, fila, 8).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
foreach (GridViewRow gvrow in GVCalcularAguinaldo.Rows)
{
fila = fila + 1;
libro.Cell(fila, 1).Value = gvrow.FCLabel("lblnombreCompleto").Text;
libro.Cell(fila, 2).Value = gvrow.FCLabel("TxtsueldoDiario").Text.ToDecimal();
libro.Cell(fila, 3).Value = gvrow.FCLabel("TxtdiasLaborados").Text.ToDecimal();
libro.Cell(fila, 4).Value = gvrow.FCLabel("TxtdiasAguinaldo").Text.ToDecimal();
libro.Cell(fila, 5).Value = gvrow.FCLabel("lblsueldoAguinaldoCompleto").Text.ToDecimal();
libro.Cell(fila, 6).Value = gvrow.FCLabel("lblAguinaldoGravado").Text.ToDecimal();
libro.Cell(fila, 7).Value = gvrow.FCLabel("lblsueldoAguinaldoCompleto").Text.ToDecimal() - gvrow.FCLabel("lblAguinaldoGravado").Text.ToDecimal();
libro.Cell(fila, 8).Value = gvrow.FCLabel("lblISRAguinaldo").Text.ToDecimal();
libro.Cell(fila, 9).Value = gvrow.FCLabel("lblAguinaldo").Text.ToDecimal();
}
libro.Range(filatitulo, 1, fila, 9).Columns();
libro.Range(filatitulo + 1, 2, fila + 1, 8).DataType = ClosedXML.Excel.XLDataType.Number;
libro.Range(filatitulo + 1, 2, fila + 1, 2).Style.NumberFormat.Format = "$###,###,###,##0.00";
libro.Range(filatitulo + 1, 5, fila + 1, 9).Style.NumberFormat.Format = "$###,###,###,##0.00";
libro.ColumnsUsed().AdjustToContents();
System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs);
fs.Position = 0;
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
using (System.IO.Stream input = fs)
{
input.CopyTo(memoryStream);
}
memoryStream.Position = 0;
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", string.Format("attachment;filename={0} {1}.xlsx", "Aguinaldo", DdlEjercicios.SelectedValue));
Response.BinaryWrite(memoryStream.ToArray());
Response.End();
}
}

View File

@@ -1288,7 +1288,7 @@
<asp:UpdatePanel ID="UPSRVaaciones" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-7">
<div class="col-md-12">
<div class="portlet light xspadding bordered " id="pnlvacacionesgv">
<div class="portlet-title">
@@ -1314,12 +1314,33 @@
CssClass="table table-striped table-advance table-hover Widthall ScrollAD GvVacaciones" data-sort="true" data-height="300" ShowHeader="True" EmptyDataText="No se encontraron resultados." ShowHeaderWhenEmpty="true"
AutoGenerateColumns="False" AllowPaging="False" ShowFooter="False" OnRowDataBound="GvVacaciones_RowDataBound">
<Columns>
<asp:BoundField Visible="true" DataField="Periodo" HeaderText="Periodo" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha ingreso" />
<asp:BoundField DataField="Ejercicio" HeaderText="Ejercicio" />
<asp:TemplateField HeaderText="Periodo">
<ItemTemplate>
<asp:Label runat="server" Text='<%# Eval("FechaInicio", "{0:dd/MM/yyyy}")%>'> </asp:Label>-
<asp:Label runat="server" Text='<%# Eval("FechaFin", "{0:dd/MM/yyyy}")%>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FechaPago" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha pago" />
<asp:BoundField DataField="diasinhabiles" HeaderText="Días feriados" />
<asp:BoundField DataField="TipoPago" HeaderText="Tipo pago" />
<asp:BoundField DataField="DiasextraAutorizado" HeaderText="Días extra" />
<asp:BoundField DataField="diasPago" HeaderText="Días pago" />
<asp:TemplateField HeaderText="Aplica prima">
<ItemTemplate>
<asp:Label runat="server" Text='<%# ((Eval("AplicaPrima").ToString() == "1" || Eval("AplicaPrima").ToString().ToUpper() == "TRUE") ? "Sí": "No") %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Cobro IMSS">
<ItemTemplate>
<asp:Label runat="server" Text='<%# ((Eval("CobrarIMSS").ToString() == "1" || Eval("CobrarIMSS").ToString().ToUpper() == "TRUE") ? "Sí": "No") %>'> </asp:Label>
</ItemTemplate>
</asp:TemplateField>
<%--<asp:BoundField Visible="true" DataField="Periodo" HeaderText="Periodo" ItemStyle-HorizontalAlign="Center" />
<asp:BoundField Visible="true" DataField="Dias" HeaderText="Días" ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField Visible="true" DataField="FechaPago" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha pago" ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<%--<asp:BoundField Visible="true" DataField="Autorizo" ItemStyle-CssClass="truncate" HeaderText="Autorizo" ItemStyle-HorizontalAlign="Left" />--%>
<asp:BoundField Visible="true" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha ing." ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />
<%--<asp:BoundField Visible="true" DataField="Usuario" HeaderText="Usuario" ItemStyle-Width="20%" ItemStyle-HorizontalAlign="Left" />--%>
<asp:BoundField Visible="true" DataField="FechaIng" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha ing." ItemStyle-Width="80" ItemStyle-HorizontalAlign="Center" />--%>
<asp:TemplateField HeaderStyle-Width="60" ItemStyle-Width="60">
<ItemTemplate>
<div>
@@ -1384,7 +1405,9 @@
</div>
</div>
</div>
<div class="col-md-5">
</div>
<div class="row">
<div class="col-md-12">
<div class="portlet light xspadding bordered " id="pnlvacacionesform">
<div class="portlet-title">

View File

@@ -396,7 +396,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
FiltAgrupador = 1;
HypPDFSTimbrados.Attributes.Add("onclick", string.Format("GETPDF({0},{1})", -1, FiltCvePeriodo));
cargaDatos();
LtlPeriodoseleccionado.Text = string.Format("{0} ({1} Empleados)", DdlPeriodo.SelectedItem.Text, dtempleados.Rows.Count-1);
LtlPeriodoseleccionado.Text = string.Format("{0} ({1} Empleados)", DdlPeriodo.SelectedItem.Text, dtempleados.Rows.Count - 1);
LtlPeriodoseleccionadoASis.Text = LtlPeriodoseleccionado.Text;
}
@@ -1037,7 +1037,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
e.Row.FindControl("LnkTimbrar").Visible = false;
if (Turno.Length == 0 && SubProyecto.Length > 0)
{
LtlNombre.Text = String.Format("<b>Centro de costos: {0}({1})<b>", SubProyecto, e.Row.DataKey("CveSubProyecto").ToString());
LtlNombre.Text = String.Format("<b>Centro de costos: {0}<b>", SubProyecto, e.Row.DataKey("CveSubProyecto").ToString());
}
else if (Turno.Length > 0)
{
@@ -1910,16 +1910,16 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
private void CargaVacaciones()
{
ClsRH objRH = new ClsRH();
if (objRH.VacacionesGet(SRCvePersonal, UsuarioActual.Empresa.CveEmpresa))
using (ClsNominas objRH = new ClsNominas())
{
GvVacaciones.DataSource = objRH.DtResultados;
if (objRH.GETPersonalVacaciones(UsuarioActual.CveEmpresa ,SRCvePersonal))
{
GvVacaciones.DataSource = objRH.DtResultados;
}
else { GvVacaciones.DataSource = null; }
}
else { GvVacaciones.DataSource = null; }
objRH.Dispose();
LnkSRVacacionesADD.Visible = false;
PnlVacacionesAdd.Visible = false;
GvVacaciones.DataBind();
@@ -6346,7 +6346,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
range = libro.Range(Fila, 4, Fila, 21);
range.Merge();
range.Value = UsuarioActual.Empresa.Empresa;
Fila = Fila + 1;
Fila = Fila + 1;
range = libro.Range(Fila, 2, Fila, 3);
range.Merge();
@@ -6422,33 +6422,33 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
Fila++;
libro.Cell(Fila, 1).Value = erow["CodigoNombreCompleto"];
libro.Cell(Fila, 2).Value = erow["SalarioSUA"].ToString().ToDecimal();
libro.Cell(Fila, 3).Value = erow["SalarioSIG"].ToString().ToDecimal();
libro.Cell(Fila, 4).Value = erow["DiasMes"].ToString().ToDecimal();
libro.Cell(Fila, 5).Value = erow["DiasAsistio"].ToString().ToDecimal();
libro.Cell(Fila, 6).Value = erow["CuotaFijaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 7).Value = erow["CuotaFijaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 8).Value = erow["CuotaExcedenteSUA"].ToString().ToDecimal();
libro.Cell(Fila, 9).Value = erow["CuotaExcedenteSIG"].ToString().ToDecimal();
libro.Cell(Fila, 10).Value = erow["PrestacionesDineroSUA"].ToString().ToDecimal();
libro.Cell(Fila, 11).Value = erow["PrestacionesSIG"].ToString().ToDecimal();
libro.Cell(Fila, 12).Value = erow["GastosMedPenSUA"].ToString().ToDecimal();
libro.Cell(Fila, 13).Value = erow["GastosMedicosSIG"].ToString().ToDecimal();
libro.Cell(Fila, 14).Value = erow["RiesgosdeTrabajoSUA"].ToString().ToDecimal();
libro.Cell(Fila, 15).Value = erow["RiesgoTrabajoSIG"].ToString().ToDecimal();
libro.Cell(Fila, 16).Value = erow["InvalidezyVidaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 17).Value = erow["InvalidezyVidaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 18).Value = erow["GuarderiaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 19).Value = erow["GuarderiaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 20).Value = erow["RetiroSUA"].ToString().ToDecimal();
libro.Cell(Fila, 21).Value = erow["RetiroSIG"].ToString().ToDecimal();
libro.Cell(Fila, 2).Value = erow["SalarioSUA"].ToString().ToDecimal();
libro.Cell(Fila, 3).Value = erow["SalarioSIG"].ToString().ToDecimal();
libro.Cell(Fila, 4).Value = erow["DiasMes"].ToString().ToDecimal();
libro.Cell(Fila, 5).Value = erow["DiasAsistio"].ToString().ToDecimal();
libro.Cell(Fila, 6).Value = erow["CuotaFijaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 7).Value = erow["CuotaFijaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 8).Value = erow["CuotaExcedenteSUA"].ToString().ToDecimal();
libro.Cell(Fila, 9).Value = erow["CuotaExcedenteSIG"].ToString().ToDecimal();
libro.Cell(Fila, 10).Value = erow["PrestacionesDineroSUA"].ToString().ToDecimal();
libro.Cell(Fila, 11).Value = erow["PrestacionesSIG"].ToString().ToDecimal();
libro.Cell(Fila, 12).Value = erow["GastosMedPenSUA"].ToString().ToDecimal();
libro.Cell(Fila, 13).Value = erow["GastosMedicosSIG"].ToString().ToDecimal();
libro.Cell(Fila, 14).Value = erow["RiesgosdeTrabajoSUA"].ToString().ToDecimal();
libro.Cell(Fila, 15).Value = erow["RiesgoTrabajoSIG"].ToString().ToDecimal();
libro.Cell(Fila, 16).Value = erow["InvalidezyVidaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 17).Value = erow["InvalidezyVidaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 18).Value = erow["GuarderiaSUA"].ToString().ToDecimal();
libro.Cell(Fila, 19).Value = erow["GuarderiaSIG"].ToString().ToDecimal();
libro.Cell(Fila, 20).Value = erow["RetiroSUA"].ToString().ToDecimal();
libro.Cell(Fila, 21).Value = erow["RetiroSIG"].ToString().ToDecimal();
decimal VSUA = erow["SalarioSUA"].ToString().ToDecimal(); decimal VSIG = erow["SalarioSIG"].ToString().ToDecimal();
if (Math.Abs(VSUA - VSIG) > 1){ libro.Range(Fila, 2, Fila,3).Style.Font.FontColor = ClosedXML.Excel.XLColor.Red;}
decimal VSUA = erow["SalarioSUA"].ToString().ToDecimal(); decimal VSIG = erow["SalarioSIG"].ToString().ToDecimal();
if (Math.Abs(VSUA - VSIG) > 1) { libro.Range(Fila, 2, Fila, 3).Style.Font.FontColor = ClosedXML.Excel.XLColor.Red; }
VSUA = erow["DiasMes"].ToString().ToDecimal();VSIG = erow["DiasAsistio"].ToString().ToDecimal();
if (Math.Abs(VSUA - VSIG) > 1){libro.Range(Fila, 4, Fila, 5).Style.Font.FontColor = ClosedXML.Excel.XLColor.Red; }
VSUA = erow["DiasMes"].ToString().ToDecimal(); VSIG = erow["DiasAsistio"].ToString().ToDecimal();
if (Math.Abs(VSUA - VSIG) > 1) { libro.Range(Fila, 4, Fila, 5).Style.Font.FontColor = ClosedXML.Excel.XLColor.Red; }
VSUA = erow["CuotaFijaSUA"].ToString().ToDecimal(); VSIG = erow["CuotaFijaSIG"].ToString().ToDecimal();
if (Math.Abs(VSUA - VSIG) > 1) { libro.Range(Fila, 6, Fila, 7).Style.Font.FontColor = ClosedXML.Excel.XLColor.Red; }

View File

@@ -2702,6 +2702,7 @@
</asp:TemplateField>
<asp:BoundField DataField="FechaPago" DataFormatString="{0:dd/MM/yyyy}" HeaderText="Fecha pago" />
<asp:BoundField DataField="diasinhabiles" HeaderText="Días feriados" />
<asp:BoundField DataField="TipoPago" HeaderText="Tipo pago" />
<asp:BoundField DataField="DiasextraAutorizado" HeaderText="Días extra" />
<asp:BoundField DataField="diasPago" HeaderText="Días pago" />
<asp:TemplateField HeaderText="Aplica prima">

View File

@@ -362,6 +362,12 @@