Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

US05 - Pegar Livros Emprestados #103

Open
38 of 40 tasks
mateusmaiamaia opened this issue Jan 12, 2025 · 2 comments
Open
38 of 40 tasks

US05 - Pegar Livros Emprestados #103

mateusmaiamaia opened this issue Jan 12, 2025 · 2 comments

Comments

@mateusmaiamaia
Copy link
Contributor

mateusmaiamaia commented Jan 12, 2025

Descrição

Eu, como Ana Clara, desejo pegar um livro emprestado, para ter acesso ao conteúdo do livro.

Tarefas

  • Implementar a funcionalidade de empréstimo no sistema.
    • Criar endpoint no backend para registrar o empréstimo.
    • Garantir que somente usuários autenticados possam realizar empréstimos.
    • Registrar no banco de dados o empréstimo com os seguintes campos: usuário, livro e data do empréstimo.
  • Verificar a disponibilidade do livro antes de concluir o empréstimo.
    • Implementar lógica para verificar se o livro está disponível.
    • Exibir mensagem de erro caso o livro não esteja disponível.
  • Atualizar o banco de dados com as informações do empréstimo (usuário e livro).
    • Criar tabela ou ajustar tabela existente para incluir histórico de empréstimos.
    • Implementar atualização automática da disponibilidade do livro após o empréstimo.
  • Exibir as informações do livro no frontend, conforme os critérios de aceitação.
    • Exibir título do livro.
    • Exibir capa do livro.
    • Exibir autor do livro.
    • Exibir nota do livro (se disponível).
    • Exibir descrição do livro.
  • Criar botão na interface para confirmar o empréstimo do livro.
    • Posicionar o botão em uma área visível na tela do livro.
    • Estilizar o botão de forma consistente com o design geral do sistema.
  • Implementar pop-up de confirmação do empréstimo.
    • Criar componente de pop-up com mensagem de confirmação.
    • Adicionar botões "Confirmar" e "Cancelar" no pop-up.
    • Registrar ações dos botões: "Confirmar" finaliza o empréstimo, "Cancelar" fecha o pop-up.

Critérios de Aceitação

  • O sistema deve impedir o empréstimo caso o livro não esteja disponível.
  • Em caso de indisponibilidade do livro deve aparecer uma mensagem "Livro não está Disponível!"
  • O sistema deve registrar corretamente as informações do empréstimo.
  • O sistema deve conter as informações do livro:
    • Título
    • Capa do livro
    • Autor do livro
    • Nota do livro
    • Descrição do livro
  • A tela deve conter um botão para confirmar o empréstimo do livro.
  • Ao apertar o botão de realizar empréstimo, deve aparecer um pop-up com as opções
    • Confirmar: Para confirmar e efetivar o empréstimo do livro.
    • Cancelar: Para cancelar a solicitação de empréstimo do livro e retornar à tela anterior.
  • Para sair da tela de confirmação de empréstimo será necessário:
    • Apertar o botão de Cancelar
    • Aperta fora da tela de confirmação de empréstimo.
  • Ao realizar o empréstimo uma mensagem escrita "Empréstimo realizado com sucesso! " deve aparecer para confirmar a ação.

Protótipo

https://www.figma.com/design/edZfZi6v6sV8lmFCfGCMPW/Livro-Livre?node-id=172-3&p=f&t=rHvnIRC1V9mqy7Gl-0

@jpmartins201
Copy link

  1. Como o usuário vai saber que o livro está emprestado? como vai ser realizada a indisponibilização do livro?
  2. Como o usuário vai saber que as informações do empréstimo foram registradas corretamente?
  3. Qual o comportamento da janela de confirmação do empréstimo? quais mensagens são apresentadas?
  4. Ao entrar nessa tela, como o usuário pode cancelar a ação ou sair da tela?

@jpmartins201
Copy link

Correções aprovadas!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants