fixes bug#AL-1677 qua: dev:Lucas

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@115150 d1611594-4594-4d17-8e1d-87c2c4800839
master
lucas.taia 2022-11-04 13:50:33 +00:00
parent bfe353279a
commit 478749e967
1 changed files with 34 additions and 25 deletions

View File

@ -67,15 +67,15 @@ public class ContingenciaServiceImpl implements ContingenciaService {
historicoCont.setDataHora(Calendar.getInstance().getTime()); historicoCont.setDataHora(Calendar.getInstance().getTime());
if (historicoCont.getEmpresa() == null) { if (historicoCont.getEmpresa() == null) {
throw new BusinessException("Não é possível salvar sem a empresa"); throw new BusinessException("N<EFBFBD>o <20> poss<73>vel salvar sem a empresa");
} }
if (historicoCont.getEstado() == null) { if (historicoCont.getEstado() == null) {
throw new BusinessException("Não é possível salvar sem o estado referente"); throw new BusinessException("N<EFBFBD>o <20> poss<73>vel salvar sem o estado referente");
} }
if (historicoCont.getMotivo() == null) { if (historicoCont.getMotivo() == null) {
throw new BusinessException("Não é possível salvar sem o motivo referente"); throw new BusinessException("N<EFBFBD>o <20> poss<73>vel salvar sem o motivo referente");
} }
try { try {
@ -102,10 +102,10 @@ public class ContingenciaServiceImpl implements ContingenciaService {
} }
private void setMotivoNaoTrocaStatus(LogHistoricoContingencia historicoCont, Exception e) { private void setMotivoNaoTrocaStatus(LogHistoricoContingencia historicoCont, Exception e) {
log.error(String.format("Erro no envio de e-mail de contingência da empresa %s para o estado %s.", historicoCont.getEmpresa().getEmpresaId(),historicoCont.getEstado()), e); log.error(String.format("Erro no envio de e-mail de conting<EFBFBD>ncia da empresa %s para o estado %s.", historicoCont.getEmpresa().getEmpresaId(),historicoCont.getEstado()), e);
String motivo = historicoCont.getMotivo(); String motivo = historicoCont.getMotivo();
motivo = motivo.concat("**Problema no envio de E-mail de notificação. Favor checar."); motivo = motivo.concat("**Problema no envio de E-mail de notifica<EFBFBD><EFBFBD>o. Favor checar.");
historicoCont.setMotivo(motivo); historicoCont.setMotivo(motivo);
} }
@ -164,35 +164,44 @@ public class ContingenciaServiceImpl implements ContingenciaService {
return EStatusContingencia.getStatusContingencia(Integer.valueOf(historicoCont.getStatus())); return EStatusContingencia.getStatusContingencia(Integer.valueOf(historicoCont.getStatus()));
} }
private void enviaEmail(LogHistoricoContingencia historicoCont) throws SendFailedException, AuthenticationFailedException { private void enviaEmail(LogHistoricoContingencia historicoCont) throws SendFailedException, AuthenticationFailedException {
SendMail mail = new SendMail();
EmpresaEmail empresaEmail = empresaEmailService.buscarPorEmpresa(historicoCont.getEmpresa()); EmpresaEmail empresaEmail = empresaEmailService.buscarPorEmpresa(historicoCont.getEmpresa());
EmpresaEmailConfig empresaEmailConfig = empresaEmailConfigService.buscarPorEmpresa(historicoCont.getEmpresa()); EmpresaEmailConfig empresaEmailConfig = empresaEmailConfigService.buscarPorEmpresa(historicoCont.getEmpresa());
mail.setAuth(empresaEmailConfig.getIndAutenticacao());
if (StringUtils.isNotEmpty(empresaEmailConfig.getTipoAutorizacao())) { if (empresaEmail != null && empresaEmailConfig != null &&
mail.setAuthType(AuthType.valueOf(empresaEmailConfig.getTipoAutorizacao())); empresaEmailConfig.getIndAutenticacao() != null && empresaEmail.getEmailDe() != null &&
empresaEmailConfig.getTipoAutorizacao() != null && empresaEmailConfig.getSmtp() != null &&
empresaEmailConfig.getSenha() != null && empresaEmailConfig.getSmtpPorta() != null &&
empresaEmailConfig.getSmtpEmail() != null && empresaEmail.getDestinatario() != null) {
SendMail mail = new SendMail();
mail.setAuth(empresaEmailConfig.getIndAutenticacao());
if (StringUtils.isNotEmpty(empresaEmailConfig.getTipoAutorizacao())) {
mail.setAuthType(AuthType.valueOf(empresaEmailConfig.getTipoAutorizacao()));
}
mail.setEmailFrom(empresaEmail.getEmailDe());
mail.setSmtpHost(empresaEmailConfig.getSmtp());
mail.setSmtpPassword(empresaEmailConfig.getSenha());
mail.setSmtpPort(empresaEmailConfig.getSmtpPorta());
mail.setSmtpUser(empresaEmailConfig.getSmtpEmail());
mail.setSubject("Conting<6E>ncia Off-line BP-e");
mail.setText(getMensagem(historicoCont));
mail.setEmailTo(empresaEmail.getDestinatario());
mail.setEmailToCO(EMAIL_COPIA_OCULTA);
mail.send();
} }
mail.setEmailFrom(empresaEmail.getEmailDe());
mail.setSmtpHost(empresaEmailConfig.getSmtp());
mail.setSmtpPassword(empresaEmailConfig.getSenha());
mail.setSmtpPort(empresaEmailConfig.getSmtpPorta());
mail.setSmtpUser(empresaEmailConfig.getSmtpEmail());
mail.setSubject("Contingência Off-line BP-e");
mail.setText(getMensagem(historicoCont));
mail.setEmailTo(empresaEmail.getDestinatario());
mail.setEmailToCO(EMAIL_COPIA_OCULTA);
mail.send();
} }
private String getMensagem(LogHistoricoContingencia historicoContingencia) { private String getMensagem(LogHistoricoContingencia historicoContingencia) {
StringBuilder mensagem = new StringBuilder(); StringBuilder mensagem = new StringBuilder();
mensagem.append(String.format("A empresa %s está com a emissão do BP-e em contingência off-line para a UF %s no ambiente de %s. ", mensagem.append(String.format("A empresa %s est<73> com a emiss<73>o do BP-e em conting<6E>ncia off-line para a UF %s no ambiente de %s. ",
historicoContingencia.getEmpresa().getNombempresa(), historicoContingencia.getEstado().getCveestado(), historicoContingencia.getEmpresa().getNombempresa(), historicoContingencia.getEstado().getCveestado(),
EAmbienteContingencia.getAmbienteContingencia(historicoContingencia.getAmbiente()).getDescricao())); EAmbienteContingencia.getAmbienteContingencia(historicoContingencia.getAmbiente()).getDescricao()));
mensagem.append("A emissão em contingência deve ser tratada como exceção, sendo que a regra deve ser a emissão com autorização em tempo real."); mensagem.append("A emiss<73>o em conting<6E>ncia deve ser tratada como exce<63><65>o, sendo que a regra deve ser a emiss<73>o com autoriza<7A><61>o em tempo real.");
mensagem.append("O Fisco poderá solicitar esclarecimentos, e até mesmo restringir ao contribuinte a utilização da modalidade de contingência off-line, caso seja identificado que o emissor do BP-e utiliza a contingência em demasia e sem justificativa aceitável, quando comparado a outros contribuintes em situação similar."); mensagem.append("O Fisco poder<65> solicitar esclarecimentos, e at<61> mesmo restringir ao contribuinte a utiliza<7A><61>o da modalidade de conting<6E>ncia off-line, caso seja identificado que o emissor do BP-e utiliza a conting<6E>ncia em demasia e sem justificativa aceit<69>vel, quando comparado a outros contribuintes em situa<75><61>o similar.");
mensagem.append("Na utilização de contingência off-line, o contribuinte assume o risco de perda da informação dos "); mensagem.append("Na utiliza<7A><61>o de conting<6E>ncia off-line, o contribuinte assume o risco de perda da informa<6D><61>o dos ");
mensagem.append("BP-e emitidos em contingência, até que os mesmos constem da base de dados do Fisco."); mensagem.append("BP-e emitidos em conting<EFBFBD>ncia, at<61> que os mesmos constem da base de dados do Fisco.");
return mensagem.toString(); return mensagem.toString();
} }