This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -4060,7 +4060,7 @@
|
||||
<ItemTemplate>
|
||||
<asp:Label runat="server" Text='<%# Eval("RetiroSIG","{0:N2}")%>'> </asp:Label></td>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</asp:TemplateField>showResult
|
||||
</Columns>
|
||||
</asp:GridView>--%>
|
||||
</div>
|
||||
|
||||
@@ -97,11 +97,11 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
get
|
||||
{
|
||||
if (ViewState["dtempleados"] == null) { return null; }
|
||||
else { return (DataTable)ViewState["dtempleados"]; }
|
||||
if (ViewState["DtSuaProcesado"] == null) { return null; }
|
||||
else { return (DataTable)ViewState["DtSuaProcesado"]; }
|
||||
}
|
||||
|
||||
set { ViewState["dtempleados"] = value; }
|
||||
set { ViewState["DtSuaProcesado"] = value; }
|
||||
}
|
||||
|
||||
protected bool PermisoCancelarEmitido
|
||||
@@ -206,12 +206,37 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
|
||||
set { ViewState["FiltAgrupador"] = 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 (!IsPostBack)
|
||||
{
|
||||
CreaObjetoEmpresa(UsuarioActual);
|
||||
DataTable dtperinc = null;
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
{
|
||||
@@ -1185,7 +1210,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
}
|
||||
Alert("se reenviaron los recibos timbrados");
|
||||
}
|
||||
|
||||
|
||||
public string msgCorregidoSat(string msg, int CvePersonal, string RFC, string CURP)
|
||||
{
|
||||
string retorno = msg;
|
||||
@@ -1255,7 +1280,15 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
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)
|
||||
{
|
||||
Msg = msgCorregidoSat(Msg, CvePersonal, RFC, CURP);
|
||||
@@ -1311,7 +1344,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
}
|
||||
UpDatos.Update();
|
||||
}
|
||||
private void CreaObjetoEmpresa(ref Usuario UsuarioActual)
|
||||
private void CreaObjetoEmpresa(Usuario UsuarioActual)
|
||||
{
|
||||
ClsSisEmpresas ObjEmpresa = new ClsSisEmpresas();
|
||||
if (ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1"))
|
||||
@@ -1320,10 +1353,17 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
System.Data.DataTable dttmp = ObjEmpresa.DtResultados;
|
||||
|
||||
HybridDictionary EmpresasFuncionalidades = new HybridDictionary();
|
||||
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);
|
||||
}
|
||||
//ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades);
|
||||
}
|
||||
|
||||
UsuarioActual.Empresa = ObjEmpresa.Empresa;
|
||||
@@ -1427,7 +1467,15 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
UsuarioActual = this.UsuarioActual;
|
||||
}*/
|
||||
string Msg = lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual,(UsuarioActual.CveUsuario==100?4:4));
|
||||
string Msg = "";// lognom.TimbrarNomina(CveNomina, CvePersonal, CvePeriodo, UsuarioActual, (UsuarioActual.CveUsuario == 100 ? 4 : 4));
|
||||
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(string.Format("El empleado no se pudo timbrar, el sat nos devolvio el siguiente mensaje:<br/>{0}", Msg), TipoMensaje.MsgAdvertencia); }
|
||||
else
|
||||
@@ -2562,12 +2610,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
DdlFormapagovacaciones_SelectedIndexChanged(null, null);
|
||||
ChkVacPrimaVacacional.Checked = true;
|
||||
ChkVacCobrarIMSS.Checked = true;
|
||||
using(ClsNominas objnom = new ClsNominas())
|
||||
using (ClsNominas objnom = new ClsNominas())
|
||||
{
|
||||
if(objnom.GETPersonalVacResumen(UsuarioActual.Empresa.CveEmpresa, SRCvePersonal))
|
||||
if (objnom.GETPersonalVacResumen(UsuarioActual.Empresa.CveEmpresa, SRCvePersonal))
|
||||
{
|
||||
DataRow drow = objnom.DtResultados.FiltroPrimero("Selected =1");
|
||||
if(drow != null)
|
||||
if (drow != null)
|
||||
{
|
||||
DdlVacPeriodo.SelectedValueExist(drow["Ejercicio"].ToString());
|
||||
|
||||
@@ -7364,7 +7412,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
TxtSRINCfolio.Text = "";
|
||||
TxtSRINCfechaInicio.Text = "";
|
||||
TxtSRINCdiasAutorizados.Text = "";
|
||||
TxtDiasPagoEmpresa.Text = UsuarioActual.CveEmpresa ==141?"3":"";
|
||||
TxtDiasPagoEmpresa.Text = UsuarioActual.CveEmpresa == 141 ? "3" : "";
|
||||
DdlSRINCcveTipodeIncidencia.SelectedValue = "-1";
|
||||
DdlSRINCcveRamoSeguro.SelectedValue = "-1";
|
||||
DdlSRINCcveTipoRiesgo.SelectedValue = "-1";
|
||||
@@ -8070,7 +8118,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
|
||||
using (ClsNominas nom = new ClsNominas())
|
||||
{
|
||||
if (nom.GetPeriodos(-1,UsuarioActual.CveEmpresa,-1,-1, DdlPeriodo.SelectedValue.ToEntero(),-1) && (nom.DtResultados.Rows.Count>0))
|
||||
if (nom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado, -1) && (nom.DtResultados.Rows.Count > 0))
|
||||
{
|
||||
fechai = nom.DtResultados.Rows[0]["FechaInicio"].ToString().ToDateTime();
|
||||
fechaf = nom.DtResultados.Rows[0]["FechaFin"].ToString().ToDateTime();
|
||||
@@ -8124,10 +8172,12 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
|
||||
|
||||
int chkImporteValor = 1;
|
||||
int chkImporte = 1;
|
||||
int chkImporteGravado = 0;
|
||||
List<Archivo> Filesgral = TxtArchivoNomina.getfiles().Archivos;
|
||||
//int chkImporteValor = 1;
|
||||
//int chkImporte = 1;
|
||||
//int chkImporteGravado = 0;
|
||||
DateTime fechai = TxtRIFechaInicio.Text.ToDateTime();
|
||||
DateTime fechaf = TxtRIFechaFin.Text.ToDateTime();
|
||||
List<Archivo> Filesgral = TxtAsistenciaTabular.getfiles().Archivos;
|
||||
bool continuar = Filesgral.Count > 0;
|
||||
string stringError = "";
|
||||
Archivo fileItem = continuar ? Filesgral[0] : null;
|
||||
@@ -8156,7 +8206,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
{
|
||||
try
|
||||
{
|
||||
DataTable dtxz = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true,4);
|
||||
DataTable dtxz = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true, 4);
|
||||
DTEXcel = dtxz.FiltraParametros(" LEN(Codigo)>0 AND Codigo <> 'Codigo'");
|
||||
|
||||
}
|
||||
@@ -8174,32 +8224,96 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
continuar = false;
|
||||
stringError = "No se encontraron cambios";
|
||||
}
|
||||
if(continuar)
|
||||
if (continuar)
|
||||
{
|
||||
|
||||
for (int j = 2; j < DTEXcel.Rows.Count; j++)
|
||||
using (ClsNominas nom = new ClsNominas())
|
||||
{
|
||||
for (int i = 1; i < DTEXcel.Columns.Count; i++)
|
||||
if (nom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado, -1) && (nom.DtResultados.Rows.Count > 0))
|
||||
{
|
||||
/*
|
||||
//
|
||||
string conceptocodigo = drowx[i].ToString(); string CveConcepto;
|
||||
DataRow dconr = dtConceptos.FiltroPrimero(string.Format("codigo='{0}'", conceptocodigo));
|
||||
if (dconr != null)
|
||||
{
|
||||
CveConcepto = dconr["CveConcepto"].ToString();
|
||||
dtxz.Columns[i].ColumnName = CveConcepto;
|
||||
}
|
||||
else
|
||||
{
|
||||
continuar = false;
|
||||
stringError = string.Format("Ocurrio un Error al procesar el excel código no valido '{0}'({1}).", conceptocodigo, i);
|
||||
break;
|
||||
}*/
|
||||
//int CveConcepto = dtxz.Columns[i].ColumnName.ToEntero();
|
||||
fechai = nom.DtResultados.Rows[0]["FechaInicio"].ToString().ToDateTime();
|
||||
fechaf = nom.DtResultados.Rows[0]["FechaFin"].ToString().ToDateTime();
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 2; i < DTEXcel.Columns.Count; i++)
|
||||
{
|
||||
DateTime FechaAsis = DTEXcel.Columns[i].ColumnName.ToDateTime();
|
||||
if( FechaAsis < fechai || FechaAsis > fechaf)
|
||||
{
|
||||
continuar = false;
|
||||
stringError = "Las fechas no concuerdadn con el periodo seleccionado";
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
int CvePersonal = 0;
|
||||
string Codigo;
|
||||
DateTime FechaAsis;
|
||||
DataTable dtasis = GlobalDTAsistenciasInasistencias.FiltraParametros("CveEmpresa = " + UsuarioActual.CveEmpresa);
|
||||
List<string> listaerrores = new List<string>();
|
||||
using (ClsRH ObjPersonal = new ClsRH())
|
||||
{
|
||||
for (int j = 0; j < DTEXcel.Rows.Count; j++)
|
||||
{
|
||||
Codigo = DTEXcel.Rows[j]["Codigo"].ToString();
|
||||
CvePersonal = -1;
|
||||
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;
|
||||
}
|
||||
for (int i = 2; i < DTEXcel.Columns.Count; i++)
|
||||
{
|
||||
FechaAsis = DTEXcel.Columns[i].ColumnName.ToDateTime();
|
||||
string tipoasistencia = DTEXcel.Rows[j][i].ToString();
|
||||
DataRow drasis = dtasis.FiltroPrimero(string.Format("Tipo = '{0}'", tipoasistencia));
|
||||
if (CvePersonal > 0 && drasis != null && ObjPersonal.AddAsistencia(CvePersonal, -2, -2, FechaAsis,
|
||||
drasis["CveAsistenciasInasistencias"].ToString().ToEntero(), 100, -2, -2, -2, TxtObservaciones.Text.Trim(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
continuar = true;
|
||||
}
|
||||
if (CvePersonal > 0 && drasis == null && !listaerrores.Contains(tipoasistencia) && tipoasistencia != "" && tipoasistencia != "--" && tipoasistencia != "-")
|
||||
{
|
||||
listaerrores.Add(DTEXcel.Rows[j][i].ToString());
|
||||
// stringError = String.Format("{0}<br>el empleado {1} tiene una asistencia invalidad el dia {2:dd/MM/yyyy}", stringError, Codigo, FechaAsis);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (continuar)
|
||||
{
|
||||
cargarasistencia();
|
||||
if (listaerrores.Count > 0)
|
||||
{
|
||||
string strmsg = "Los siguientes tipos de asistencia no pudieron ser cargados porque no se encuentran registrados ";
|
||||
for (int i = 0; i < listaerrores.Count; i++)
|
||||
{
|
||||
strmsg = String.Format("{0}<br/>{1}", strmsg, listaerrores[i]);
|
||||
}
|
||||
Alert(strmsg, TipoMensaje.MsgInformacion);
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("La Asistencia se guardó correctamente.", TipoMensaje.MsgInformacion);
|
||||
}
|
||||
UpDatos.Update();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert(stringError, TipoMensaje.MsgAdvertencia);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert(stringError, TipoMensaje.MsgAdvertencia);
|
||||
}
|
||||
RegistraScript("$('#DModalAsistenciaTabular').modal('hide')");
|
||||
|
||||
}
|
||||
|
||||
protected void LnkProcesarReporteIncidencia_Click(object sender, EventArgs e)
|
||||
@@ -9017,4 +9131,79 @@ public partial class Nomina_Nomina2 : ClsPaginas
|
||||
RegistraScript(string.Format("$('#ModalViewCorreo').modal();", TxtmcImporte.ClientID));
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user