コード例 #1
0
ファイル: GestorSistema.cs プロジェクト: FacuLbsz/Benefix_UAI
    public int RealizarLogIn(Usuario usuario)
    {
        this.usuarioEnSesion = usuario;
        var     nombre       = usuario.nombreUsuario;
        Usuario usuarioLogin = GestorDeUsuarios.ObtenerInstancia().RealizarLogIn(usuario);

        if (usuarioLogin != null && usuarioLogin.cantidadDeIntentos >= 5)
        {
            var evento1 = new EventoBitacora()
            {
                fecha = DateTime.Now, descripcion = "Intento login usuario bloqueado " + nombre, criticidad = 1, funcionalidad = "LOGIN", usuario = null
            };
            GestorDeBitacora.ObtenerInstancia().RegistrarEvento(evento1);
            return(2);
        }
        else if (usuarioLogin == null || usuarioLogin.identificador == 0)
        {
            return(0);
        }
        else if (usuarioLogin.cantidadDeIntentos < 5)
        {
            GestorDeUsuarios.ObtenerInstancia().DesbloquearUsuario(usuarioLogin);
        }
        this.usuarioEnSesion = usuarioLogin;

        EventoBitacora evento = new EventoBitacora()
        {
            fecha = DateTime.Now, descripcion = "Login", criticidad = 3, funcionalidad = "LOGIN", usuario = ObtenerUsuarioEnSesion()
        };

        GestorDeBitacora.ObtenerInstancia().RegistrarEvento(evento);
        return(1);
    }
コード例 #2
0
 public AsignarCoordinador(Equipo equipo)
 {
     InitializeComponent();
     this.equipo      = equipo;
     gestorDeUsuarios = GestorDeUsuarios.ObtenerInstancia();
     gestorDeEquipos  = GestorDeEquipos.ObtenerInstancia();
 }
コード例 #3
0
 public UsuariosController(GestorDeUsuarios gestorDeUsuarios, GestorDeErrores gestorDeErrores)
     : base
     (
         gestorDeUsuarios,
         gestorDeErrores
     )
 {
 }
コード例 #4
0
 public ModificarIdioma(Idioma idioma, Action <Idioma> action)
 {
     this.action = action;
     this.idioma = idioma;
     InitializeComponent();
     gestorDeUsuario = GestorDeUsuarios.ObtenerInstancia();
     gestorSistema   = GestorSistema.ObtenerInstancia();
 }
コード例 #5
0
        public ViewResult ViewFormulario(DescriptorDeFormulario formulario)
        {
            ApiController.CumplimentarDatosDeUsuarioDeConexion(Contexto, Mapeador, HttpContext);
            formulario.GestorDeUsuario  = GestorDeUsuarios.Gestor(Contexto, Mapeador);
            formulario.UsuarioConectado = formulario.GestorDeUsuario.LeerRegistroCacheado(nameof(UsuarioDtm.Login), DatosDeConexion.Login, errorSiNoHay: true, errorSiHayMasDeUno: true, aplicarJoin: false);
            ViewBag.DatosDeConexion     = DatosDeConexion;

            var destino = $"{(formulario.RutaVista.IsNullOrEmpty() ? "" : $"../{formulario.RutaVista}/")}{formulario.Vista}";
コード例 #6
0
    public static GestorDeUsuarios ObtenerInstancia()
    {
        if (instancia == null)
        {
            instancia = new GestorDeUsuarios();
        }

        return(instancia);
    }
コード例 #7
0
        public IActionResult CrudDeAuditoria(string negocio)
        {
            var descriptor = new DescriptorDeAuditoria(Contexto, ModoDescriptor.Mantenimiento);

            ApiController.CumplimentarDatosDeUsuarioDeConexion(Contexto, Mapeador, HttpContext);
            descriptor.GestorDeUsuario  = GestorDeUsuarios.Gestor(Contexto, Mapeador);
            descriptor.UsuarioConectado = descriptor.GestorDeUsuario.LeerRegistroCacheado(nameof(UsuarioDtm.Login), DatosDeConexion.Login, errorSiNoHay: true, errorSiHayMasDeUno: true, aplicarJoin: false);

            var destino = $"{(descriptor.RutaBase.IsNullOrEmpty() ? "" : $"../{descriptor.RutaBase}/")}{descriptor.Vista}";
コード例 #8
0
        public static void CumplimentarDatosDeUsuarioDeConexion(ContextoSe contexto, IMapper mapeador, HttpContext httpContext)
        {
            contexto.DatosDeConexion.Login = ApiController.ObtenerUsuarioDeLaRequest(httpContext);
            var gestorDeUsuario = GestorDeUsuarios.Gestor(contexto, mapeador);
            var usuario         = gestorDeUsuario.LeerRegistroCacheado(nameof(UsuarioDtm.Login), contexto.DatosDeConexion.Login, errorSiNoHay: true, errorSiHayMasDeUno: true, aplicarJoin: false);

            contexto.DatosDeConexion.IdUsuario       = usuario.Id;
            contexto.DatosDeConexion.EsAdministrador = usuario.EsAdministrador;
            contexto.Mapeador = mapeador;
        }
コード例 #9
0
        public AsignarUsuarios(Familia familia)
        {
            InitializeComponent();
            this.familia          = familia;
            this.usuarioAsignados = familia.usuariosAsignados;
            this.gestorDeFamilias = GestorDeFamilias.ObtenerInstancia();
            this.gestorDeUsuarios = GestorDeUsuarios.ObtenerInstancia();

            this.usuariosNoAsignados   = gestorDeUsuarios.ConsultarUsuarios().Except(usuarioAsignados).ToList();
            this.usuarioAsignadosFixed = new List <Usuario>();
            usuarioAsignadosFixed.AddRange(usuarioAsignados);
        }
コード例 #10
0
        protected override dynamic CargaDinamica(string claseElemento, int posicion, int cantidad, List <ClausulaDeFiltrado> filtros)
        {
            if (claseElemento == nameof(UsuarioDto))
            {
                return(GestorDeUsuarios.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador).LeerUsuarios(posicion, cantidad, filtros));
            }

            if (claseElemento == nameof(TrabajoSometidoDto))
            {
                return(GestorDeTrabajosSometido.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador).LeerTrabajos(posicion, cantidad, filtros));
            }

            return(base.CargaDinamica(claseElemento, posicion, cantidad, filtros));
        }
