public UsuarioPerfilViewModel GetPerfilById(string usuarioId)
        {
            var perfil  = new UsuarioPerfilViewModel();
            var usuario = _usuarioService.GetById(usuarioId);

            perfil.UsuarioViewModel           = Mapper.Map <Usuario, UsuarioViewModel>(usuario);
            perfil.UsuarioInformacaoViewModel = Mapper.Map <Usuario, UsuarioInformacaoViewModel>(usuario);
            return(perfil);
        }
Exemple #2
0
        public ActionResult BuscarUsuariosPorDepartamento(string id)
        {
            try
            {
                ViewBag.Perfis = PerfilBusiness.Consulta.Where(p => string.IsNullOrEmpty(p.UsuarioExclusao)).ToList();

                Guid UKDepartamento = Guid.Parse(id);

                List <Usuario> lUsuarios = UsuarioBusiness.Consulta.Where(p => string.IsNullOrEmpty(p.UsuarioExclusao) && p.UKDepartamento.Equals(UKDepartamento)).ToList();

                List <UsuarioPerfilViewModel> lUsuariosPerfis = new List <UsuarioPerfilViewModel>();
                foreach (Usuario iUsr in lUsuarios)
                {
                    UsuarioPerfilViewModel oUsrPerfViewModel = new UsuarioPerfilViewModel()
                    {
                        IDUsuario = iUsr.UniqueKey,
                        Login     = iUsr.Login,
                        Nome      = iUsr.Nome
                    };

                    var lPerfis = from usuarioperfil in UsuarioPerfilBusiness.Consulta.Where(p => string.IsNullOrEmpty(p.UsuarioExclusao)).ToList()
                                  join dep in DepartamentoBusiness.Consulta.Where(p => string.IsNullOrEmpty(p.UsuarioExclusao)).ToList() on usuarioperfil.UKConfig equals dep.UniqueKey
                                  join perfil in PerfilBusiness.Consulta.Where(p => string.IsNullOrEmpty(p.UsuarioExclusao)).ToList() on usuarioperfil.UKPerfil equals perfil.UniqueKey
                                  where usuarioperfil.UKUsuario.Equals(iUsr.UniqueKey)
                                  select new Perfil {
                        Nome = perfil.Nome, UniqueKey = perfil.UniqueKey
                    };

                    oUsrPerfViewModel.Perfis = lPerfis.ToList();

                    lUsuariosPerfis.Add(oUsrPerfViewModel);
                }

                return(Json(new { data = RenderRazorViewToString("_UsuariosPerfis", lUsuariosPerfis), usuarios = lUsuariosPerfis.Count, colunas = ViewBag.Perfis.Count + 2 }));
            }
            catch (Exception ex)
            {
                if (ex.GetBaseException() == null)
                {
                    return(Json(new { resultado = new RetornoJSON()
                                      {
                                          Erro = ex.Message
                                      } }));
                }
                else
                {
                    return(Json(new { resultado = new RetornoJSON()
                                      {
                                          Erro = ex.GetBaseException().Message
                                      } }));
                }
            }
        }
Exemple #3
0
        public override ActionResult CreateOrEdit(UsuarioViewModel obj)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    throw new Exception("Ocorreu um erro !...");
                }

                List <int> perfisAdicionados = Request.Form.Get("perfisAdicionados")?.Split(',').Select(s => int.Parse(s)).ToList();

                obj.Perfis = new List <UsuarioPerfilViewModel>();

                if (perfisAdicionados != null && perfisAdicionados.Count > 0)
                {
                    perfisAdicionados.ForEach(pa =>
                    {
                        var up       = new UsuarioPerfilViewModel();
                        up.PerfilId  = pa;
                        up.UsuarioId = obj.Id;
                        up.Ativo     = true;
                        obj.Perfis.Add(up);
                    });
                }

                if (obj.Id > 0)
                {
                    consumer.Update(obj);
                }
                else
                {
                    consumer.Add(obj);
                }

                AddAlert("Sucesso !", "success");
                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                AddAlert("Ocorreu um erro: " + e.Message, "danger");
                return(RedirectToAction("CreateOrEdit", new { obj.Id }));
            }
        }