fixes bug#JIRA-38

dev:julio

qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@114150 d1611594-4594-4d17-8e1d-87c2c4800839
master
lucas.taia 2022-09-12 14:46:43 +00:00
parent 83e1151dba
commit b783f2c000
5 changed files with 218 additions and 5 deletions

View File

@ -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;
@ -371,6 +385,15 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
private Checkbox chkIndCheckinBloqueadoNoshow;
private Checkbox chkIndAgrupamentoLocalidadeConexao;
private Combobox cmbTipoEmail;
private Combobox cmbTipoOperacao;
private Tabbox tabCallCenter;
private Tabbox tabECommerce;
private List<TipoEmail> lsTipoEmail;
private List<TipoOperacaoECommerce> 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,})$";
@ -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) {
@ -992,6 +1024,16 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
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"),
Messagebox.OK, Messagebox.INFORMATION);
@ -1025,6 +1067,12 @@ public class EditarEmpresaController extends MyGenericForwardComposer {
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());
empresaEmailFlexBus.setAssunto(textAssuntoFlexBus.getValue());
@ -2063,6 +2111,46 @@ 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();
@ -2249,4 +2337,60 @@ public void onClick$btnTestEmailFlexBus(Event ev) throws InterruptedException {
this.txtIrkPadrao = txtIrkPadrao;
}
public List<TipoEmail> getLsTipoEmail() {
return lsTipoEmail;
}
public void setLsTipoEmail(List<TipoEmail> 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<TipoOperacaoECommerce> getLsTipoOperacao() {
return lsTipoOperacao;
}
public void setLsTipoOperacao(List<TipoOperacaoECommerce> lsTipoOperacao) {
this.lsTipoOperacao = lsTipoOperacao;
}
public Label getLblTipoEmail() {
return lblTipoEmail;
}
public void setLblTipoEmail(Label lblTipoEmail) {
this.lblTipoEmail = lblTipoEmail;
}
}

View File

@ -478,6 +478,7 @@
<value>com.rjconsultores.ventaboletos.entidad.IntegracaoTotvs</value>
<value>com.rjconsultores.ventaboletos.entidad.PricingEspecificoCategoria</value>
<value>com.rjconsultores.ventaboletos.entidad.EmpresaEmail</value>
<value>com.rjconsultores.ventaboletos.entidad.EmpresaEmailEComerce</value>
<value>com.rjconsultores.ventaboletos.entidad.EmpresaEmailConfig</value>
<value>com.rjconsultores.ventaboletos.entidad.EmpresaSaferConfig</value>
<value>com.rjconsultores.ventaboletos.entidad.CtrlFechamentoCaixa</value>

View File

@ -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

View File

@ -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

View File

@ -51,7 +51,7 @@
<tab
label="${c:l('editarEmpresaController.configEmail.label')}" />
<tab
label="${c:l('editarEmpresaController.configCallCenter.label')}" />
label="${c:l('editarEmpresaController.configEmail.label.titulo')}" />
<tab
label="${c:l('editarEmpresaController.voucherPersonalizado.label')}" />
<tab
@ -1842,13 +1842,23 @@
</tabpanel>
<tabpanel>
<tabbox>
<label id="lblTipoEmail"
value="${c:l('editarEmpresaController.configEmailTipoEmail.label')}" visible="false" />
<combobox id="cmbTipoEmail" width="30%"
mold="rounded" buttonVisible="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winEditarEmpresa$composer.lsTipoEmail}">
</combobox>
<tabbox id="tabCallCenter" visible="false">
<tabs>
<tab label="${c:l('editarEmpresaController.configCallCenterEmail.label')}" />
<tab label="${c:l('editarEmpresaController.configCallCenterEmailFiscal.label')}" />
<tab label="${c:l('editarEmpresaController.configCallCenterCupomEmbarque.label')}" />
</tabs>
<tabpanels>
<tabpanel>
<grid>
<columns>
@ -1912,6 +1922,60 @@
</tabpanels>
</tabbox>
<label
value="Tipo Operação" />
<combobox id="cmbTipoOperacao" width="30%"
mold="rounded" buttonVisible="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winEditarEmpresa$composer.lsTipoOperacao}" visible="false">
</combobox>
<tabbox id="tabECommerce" visible="false" >
<tabs>
<tab label="${c:l('editarEmpresaController.configCallCenterEmail.label')}" />
<tab label="Anexo" />
</tabs>
<tabpanels>
<tabpanel>
<grid>
<columns>
<column width="25%" />
<column width="75%" />
</columns>
<rows>
<row>
<label id="lblAssuntoECommerce"
value="Assunto" />
<textbox id="textAssuntoECommerce"
width="80%" maxlength="500"
value="@{winEditarEmpresa$composer.empresaEmailEComerce.assunto}" />
</row>
</rows>
</grid>
<ckeditor id="messageConteudoEmailECommerce"
value="@{winEditarEmpresa$composer.empresaEmailEComerce.textoEmail}"
width="100%">
</ckeditor>
</tabpanel>
<tabpanel>
<ckeditor id="messageAnexo1Ecommerce"
value="@{winEditarEmpresa$composer.empresaEmailEComerce.anexo1}"
width="100%">
</ckeditor>
</tabpanel>
</tabpanels>
</tabbox>