/// <summary> /// consultar uma atribuicao /// </summary> /// <param name="idMotorista"></param> /// <param name="idGerente"></param> public static void ConsultarAtribuicaoBLL(int idMotorista, int idGerente) { if (VerificaNivelDeAcessoGerenteBLL(idGerente)) { DadosVeiculos.ConsultarAtribuicao(idMotorista); } }
/// <summary> /// Metodo em que o gerente reve as atribuicoes da frota /// </summary> /// <param name="idGerente"></param> /// <param name="idMotorista"></param> /// <returns></returns> public static bool ReverAtribuicaoBLL(int idGerente, int idMotorista) { if (VerificaNivelDeAcessoGerenteBLL(idGerente)) //gerente tem acesso/existe/ativo { DadosVeiculos.ListarAtribuicoes(); //visao geral das atribuicoes Console.WriteLine(""); //verifica se a carta esta' em dia e se motorista existe, esta' no ativo if (MotoristaBLL.VerificaNivelDeAcessoMotoristaBLL(idMotorista)) { if (gBLL.VerificaSeValida(idMotorista)) //verifica se esta' valida { DadosVeiculos.ReverAtribuicao(idMotorista, 1); //valido } else { DadosVeiculos.ReverAtribuicao(idMotorista, 0); //invalido } return(true); //operacao realizada corretamente } else { return(false); // problemas no acesso do motorista } } else { return(false); //problemas na autenticacao do gerente } }
/// <summary> /// Este metodo permite ao gerente restaurar os dados das atribuicoes /// </summary> /// <param name="idGerente"></param> /// <returns>caminho do ficheiro ou erro</returns> public static string RestaurarBackupAtribuicoes(int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) { return(DadosVeiculos.RestaurarBackupAtribuicoes()); } else { return("Erro no Acesso!"); } }
/// <summary> /// Carregar os dados para memoria /// </summary> /// <returns></returns> public static string RestaurarBackupFrotaBLL(int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) { return(DadosVeiculos.RestaurarBackupFrota()); } else { return("Acesso Negado!"); } }
/// <summary> /// Guardar num ficheiro XML os dados das atribuicoes /// </summary> /// <param name="idGerente"></param> /// <returns>caminho do ficheiro ou erro</returns> public static string FazerBackupAtribuicoes(int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) //acesso? { return(DadosVeiculos.FazerBackupAtribuicoes()); //faz backup } else { return("Erro no Acesso!"); //erro no acesso } }
/// <summary> /// permite ao motorista consultar o pedido /// </summary> /// <param name="idMotorista"></param> public static void ConsultarMeuPedido(int idMotorista) { if (VerificaNivelDeAcessoMotoristaBLL(idMotorista)) { DadosVeiculos.ConsultarAtribuicao(idMotorista); } else { Console.WriteLine("Acesso Negado!"); } }
/// <summary> /// metodo para listar /// </summary> /// <param name="idGerente"></param> /// <returns>true-> listou /// false-> problema no acesso /// </returns> public static bool ListarFrotaVeiculosBLL(int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) // autorizado? { Console.WriteLine("\n# Listagem Frota"); DadosVeiculos.ListarFrotaVeiculos(); //lista return(true); } else { return(false); //sem acesso } }
/// <summary> /// Dispensar veiculo /// </summary> /// <param name="matricula"></param> /// <param name="idGerente"></param> /// <returns>true-> removeu /// false-> problema no acesso ou ja' existe /// </returns> public static bool RemoverVeiculoBLL(string matricula, int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) //autorizado? { if (VerificaSeExisteVeiculoBLL(matricula)) //existe veiculo? { DadosVeiculos.RemoverVeiculo(matricula); //"remover" veiculo if (DadosVeiculos.TemMotoristaAtribuido(matricula)) //remover dependencias { DadosVeiculos.LibertarVeiculoAtribuicoesII(matricula); //atribuicao fica invalida e veiculo disponivel } } return(true); } else { return(false); //falha na autenticacao } }
/// <summary> /// Metodo que verifica se e' possivel inserir um veiculo /// </summary> /// <param name="v"></param> /// <param name="idGerente"></param> /// <returns>true -> registado com sucesso /// false-> gerente nao tem acesso ou carro ja' registado /// </returns> public static bool RegistaVeiculoBLL(VeiculoBO v, int idGerente) { if (GerenteOperacionalBLL.VerificaNivelDeAcessoGerenteBLL(idGerente)) // tem acesso? { if (!DadosVeiculos.VerificaSeExiste(v.Matricula)) //se nao existir { DadosVeiculos.RegistaVeiculo(v); //regista return(true); } else { return(false); // ja' existe } } else { return(false); //problemas na autenticacao } }
/// <summary> /// dispensar um motorista /// </summary> /// <param name="idMotorista"></param> /// <param name="idRH"></param> /// <returns>true -> Registado com sucesso /// false-> se RH nao tiver acesso ou o motorista nao existir /// </returns> public static bool DispensaMotoristaBLL(int idMotorista, int idRH) { if (RecursosHumanosBLL.VerificaNivelDeAcessoRHBLL(idRH)) // rh tem acesso? { if (VerificaSeExiste(idMotorista)) // motorista existe? { DadosMotoristas.DispensaMotorista(idMotorista); //dispensa if (DadosVeiculos.TemVeiculoAtribuido(idMotorista)) //verifica se tem veiculo ou atribuicao pendente { DadosVeiculos.LibertarVeiculoAtribuicoes(idMotorista); //atribuicao fica invalida e veiculo disponivel } } return(true); } else { return(false); } }
/// <summary> /// Realizar pedido de um carro /// </summary> /// <param name="idMotorista"></param> /// <param name="matricula"></param> /// <returns></returns> public static bool PedirVeiculoBLL(int idMotorista, string matricula) { // Motorista tem que existir, estar no ativo e ter nivel de acesso //Matricula existir, e veiculo estar disponivel if ((MotoristaBLL.VerificaNivelDeAcessoMotoristaBLL(idMotorista) && VeiculoBLL.VerificaSeExisteVeiculoBLL(matricula)) && (int)VeiculoBLL.DevolveEstadoVeiculo(matricula) == (int)VeiculoBO.ENUM_ESTADO_VEICULO.disponivel) { DateTime agora = DateTime.Now; AtribuicaoVeiculoBO pedido = new AtribuicaoVeiculoBO(DadosVeiculos.DevolveIdAtribuicao(), matricula, idMotorista, AtribuicaoVeiculoBO.ENUM_ESTADO_ATRIBUICAO.faltaRever); DadosVeiculos.NovaAtribuicao(agora, pedido); return(true); //tudo correu bem } else { return(false); // !(Motorista tem que existir, estar no ativo e ter nivel de acesso) || // !(Matricula existir, e veiculo estar disponivel) } }
/// <summary> /// metodo auxiliar que verifica a existencia de uma matricula /// </summary> /// <param name="matricula"></param> /// <returns>true -> existe /// false-> nao existe /// </returns> public static bool VerificaSeExisteVeiculoBLL(string matricula) { return(DadosVeiculos.VerificaSeExiste(matricula)); }
/// <summary> /// Devolve novo id atribuicao /// </summary> /// <returns>int (novo id reserva)</returns> public static int DevolveNovoIdAtribuicao() { return(1 + DadosVeiculos.DelvolveIdReserva()); }
/// <summary> /// Metodo que devolve em inteiro, o estado do veiculo ((in)disponivel, atribuido) /// </summary> /// <param name="matricula"></param> /// <returns></returns> public static int DevolveEstadoVeiculo(string matricula) { return((int)DadosVeiculos.DevolveEstadoVeiculo(matricula)); }