- Versão do Framework da API: .Net Core 2.2 (\BarDG\src\BarDg\BarDg.sln)
- Versão do Front-End Angular: 9.1.11 (\BarDG\src\BarDg\bar-dg-front)
Criar uma tela para a consulta e listagem de demandas criadas.
Foi adotada a estratégia de utilizar tecnologias mais atuais como .Net core e Angular, pois o meu conhecimento é u pouco mais amplo nestas tecnologias. Estas tecnologias também são minhas ferramentas de trabalho atuais. A autenticação via token foi escolhida pela segurança e também ser uma ferramenta que está sendo muito utilizada nos dias atuais e também muito bem avaliada.
- Executar o script de criação das tabelas (\BarDG\DB\1 - Banco.sql)
- Executar o script de geração das cargas das tabelas (\BarDG\DB\2 - Carga.sql)
- Opcional: Para criar um novo usuário de autenticação da API utilizar o script localizado em \BarDG\DB\Criar novo Usuário.sql alterar nas variaveis do front (Configurações 3 - Passo a Passo FRONT, observações).
- Alterar a variável 'ConnectionString' do appsettings.json;
- Instalar o Node JS;
- Executar o comando: npm install
- Executar o comando: ng serve
OBS: As configurações do front (\BarDg\bar-dg-front\src\environments\environment.ts) não precisam ser alteradas, apenas se desejado.
- Link API: https://localhost:44399/doc/index.html
- Link Front: http://localhost:4200/
Foi utilizada uma arquitetura Hexagonal.
Para acessar a documentação da API, gerada pelo Swagger, é necessário incluir o pré fixo 'doc' na URL (a API subirá automaticamente neste caminho).
Para conseguir utilizar os serviços da API é necessário a geração de um token JWT através da controller /Login/Login ([controller]/[método]) passando um usuário e senha de sistema. O front-end em Angular já realiza esta autenticação utilizando o usuário e senha padrão.
Para testar via Swagger é necessário antes utilizar o end-point citado acima para gerar um token e em seguida anexar o token no swagger clicando no botão 'Authorize' no cando superior direito. O token é valido durante 30 minutos.
Parâmetros do Swagger para a autenticação: { "Id": 1, "Login": "BARDG", "Senha": "BAR01", "Ativo": true }
- A API possui uma implementação para controle de erros internos, onde os logs, stack trace, data, objeto são inseridos no banco de dados na tabela TbBDG_Log
- API - .Net Core 2.2
- Angular 9
- Arquitetura Hexagonal
- Autenticação do JWT (Json Web Token)
- Documentação com Swagger
- Dapper
- Fluent Map
- Auto Mapper
- Banco de dados SQL Server
- IoC
- Testes unitários