public List <EntPerfil> GetConsultaPerfileAccesoUsuario(EntPerfil Dobj, string tipo)
        {
            List <EntPerfil>      lst  = new List <EntPerfil>();
            DBParameterCollection pcol = ParamConfiguracion.LLenaPerfiles(Dobj, Comunes.BUSCAR, tipo);

            using (dr = db.ExecuteDataReader(Procedimientos.SpPerfiles, pcol, conm, tranm, CommandType.StoredProcedure))
            {
                while (dr.Read())
                {
                    EntPerfil obj = new EntPerfil();
                    if (dr["NombrePantalla"] != DBNull.Value)
                    {
                        obj.NombrePantalla = (dr["NombrePantalla"].ToString());
                    }
                    if (dr["IdPermiso"] != DBNull.Value)
                    {
                        obj.IdPermiso = Convert.ToInt32(dr["IdPermiso"].ToString());
                    }
                    lst.Add(obj);
                }
            }
            return(lst);
        }
Ejemplo n.º 2
0
        public IMDResponse <bool> CCreatePerfil([FromBody] EntPerfil entPerfil)
        {
            IMDResponse <bool> response = new IMDResponse <bool>();

            string metodo = nameof(this.CCreateModulo);

            logger.Info(IMDSerialize.Serialize(67823458338139, $"Inicia {metodo}([FromBody]EntPerfil entPerfil)", entPerfil));

            try
            {
                BusPerfil busPerfil = new BusPerfil();
                response = busPerfil.BSavePerfil(entPerfil);
            }
            catch (Exception ex)
            {
                response.Code    = 67823458122133;
                response.Message = "Ocurrió un error inesperado en el servicio al guardar el perfil.";

                logger.Error(IMDSerialize.Serialize(67823458338139, $"Error en {metodo}([FromBody]EntPerfil entPerfil): {ex.Message}", entPerfil, ex, response));
            }

            return(response);
        }
        //guarda y actualiza

        public void Guarda()
        {
            EntPerfil       enttrM = new EntPerfil();
            BrConfiguracion ped    = new BrConfiguracion();

            try
            {
                //totRequeridos = 1;
                //contabilizaYValidaRequerido(TxtPerfil);
                //if (totRequeridos > 0)
                //{
                //    messageBox = new avisosis(totRequeridos == 1 ? (string.Format("¡El campo {0} es obligatorio!", ControlInvalido)) : "Los campos son obligatorios", this.Title, MessageBoxButton.OK, MessageBoxImage.Warning);
                //    messageBox.ShowDialog();
                //    return;
                //}

                if (ActIns == Comunes.AGREGA)
                {
                    enttrM.IdUsuarioRegistro = App.IdUsuario;
                }
                else
                {
                    enttrM.IdPerfil          = Perfil.IdPerfil;
                    enttrM.IdUsuarioModifico = App.IdUsuario;
                }
                enttrM.IdSistema = App.IdSistema;
                //enttrM.Perfil = TxtPerfil.Text;
                enttrM.Perfil = NombrePerfil;
                Respuesta <int> res = ped.InsUpdPerfiles(enttrM, ActIns, "A");
                if (bandera == 1)
                {
                    if (res.EsExitoso)
                    {
                        if (Perfil.IdPerfil != 0)
                        {
                            //elimina registros
                            res = ped.InsUpdPerfiles(enttrM, Comunes.BORRAR, "");
                        }
                        else
                        {
                            //inserta nuevo registro
                            Perfil.IdPerfil = res.Resultado;
                        }

                        //registra perfil acceso, todas las pantallas
                        foreach (EntPerfil entPerAcceso in lstAccesosXPerfil)
                        {
                            entPerAcceso.IdSistema         = 2;
                            entPerAcceso.IdPerfil          = Perfil.IdPerfil;
                            entPerAcceso.IdUsuarioRegistro = 1;
                            bool SinSeleccion = false;
                            if (!SinSeleccion)
                            {
                                res = ped.InsUpdPerfiles(entPerAcceso, "A", "B");
                                if (!res.EsExitoso)
                                {
                                    //Sale del Foreach y del método GuardaRegistro
                                    messageBox = new avisosis(res.MensajeUsuario + ". Error al " + (ActIns == Comunes.AGREGA ? "Insertar" : "Actualizar"), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
                                    messageBox.ShowDialog();
                                    break;
                                }
                            }
                        }
                        if (res.EsExitoso)
                        {
                            Editando   = false;
                            messageBox = new avisosis("Se ha " + (ActIns == Comunes.AGREGA ? "agregado" : "actualizado") + " el perfil correctamente.", this.Title, MessageBoxButton.OK, MessageBoxImage.None);
                            messageBox.ShowDialog();
                            if (!cerrando)
                            {
                                this.Close();
                            }
                        }

                        //Actualizacion del Grid Generico
                        //frmCatologoGenerico.AcutualizaGrid<EntPerfil>(enttrM);

                        //asigna valor para que se puede guardar desde la pantalla de usuario
                        IdPerfil = Perfil.IdPerfil;
                    }
                    else
                    {
                        messageBox = new avisosis("Error al " + (ActIns == Comunes.AGREGA ? " agregar " : ActIns == Comunes.CAMBIA ? " actualizar " : " eliminar ") + res.Error, this.Title, MessageBoxButton.OK, MessageBoxImage.Error); messageBox.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                messageBox = new avisosis(ex, this.Title, MessageBoxButton.OK, MessageBoxImage.Error); messageBox.ShowDialog();
            }
        }