@Override protected StepProcessingResult determineNextStepNumOnStepProcessing( Service36400168Form form, boolean goback, Map<String, Object> model) { StepProcessingResult stepProcessingResult = super.determineNextStepNumOnStepProcessing(form, goback, model); if (stepProcessingResult.getStepNum() == 2) { if ("off".equalsIgnoreCase(form.getDov_enable())) { stepProcessingResult = new StepProcessingResult(2, "step2applicant.html"); } else { stepProcessingResult = new StepProcessingResult(2, "step2representative.html"); } } return stepProcessingResult; }
@Override protected void patchModelAndFormOnStepProcessing( Service36400168Form form, Map<String, Object> model, StepProcessingResult stepProcessingResult) { super.patchModelAndFormOnStepProcessing(form, model, stepProcessingResult); if (stepProcessingResult.getStepNum() == 2 && form.getDov_enable_changed().booleanValue()) { if ("off".equalsIgnoreCase(form.getDov_enable())) { form.fillApplicantAttributesWithPrivateRoomData(this.getPrivateRoomDataContainer()); } else { form.clearApplicantAttributes(); } form.setDov_enable_changed(false); } }
@Override protected Map<String, Object> formToMap( Service36400168Form form) { // вызывается только перед формированием SOAP-запроса в ведомство Map<String, Object> formAsMap = super.formToMap(form); FormAsMap decoratedFormAsMap = new FormAsMapImpl(formAsMap); decoratedFormAsMap.clearForOrdering(); // Шаг 1 - // Шаг 2 if ("off".equalsIgnoreCase(form.getDov_enable())) { decoratedFormAsMap.clearFileLoadField("dovDovLoad"); decoratedFormAsMap.clearFileLoadField("dovPasLoad"); } // Шаг 3 - return formAsMap; }