68 lines
2.4 KiB
Plaintext
Executable File
68 lines
2.4 KiB
Plaintext
Executable File
package com.fp.armas.task;
|
|
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import com.fp.persistence.commondb.PersistenceHelper;
|
|
import com.fp.persistence.parmas.soli.TarmBodega;
|
|
import com.fp.persistence.parmas.soli.TarmDecomisoArma;
|
|
import com.fp.persistence.parmas.soli.TarmDecomisoArmaTransaccion;
|
|
import com.fp.simple.action.TaskAction;
|
|
|
|
/**
|
|
* Clase que se encarga de setear a nulos aquellas armas que recibieron asignacion de codigos
|
|
*
|
|
*/
|
|
public class RechazarActa extends TaskAction {
|
|
private static String SQL = "select o from TarmBodega o where o.pk in (select max(t.pk) from TarmBodega t where t.carma=:ccarma and t.ccentrocontrol=:ccentrocontrol) order by o.carma";
|
|
|
|
/*
|
|
* (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");
|
|
Long numeroTransacion=Long.parseLong(mrequest.get("numerotransaccion").toString());
|
|
if (numeroTransacion == null) {
|
|
return;
|
|
}
|
|
|
|
List<TarmDecomisoArma> lstDecomisoArma = PersistenceHelper.getEntityManager().
|
|
createQuery("select o from TarmDecomisoArma o where o.cdecomisoarmatransaccion=:decomiso",TarmDecomisoArma.class)
|
|
.setParameter("decomiso", numeroTransacion).getResultList();
|
|
|
|
for(TarmDecomisoArma decomisoArma:lstDecomisoArma){
|
|
bodegaEliminar(numeroTransacion, decomisoArma.getCarma());
|
|
decomisoArma.setCdecomisoarmatransaccion(null);
|
|
PersistenceHelper.saveOrUpdate(decomisoArma);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* @param ccentrocontrol
|
|
* @param decomisoArma
|
|
*/
|
|
private void bodegaEliminar(Long numeroTransacion,
|
|
String carma) throws Exception {
|
|
TarmDecomisoArmaTransaccion tarmDecomisoArmaTransaccion = TarmDecomisoArmaTransaccion
|
|
.find(PersistenceHelper.getEntityManager(), numeroTransacion);
|
|
|
|
String ccentrocontrol = tarmDecomisoArmaTransaccion.getCcentrocontrol();
|
|
TarmBodega tarmBodegas = (TarmBodega) PersistenceHelper
|
|
.getEntityManager().createQuery(SQL)
|
|
.setParameter("ccentrocontrol", ccentrocontrol)
|
|
.setParameter("ccarma", carma)
|
|
.getSingleResult();
|
|
PersistenceHelper.getEntityManager().remove(tarmBodegas);
|
|
PersistenceHelper.getEntityManager().flush();
|
|
}
|
|
|
|
}
|