diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java index 377fb3f25..e9365323a 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarEmpresaController.java @@ -21,6 +21,7 @@ import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Calendar; import java.util.Enumeration; import java.util.HashMap; @@ -60,6 +61,7 @@ import org.zkoss.zul.Messagebox; import org.zkoss.zul.Radio; import org.zkoss.zul.Row; import org.zkoss.zul.Tab; +import org.zkoss.zul.Tabbox; import org.zkoss.zul.Textbox; import com.rjconsultores.ventaboletos.constantes.ConstantesFuncionSistema; @@ -73,6 +75,7 @@ import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.EmpresaContaBancaria; import com.rjconsultores.ventaboletos.entidad.EmpresaEmail; import com.rjconsultores.ventaboletos.entidad.EmpresaEmailConfig; +import com.rjconsultores.ventaboletos.entidad.EmpresaEmailEComerce; import com.rjconsultores.ventaboletos.entidad.EmpresaEmailFlexBus; import com.rjconsultores.ventaboletos.entidad.EmpresaImposto; import com.rjconsultores.ventaboletos.entidad.EmpresaSaferConfig; @@ -83,10 +86,13 @@ import com.rjconsultores.ventaboletos.entidad.InstiFinanceira; import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.TipoEventoExtra; import com.rjconsultores.ventaboletos.enums.TipoCstGratuidade; +import com.rjconsultores.ventaboletos.enums.TipoEmail; +import com.rjconsultores.ventaboletos.enums.TipoOperacaoECommerce; import com.rjconsultores.ventaboletos.exception.BusinessException; import com.rjconsultores.ventaboletos.service.CategoriaService; import com.rjconsultores.ventaboletos.service.CiudadService; import com.rjconsultores.ventaboletos.service.EmpresaEmailConfigService; +import com.rjconsultores.ventaboletos.service.EmpresaEmailEComerceService; import com.rjconsultores.ventaboletos.service.EmpresaEmailFlexBusService; import com.rjconsultores.ventaboletos.service.EmpresaEmailService; import com.rjconsultores.ventaboletos.service.EmpresaImpostoService; @@ -143,6 +149,8 @@ public class EditarEmpresaController extends MyGenericForwardComposer { @Autowired private EmpresaEmailService empresaEmailService; @Autowired + private EmpresaEmailEComerceService empresaEmailEComerceService; + @Autowired private EmpresaEmailConfigService empresaEmailConfigService; @Autowired private EmpresaEmailFlexBusService empresaEmailFlexBusService; @@ -151,6 +159,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private Empresa empresa; private EmpresaEmail empresaEmail; + private EmpresaEmailEComerce empresaEmailEComerce; private EmpresaEmailConfig empresaEmailConfig; private EmpresaEmailFlexBus empresaEmailFlexBus; private EmpresaSaferConfig empresaSaferConfig; @@ -190,6 +199,8 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private CKeditor messageCupomEmbarqueFlexBus; private MyComboboxEstandar cmbTipoAutorizacaoFlexBus; + private Textbox textAssuntoECommerce; + private Radio rdgFechaVenta; private Radio rdgFechaSalida; private Radio rdgRestringeZSim; @@ -350,6 +361,9 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private CKeditor messageConteudoEmailFiscal; private CKeditor messageCupomEmbarque; + private CKeditor messageConteudoEmailECommerce; + private CKeditor messageAnexo1Ecommerce; + private CKeditor ckCampoCustomVoucher; private Row rowNumFolio; @@ -370,6 +384,15 @@ public class EditarEmpresaController extends MyGenericForwardComposer { private Tab tabSafer; private Checkbox chkIndCheckinBloqueadoNoshow; private Checkbox chkIndAgrupamentoLocalidadeConexao; + + private Combobox cmbTipoEmail; + private Combobox cmbTipoOperacao; + + private Tabbox tabCallCenter; + private Tabbox tabECommerce; + private List lsTipoEmail; + private List lsTipoOperacao; + private Label lblTipoEmail; private static final String EMAIL_PATTERN = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@" + "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$"; @@ -381,7 +404,7 @@ public class EditarEmpresaController extends MyGenericForwardComposer { lsCategorias = categoriaService.obtenerTodasCategoriasVisibles(); lsFormaPagos = formaPagoService.obtenerTodos(); lsTipoEventoExtras = tipoEventoExtraService.obtenerTodos(); - + empresa = (Empresa) Executions.getCurrent().getArg().get("empresa"); empresaList = (MyListbox) Executions.getCurrent().getArg().get("empresaList"); @@ -404,6 +427,15 @@ public class EditarEmpresaController extends MyGenericForwardComposer { popularCombobox(); + if (empresa != null && empresa.getEmpresaId() != null) { + TipoOperacaoECommerce tipoOperacaoECommerce = TipoOperacaoECommerce.COMPRA_PASSAGEM; + empresaEmailEComerce = empresaEmailEComerceService.buscarPorEmpresa(empresa, tipoOperacaoECommerce.getId().toString()); + cmbTipoOperacao.setValue(tipoOperacaoECommerce.getDescricao()); + } + + lsTipoEmail = Arrays.asList(TipoEmail.values()); + lsTipoOperacao = Arrays.asList(TipoOperacaoECommerce.values()); + this.imgIndMantemVdaCajaVdaEmbarcada.setTooltiptext(Labels.getLabel("editarEmpresaController.mantemVdaCajaVdaEmbarcada.ajuda", new Object[] {"\n"})); if (empresa.getEmpresaId() == null) { @@ -991,6 +1023,16 @@ public class EditarEmpresaController extends MyGenericForwardComposer { preencheInformacoesSaferConfig(); empresaSaferConfigService.actualizacion(empresaSaferConfig); } + + if (empresaEmailEComerce == null) { + empresaEmailEComerce = new EmpresaEmailEComerce(); + empresaEmailEComerce.setEmpresa(empresa); + preencheInformacoesEmpresaEmailECommerce(); + empresaEmailEComerce = empresaEmailEComerceService.suscribir(empresaEmailEComerce); + } else { + preencheInformacoesEmpresaEmailECommerce(); + empresaEmailEComerceService.actualizacion(empresaEmailEComerce); + } Messagebox.show(Labels.getLabel("editarEmpresaController.MSG.suscribirOK"), Labels.getLabel("editarEmpresaController.window.title"), @@ -1024,6 +1066,12 @@ public class EditarEmpresaController extends MyGenericForwardComposer { empresaEmail.setTextoEmail(messageConteudoEmail.getValue()); empresaEmail.setTextoEmailFiscal(messageConteudoEmailFiscal.getValue()); } + + private void preencheInformacoesEmpresaEmailECommerce() { + empresaEmailEComerce.setAssunto(textAssuntoECommerce.getValue()); + empresaEmailEComerce.setAnexo1(messageAnexo1Ecommerce.getValue() != null ? messageAnexo1Ecommerce.getValue() : ""); + empresaEmailEComerce.setTextoEmail(messageConteudoEmailECommerce.getValue()); + } private void preencheInformacoesEmpresaEmailFlexBus() { empresaEmailFlexBus.setEmailDe(textEmailDeFlexBus.getValue()); @@ -2062,7 +2110,47 @@ public void onClick$btnTestEmailFlexBus(Event ev) throws InterruptedException { } } + + public void onChange$cmbTipoEmail(Event ev) { + Comboitem cbiEmail = cmbTipoEmail.getSelectedItem(); + if (cbiEmail != null) { + TipoEmail tipoEmail = (TipoEmail) cbiEmail.getValue(); + + switch (tipoEmail) { + case CALL_CENTER: + tabCallCenter.setVisible(true); + tabECommerce.setVisible(false); + cmbTipoOperacao.setVisible(false); + lblTipoEmail.setVisible(false); + break; + case ECOMMERCE: + tabCallCenter.setVisible(false); + tabECommerce.setVisible(true); + cmbTipoOperacao.setVisible(true); + lblTipoEmail.setVisible(true); + break; + default: + tabCallCenter.setVisible(false); + tabECommerce.setVisible(false); + cmbTipoOperacao.setVisible(false); + lblTipoEmail.setVisible(false); + break; + } + + } + } + public void onChange$cmbTipoOperacao(Event ev) { + Comboitem cbiTipoOperacao = cmbTipoOperacao.getSelectedItem(); + if (cbiTipoOperacao != null) { + TipoOperacaoECommerce tipoOperacao = (TipoOperacaoECommerce) cbiTipoOperacao.getValue(); + empresaEmailEComerce = empresaEmailEComerceService.buscarPorEmpresa(empresa, tipoOperacao.getId().toString()); + textAssuntoECommerce.setValue(empresaEmailEComerce.getAssunto()); + messageAnexo1Ecommerce.setValue(empresaEmailEComerce.getAnexo1()); + messageConteudoEmailECommerce.setValue(empresaEmailEComerce.getTextoEmail()); + } + } + public void onBlur$txtCpfCnpj_AutorizadoDowload(Event event) { String numDoc = txtCpfCnpj_AutorizadoDowload.getValue(); @@ -2248,5 +2336,61 @@ public void onClick$btnTestEmailFlexBus(Event ev) throws InterruptedException { public void setTxtIrkPadrao(Decimalbox txtIrkPadrao) { this.txtIrkPadrao = txtIrkPadrao; } + + public List getLsTipoEmail() { + return lsTipoEmail; + } + + public void setLsTipoEmail(List lsTipoEmail) { + this.lsTipoEmail = lsTipoEmail; + } + + public Tabbox getTabCallCenter() { + return tabCallCenter; + } + + public void setTabCallCenter(Tabbox tabCallCenter) { + this.tabCallCenter = tabCallCenter; + } + + public Tabbox getTabECommerce() { + return tabECommerce; + } + + public void setTabECommerce(Tabbox tabECommerce) { + this.tabECommerce = tabECommerce; + } + + public Combobox getCmbTipoEmail() { + return cmbTipoEmail; + } + + public void setCmbTipoEmail(Combobox cmbTipoEmail) { + this.cmbTipoEmail = cmbTipoEmail; + } + + public EmpresaEmailEComerce getEmpresaEmailEComerce() { + return empresaEmailEComerce; + } + + public void setEmpresaEmailEComerce(EmpresaEmailEComerce empresaEmailEComerce) { + this.empresaEmailEComerce = empresaEmailEComerce; + } + + public List getLsTipoOperacao() { + return lsTipoOperacao; + } + + public void setLsTipoOperacao(List lsTipoOperacao) { + this.lsTipoOperacao = lsTipoOperacao; + } + + public Label getLblTipoEmail() { + return lblTipoEmail; + } + + public void setLblTipoEmail(Label lblTipoEmail) { + this.lblTipoEmail = lblTipoEmail; + } } diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index 08357d381..f4a43bab9 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -478,6 +478,7 @@ com.rjconsultores.ventaboletos.entidad.IntegracaoTotvs com.rjconsultores.ventaboletos.entidad.PricingEspecificoCategoria com.rjconsultores.ventaboletos.entidad.EmpresaEmail + com.rjconsultores.ventaboletos.entidad.EmpresaEmailEComerce com.rjconsultores.ventaboletos.entidad.EmpresaEmailConfig com.rjconsultores.ventaboletos.entidad.EmpresaSaferConfig com.rjconsultores.ventaboletos.entidad.CtrlFechamentoCaixa diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 8b26206d7..75963b8b2 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -1600,6 +1600,7 @@ editarEmpresaController.indRemarcacaoTrocaPassagem.label = Utiliza Troca de Pass editarEmpresaController.BloqVdaImpPosterior.label = Bloqueia Venda de Impressão Posterior em empresa diferente da logada editarEmpresaController.usarAliasMapaViagemVenda = Tarjeta de Viagem default Alias de Ubicaciones en la Venta editarEmpresaController.configCallCenter.label = Configuração Email Call Center +editarEmpresaController.configEmail.label.titulo = Configuração Email editarEmpresaController.voucherPersonalizado.label= Voucher Personalizado editarEmpresaController.configEmail.label = Configuração de Envio de Email editarEmpresaController.configCallCenterEmail.label = Configuração Conteúdo Email diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 038f00b0f..b3150713d 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -1758,6 +1758,7 @@ editarEmpresaController.codContPrevidencia.label = Código Indicador de Contribu editarEmpresaController.lbInscricaoMunicipal.value =Inscrição Municipal editarEmpresaController.label.isento = ISENTO editarEmpresaController.lbInscricaoMunicipal.label =Insc.Municipal +editarEmpresaController.configEmailTipoEmail.label = Tipo Email editarEmpresaController.contaBancaria.label = Contas Bancárias editarEmpresaController.contaBancaria.instiFinanceira = Instituição Financeira @@ -1822,6 +1823,7 @@ editarEmpresaController.indEmiteCupomFiscalRemarcacao.label = Emite Cupom Fiscal editarEmpresaController.indRemarcacaoTrocaPassagem.label = Utiliza Troca de Passagens para Remarcação editarEmpresaController.BloqVdaImpPosterior.label = Bloqueia Venda de Impressão Posterior em empresa diferente da logada editarEmpresaController.configCallCenter.label = Configuração Email Call Center +editarEmpresaController.configEmail.label.titulo = Configuração Email editarEmpresaController.voucherPersonalizado.label= Voucher Personalizado editarEmpresaController.configEmail.label = Configuração de Envio de Email editarEmpresaController.configCallCenterEmail.label = Configuração Conteúdo Email @@ -1837,6 +1839,7 @@ editarEmpresaController.lbUsarGrupoLinhasAproveitamentoSeletivo.value = Usar o G editarEmpresaController.irkPdarao.label = IRK Mínimo Padrão editarEmpresaController.indNaoPermiteTrocaEntreEmpresa = Não permite troca de bilhete para empresa diferente do bilhete atual editarEmpresaController.indNaoPermiteTrocaEntreEmpresa.ajuda = Quando selecionado, não será permitido trocar o bilhete para uma empresa diferente do bilhete atual +editarEmpresaController.configEmailTipoEmail.label = Tipo Email #Empresa Imposto editarEmpresaImpostoController.window.title = Configuração de Imposto por Empresa/Estado diff --git a/web/gui/catalogos/editarEmpresa.zul b/web/gui/catalogos/editarEmpresa.zul index dcc8f742a..6a203ef46 100644 --- a/web/gui/catalogos/editarEmpresa.zul +++ b/web/gui/catalogos/editarEmpresa.zul @@ -12,7 +12,7 @@ title="${c:l('editarEmpresaController.window.title')}" height="400px" width="1000px" border="normal" sizable="true"> - +