コード例 #11
0
        public AsignarEmpleados(Equipo equipo)
        {
            gestorDeUsuarios = GestorDeUsuarios.ObtenerInstancia();
            gestorDeEquipos  = GestorDeEquipos.ObtenerInstancia();

            this.equipo             = equipo;
            this.usuariosAsignadoss = equipo.usuariosAsignados;

            this.usuariosNoAsignados    = gestorDeUsuarios.ConsultarUsuariosSinEquipo();
            this.usuariosAsignadosFixed = new List <Usuario>();
            this.usuariosAsignadosFixed.AddRange(usuariosAsignadoss);


            InitializeComponent();
        }
コード例 #12
0
        private void ConsultarBitacora_Load(object sender, EventArgs e)
        {
            exportarPdfButton.Enabled = false;
            gestorDeBitacora          = GestorDeBitacora.ObtenerInstancia();
            gestorDeUsuarios          = GestorDeUsuarios.ObtenerInstancia();

            List <Usuario> usuarios = new List <Usuario>();

            usuarios.Add(new Usuario {
                nombreUsuario = "TODOS", identificador = 0
            });
            usuarios.AddRange(gestorDeUsuarios.ConsultarUsuariosTodos());

            usuarioBox.DataSource    = usuarios;
            usuarioBox.DisplayMember = "nombreUsuario";
            usuarioBox.ValueMember   = "identificador";


            criticidadBox.DataSource = new List <String> {
                "TODOS", "Alta", "Media", "Baja"
            };

            fechaDesdeDate.Checked = false;
            fechaDesdeDate.Visible = false;
            fechaDesdeDate.Value   = fechaDesdeDate.Value.Date.AddDays(-7);
            fechaDesdeDate.Visible = true;

            ToolTip toolTip1 = new ToolTip();

            toolTip1.AutoPopDelay = 5000;
            toolTip1.InitialDelay = 500;
            toolTip1.ReshowDelay  = 500;
            toolTip1.ShowAlways   = true;

            toolTip1.SetToolTip(this.criticidadBox, Genesis.Recursos_localizables.StringResources.CriticidadBoxTooltip);
            toolTip1.SetToolTip(this.usuarioBox, Genesis.Recursos_localizables.StringResources.UsuarioBoxTooltip);
            toolTip1.SetToolTip(this.consultarButton, Genesis.Recursos_localizables.StringResources.ConsultarBitacoraButtonTooltip);
            toolTip1.SetToolTip(this.exportarPdfButton, Genesis.Recursos_localizables.StringResources.ExportarPdfButtonTooltip);

            System.Windows.Forms.HelpProvider helpProvider1 = new HelpProvider();
            var applicationFolder = Application.StartupPath + "\\Benefix_mu.chm";

            helpProvider1.HelpNamespace = applicationFolder;
            helpProvider1.SetHelpNavigator(this, System.Windows.Forms.HelpNavigator.Topic);
            helpProvider1.SetShowHelp(this, true);
            helpProvider1.SetHelpKeyword(this, "23_Bitcora.htm");
        }
