Definição da Regra de Negócio
Criar um Web Service (WS) denominado MarkIntegrationService, nos mesmos moldes dos demais Web Services de integração (EJB, utilizando o padrão SOAP para comunicação, ficando o WSDL disponível em http://host:8080/tsa-ejb/MarkIntegrationServiceBean?wsdl).
Este WS somente o método getLastMarkByExternalKey que encaminhará ao EJB responsável (MarkService) a requisição.
No serviço EJB e na implementação do DAO do objeto responsável pelo marcação, será incluído o método getLastMarkByExternalKey que fará uma busca na base de dados, considerando que:
- o campo userRoleBadge.userSa.externalKey terá valor igual ao recebido pelo parâmetro.
- o campo recordTimeDate será menor que a parte da data recebida por parâmetro, ou igual com o campo recordTimeHour menor que a parte da hora recebida por parâmetro.
- o campo markType será igual à uma das opções: OFF_LINE, ACCESS_GRANTED ou ACCESS_GRANTED_BADGE_RELEASING.
Será retornado por esse método apenas as seguintes informações (que irão compor um novo objeto DTO) da última marcação registrada:
- chave externa do dispositivo;
- direção;
- data e hora de registro;
- código do local do dispositivo; e
- descrição do local do dispositivo.
Caso não seja encontrado nenhum resultado, será retornado apenas o objeto em branco.