private bool ValidarManutencao(Modelo.Classes.Manutencao.Manutencao manutencao) { if (manutencao.DataSaida.HasValue && manutencao.DataSaida.Value > DateTime.Now) { if (manutencao.EstadoAtual == EstadosDeManutencao.CONCLUIDA && manutencao.DataEntrada > DateTime.Now) { throw new Exception("Data de entrada/agendamento inválida"); } throw new Exception("Data de conclusão inválida"); } else { return(true); } }
public void RemoverManutencaoPorId(long?id) { try { Modelo.Classes.Manutencao.Manutencao manutencao = ObterManutencaoPorId(id); Veiculo veiculo = VeiculoService.ObterVeiculoPorId(manutencao.VeiculoId); veiculo.EstadoDoVeiculo = EstadosDeVeiculo.NORMAL; VeiculoService.GravarVeiculo(veiculo); Context.RemoverManutencaoPorId(id); } catch (Exception ex) { throw new Exception(ex.Message); } }
public void AlterarManutencao(Modelo.Classes.Manutencao.Manutencao manutencao, IList <PecasManutencao> pecas) { try { if (ValidarManutencao(manutencao)) { if (manutencao.EstadoAtual == EstadosDeManutencao.CONCLUIDA) { Veiculo veiculo = VeiculoService.ObterVeiculoPorId(manutencao.VeiculoId); veiculo.EstadoDoVeiculo = EstadosDeVeiculo.NORMAL; VeiculoService.GravarVeiculo(veiculo); } Context.AlterarManutencao(manutencao, pecas); } } catch (Exception ex) { throw new Exception(ex.Message); } }
public void AdicionarManutencao(Modelo.Classes.Manutencao.Manutencao manutencao, IList <PecasManutencao> pecas) { try { if (ValidarManutencao(manutencao)) { if (manutencao.DataEntrada <= DateTime.Now) { Veiculo veiculo = VeiculoService.ObterVeiculoPorId(manutencao.VeiculoId); if (manutencao.EstadoAtual == EstadosDeManutencao.EM_ANDAMENTO) { veiculo.EstadoDoVeiculo = EstadosDeVeiculo.EM_MANUTENCAO; VeiculoService.GravarVeiculo(veiculo); } } Context.AdicionarManutencao(manutencao, pecas); } } catch (Exception ex) { throw new Exception(ex.Message); } }