This commit is contained in:
rakcsle
2022-04-04 10:52:37 -07:00
12 changed files with 446 additions and 191 deletions

View File

@@ -3183,11 +3183,13 @@ Public Class ClsNominas
End Function End Function
#Region "Visor sat" #Region "Visor sat"
Public Function SATSolicitudTimbreNominaGral(IDsolicitud As Integer, cveEmpresa As Integer) As Boolean Public Function SATSolicitudTimbreNominaGral(IDsolicitud As Integer, cveEmpresa As Integer, fechaInicio As String, fechaFin As String) As Boolean
Dim retorno As Boolean = False Dim retorno As Boolean = False
DataAdapter("[PA_SAT_SolicitudTimbreNominaGral]", CommandType.StoredProcedure) DataAdapter("[PA_SAT_SolicitudTimbreNominaGral]", CommandType.StoredProcedure)
addParameters("@IDsolicitud", SqlDbType.Int, IDsolicitud) addParameters("@IDsolicitud", SqlDbType.Int, IDsolicitud)
addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa) addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa)
addParameters("@FechaInicio", SqlDbType.VarChar, fechaInicio)
addParameters("@FechaFin", SqlDbType.VarChar, fechaFin)
retorno = RunQuery("Ocurrió un error al obtener el Calculo ISR anual.") retorno = RunQuery("Ocurrió un error al obtener el Calculo ISR anual.")
Return retorno Return retorno
End Function End Function

View File

@@ -5380,6 +5380,7 @@ Public Class ClsPaginas
PaginaDict.Add("/RH/MiPerfil.aspx".ToUpper(), -1) ' se dejará libre el módulo para que cualquier que tenga cvepersonal, pueda acceder PaginaDict.Add("/RH/MiPerfil.aspx".ToUpper(), -1) ' se dejará libre el módulo para que cualquier que tenga cvepersonal, pueda acceder
PaginaDict.Add("/RH/CatChecadores.aspx".ToUpper(), 694) PaginaDict.Add("/RH/CatChecadores.aspx".ToUpper(), 694)
PaginaDict.Add("/RH/CatRegistroPatronal.aspx".ToUpper(), 1324) PaginaDict.Add("/RH/CatRegistroPatronal.aspx".ToUpper(), 1324)
PaginaDict.Add("/SAT/SolicitudesNominaSat.aspx".ToUpper(), 545)
#End Region #End Region
#Region "Sistema" #Region "Sistema"
'Cargo las páginas que deben tener restricción 'Cargo las páginas que deben tener restricción

18
LogAngular.aspx Normal file
View File

@@ -0,0 +1,18 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="LogAngular.aspx.cs" Inherits="LogAngular" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
<script>
open(location, '_self').close();
</script>
</html>

14
LogAngular.aspx.cs Normal file
View File

@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class LogAngular : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}

View File

