Tecnologias: ASP .NET MVC, MS SQL, Entity Framework, Bootstrap 3, JQuery, Ninject, Owin, AspNet.Indentity, AutoMapper
Crie um aplicativo da web que suporte a funcionalidade fornecida:
- Com base nas entidades da área disciplinar, crie classes que as descrevam, observando os princípios SOLID. (DI opcional).
- Classes e métodos devem ter nomes que reflitam sua funcionalidade e devem estar corretamente estruturados na aplicação (pastas, namespaces).
- A formatação do código deve estar em conformidade com as convenções de código C#.
- Armazene informações sobre a área de assunto no banco de dados e use o Entity Framework para acesso. Use MS SQL (não Compact) como DBMS.
- A arquitetura da aplicação deve seguir o padrão MVC.
- Realizar registro de eventos, ou seja, processar informações sobre exceções e eventos ocorridos no sistema usando meios ambientais.
- O código deve conter comentários (todas as classes de nível superior, métodos não triviais e construtores).
- O nível de acesso aos dados deve ser colocado em um projeto separado.
- Implementar a diferenciação dos direitos de acesso do usuário do sistema aos componentes do aplicativo (mínimo de 3 funções).
- Todos os campos de entrada devem ter validação de dados.
Além dos requisitos indicados acima, é mais do que desejável garantir que os seguintes requisitos sejam atendidos.
- cobertura de testes unitários de lógica de negócios.
- Use o log de eventos.
- Tratamento de exceções.
- A expansão independente da definição do problema em termos de funcionalidade é bem-vinda. O Motor Depot Dispatcher cria Voos, que são apresentados no sistema em forma de lista, para os quais é necessário implementar a possibilidade de ordenação por: número do voo; data de criação do voo; status (aberto, em andamento, fechado, cancelado).
O motorista faz um requerimento para o voo, no qual indica as características do carro necessário para o voo. O despachante analisa o Requerimento e atribui ao voo um Carro que atenda aos requisitos e esteja em boas condições. O motorista anota a conclusão do voo e o estado do carro. O administrador tem os mesmos direitos do despachante, além disso pode: cadastrar motoristas e despachantes no sistema; adicionar/remover carros, editar informações sobre carros.