Skip to content

Latest commit

 

History

History
125 lines (89 loc) · 7.88 KB

README.md

File metadata and controls

125 lines (89 loc) · 7.88 KB

Avaliação Final Minsait - .Net e Angular

Sobre o Desafio

Desenvolver um sistema de gerenciamento de livros que atenda as necessidades e ajude a livraria a se modernizar as novas tencologias online. O Atual problema da livraria que possui um grande estoque de livros, os quais não estão cadastrados em nenhum sistema, o que dificulda a identificação dos livros disponiveis e quais precisam de reposição. O sistema vem para permitir que a livraria gerencia melhor o seu estoque na forma de cadastrar novos livros, atualização dos livros cadastrados, exclusão de livros, e busca por diversos criérios como titulo, autor, editora, edição entre outros.

Aplicação

O Projeto foi desenvoldido com Angular CLI versão 15.1.5. Com o consumo da API em .Net.

.Angular HTML5 TS SCSS

A aplicação consiste em duas telas uma de listar os livros, e outra de cadastrar. A de cadastrar possui um formulário de preecnhimento com as informações sobre o livro, como título, subtítulo, autor e os demais, além de uma imagem que pode ser pré-visualizada. Na página de Livros possui a lista de todos os livros cadastrados até o momento, além de uma pequena lista ao lado dos últimos livros recentes adicionados para ter uma maior noção e controle dos mesmos. Além que possui dois filtros diferentes um principal o qual faz a busca por uma palavra e ela pode estar tanto no título, subtítulo, editora ou autor que irá retornar a lista com a busca, e ao lado uma busca mais precisa com controle de ano de publicação, quantidade de páginas, editora, autor, e título tudo para um melhor gerenciamento e controle dos livros cadastrados.

Como executar a aplicação

Primeiramente como a aplicação é desenvolvida em angular é necessario instalar na máquina o angular CLI que atualmente (23/03/2023) está na versão 15.1.5:

Para baixar a aplicação na sua máquina pode ser feito baixando pelo próprio github ou pelo seguinte comando:

git clone https://github.com/Romenildo/Livroteria-back.git

Em seguida dentro da pasta abra o terminar e execute o seguinte comando para que as dependências do projeto angular sejam baixadas na aplicação:

   npm install

Após baixar as dependencias do projeto angular basta executar o aplicação no ambiente de desenvolvimento que o angular CLI cria, com o comando:

 ng serve

Detalhes sobre a Aplicação

Inicialmente na tela principal da lista de livros temos a seguinte tela, o qual possui toda a navegação e visualização dos livros, podendo escolher entre duas formas de visualizar sendo de lista ou em grid. Onde ao clicar na imagem do livro é possivel visualizar mais informações detalhadas sobre a obra, além das opções de excluir e editar o livro. Além disso na tela Inicial também vem com uma lista de controle dos ultimos livros adicionados, para uma melhor organização ao ir adicionando os livros no sistema.

inicial

Ao selecionar a opção de editar mostrará um modal com os campos do livro para ser feito a possivel alteração em qualquer campo ou imagem a qual possui uma pré-visualização da mesma. A edição também possui as validações dos campos obrigatórios.

editar

A aplicação vem com o sistema de diversos filtros para ajudar no gerenciamentos dos livros no sistema sendo elas. Primeiramente pelo filtro do header onde a busca é feita a partir da palavra buscando tanto nos títulos, subtitulos e autores.

filtro1

Logo abaixo possui um segundo filtro, com as opções das letras do alfabeto é possivel selecionar a letra inicial do título do livro que está buscando que o sistema filtrará pela selecionada.

filtro2

Filtro avançado que além do filtro padrão ao topo da tela Inicial, possui um filtro mais preciso de como deseja ser feito a busca, caso por determinado autor, editora, ano de publicação, ou até mesmo limitar a quantidade de páginas que o livro possui.

filtro3

Outra opção o qual é possivel filtrar a partir do filtro clicando no autor ou editora, que o filtro irá se atualizar e retornar todos os livros daquele autor ou editora selecionada.

filtroBonus

Além da filtragem do filtro avançado também é possivel selecionar a ordem que os livros irão ficar organizados. Podendo ser ela entre, Os adicionados recentes, os mais antigos adicionados, por ordem alfabeta(A-Z) ou o inverso de (Z-A).

ordenacao

Por fim a tela de cadastrar novos livros no sitema, o qual possui as validações apropriadas e uma pré visualização da capa do livro(caso nao seja adicionado um link, ou o link quebrado a capa do livro retornara uma padrao informando que nao possui imagem)

cadastrar

Mais detalhes sobre o desafio

  • Utilizar o Angular 12 ou superior, utilizando as dependências, tecnologias e conceitos aprendidos no treinamento e adicionais que julgar melhor;

Requisitos

  • Criação da interface de usuário: Crie uma interface de usuário para o cadastro de livros, permitindo que o usuário insira informações como título, subtítulo, resumo, quantidade de páginas, data de publicação, editora, edição e autor.
  • Validação de dados: Certifique-se de que as informações inseridas pelo usuário estejam corretas e completas antes de serem armazenadas no banco de dados. Por exemplo, verifique se o título do livro não está em branco ou se o mesmo não está cadastrado. Siga o modelo de dados da tabela do banco para as validações.
  • Listagem de livros: Crie uma página que liste todos os livros cadastrados no banco de dados, permitindo que o usuário filtre usando os campos de buscas.
  • Edição de livros: Crie uma funcionalidade que permita ao usuário editar informações de um livro já cadastrado no banco de dados.
  • Exclusão de livros: Crie uma funcionalidade que permita ao usuário excluir um livro já cadastrado no banco de dados.
  • Testes: Certifique-se de testar o aplicativo para garantir que todas as funcionalidades funcionem corretamente e sem erros.

O que será avaliado

  • Estrutura do código;
  • Boas práticas;
  • Componentes visuais;
  • Criatividade;
  • Qualidade;
  • Desenvolvimento dos requisitos mínimos.