This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2021-09-25 01:27:09 -07:00
parent f8754021df
commit 85967cd654
8 changed files with 389 additions and 46 deletions

View File

@@ -193,11 +193,15 @@ public partial class Nomina_Nomina2 : ClsPaginas
if (!IsPostBack)
{
DmodalCancelartimbre.Visible = (UsuarioActual.CveUsuario == 100);
LnkOpenCancelarTimbre.Visible = (UsuarioActual.CveUsuario == 100);
LnkVerCalculoISR.Visible = (UsuarioActual.CveUsuario == 100);
TxtPeriodo.Text = $"{DateTime.Now:yyyyMM}";
CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyeccto);
CargarCentrosDeCosto(DdlPRProyecto, DdlPRSubProyecto, LblPRProyecto, LblPRSubProyeccto);
CargarCentrosDeCosto(DdlAsisProyecto, DdlAsisSubProyecto, LblAsisProyecto, LblAsisSubProyecto);
divddlproyeto.Visible = DdlProyecto.Visible;
divPRddlproyeto.Visible = DdlPRProyecto.Visible;
PnlProyecto.Visible = DdlProyecto.Visible;
if (PnlProyecto.Visible)
{
@@ -1128,7 +1132,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
LogicNominas lognom = new LogicNominas();
Usuario UsuarioActual = null;
if (EsProduccion ==false)
if (EsProduccion == false)
{
//Usuario UsuarioActual = null;
@@ -1196,34 +1200,53 @@ public partial class Nomina_Nomina2 : ClsPaginas
if (CveNomina > 0)
{
ClsNominas Nom = new ClsNominas();
if (Nom.GetNom_Nominas(CveNomina, -1, -1, -1, UsuarioActual.CveEmpresa))
using (ClsNominas Nom = new ClsNominas())
{
Timbrado ObjTimbrado = new Timbrado();
string FolioFiscal = Nom.FolioFiscal;
decimal Total = Nom.Total.ToString().ToDecimal();
string RFCReceptor = Nom.RFC;
string RFCEmisor = UsuarioActual.Empresa.RFC;
if (ObjTimbrado.CFDICancelar(UsuarioActual.Empresa, FolioFiscal, Total, RFCReceptor, RFCEmisor, 4))
if (Nom.GetNom_Nominas(CveNomina, -1, -1, -1, UsuarioActual.CveEmpresa))
{
Nom.UpdateEstatusNomNominas(2, UsuarioActual.Empresa.CvePAC, "", "", ("01/01/2000").ToDate(), CveNomina, 0, 0, 0, 0, 0);
Timbrado ObjTimbrado = new Timbrado();
Alert($"La nómina con folio fiscal '{FolioFiscal}' fue cancelada ante el SAT", TipoMensaje.MsgInformacion);
}
else
{
string FolioFiscal = Nom.FolioFiscal;
decimal Total = Nom.Total.ToString().ToDecimal();
string RFCReceptor = Nom.RFC;
string RFCEmisor = UsuarioActual.Empresa.RFC;
string SerieFolio = Nom.SerieFolio;
ObjTimbrado.MensajeErrorCFDI.GuardaLog();
Alert($"no se pudo cancelar el folio fiscal<br>{ObjTimbrado.MensajeErrorCFDI}", TipoMensaje.MsgAdvertencia);
if (ObjTimbrado.CFDICancelar(UsuarioActual.Empresa, FolioFiscal, Total, RFCReceptor, RFCEmisor, 4))
{
try
{
string ruta = string.Format("{0}XML\\Nomina\\", UsuarioActual.Empresa.Ruta);
string archivo = string.Format("{0}{1}.xml", ruta, SerieFolio);
int contador = 1;
string archivonew = string.Format("{0}{1}_{2}.xml", ruta, SerieFolio, contador++);
while (System.IO.File.Exists(archivonew))
{
archivonew = string.Format("{0}{1}_{2}.xml", ruta, SerieFolio, contador++);
}
File.Move(archivo, archivonew);
}
catch (Exception)
{
Alert("Ocurrió un error al mover el archivo fiscal cancelado");
}
Nom.UpdateEstatusNomNominas(2, UsuarioActual.Empresa.CvePAC, "", "", ("01/01/2000").ToDate(), CveNomina, 0, 0, 0, 0, 0);
Alert($"La nómina con folio fiscal '{FolioFiscal}' fue cancelada ante el SAT", TipoMensaje.MsgInformacion);
}
else
{
ObjTimbrado.MensajeErrorCFDI.GuardaLog();
Alert($"no se pudo cancelar el folio fiscal<br>{ObjTimbrado.MensajeErrorCFDI}", TipoMensaje.MsgAdvertencia);
}
}
}
Nom.Dispose();
cargaDatos();
}
}
@@ -7200,4 +7223,124 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
}
protected void LnkCancelarFolioFiscal_Click(object sender, EventArgs e)
{
Timbrado ObjTimbrado = new Timbrado();
string FolioFiscal = TxtFolioFiscal.Text;
decimal Total = TxtTotal.Text.ToDecimal();
string RFCReceptor = TxtRFCReceptor.Text;
string RFCEmisor = TxtRFCEmisor.Text;
if (ObjTimbrado.CFDICancelar(UsuarioActual.Empresa, FolioFiscal, Total, RFCReceptor, RFCEmisor, 4))
{
Alert($"La nómina con folio fiscal '{FolioFiscal}' fue cancelada ante el SAT", TipoMensaje.MsgInformacion);
}
else
{
Alert(ObjTimbrado.MensajeErrorCFDI, TipoMensaje.MsgAdvertencia);
}
ObjTimbrado = null;
}
protected void LnkOpenCancelarTimbre_Click(object sender, EventArgs e)
{
RegistraScript(string.Format("$('#{0}').modal();", DmodalCancelartimbre.ClientID));
}
protected void LnkOpenProrrateo_Click(object sender, EventArgs e)
{
using (ClsRH onom = new ClsRH())
{
if (onom.GetPersonal(-1, UsuarioActual.CveEmpresa))
{
DdlPRPersonal.DataSource = onom.DtResultados;
DdlPRPersonal.DataBind();
}
}
using (ClsNominas onom = new ClsNominas())
{
GVProrrateo.DataSource = null;
if (onom.ProrrateosubproyectoGET(UsuarioActual.CveEmpresa))
{
GVProrrateo.DataSource = onom.DtResultados;
}
GVProrrateo.DataBind();
}
RegistraScript(string.Format("$('#DModalProrrateo').modal();"));
UpModalProrrateo.Update();
}
protected void LnkEliminarProrrateo_Click(object sender, EventArgs e)
{
GridViewRow gvrow = (GridViewRow)(((LinkButton)sender).NamingContainer);
int CvePersonal, CveSubProyecto;
CvePersonal = gvrow.DataKey("CvePersonal").ToEntero();
CveSubProyecto = gvrow.DataKey("CveSubProyecto").ToEntero();
using (ClsNominas onom = new ClsNominas())
{
if (onom.ProrrateosubproyectoRemove(CvePersonal, CveSubProyecto))
{
GVProrrateo.DataSource = null;
if (onom.ProrrateosubproyectoGET(UsuarioActual.CveEmpresa))
{
GVProrrateo.DataSource = onom.DtResultados;
}
GVProrrateo.DataBind();
Alert("Se ha eliminado satisfactoriamente.");
}
}
}
protected void GVProrrateo_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
int CvePersonal, CveSubProyecto;
decimal Porcentaje;
CvePersonal = e.Row.DataKey("CvePersonal").ToEntero();
CveSubProyecto = e.Row.DataKey("CveSubProyecto").ToEntero();
Porcentaje = e.Row.DataKey("Porcentaje").ToDecimal();
if (CveSubProyecto > 0)
{
}
else
{
e.Row.FindControl("LnkEliminarProrrateo").Visible = false;
e.Row.CssClass = Porcentaje == 1 ? "info" : "danger";
}
}
}
protected void LnkAgregarProrrateo_Click(object sender, EventArgs e)
{
int CvePersonal, CveSubProyecto;
decimal Porcentaje;
CvePersonal = DdlPRPersonal.SelectedValue.ToEntero();
CveSubProyecto = DdlPRSubProyecto.SelectedValue.ToEntero();
Porcentaje = TxtPorcentaje.Text.ToDecimal();
using (ClsNominas onom = new ClsNominas())
{
if (onom.ProrrateosubproyectoAdd(CvePersonal, CveSubProyecto, Porcentaje))
{
GVProrrateo.DataSource = null;
if (onom.ProrrateosubproyectoGET(UsuarioActual.CveEmpresa))
{
GVProrrateo.DataSource = onom.DtResultados;
}
GVProrrateo.DataBind();
Alert("Se ha agregado satisfactoriamente.");
}
}
UpModalProrrateo.Update();
}
}