@@ -126,13 +126,19 @@
<asp:HiddenField ID="HdfImagenes" ClientIDMode="Static" runat="server" /> <asp:HiddenField ID="HdfImagenes" ClientIDMode="Static" runat="server" />
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<iframe id="framexd" style="display:none"></iframe> <iframe id="framexd" style="display:none;"></iframe>
</div> </div>
<script type="text/javascript" src="/Metronic/assets/global/scripts/JSNoCustom"></script> <script type="text/javascript" src="/Metronic/assets/global/scripts/JSNoCustom"></script>
<%--<script type="text/javascript" src="/Scripts/Notificaciones.js"></script>--%> <%--<script type="text/javascript" src="/Scripts/Notificaciones.js"></script>--%>
<script> <script>
function opennewlocation(returnurl,token) { function opennewlocation(returnurl, token) {
document.location = returnurl; debugger;
if (token.length > 0) {
$('#framexd').attr('src', token)
} else {
}
setTimeout(function () { document.location = returnurl; }, 2000);
} }
// aqui debe de llammarse siganalr, para desconectar // aqui debe de llammarse siganalr, para desconectar
function exitsignalr() { function exitsignalr() {

View File

@@ -39,6 +39,25 @@ Partial Class LogIn
If HttpContext.Current.Request.ServerVariables("REMOTE_ADDR").ToString().Contiene(iplist) Then If HttpContext.Current.Request.ServerVariables("REMOTE_ADDR").ToString().Contiene(iplist) Then
Response.Redirect("http://www.adsistemas.mx/login.aspx") 'si alguien lo ve es correcto la pagina vieja de adsistemas Response.Redirect("http://www.adsistemas.mx/login.aspx") 'si alguien lo ve es correcto la pagina vieja de adsistemas
End If End If
Dim token As String = GetTokenAngular()
If (token.Length > 0) Then
If Not IsNothing(Request("port")) Then
Dim ReturnUrl As String = "/"
If Request("ReturnUrl") IsNot Nothing Then
ReturnUrl = Request("ReturnUrl").ToString()
End If
Dim strdomain = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "")
If Request.Url.Port <> 80 Then
strdomain = strdomain.Replace(String.Format(":{0}", Request.Url.Port), "")
End If
ReturnUrl = String.Format("{0}:{1}/auth/login?token={3}&returnUrl=/{2}", strdomain, Request("port"), HttpUtility.UrlEncode(ReturnUrl), HttpUtility.UrlEncode(token))
'S ies angular retiro el https para que no marque error la pagina
ReturnUrl = ReturnUrl.Replace("https", "http")
ReturnUrl = ReturnUrl.Replace("HTTPS", "HTTP")
RegistraScript(String.Format("opennewlocation('{0}','{1}')", ReturnUrl, ""))
End If
End If
If Not Page.IsPostBack Then If Not Page.IsPostBack Then
Dim strimg As New StringBuilder Dim strimg As New StringBuilder
@@ -185,16 +204,6 @@ Partial Class LogIn
If Request("ReturnUrl") IsNot Nothing Then If Request("ReturnUrl") IsNot Nothing Then
ReturnUrl = Request("ReturnUrl").ToString() ReturnUrl = Request("ReturnUrl").ToString()
End If End If
If Not IsNothing(Request("port")) Then
Dim strdomain = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "")
If Request.Url.Port <> 80 Then
strdomain = strdomain.Replace(String.Format(":{0}", Request.Url.Port), "")
End If
ReturnUrl = String.Format("{0}:{1}/{2}", strdomain, Request("port"), ReturnUrl)
'S ies angular retiro el https para que no marque error la pagina
ReturnUrl = ReturnUrl.Replace("https", "http")
ReturnUrl = ReturnUrl.Replace("HTTPS", "HTTP")
End If
If BtnLogIn_Clickenter = 0 Then 'esta variable se recicla con cada postaback If BtnLogIn_Clickenter = 0 Then 'esta variable se recicla con cada postaback
BtnLogIn_Clickenter = 1 BtnLogIn_Clickenter = 1
Dim ObjUsuario As New ClsSisUsuarios Dim ObjUsuario As New ClsSisUsuarios
@@ -209,68 +218,110 @@ Partial Class LogIn
End If End If
ADSSessionConfig.sessionUser = Usuario ADSSessionConfig.sessionUser = Usuario
ADSSessionConfig.sessionDpage = False ADSSessionConfig.sessionDpage = False
ObjUsuario.Dispose() ObjUsuario.Dispose()
If Usuario IsNot Nothing Then If Usuario IsNot Nothing Then
If Not Usuario.AutorizadoxIP OrElse (HddAdsCodex.Text.Length > 0 AndAlso Usuario.CodigoAutorizado = HddAdsCodex.Text) Then If Not Usuario.AutorizadoxIP OrElse (HddAdsCodex.Text.Length > 0 AndAlso Usuario.CodigoAutorizado = HddAdsCodex.Text) Then
CreaObjetoEmpresa(Usuario) CreaObjetoEmpresa(Usuario)
ADSSessionConfig.sessionUser.MultipleEmpresa = True ADSSessionConfig.sessionUser.MultipleEmpresa = True
Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa) Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa)
Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID)) Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID))
x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x) x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x)
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE 'PLATAFORMA PORTAL CLIENTE
'FormsAuthentication.RedirectFromLoginPage(_sessionid, False) 'FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
'Response.Redirect("/PortalCliente/PortalCliente.aspx", True) 'Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
ReturnUrl = "/PortalCliente/PortalCliente.aspx" ReturnUrl = "/PortalCliente/PortalCliente.aspx"
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR 'PLATAFORMA PORTAL PROVEEDOR
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False) 'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True) 'Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
ReturnUrl = "/PortalProveedor/PortalProveedor.aspx" ReturnUrl = "/PortalProveedor/PortalProveedor.aspx"
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS 'PLATAFORMA GPS
Usuario.CvePlataforma = 3 Usuario.CvePlataforma = 3
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False) 'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalGPS/InicioGPS.aspx", True) 'Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
ReturnUrl = "/PortalGPS/InicioGPS.aspx" ReturnUrl = "/PortalGPS/InicioGPS.aspx"
Else
'PLATAFORMA SIG
CType(Session("UsuarioSIG"), Usuario).CvePlataforma = 1
Dim dt As Data.DataTable = GlobalDTUsuarios(Usuario.CveUsuario)
If dt IsNot Nothing Then
If dt.Rows.Count >= 1 Then
If dt.Rows.Count > 1 Then
Usuario.MultipleEmpresa = True
End If
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
End If
End If
dt.Dispose()
End If
Dim cookie = FormsAuthentication.GetAuthCookie(Usuario.CveUsuario, False)
Response.Cookies.Add(cookie)
RegistraScript(String.Format("opennewlocation('{0}','{1}')", ReturnUrl, ""))
'Response.Redirect(ReturnUrl, True)
Else Else
Alert("El usuario no esta autorizado en este equipo, favor de contactar al administrador de usuarios.", TipoMensaje.MsgAdvertencia) 'PLATAFORMA SIG
CType(Session("UsuarioSIG"), Usuario).CvePlataforma = 1
Dim dt As Data.DataTable = GlobalDTUsuarios(Usuario.CveUsuario)
If dt IsNot Nothing Then
If dt.Rows.Count >= 1 Then
If dt.Rows.Count > 1 Then
Usuario.MultipleEmpresa = True
End If
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
End If
End If
dt.Dispose()
End If End If
'If Usuario.Acceso > 0 Then
'Else Dim cookie = FormsAuthentication.GetAuthCookie(Usuario.CveUsuario, False)
' Alert("Usuario con acceso limitado.", TipoMensaje.MsgAdvertencia) Response.Cookies.Add(cookie)
'End If Dim routeangular As String
Dim puerto As String = ""
If Not IsNothing(Request("port")) Then
puerto = String.Format(":{0}", Request("port"))
Else
puerto = String.Format(":{0}", If(System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1", 84, 4200))
End If
Dim strdomain = Request.Url.AbsoluteUri.Replace(Request.Url.PathAndQuery, "")
If Request.Url.Port <> 80 Then
strdomain = strdomain.Replace(String.Format(":{0}", Request.Url.Port), "")
End If
Dim token As String = GetTokenAngular()
routeangular = String.Format("{0}{1}/auth/login?token={3}{4}&returnUrl=/{2}", strdomain, puerto, HttpUtility.UrlEncode(ReturnUrl), HttpUtility.UrlEncode(token), If(puerto.Length > 0, "cerrar=1&", ""))
'S ies angular retiro el https para que no marque error la pagina
routeangular = routeangular.Replace("https", "http")
routeangular = routeangular.Replace("HTTPS", "HTTP")
If Not IsNothing(Request("port")) Then
ReturnUrl = routeangular
routeangular = ""
End If
RegistraScript(String.Format("opennewlocation('{0}','{1}')", ReturnUrl, routeangular))
'Response.Redirect(ReturnUrl, True)
Else Else
Alert("Usuario y/o Contraseña incorrectos.", TipoMensaje.MsgAdvertencia) Alert("El usuario no esta autorizado en este equipo, favor de contactar al administrador de usuarios.", TipoMensaje.MsgAdvertencia)
End If End If
'If Usuario.Acceso > 0 Then
'Else
' Alert("Usuario con acceso limitado.", TipoMensaje.MsgAdvertencia)
'End If
Else
Alert("Usuario y/o Contraseña incorrectos.", TipoMensaje.MsgAdvertencia)
End If End If
End If
End Sub End Sub
Private Function GetTokenAngular() As String
If Not IsNothing(Context.Session("UsuarioSIG")) Then
Dim usuario As Usuario = DirectCast(Context.Session("UsuarioSIG"), Usuario)
Dim tokenDescriptor = New Microsoft.IdentityModel.Tokens.SecurityTokenDescriptor With {
.Subject = New System.Security.Claims.ClaimsIdentity(New System.Security.Claims.Claim() {New System.Security.Claims.Claim("CvePlataforma", usuario.CvePlataforma.ToString()),
New System.Security.Claims.Claim("CveUsuario", usuario.CveUsuario.ToString()), New System.Security.Claims.Claim("CveEmpresa", usuario.CveEmpresa.ToString()),
New System.Security.Claims.Claim("CveRol", usuario.CveRol.ToString()), New System.Security.Claims.Claim("Fecha", Date.Now.ToLongDateString())}),
.Expires = Date.UtcNow.AddHours(3),
.SigningCredentials = New Microsoft.IdentityModel.Tokens.SigningCredentials(
New Microsoft.IdentityModel.Tokens.SymmetricSecurityKey(Encoding.ASCII.GetBytes("*_AsistenciaDesarrolloSistemas-SIGAPI_*17-06-2020")),
Microsoft.IdentityModel.Tokens.SecurityAlgorithms.HmacSha256Signature)}
Dim tokenHandler = New System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler()
Dim newtoken = tokenHandler.CreateToken(tokenDescriptor)
Dim stokenn As String = tokenHandler.WriteToken(newtoken)
Return stokenn
Else
Return ""
End If
End Function
Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario) Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario)
Dim ObjEmpresa As New ClsSisEmpresas() Dim ObjEmpresa As New ClsSisEmpresas()

