This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2022-11-15 14:18:13 -07:00
parent 49ab1578e1
commit 919a647455
13 changed files with 848 additions and 90 deletions

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Data;
using System.Linq;
using System.Web;
@@ -75,11 +76,33 @@ public partial class Nomina_Finiquito : ClsPaginas
set { ViewState["dtempleados"] = value; }
}
private HybridDictionary EmpresasFuncionalidades
{
get
{
if (ViewState["EmpresasFuncionalidades"] == null) { return null; }
else { return (HybridDictionary)ViewState["EmpresasFuncionalidades"]; }
}
set { ViewState["EmpresasFuncionalidades"] = value; }
}
private HybridDictionary EmpresasFuncionalidadesnoV4
{
get
{
if (ViewState["EmpresasFuncionalidadesnoV4"] == null) { return null; }
else { return (HybridDictionary)ViewState["EmpresasFuncionalidadesnoV4"]; }
}
set { ViewState["EmpresasFuncionalidadesnoV4"] = value; }
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
CreaObjetoEmpresa(UsuarioActual);
GvFinOrdinario.DataSource = new DataTable();
GVFinIndemnizacion.DataSource = new DataTable();
GvFinOrdinario.DataBind();
@@ -529,6 +552,109 @@ public partial class Nomina_Finiquito : ClsPaginas
// }
//}
private void CreaObjetoEmpresa(Usuario UsuarioActual)
{
ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas();
if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1"))
{
if (ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa))
{
System.Data.DataTable dttmp = ObjEmpresa.DtResultados;
EmpresasFuncionalidades = new HybridDictionary();
EmpresasFuncionalidadesnoV4 = new HybridDictionary();
foreach (System.Data.DataRow Row in dttmp.Rows)
{
if (Convert.ToInt32(Row["CveFuncionalidad"]) != 350)
{
EmpresasFuncionalidadesnoV4.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString());
}
EmpresasFuncionalidades.Add(Convert.ToInt32(Row["CveFuncionalidad"]), Row["Valor"].ToString());
}
//ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades);
}
UsuarioActual.Empresa = ObjEmpresa.Empresa;
}
else
{
}
ObjEmpresa.Dispose();
}
public string TimbrarNominaV3_3(int CveNomina, int CvePersonal, int CvePeriodo, Usuario UsuarioActual, int CvePAC = 4)
{
LogicNominas lnom = new LogicNominas();
string Retorno = "";
string GetError = ""; // Le reasigno el current error a nulo
//System.Diagnostics.Stopwatch sw = null;
bool hasfiniquito = false;
UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidadesnoV4);
//if (guardarLogTimbrado)
//{
// sw = new System.Diagnostics.Stopwatch();
// sw.Start();
//}
CFDITimbre cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, false); // CvePersonal, CvePeriodo,
cfdi.Comprobante.CondicionesdePago = "";
if (cfdi != null && cfdi.Mensaje == "")
{
if (!cfdi.Timbrado)
{
Timbrado ObjTimbrado = new Timbrado();
Modelos.Factura ObjFactura = new Modelos.Factura();
ObjFactura.TipoDocto = "Nomina";
ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero();
ObjFactura.Serie = cfdi.Comprobante.Serie;
ObjFactura.Timbre = cfdi;
if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC))
Retorno = ObjTimbrado.MensajeErrorCFDI;
}
if (Retorno != "")
Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}";
else if (hasfiniquito)
{
cfdi = lnom.PreTimbrar(CveNomina, UsuarioActual, true); // CvePersonal, CvePeriodo,
if (cfdi != null && cfdi.Mensaje == "")
{
if (!cfdi.Timbrado)
{
Timbrado ObjTimbrado = new Timbrado();
Modelos.Factura ObjFactura = new Modelos.Factura();
ObjFactura.TipoDocto = "Nomina";
ObjFactura.Folio = cfdi.Comprobante.Folio.ToEntero();
ObjFactura.Serie = cfdi.Comprobante.Serie;
ObjFactura.Timbre = cfdi;
if (!ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura, CvePAC))
Retorno = ObjTimbrado.MensajeErrorCFDI;
if (Retorno != "")
Retorno = $"{Retorno} - {cfdi.Receptor.Nombre}";
else
{
}
}
}
else if (cfdi == null)
Retorno = $"No se pudo generar el pretimbre(GetError): <br/> {GetError}";
else
Retorno = $"No se pudo generar el pretimbre: <br/> {cfdi.Mensaje}";
}
}
else if (cfdi == null)
Retorno = $"No se pudo generar el pretimbre(GetError): <br/> {GetError}";
else
Retorno = $"No se pudo generar el pretimbre: <br/> {cfdi.Mensaje}";
//if (guardarLogTimbrado)
//{
// sw.Stop();
// GuardaLogTimbrado(sw.ElapsedMilliseconds.ToString(), UsuarioActual.Empresa.CvePAC, "Nomina");
//}
UsuarioActual.Empresa.SetFuncionalidades(EmpresasFuncionalidades);
return Retorno;
}
protected void LnkTimbrar_Click(object sender, EventArgs e)
{
int CvePeriodo = CvePeriodoFiniquito;
@@ -539,7 +665,16 @@ public partial class Nomina_Finiquito : ClsPaginas
int CveNomina = dtr.Rows[0]["CveNomina"].ToString().ToEntero();
LogicNominas lognom = new LogicNominas();
string Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual);
string Msg = "";
if (UsuarioActual.CveEmpresa == 119)
{
Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual);
}
else
{
Msg = TimbrarNominaV3_3(CveNomina, CvePersonal, CvePeriodo, UsuarioActual);
}
if (Msg != null && Msg.Length > 0)
{ Alert(Msg, TipoMensaje.MsgAdvertencia); }
else
@@ -547,7 +682,7 @@ public partial class Nomina_Finiquito : ClsPaginas
using (ClsNominas ObjPeriodo = new ClsNominas())
{
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
//ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
loadsobrerecibo(ObjPeriodo);
}
//ObjPeriodo.Dispose();