/** * */ package br.com.centralit.citcorpore.ajaxForms; import java.util.Collection; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import br.com.centralit.citajax.html.AjaxFormAction; import br.com.centralit.citajax.html.DocumentHTML; import br.com.centralit.citajax.html.HTMLForm; import br.com.centralit.citajax.html.HTMLSelect; import br.com.centralit.citcorpore.bean.AlcadaDTO; import br.com.centralit.citcorpore.bean.GrupoDTO; import br.com.centralit.citcorpore.bean.LimiteAlcadaDTO; import br.com.centralit.citcorpore.negocio.AlcadaService; import br.com.centralit.citcorpore.negocio.GrupoService; import br.com.centralit.citcorpore.negocio.LimiteAlcadaService; import br.com.centralit.citcorpore.util.WebUtil; import br.com.citframework.excecao.ServiceException; import br.com.citframework.service.ServiceLocator; import br.com.citframework.util.UtilI18N; /** * @author rodrigo.oliveira * */ public class LimiteAlcada extends AjaxFormAction { private GrupoService grupoService; private LimiteAlcadaService limiteAlcadaService; private AlcadaService alcadaService; @Override public Class<LimiteAlcadaDTO> getBeanClass() { return LimiteAlcadaDTO.class; } @Override public void load(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception { preencheComboAlcada(document, request); preencheComboGrupo(document, request); } private void inicializaCombo(HTMLSelect componenteCombo, HttpServletRequest request) { componenteCombo.removeAllOptions(); componenteCombo.addOption("", UtilI18N.internacionaliza(request, "citcorpore.comum.selecione")); } private void preencheComboGrupo(DocumentHTML document, HttpServletRequest request) throws Exception { HTMLSelect combo = (HTMLSelect) document.getSelectById("idGrupo"); inicializaCombo(combo, request); Collection<GrupoDTO> listaCategoriaAux = getGrupoService().list(); for (GrupoDTO c : listaCategoriaAux) { if (c.getDataFim() == null) { combo.addOption(c.getIdGrupo().toString(), c.getNome()); } } } private void preencheComboAlcada(DocumentHTML document, HttpServletRequest request) throws Exception { HTMLSelect combo = (HTMLSelect) document.getSelectById("idAlcada"); inicializaCombo(combo, request); Collection<AlcadaDTO> listaAlcada = getAlcadaService().list(); for (AlcadaDTO c : listaAlcada) { if (c.getSituacao().equalsIgnoreCase("A")) { combo.addOption(c.getIdAlcada().toString(), c.getNomeAlcada()); } } } public void save(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception { LimiteAlcadaDTO limiteAlcadaDto = (LimiteAlcadaDTO) document.getBean(); if (limiteAlcadaDto.getIdLimiteAlcada() == null || limiteAlcadaDto.getIdLimiteAlcada() == 0) { getLimiteAlcadaService(request).create(limiteAlcadaDto); document.alert(UtilI18N.internacionaliza(request, "MSG05")); } else { getLimiteAlcadaService(request).update(limiteAlcadaDto); document.alert(UtilI18N.internacionaliza(request, "MSG06")); } HTMLForm form = document.getForm("form"); form.clear(); } public void delete(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception { LimiteAlcadaDTO limiteAlcadaDto = (LimiteAlcadaDTO) document.getBean(); if (limiteAlcadaDto.getIdLimiteAlcada().intValue() > 0) { getLimiteAlcadaService(request).delete(limiteAlcadaDto); } HTMLForm form = document.getForm("form"); form.clear(); } public void restore(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception { LimiteAlcadaDTO limiteAlcadaDto = (LimiteAlcadaDTO) document.getBean(); limiteAlcadaDto = (LimiteAlcadaDTO) getLimiteAlcadaService(request).restore(limiteAlcadaDto); HTMLForm form = document.getForm("form"); form.clear(); form.setValues(limiteAlcadaDto); } private GrupoService getGrupoService() throws ServiceException, Exception{ if(grupoService == null){ grupoService = (GrupoService) ServiceLocator.getInstance().getService(GrupoService.class, null);; } return grupoService; } private AlcadaService getAlcadaService() throws ServiceException, Exception{ if(alcadaService == null){ alcadaService = (AlcadaService) ServiceLocator.getInstance().getService(AlcadaService.class, null);; } return alcadaService; } public LimiteAlcadaService getLimiteAlcadaService(HttpServletRequest request) throws ServiceException, Exception { if(limiteAlcadaService == null){ limiteAlcadaService = (LimiteAlcadaService) ServiceLocator.getInstance().getService(LimiteAlcadaService.class, WebUtil.getUsuarioSistema(request)); } return limiteAlcadaService; } }