View File

@@ -1060,15 +1060,20 @@ Partial Class RH_Personal
If (objrh.AgroDepartamentosGet(UsuarioActual.CveEmpresa, -1, -1)) Then If (objrh.AgroDepartamentosGet(UsuarioActual.CveEmpresa, -1, -1)) Then
Dim dt As DataTable = objrh.DtResultados.FiltraParametros(String.Format("CveSubProyecto ={0}", DdlSubProyectoAsignado.SelectedValue), "", {"CveTipoTrabajador", "TipoTrabajadorB"}) Dim dt As DataTable = objrh.DtResultados.FiltraParametros(String.Format("CveSubProyecto ={0}", DdlSubProyectoAsignado.SelectedValue), "", {"CveTipoTrabajador", "TipoTrabajadorB"})
Dim drow As DataRow = dt.NewRow() Dim drow As DataRow = dt.NewRow()
drow("CveTipoTrabajador") = "-1"
drow("TipoTrabajadorB") = "Seleccione"
If UsuarioActual.CveEmpresa <> 158 Then If UsuarioActual.CveEmpresa <> 158 Then
drow = dt.NewRow()
drow("CveTipoTrabajador") = "2" drow("CveTipoTrabajador") = "2"
drow("TipoTrabajadorB") = "Operativo" drow("TipoTrabajadorB") = "Operativo"
dt.Rows.InsertAt(drow, 0)
drow = dt.NewRow()
drow("CveTipoTrabajador") = "3" drow("CveTipoTrabajador") = "3"
drow("TipoTrabajadorB") = "Administrativo" drow("TipoTrabajadorB") = "Administrativo"
dt.Rows.InsertAt(drow, 0)
End If End If
drow = dt.NewRow()
drow("CveTipoTrabajador") = "-1"
drow("TipoTrabajadorB") = "Seleccione"
dt.Rows.InsertAt(drow, 0) dt.Rows.InsertAt(drow, 0)
If DdlTipoTrabajador.Items.Count() > 0 Then If DdlTipoTrabajador.Items.Count() > 0 Then
DdlTipoTrabajador.SelectedValueExist("-1") DdlTipoTrabajador.SelectedValueExist("-1")

