Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -296,10 +296,14 @@ public partial class Nomina_CatConcepto : ClsPaginas
|
||||
|
||||
DdlCtaContable.DataSource = ObjConta.DtResultados;
|
||||
DdlCtaContable.DataBind();
|
||||
DdlCtaContableB.DataSource = ObjConta.DtResultados;
|
||||
DdlCtaContableB.DataBind();
|
||||
}
|
||||
}
|
||||
DdlCtaContable.Items.Insert(0, new ListItem("Seleccione", "-1"));
|
||||
DdlCtaContable.SelectedValueExist("-1");
|
||||
DdlCtaContableB.Items.Insert(0, new ListItem("Seleccione", "-1"));
|
||||
DdlCtaContableB.SelectedValueExist("-1");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -413,6 +413,14 @@
|
||||
DataTextField="TipoTrabajadorB" DataValueField="CveTipoTrabajador" ValidationGroup="GrpGuardar">
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
|
||||
<label class="col-md-1 compoonenlabel" style="line-height: 1; max-width: 65px;">Finiquito:</label>
|
||||
<div class="col-md-1">
|
||||
<asp:DropDownList ID="ddlfiniquito" runat="server" Style="width: 100% !important;" CssClass="select2me">
|
||||
<asp:ListItem Text="Mostrar" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Ocultar" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-2" style="max-width: 160px !important; white-space: nowrap;">
|
||||
<label class="compoonenlabel">Ver obligaciones:</label>
|
||||
<asp:CheckBox ID="Chkobligaciones" Text=" " CssClass="chksino" runat="server" />
|
||||
|
||||
@@ -249,7 +249,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
LnkCargaNetos.Visible = (UsuarioActual.Empresa.Funcionalidad(267) == "1") ||(UsuarioActual.CveRol == 1);
|
||||
LnkCargaNetos.Visible = (UsuarioActual.Empresa.Funcionalidad(267) == "1") || (UsuarioActual.CveRol == 1);
|
||||
if (UsuarioActual.CveEmpresa == 141) { ddlfiniquito.SelectedValueExist("2"); }
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
{
|
||||
if (objrh.TiposTrabajadorGet(-1, UsuarioActual.CveEmpresa))
|
||||
@@ -555,7 +556,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
LnkFormatoTabular.Visible = true;
|
||||
HypPDFSTimbrados.Visible = true;
|
||||
if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero(), CveTipoTrabajador: CveTipoTrabajador) && objnom.DTSetResultados.Tables.Count > 4)
|
||||
if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero(), CveTipoTrabajador: CveTipoTrabajador,Neto: ddlfiniquito.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 4)
|
||||
{
|
||||
dtempleados = objnom.DTSetResultados.Tables[3];
|
||||
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
|
||||
@@ -1210,41 +1211,68 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
|
||||
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "Correo", "NombreCompleto" });
|
||||
}
|
||||
foreach (GridViewRow gvRow in GvNominas.Rows)
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
using (ClsNominas ObjNomina = new ClsNominas())
|
||||
{
|
||||
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
|
||||
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
|
||||
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
|
||||
int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper() == "TRUE" ? 1 : gvRow.DataKey("SeTimbro").ToEntero());
|
||||
LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar");
|
||||
string Correo = string.Empty;
|
||||
string NombreCompleto = string.Empty;
|
||||
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
|
||||
foreach (GridViewRow gvRow in GvNominas.Rows)
|
||||
{
|
||||
Correo = drow["Correo"].ToString();
|
||||
NombreCompleto = drow["NombreCompleto"].ToString();
|
||||
}
|
||||
if (CvePersonal > 0 && SeTimbro == 1)
|
||||
{
|
||||
|
||||
if (Correo.Trim().Length > 0)
|
||||
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
|
||||
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
|
||||
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
|
||||
int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper() == "TRUE" ? 1 : gvRow.DataKey("SeTimbro").ToEntero());
|
||||
LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar");
|
||||
string Correo = string.Empty;
|
||||
string NombreCompleto = string.Empty;
|
||||
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
|
||||
{
|
||||
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
|
||||
if (pdf != null)
|
||||
{
|
||||
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
|
||||
// Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch);
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
{
|
||||
objrh.NomBitacoraCorreoAdd(CvePeriodoSeleccionado, CvePersonal, Correo.Trim(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario);
|
||||
}
|
||||
|
||||
}
|
||||
Correo = drow["Correo"].ToString();
|
||||
NombreCompleto = drow["NombreCompleto"].ToString();
|
||||
}
|
||||
if (CvePersonal > 0 && SeTimbro == 1)
|
||||
{
|
||||
|
||||
if (Correo.Trim().Length > 0)
|
||||
{
|
||||
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
|
||||
if (pdf != null)
|
||||
{
|
||||
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
|
||||
|
||||
if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
string Ruta = "";
|
||||
string PathXML = "";
|
||||
string PathXMLF = "";
|
||||
string Xmlname = "";
|
||||
string XmlnameF = "";
|
||||
string empleado = "";
|
||||
Ruta = UsuarioActual.Empresa.Ruta;
|
||||
PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml";
|
||||
PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
Xmlname = $"{ObjNomina.SerieFolio}.xml";
|
||||
XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
|
||||
if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname });
|
||||
}
|
||||
if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF });
|
||||
}
|
||||
}
|
||||
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
|
||||
// Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch);
|
||||
|
||||
objrh.NomBitacoraCorreoAdd(CvePeriodoSeleccionado, CvePersonal, Correo.Trim(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Alert("se reenviaron los recibos timbrados");
|
||||
@@ -1298,7 +1326,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
|
||||
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "Correo", "NombreCompleto", "RFC", "CURP" });
|
||||
}
|
||||
foreach (GridViewRow gvRow in GvNominas.Rows)
|
||||
using (ClsNominas ObjNomina = new ClsNominas()) {
|
||||
foreach (GridViewRow gvRow in GvNominas.Rows)
|
||||
{
|
||||
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
|
||||
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
|
||||
@@ -1347,6 +1376,30 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
|
||||
|
||||
if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
string Ruta = "";
|
||||
string PathXML = "";
|
||||
string PathXMLF = "";
|
||||
string Xmlname = "";
|
||||
string XmlnameF = "";
|
||||
string empleado = "";
|
||||
Ruta = UsuarioActual.Empresa.Ruta;
|
||||
PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml";
|
||||
PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
Xmlname = $"{ObjNomina.SerieFolio}.xml";
|
||||
XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
|
||||
if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname });
|
||||
}
|
||||
if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF });
|
||||
}
|
||||
}
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
|
||||
//Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch);
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
@@ -1362,6 +1415,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if (msggral.Length > 0)
|
||||
{
|
||||
|
||||
@@ -1438,11 +1492,39 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
if (Correo.Trim().Length > 0)
|
||||
{
|
||||
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
|
||||
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
|
||||
if (pdf != null)
|
||||
{
|
||||
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
|
||||
|
||||
using (ClsNominas ObjNomina = new ClsNominas())
|
||||
{
|
||||
|
||||
if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
string Ruta = "";
|
||||
string PathXML = "";
|
||||
string PathXMLF = "";
|
||||
string Xmlname = "";
|
||||
string XmlnameF = "";
|
||||
string empleado = "";
|
||||
Ruta = UsuarioActual.Empresa.Ruta;
|
||||
PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml";
|
||||
PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
Xmlname = $"{ObjNomina.SerieFolio}.xml";
|
||||
XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
|
||||
if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname });
|
||||
}
|
||||
if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF });
|
||||
}
|
||||
}
|
||||
}
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
{
|
||||
@@ -1522,6 +1604,34 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
|
||||
|
||||
using (ClsNominas ObjNomina = new ClsNominas())
|
||||
{
|
||||
|
||||
if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
string Ruta = "";
|
||||
string PathXML = "";
|
||||
string PathXMLF = "";
|
||||
string Xmlname = "";
|
||||
string XmlnameF = "";
|
||||
string empleado = "";
|
||||
Ruta = UsuarioActual.Empresa.Ruta;
|
||||
PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml";
|
||||
PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
Xmlname = $"{ObjNomina.SerieFolio}.xml";
|
||||
XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml";
|
||||
|
||||
if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname });
|
||||
}
|
||||
if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF))
|
||||
{
|
||||
objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF });
|
||||
}
|
||||
}
|
||||
}
|
||||
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
|
||||
using (ClsRH objrh = new ClsRH())
|
||||
{
|
||||
@@ -1768,9 +1878,9 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
}
|
||||
protected void LnkCargarNominaNetos_Click(object sender, EventArgs e)
|
||||
{
|
||||
LnkCargarNomina_Click(sender, e);
|
||||
LnkCargarNomina_Click(sender, e);
|
||||
}
|
||||
protected void LnkFormatoNetos_Click(object sender, EventArgs e)
|
||||
protected void LnkFormatoNetos_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -2119,7 +2229,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
StringBuilder str = new StringBuilder("0");
|
||||
bool continuar = true;
|
||||
str.AppendFormat(",{0}", DdlUnConcepto.SelectedValue.ToEntero());
|
||||
str.AppendFormat(",{0}", DdlUnConcepto.SelectedValue.ToEntero());
|
||||
string msgerror = "";
|
||||
if (dtConceptos == null || dtConceptos.Columns.Count <= 2)
|
||||
{
|
||||
@@ -2132,12 +2242,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
|
||||
|
||||
var libro = wb.AddWorksheet("Nomina");
|
||||
int column = 1;
|
||||
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));
|
||||
DataTable dtcP = dtConceptos.FiltraParametros(string.Format(" CveConcepto in({0})", str));
|
||||
foreach (DataRow row in dtcP.Rows)
|
||||
{
|
||||
column++;
|
||||
@@ -2736,7 +2846,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
e.Row.FCDropDownList("DdlTipoAsistencias").SelectedValue = e.Row.DBCampo("CveAsistenciasInasistencias");
|
||||
|
||||
// Carga Motivos Horas Extras
|
||||
e.Row.FCDropDownList("DdlMotivoHoraExtra").DataSource = GlobalDTMotivosHorasExtras.FiltraParametros("CveEmpresa = " + UsuarioActual.CveEmpresa);
|
||||
e.Row.FCDropDownList("DdlMotivoHoraExtra").DataSource = get_GlobalDTMotivosHorasExtras(UsuarioActual.CveEmpresa).FiltraParametros("CveEmpresa = " + UsuarioActual.CveEmpresa);
|
||||
e.Row.FCDropDownList("DdlMotivoHoraExtra").DataBind();
|
||||
if (e.Row.DBCampo("CveMotivoHoraExtra") != "-1")
|
||||
e.Row.FCDropDownList("DdlMotivoHoraExtra").SelectedValue = e.Row.DBCampo("CveMotivoHoraExtra");
|
||||
@@ -6828,7 +6938,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
}
|
||||
if (DdlMotivoHoraExtra.Items.Count == 1)
|
||||
{
|
||||
DdlMotivoHoraExtra.DataSource = GlobalDTMotivosHorasExtras.FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa));
|
||||
DdlMotivoHoraExtra.DataSource = get_GlobalDTMotivosHorasExtras(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa));
|
||||
DdlMotivoHoraExtra.DataBind();
|
||||
|
||||
}
|
||||
@@ -6947,7 +7057,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
while (Neto != NetoSimulado && continuarV)
|
||||
{
|
||||
|
||||
if (objnom.GetNominaEmpleado(CveProyecto, CveSubProyecto, CveTurno, CvePeriodo, CveEmpresa, Agrupador, -1, 1, Neto)
|
||||
if (objnom.GetNominaEmpleado(CveProyecto, CveSubProyecto, CveTurno, CvePeriodo, CveEmpresa, Agrupador, -1, 1, Neto,ddlfiniquito.SelectedValue.ToEntero())
|
||||
&& objnom.DTSetResultados.Tables.Count > 1)
|
||||
{
|
||||
dtempleadosSimula = objnom.DTSetResultados.Tables[3];
|
||||
@@ -8466,7 +8576,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
DateTime fechai = TxtRIFechaInicio.Text.ToDateTime();
|
||||
DateTime fechaf = TxtRIFechaFin.Text.ToDateTime();
|
||||
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
|
||||
int CveTipoPeriodo=0;
|
||||
int CveTipoPeriodo = 0;
|
||||
using (ClsNominas nom = new ClsNominas())
|
||||
{
|
||||
if (nom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado, -1) && (nom.DtResultados.Rows.Count > 0))
|
||||
@@ -8476,7 +8586,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
CveTipoPeriodo = -nom.DtResultados.Rows[0]["CveTipoPeriodo"].ToString().ToEntero();
|
||||
}
|
||||
|
||||
if (nom.ReportedeincidenciasGET(UsuarioActual.CveEmpresa, fechai, fechaf, CveTipoPeriodo))
|
||||
if (nom.ReportedeincidenciasGET(UsuarioActual.CveEmpresa, fechai, fechaf, CveTipoPeriodo))
|
||||
{
|
||||
|
||||
var libro = wb.AddWorksheet(nom.DTSetResultados.Tables[2], "Incidencias");
|
||||
|
||||
@@ -28,9 +28,6 @@
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkDescargar" OnClick="LnkDescargar_Click" runat="server"><i class="fa fa-ad-excel"></i> Descargar</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkFormatocMasiva" OnClick="LnkFormatocMasiva_Click" runat="server"><i class="fa fa-ad-excel"></i> Formato carga masiva</asp:LinkButton>
|
||||
</li>
|
||||
<li>
|
||||
<asp:LinkButton ID="LnkModalCargaMasiva" OnClick="LnkModalCargaMasiva_Click" runat="server"><i class="fa fa-save"></i> Carga masiva</asp:LinkButton>
|
||||
</li>
|
||||
@@ -46,7 +43,6 @@
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="LnkDescargar" />
|
||||
<asp:PostBackTrigger ControlID="LnkFormatocMasiva" />
|
||||
<%-- <asp:PostBackTrigger ControlID="LnkListaRaya" /> --%>
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
@@ -203,7 +199,8 @@
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Right">
|
||||
<HeaderTemplate>
|
||||
Salario
|
||||
<br />SUA
|
||||
<br />
|
||||
SUA
|
||||
</HeaderTemplate>
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblSalarioSUA" runat="server" Text='<%# Eval("SalarioSUA","{0:N2}")%>'> </asp:Label>
|
||||
@@ -839,7 +836,7 @@
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="DmodalCargaMasiva" class="modal ADS fade" role="dialog">
|
||||
<asp:UpdatePanel ID="UpCargarm" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
@@ -848,10 +845,10 @@
|
||||
<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">Carga masiva salario</h4>
|
||||
<h4 class="modal-title" runat="server" style="text-align: left">Carga masiva</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
||||
|
||||
<div class="portlet light smmallpadding bordered">
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
@@ -862,43 +859,59 @@
|
||||
<div class="tools">
|
||||
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="btn-group">
|
||||
|
||||
<asp:LinkButton ID="LnkFormatocMasivaRegistroPatronal" CssClass="btn btn-default" OnClick="LnkFormatocMasivaRegistroPatronal_Click" runat="server"><i class="fa fa-ad-excel"></i> Formato Registro Patronal</asp:LinkButton>
|
||||
<asp:LinkButton ID="LnkFormatocMasiva" CssClass="btn btn-default" OnClick="LnkFormatocMasiva_Click" runat="server"><i class="fa fa-ad-excel"></i> Formato Salario</asp:LinkButton>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body rowpadding ">
|
||||
<div class="portlet-body rowpadding ">
|
||||
<div class="row">
|
||||
|
||||
<asp:Label ID="Label2" runat="server" CssClass="col-md-1 ">Fecha :</asp:Label>
|
||||
<div class="col-md-2" id="Div2" runat="server">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 110px !important; padding: 0px; margin-bottom: -10px;">
|
||||
<asp:TextBox ID="txtfechacargamasiva" runat="server" Text="01/03/2021" CssClass="form-control" CausesValidation="true" Width="90%" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="lnkcargamasiva" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="txtfechacargamasiva" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="txtfechacargamasiva" PopupButtonID="lnkcargamasiva" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<%--<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="txtfechacargamasiva" Display="None" ErrorMessage="El campo <b>''Fecha Pago''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<label class="col-md-1 compoonenlabel" style="line-height: 1; max-width: 65px;">Tipo:</label>
|
||||
<div class="col-md-4">
|
||||
<asp:DropDownList ID="ddltipoCarga" runat="server" Style="width: 100% !important;" CssClass="select2me">
|
||||
<asp:ListItem Text="Salario" Value="1"></asp:ListItem>
|
||||
<asp:ListItem Text="Registro Patronal" Value="2"></asp:ListItem>
|
||||
</asp:DropDownList>
|
||||
</div>
|
||||
<asp:Label ID="Label2" runat="server" CssClass="col-md-1 ">Fecha :</asp:Label>
|
||||
<div class="col-md-2" id="Div2" runat="server">
|
||||
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 110px !important; padding: 0px; margin-bottom: -10px;">
|
||||
<asp:TextBox ID="txtfechacargamasiva" runat="server" Text="01/03/2021" CssClass="form-control" CausesValidation="true" Width="90%" MaxLength="10"></asp:TextBox>
|
||||
<span class="input-group-btn ">
|
||||
<asp:LinkButton ID="lnkcargamasiva" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
|
||||
</span>
|
||||
</div>
|
||||
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="txtfechacargamasiva" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
|
||||
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="txtfechacargamasiva" PopupButtonID="lnkcargamasiva" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
|
||||
<%--<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="txtfechacargamasiva" Display="None" ErrorMessage="El campo <b>''Fecha Pago''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="GrpGuardar"></asp:CompareValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="CompareValidator1" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtfechacargamasiva" Display="None" ErrorMessage="El campo <b>''Fecha Pago''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator1" Width="350px"></ajax:ValidatorCalloutExtender>--%>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<asp:TextBox ID="TxtArchivoNomina" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="modal-footer">
|
||||
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<asp:LinkButton ID="LnkProcesarArchvo" OnClick="LnkProcesarArchvo_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="LnkProcesarArchvo" OnClick="LnkProcesarArchvo_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
<Triggers>
|
||||
<Triggers>
|
||||
<asp:PostBackTrigger ControlID="LnkFormatocMasiva" />
|
||||
<asp:PostBackTrigger ControlID="LnkFormatocMasivaRegistroPatronal" />
|
||||
</Triggers>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Net.Http.Headers;
|
||||
using System.Text;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
@@ -237,12 +238,92 @@ public partial class RH_CalculoSBC : ClsPaginas
|
||||
UpCargarm.Update();
|
||||
RegistraScript("$('#DmodalCargaMasiva').modal();");
|
||||
}
|
||||
protected void LnkFormatocMasivaRegistroPatronal_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
bool continuar = true;
|
||||
string msgerror = "";
|
||||
if (dtsalario == null || dtsalario.Rows.Count == 0)
|
||||
{
|
||||
msgerror = "favor de calcular primero";
|
||||
continuar = false;
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
|
||||
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
|
||||
|
||||
var libro = wb.AddWorksheet("Salario");
|
||||
int column = 1;
|
||||
libro.Cell(1, column).Value = "Codigo";
|
||||
column++;
|
||||
libro.Cell(1, column).Value = "Empleado";
|
||||
column++;
|
||||
libro.Cell(1, column).Value = "RegistroPatronal";
|
||||
//column++;
|
||||
//libro.Cell(1, column).Value = "SDI";
|
||||
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 dtsalario.Rows)
|
||||
{
|
||||
Fila++;
|
||||
column = 1;
|
||||
libro.Cell(Fila, column).Value = string.Format("'{0}", erow["Codigo"]);
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["Nombre"];
|
||||
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["RegistroPatronal"];
|
||||
//column++;
|
||||
//////libro.Cell(Fila, column).Value = erow["SDI"];
|
||||
////column++;
|
||||
////libro.Cell(Fila, column).Value = erow["SalarioVariable"];
|
||||
}
|
||||
|
||||
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 Salario "));
|
||||
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 LnkFormatocMasiva_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
bool continuar = true;
|
||||
string msgerror = "";
|
||||
if (dtsalario == null || dtsalario.Rows.Count == 0)
|
||||
{
|
||||
msgerror = "favor de calcular primero";
|
||||
continuar = false;
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
|
||||
@@ -274,8 +355,8 @@ public partial class RH_CalculoSBC : ClsPaginas
|
||||
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["SalarioDiario"];
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["SDI"];
|
||||
//column++;
|
||||
//libro.Cell(Fila, column).Value = erow["SDI"];
|
||||
column++;
|
||||
libro.Cell(Fila, column).Value = erow["SalarioVariable"];
|
||||
}
|
||||
@@ -313,24 +394,26 @@ public partial class RH_CalculoSBC : ClsPaginas
|
||||
|
||||
protected void LnkProcesarArchvo_Click(object sender, EventArgs e)
|
||||
{
|
||||
DataTable dttempsalario = null;
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
if (ddltipoCarga.SelectedValue.ToEntero() == 1)
|
||||
{
|
||||
if (objnom.GetCalculoSBC(UsuarioActual.CveEmpresa, DdlTipo.SelectedValue.ToEntero(), txtfechacargamasiva.Text, DdlRegistroPatronal.SelectedValue.ToEntero()))
|
||||
{
|
||||
dttempsalario = objnom.DTSetResultados.Tables[0];
|
||||
}
|
||||
}
|
||||
try
|
||||
{
|
||||
List<Archivo> Filesgral = TxtArchivoNomina.getfiles().Archivos;
|
||||
Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null;
|
||||
DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true);
|
||||
|
||||
StringBuilder str = new StringBuilder();
|
||||
bool rollback = false;
|
||||
using (ClsRH objpersonal = new ClsRH())
|
||||
DataTable dttempsalario = null;
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
{
|
||||
if (objnom.GetCalculoSBC(UsuarioActual.CveEmpresa, DdlTipo.SelectedValue.ToEntero(), txtfechacargamasiva.Text, DdlRegistroPatronal.SelectedValue.ToEntero()))
|
||||
{
|
||||
dttempsalario = objnom.DTSetResultados.Tables[0];
|
||||
}
|
||||
}
|
||||
try
|
||||
{
|
||||
List<Archivo> Filesgral = TxtArchivoNomina.getfiles().Archivos;
|
||||
Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null;
|
||||
DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true);
|
||||
|
||||
StringBuilder str = new StringBuilder();
|
||||
bool rollback = false;
|
||||
using (ClsRH objpersonal = new ClsRH())
|
||||
using (ClsNominas objNomina = new ClsNominas(objpersonal.IniciaTransacSQL()))
|
||||
{
|
||||
|
||||
@@ -380,10 +463,50 @@ public partial class RH_CalculoSBC : ClsPaginas
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception) { }
|
||||
catch (Exception) { }
|
||||
|
||||
RegistraScript("$('#ModalDoctos').modal('hide');");
|
||||
}
|
||||
if (ddltipoCarga.SelectedValue.ToEntero() == 2)
|
||||
{
|
||||
|
||||
List<Archivo> Filesgral = TxtArchivoNomina.getfiles().Archivos;
|
||||
Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null;
|
||||
DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true);
|
||||
|
||||
StringBuilder str = new StringBuilder();
|
||||
bool rollback = false;
|
||||
using (ClsClaseBase objNomina = new ClsClaseBase( ))
|
||||
using (ClsRH objpersonal = new ClsRH())
|
||||
{
|
||||
|
||||
foreach (DataRow row in DTEXcel.FiltraParametros("LEN(Codigo)>0 ").Rows)
|
||||
{
|
||||
string Codigo = row["Codigo"].ToString();
|
||||
int CvePersonal = -1; // row["CvePersonal"].ToString().ToEntero();
|
||||
string RegistroPatronal = row["RegistroPatronal"].ToString() ;
|
||||
int CveMetodoPago = 0;
|
||||
if (Codigo != "-1" && objpersonal.GetPersonal(CvePersonal, Codigo, "-1", "-1", "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, "-1", "-1", "-1", "-1", UsuarioActual.CveEmpresa) &&
|
||||
objpersonal.DtResultados.Rows.Count == 1)
|
||||
{
|
||||
CvePersonal = objpersonal.CvePersonal;
|
||||
CveMetodoPago = objpersonal.CveMetodoPago;
|
||||
}
|
||||
else
|
||||
{
|
||||
CvePersonal = 0;
|
||||
str.AppendLine(string.Format("No se encontro el codigo {0}<br>", Codigo));
|
||||
}
|
||||
if (CvePersonal > 0)
|
||||
{
|
||||
objNomina.runQuerystr(string.Format("EXEC PA_RH_PersonalRPUpdate {0},'{1}'", CvePersonal, RegistroPatronal));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
RegistraScript("$('#DmodalCargaMasiva').modal('hide');");
|
||||
}
|
||||
protected void LnkDownArchivosSua_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user