public MovimentacaoVeiculo CriarAtualizarMovimentacaoVeiculo(string placa, DateTime dataHoraAtual) { MovimentacaoVeiculo moviVeic = BuscarMovimentacaoVeiculoEmAberto(placa); dataHoraAtual = dataHoraAtual.AddSeconds(dataHoraAtual.Second * -1); dataHoraAtual = dataHoraAtual.AddMilliseconds(dataHoraAtual.Millisecond * -1); if (moviVeic == null) { moviVeic = new MovimentacaoVeiculo() { placa = placa, entrada = dataHoraAtual, idTabelaPreco = _tabePrecMode.BuscarIdTabelaPreco(dataHoraAtual) } } ; else if (moviVeic.idTabelaPreco <= 0) { moviVeic.idTabelaPreco = _tabePrecMode.BuscarIdTabelaPreco(moviVeic.entrada); } if (moviVeic.handle > 0) { moviVeic.saida = dataHoraAtual; } if (moviVeic.tabelaPreco == null) { moviVeic.tabelaPreco = _tabePrecRepo.Buscar(tabe => tabe.handle == moviVeic.idTabelaPreco).FirstOrDefault(); } return(moviVeic); }
public void ValidarCalculoValorTotalEstacionamentoHoraAdicional() { string placaTeste = "ASD1234"; DateTime dataHoraAtual = DateTime.Now; ZerarMovimentacao(); ZerarTabelaPrecos(); _tabePrecRepo.Adicionar(new Entidades.TabelaPreco() { descricao = "Teste Movimentacao", inicioVigencia = new DateTime(DateTime.Now.Year, 01, 01), finalVigencia = new DateTime(DateTime.Now.Year, 12, 31), valorHoraAdicional = 2, valorHoraInicial = 4 }); _tabePrecRepo.Salvar(); _moviVeicRepo.Adicionar(_moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual)); _moviVeicRepo.Salvar(); MovimentacaoVeiculo movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(71)); Assert.IsTrue(movimentacao.valorTotal == 6, "Deveria estar cobrando o valor da hora inicial."); movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(141)); Assert.IsTrue(movimentacao.valorTotal == 6, "Deveria estar cobrando o valor da hora inicial."); movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(142)); Assert.IsTrue(movimentacao.valorTotal == 8, "Deveria estar cobrando o valor da hora inicial."); movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(213)); Assert.IsTrue(movimentacao.valorTotal == 10, "Deveria estar cobrando o valor da hora inicial."); }
public void ValidarCalculoValorTotalEstacionamentoMenorIgualTrintaMinutos() { string placaTeste = "ASD1234"; DateTime dataHoraAtual = DateTime.Now; ZerarMovimentacao(); ZerarTabelaPrecos(); _tabePrecRepo.Adicionar(new Entidades.TabelaPreco() { descricao = "Teste Movimentacao", inicioVigencia = new DateTime(DateTime.Now.Year, 01, 01), finalVigencia = new DateTime(DateTime.Now.Year, 12, 31), valorHoraAdicional = 2, valorHoraInicial = 4 }); _tabePrecRepo.Salvar(); _moviVeicRepo.Adicionar(_moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual)); _moviVeicRepo.Salvar(); MovimentacaoVeiculo movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(29)); Assert.IsTrue(movimentacao.valorTotal == 2, "Deveria estar cobrando metado do valor da hora inicial pois se passou menos que 30 minutos."); movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual.AddMinutes(30)); Assert.IsTrue(movimentacao.valorTotal == 2, "Deveria estar cobrando metado do valor da hora inicial pois se passou menos que 30 minutos."); }
public ActionResult DeleteConfirmed(int id) { MovimentacaoVeiculo movimentacaoVeiculo = movimentacaoveiculoregras.buscarporID(id); movimentacaoveiculoregras.Remover(movimentacaoVeiculo); return(RedirectToAction("Index")); }
public async Task RegistrarSaidaVeiculo(MovimentacaoVeiculo movimentoVeiculoToBeUpdated, MovimentacaoVeiculo movimentacaoVeiculo) { movimentoVeiculoToBeUpdated.DataSaida = movimentacaoVeiculo.DataSaida; movimentoVeiculoToBeUpdated.DataEntrada = movimentacaoVeiculo.DataEntrada; await _unitOfWork.CommitAsync(); }
public async Task <MovimentacaoVeiculo> CreateMovimentacao(MovimentacaoVeiculo movimentacaoVeiculo) { await _unitOfWork.MovimentacaoVeiculos .AddAsync(movimentacaoVeiculo); await _unitOfWork.CommitAsync(); return(movimentacaoVeiculo); }
// GET: MovimentacaoVeiculos/Details/5 public ActionResult Details(int id) { MovimentacaoVeiculo movimentacaoVeiculo = movimentacaoveiculoregras.buscarporID(id); if (movimentacaoVeiculo == null) { return(HttpNotFound()); } return(View(movimentacaoVeiculo)); }
public ActionResult Edit([Bind(Include = "Id,DataHoraEntrada,DataHoraSaida,PlacaVeiculo,UsuarioId,ModeloVeiculoId,ClienteId,VagaId")] MovimentacaoVeiculo movimentacaoVeiculo) { if (ModelState.IsValid) { movimentacaoveiculoregras.Atualizar(movimentacaoVeiculo); return(RedirectToAction("Index")); } ViewBag.MensalistaId = new SelectList(mensalistaregras.buscarTodos(), "Id", "Id", movimentacaoVeiculo.MensalistaId); ViewBag.TipoVeiculoId = new SelectList(tipoVeiculoRegras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.TipoVeiculoId); ViewBag.UsuarioId = new SelectList(usuarioregras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.UsuarioId); ViewBag.VagaId = new SelectList(vagaregras.buscarTodos(), "Id", "Numero", movimentacaoVeiculo.VagaId); return(View(movimentacaoVeiculo)); }
public ActionResult Gravar(MovimentacaoVeiculo moviVeic) { if (moviVeic.handle > 0) { moviVeicRepo.Atualizar(moviVeic); } else { moviVeicRepo.Adicionar(moviVeic); } moviVeicRepo.Salvar(); return(RedirectToAction("Index")); }
// GET: MovimentacaoVeiculos/Edit/5 public ActionResult Edit(int id) { MovimentacaoVeiculo movimentacaoVeiculo = movimentacaoveiculoregras.buscarporID(id); if (movimentacaoVeiculo == null) { return(HttpNotFound()); } ViewBag.MensalistaId = new SelectList(mensalistaregras.buscarTodos(), "Id", "Id", movimentacaoVeiculo.MensalistaId); ViewBag.TipoVeiculoId = new SelectList(tipoVeiculoRegras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.TipoVeiculoId); ViewBag.UsuarioId = new SelectList(usuarioregras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.UsuarioId); ViewBag.VagaId = new SelectList(vagaregras.buscarTodos(), "Id", "Numero", movimentacaoVeiculo.VagaId); return(View(movimentacaoVeiculo)); }
public MovimentacaoVeiculo BuscarMovimentacaoVeiculoEmAberto(string placa) { MovimentacaoVeiculoRepositorio moviVeicRepo = new MovimentacaoVeiculoRepositorio(); MovimentacaoVeiculo movimentacao = null; var movimentacoes = moviVeicRepo.Buscar(movi => movi.placa.Equals(placa) && movi.saida.Equals(new DateTime()) ).ToList(); if (movimentacoes.Count() > 0) { movimentacao = movimentacoes.First(); } return(movimentacao); }
public ActionResult Registro(string numeroPlaca) { MovimentacaoVeiculoModelo moviVeicMode = new MovimentacaoVeiculoModelo(); TabelaPrecosModelo tabePrecMode = new TabelaPrecosModelo(); ViewBag.FaltaConfiguracao = false; DateTime dataHoraAtual = DateTime.Now; MovimentacaoVeiculo moviVeic = moviVeicMode.CriarAtualizarMovimentacaoVeiculo(numeroPlaca, dataHoraAtual);// BuscarMovimentacaoVeiculoEmAberto(numeroPlaca); if (moviVeic.idTabelaPreco <= 0) { ModelState.AddModelError("", string.Format("Não foi possível determinar uma tabela de preços para a movimentação. Data e Hora da movimentação {0}", moviVeic.entrada)); ViewBag.FaltaConfiguracao = true; } return(PartialView(moviVeic)); }
public ActionResult Create(MovimentacaoVeiculo movimentacaoVeiculo) { try { if (ModelState.IsValid) { movimentacaoveiculoregras.Adicionar(movimentacaoVeiculo); return(RedirectToAction("Index")); } } catch (System.Exception exp) { ModelState.AddModelError(string.Empty, exp.Message); } ViewBag.MensalistaId = new SelectList(mensalistaregras.buscarTodos(), "Id", "Id", movimentacaoVeiculo.MensalistaId); ViewBag.TipoVeiculoId = new SelectList(tipoVeiculoRegras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.TipoVeiculoId); ViewBag.UsuarioId = new SelectList(usuarioregras.buscarTodos(), "Id", "Nome", movimentacaoVeiculo.UsuarioId); ViewBag.VagaId = new SelectList(vagaregras.buscarTodos(), "Id", "Numero", movimentacaoVeiculo.VagaId); return(View(movimentacaoVeiculo)); }
public void ValidarCalculoValorTotalEstacionamentoSemDataSaida() { string placaTeste = "ASD1234"; DateTime dataHoraAtual = DateTime.Now; ZerarMovimentacao(); ZerarTabelaPrecos(); _tabePrecRepo.Adicionar(new Entidades.TabelaPreco() { descricao = "Teste Movimentacao", inicioVigencia = new DateTime(DateTime.Now.Year, 01, 01), finalVigencia = new DateTime(DateTime.Now.Year, 12, 31), valorHoraAdicional = 2, valorHoraInicial = 4 }); _tabePrecRepo.Salvar(); MovimentacaoVeiculo movimentacao = _moviVeicMode.CriarAtualizarMovimentacaoVeiculo(placaTeste, dataHoraAtual); Assert.IsTrue(movimentacao.valorTotal == 0, "Deveria estar retornando zero, não tam data de saída para calcular o tempo total e o valor a ser cobrado."); }