View File

@@ -1,75 +0,0 @@
<%@ Page Title="RH - Cumpleañeros" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepCumpleaneros.aspx.vb" Inherits="RH_RepCumpleaneros" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="E" runat="Server">
Cumpleañeros del Mes de
<asp:Literal ID="LtlMes" runat="server"></asp:Literal>
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UpTitulos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<table class="table table-striped table-advance table-hover">
<thead>
<tr class="Titulos">
<th width="250px">
<asp:LinkButton ID="LbDepartamento" runat="server" CausesValidation="false" Text="" CommandArgument="Departamento" OnClick="LbOrden_Click">
Departamento
<asp:Literal ID="ImgDepartamento" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbEstado" runat="server" CausesValidation="false" Text="" CommandArgument="Estatus" OnClick="LbOrden_Click">
Estado
<asp:Literal ID="ImgEstatus" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbFecha" runat="server" CausesValidation="false" Text="" CommandArgument="FechaIng" OnClick="LbOrden_Click">
Fecha
<asp:Literal ID="ImgFechaIng" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="100px">
<asp:LinkButton ID="LbUsuario" runat="server" CausesValidation="false" Text="" CommandArgument="Usuario" OnClick="LbOrden_Click">
Usuario
<asp:Literal ID="ImgUsuario" runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</asp:LinkButton></th>
<th width="155px">Comandos</th>
</tr>
</thead>
</table>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Departamentos Registrados">
<Columns>
<asp:TemplateField>
<ItemTemplate>
&nbsp;<asp:Literal ID="LtlDepartamento" runat="server" Text='<%# Eval("Departamento", "{0}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlEstado" runat="server" Text='<%# Eval("Estatus") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlFecha" runat="server" Text='<%# Eval("FechaIng", "{0:d}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -1,9 +0,0 @@

Partial Class RH_RepCumpleaneros
Inherits System.Web.UI.Page
Protected Sub LbOrden_Click(sender As Object, e As EventArgs)
End Sub
End Class

