Пример #1
0
        public ActionResult Index()
        {
            try
            {
                BLL.UsuarioBLL usuarioBLL = null;

                RP.Sistema.Model.Entities.Usuario usuario = null;
                Model.Entities.Usuario.Preferencias preferencias = null;
                //}

                using (Context db = new Context())
                {
                    usuarioBLL = new BLL.UsuarioBLL(db, Helpers.Helper.UserId);
                    usuario = usuarioBLL.FindSingle(u => u.dsLogin.ToLower().Trim().Equals(Helpers.Helper.UserLogin));
                    if (usuario != null)
                    {
                        preferencias = usuarioBLL.GetPreferencias(usuario.idUsuario);
                    }
                }

                // seta dados para view
                return View(new SistemaVM
                {
                    Menu = LoadMenus(),
                    Painel = new PainelVM
                    {
                        Preferencias = preferencias
                    }
                });
            }
            catch(Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, Helpers.Helper.UserId);
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #2
0
        public ActionResult Details(int id)
        {
            try
            {
                LogBLL.Insert(new LogDado("Details", "Usuario", _idUsuario));
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                    if (usuario == null)
                    {
                        throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                    }

                    return View(Models.Usuario.UsuarioVM.E2VM(usuario));
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #3
0
        public JsonResult JsDetails(int idUsuario)
        {
            try
            {
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == idUsuario);

                    if (usuario == null)
                    {
                        return Json(string.Empty, JsonRequestBehavior.AllowGet);
                    }

                    var result = new
                    {
                        usuario.idUsuario,
                        usuario.nmUsuario,
                        usuario.dsLogin
                    };

                    return Json(result, JsonRequestBehavior.AllowGet);
                }
            }
            catch (Exception ex)
            {
                Response.StatusCode = 500;
                return Json(RP.Util.Exception.Message.Get(ex), JsonRequestBehavior.AllowGet);
            }
        }
Пример #4
0
        public ActionResult AddPerfil(int id)
        {
            try
            {
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id, i => i.Perfis.Select(s => s.Perfil));

                    if (usuario == null)
                    {
                        throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id.ToString()));
                    }

                    return View(Models.Usuario.UsuarioVM.E2VM(usuario));
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #5
0
        public ActionResult DesbloquearConfirmed(int id)
        {
            try
            {
                LogBLL.Insert(new LogDado("DesbloquearConfirmed", "Usuario", _idUsuario));
                using (Context db = new Context())
                {
                    using (var trans = new RP.DataAccess.RPTransactionScope(db))
                    {
                        BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                        Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                        if (usuario == null)
                        {
                            throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                        }
                        else
                        {
                            usuario.flAtivo = "Sim";
                            usuario.nrFalhalogin = 0;
                            //usuario.dtValidade = DateTime.Now.AddDays(5);

                            usuarioBLL.Update(usuario);

                            usuarioBLL.SaveChanges();
                            trans.Complete();
                        }

                        this.AddFlashMessage("Usuário desbloqueado", FlashMessage.SUCCESS);
                        return RedirectToAction("Index");
                    }
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario);
                this.AddFlashMessage(RP.Util.Exception.Message.Get(ex), FlashMessage.ERROR); RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario);
                return RedirectToAction("Desbloquear", new { id });
            }
        }
