package br.com.centralit.citcorpore.ajaxForms; import java.util.ArrayList; 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.CustoAdicionalProjetoDTO; import br.com.centralit.citcorpore.bean.ProjetoDTO; import br.com.centralit.citcorpore.bean.UsuarioDTO; import br.com.centralit.citcorpore.negocio.ClienteService; import br.com.centralit.citcorpore.negocio.CustoAdicionalProjetoService; import br.com.centralit.citcorpore.negocio.ProjetoService; import br.com.centralit.citcorpore.util.WebUtil; import br.com.citframework.service.ServiceLocator; import br.com.citframework.util.Constantes; public class CustoAdicionalProjeto extends AjaxFormAction { public Class getBeanClass() { return CustoAdicionalProjetoDTO.class; } public void load(DocumentHTML document, HttpServletRequest request, HttpServletResponse arg2) throws Exception { UsuarioDTO usuario = WebUtil.getUsuario(request); if (usuario == null){ document.alert("Sess�o expirada! Favor efetuar logon novamente!"); document.executeScript("window.location = '" + Constantes.getValue("SERVER_ADDRESS") + request.getContextPath() + "'"); return; } /* if (!WebUtil.isUserInGroup(request, Constantes.getValue("GRUPO_FSW_GPROJ")) && !WebUtil.isUserInGroup(request, Constantes.getValue("GRUPO_DIRETORIA"))){ document.alert("Voc� n�o tem permiss�o para acessar esta funcionalidade!"); document.executeScript("window.location = '" + Constantes.getValue("SERVER_ADDRESS") + request.getContextPath() + "/pages/index/index.jsp'"); return; } */ HTMLSelect comboTipoCusto = (HTMLSelect) document.getSelectById("tipoCusto"); HTMLSelect comboClientes = (HTMLSelect) document.getSelectById("idCliente"); comboTipoCusto.addOption("", "-- Selecione --"); comboTipoCusto.addOption("C", "Despesas de Comerciais com o Projeto"); //Despesas de Comerciais com o Projeto comboTipoCusto.addOption("L", "Despesas de Locomo��o (Taxi, etc.)"); //Despesas de Locomocao (Taxi, ...) comboTipoCusto.addOption("V", "Despesas de Viagem"); //Despesas de Viagem comboTipoCusto.addOption("D", "Di�rias de Hotel"); //Di�rias de Hotel comboTipoCusto.addOption("M", "Material"); //Material comboTipoCusto.addOption("O", "Outros"); //Outros comboTipoCusto.addOption("H", "Recursos Humanos"); //Humano comboTipoCusto.addOption("R", "Refei��o (Almo�o, lanches, etc.)"); //Refeicao ClienteService clienteService = (ClienteService) ServiceLocator.getInstance().getService(ClienteService.class, null); Collection colClientes = clienteService.list(); comboClientes.addOption("", "--"); comboClientes.addOptions(colClientes, "idCliente", "nomeFantasia", null); document.focusInFirstActivateField(null); } public void idCliente_onchange(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception{ CustoAdicionalProjetoDTO custoAdicional = (CustoAdicionalProjetoDTO) document.getBean(); ProjetoService projetoService = (ProjetoService) ServiceLocator.getInstance().getService(ProjetoService.class, null); ProjetoDTO prjPesq = new ProjetoDTO(); prjPesq.setIdCliente(custoAdicional.getIdCliente()); prjPesq.setSituacao("A"); Collection colProjetos = new ArrayList(); if (custoAdicional.getIdCliente() != null){ colProjetos = projetoService.find(prjPesq); } HTMLSelect comboProjeto = (HTMLSelect) document.getSelectById("idProjeto"); comboProjeto.removeAllOptions(); comboProjeto.addOption("", "--"); comboProjeto.addOptions(colProjetos, "idProjeto", "nomeProjeto", null); document.alert("Selecione o Projeto!"); } public void save(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception{ CustoAdicionalProjetoDTO custoAdicional = (CustoAdicionalProjetoDTO) document.getBean(); CustoAdicionalProjetoService cusAddService = (CustoAdicionalProjetoService) ServiceLocator.getInstance().getService(CustoAdicionalProjetoService.class, null); if (custoAdicional.getIdCustoAdicional()==null || custoAdicional.getIdCustoAdicional().intValue()==0){ cusAddService.create(custoAdicional); }else{ cusAddService.update(custoAdicional); } HTMLForm form = document.getForm("form"); form.clear(); document.alert("Registro gravado com sucesso!"); } public void restore(DocumentHTML document, HttpServletRequest request, HttpServletResponse response) throws Exception{ CustoAdicionalProjetoDTO custoAdicional = (CustoAdicionalProjetoDTO) document.getBean(); CustoAdicionalProjetoService cusAddService = (CustoAdicionalProjetoService) ServiceLocator.getInstance().getService(CustoAdicionalProjetoService.class, null); custoAdicional = (CustoAdicionalProjetoDTO) cusAddService.restore(custoAdicional); ProjetoService projetoService = (ProjetoService) ServiceLocator.getInstance().getService(ProjetoService.class, null); ProjetoDTO prjPesq = new ProjetoDTO(); prjPesq.setIdProjeto(custoAdicional.getIdProjeto()); prjPesq = (ProjetoDTO) projetoService.restore(prjPesq); custoAdicional.setIdCliente(prjPesq.getIdCliente()); prjPesq = new ProjetoDTO(); prjPesq.setIdCliente(custoAdicional.getIdCliente()); prjPesq.setSituacao("A"); Collection colProjetos = new ArrayList(); if (custoAdicional.getIdCliente() != null){ colProjetos = projetoService.find(prjPesq); } HTMLSelect comboProjeto = (HTMLSelect) document.getSelectById("idProjeto"); comboProjeto.removeAllOptions(); comboProjeto.addOption("", "--"); comboProjeto.addOptions(colProjetos, "idProjeto", "nomeProjeto", null); HTMLForm form = document.getForm("form"); form.clear(); form.setValues(custoAdicional); document.alert("Registro recuperado !"); } }