View File

@@ -4,7 +4,152 @@
</asp:Content> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server"> <asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style> <style>
.GVSolicitudTimbreNominaGral tr td:nth-child(4) { .dashboard-stat .visual > i {
font-size: 90px;
}
.dashboard-stat .visual > i {
opacity: 0.1;
filter: alpha(opacity=10);
}
.dashboard-stat.SigData {
color: #FFFFFF;
background-color: #3598dc;
}
.dashboard-stat.XMLData {
color: #FFFFFF;
background-color: #900;
}
.dashboard-stat.SigData .more,
.dashboard-stat.XMLData .more {
color: #FFFFFF;
background-color: rgb(0,0,0,0.4);
}
.ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) {
color: #333333;
background-color: #DDD;
font-weight: bold;
}
.reporte1 .GVSolicitudTimbreNominaGral tr td:nth-child(n+2),
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(n+2) {
text-align: right !important;
white-space: nowrap;
}
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(2),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2) {
background-color: #900;
color: #FFF;
}
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(3),
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(4),
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(5),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(3),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(4),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(5) {
background-color: #3598dc;
color: #FFF;
}
.reporte2 .GVSolicitudTimbreNominaGral tr td:nth-child(n+2),
.reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(n+2) {
text-align: right !important;
white-space: nowrap;
}
.reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(2),
.reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2) {
background-color: #900;
color: #FFF;
}
.reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(7)),
.reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(7)){
background-color: #3598dc;
color: #FFF;
}
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(n+3) {
white-space: nowrap;
}
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(4),
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(8),
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(9),
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(n+13):not(:nth-child(n+19)),
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(24),
.reporte3 .GVSolicitudTimbreNominaGral tr td:nth-child(n+28):not(:nth-child(n+33)) {
text-align: right !important;
}
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(2),
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+20),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+20){
background-color: #900;
color: #FFF;
}
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(1),
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+20)),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(1),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(n+20)) {
background-color: #3598dc;
color: #FFF;
}
.reporte4 .GVSolicitudTimbreNominaGral tr td:nth-child(n+2),
.reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(n+2) {
text-align: right !important;
white-space: nowrap;
}
.reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(2),
.reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2) {
background-color: #900;
color: #FFF;
}
.reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3),
.reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3) {
background-color: #3598dc;
color: #FFF;
}
.reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n) {
white-space: nowrap;
}
.reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n+3),
.reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3) {
text-align: right !important;
}
.reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+6)) {
background-color: #900;
color: #FFF;
}
.reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+6) {
background-color: #3598dc;
color: #FFF;
}
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(1),
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(4) {
white-space: nowrap; white-space: nowrap;
} }
</style> </style>
@@ -15,9 +160,14 @@
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server"> <asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:LinkButton ID="LnkDownloadExcel" OnClick="LnkDownloadExcel_Click" runat="server"><i class="fa fa-excel"></i>Descargar</asp:LinkButton>
</li>
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<li> <asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server">Solicitudes</asp:LinkButton></li> <li>
<asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server">Solicitudes</asp:LinkButton>
</li>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</asp:Content> </asp:Content>
@@ -31,13 +181,20 @@
<div class="portlet-title portlet-filterT smalltitle"> <div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption"> <div class="titlefiltros caption">
<div class="row"> <div class="row">
<%--<label class="col-md-1">Ejercicio: </label> <label class="col-md-1">Reporte: </label>
<div class="col-md-1"> <div class="col-md-2">
<asp:DropDownList ID="DdlUsuario" runat="server" Style="width: 100% !important;" CssClass="select2me" DataValueField="CveUsuario" DataTextField="Nombre"> <asp:DropDownList ID="DdlReporte" runat="server" Style="width: 100% !important;" CssClass="select2me" DataValueField="CveUsuario" DataTextField="Nombre">
<asp:ListItem Value="1" Text="1:01/01/2021 - 31/12/2021"></asp:ListItem> <asp:ListItem Value="1" Text="Conciliacion ISR mensual"></asp:ListItem>
<asp:ListItem Value="2" Text="Conciliacion ISR por concepto"></asp:ListItem>
<asp:ListItem Value="3" Text="Conciliacion ISR por recibo"></asp:ListItem>
<asp:ListItem Value="4" Text="Anual sueldos y salarios resumen general"></asp:ListItem>
<asp:ListItem Value="5" Text="Anual sueldos y salarios global por conceptos"></asp:ListItem>
<asp:ListItem Value="6" Text="Anual sueldos y salarios por clave SAT"></asp:ListItem>
<asp:ListItem Value="7" Text="Anual sueldos y salarios por empleado"></asp:ListItem>
<asp:ListItem Value="8" Text="Anual sueldos y salarios por concepto"></asp:ListItem>
<asp:ListItem Value="9" Text="Anual sueldos y salarios por recibo"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
</div>--%> </div>
<label class="col-md-1 mediocol">del:</label> <label class="col-md-1 mediocol">del:</label>
<div class="col-md-1"> <div class="col-md-1">
<%--<asp:TextBox ID="TxtPeriodoInicio" Text="0" CssClass="form-control" runat="server"></asp:TextBox>--%> <%--<asp:TextBox ID="TxtPeriodoInicio" Text="0" CssClass="form-control" runat="server"></asp:TextBox>--%>
@@ -83,40 +240,39 @@
<div class="row"> <div class="row">
<div class="col-sm-3"> <div class="col-sm-3">
<div class="dashboard-stat purple"> <div class="dashboard-stat XMLData">
<div class="visual"><i class="fa fa-file"></i></div> <div class="visual"><i class="fa fa-file"></i></div>
<div class="details"> <div class="details">
<div class="number">Timbres Fiscales</div> <div class="number">Timbres Fiscales</div>
<div class="desc"> <div class="desc">
<label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label> <label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Total"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Total">
<asp:Literal ID="LtlDoctosTotal" runat="server"></asp:Literal>3573</label> <asp:Literal ID="LtlTimbreFiscalTotal" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Activos"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Activos">
<asp:Literal ID="LtlDoctosEntregados" runat="server"></asp:Literal>3281</label> <asp:Literal ID="LtlTimbreFiscalActivos" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Cancelados"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Cancelados">
<asp:Literal ID="LtlDoctosRestantes" runat="server"></asp:Literal>292</label> <asp:Literal ID="LtlTimbreFiscalCancelados" runat="server"></asp:Literal></label>
</div> </div>
</div> </div>
<div class="more">Documentos <i class="m-icon-swapright m-icon-white"></i></div> <div class="more">Información obtenida del sat <i class="m-icon-swapright m-icon-white"></i></div>
</div> </div>
</div> </div>
<div class="col-sm-3"> <div class="col-sm-3">
<div class="dashboard-stat red"> <div class="dashboard-stat SigData">
<div class="visual"><i class="fa fa-file"></i></div> <div class="visual"><i class="fa fa-file"></i></div>
<div class="details"> <div class="details">
<div class="number">Neto Pagado</div> <div class="number">Sobrerecibos</div>
<div class="desc"> <div class="desc">
<label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label> <label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Importe"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Total">
<asp:Literal ID="LtlDoctosGralesTotal" runat="server"></asp:Literal></label> <asp:Literal ID="LtlSobrerecibosTotal" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Activo"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Timbrados">
<asp:Literal ID="LtlDoctosGralesEntregados" runat="server"></asp:Literal></label> <asp:Literal ID="LtlSobrerecibosTimbrados" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Cancelado"> <label class="indicadortipo4 col-md-6 tooltips" data-original-title="Sin timbrar">
<asp:Literal ID="LtlDoctosGralesRestantes" runat="server"></asp:Literal></label> <asp:Literal ID="LtlSobrerecibosSintimbrar" runat="server"></asp:Literal></label>
</div> </div>
</div> </div>
<div class="more">Documentos <i class="m-icon-swapright m-icon-white"></i></div> <div class="more">Información obtenida del SIG <i class="m-icon-swapright m-icon-white"></i></div>
</div> </div>
</div> </div>
<%-- <div class="col-sm-3"> <%-- <div class="col-sm-3">
@@ -175,9 +331,10 @@
<a href="javascript:;" onclick="FiltrarTablaV2('.TxtBusqueda','.ADScroller-body .GVSolicitudTimbreNominaGral')" style="margin-top: -3px;" class="btn btn-circle btn-sm font-bold yellow-gold"><i class="icon-magnifier" style="font-weight: bold;"></i></a> <a href="javascript:;" onclick="FiltrarTablaV2('.TxtBusqueda','.ADScroller-body .GVSolicitudTimbreNominaGral')" style="margin-top: -3px;" class="btn btn-circle btn-sm font-bold yellow-gold"><i class="icon-magnifier" style="font-weight: bold;"></i></a>
</div> </div>
</div> </div>
<div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom "> <div class='portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom <%= clasegrid %>'>
<asp:GridView ID="GVSolicitudTimbreNominaGral" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVSolicitudTimbreNominaGral" AutoGenerateColumns="true"
DataKeyNames="Periodo,Version CFDI,Version Nómina,UUID,UUIDs relacionados,Tipo relacion,Tipo nomina,Serie,Folio,Fecha emision,Fecha certificacion,Fecha cancelacion,Fecha pago,Fecha inicial pago,Fecha final pago,Dias pagados,RFC emisor,Razon emisor,Registro patronal,RFC receptor,Razon receptor,Fecha inicio relacion laboral,Tipo contrato,Tipo jornada,Tipo regimen,Num empleado,Antiguedad,Sindicalizado,ClaveEntFed,Banco,Cuenta bancaria,CURP,No Seguro social,Departamento,Puesto,Periodicidad pago,Salario base cot apor,Salario diario integrado,Estado"> <%--DataKeyNames="Periodo,Version CFDI,Version Nómina,UUID,UUIDs relacionados,Tipo relacion,Tipo nomina,Serie,Folio,Fecha emision,Fecha certificacion,Fecha cancelacion,Fecha pago,Fecha inicial pago,Fecha final pago,Dias pagados,RFC emisor,Razon emisor,Registro patronal,RFC receptor,Razon receptor,Fecha inicio relacion laboral,Tipo contrato,Tipo jornada,Tipo regimen,Num empleado,Antiguedad,Sindicalizado,ClaveEntFed,Banco,Cuenta bancaria,CURP,No Seguro social,Departamento,Puesto,Periodicidad pago,Salario base cot apor,Salario diario integrado,Estado"--%>
<asp:GridView ID="GVSolicitudTimbreNominaGral" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVSolicitudTimbreNominaGral" AutoGenerateColumns="true">
<Columns></Columns> <Columns></Columns>
</asp:GridView> </asp:GridView>
@@ -245,10 +402,10 @@
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender6" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaFAdd" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender6" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaFAdd" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>
<div class ="text-right"> <div class="text-right">
<asp:LinkButton ID="LnkSolicitarSat" OnClick="LnkSolicitarSat_Click" runat="server">Solicitar</asp:LinkButton> <asp:LinkButton ID="LnkSolicitarSat" OnClick="LnkSolicitarSat_Click" runat="server">Solicitar</asp:LinkButton>
</div> </div>
</div> </div>
</div> </div>
<div class="portlet light xspadding bordered " id="PnlPendientes"> <div class="portlet light xspadding bordered " id="PnlPendientes">
<div class="portlet-title"> <div class="portlet-title">
@@ -304,7 +461,7 @@
</asp:TemplateField> </asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</div> </div>
</div> </div>
<div class="portlet light xspadding bordered " id="PnlTerminads"> <div class="portlet light xspadding bordered " id="PnlTerminads">
<div class="portlet-title"> <div class="portlet-title">
@@ -361,9 +518,9 @@
</div> </div>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button> <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>

