carga masiva salarios
This commit is contained in:
@@ -84,14 +84,15 @@ public partial class Nomina_CatConcepto : ClsPaginas
|
||||
StringBuilder strKeys3;
|
||||
public void tree_Tables()
|
||||
{
|
||||
ClsNominas objnom = new ClsNominas();
|
||||
strKeys = new StringBuilder();
|
||||
strKeys2 = new StringBuilder();
|
||||
strKeys3 = new StringBuilder();
|
||||
StringBuilder tablaarbol = new StringBuilder();
|
||||
objnom.GetNom_Refencias(UsuarioActual.CveEmpresa);
|
||||
dtrefrencias = objnom.DtResultados;
|
||||
objnom.Dispose();
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
{
|
||||
objnom.GetNom_Refencias(UsuarioActual.CveEmpresa);
|
||||
dtrefrencias = objnom.DtResultados;
|
||||
}
|
||||
strKeys.Append("{");
|
||||
int tipo = 1;
|
||||
#region tablas
|
||||
@@ -472,7 +473,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
|
||||
//DdlCtaContable.SelectedValueExist(drow["CveCuenta"]);
|
||||
if (DdlCtaContable.DataValueField == "Id")
|
||||
{
|
||||
DdlCtaContable.SelectedValueExist( drow["IdCtaContable"]);
|
||||
DdlCtaContable.SelectedValueExist(drow["IdCtaContable"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -486,7 +487,8 @@ public partial class Nomina_CatConcepto : ClsPaginas
|
||||
// DdlCtaContable.SelectedValueExist(drow["IdCtaContable"]);
|
||||
//}
|
||||
DdlConceptoSAT.SelectedValueExist(drow["CveSATConcepto"]);
|
||||
}else
|
||||
}
|
||||
else
|
||||
{
|
||||
CveConcepto = 0;
|
||||
|
||||
|
||||
@@ -262,6 +262,9 @@
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkModalPlantillaNomina" OnClick="LnkModalPlantillaNomina_Click" runat="server"><i class="fa fa-upload"></i>Cargar masiva de conceptos</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkModalPlantillaNominaUnConc" OnClick="LnkModalPlantillaNominaUnConc_Click" runat="server"><i class="fa fa-upload"></i>Cargar masiva un concepto</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkCargaNetos" OnClick="LnkCargaNetos_Click" runat="server"><i class="fa fa-upload"></i>Cargar netos</asp:LinkButton>
|
||||
</li>
|
||||
@@ -3367,29 +3370,83 @@
|
||||
</div>
|
||||
<div class="portlet-body rowpadding ">
|
||||
<asp:TextBox ID="TxtArchivoNomina" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
|
||||
<div class=" text-right">
|
||||
<asp:CheckBox ID="ChkRecalcularNomina" Text="¿Volver a calcular la nómina?" runat="server" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class=" text-right">
|
||||
<asp:CheckBox ID="ChkRecalcularNomina" Text="¿Volver a calcular la nómina?" runat="server" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<asp:LinkButton ID="LnkCargarNomina" OnClick="LnkCargarNomina_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<asp:LinkButton ID="LnkCargarNomina" OnClick="LnkCargarNomina_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="LnkFormato" />
|
||||
<asp:PostBackTrigger ControlID="LnkFormato" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="DModalNominasUnConcepto" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel ID="UpCargarNominaUnConcepto" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div class="modal-content rowpadding">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<h4 class="modal-title" runat="server" style="text-align: left">Cargar Nómina de excel</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
<div class="portlet light smmallpadding bordered">
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
<i class="fa fa-upload font-green"></i>
|
||||
<span class="caption-subject bold uppercase">Carga Concepto </span>
|
||||
<!-- Caudillo-->
|
||||
</div>
|
||||
<div class="tools">
|
||||
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body rowpadding ">
|
||||
<div class="form-group form-md-line-input input-iconright">
|
||||
<asp:Label runat="server" Text="Concepto:" AssociatedControlID=""></asp:Label>
|
||||
<asp:DropDownList ID="DdlUnConcepto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
|
||||
</div>
|
||||
<asp:TextBox ID="TxtArchivoNominaConcepto" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
|
||||
<asp:LinkButton ID="LnkFormatoUnConcepto" OnClick="LnkFormatoUnConcepto_Click" CssClass="btn btn-success" runat="server"><i class="fa fa-download"></i> Descargar Plantilla</asp:LinkButton>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class=" text-right">
|
||||
<asp:CheckBox ID="ChkRecalcularNominaUnc" Text="¿Volver a calcular la nómina?" runat="server" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<asp:LinkButton ID="LinkButton4" OnClick="LnkCargarNomina_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="LnkFormatoUnConcepto" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
<div id="DmodalNetos" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel ID="uppanelnetos" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
|
||||
@@ -3402,7 +3459,7 @@
|
||||
<h4 class="modal-title" runat="server" style="text-align: left">Cargar Netos </h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
|
||||
|
||||
<div class="portlet light smmallpadding bordered">
|
||||
<div class="portlet-title">
|
||||
@@ -3415,17 +3472,17 @@
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="btn-group">
|
||||
<asp:LinkButton ID="LnkFormatoNetos" OnClick="LnkFormatoNetos_Click" CssClass="btn yellow-gold" runat="server"><i class="fa fa-download"></i> Descargar Plantilla</asp:LinkButton>
|
||||
<asp:LinkButton ID="LnkFormatoNetos" OnClick="LnkFormatoNetos_Click" CssClass="btn yellow-gold" runat="server"><i class="fa fa-download"></i> Descargar Plantilla</asp:LinkButton>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body rowpadding ">
|
||||
<div class=" row">
|
||||
<div class="col-md-3">Concepto</div>
|
||||
<div class="col-md-6">
|
||||
<asp:DropDownList ID="ddlConceptocomisionNeto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
|
||||
<asp:DropDownList ID="ddlConceptocomisionNeto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -249,7 +249,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
LnkCargaNetos.Visible = (UsuarioActual.CveRol == 1);
|
||||
LnkCargaNetos.Visible = (UsuarioActual.Empresa.Funcionalidad(267) == "1") ||(UsuarioActual.CveRol == 1);
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
{
|
||||
if (objrh.TiposTrabajadorGet(-1, UsuarioActual.CveEmpresa))
|
||||
@@ -2097,6 +2097,111 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected void LnkModalPlantillaNominaUnConc_Click(object sender, EventArgs e)
|
||||
{
|
||||
RegistraScript("$('#DModalNominasUnConcepto').modal();");
|
||||
|
||||
using (ClsNominas ObjNomina = new ClsNominas())
|
||||
{
|
||||
if (ObjNomina.GetConceptos(UsuarioActual.CveEmpresa))
|
||||
{
|
||||
DdlUnConcepto.DataSource = ObjNomina.DtResultados.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}");
|
||||
DdlUnConcepto.DataBind();
|
||||
}
|
||||
}
|
||||
|
||||
UpCargarNominaUnConcepto.Update();
|
||||
}
|
||||
protected void LnkFormatoUnConcepto_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
StringBuilder str = new StringBuilder("0");
|
||||
bool continuar = true;
|
||||
str.AppendFormat(",{0}", DdlUnConcepto.SelectedValue.ToEntero());
|
||||
string msgerror = "";
|
||||
if (dtConceptos == null || dtConceptos.Columns.Count <= 2)
|
||||
{
|
||||
msgerror = "Debe cargar el periodo antes de descargar la plantilla";
|
||||
continuar = false;
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
|
||||
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
|
||||
|
||||
var libro = wb.AddWorksheet("Nomina");
|
||||
int column = 1;
|
||||
libro.Cell(1, column).Value = "Codigo";
|
||||
column++;
|
||||
libro.Cell(1, column).Value = "Empleado";
|
||||
libro.Column(column).Width = 35;
|
||||
DataTable dtcP = dtConceptos.FiltraParametros(string.Format(" CveConcepto in({0})", str));
|
||||
foreach (DataRow row in dtcP.Rows)
|
||||
{
|
||||
column++;
|
||||
libro.Cell(1, column).Value = string.Format("{0} - {1} - Valor", row["Codigo"], row["Concepto"]);
|
||||
column++;
|
||||
libro.Cell(1, column).Value = string.Format("{0} - {1} - Importe", row["Codigo"], row["Concepto"]);
|
||||
column++;
|
||||
libro.Cell(1, column).Value = string.Format("{0} - {1} - ImporteGravado", row["Codigo"], row["Concepto"]);
|
||||
}
|
||||
|
||||
libro.Row(1).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White;
|
||||
libro.Row(1).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189));
|
||||
|
||||
int Fila = 1;
|
||||
foreach (DataRow erow in dtempleados.FiltraParametros("CvePersonal>0 AND NomAutorizado=0").Rows)
|
||||
{
|
||||
Fila++;
|
||||
column = 1;
|
||||
libro.Cell(Fila, column).Value = string.Format("'{0}", erow["Codigo"]);
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["Nombre"];
|
||||
foreach (DataRow row in dtcP.Rows)
|
||||
{
|
||||
column++;
|
||||
string Concepto = string.Format("VAL_{0}", row["CveConcepto"]);
|
||||
libro.Cell(Fila, column).Value = erow[Concepto];
|
||||
column++;
|
||||
Concepto = string.Format("V_{0}", row["CveConcepto"]);
|
||||
libro.Cell(Fila, column).Value = erow[Concepto];
|
||||
column++;
|
||||
Concepto = string.Format("VG_{0}", row["CveConcepto"]);
|
||||
libro.Cell(Fila, column).Value = erow[Concepto];
|
||||
}
|
||||
}
|
||||
libro.Columns().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}.xlsx", "Plantilla conceptos nómina "));
|
||||
Response.BinaryWrite(memoryStream.ToArray());
|
||||
Response.End();
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert(msgerror, TipoMensaje.MsgAdvertencia);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Alert("Ocurrio un error al generar el Formato de nominas" + ex.ToString(), TipoMensaje.MsgAdvertencia);
|
||||
}
|
||||
}
|
||||
protected void LnkCargarNomina_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
|
||||
Reference in New Issue
Block a user