This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2022-06-12 11:03:45 -07:00
parent 542761f42b
commit ead4a8bf57
8 changed files with 429 additions and 37 deletions

View File

@@ -215,6 +215,9 @@
<li>
<asp:LinkButton ID="LnkTimbrarTodos" Visible="false" OnClick="LnkTimbrarTodos_Click" runat="server"><i class="fa fa-bell"></i> Timbrar todos</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkReenviarcorreo" Visible="false" OnClick="LnkReenviarcorreo_Click" runat="server"><i class="fa fa-bell"></i> Renviar correo</asp:LinkButton>
</li>
<li>
<asp:LinkButton ID="LnkRegistrarProvision" Visible="false" OnClick="LnkRegistrarProvision_Click" runat="server" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea registrar provisión?" data-btn-ok-label="si"><i class="fa fa-thumbs-up" aria-hidden="true" ></i>Registrar provisión</asp:LinkButton>
</li>

View File

@@ -474,6 +474,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
LnkCargaAsistenciaMasiva.Visible = (Estatus < 2);
LnkModalPlantillaNomina.Visible = true;
LnkTimbrarTodos.Visible = (Estatus > 2);
LnkReenviarcorreo.Visible = true;
LnkLayoutContable.Visible = (Estatus >= 2);
LnkProvisionNomina.Visible = CvePrePolizaProvision > 0;
@@ -1118,15 +1119,79 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
#endregion
protected void LnkReenviarcorreo_Click(object sender, EventArgs e)
{
string msggral = "";
int CvePeriodo = 0;
ClsSisMail Mail = new ClsSisMail();
DataTable dtpersonal = new DataTable();
DataRow drow;
using (ClsRH objrh = new ClsRH())
{
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "MaiReciboNomina", "NombreCompleto" });
}
foreach (GridViewRow gvRow in GvNominas.Rows)
{
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper()=="TRUE" ?1:gvRow.DataKey("SeTimbro").ToEntero());
LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar");
string MaiReciboNomina = string.Empty;
string NombreCompleto = string.Empty;
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
{
MaiReciboNomina = drow["MaiReciboNomina"].ToString();
NombreCompleto = drow["NombreCompleto"].ToString();
}
if (CvePersonal > 0 && SeTimbro==1)
{
if (MaiReciboNomina.Trim().Length > 0)
{
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
if (pdf != null)
{
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, MaiReciboNomina.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
// Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), MaiReciboNomina.Trim(), "", objarch);
}
}
}
}
Alert("se reenviaron los recibos timbrados");
}
protected void LnkTimbrarTodos_Click(object sender, EventArgs e)
{
string msggral = "";
int CvePeriodo = 0;
ClsSisMail Mail = new ClsSisMail();
DataTable dtpersonal = new DataTable();
DataRow drow;
using (ClsRH objrh = new ClsRH())
{
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "MaiReciboNomina", "NombreCompleto" });
}
foreach (GridViewRow gvRow in GvNominas.Rows)
{
int CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero();
int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero();
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar");
string MaiReciboNomina = string.Empty;
string NombreCompleto = string.Empty;
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
{
MaiReciboNomina = drow["MaiReciboNomina"].ToString();
NombreCompleto = drow["NombreCompleto"].ToString();
}
if (CvePersonal > 0 && LnkTimbrar.Visible)
{
LogicNominas lognom = new LogicNominas();
@@ -1138,9 +1203,6 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
else
{
ClsNominas ObjPeriodo = new ClsNominas();
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
ObjPeriodo.Dispose();
LnkTimbrar.Visible = false;
gvRow.CssClass = "success";
gvRow.FindControl("ImgDelete").Visible = false;
@@ -1149,6 +1211,21 @@ public partial class Nomina_Nomina2 : ClsPaginas
gvRow.FindControl("HypPDF").Visible = true;
gvRow.ForeColor = Color.Green;
if (MaiReciboNomina.Trim().Length > 0)
{
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
if (pdf != null)
{
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" });
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, MaiReciboNomina.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
//Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), MaiReciboNomina.Trim(), "", objarch);
}
}
}
@@ -1159,6 +1236,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
Alert(string.Format("Los siguientes empleados no se timbraron por las siguiente situaciones: <table class=\"table table-striped table-hover mysmallbtn\" ><tbody><tr><th>Código</th><th>Nombre</th><th>Mensaje SAT</th></tr>{0}</tbody></table>", msggral), TipoMensaje.MsgAdvertencia);
}
else
{
using (ClsNominas ObjPeriodo = new ClsNominas())
{
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
}
}
UpDatos.Update();
}
private void CreaObjetoEmpresa(ref Usuario UsuarioActual)
@@ -1192,6 +1277,24 @@ public partial class Nomina_Nomina2 : ClsPaginas
int CveNomina = gvRow.DataKey("CveNomina").ToEntero();
LogicNominas lognom = new LogicNominas();
Usuario UsuarioActual = null;
ClsSisMail Mail = new ClsSisMail();
DataTable dtpersonal = new DataTable();
DataRow drow;
string MaiReciboNomina = string.Empty;
string NombreCompleto = string.Empty;
if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null)
{
MaiReciboNomina = drow["MaiReciboNomina"].ToString();
NombreCompleto = drow["NombreCompleto"].ToString();
}
using (ClsRH objrh = new ClsRH())
{
objrh.GetPersonal(-1, UsuarioActual.CveEmpresa);
dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "MaiReciboNomina", "NombreCompleto" });
}
/*
if (EsProduccion == false)
{
@@ -1207,7 +1310,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
else
{
UsuarioActual = this.UsuarioActual;
}
}*/
UsuarioActual = this.UsuarioActual;
string Msg = lognom.TimbrarNomina(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); }
@@ -1216,6 +1320,18 @@ public partial class Nomina_Nomina2 : ClsPaginas
ClsNominas ObjPeriodo = new ClsNominas();
ObjPeriodo.CambiaEstatusPeriodo(CvePeriodo, (int)enumNominasEstatus.Timbrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
ObjPeriodo.Dispose();
if (MaiReciboNomina.Trim().Length > 0)
{
byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta);
if (pdf != null)
{
List<ClsSisMail.ArchivoMail> objarch = new List<ClsSisMail.ArchivoMail>();
objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina" });
Mail.SendMail(ClsPaginas.EmpresaNotificaciones, MaiReciboNomina.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch);
}
}
Alert("Se ha timbrado correctamente");
gvRow.FindControl("ImgDelete").Visible = false;
gvRow.FindControl("LnkCancelar").Visible = true;
@@ -3442,7 +3558,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
urlfile = System.IO.Path.Combine(ModExtensiones.DirectorioBaseEmpresas, "Empresas/Grales/Formatos/SobreRecibo.rdlc");
}
ImprimirPDF(urlfile, lrds, parametros, "SobreRecibo", "PDF", null,Content_Disposition: "Inline");
ImprimirPDF(urlfile, lrds, parametros, "SobreRecibo", "PDF", null, Content_Disposition: "Inline");
}
protected void BtnGuardarInfornavit_Click(object sender, EventArgs e)
{
@@ -8110,8 +8226,8 @@ public partial class Nomina_Nomina2 : ClsPaginas
#region Layouts
enum Bancos
enum Bancos
{
SinSelccion,
Bancomer,
@@ -8121,29 +8237,33 @@ public partial class Nomina_Nomina2 : ClsPaginas
Bancos Banco
{
get {
get
{
if (ViewState["Banco"] == null)
{
ViewState["Banco"] = Bancos.SinSelccion;
}
return (Bancos) ViewState["Banco"];
return (Bancos)ViewState["Banco"];
}
set {
ViewState["Banco"] = (Bancos) value;
set
{
ViewState["Banco"] = (Bancos)value;
}
}
string ConvenioPagoElectronico
{
get {
get
{
if (ViewState["ConvenioPagoElectronico"] == null)
{
ViewState["ConvenioPagoElectronico"] = string.Empty;
}
return ViewState["ConvenioPagoElectronico"].ToString();
return ViewState["ConvenioPagoElectronico"].ToString();
}
set {
ViewState["ConvenioPagoElectronico"] = (string) value;
set
{
ViewState["ConvenioPagoElectronico"] = (string)value;
}
}
@@ -8153,7 +8273,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
// RBLModalBancosLayout.SelectedValue = "1";
Banco = Bancos.SinSelccion;
CargaCuentas();
this.RegistraScript("$('#ModalLayoutBancos').modal('show');");
UpModalBancosLayout.Update();
}
@@ -8162,7 +8282,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
DdlCuenta.Items.Clear();
DataTable DTCuentas = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros(" CveTipoCuenta <> 1 AND UsaLayout = 'True' AND LEN(ConvenioPagoElectronico) > 0 ");
DataTable DTCuentas = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros(" CveTipoCuenta <> 1 AND UsaLayout = 'True' AND LEN(ConvenioPagoElectronico) > 0 ");
DTCuentas.CaseSensitive = false;
DdlCuenta.DataSource = DTCuentas.FiltraParametros(" Banco IN('BANCOMER','BANORTE')");
DdlCuenta.DataBind();
@@ -8184,8 +8304,9 @@ public partial class Nomina_Nomina2 : ClsPaginas
if (DdlCuenta.SelectedItem.Text.ToUpper().Contains("BANCOMER"))
{
Banco = Bancos.Bancomer;
}else if (DdlCuenta.SelectedItem.Text.ToUpper().Contains("BANORTE"))
}
else if (DdlCuenta.SelectedItem.Text.ToUpper().Contains("BANORTE"))
{
Banco = Bancos.Banorte;
}
@@ -8200,14 +8321,14 @@ public partial class Nomina_Nomina2 : ClsPaginas
Banco = Bancos.SinSelccion;
}
}
protected void BtnModalBancosProcesar_Click(object sender, EventArgs e)
{
if (Banco == Bancos.Bancomer)
{
using (ClsNominas objnom = new ClsNominas())
@@ -8230,7 +8351,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
}
}
}
@@ -8328,7 +8449,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
Alert(SbErrores.ToString(), TipoMensaje.MsgAdvertencia);
}
private void CrearLayoutNominaBanorte(DataTable DTNomina, string Emisora, int Consecutivo )
private void CrearLayoutNominaBanorte(DataTable DTNomina, string Emisora, int Consecutivo)
{
StringBuilder sb = new StringBuilder();
StringBuilder SbErrores = new StringBuilder();
@@ -8436,7 +8557,7 @@ public partial class Nomina_Nomina2 : ClsPaginas
{
sb.AppendLine("");
}
}