1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
package mova.ged.web.controllers;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import mova.ged.service.CaracManager;
import mova.ged.service.MaisonManager;
import mova.ged.web.containers.PersoEditeurContainer;
import mova.utils.ModeleMap;
import org.springframework.validation.BindException;
import org.springframework.validation.Errors;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractWizardFormController;
/**
*
* @author Mohicane
*/
public class PersoEditeurController extends AbstractWizardFormController {
private MaisonManager maisonManager;
private CaracManager caracManager;
@Override
protected Map referenceData(HttpServletRequest request, int page) throws Exception {
switch (page) {
case 0: return referenceDataChoixMaison(request);
case 1: return referenceDataChoixCaracs(request);
}
ModeleMap modele = new ModeleMap();
modele.put("maisons", maisonManager.getMaisons());
modele.put("caracs", caracManager.getCaracs());
return modele;
}
private Map referenceDataChoixMaison(HttpServletRequest request) throws Exception {
ModeleMap modele = new ModeleMap();
modele.put("maisons", maisonManager.getMaisons());
return modele;
}
private Map referenceDataChoixCaracs(HttpServletRequest request) throws Exception {
ModeleMap modele = new ModeleMap();
modele.put("caracs", caracManager.getCaracs());
modele.put("qualificatifs", CaracManager.QUALIFICATIF_NIVEAU);
return modele;
}
@Override
protected void validatePage(Object command, Errors error, int page) {
PersoEditeurContainer container = (PersoEditeurContainer)command;
switch (page) {
case 0: validateChoixMaison(container, error);
break;
case 1: validateChoixCaracs(container, error);
break;
}
}
private void validateChoixMaison(PersoEditeurContainer container, Errors error) {
System.out.println(container.getMaison());
if (container.getMaison() < 1) {
error.rejectValue("maison", "field.required", new Object[]{"maison"}, "");
} else if (container.getMaison() > maisonManager.getMaisons().size()) {
error.rejectValue("maison", "field.invalid", new Object[]{new Integer(container.getMaison()), "maison"}, "");
}
}
private void validateChoixCaracs(PersoEditeurContainer container, Errors error) {
System.out.println(container.getNiveau1() + " " + container.getPoints());
}
@Override
protected ModelAndView processFinish(HttpServletRequest request, HttpServletResponse response, Object command, BindException error) throws Exception {
return new ModelAndView("redirect:/user/accueil.html");
}
@Override
protected ModelAndView processCancel(HttpServletRequest request, HttpServletResponse response, Object command, BindException error) throws Exception {
return new ModelAndView("redirect:/user/accueil.html");
}
public MaisonManager getMaisonManager() {
return maisonManager;
}
public void setMaisonManager(MaisonManager maisonManager) {
this.maisonManager = maisonManager;
}
public CaracManager getCaracManager() {
return caracManager;
}
public void setCaracManager(CaracManager caracManager) {
this.caracManager = caracManager;
}
} |
Partager