public void validate(Object command, Errors errors) { Enforcement ea = (Enforcement) command; if (!DataDictionaryValidator.validateLiftDate(DateUtil.formatDate(ea.getLiftDate()), true)) { errors.reject("error.LiftDate"); } }
private void setDates(Enforcement ea, String suspensionPeriod) { ea.setEnfActionBegDate(new Date()); if (suspensionPeriod != null) { int suspensionDays = Integer.parseInt(suspensionPeriod); ea.setEnfActionEndDate( DateUtil.getFutureDateAsDate(ea.getEnfActionBegDate(), suspensionDays)); } else { ea.setEnfActionEndDate(Utility.INDEFINITE); } }
private Enforcement createEa( String eaCode, String eaStatus, HashMap<String, Object> processorHashmap, Conviction[] allOffenses) throws Exception { Applicant app = (Applicant) processorHashmap.get("applicant"); Conviction conv = (Conviction) processorHashmap.get("conviction"); String suspensionPeriod = (String) processorHashmap.get("suspensionPeriod"); Enforcement tempNewEA = new Enforcement(); tempNewEA.setApplicant(app); tempNewEA.setEnfActionCode(eaCode); setDates(tempNewEA, suspensionPeriod); tempNewEA.setStatus(eaStatus); if (conv != null) { if (tempNewEA.getConvictions() == null) { tempNewEA.setConvictions(new HashSet<Object>()); } tempNewEA.getConvictions().add(conv); tempNewEA.getConvictions().addAll(Arrays.asList(allOffenses)); } // Save the new enforcement try { eaDao.save(tempNewEA); } catch (DataAccessException e) { throw getBaseExceptionType( "DB Error: Failure to save new enforcement " + " for applicant (SSN : " + app.getSsn() + " )", e, logger, LOG_DEBUG); } return tempNewEA; }
protected void processSuspension( HashMap<String, Object> processorHashmap, String suspensionPeriod, Conviction[] allOffenses) throws ParseException, Exception { if (suspensionPeriod != null) { System.out.println("suspensionPeriod: " + suspensionPeriod); // Create the EA Enforcement newEA = createEa("9000", DLRConstants.ENF_STATUS_PROBATED, processorHashmap, allOffenses); vaDao.saveEventAudit( newEA.getApplicant().getId(), "Enforcement", (String) ListDataLoader.ALLENFORCEMENTACTIONCODES.get(newEA.getEnfActionCode()) + " Submitted"); if (logger.isDebug()) { logger.debug( "added new enforcement: id = " + newEA.getId() + " : app.id = " + newEA.getApplicant().getId()); } processorHashmap.put("eaId", newEA.getId()); // for uniqueness of // letter generated. // generate suspension letter generatePDFLetter(processorHashmap); Applicant app = (Applicant) processorHashmap.get("applicant"); vaDao.updateApplicantStatus(app.getId(), LiConstants.RecordStatus.NOT_ELIGIBLE); vaDao.updateIssuanceStatus( newEA.getApplicant().getId(), LiConstants.IssuanceStatus.SUSPENDED, DLRConstants.CARDTYPE_DRIVER_LICENSE); // vaDao.saveEventAudit(newEA.getApplicant().getId(), // "Enforcement Action", "Insert EA(6940) "); } else { // Create the EA Enforcement newEA = createEa( "9001", DLRConstants.ENF_STATUS_EVAL_FURTHER_ACTION, processorHashmap, allOffenses); vaDao.saveEventAudit( newEA.getApplicant().getId(), "Enforcement", (String) ListDataLoader.ALLENFORCEMENTACTIONCODES.get(newEA.getEnfActionCode()) + " Submitted"); System.out.println(newEA.getId()); Applicant app = (Applicant) processorHashmap.get("applicant"); if (logger.isDebug()) { logger.debug("added new enforcement: id = " + newEA.getId() + " : app.id = " + app.getId()); } AdminStatus as = new AdminStatus(); as.setAppliedDate(new Timestamp(new Date().getTime())); as.setStatus(DLRConstants.ADMIN_STATUS_FEE_OWED); as.setApplicant(app); as.setEnfActionId(newEA.getId()); AdminStatusFee adminStatusFee = new AdminStatusFee(); adminStatusFee.setStatus(as.getStatus()); adminStatusFee.setAsfsAdminFee(new BigDecimal("500.00")); adminStatusFee.setAdminStatus(as); Set adminStatusFees = new HashSet(); adminStatusFees.add(adminStatusFee); as.setAdminStatusFees(adminStatusFees); try { appDao.saveOrUpdateObject(as); } catch (DataAccessException e) { throw getBaseExceptionType( "Failure to update applicant (SSN : " + app.getSsn() + " ) - " + e.getMessage(), e, logger, LOG_DEBUG); } vaDao.saveEventAudit(app.getId(), "Admin Status", " Fee Owed Submitted"); vaDao.updateIssuanceStatus( app.getId(), LiConstants.IssuanceStatus.SUSPENDED, app.getOccupationalDL().getCardType()); processorHashmap.put("eaId", newEA.getId()); // for uniqueness of // letter generated. // processing for applicant // generate suspension letter, add admin status and update issuance // status generatePDFLetter(processorHashmap); } }