Пример #6
0
        public ActionResult Desbloquear(int id)
        {
            try
            {
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                    if (usuario == null)
                    {
                        throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                    }

                    if (usuario.flAtivo == "Sim")
                    {
                        this.AddFlashMessage("Usuário já esta desbloqueado", FlashMessage.ALERT);
                        return RedirectToAction("Index", "Usuario");
                    }

                    return View(UsuarioVM.E2VM(usuario));
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #7
0
        public ActionResult BloquearConfirmed(int id)
        {
            try
            {
                LogBLL.Insert(new LogDado("BloquearConfirmed", "Usuario", _idUsuario));
                if (id == _idUsuario)
                {
                    throw new Exception("Você não pode bloquear seu próprio usuário!");
                }

                using (Context db = new Context())
                {
                    using (var trans = new RP.DataAccess.RPTransactionScope(db))
                    {
                        BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                        Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                        if (usuario == null)
                        {
                            throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                        }
                        else
                        {
                            usuario.flAtivo = "Não";
                            Auth.Class.AuthModel.Remove(usuario.dsLogin);

                            usuarioBLL.Update(usuario);

                            usuarioBLL.SaveChanges();
                            trans.Complete();
                        }

                        this.AddFlashMessage("Usuário bloqueado", FlashMessage.SUCCESS);
                        return RedirectToAction("Index");
                    }
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario);
                this.AddFlashMessage(RP.Util.Exception.Message.Get(ex), FlashMessage.ERROR); RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario);
                return RedirectToAction("Bloquear", new { id });
            }
        }
Пример #8
0
        public ActionResult Bloquear(int id)
        {
            try
            {
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                    if (usuario == null)
                    {
                        throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                    }

                    if (id == _idUsuario)
                    {
                        ViewBag.ocultarComandos = true;

                        this.AddFlashMessage(new FlashMessage.Message
                        {
                            closeable = false,
                            textMessage = "Você não pode bloquear seu próprio usuário!",
                            type = FlashMessage.ERROR
                        });
                    }

                    return View(UsuarioVM.E2VM(usuario));
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #9
0
        public ActionResult AlterPasswordMaster(int id, UsuarioVM model)
        {
            try
            {
                LogBLL.Insert(new LogDado("AlterPasswordMaster", "Usuario", _idUsuario));
                if (ModelState.IsValid)
                {
                    using (Context db = new Context())
                    {
                        using (var trans = new RP.DataAccess.RPTransactionScope(db))
                        {
                            BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                            Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == id);

                            if (usuario == null)
                            {
                                throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, id));
                            }

                            usuarioBLL.ResetarSenha(usuario);
                            usuarioBLL.SaveChanges();
                            trans.Complete();

                            this.AddFlashMessage(RP.Util.Resource.Message.EDIT_SUCCESS, FlashMessage.SUCCESS);
                            return RedirectToAction("Index");
                        }
                    }
                }

                return RedirectToAction("Index");
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #10
0
        public ActionResult Perfil(AlterarPerfilVM model, HttpPostedFileBase fuFoto)
        {
            bool AlterarSenha = (!string.IsNullOrEmpty(model.SenhaAtual) && !string.IsNullOrEmpty(model.NovaSenha));

            try
            {
                LogBLL.Insert(new LogDado("Perfil", "Usuario", _idUsuario));
                using (Context db = new Context())
                {
                    Usuario usuarioLogado;

                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);

                    using (var trans = new RP.DataAccess.RPTransactionScope(db))
                    {
                        usuarioLogado = usuarioBLL.FindSingle(u => u.idUsuario == _idUsuario);

                        if (usuarioLogado == null)
                        {
                            throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, _idUsuario));
                        }

                        if (AlterarSenha && (usuarioLogado.dsSenha != RP.Util.Class.Util.getHash(model.SenhaAtual)))
                        {
                            ModelState.AddModelError("SenhaAtual", "A senha atual está incorreta.");
                        }

                        if (ModelState.IsValid)
                        {
                            if (AlterarSenha)
                            {
                                usuarioLogado.dsSenha = RP.Util.Class.Util.getHash(model.NovaSenha);
                                usuarioLogado.dtValidade = DateTime.Now.Date.AddDays(Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["UsuarioValidadeSenha"]));

                                usuarioBLL.Update(usuarioLogado);
                                usuarioBLL.SaveChanges();
                                trans.Complete();
                            }

                            string path = System.Configuration.ConfigurationManager.AppSettings["PathFile"] + @"Fotos\Usuarios\";
                            if (fuFoto != null)
                            {
                                usuarioBLL.SavePhoto(path, usuarioLogado.idUsuario, fuFoto);
                            }
                            else if (this.HttpContext.Request.Params.AllKeys.Contains("fuFoto"))
                            {
                                if (string.IsNullOrEmpty(this.HttpContext.Request.Params["fuFoto"]))
                                {
                                    usuarioBLL.RemovePhoto(path, usuarioLogado.idUsuario);
                                }
                            }

                            this.AddFlashMessage("Perfil atualizado com sucesso!", FlashMessage.SUCCESS);
                            return RedirectToAction("Perfil");
                        }

                        return View(model);
                    }
                }

            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #11
0
        public ActionResult Perfil()
        {
            try
            {
                using (Context db = new Context())
                {
                    BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                    Usuario usuario = usuarioBLL.FindSingle(u => u.idUsuario == _idUsuario);

                    if (usuario == null)
                    {
                        throw new Exception(string.Format(RP.Util.Resource.Message.RECORD_NOT_FOUND, _idUsuario));
                    }

                    string path = System.Configuration.ConfigurationManager.AppSettings["PathFile"] + @"Fotos\Usuarios\";

                    var model = new Models.Usuario.AlterarPerfilVM();
                    model.Usuario = Models.Usuario.UsuarioVM.E2VM(usuario);
                    model.Usuario.dsFoto = usuarioBLL.PathPhoto(path, model.Usuario.IdUsuario, false);

                    return View(model);
                }
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario);
                return RedirectToAction("Index", "Erro");
            }
        }
Пример #12
0
        public ActionResult Edit(UsuarioVM model, int id, HttpPostedFileBase fuFoto)
        {
            try
            {
                LogBLL.Insert(new LogDado("Edit", "Usuario", _idUsuario));
                if (ModelState.IsValid)
                {
                    var usuarioView = model.VM2E();
                    usuarioView.idUsuario = id;

                    using (Context db = new Context())
                    {
                        using (var trans = new RP.DataAccess.RPTransactionScope(db))
                        {
                            BLL.UsuarioBLL usuarioBLL = new BLL.UsuarioBLL(db, _idUsuario);
                            var _usuarioDB = usuarioBLL.FindSingle(u => u.idUsuario == id);

                            _usuarioDB.nmUsuario = usuarioView.nmUsuario;
                            _usuarioDB.dsEmail = usuarioView.dsEmail;

                            usuarioBLL.Update(_usuarioDB);
                            usuarioBLL.SaveChanges();
                            trans.Complete();

                            string path = System.Configuration.ConfigurationManager.AppSettings["PathFile"] + @"Fotos\Usuarios\";
                            if (fuFoto != null)
                            {
                                usuarioBLL.SavePhoto(path, usuarioView.idUsuario, fuFoto);
                            }
                            else if (this.HttpContext.Request.Params.AllKeys.Contains("fuFoto"))
                            {
                                if (string.IsNullOrEmpty(this.HttpContext.Request.Params["fuFoto"]))
                                {
                                    usuarioBLL.RemovePhoto(path, usuarioView.idUsuario);
                                }
                            }

                            this.AddFlashMessage(RP.Util.Resource.Message.EDIT_SUCCESS, FlashMessage.SUCCESS);
                            return RedirectToAction("Index");
                        }
                    }
                }
                return View(model);
            }
            catch (Exception ex)
            {
                RP.Util.Entity.ErroLog.Add(ex, Session.SessionID, _idUsuario, Url.Action("Index", "Usuario"));
                return RedirectToAction("Index", "Erro");
            }
        }