84 lines
3.0 KiB
Plaintext
Executable File
84 lines
3.0 KiB
Plaintext
Executable File
package com.fp.armas.rules.save.solicitud;
|
|
|
|
import java.util.List;
|
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
|
import com.fp.dto.rules.TransactionRule;
|
|
import com.fp.dto.save.SaveRequest;
|
|
import com.fp.persistence.commondb.PersistenceHelper;
|
|
import com.fp.persistence.parmas.soli.TarmInspeccion;
|
|
import com.fp.persistence.parmas.soli.TarmInspeccionArchivo;
|
|
import com.fp.sessionbeans.helper.Sequence;
|
|
|
|
/**
|
|
* Clase que se encarga de completar información de una solicitud de control de armas.
|
|
*
|
|
* @author C.P.
|
|
* @version 2.1
|
|
*/
|
|
public class RegistroInspeccion extends TransactionRule {
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
/*
|
|
* (non-Javadoc)
|
|
*
|
|
* @see com.fp.dto.rules.TransactionRule#normalProcess(com.fp.dto.save.SaveRequest)
|
|
*/
|
|
@Override
|
|
public SaveRequest normalProcess(SaveRequest pSaveRequest) throws Exception {
|
|
List<Object> inspeccion = (List<Object>)pSaveRequest.getSaveBeanModifiedRecords("INSPECCION");
|
|
if(inspeccion!=null){
|
|
List<Object> archivoList = (List<Object>)pSaveRequest.getSaveBeanModifiedRecords("INSPECCIONARCHIVO");
|
|
TarmInspeccion tarmInspeccion = (TarmInspeccion)inspeccion.get(0);
|
|
tarmInspeccion.setPk(Long.valueOf(getCodigoSolicitud()));
|
|
tarmInspeccion.setNumordentrabajo(getNumeroTransaccion("TRA",tarmInspeccion.getPk().toString()));
|
|
PersistenceHelper.getEntityManager().persist(tarmInspeccion);
|
|
if(archivoList!=null && archivoList.size()>0){
|
|
for(Object obj:archivoList){
|
|
TarmInspeccionArchivo archivo=(TarmInspeccionArchivo)obj;
|
|
archivo.setCinspeccion(tarmInspeccion.getPk());
|
|
PersistenceHelper.getEntityManager().persist(archivo);
|
|
}
|
|
}
|
|
PersistenceHelper.getEntityManager().flush();
|
|
pSaveRequest.getResponse().put("numerotrabajo", tarmInspeccion.getNumordentrabajo());
|
|
}
|
|
|
|
return pSaveRequest;
|
|
}
|
|
|
|
/*
|
|
* (non-Javadoc)
|
|
*
|
|
* @see com.fp.dto.rules.TransactionRule#reverseProcess(com.fp.dto.save.SaveRequest)
|
|
*/
|
|
@Override
|
|
public SaveRequest reverseProcess(SaveRequest pSaveRequest) throws Exception {
|
|
return pSaveRequest;
|
|
}
|
|
|
|
/**
|
|
* Metodo que devuelve la secuencia de una solicitud de viaticos.
|
|
*
|
|
* @return Codigo de la nueva solicitud de viaticos.
|
|
* @throws Exception
|
|
*/
|
|
private String getCodigoSolicitud() throws Exception {
|
|
Sequence sequence = new Sequence();
|
|
Integer solcitud = Integer.valueOf(sequence.getNextValue("CINSPECCION").toString());
|
|
return solcitud.toString();
|
|
}
|
|
|
|
/**
|
|
* Metodo para generar el numero de trabajo
|
|
* @param prefijo
|
|
* @param secuencia
|
|
* @return String
|
|
*/
|
|
private String getNumeroTransaccion(String prefijo,String secuencia){
|
|
return prefijo+"-"+StringUtils.leftPad(secuencia, 9, '0');
|
|
}
|
|
}
|