maia/.svn/pristine/10/10ec8a0ca7cc2cb27ea9ef9abf8...

60 lines
2.7 KiB
Plaintext
Executable File

package com.fp.armas.task;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.persistence.EntityManager;
import javax.persistence.Query;
import com.fp.persistence.commondb.PersistenceHelper;
import com.fp.persistence.parmas.soli.TarmDocumentoHabilitante;
import com.fp.simple.action.TaskAction;
public class FinalizarDocumentoHabilitante extends TaskAction {
private EntityManager em;
private static final String QUERY_DOCUMENTOS_ACTUALIZAR = "SELECT p from TarmDocumentoHabilitante p where p.ctramite in (SELECT o.ctramitepadre FROM TarmTramite o WHERE o.pk=:codigotramite) and p.estado <> 'FIN' order by p.fechaemision desc";
/*
* (non-Javadoc)
*
* @see com.fp.simple.action.TaskAction#assignOwner(com.fp.dto.Request)
*/
@SuppressWarnings("unchecked")
@Override
public void assignOwner(Object pParam) throws Exception {
HashMap<String, Object> m = (HashMap<String, Object>) pParam;
Map<String, Object> mrequest = (Map<String, Object>) m.get("request");
if (mrequest.get("csolicitud") == null && mrequest.get("numerotransaccion") == null) { //mrequest.get("numerotransaccion")
return;
}
em=PersistenceHelper.getEntityManager();
//String csolicitud = (String)mrequest.get("csolicitud");
Long ctramite = (Long)mrequest.get("numerotransaccion");
//TarmSolicitudTramiteKey codigoSolicitudKey = new TarmSolicitudTramiteKey(csolicitud, ctramite);
//TarmSolicitudTramite solicitudTramite=TarmSolicitudTramite.find(em, codigoSolicitudKey);
TarmDocumentoHabilitante documentoHabilitante= getCodigoDocumentoHabilitanteFinalizar(ctramite);
// if(documentoHabilitante!=null){
// documentoHabilitante.setEstado("FIN");
// em.merge(documentoHabilitante);
// em.flush();
// }
}
private TarmDocumentoHabilitante getCodigoDocumentoHabilitanteFinalizar(Long codigotramite) throws Exception{
//tanto el tag como el arma deben estar relacionados entre si, no se puede producir el caso en que un tag este relacionado con mas de un arma y viceversa
TarmDocumentoHabilitante codigoDocumentohabilitanteActualizar = null;
Query query = PersistenceHelper.getEntityManager().createQuery(QUERY_DOCUMENTOS_ACTUALIZAR);
query.setParameter("codigotramite", codigotramite);
List<TarmDocumentoHabilitante> ltDocumentosHabilitantesSeleccionados = query.getResultList();
if(ltDocumentosHabilitantesSeleccionados != null && !ltDocumentosHabilitantesSeleccionados.isEmpty()){
codigoDocumentohabilitanteActualizar = ltDocumentosHabilitantesSeleccionados.get(0);
}
return codigoDocumentohabilitanteActualizar;
}
}