Search in sources :

Example 1 with ReadFehlzeitResponseType

use of de.provantis.zep.ReadFehlzeitResponseType in project mega by Gepardec.

the class ZepServiceImpl method getAbsenceForEmployee.

@CacheResult(cacheName = "fehlzeitentype")
@Override
public List<FehlzeitType> getAbsenceForEmployee(Employee employee, LocalDate date) {
    final ReadFehlzeitRequestType fehlzeitenRequest = new ReadFehlzeitRequestType();
    fehlzeitenRequest.setRequestHeader(zepSoapProvider.createRequestHeaderType());
    final Optional<ReadFehlzeitSearchCriteriaType> searchCriteria = getSearchCriteria(employee, date, this::createAbsenceSearchCriteria);
    if (searchCriteria.isEmpty()) {
        return null;
    }
    fehlzeitenRequest.setReadFehlzeitSearchCriteria(searchCriteria.get());
    ReadFehlzeitResponseType fehlzeitResponseType = zepSoapPortType.readFehlzeit(fehlzeitenRequest);
    if (fehlzeitResponseType != null && fehlzeitResponseType.getFehlzeitListe() != null && fehlzeitResponseType.getFehlzeitListe().getFehlzeit() != null) {
        return fehlzeitResponseType.getFehlzeitListe().getFehlzeit();
    }
    return Collections.emptyList();
}
Also used : ReadFehlzeitSearchCriteriaType(de.provantis.zep.ReadFehlzeitSearchCriteriaType) ReadFehlzeitResponseType(de.provantis.zep.ReadFehlzeitResponseType) ReadFehlzeitRequestType(de.provantis.zep.ReadFehlzeitRequestType) CacheResult(io.quarkus.cache.CacheResult)

Aggregations

ReadFehlzeitRequestType (de.provantis.zep.ReadFehlzeitRequestType)1 ReadFehlzeitResponseType (de.provantis.zep.ReadFehlzeitResponseType)1 ReadFehlzeitSearchCriteriaType (de.provantis.zep.ReadFehlzeitSearchCriteriaType)1 CacheResult (io.quarkus.cache.CacheResult)1