コード例 #13
0
        public ViewResult ViewCrud(DescriptorDeCrud <TElemento> descriptor)
        {
            if (NegociosDeSe.NegocioDeUnDto(typeof(TElemento).FullName) != enumNegocio.No_Definido)
            {
                descriptor.negocioDtm = GestorDeNegocios.LeerNegocio(GestorDeElementos.Contexto, NegociosDeSe.NegocioDeUnDto(typeof(TElemento).FullName));
            }

            var gestorDeVista = GestorDeVistaMvc.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador);
            var vista         = gestorDeVista.LeerVistaMvc($"{descriptor.Controlador}.{descriptor.Vista}");

            descriptor.Creador.AbrirEnModal = vista.MostrarEnModal;
            descriptor.Editor.AbrirEnModal  = vista.MostrarEnModal;

            ApiController.CumplimentarDatosDeUsuarioDeConexion(GestorDeElementos.Contexto, GestorDeElementos.Mapeador, HttpContext);
            descriptor.GestorDeUsuario  = GestorDeUsuarios.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador);
            descriptor.UsuarioConectado = descriptor.GestorDeUsuario.LeerRegistroCacheado(nameof(UsuarioDtm.Login), DatosDeConexion.Login, errorSiNoHay: true, errorSiHayMasDeUno: true, aplicarJoin: false);

            var destino = $"{(descriptor.RutaBase.IsNullOrEmpty() ? "" : $"../{descriptor.RutaBase}/")}{descriptor.Vista}";
コード例 #14
0
 private void modificarButton_Click(object sender, EventArgs e)
 {
     if (EsFormularioValido())
     {
         var contrasenaAntigua = contrasenaActualText.Text;
         var contrasena        = nuevaContrasenaText.Text;
         if (GestorDeUsuarios.ObtenerInstancia().ModificarContrasena(new Usuario()
         {
             identificador = GestorSistema.ObtenerInstancia().ObtenerUsuarioEnSesion().identificador
         }, contrasenaAntigua, contrasena))
         {
             MessageBox.Show(Genesis.Recursos_localizables.StringResources.ModificarContrasenaSatisfactorio);
         }
         else
         {
             MessageBox.Show(Genesis.Recursos_localizables.StringResources.ModificarContrasenaError);
         }
     }
 }
コード例 #15
0
        public static CorreoDtm CrearCorreoDe(ContextoSe contexto, string parametrosJson)
        {
            Dictionary <string, object> parametros = parametrosJson.ToDiccionarioDeParametros();

            if (!parametros.ContainsKey(ltrParamCorreos.archivos))
            {
                parametros[ltrParamCorreos.archivos] = new List <string>();
            }

            ValidarParametrosDeCorreo(contexto, parametros);

            return(CrearCorreoDe(contexto
                                 , GestorDeUsuarios.LeerUsuario(contexto, contexto.DatosDeConexion.IdUsuario).eMail
                                 , (List <string>)parametros[ltrParamCorreos.receptores]
                                 , (string)parametros[ltrParamCorreos.asunto]
                                 , (string)parametros[ltrParamCorreos.cuerpo]
                                 , (List <TipoDtoElmento>)parametros[ltrParamCorreos.adjuntos]
                                 , (List <string>)parametros[ltrParamCorreos.archivos]));
        }
コード例 #16
0
 private GestorDeEquipos()
 {
     gestorDeUsuarios = GestorDeUsuarios.ObtenerInstancia();
     gestorDeGrupos   = GestorDeGrupos.ObtenerInstancia();
     baseDeDatos      = BaseDeDatos.ObtenerInstancia();
 }
コード例 #17
0
        public Modelo.AspNetUsers ObtenerUsuarioPorId(int id)
        {
            GestorDeUsuarios elGestor = new GestorDeUsuarios();

            return(elGestor.ObtenerUsuarioPorId(id));
        }
コード例 #18
0
        public List <AspNetUsers> ListarUsuarios()
        {
            GestorDeUsuarios elGestor = new GestorDeUsuarios();

            return(elGestor.ObtenerListaDeUsuarios());
        }
コード例 #19
0
 public ReportesDeObjetivosPorEmpleado()
 {
     InitializeComponent();
     gestorDeUsuarios     = GestorDeUsuarios.ObtenerInstancia();
     gestorDeEvaluaciones = GestorDeEvaluaciones.ObtenerInstancia();
 }
