public ActionResult ExibirPedido(int?id) { if (GestaoUsuarios.VerificarStatusCliente() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Pedido pedido = db.Pedido.Find(id); if (pedido == null) { return(HttpNotFound()); } if (pedido.UsuarioID == Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString())) { pedido.Cliente = db.Cliente.Find(pedido.UsuarioID); foreach (var item in pedido.Itens) { item.Produto = db.Produto.Find(item.ProdutoID); } return(View(pedido)); } else { return(RedirectToAction("MeusPedidos", "Pedidos")); } } return(null); }
public ActionResult Create([Bind(Include = "UsuarioID, Nome, Email, Login, Senha, ConfirmacaoSenha, Ativo")] Cliente cliente) { if (!GestaoUsuarios.VerificarDisponibilidadeEmail(cliente.Email)) { ModelState.AddModelError("Email", "Este e-mail já está cadastrado no sistema."); } if (!GestaoUsuarios.VerificarDisponibilidadeLogin(cliente.Login)) { ModelState.AddModelError("Login", "Este login já está sendo utilizado."); } if (ModelState.IsValid) { cliente.Senha = CalculateMD5String(cliente.Senha); cliente.ConfirmacaoSenha = CalculateMD5String(cliente.ConfirmacaoSenha); cliente.CriadoEm = DateTime.Now; cliente.ModificadoEm = DateTime.Now; db.Cliente.Add(cliente); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(cliente)); }
public ActionResult ManageAccount([Bind(Include = "UsuarioID, Nome, Email, Login")] Cliente cliente) { string emailAtual = db.Cliente.Find(cliente.UsuarioID).Email; string loginAtual = db.Cliente.Find(cliente.UsuarioID).Login; if (!GestaoUsuarios.VerificarDisponibilidadeEmail(cliente.Email) && !emailAtual.Equals(cliente.Email)) { ModelState.AddModelError("Email", "Este e-mail já está cadastrado no sistema."); } if (!GestaoUsuarios.VerificarDisponibilidadeLogin(cliente.Login) && !loginAtual.Equals(cliente.Login)) { ModelState.AddModelError("Login", "Este login já está sendo utilizado."); } if (ModelState.IsValid) { string novoNome = cliente.Nome; string novoEmail = cliente.Email; string novoLogin = cliente.Login; cliente = db.Cliente.Find(cliente.UsuarioID); cliente.Nome = novoNome; cliente.Email = novoEmail; cliente.Login = novoLogin; cliente.ModificadoEm = DateTime.Now; db.Entry(cliente).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "Home")); } return(View(cliente)); }
public ActionResult Register([Bind(Include = "UsuarioID, Nome, Email, Login, Senha, ConfirmacaoSenha")] Administrador administrador) { if (!GestaoUsuarios.VerificarDisponibilidadeEmail(administrador.Email)) { ModelState.AddModelError("Email", "Este e-mail já está cadastrado no sistema."); } if (!GestaoUsuarios.VerificarDisponibilidadeLogin(administrador.Login)) { ModelState.AddModelError("Login", "Este login já está sendo utilizado."); } if (ModelState.IsValid) { administrador.Senha = CalculateMD5String(administrador.Senha); administrador.ConfirmacaoSenha = CalculateMD5String(administrador.ConfirmacaoSenha); administrador.Ativo = true; administrador.CriadoEm = DateTime.Now; administrador.ModificadoEm = DateTime.Now; db.Administrador.Add(administrador); db.SaveChanges(); return(RedirectToAction("Login", "Home")); } return(View(administrador)); }
public ActionResult Edit([Bind(Include = "UsuarioID, Nome, Email, Login, Senha, ConfirmacaoSenha, Ativo")] Administrador administrador) { string emailAtual = db.Administrador.Find(administrador.UsuarioID).Email; string loginAtual = db.Administrador.Find(administrador.UsuarioID).Login; if (!GestaoUsuarios.VerificarDisponibilidadeEmail(administrador.Email) && !emailAtual.Equals(administrador.Email)) { ModelState.AddModelError("Email", "Este e-mail já está cadastrado no sistema."); } if (!GestaoUsuarios.VerificarDisponibilidadeLogin(administrador.Login) && !loginAtual.Equals(administrador.Login)) { ModelState.AddModelError("Login", "Este login já está sendo utilizado."); } if (ModelState.IsValid) { administrador.Senha = CalculateMD5String(administrador.Senha); administrador.ConfirmacaoSenha = CalculateMD5String(administrador.ConfirmacaoSenha); administrador.CriadoEm = DateTime.Now; // Não conseguimos ajustar isto. administrador.ModificadoEm = DateTime.Now; db.Entry(administrador).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(administrador)); }
public JsonResult CancelarPedido(int id) { if (GestaoUsuarios.VerificarStatusCliente() != null) { var idUsuario = Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString()); Pedido pedido = db.Pedido.Find(id); if (pedido.UsuarioID == idUsuario) { DateTime dataAtual = DateTime.Now; DateTime dataPedido = Convert.ToDateTime(pedido.DataPedido); double horas = (dataAtual - dataPedido).TotalHours; if (horas <= 6) { if (pedido.Ativo) { // Desativar o Pedido pedido.Ativo = false; db.Pedido.AddOrUpdate(pedido); int resultado = db.SaveChanges(); if (resultado > 0) { foreach (var item in pedido.Itens) { Produto produto = db.Produto.Find(item.ProdutoID); produto.Quantidade += item.Quantidade; db.Produto.AddOrUpdate(produto); db.SaveChanges(); } return(Json(new { OK = true, Mensagem = "Pedido cancelado com sucesso." }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { OK = false, Mensagem = "Erro ao cancelar o pedido." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { OK = false, Mensagem = "Este pedido já foi cancelado anteriormente." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { OK = false, Mensagem = "Após seis horas o pedido não pode ser mais cancelado." }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new { OK = false, Mensagem = "Não é possível cancelar um pedido de outro usuário." }, JsonRequestBehavior.AllowGet)); } } return(null); }
// GET: Administradores/Create public ActionResult Create() { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { return(View()); } return(null); }
// GET: Produtos/Create public ActionResult Create() { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { ViewBag.CategoriaID = new SelectList(db.Categoria, "CategoriaID", "Nome"); ViewBag.FornecedorID = new SelectList(db.Fornecedor, "FornecedorID", "Nome"); return(View()); } return(null); }
public ActionResult MeusPedidos() { if (GestaoUsuarios.VerificarStatusCliente() != null) { var id = Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString()); var pedidos = db.Pedido.Where(p => p.UsuarioID == id).Include(p => p.Cliente); return(View(pedidos.ToList())); } return(null); }
public JsonResult AutenticarUsuario(string login, string senha) { if (GestaoUsuarios.Autenticar(login, senha)) { var corpoResposta = new { OK = true, Mensagem = "Usuario encontrado, Redirecionando..." }; return(Json(corpoResposta, JsonRequestBehavior.AllowGet)); } else { var corpoResposta = new { OK = false, Mensagem = "Usuario não encontrado" }; return(Json(corpoResposta, JsonRequestBehavior.AllowGet)); } }
public ActionResult EmitirPedido() { if (GestaoUsuarios.VerificarStatusCliente() != null) { Pedido novoPedido = new Pedido(); List <ItemPedido> listaItens = new List <ItemPedido>(); var carrinho = GestaoCarrinho.RetornarCarrinho(); if (carrinho.Count > 0) { // Cria novo pedido novoPedido.DataPedido = DateTime.Now; novoPedido.UsuarioID = Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString()); novoPedido.Cliente = db.Cliente.Find(novoPedido.UsuarioID); novoPedido.Ativo = true; novoPedido.ModificadoEm = null; novoPedido.ModificadoPor = null; db.Pedido.Add(novoPedido); db.SaveChanges(); // Adiciona os itens do pedido foreach (var item in carrinho) { ItemPedido itemPedido = new ItemPedido { ProdutoID = item.Key.ProdutoID, PedidoID = novoPedido.PedidoID, Quantidade = item.Value }; db.ItemPedido.Add(itemPedido); db.SaveChanges(); // Remove produtos do estoque Produto produto = db.Produto.Find(itemPedido.ProdutoID); produto.Quantidade -= itemPedido.Quantidade; db.Produto.AddOrUpdate(produto); db.SaveChanges(); } } // Limpa o carrinho GestaoCarrinho.LimparCarrinho(); return(RedirectToAction("ExibirPedido", new { id = novoPedido.PedidoID })); } return(null); }
public override void OnActionExecuting(ActionExecutingContext filterContext) { var controller = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName; var action = filterContext.ActionDescriptor.ActionName; if (controller != "Home" && controller != "Autenticacao" && action != "ConsultaUnica") { if (GestaoUsuarios.RecuperarUsuarioLogado() == null) { filterContext.RequestContext.HttpContext.Response.Redirect("Home/Login"); } } base.OnActionExecuting(filterContext); }
public JsonResult VerificarAutenticacao() { if (GestaoUsuarios.VerificarStatusCliente() != null) { return(Json(new { OK = true, Nivel = "Cliente" }, JsonRequestBehavior.AllowGet)); } else if (GestaoUsuarios.VerificarStatusAdministrador() != null) { return(Json(new { OK = true, Nivel = "Administrador" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { OK = false, Nivel = "Visitante" }, JsonRequestBehavior.AllowGet)); } }
// GET: Clientes/ManageAccount public ActionResult ManageAccount() { if (GestaoUsuarios.VerificarStatusCliente() != null) { int id = Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString()); Cliente cliente = db.Cliente.Find(id); if (cliente == null) { return(HttpNotFound()); } return(View(cliente)); } return(null); }
// GET: Categorias/Edit/5 public ActionResult Edit(int?id) { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Categoria categoria = db.Categoria.Find(id); if (categoria == null) { return(HttpNotFound()); } return(View(categoria)); } return(null); }
// GET: Fornecedores/Edit/5 public ActionResult Edit(int?id) { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Fornecedor fornecedor = db.Fornecedor.Find(id); if (fornecedor == null) { return(HttpNotFound()); } return(View(fornecedor)); } return(null); }
public JsonResult AutenticarUsuario(string login, string senha) { if (GestaoUsuarios.VerificarClienteBD(login, senha)) { return(Json(new { OK = true, Nivel = "Cliente", Mensagem = "Redirecionando..." }, JsonRequestBehavior.AllowGet)); } else if (GestaoUsuarios.VerificarAdministradorBD(login, senha)) { return(Json(new { OK = true, Nivel = "Administrador", Mensagem = "Redirecionando..." }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { OK = false, Mensagem = "Dados incorretos." }, JsonRequestBehavior.AllowGet)); } }
// GET: Produtos/Edit/5 public ActionResult Edit(int?id) { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Produto produto = db.Produto.Find(id); if (produto == null) { return(HttpNotFound()); } ViewBag.CategoriaID = new SelectList(db.Categoria, "CategoriaID", "Nome", produto.CategoriaID); ViewBag.FornecedorID = new SelectList(db.Fornecedor, "FornecedorID", "Nome", produto.FornecedorID); return(View(produto)); } return(null); }
public override void OnActionExecuting(ActionExecutingContext filtroContexto) { var controller = filtroContexto.ActionDescriptor.ControllerDescriptor.ControllerName; var action = filtroContexto.ActionDescriptor.ActionName; if ((controller != "Home") && (controller != "Clientes" || action != "Register") && (controller != "Administradores" || action != "Register") && (controller != "Produtos" || action != "Search")) { if ((controller == "Clientes" && action == "ManageAccount") || (controller == "Clientes" && action == "ChangePassword") || (controller == "Pedidos" && action == "EmitirPedido") || (controller == "Pedidos" && action == "ExibirPedido") || (controller == "Pedidos" && action == "MeusPedidos") || (controller == "Pedidos" && action == "CancelarPedido")) { if (GestaoUsuarios.VerificarStatusCliente() == null) { if (controller == "Pedidos" && action == "EmitirPedido") { HttpContext.Current.Response.Redirect("/Home/Login?redir=/Carrinho"); } else if ((controller == "Pedidos" && action == "ExibirPedido") || (controller == "Pedidos" && action == "CancelarPedido")) { HttpContext.Current.Response.Redirect("/Home/Login?redir=/Pedidos/MeusPedidos"); } else { HttpContext.Current.Response.Redirect("/Home/Login?redir=/" + controller + "/" + action); } } } else { if (GestaoUsuarios.VerificarStatusAdministrador() == null) { HttpContext.Current.Response.Redirect("/Home/Login?redir=/" + controller + "/" + action); } } } }
// GET: Clientes/ChangePassword public ActionResult ChangePassword() { if (GestaoUsuarios.VerificarStatusCliente() != null) { int id = Convert.ToInt32(System.Web.HttpContext.Current.Session["ID"].ToString()); Cliente cliente = db.Cliente.Find(id); cliente.Senha = null; cliente.ConfirmacaoSenha = null; if (cliente == null) { return(HttpNotFound()); } return(View(cliente)); } return(null); }
// GET: Administradores/Edit/5 public ActionResult Edit(int?id) { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Administrador administrador = db.Administrador.Find(id); administrador.Senha = null; administrador.ConfirmacaoSenha = null; if (administrador == null) { return(HttpNotFound()); } return(View(administrador)); } return(null); }
// GET: Clientes/Edit/5 public ActionResult Edit(int?id) { if (GestaoUsuarios.VerificarStatusAdministrador() != null) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Cliente cliente = db.Cliente.Find(id); cliente.Senha = null; cliente.ConfirmacaoSenha = null; if (cliente == null) { return(HttpNotFound()); } return(View(cliente)); } return(null); }