Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.fitbank.view.maintenance;
- import com.fitbank.common.ApplicationDates;
- import com.fitbank.common.BeanManager;
- import com.fitbank.common.exception.FitbankException;
- import com.fitbank.common.hb.UtilHB;
- import com.fitbank.dto.management.Detail;
- import com.fitbank.dto.management.Record;
- import com.fitbank.dto.management.Table;
- import com.fitbank.processor.maintenance.MaintenanceCommand;
- /**
- * Comando para validar el numero de registros a ser caducados
- * debe tener como minimo un firmante sin caducar por numero d cuenta
- * Fit
- */
- public class ValidateExpiredRecord extends MaintenanceCommand{
- private static final String hqlREGISTROSPORCUENTA =
- "SELECT count(t.pk.ccuenta) " +
- "FROM com.fitbank.hb.persistence.acco.view.Tsignatoryaccount t "+
- "WHERE t.pk.fhasta =:fhasta "+
- " and t.pk.ccuenta =:ccuenta";
- public Detail executeNormal(Detail pdetail) throws Exception {
- String ccuenta=null;
- for(Table tbl:pdetail.getTables()){
- for (Record rec : tbl.getRecords() )
- {
- ccuenta = (String)BeanManager.convertObject(rec.findFieldByName("CCUENTA").getValue(),String.class);
- break;
- }
- break;
- }
- UtilHB utilHB = new UtilHB();
- utilHB.setSentence(ValidateExpiredRecord.hqlREGISTROSPORCUENTA);
- utilHB.setDate("fhasta", ApplicationDates.getDefaultExpiryDate());
- utilHB.setString("ccuenta", ccuenta);
- utilHB.setReadonly(true);
- Object obj = utilHB.getObject();
- int contador = Integer.parseInt(obj.toString());
- int cont = 0;
- Table tbl = pdetail.findTableByName("TCUENTAFIRMANTES");
- for (Record rec:tbl.getRecords()){
- if(rec.findFieldByName("versioncontrol").getStringValue().compareTo("-1")==0){
- ++cont;
- }
- }
- if((contador-cont)>1 && cont > 0){
- return pdetail;
- }
- else{
- throw new FitbankException("PER0099", "DEBE HABER MINIMO UN FIRMANTE ACTIVO");
- }
- }
- @Override
- public Detail executeReverse(Detail pDetail) throws Exception {
- return pDetail;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement