This commit is contained in:
@@ -6,6 +6,7 @@ using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using Extensiones;
|
||||
using static Extensiones.ModExtensiones;
|
||||
|
||||
public partial class Nomina_Finiquito : ClsPaginas
|
||||
{
|
||||
@@ -42,6 +43,38 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
get { return ViewState["DtAltas"] != null ? (DataTable)ViewState["DtAltas"] : null; }
|
||||
set { ViewState["DtAltas"] = value; }
|
||||
}
|
||||
|
||||
private DataTable dtConceptos
|
||||
{
|
||||
get
|
||||
{
|
||||
if (ViewState["dtConceptos"] == null) { return null; }
|
||||
else { return (DataTable)ViewState["dtConceptos"]; }
|
||||
}
|
||||
|
||||
set { ViewState["dtConceptos"] = value; }
|
||||
}
|
||||
|
||||
private DataTable dtempleadosConceptos
|
||||
{
|
||||
get
|
||||
{
|
||||
if (ViewState["dtempleadosConceptos"] == null) { return null; }
|
||||
else { return (DataTable)ViewState["dtempleadosConceptos"]; }
|
||||
}
|
||||
|
||||
set { ViewState["dtempleadosConceptos"] = value; }
|
||||
}
|
||||
private DataTable dtempleados
|
||||
{
|
||||
get
|
||||
{
|
||||
if (ViewState["dtempleados"] == null) { return null; }
|
||||
else { return (DataTable)ViewState["dtempleados"]; }
|
||||
}
|
||||
|
||||
set { ViewState["dtempleados"] = value; }
|
||||
}
|
||||
#endregion
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
@@ -154,6 +187,7 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
}
|
||||
protected void LnkConcepto_Click(object sender, EventArgs e)
|
||||
{
|
||||
Alert("x");
|
||||
//SRCveConcepto = ((LinkButton)sender).CommandArgument.ToEntero();
|
||||
//SRTipoConcepto = ((LinkButton)sender).CommandArgument;
|
||||
//#region carga conceptos
|
||||
@@ -296,9 +330,32 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
}
|
||||
|
||||
protected void LnkTimbrar_Click(object sender, EventArgs e)
|
||||
{
|
||||
Alert("El finiquito se ha timbrado satisfactoriamente");
|
||||
LnkTimbrar.Visible = false;
|
||||
{
|
||||
int CvePeriodo = CvePeriodoFiniquito;
|
||||
|
||||
string[] getcolumnas = new string[] { "CvePersonal", "CveMetodoPago", "CveNomina", "Total", "SalarioDiario", "SalarioDiarioIMSS", "SalarioDiarioIntegrado", "DiasLaborados", "DiasFaltados", "DiasVacaciones", "DiasIncapacidad" };
|
||||
|
||||
DataTable dtr = dtempleados.FiltraParametros(string.Format("(CvePersonal={0} OR {0}=-1) AND CvePersonal > 0 AND NomAutorizado =0", CvePersonal), "", getcolumnas);
|
||||
int CveNomina = dtr.Rows[0]["CveNomina"].ToString().ToEntero();
|
||||
LogicNominas lognom = new LogicNominas();
|
||||
|
||||
string Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual);
|
||||
if (Msg != null && Msg.Length > 0)
|
||||
{ Alert(Msg, TipoMensaje.MsgAdvertencia); }
|
||||
else
|
||||
{
|
||||
ClsNominas ObjPeriodo = new ClsNominas();
|
||||
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
|
||||
ObjPeriodo.Dispose();
|
||||
//Alert("Se ha timbrado correctamente");
|
||||
|
||||
Alert("El finiquito se ha timbrado satisfactoriamente");
|
||||
LnkTimbrar.Visible = false;
|
||||
loadsobrerecibo(); UPDatos.Update();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
protected void LnkFormatoRenuncia_Click(object sender, EventArgs e)
|
||||
@@ -461,6 +518,10 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa);
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
continuar = onom.GetFiniquitosPersonal(CvePersonal, UsuarioActual.CveEmpresa);
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
ObjPersonal.Commit();
|
||||
}
|
||||
@@ -472,31 +533,20 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
}
|
||||
|
||||
}
|
||||
UPDatos.Update();
|
||||
}
|
||||
public void loadsobrerecibo()
|
||||
{
|
||||
List<NConcepto> finordin = null;
|
||||
List<NConcepto> finindem = null;
|
||||
|
||||
/*
|
||||
DataTable dtConceptos = null;
|
||||
DataTable dtempleadosConceptos = null;
|
||||
DataTable dtempleados = null;
|
||||
|
||||
|
||||
*/
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
{
|
||||
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoFiniquito, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
|
||||
{
|
||||
dtempleados = objnom.DTSetResultados.Tables[3];
|
||||
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
|
||||
dtConceptos = objnom.DTSetResultados.Tables[0];
|
||||
}
|
||||
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
|
||||
{
|
||||
finordin = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
|
||||
}
|
||||
dtempleadosConceptos = null;
|
||||
dtempleados = null;
|
||||
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoIndemnizacion, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
|
||||
{
|
||||
dtempleados = objnom.DTSetResultados.Tables[3];
|
||||
@@ -507,23 +557,183 @@ public partial class Nomina_Finiquito : ClsPaginas
|
||||
{
|
||||
finindem = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
|
||||
}
|
||||
dtempleadosConceptos = null;
|
||||
dtempleados = null;
|
||||
if (objnom.GetNominaEmpleado(-1, -1, -1, CvePeriodoFiniquito, UsuarioActual.CveEmpresa, 1, 3, CvePersonal) && objnom.DTSetResultados.Tables.Count > 1)
|
||||
{
|
||||
dtempleados = objnom.DTSetResultados.Tables[3];
|
||||
LnkAutorizar.Visible = (dtempleados.COUNT("CvePersonal", "NomAutorizado =0") > 0);
|
||||
LnkGuardarDatos.Enabled = LnkAutorizar.Visible;
|
||||
LnkTimbrar.Visible = !(LnkAutorizar.Visible) && (dtempleados.COUNT("CvePersonal", "SeTimbro=0") > 0);
|
||||
UpAcciones.Update();
|
||||
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
|
||||
dtConceptos = objnom.DTSetResultados.Tables[0];
|
||||
}
|
||||
if (dtConceptos != null && dtempleadosConceptos != null && dtempleados != null)
|
||||
{
|
||||
finordin = cargasobrericiboconceptos(dtConceptos, dtempleadosConceptos, dtempleados);
|
||||
}
|
||||
|
||||
}
|
||||
GvFinOrdinario.DataSource = finordin;
|
||||
GVFinIndemnizacion.DataSource = finindem;
|
||||
GvFinOrdinario.DataBind();
|
||||
GVFinIndemnizacion.DataBind();
|
||||
LnkGuardarDatos.Enabled = false;
|
||||
LnkGuardarDatos.CssClass = "btn btn-default";
|
||||
LnkGuardarDatos.ToolTip = "el finiquito ha sido capturado.";
|
||||
//LnkGuardarDatos.Enabled = false;
|
||||
if (!(LnkGuardarDatos.Enabled))
|
||||
{
|
||||
|
||||
LnkGuardarDatos.CssClass = "btn btn-default";
|
||||
LnkGuardarDatos.ToolTip = "el finiquito ha sido capturado.";
|
||||
}
|
||||
LnkAutorizar.Visible = true;
|
||||
}
|
||||
|
||||
protected void LnkAutorizar_Click(object sender, EventArgs e)
|
||||
{
|
||||
autorizarNomina(CvePersonal);
|
||||
UPDatos.Update();
|
||||
//Alert("El finiquito se ha autorizado satisfactoriamente.");
|
||||
//LnkAutorizar.Visible = false;
|
||||
//LnkTimbrar.Visible = true;
|
||||
}
|
||||
|
||||
Alert("El finiquito se ha autorizado satisfactoriamente.");
|
||||
LnkAutorizar.Visible = false;
|
||||
LnkTimbrar.Visible = true;
|
||||
|
||||
private void autorizarNomina(int FiltroCvePersonal)
|
||||
{
|
||||
|
||||
bool continuar = true;
|
||||
string[] getcolumnas = new string[] { "CvePersonal", "CveMetodoPago", "SumaPercepciones", "Total", "SalarioDiario", "SalarioDiarioIMSS", "SalarioDiarioIntegrado", "DiasLaborados", "DiasFaltados", "DiasVacaciones", "DiasIncapacidad" };
|
||||
|
||||
DataTable dtr = dtempleados.FiltraParametros(string.Format("(CvePersonal={0} OR {0}=-1) AND CvePersonal > 0 AND NomAutorizado =0", FiltroCvePersonal), "", getcolumnas);
|
||||
DataTable dtconp = null;
|
||||
int CvePeriodoSeleccionado = CvePeriodoFiniquito;//cambiar reparar
|
||||
#region PropNomina
|
||||
int CvePersonal = 0;
|
||||
int CveNomina = 0;
|
||||
int CveMetodoPago = 0;
|
||||
double SubTotal = 0;
|
||||
double Total = 0;
|
||||
int CveMoneda = 1;
|
||||
#endregion
|
||||
#region PropNominaDetalle
|
||||
int CveConcepto = 0;
|
||||
decimal ImporteConcepto = 0, ImporteGravadoConcepto = 0, ImporteExentoConcepto = 0, ImporteValor = 0;
|
||||
#endregion
|
||||
|
||||
|
||||
using (ClsNominas objNomina = new ClsNominas())
|
||||
{
|
||||
objNomina.IniciaTransacSQL();
|
||||
foreach (DataRow rtemp in dtr.Rows)
|
||||
{
|
||||
CveNomina = 0;
|
||||
CvePersonal = rtemp["CvePersonal"].ToString().ToEntero();
|
||||
CveMetodoPago = rtemp["CveMetodoPago"].ToString().ToEntero();
|
||||
SubTotal = rtemp["SumaPercepciones"].ToString().ToDouble();
|
||||
Total = rtemp["Total"].ToString().ToDouble();
|
||||
if (CvePersonal > 0)
|
||||
{
|
||||
if (continuar)
|
||||
{
|
||||
if (objNomina.GetNom_Nominas(-1, CvePersonal, CvePeriodoSeleccionado, -1, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
|
||||
if (objNomina.DtResultados.Rows.Count > 0)
|
||||
{
|
||||
CveNomina = objNomina.CveNomina;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (objNomina.AddNom_Nominas(-1, 1, CvePersonal, CvePeriodoSeleccionado, SubTotal, 0, 0, Total, CveMoneda, 1, CveMetodoPago, DateTime.Now, "Deducciones nómina",
|
||||
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
CveNomina = objNomina.CveNomina;
|
||||
}
|
||||
else
|
||||
{
|
||||
continuar = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (CveNomina == 0)
|
||||
{
|
||||
continuar = false;
|
||||
}
|
||||
|
||||
|
||||
if (continuar)
|
||||
{
|
||||
dtconp = dtempleadosConceptos.FiltraParametros(string.Format("CvePersonal={0} AND Importe<>0", CvePersonal));
|
||||
foreach (DataRow rcon in dtconp.Rows)
|
||||
{
|
||||
|
||||
CveConcepto = rcon["CveConcepto"].ToString().ToEntero();
|
||||
ImporteConcepto = rcon["Importe"].ToString().ToDecimal();
|
||||
ImporteGravadoConcepto = rcon["ImporteGravado"].ToString().ToDecimal();
|
||||
ImporteExentoConcepto = ImporteConcepto - ImporteGravadoConcepto;
|
||||
ImporteValor = rcon["Valor"].ToString().ToDecimal();
|
||||
if (continuar)
|
||||
{
|
||||
|
||||
if (!objNomina.AddUPNom_NominasDetalles(CveNomina, CvePeriodoSeleccionado, CvePersonal, CveConcepto, ImporteConcepto, ImporteGravadoConcepto, ImporteExentoConcepto, ImporteValor, UsuarioActual.CveUsuario))
|
||||
{
|
||||
continuar = false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
decimal SalarioDiario = rtemp["SalarioDiario"].ToString().ToEntero();
|
||||
decimal SalarioDiarioIMSS = rtemp["SalarioDiarioIMSS"].ToString().ToEntero();
|
||||
decimal SalarioDiarioIntegrado = rtemp["SalarioDiarioIntegrado"].ToString().ToEntero();
|
||||
int DiasLaborados = rtemp["DiasLaborados"].ToString().ToEntero();
|
||||
int DiasFaltados = rtemp["DiasFaltados"].ToString().ToEntero();
|
||||
int DiasVacaciones = rtemp["DiasVacaciones"].ToString().ToEntero();
|
||||
int DiasIncapacidad = rtemp["DiasIncapacidad"].ToString().ToEntero();
|
||||
continuar = objNomina.PA_Nom_NominasAutorizarUP(CvePersonal, CvePeriodoSeleccionado, SalarioDiario, SalarioDiarioIMSS, SalarioDiarioIntegrado, 0, 0, Total, SubTotal, DiasLaborados, DiasFaltados, DiasVacaciones, DiasIncapacidad);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (continuar)
|
||||
{
|
||||
continuar = objNomina.AutorizaNom_Nominas(-1, CvePeriodoSeleccionado, true);
|
||||
}
|
||||
|
||||
if (continuar)
|
||||
{
|
||||
objNomina.Commit();
|
||||
LnkAutorizar.Visible = false;
|
||||
LnkTimbrar.Visible = true;
|
||||
|
||||
LnkGuardarDatos.Enabled = false;
|
||||
|
||||
LnkGuardarDatos.CssClass = "btn btn-default";
|
||||
LnkGuardarDatos.ToolTip = "el finiquito ha sido capturado.";
|
||||
Alert("La nomina se autorizó correctamente.");
|
||||
}
|
||||
else
|
||||
{
|
||||
objNomina.RollBack();
|
||||
|
||||
}
|
||||
}
|
||||
if (dtr != null)
|
||||
{
|
||||
dtr.Dispose();
|
||||
|
||||
}
|
||||
if (dtconp != null)
|
||||
{
|
||||
dtconp.Dispose();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user