コード例 #20
0
 public AdministracionDeUsuarios()
 {
     InitializeComponent();
     gestorDeUsuarios = GestorDeUsuarios.ObtenerInstancia();
 }
コード例 #21
0
 private GestorDeBitacora()
 {
     baseDeDatos                 = BaseDeDatos.ObtenerInstancia();
     gestorDeUsuarios            = GestorDeUsuarios.ObtenerInstancia();
     m_GestorDeDigitoVerificador = GestorDeDigitoVerificador.ObtenerInstancia();
 }
コード例 #22
0
 public ReportesDeBeneficiosPorEmpleado()
 {
     InitializeComponent();
     gestorDeUsuarios   = GestorDeUsuarios.ObtenerInstancia();
     gestorDeBeneficios = GestorDeBeneficios.ObtenerInstancia();
 }
コード例 #23
0
 public AccesoController(ILogger <AccesoController> logger, ContextoSe contexto, GestorDeUsuarios gestorDeUsuarios, GestorDeErrores gestorDeErrores)
     : base(contexto, gestorDeUsuarios.Mapeador, gestorDeErrores)
 {
     _logger           = logger;
     _gestordeUsuarios = gestorDeUsuarios;
 }
コード例 #24
0
        private static void ValidarParametrosDeCorreo(ContextoSe contexto, Dictionary <string, object> parametros)
        {
            if (!parametros.ContainsKey(ltrParamCorreos.usuarios) && !parametros.ContainsKey(ltrParamCorreos.puestos))
            {
                GestorDeErrores.Emitir("Debe indicar algún receptor");
            }

            var usuarios = parametros.ContainsKey(ltrParamCorreos.usuarios) ? parametros[ltrParamCorreos.usuarios].ToString().JsonToLista <int>() : new List <int>();
            var puestos  = parametros.ContainsKey(ltrParamCorreos.puestos) ? parametros[ltrParamCorreos.puestos].ToString().JsonToLista <int>() : new List <int>();

            if (usuarios.Count == 0 && puestos.Count == 0)
            {
                GestorDeErrores.Emitir("Debe indicar algún receptor");
            }

            var receptores = "";

            foreach (var idUsuario in usuarios)
            {
                receptores = $"{receptores};{GestorDeUsuarios.LeerUsuario(contexto, idUsuario).eMail}";
            }
            foreach (var idPuesto in puestos)
            {
                List <UsuarioDtm> usuariosDeUnPuesto = GestorDePuestosDeTrabajo.LeerUsuarios(contexto, idPuesto);
                foreach (var usuario in usuariosDeUnPuesto)
                {
                    receptores = $"{receptores};{GestorDeUsuarios.LeerUsuario(contexto, usuario.Id).eMail}";
                }
            }

            parametros[ltrParamCorreos.receptores] = receptores.Substring(1).ToLista <string>();

            if (((string)parametros[ltrParamCorreos.asunto]).IsNullOrEmpty())
            {
                GestorDeErrores.Emitir("Debe indicar el asunto");
            }
            if (((string)parametros[ltrParamCorreos.cuerpo]).IsNullOrEmpty())
            {
                GestorDeErrores.Emitir("Debe indicar el cuerpo");
            }

            if (parametros.ContainsKey(ltrParamCorreos.adjuntos))
            {
                //var lista = new List<TipoDtoElmento>();
                var elementosDto = parametros[ltrParamCorreos.adjuntos].ToString().JsonToLista <TipoDtoElmento>();
                //foreach (var elementoDto in elementosDto)
                //{
                //    var partes = elementoDto.Split("#:#");

                //    if (partes.Length != 3)
                //        GestorDeErrores.Emitir($"Intenta enviar un correo adjuntando un elemento mal definido. debe indicar el tipoDto, el IdElemento y la referencia, sólo se han indicado {partes.Length} parámetros");


                //    if(partes[0].IsNullOrEmpty() || partes[2].IsNullOrEmpty() || partes[1].Entero() == 0)
                //    {
                //        GestorDeErrores.Emitir($"Intenta enviar un correo adjuntando un elemento mal definido. debe indicar el tipoDto, el IdElemento y la referencia, el sistema ha indicado {partes[0]}:{partes[1]}:{partes[2]}");
                //    }

                //    var elemento = new TipoDtoElmento { TipoDto = partes[0], IdElemento = partes[1].Entero(), Referencia = partes[2]};
                //    lista.Add(GestorDeNegocios.ValidarElementoDto(elemento));
                // }

                parametros[ltrParamCorreos.adjuntos] = elementosDto; // lista;
            }

            //TODO: Validar que las rutas de los archivos o los Ids de los archivos existen
        }