Red Hat Application Migration Toolkit
package mx.com.bcm.banamex.ae.persistencia.dao.impl; import java.util.List; import javax.ejb.Stateless; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import javax.persistence.TypedQuery; import mx.com.bcm.banamex.ae.persistencia.common.GlobalJpaDaoBean; import mx.com.bcm.banamex.ae.persistencia.constantes.OperadorLogicoType; import mx.com.bcm.banamex.ae.persistencia.dao.CatalogoUnidadDeNegocioDAOBeanLocal; import mx.com.bcm.banamex.ae.persistencia.exception.EfectivoAplicacionDAOException; import mx.com.bcm.banamex.ae.persistencia.helper.UtileriaHelper; import mx.com.bcm.banamex.ae.persistencia.modelo.UnidadDeNegocio; import mx.com.bcm.banamex.ae.persistencia.modelo.UnidadDeNegocioPK; import mx.com.bcm.banamex.ae.persistencia.vo.CriteriaUnidadNegocioVO; @Stateless public class CatalogoUnidadNegocioDAOImpBeanLocal extends GlobalJpaDaoBean implements CatalogoUnidadDeNegocioDAOBeanLocal { @PersistenceContext private EntityManager em; public UnidadDeNegocio consultaUnidadNegocioById(Short idUnidadNegocio) throws EfectivoAplicacionDAOException { TypedQuery query = this.em.createNamedQuery("UnidadDeNegocio.findByUnegId", UnidadDeNegocio.class); query.setParameter("unegId", idUnidadNegocio); return (UnidadDeNegocio)query.getSingleResult(); } public List consultaUnidadCriteriosDinamicos(CriteriaUnidadNegocioVO criterioVO) throws EfectivoAplicacionDAOException { StringBuilder query = new StringBuilder(); String queryFormateado = UtileriaHelper.getFiltroDeAtributos(criterioVO.toString(), OperadorLogicoType.AND, 'u'); if(queryFormateado.equals("")) { new StringBuilder(); new String(); return this.findAll(); } else { query.append(" SELECT u FROM UnidadDeNegocio u "); query.append(" WHERE " + queryFormateado); TypedQuery criteria = this.em.createQuery(query.toString(), UnidadDeNegocio.class); new StringBuilder(); return criteria.getResultList(); } } public UnidadDeNegocio consultaUnidadNegocioPk(UnidadDeNegocioPK unidadPK) throws EfectivoAplicacionDAOException { StringBuilder query = new StringBuilder(); query.append(" SELECT u FROM UnidadDeNegocio u "); query.append(" JOIN FETCH u.contrato JOIN FETCH u.cpaes "); query.append(" WHERE u.unidadDeNegocioPK.cpaesEstructuraSirhIdn = :sirhIdn AND "); query.append(" u.unidadDeNegocioPK.cntrtoNum=:contratoNum AND "); query.append(" u.unidadDeNegocioPK.unegId = :unegId "); TypedQuery criteria = this.em.createQuery(query.toString(), UnidadDeNegocio.class); criteria.setParameter("unegId", Short.valueOf(unidadPK.getUnegId())); criteria.setParameter("contratoNum", unidadPK.getCntrtoNum()); criteria.setParameter("sirhIdn", Integer.valueOf(unidadPK.getCpaesEstructuraSirhIdn())); criteria.setMaxResults(1); return (UnidadDeNegocio)criteria.getSingleResult(); } public UnidadDeNegocio consultaUnidadNegocioDinamico(CriteriaUnidadNegocioVO criterioVO) throws EfectivoAplicacionDAOException { StringBuilder query = new StringBuilder(); String queryFormateado = UtileriaHelper.getFiltroDeAtributos(criterioVO.toString(), OperadorLogicoType.AND, 'u'); query.append(" SELECT u FROM UnidadDeNegocio u "); query.append(" WHERE " + queryFormateado); TypedQuery criteria = this.em.createQuery(query.toString(), UnidadDeNegocio.class); criteria.setMaxResults(1); new StringBuilder(); return criteria.getSingleResult() != null?(UnidadDeNegocio)criteria.getSingleResult():null; } }