package com.fp.viaticos.rules.save.solicitud; import com.fp.common.helper.Constant; import com.fp.dto.rules.TransactionRule; import com.fp.dto.save.SaveRequest; import com.fp.persistence.pviaticos.solicitud.ViaSolicitud; import com.fp.sessionbeans.helper.Sequence; /** * Clase que se encarga de completar información de una solicitud de viaticos. * * @author Jorge Vaca. * @version 2.1 */ public class Solicitud 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 { if (Constant.ifYes((String) pSaveRequest.get("isnew")) || pSaveRequest.get("csolicitud") != null) { return pSaveRequest; } String codSolicitud = null; ViaSolicitud viasolicitud = (ViaSolicitud) pSaveRequest.getSaveBeanModifiedObject("SOLICITUD"); if (viasolicitud == null) { return pSaveRequest; } codSolicitud = viasolicitud.getPk().getCod_solicitud(); if (viasolicitud.getPk().getCod_solicitud() == null) { codSolicitud = this.getCodigoSolicitud(); viasolicitud.getPk().setCod_solicitud(codSolicitud); pSaveRequest.put("csolicitud", codSolicitud); } 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("VIATICOS").toString()); return solcitud.toString(); } }