This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2021-06-21 09:57:46 -07:00
parent 11bf026e2d
commit 233920860f
9 changed files with 511 additions and 99 deletions

View File

@@ -21,6 +21,16 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
get { return 5; }
}
private DataTable dtNomConceptos
{
get
{
if (ViewState["dtNomConceptos"] == null) { return null; }
else { return (DataTable)ViewState["dtNomConceptos"]; }
}
set { ViewState["dtNomConceptos"] = value; }
}
private DataTable dtPeriodos
{
@@ -179,6 +189,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
LnkVerCalculoISR.Visible = (UsuarioActual.CveUsuario == 100);
@@ -217,6 +228,11 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtperinc = null;
using (ClsNominas onom = new ClsNominas())
{
if (onom.GetConceptos(UsuarioActual.CveEmpresa))
{
dtNomConceptos = onom.DtResultados;
}
if (onom.PersonalIncapacidadCatalogos())
{
dtperinc = onom.DtResultados;
@@ -374,6 +390,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
public void cargaDatos(bool cargaasistencia = true)
{
int Estatus = 0;
int CveEmpresa = UsuarioActual.CveEmpresa;
bool continuar = false;
@@ -383,10 +400,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtPeriodo = new DataTable();
DataTable dtasistencia = new DataTable();
LnkAutorizar.Visible = false;
Estatus = 5;
if (FiltCvePeriodo > 0)
{
int Estatus = 0;
using (ClsNominas objnom = new ClsNominas())
{
if (objnom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, FiltCvePeriodo))
@@ -396,10 +413,10 @@ public partial class Nomina_Nomina2 : ClsPaginas
int CvePrePolizaProvision = drow["CvePrePolizaProvision"].ToString().ToEntero();
int CvePrePolizaProvisionAsimilados = drow["CvePrePolizaAsimilables"].ToString().ToEntero();
LnkConceptoEmpleado.Visible = (Estatus == 1);
LnkRegistrarProvision.Visible = (Estatus >= 2);// && CvePrePolizaProvision <= 0;
LnkRegistrarProvision.Visible = (Estatus >= 2) && (CvePrePolizaProvision <= 0 || UsuarioActual.CveUsuario == 100);
LnkConceptoEmpleado.Visible = (Estatus < 2);
LnkCargaAsistenciaMasiva.Visible = (Estatus < 2);
LnkModalPlantillaNomina.Visible = (Estatus < 2);
LnkModalPlantillaNomina.Visible = true;
LnkTimbrarTodos.Visible = (Estatus > 2);
LnkLayoutContable.Visible = (Estatus > 2);
@@ -414,7 +431,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()) && objnom.DTSetResultados.Tables.Count > 1)
if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 4)
{
dtempleados = objnom.DTSetResultados.Tables[3];
dtempleadosConceptos = objnom.DTSetResultados.Tables[4];
@@ -425,7 +442,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
continuar = true;
}
LnkTimbrarTodos.Visible = dtempleados.Rows.Count > 0 && dtempleados.COUNT("CvePersonal", "SeTimbro=0 AND CvePersonal >0 AND NomAutorizado =1") > 0;
LnkTimbrarTodos.Visible = (dtempleados.Rows.Count > 0 &&
dtempleados.COUNT("CvePersonal", "SeTimbro=0 AND CvePersonal >0 AND NomAutorizado =1") > 0);
}
}
@@ -835,7 +853,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
#endregion
UpDatos.Update();
LnkAutorizar.Visible = dtempleados.COUNT("CvePersonal", " CvePersonal > 0 AND NomAutorizado =0") > 0;
LnkAutorizar.Visible = (dtempleados.COUNT("CvePersonal", " CvePersonal > 0 AND NomAutorizado =0") > 0) || (Estatus < 2);
}
private void setGVNominas()
{
@@ -1103,10 +1121,16 @@ public partial class Nomina_Nomina2 : ClsPaginas
//AutorizaNom_Nominas
if (continuar && (continuar = Nom.RemoveNom_Nominas(Cve)))
{
Alert("Los movimientos de la nómina fueron eliminados", TipoMensaje.MsgInformacion); cargaDatos();
Nom.Commit();
}
}
if (continuar)
{
Alert("Los movimientos de la nómina fueron eliminados", TipoMensaje.MsgInformacion);
cargaDatos();
}
}
protected void LnkCancelar_Click(object sender, EventArgs e)
@@ -1569,6 +1593,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
if (ObjConta.Conectado && ObjConta.GetCuentas(-1, "-1", 1))
{
DdlCtaContable.DataValueField = "Id";
DdlCtaContable.DataSource = ObjConta.DtResultados;
DdlCtaContable.DataBind();
}
@@ -2465,8 +2490,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
LtlImporte.Visible = true;
LtlImporteD.Visible = true;
LtlImporte.Text = (CveConcepto > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "" : ""));
LtlImporte.Text = (CveConceptoD > 0 ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "" : ""));
LtlImporte.Text = ((CveConcepto > 0 || e.Row.CssClass == "ConceptosTotales") ? string.Format("${0:N2}", e.Row.DataKey("ImporteP").ToDecimal()) : (CveConceptoPolgvc > 0 ? "" : ""));
LtlImporteD.Text = ((CveConceptoD > 0 || e.Row.CssClass == "ConceptosTotales") ? string.Format("${0:N2}", e.Row.DataKey("ImporteD").ToDecimal()) : (CveConceptoDolgvc > 0 ? "" : ""));
LnkImporte.Visible = false;
LnkImporteD.Visible = false;
LnkImportexCalculo.Visible = false;
@@ -4452,18 +4477,20 @@ public partial class Nomina_Nomina2 : ClsPaginas
protected void CargaConcepto()
{
DataTable dt = dtNomConceptos.FiltraParametros(" FormulaTotal = 'FNC.[MovimientosPermanentes]'");
DdlConcepto.Items.Clear();
if (DdlTipo.SelectedValue.Contiene("P", "D", "O"))
{
DdlConcepto.DataSource = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("Tipo ='{0}' AND FormulaTotal = 'FNC.[MovimientosPermanentes]'", DdlTipo.SelectedValue));
DdlConcepto.DataSource = dt.FiltraParametros(string.Format("Tipo ='{0}'", DdlTipo.SelectedValue));
}
else
{
DdlConcepto.DataSource = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros(" FormulaTotal = 'FNC.[MovimientosPermanentes]'");
}
DdlConcepto.DataBind();
DdlConcepto.Items.Insert(0, new ListItem("Seleccione", "-1"));
DataRow drow = dt.NewRow();
drow["CveConcepto"] = "-1";
drow["Concepto"] = "Seleccione";
dt.Rows.InsertAt(drow,0);
DdlConcepto.DataSource = dt;
DdlConcepto.SelectedValueExist("-1");
DdlConcepto.DataBind();
//DdlConcepto.Items.Insert(0, new ListItem("Seleccione", "-1"));
}
private void CargaMovtoPermanente()
{
@@ -4509,7 +4536,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
decimal montoLimite = TxtMontoLimite.Text.ToDecimal();
string fechaInicioAplicacion = TxtFechaAplicacion.Text.ToDate().ToString("yyyy/MM/dd");
bool estatus = ChkEstatus.Checked;
int CveCuenta =DdlCtaContable.SelectedValue.ToEntero();
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero() * (DdlCtaContable.DataValueField == "Id" ? -1 : 1);
bool Continuar;
using (ClsNominas ObjMovt = new ClsNominas())
{
@@ -4536,7 +4563,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
decimal montoLimite = TxtMontoLimite.Text.ToDecimal();
string fechaInicioAplicacion = TxtFechaAplicacion.Text.ToDate().ToString("yyyy/MM/dd");
bool estatus = ChkEstatus.Checked;
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero();
int CveCuenta = DdlCtaContable.SelectedValue.ToEntero() * (DdlCtaContable.DataValueField == "Id" ? -1 : 1);
bool Continuar;
using (ClsNominas ObjMovt = new ClsNominas())
{
@@ -4567,6 +4594,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int cveConcepto = gvRow.DataKey("CveConcepto").ToEntero();
int cvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
int CveCuenta = gvRow.DataKey("CveCuenta").ToEntero();
int IdCtaContable = gvRow.DataKey("IdCtaContable").ToEntero();
string descripcion = gvRow.DataKey("Descripcion");
int tipoDescuento = gvRow.DataKey("TipoDescuento").ToEntero();
double valor = gvRow.DataKey("Valor").ToDouble();
@@ -4576,7 +4604,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
bool estatus = gvRow.DataKey("Estatus") == "1" || gvRow.DataKey("Estatus").ToUpper() == "TRUE";
DateTime fechaRegistro = gvRow.DataKey("FechaRegistro").ToDateTime();
string tipo = "P";
DataRow drow = get_GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltroPrimero(string.Format("Tipo ='{0}'", cveConcepto));
DataRow drow = dtNomConceptos.FiltroPrimero(string.Format("CveConcepto ='{0}'", cveConcepto));
if (drow != null)
{
tipo = drow["Tipo"].ToString();
@@ -4594,7 +4622,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
TxtMontoLimite.Text = montoLimite.ToString();
TxtFechaAplicacion.Text = $"{fechaInicioAplicacion:dd/MM/yyyy}";
DdlCtaContable.SelectedValueExist("-1");
DdlCtaContable.SelectedValueExist(CveCuenta);
if (DdlCtaContable.DataValueField == "Id")
{
DdlCtaContable.SelectedValueExist(IdCtaContable);
}
else
{
DdlCtaContable.SelectedValueExist(CveCuenta);
}
ChkEstatus.Checked = estatus;
this.RegistraScript("$('#DModalMovtoPermanente').modal();");
@@ -4637,10 +4672,25 @@ public partial class Nomina_Nomina2 : ClsPaginas
protected void LnkAutorizar_Click(object sender, EventArgs e)
{
autorizarNomina(-1);
if (autorizarNomina(-1))
{
using (ClsNominas objNomina = new ClsNominas())
{
if (objNomina.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado) && objNomina.DtResultados.Rows.Count >0)
{
DataRow drow = objNomina.DtResultados.Rows[0];
int Estatus = drow["Estatus"].ToString().ToEntero();
if (Estatus < 2)
{
objNomina.CambiaEstatusPeriodo(CvePeriodoSeleccionado, 2, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
};
}
}
}
}
private void autorizarNomina(int FiltroCvePersonal)
private bool autorizarNomina(int FiltroCvePersonal)
{
bool continuar = true;
@@ -4648,7 +4698,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
DataTable dtr = dtempleados.FiltraParametros(string.Format("(CvePersonal={0} OR {0}=-1) AND CvePersonal > 0 AND NomAutorizado =0", FiltroCvePersonal), "", getcolumnas);
DataTable dtconp = null;
int CvePeriodoSeleccionado = DdlPeriodo.SelectedValue.ToEntero();//cambiar reparar
//int CvePeriodoSeleccionado = DdlPeriodo.SelectedValue.ToEntero();//cambiar reparar
#region PropNomina
int CvePersonal = 0;
@@ -4688,7 +4738,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
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))
"", "", "", "", 0, 0, 0, new DateTime(), new DateTime(), new DateTime(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Autorizado: false))
{
CveNomina = objNomina.CveNomina;
}
@@ -4738,7 +4788,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int DiasIncapacidad = rtemp["DiasIncapacidad"].ToString().ToEntero();
continuar = objNomina.PA_Nom_NominasAutorizarUP(CvePersonal, CvePeriodoSeleccionado, SalarioDiario, SalarioDiarioIMSS, SalarioDiarioIntegrado, 0, 0, Total, SubTotal, DiasLaborados, DiasFaltados, DiasVacaciones, DiasIncapacidad);
continuar = objNomina.AutorizaNom_Nominas(CvePersonal, CvePeriodoSeleccionado, true);
if (continuar) { continuar = objNomina.AutorizaNom_Nominas(CvePersonal, CvePeriodoSeleccionado, true); }
}
}
@@ -4750,8 +4800,6 @@ public partial class Nomina_Nomina2 : ClsPaginas
if (continuar)
{
objNomina.Commit();
Alert("La nomina se autorizó correctamente.");
cargaDatos();
}
else
{
@@ -4769,6 +4817,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
dtconp.Dispose();
}
if (continuar)
{
Alert("La nomina se autorizó correctamente.");
cargaDatos();
}
return continuar;
}
@@ -6199,8 +6253,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
CvePrePolizaProvision = objnom.DtResultados.Rows[0]["CvePrePoliza"].ToString().ToEntero();
CvePrePolizaasmilidos = objnom.DtResultados.Rows[0]["CvePrePolizaAsimilables"].ToString().ToEntero();
}
string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/>", CvePrePolizaProvision );
if (CvePrePolizaasmilidos>0)
string mensaje = string.Format("La provision a sido autorizada.<br/><a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={0}&Tipo=NOMPROV\">Provision </a><br/>", CvePrePolizaProvision);
if (CvePrePolizaasmilidos > 0)
{
mensaje = string.Format("{0} <a href=\"../Contabilidad/RegPrePoliza.aspx?CvePrePoliza={1}&Tipo=NOMPROV\"> Asimilados</a>", mensaje, CvePrePolizaasmilidos);
@@ -6245,7 +6299,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
str.Append("</tbody>");
str.Append("</table>");
Alert(string.Format("<div>no se pudo registrar la provisión, existen cuentas sin vincular.</div> {0}", str));
}
}
}
}
}