package com.fp.armas.task; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.persistence.EntityManager; import com.fp.persistence.commondb.PersistenceHelper; import com.fp.persistence.parmas.param.TarmCentroControl; import com.fp.persistence.parmas.soli.TarmDecomisoArma; import com.fp.persistence.parmas.soli.TarmDecomisoArmaTransaccion; import com.fp.persistence.pgeneral.gene.TgeneCatalogDetail; import com.fp.persistence.pgeneral.gene.TgeneCatalogDetailKey; import com.fp.simple.action.TaskAction; /** * Clase que se encarga de fijar el valor de deposito para la solicitud * @author Christian Pazmino * @version 2.1 */ public class ValidarUnidadInstitucion 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 { System.out.println("Rutina que determina si es un CENTRO DE CONTROL DE ARMAS"); HashMap m = (HashMap) pParam; Map mrequest = (Map) m.get("request"); if (mrequest.get("numerotransaccion") == null) { return; } // DETERMINA SI ES CENTRO DE CONTROL SE DEBE CONTINUAR EL FLUJO O TERMINAR SI ES OTRA INSTITUCION Boolean esCentroControlArmas = Boolean.FALSE; EntityManager em = PersistenceHelper.getEntityManager(); TarmDecomisoArmaTransaccion decomisoArmaTransaccionObj = TarmDecomisoArmaTransaccion.find(PersistenceHelper.getEntityManager(), Long.parseLong(mrequest.get("numerotransaccion").toString())); if(decomisoArmaTransaccionObj!=null){ TarmCentroControl centroControlObj = TarmCentroControl.find(em, decomisoArmaTransaccionObj.getCcentrocontrol()); // SI ES UN DEPARTAMENTO DE CONTROL DE ARMAS if(centroControlObj!=null && centroControlObj.getInstitucion()!=null && centroControlObj.getInstitucion().equals("1")){ esCentroControlArmas = Boolean.TRUE; } } if(esCentroControlArmas){ m.put("BPMStatus","A"); } else{ m.put("BPMStatus","D"); } } }