/* * 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.fdxconsultation.dao.impl.supervision; import com.megatim.fdxconsultation.dao.ifaces.supervision.AgentConfigurationEntityDAO; import com.megatim.fdxconsultation.model.supervision.AgentConfigurationEntity; import com.megatim.fdxconsultation.model.supervision.StatutConfiguration; 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 AgentConfigurationEntityDAOImpl implements AgentConfigurationEntityDAO { @PersistenceContext(unitName = "fdxConsultationPersistenceUnit") protected EntityManager em; @Override public Class getManagedEntityClass() { return AgentConfigurationEntity.class; } @Override public EntityManager getEntityManager() { return em; } @Override public AgentConfigurationEntity getById(Long id) { Query query = em.createQuery("SELECT a from AgentConfigurationEntity a where a.id = :id"); query.setParameter("id", id); Optional optionalAgent = query.getResultList().stream().findFirst(); return optionalAgent.isPresent() ? optionalAgent.get() : null; } @Override public int archiveAgentConfiguration(String code) { Query query = em.createQuery("UPDATE AgentConfigurationEntity a set a.statutConfiguration = :statut where a.agentCode = :code"); query.setParameter("statut", StatutConfiguration.ARCHIVE); query.setParameter("code", code); return query.executeUpdate(); } }