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
#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
DataAdapter("[PA_SAT_SolicitudTimbreNominaGral]", CommandType.StoredProcedure)
addParameters("@IDsolicitud", SqlDbType.Int, IDsolicitud)
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.")
Return retorno
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/CatChecadores.aspx".ToUpper(), 694)
PaginaDict.Add("/RH/CatRegistroPatronal.aspx".ToUpper(), 1324)
PaginaDict.Add("/SAT/SolicitudesNominaSat.aspx".ToUpper(), 545)
#End Region
#Region "Sistema"
'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" />
</ContentTemplate>
</asp:UpdatePanel>
<iframe id="framexd" style="display:none"></iframe>
<iframe id="framexd" style="display:none;"></iframe>
</div>
<script type="text/javascript" src="/Metronic/assets/global/scripts/JSNoCustom"></script>
<%--<script type="text/javascript" src="/Scripts/Notificaciones.js"></script>--%>
<script>
function opennewlocation(returnurl,token) {
document.location = returnurl;
function opennewlocation(returnurl, token) {
debugger;
if (token.length > 0) {
$('#framexd').attr('src', token)
} else {
}
setTimeout(function () { document.location = returnurl; }, 2000);
}
// aqui debe de llammarse siganalr, para desconectar
function exitsignalr() {

View File

@@ -39,6 +39,25 @@ Partial Class LogIn
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
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
Dim strimg As New StringBuilder
@@ -185,16 +204,6 @@ Partial Class LogIn
If Request("ReturnUrl") IsNot Nothing Then
ReturnUrl = Request("ReturnUrl").ToString()
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
BtnLogIn_Clickenter = 1
Dim ObjUsuario As New ClsSisUsuarios
@@ -209,68 +218,110 @@ Partial Class LogIn
End If
ADSSessionConfig.sessionUser = Usuario
ADSSessionConfig.sessionDpage = False
ObjUsuario.Dispose()
If Usuario IsNot Nothing Then
If Not Usuario.AutorizadoxIP OrElse (HddAdsCodex.Text.Length > 0 AndAlso Usuario.CodigoAutorizado = HddAdsCodex.Text) Then
ADSSessionConfig.sessionDpage = False
ObjUsuario.Dispose()
If Usuario IsNot Nothing Then
If Not Usuario.AutorizadoxIP OrElse (HddAdsCodex.Text.Length > 0 AndAlso Usuario.CodigoAutorizado = HddAdsCodex.Text) Then
CreaObjetoEmpresa(Usuario)
ADSSessionConfig.sessionUser.MultipleEmpresa = True
CreaObjetoEmpresa(Usuario)
ADSSessionConfig.sessionUser.MultipleEmpresa = True
Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa)
Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID))
x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x)
Dim x As New ADSSessionObj(Usuario.CveUsuario, Usuario.CveEmpresa)
Dim _sessionid = Encripta(String.Format("{0}|{1}", Usuario.CveUsuario, x.SessionID))
x = ADSSessionConfig.SessionManager(OpcionSession.agregarSession, x)
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE
'FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
'Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
If Usuario.CvePlataforma = 6 And Usuario.CveRol = 10 Then
'PLATAFORMA PORTAL CLIENTE
'FormsAuthentication.RedirectFromLoginPage(_sessionid, False)
'Response.Redirect("/PortalCliente/PortalCliente.aspx", True)
ReturnUrl = "/PortalCliente/PortalCliente.aspx"
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
ReturnUrl = "/PortalCliente/PortalCliente.aspx"
ElseIf Usuario.CvePlataforma = 7 And Usuario.CveRol = 11 Then
'PLATAFORMA PORTAL PROVEEDOR
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalProveedor/PortalProveedor.aspx", True)
ReturnUrl = "/PortalProveedor/PortalProveedor.aspx"
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS
Usuario.CvePlataforma = 3
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
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)
ReturnUrl = "/PortalProveedor/PortalProveedor.aspx"
ElseIf Usuario.CveRol = 1200 And Usuario.Acceso > 0 Then
'PLATAFORMA GPS
Usuario.CvePlataforma = 3
'FormsAuthentication.RedirectFromLoginPage(Encripta(Usuario.CveUsuario), False)
'Response.Redirect("/PortalGPS/InicioGPS.aspx", True)
ReturnUrl = "/PortalGPS/InicioGPS.aspx"
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
'If Usuario.Acceso > 0 Then
'Else
' Alert("Usuario con acceso limitado.", TipoMensaje.MsgAdvertencia)
'End If
Dim cookie = FormsAuthentication.GetAuthCookie(Usuario.CveUsuario, False)
Response.Cookies.Add(cookie)
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
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
'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 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)
Dim ObjEmpresa As New ClsSisEmpresas()

View File

