package com.fp.armas.task; import java.util.HashMap; import java.util.Map; import com.fp.persistence.commondb.PersistenceHelper; import com.fp.persistence.parmas.param.TarmTramite; import com.fp.persistence.parmas.soli.TarmSolicitudTramite; import com.fp.persistence.parmas.soli.TarmSolicitudTramiteKey; import com.fp.persistence.pgeneral.gene.TgeneCatalogDetail; import com.fp.simple.action.TaskAction; /** * Clase que se encarga de fijar el codigo del tipo de archivo * * @version 2.1 */ public class TipoArchivoControl extends TaskAction { /* * (non-Javadoc) * * @see com.fp.simple.action.TaskAction#assignOwner(com.fp.dto.Request) */ @SuppressWarnings("unchecked") @Override public void assignOwner(Object pParam) throws Exception { HashMap m = (HashMap) pParam; Map mrequest = (Map) m.get("request"); if (mrequest.get("csolicitud") == null || mrequest.get("numerotransaccion") == null) { return; } TarmSolicitudTramiteKey codigoSolicitudKey = new TarmSolicitudTramiteKey(); codigoSolicitudKey.setCsolicitud(mrequest.get("csolicitud").toString()); codigoSolicitudKey.setCtramite(Long.valueOf(mrequest.get("numerotransaccion").toString())); TarmSolicitudTramite solicitudTramite=TarmSolicitudTramite.find(PersistenceHelper.getEntityManager(), codigoSolicitudKey); TarmTramite tramite = TarmTramite.find(PersistenceHelper.getEntityManager(), solicitudTramite.getPk().getCtramite()); TgeneCatalogDetail tgeneCatalogDetail = PersistenceHelper.getEntityManager(). createQuery("select o from TgeneCatalogDetail o where o.pk.catalog=:catalog and o.pk.catalogcode=:catalogcode",TgeneCatalogDetail.class) .setParameter("catalog", tramite.getTipoarchivo()) .setParameter("catalogcode", tramite.getTipoarchivocodigo()) .getSingleResult(); String resultado = "REPORTE".equalsIgnoreCase(tgeneCatalogDetail.getDescription())?"D":"CARNET".equalsIgnoreCase(tgeneCatalogDetail.getDescription())?"A":""; m.put("BPMStatus",resultado); m.put("tipoarchivo",resultado); } }