View File

@@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data;
using System.Linq; using System.Linq;
using System.Web; using System.Web;
using System.Web.UI; using System.Web.UI;
@@ -7,8 +8,38 @@ using System.Web.UI.WebControls;
using Extensiones; using Extensiones;
public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page public partial class SAT_SolicitudesNominaSat : ClsPaginas
{ {
#region Propiedades
public string clasegrid
{
get
{
if (ViewState["clasegrid"] == null) { return ""; }
else { return ViewState["clasegrid"].ToString(); }
}
set { ViewState["clasegrid"] = value; }
}
public string fechaInicio
{
get
{
if (ViewState["fechaInicio"] == null) { return ""; }
else { return ViewState["fechaInicio"].ToString(); }
}
set { ViewState["fechaInicio"] = value; }
}
public string fechaFin
{
get
{
if (ViewState["fechaFin"] == null) { return ""; }
else { return ViewState["fechaFin"].ToString(); }
}
set { ViewState["fechaFin"] = value; }
}
#endregion
protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e)
{ {
if (!IsPostBack) if (!IsPostBack)
@@ -19,22 +50,73 @@ public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page
} }
} }
protected void LnkDownloadExcel_Click(object sender, EventArgs e)
{
using (ClsNominas nom = new ClsNominas())
{
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin);
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
var libro = wb.AddWorksheet(nom.DtResultados , "Nomina");
libro.ColumnsUsed().AdjustToContents();
System.IO.Stream fs = new System.IO.MemoryStream();
wb.SaveAs(fs);
fs.Position = 0;
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
using (System.IO.Stream input = fs)
{
input.CopyTo(memoryStream);
}
memoryStream.Position = 0;
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xlsx", "Visor nómina "));
Response.BinaryWrite(memoryStream.ToArray());
Response.End();
}
}
protected void LnkConsultar_Click(object sender, EventArgs e) protected void LnkConsultar_Click(object sender, EventArgs e)
{ {
using (ClsNominas nom =new ClsNominas()) using (ClsNominas nom = new ClsNominas())
{ {
nom.SATSolicitudTimbreNominaGral(-1, -1); fechaInicio = TxtRpdFechaInicio.Text.ToDateTime().ToString("yyyy/MM/dd");
fechaFin = TxtRpdFechaFin.Text.ToDateTime().ToString("yyyy/MM/dd");
nom.SATSolicitudTimbreNominaGral(0, UsuarioActual.CveEmpresa, fechaInicio, fechaFin);
if (nom.DtResultados.Rows.Count > 0)
{
DataRow drow = nom.DtResultados.Rows[0];
LtlTimbreFiscalTotal.Text = string.Format("{0:N0}", drow["NOXml"]);
LtlTimbreFiscalActivos.Text = string.Format("{0:N0}", drow["NOXmlActivos"]);
LtlTimbreFiscalCancelados.Text = string.Format("{0:N0}", drow["NOXml"].ToString().ToEntero() - drow["NOXmlActivos"].ToString().ToEntero());
LtlSobrerecibosTotal.Text = string.Format("{0:N0}", drow["NOXmlSig"]);
LtlSobrerecibosTimbrados.Text = string.Format("{0:N0}", drow["Timbrados"]);
LtlSobrerecibosSintimbrar.Text = string.Format("{0:N0}", drow["SinTimbrar"]);
}
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin);
GVSolicitudTimbreNominaGral.DataSource = nom.DtResultados; GVSolicitudTimbreNominaGral.DataSource = nom.DtResultados;
GVSolicitudTimbreNominaGral.DataBind(); GVSolicitudTimbreNominaGral.DataBind();
clasegrid = string.Format("reporte{0}", DdlReporte.SelectedValue);
} }
upDatosChec.Update(); upDatosChec.Update();
//SATSolicitudTimbreNominaGral //SATSolicitudTimbreNominaGral
} }
private void cargasolicitudes() private void cargasolicitudes()
{ {
using (ClsNominas nom = new ClsNominas()) using (ClsNominas nom = new ClsNominas())
{ {
if (nom.SolicitudesNominasGet(-1, 119))
if (nom.SolicitudesNominasGet(-1, UsuarioActual.CveEmpresa))
{ {
GVSolicitudesPendientes.DataSource = nom.DtResultados.FiltraParametros("Estatus =0"); GVSolicitudesPendientes.DataSource = nom.DtResultados.FiltraParametros("Estatus =0");
@@ -60,12 +142,12 @@ public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page
string observaciones = ""; string observaciones = "";
DateTime fechaInicio = txtFechaIAdd.Text.ToDateTime(); DateTime fechaInicio = txtFechaIAdd.Text.ToDateTime();
DateTime fechaFin = txtFechaFAdd.Text.ToDateTime(); DateTime fechaFin = txtFechaFAdd.Text.ToDateTime();
int cveUsuarioIng = 1360; int cveUsuarioIng = UsuarioActual.CveUsuario;
int cveEmpresa = 119; int cveEmpresa = UsuarioActual.CveEmpresa;
bool Continuar = false; bool Continuar = false;
using (ClsNominas nom = new ClsNominas()) using (ClsNominas nom = new ClsNominas())
{ {
Continuar = nom.SolicitudesNominasAdd(idSolicitudCFDI, idSolicitudMetadata, estatus, observaciones, fechaInicio, fechaFin, cveUsuarioIng, cveEmpresa); Continuar = nom.SolicitudesNominasAdd(idSolicitudCFDI, idSolicitudMetadata, estatus, observaciones, fechaInicio, fechaFin, cveUsuarioIng, cveEmpresa);
} }
if (Continuar) if (Continuar)
{ {
@@ -73,7 +155,8 @@ public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page
txtFechaFAdd.Text = ""; txtFechaFAdd.Text = "";
this.RegistraScript("$('#DModalSolicitudesNominas').modal('hide');"); this.RegistraScript("$('#DModalSolicitudesNominas').modal('hide');");
cargasolicitudes(); cargasolicitudes();
this.Alert("se a envia la solicitud al sat, le enviaremos un correo en cuanto tengamos una respuesta",ModExtensiones.TipoMensaje.ToastInformacion ); this.Alert("se a envia la solicitud al sat, le enviaremos un correo en cuanto tengamos una respuesta", ModExtensiones.TipoMensaje.ToastInformacion);
} }
} }
} }

View File

@@ -460,6 +460,8 @@