maia_modificado/.svn/pristine/27/27a24031ddc5a34767e1b8e274d...

68 lines
2.3 KiB
Plaintext
Executable File

package com.fp.armas.rules.save.armas;
import java.util.List;
import com.fp.dto.rules.TransactionRule;
import com.fp.dto.save.SaveRequest;
import com.fp.persistence.parmas.soli.TarmCabRepDestruirArmas;
import com.fp.persistence.parmas.soli.TarmDetRepDestruirArmas;
import com.fp.sessionbeans.helper.Sequence;
/**
* Registra las armas y el registro de armas
* @author Christian Pazmino
*
*/
public class ReporteArmasDecomisadas extends TransactionRule {
private static final long serialVersionUID = 1L;
@Override
public SaveRequest normalProcess(SaveRequest pSaveRequest) throws Exception {
if (this.isNew(pSaveRequest)) {
return pSaveRequest;
}
TarmCabRepDestruirArmas cabeceraReporteObj = (TarmCabRepDestruirArmas)pSaveRequest.getSaveBeanModifiedObject("CABREPORTEDESTRUIRARMAS");
if(cabeceraReporteObj != null){
cabeceraReporteObj.setPk(getCodigoReporte());
pSaveRequest.put("creporte", cabeceraReporteObj.getPk());
String nombreReporte="BAJ-"+cabeceraReporteObj.getPk()+".pdf";
pSaveRequest.getResponse().put("creporte", cabeceraReporteObj.getPk());
cabeceraReporteObj.setXpath(cabeceraReporteObj.getXpath()+"/cm:"+nombreReporte);
pSaveRequest.put("xpath", cabeceraReporteObj.getXpath());
pSaveRequest.getResponse().put("nombreReporte", nombreReporte);
pSaveRequest.getResponse().put("creporte", cabeceraReporteObj.getPk());
pSaveRequest.getResponse().put("xpath", cabeceraReporteObj.getXpath());
List<Object> armasReporteLst = pSaveRequest.getSaveBeanModifiedRecords("DETREPORTEDESTRUIRARMAS");
for (Object arma : armasReporteLst) {
TarmDetRepDestruirArmas armaObj = (TarmDetRepDestruirArmas)arma;
armaObj.setPk(getCodigoDetReporte());
armaObj.setCreporte(cabeceraReporteObj.getPk());
}
}
return pSaveRequest;
}
@Override
public SaveRequest reverseProcess(SaveRequest pSaveRequest) throws Exception {
return pSaveRequest;
}
private Integer getCodigoReporte() throws Exception{
Sequence sequence = new Sequence();
Integer creporte = sequence.getNextValue("TARMREPORTEDESTRUIRARMAS").intValue();
return creporte;
}
private Integer getCodigoDetReporte() throws Exception{
Sequence sequence = new Sequence();
Integer carma = sequence.getNextValue("TARMDETREPORTEDESTRUIRARMAS").intValue();
return carma;
}
}