@@ -1060,15 +1060,20 @@ Partial Class RH_Personal
If (objrh.AgroDepartamentosGet(UsuarioActual.CveEmpresa, -1, -1)) Then
Dim dt As DataTable = objrh.DtResultados.FiltraParametros(String.Format("CveSubProyecto ={0}", DdlSubProyectoAsignado.SelectedValue), "", {"CveTipoTrabajador", "TipoTrabajadorB"})
Dim drow As DataRow = dt.NewRow()
drow("CveTipoTrabajador") = "-1"
drow("TipoTrabajadorB") = "Seleccione"
If UsuarioActual.CveEmpresa <> 158 Then
drow = dt.NewRow()
drow("CveTipoTrabajador") = "2"
drow("TipoTrabajadorB") = "Operativo"
dt.Rows.InsertAt(drow, 0)
drow = dt.NewRow()
drow("CveTipoTrabajador") = "3"
drow("TipoTrabajadorB") = "Administrativo"
dt.Rows.InsertAt(drow, 0)
End If
drow = dt.NewRow()
drow("CveTipoTrabajador") = "-1"
drow("TipoTrabajadorB") = "Seleccione"
dt.Rows.InsertAt(drow, 0)
If DdlTipoTrabajador.Items.Count() > 0 Then
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 ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<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;
}
</style>
@@ -15,9 +160,14 @@
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<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">
<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>
</asp:UpdatePanel>
</asp:Content>
@@ -31,13 +181,20 @@
<div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption">
<div class="row">
<%--<label class="col-md-1">Ejercicio: </label>
<div class="col-md-1">
<asp:DropDownList ID="DdlUsuario" 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>
<label class="col-md-1">Reporte: </label>
<div class="col-md-2">
<asp:DropDownList ID="DdlReporte" runat="server" Style="width: 100% !important;" CssClass="select2me" DataValueField="CveUsuario" DataTextField="Nombre">
<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>
</div>--%>
</div>
<label class="col-md-1 mediocol">del:</label>
<div class="col-md-1">
<%--<asp:TextBox ID="TxtPeriodoInicio" Text="0" CssClass="form-control" runat="server"></asp:TextBox>--%>
@@ -83,40 +240,39 @@
<div class="row">
<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="details">
<div class="number">Timbres Fiscales</div>
<div class="desc">
<label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label>
<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">
<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">
<asp:Literal ID="LtlDoctosRestantes" runat="server"></asp:Literal>292</label>
<asp:Literal ID="LtlTimbreFiscalCancelados" runat="server"></asp:Literal></label>
</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 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="details">
<div class="number">Neto Pagado</div>
<div class="number">Sobrerecibos</div>
<div class="desc">
<label class="indicadortipo4 col-md-6 tooltips" data-original-title=""></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Importe">
<asp:Literal ID="LtlDoctosGralesTotal" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Activo">
<asp:Literal ID="LtlDoctosGralesEntregados" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Cancelado">
<asp:Literal ID="LtlDoctosGralesRestantes" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Total">
<asp:Literal ID="LtlSobrerecibosTotal" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Timbrados">
<asp:Literal ID="LtlSobrerecibosTimbrados" runat="server"></asp:Literal></label>
<label class="indicadortipo4 col-md-6 tooltips" data-original-title="Sin timbrar">
<asp:Literal ID="LtlSobrerecibosSintimbrar" runat="server"></asp:Literal></label>
</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 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>
</div>
</div>
<div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom ">
<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">
<div class='portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom <%= clasegrid %>'>
<%--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>
</asp:GridView>
@@ -245,10 +402,10 @@
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender6" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaFAdd" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class ="text-right">
<div class="text-right">
<asp:LinkButton ID="LnkSolicitarSat" OnClick="LnkSolicitarSat_Click" runat="server">Solicitar</asp:LinkButton>
</div>
</div>
</div>
</div>
<div class="portlet light xspadding bordered " id="PnlPendientes">
<div class="portlet-title">
@@ -304,7 +461,7 @@
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</div>
</div>
<div class="portlet light xspadding bordered " id="PnlTerminads">
<div class="portlet-title">
@@ -361,9 +518,9 @@
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
@@ -7,8 +8,38 @@ using System.Web.UI.WebControls;
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)
{
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)
{
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.DataBind();
clasegrid = string.Format("reporte{0}", DdlReporte.SelectedValue);
}
upDatosChec.Update();
//SATSolicitudTimbreNominaGral
}
private void cargasolicitudes()
{
{
using (ClsNominas nom = new ClsNominas())
{
if (nom.SolicitudesNominasGet(-1, 119))
if (nom.SolicitudesNominasGet(-1, UsuarioActual.CveEmpresa))
{
GVSolicitudesPendientes.DataSource = nom.DtResultados.FiltraParametros("Estatus =0");
@@ -60,12 +142,12 @@ public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page
string observaciones = "";
DateTime fechaInicio = txtFechaIAdd.Text.ToDateTime();
DateTime fechaFin = txtFechaFAdd.Text.ToDateTime();
int cveUsuarioIng = 1360;
int cveEmpresa = 119;
int cveUsuarioIng = UsuarioActual.CveUsuario;
int cveEmpresa = UsuarioActual.CveEmpresa;
bool Continuar = false;
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)
{
@@ -73,7 +155,8 @@ public partial class SAT_SolicitudesNominaSat : System.Web.UI.Page
txtFechaFAdd.Text = "";
this.RegistraScript("$('#DModalSolicitudesNominas').modal('hide');");
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 @@