public void TestRecuperarUsuario() { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Usuario> service = new Ioc.Service.Service <Ioc.Core.Data.Usuario>(); var usuario = service.Buscar(1); Assert.IsNotNull(usuario); }
public ActionResult EditarVenda(int id) { this.FormaPagamento(); Veiculos.Ioc.Service.Service<Ioc.Core.Data.Venda> servico = new Ioc.Service.Service<Ioc.Core.Data.Venda>(); Ioc.Core.Data.Venda venda = servico.Buscar(id); Models.VendaModel model = new Models.VendaModel() { Id = venda.Id, Comissao = venda.Comissao, Data = venda.Data, Desconto = venda.Desconto, Obs = venda.Obs, Veiculo = new Models.VeiculoModel() { Id = venda.Veiculo.Id, Ano = venda.Veiculo.AnoFabricacao, Chassi = venda.Veiculo.Chassi, Cilindradas = venda.Veiculo.Cilindradas, DescricaoFabricante = venda.Veiculo.Modelo.Fabricante.Descricao, DescricaoModelo = venda.Veiculo.Modelo.Descricao, IdFabricante = venda.Veiculo.Modelo.IdFabricante, IdModelo = venda.Veiculo.Modelo.Id, Placa = venda.Veiculo.Placa, } }; model.Pagamentos = new List<Models.PagamentoModel>(); int index = 1; foreach (var pp in new Ioc.Service.Service<Ioc.Core.Data.PartePagamento>().BuscarTodos(f => f.IdVenda == id)) { if(pp.IdCompra != null) { pp.Compra = new Ioc.Service.Service<Ioc.Core.Data.Compra>().Buscar(pp.IdCompra.Value); } pp.FormaPagamento = new Ioc.Service.Service<Ioc.Core.Data.FormaPagamento>().Buscar(pp.IdFormaPagamento); model.Pagamentos.Add( new Models.PagamentoModel() { Id = pp.Id, IdCompra = pp.IdCompra != null? pp.IdCompra.Value : 0, IdFormaPagamento = pp.IdFormaPagamento, Quantia = pp.Quantia, Index = index, DescricaoFormaPagamento = pp.IdCompra == null ? pp.FormaPagamento.Descricao : pp.Compra.Veiculo.Placa + "/" + pp.Compra.Veiculo.Modelo.Descricao + "/" + pp.Compra.Veiculo.Modelo.Fabricante.Descricao + "/" + pp.Compra.Veiculo.AnoFabricacao.ToString(), } ); } return View("Index", model); }
public ActionResult RegistrarCompra(int idVeiculo, string placaVeiculo, Models.CompraModel model) { var Veiculo = Session["Veiculo"] as Models.VeiculoModel; if (!ModelState.IsValid || model.Id == -1) { if (model.Id == -1) { ModelState.AddModelError("", "Erro ao salvar!"); } if (model.Preco <= 0) { ModelState.AddModelError("", "Informe um preço!"); } this.FormaPagamento(); return(View(model)); } Ioc.Core.Data.Compra compra = new Ioc.Core.Data.Compra() { Data = model.Data, Preco = model.Preco, IdVeiculo = idVeiculo, Obs = model.Obs, }; Veiculos.Ioc.Service.Service <Ioc.Core.Data.Compra> servicoCompra = new Ioc.Service.Service <Ioc.Core.Data.Compra>(); compra = servicoCompra.Inserir(compra); if (compra.Id > 0) { Ioc.Core.Data.PartePagamento pp = new Ioc.Core.Data.PartePagamento() { Quantia = model.Preco, IdFormaPagamento = model.IdFormaPagamento, IdCompra = compra.Id }; Veiculos.Ioc.Service.Service <Ioc.Core.Data.PartePagamento> servicoPP = new Ioc.Service.Service <Ioc.Core.Data.PartePagamento>(); servicoPP.Inserir(pp); StatusAtualizacao.VeiculoAtualizar(new Ioc.Core.Data.Veiculo() { Id = compra.IdVeiculo }, StatusAtualizacao.StatusVeiculo.DisponivelParaVenda); return(RedirectToAction("Home").WithSuccess("Compra salva com sucesso!")); } else { model.Id = -1; return(this.RegistrarCompra(idVeiculo, placaVeiculo, model)); } }
private void CarregaComboModelo() { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Modelo> service = new Ioc.Service.Service <Ioc.Core.Data.Modelo>(); ViewBag.IdModelo = new SelectList ( service.BuscarTodos(), "Id", "Descricao" ); }
private void CarregaComboFabricante() { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Fabricante> service = new Ioc.Service.Service <Ioc.Core.Data.Fabricante>(); ViewBag.IdFabricante = new SelectList ( service.BuscarTodos(), "Id", "Descricao" ); }
public void TestDeleteUsuario() { Ioc.Core.Data.Usuario usuario = new Ioc.Core.Data.Usuario() { Id = 2 }; Veiculos.Ioc.Service.Service <Ioc.Core.Data.Usuario> Service = new Ioc.Service.Service <Ioc.Core.Data.Usuario>(); bool compare = (Service.Apagar(usuario) > 0); // assert Assert.IsTrue(compare); }
private void FormaPagamento() { Veiculos.Ioc.Service.Service <Ioc.Core.Data.FormaPagamento> service = new Ioc.Service.Service <Ioc.Core.Data.FormaPagamento>(); ViewBag.IdFormaPagamento = new SelectList ( service.BuscarTodos(), "Id", "Descricao", 1 ); }
public static int VendaAtualizar(Ioc.Core.Data.Venda venda, StatusVenda status) { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Venda> service = new Ioc.Service.Service <Ioc.Core.Data.Venda>(); if (venda.Id > 0) { venda = service.Buscar(f => f.Id == venda.Id); } venda.IdStatusVenda = (int)status; return(service.Atualizar(venda)); }
public ActionResult PesquisarVeiculo(string placa, string controlador = null) { if (string.IsNullOrWhiteSpace(placa)) { ModelState.AddModelError(string.Empty, "Informe a placa do veículo!"); return(controlador == null?View("Index") : View($"{controlador}/Index")); } else if (!Veiculos.Util.Validacao.EPlacaValidar(placa)) { ModelState.AddModelError(string.Empty, "Placa do veículo informada está em formato incorreto!"); return(controlador == null?View("Index") : View($"{controlador}/Index")); } Veiculos.Ioc.Service.Service <Ioc.Core.Data.Veiculo> serviceVeiculo = new Ioc.Service.Service <Ioc.Core.Data.Veiculo>(); Ioc.Core.Data.Veiculo veiculo = serviceVeiculo.Buscar(m => m.Placa == placa); if (veiculo == null || veiculo.Id == 0) { var cadastrarController = DependencyResolver.Current.GetService <CadastrarController>(); cadastrarController.ControllerContext = new ControllerContext(this.Request.RequestContext, cadastrarController); var result = cadastrarController.BuscarVeiculoPorPlaca(placa, "Comprar"); return(result); } var v = new Models.VeiculoModel() { Id = veiculo.Id, Ano = veiculo.AnoFabricacao, Chassi = veiculo.Chassi, Cilindradas = veiculo.Cilindradas, Placa = veiculo.Placa, IdModelo = veiculo.Modelo.Id, DescricaoModelo = veiculo.Modelo.Descricao, IdFabricante = veiculo.Modelo.Fabricante.Id, DescricaoFabricante = veiculo.Modelo.Fabricante.Descricao }; Models.CompraModel compra = new Models.CompraModel(); compra.Veiculo = v; this.FormaPagamento(); Session.Remove("Veiculo"); Session["Veiculo"] = v; return(controlador == null?View() : View($"{controlador}/Index", compra)); }
public void TestUpdateUsuario() { Ioc.Core.Data.Usuario usuario = new Ioc.Core.Data.Usuario() { Id = 3, Ativo = false, Cpf = "010.536.094-50", Gerente = false, Login = "******", Nome = "Peixoto", Senha = "987654321", Telefone = null }; Veiculos.Ioc.Service.Service <Ioc.Core.Data.Usuario> service = new Ioc.Service.Service <Ioc.Core.Data.Usuario>(); bool compare = (service.Atualizar(usuario) > 0); // assert Assert.IsTrue(compare); }
public JsonResult Placa(string placa, string veiculo) { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Compra> service = new Ioc.Service.Service <Ioc.Core.Data.Compra>(); var result = (from c in service.BuscarTodos(g => g.Veiculo.IdStatusVeiculo == 3 && (g.Veiculo.Placa.StartsWith(placa) && !g.Veiculo.Placa.Equals(veiculo))) select new { Id = c.Veiculo.Id, Veiculo = c.Veiculo.Placa + "/" + c.Veiculo.Modelo.Descricao + "/" + c.Veiculo.Modelo.Fabricante.Descricao + "/" + c.Veiculo.AnoFabricacao.ToString(), c.Preco, IdCompra = c.Id } ); return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult AutorizarVenda(int id) { Veiculos.Ioc.Service.Service<Ioc.Core.Data.Venda> servico = new Ioc.Service.Service<Ioc.Core.Data.Venda>(); Ioc.Core.Data.Venda venda = servico.Buscar(id); if (venda != null && venda.Id > 0) { StatusAtualizacao.VendaAtualizar(venda, StatusAtualizacao.StatusVenda.Autorizada); StatusAtualizacao.VeiculoAtualizar(venda.Veiculo, StatusAtualizacao.StatusVeiculo.NaoPertenceLoja); return RedirectToAction("Autorizar").WithSuccess("Venda autorizada com sucesso!"); } else { return RedirectToAction("Autorizar").WithInfo("Venda não encontrada!"); } }
public static int VeiculoAtualizar(Ioc.Core.Data.Veiculo veiculo, StatusVeiculo status) { Veiculos.Ioc.Service.Service <Ioc.Core.Data.Veiculo> service = new Ioc.Service.Service <Ioc.Core.Data.Veiculo>(); if (veiculo.Id > 0) { veiculo = service.Buscar(f => f.Id == veiculo.Id); } else if (!string.IsNullOrEmpty(veiculo.Placa)) { veiculo = service.Buscar(f => f.Placa == veiculo.Placa); } veiculo.IdStatusVeiculo = (int)status; return(service.Atualizar(veiculo)); }
public ActionResult Veiculo(Veiculos.Web.Models.VeiculoModel veiculo, string origemFormulario) { if (!ModelState.IsValid) { this.CarregaComboModelo(); this.CarregaComboFabricante(); return(View("Veiculo", veiculo)); } var serviceVeiculo = new Ioc.Service.Service <Ioc.Core.Data.Veiculo>(); var v = serviceVeiculo.Buscar(f => f.Placa == veiculo.Placa); if (v != null) { this.CarregaComboModelo(); this.CarregaComboFabricante(); return(View("Veiculo", veiculo).WithInfo("O veículo está cadastrado no sistema!")); } serviceVeiculo.Inserir(new Ioc.Core.Data.Veiculo() { AnoFabricacao = veiculo.Ano, Chassi = veiculo.Chassi, Cilindradas = veiculo.Cilindradas, IdModelo = veiculo.IdModelo, IdStatusVeiculo = 3, Placa = veiculo.Placa, Foto = ImagemParaByte(veiculo.Imagem) }); if (!string.IsNullOrEmpty(origemFormulario)) { var comprarController = DependencyResolver.Current.GetService <ComprarController>(); comprarController.ControllerContext = new ControllerContext(this.Request.RequestContext, comprarController); var result = comprarController.PesquisarVeiculo(veiculo.Placa, "../Comprar"); return(result); } else { return(RedirectToAction("Veiculo").WithSuccess("Compra salva com sucesso!")); } }
public ActionResult ExcluirVenda(int id) { Veiculos.Ioc.Service.Service<Ioc.Core.Data.Venda> servico = new Ioc.Service.Service<Ioc.Core.Data.Venda>(); Ioc.Core.Data.Venda venda = servico.Buscar(id); if (venda != null && venda.Id > 0) { StatusAtualizacao.VeiculoAtualizar(venda.Veiculo, StatusAtualizacao.StatusVeiculo.DisponivelParaVenda); servico.Apagar(venda); return RedirectToAction("Autorizar").WithInfo("Venda excluída com sucesso!"); } else { return RedirectToAction("Autorizar").WithInfo("Venda não encontrada!"); } }
public ActionResult Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // Isso não conta falhas de login em relação ao bloqueio de conta // Para permitir que falhas de senha acionem o bloqueio da conta, altere para shouldLockout: true //var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false); Veiculos.Ioc.Service.Service <Ioc.Core.Data.Usuario> service = new Ioc.Service.Service <Ioc.Core.Data.Usuario>(); Ioc.Core.Data.Usuario usuario = service.Buscar(f => f.Ativo == true && f.Login == model.Email && f.Senha == model.Password); if (usuario != null && usuario.Id > 0) { //var identity = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, model.Email), }, DefaultAuthenticationTypes.ApplicationCookie); IdentitySignIn(usuario.Id, usuario.Login, usuario.Gerente); return(RedirectToLocal(returnUrl)); } else { ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } /* * switch (result) * { * case SignInStatus.Success: * return RedirectToLocal(returnUrl); * case SignInStatus.LockedOut: * return View("Lockout"); * case SignInStatus.RequiresVerification: * return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }); * case SignInStatus.Failure: * default: * ModelState.AddModelError("", "Tentativa de login inválida."); * return View(model); * } */ }
public ActionResult RegistrarVenda(Models.VendaModel model) { foreach (var erro in ModelState.Where(e => e.Key.StartsWith("Veiculo"))) { erro.Value.Errors.Clear(); } if (!ModelState.IsValid) { this.FormaPagamento(); Models.VeiculoModel veiculo = (Models.VeiculoModel)Session["Veiculo"]; model.Veiculo = veiculo; return View("Index", model); } Ioc.Core.Data.Venda venda = new Ioc.Core.Data.Venda() { Data = model.Data, Comissao = model.Comissao, Desconto = model.Desconto, IdStatusVenda = 3, IdUsuario = int.Parse(User.Identity.GetUserId().ToString()), ValorTotal = model.Pagamentos.Sum(f => f.Quantia), IdVeiculo = model.Veiculo.Id, Obs = model.Obs, }; Veiculos.Ioc.Service.Service<Ioc.Core.Data.Venda> servicoVenda = new Ioc.Service.Service<Ioc.Core.Data.Venda>(); venda = servicoVenda.Inserir(venda); if (venda.Id > 0) { Veiculos.Ioc.Service.Service<Ioc.Core.Data.PartePagamento> servicoPP = new Ioc.Service.Service<Ioc.Core.Data.PartePagamento>(); foreach (var pag in model.Pagamentos) { Ioc.Core.Data.PartePagamento pp = new Ioc.Core.Data.PartePagamento() { Quantia = pag.Quantia, IdFormaPagamento = pag.IdFormaPagamento, IdVenda = venda.Id }; if (pag.IdCompra > 0) pp.IdCompra = pag.IdCompra; servicoPP.Inserir(pp); } if (User.IsInRole("Gerente")) { StatusAtualizacao.VeiculoAtualizar(new Ioc.Core.Data.Veiculo() { Id = model.Veiculo.Id }, StatusAtualizacao.StatusVeiculo.NaoPertenceLoja); foreach (var pag in model.Pagamentos.Where(f => f.IdCompra > 0)) { Veiculos.Ioc.Service.Service<Ioc.Core.Data.Compra> servicoCompra = new Ioc.Service.Service<Ioc.Core.Data.Compra>(); var compra = servicoCompra.Buscar(pag.IdCompra); StatusAtualizacao.VeiculoAtualizar(new Ioc.Core.Data.Veiculo() { Id = compra.IdVeiculo }, StatusAtualizacao.StatusVeiculo.NaoPertenceLoja); } StatusAtualizacao.VendaAtualizar(venda, StatusAtualizacao.StatusVenda.Autorizada); return RedirectToAction("Home").WithSuccess("Venda salva com sucesso!"); } else { StatusAtualizacao.VeiculoAtualizar(new Ioc.Core.Data.Veiculo() { Id = model.Veiculo.Id }, StatusAtualizacao.StatusVeiculo.EmProcessoVenda); foreach (var pag in model.Pagamentos.Where(f => f.IdCompra > 0)) { Veiculos.Ioc.Service.Service<Ioc.Core.Data.Compra> servicoCompra = new Ioc.Service.Service<Ioc.Core.Data.Compra>(); var compra = servicoCompra.Buscar(pag.IdCompra); StatusAtualizacao.VeiculoAtualizar(new Ioc.Core.Data.Veiculo() { Id = compra.IdVeiculo }, StatusAtualizacao.StatusVeiculo.EmProcessoVenda); } StatusAtualizacao.VendaAtualizar(venda, StatusAtualizacao.StatusVenda.AguardandoAutorizacao); return RedirectToAction("Home").WithInfo("Aguardando autorização do gerente."); } } return View("Index", model); }
public JsonResult CarregarVendas(int? IdStatusVenda) { var draw = Request.Form.GetValues("draw").FirstOrDefault(); var start = Request.Form.GetValues("start").FirstOrDefault(); var length = Request.Form.GetValues("length").FirstOrDefault(); var sortColumn = Request.Form.GetValues("columns[" + Request.Form.GetValues("order[0][column]").FirstOrDefault() + "][name]").FirstOrDefault(); var sortColumnDir = Request.Form.GetValues("order[0][dir]").FirstOrDefault(); var searchValue = Request.Form.GetValues("search[value]").FirstOrDefault(); int pageSize = length != null ? Convert.ToInt32(length) : 0; int skip = start != null ? Convert.ToInt32(start) : 0; Veiculos.Ioc.Service.Service<Ioc.Core.Data.Venda> servico = new Ioc.Service.Service<Ioc.Core.Data.Venda>(); Expression<Func<Ioc.Core.Data.Venda, bool>> _where = null; if(IdStatusVenda != null) _where= a => a.IdStatusVenda == IdStatusVenda; if (!string.IsNullOrEmpty(searchValue)) { _where = a => a.IdStatusVenda == IdStatusVenda && (a.Veiculo.Placa.StartsWith(searchValue) || a.Veiculo.Modelo.Descricao.StartsWith(searchValue) || a.Veiculo.Modelo.Fabricante.Descricao.StartsWith(searchValue)); } var result = from v in servico.BuscarTodos(_where).ToList() select new { v.Id, Data = v.Data.ToString("dd/MM/yyyy"), v.Veiculo.Placa, Fabricante = v.Veiculo.Modelo.Fabricante.Descricao, Modelo = v.Veiculo.Modelo.Descricao, Valor = v.ValorTotal, Vendedor = v.Usuario.Nome }; int recordsTotal = result.Count(); var data = result.OrderByDescending(o => o.Id).Skip(skip).Take(pageSize).ToList(); if (!(string.IsNullOrEmpty(sortColumn) && string.IsNullOrEmpty(sortColumnDir))) { if (sortColumnDir.Equals("asc", StringComparison.OrdinalIgnoreCase)) { if (sortColumn.Equals("Fabricante", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Fabricante).ToList(); if (sortColumn.Equals("Data", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Data).ToList(); if (sortColumn.Equals("Modelo", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Modelo).ToList(); if (sortColumn.Equals("Placa", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Placa).ToList(); if (sortColumn.Equals("Valor", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Valor).ToList(); if (sortColumn.Equals("Vendedor", StringComparison.OrdinalIgnoreCase)) data = data.OrderBy(f => f.Vendedor).ToList(); } else { if (sortColumn.Equals("Fabricante", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Fabricante).ToList(); if (sortColumn.Equals("Data", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Data).ToList(); if (sortColumn.Equals("Modelo", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Modelo).ToList(); if (sortColumn.Equals("Placa", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Placa).ToList(); if (sortColumn.Equals("Valor", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Valor).ToList(); if (sortColumn.Equals("Vendedor", StringComparison.OrdinalIgnoreCase)) data = data.OrderByDescending(f => f.Vendedor).ToList(); } } return Json(new { draw = draw, recordsFiltered = recordsTotal, recordsTotal = recordsTotal, data }, JsonRequestBehavior.AllowGet); }
public ActionResult Pesquisar(string placa, string controlador, string acao) { if (string.IsNullOrWhiteSpace(placa)) { ModelState.AddModelError(string.Empty, "Informe a placa do veículo!"); return(View("Placa")); } else if (!Veiculos.Util.Validacao.EPlacaValidar(placa)) { ModelState.AddModelError(string.Empty, "Placa do veículo informada está em formato incorreto!"); return(View("Placa")); } Veiculos.Ioc.Service.Service <Ioc.Core.Data.Veiculo> service = new Ioc.Service.Service <Ioc.Core.Data.Veiculo>(); Ioc.Core.Data.Veiculo veiculo = veiculo = service.Buscar(m => m.Placa == placa); if (veiculo == null || veiculo.Id == 0) { if (controlador.Equals("Vender")) { return(View("Placa").WithInfo("Veículo não localizado!")); } var cadastrarController = DependencyResolver.Current.GetService <CadastrarController>(); cadastrarController.ControllerContext = new ControllerContext(this.Request.RequestContext, cadastrarController); var result = cadastrarController.BuscarVeiculoPorPlaca(placa, controlador); return(result); } //Registrar Compra: Fluxo Alternativo (2): o veículo está cadastrado no sistema e está com status diferente de NÃO PERTENCE À LOJA. else if (veiculo != null && veiculo.Id > 0 && controlador.Equals("Comprar") && veiculo.IdStatusVeiculo != 3) { return(View("Placa").WithInfo("Operação não é permitida, pois o veículo já pertence à loja!")); } //Registrar venda: Fluxo Alternativo (2): veículo não está cadastrado no sistema ou seu status é NÃO PERTENCE À LOJA. else if (veiculo != null && veiculo.Id > 0 && controlador.Equals("Vender") && veiculo.IdStatusVeiculo == 3) { return(View("Placa").WithInfo("Operação não é permitida, pois o veículo não pertence à loja!")); } //Registrar venda: Fluxo Alternativo (2): veículo está com status EM PROCESSO DE VENDA. else if (veiculo != null && veiculo.Id > 0 && controlador.Equals("Vender") && veiculo.IdStatusVeiculo == 2) { return(View("Placa").WithInfo("Veículo está sendo negociado em outra transação!")); } var v = new Models.VeiculoModel() { Id = veiculo.Id, Ano = veiculo.AnoFabricacao, Chassi = veiculo.Chassi, Cilindradas = veiculo.Cilindradas, Placa = veiculo.Placa, IdModelo = veiculo.Modelo.Id, DescricaoModelo = veiculo.Modelo.Descricao, IdFabricante = veiculo.Modelo.Fabricante.Id, DescricaoFabricante = veiculo.Modelo.Fabricante.Descricao, Imagem = (HttpPostedFileBase) new MemoryPostedFile(veiculo.Foto) }; Session.Remove("Veiculo"); Session["Veiculo"] = v; return(RedirectToAction(acao, controlador)); }