Package br.com.pawsoncloud.servicos.impl
Class AdocaoServicoImpl
java.lang.Object
br.com.pawsoncloud.servicos.impl.AdocaoServicoImpl
- All Implemented Interfaces:
AdocaoServico
Classe que implementa a interface AdocaoServico.
- Author:
- Edielson Assis
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionMétodo responsável por realizar uma adoção.void
Cancela uma adoção com base no id informado.Lista com todas as adoções realizadas pelo usuário.update
(Long id, AdocaoUpdateDto adocaoDto) Atualiza os dados da adoção com base no id informado.
-
Constructor Details
-
AdocaoServicoImpl
public AdocaoServicoImpl()
-
-
Method Details
-
create
Método responsável por realizar uma adoção. Antes da adoção ser realizada, é realizado algumas verificações. 1 - O id do pet informado é válido? Se não, é lançado uma exceção. 2 - O pet está disponivel? Se não, é lançado uma exceção. 3 - Os dados do adotante são os mesmos do doador? Se sim, é lançado uma exceção. 4 - O adotante possui alguma adoção pendente? Se sim, é lançado uma exceção.- Specified by:
create
in interfaceAdocaoServico
- Parameters:
adocaoDto
- contém os dados do adotante e do animal que será adotado.- Returns:
- Adocao
- Throws:
ObjectNotFoundException
- é lançada caso o pet não seja encontrado.DataBaseException
- é lançada caso o adotante seja o doador ou caso o usuário possua alguma adoçao pendente.
-
findByCpf
Lista com todas as adoções realizadas pelo usuário. É utilizado o cpf do usuário para carregar a lista. Caso a lista esteja vazia, é lançado uma exceção.- Specified by:
findByCpf
in interfaceAdocaoServico
- Returns:
- lista de adoções
- Throws:
ObjectNotFoundException
- é lançada caso nenhuma adoção seja encontrada.
-
update
Atualiza os dados da adoção com base no id informado. Caso a adoção não seja encontrada, é lançãdo uma exceção. Antes de atualizar, verifica se o usuário logado possui os mesmos dados do doador. Se não, outra exceção é lançada. Por fim, verifica se a adoção já foi finalizada. Se sim, uma exceção é lançada, negando a operação.- Specified by:
update
in interfaceAdocaoServico
- Parameters:
adocaoDto
- adoção que será atualizada.id
- parâmetro para atualização.- Returns:
- adoção recém-atualizada.
- Throws:
jakarta.persistence.EntityNotFoundException
- capturada caso o usuário não seja encotrado.org.springframework.security.authentication.BadCredentialsException
- é lançada caso as credenciais do usuário sejam inválidas.DataBaseException
- é lançada caso a adoção tenha sido finalizada.
-
delete
Cancela uma adoção com base no id informado. Caso a adoção não seja encontrada, é lançãdo uma exceção. Antes de cancelar, verifica se o usuário logado possui os mesmos dados do doador. Se não, outra exceção é lançada. Por fim, verifica se a adoção já foi finalizada. Se sim, uma exceção é lançada, negando a operação.- Specified by:
delete
in interfaceAdocaoServico
- Parameters:
id
- d da adoção que será cancelada.- Throws:
jakarta.persistence.EntityNotFoundException
- capturada caso o usuário não seja encotrado.org.springframework.security.authentication.BadCredentialsException
- é lançada caso as credenciais do usuário sejam inválidas.DataBaseException
- é lançada caso a adoção tenha sido finalizada.
-