Information

0
Story Points

Technologies

Decompiled Java File
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;
   }
}
Page generated: Oct 19, 2017 2:35:21 PM