/*
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
*/
|
package com.megatim.apifdxweb.dao.impl.referentiel.natureproduction;
|
|
import com.megatim.fdxcommons.dao.ifaces.natureproduction.NatureProductionFichierDAO;
|
import com.megatim.fdxcommons.model.referentiel.natureproduction.NatureProductionFichier;
|
import com.megatim.fdxcommons.model.referentiel.natureproduction.NatureProductionFichierId;
|
import java.util.List;
|
import java.util.Optional;
|
import javax.enterprise.context.Dependent;
|
import javax.persistence.EntityManager;
|
import javax.persistence.PersistenceContext;
|
import javax.persistence.Query;
|
|
/**
|
*
|
* @author ASUS
|
*/
|
@Dependent
|
public class NatureProductionFichierDAOImpl implements NatureProductionFichierDAO {
|
|
@PersistenceContext(unitName = "fdxPU")
|
protected EntityManager em;
|
|
@Override
|
public Class<NatureProductionFichier> getManagedEntityClass() {
|
return NatureProductionFichier.class;
|
}
|
|
@Override
|
public EntityManager getEntityManager() {
|
return em;
|
}
|
|
@Override
|
public NatureProductionFichier getById(NatureProductionFichierId id) {
|
Query query = em.createQuery("SELECT n from NatureProductionFichier n where n.referentiel.version = :referentielVersion"
|
+ " AND n.typeFichier.code = :codeTypeFichier");
|
query.setParameter("referentielVersion", id.getReferentiel());
|
query.setParameter("codeTypeFichier", id.getTypeFichier());
|
Optional<NatureProductionFichier> optNatureProd = query.getResultList().stream().findFirst();
|
|
return optNatureProd.isPresent() ? optNatureProd.get() : null;
|
}
|
|
@Override
|
public List<NatureProductionFichier> getByReferentiel(String referentielVersion) {
|
Query query = em.createQuery("SELECT n from NatureProductionFichier n where n.referentiel.version = :referentielVersion");
|
query.setParameter("referentielVersion", referentielVersion);
|
|
return query.getResultList();
|
}
|
}
|