public MensagemEntidade Insert(MensagemEntidade entidade) { return(base.Insert(entidade.TXT_TITULO, entidade.TXT_CORPO, entidade.DTA_MENSAGEM, entidade.DTA_EXPIRACAO, entidade.CD_FUNDACAO, entidade.CD_EMPRESA, entidade.CD_PLANO, entidade.CD_SIT_PLANO, entidade.COD_ENTID, entidade.IND_MOBILE, entidade.IND_PORTAL, entidade.IND_EMAIL, entidade.IND_SMS)); }
public IActionResult Criar([FromBody] MensagemEntidade mensagem) { try { var funcionarioProxy = new FuncionarioProxy(); mensagem.CD_EMPRESA = mensagem.CD_EMPRESA == string.Empty ? null : mensagem.CD_EMPRESA; mensagem.CD_PLANO = mensagem.CD_PLANO == string.Empty ? null : mensagem.CD_PLANO; mensagem.CD_SIT_PLANO = mensagem.CD_SIT_PLANO == string.Empty ? null : mensagem.CD_SIT_PLANO; mensagem.NUM_MATRICULA = mensagem.NUM_MATRICULA.Replace("_", "").PadLeft(9, '0'); if (!mensagem.DTA_EXPIRACAO.HasValue) { mensagem.DTA_EXPIRACAO = null; } else { mensagem.DTA_EXPIRACAO = mensagem.DTA_EXPIRACAO; } if (string.IsNullOrEmpty(mensagem.NUM_MATRICULA)) { mensagem.COD_ENTID = null; } else { mensagem.COD_ENTID = funcionarioProxy.BuscarPorMatricula(mensagem.NUM_MATRICULA).COD_ENTID; } mensagem.DTA_MENSAGEM = DateTime.Now; // Se opção de enviar e-mail for habilitada if (mensagem.IND_EMAIL == DMN_SIM_NAO.SIM) { var listaDestinatarios = funcionarioProxy.BuscarPorPesquisa(mensagem.CD_FUNDACAO, mensagem.CD_EMPRESA, mensagem.CD_PLANO, mensagem.CD_SIT_PLANO, mensagem.NUM_MATRICULA, string.Empty, string.Empty); foreach (var destinatario in listaDestinatarios) { var dadosDestinatario = funcionarioProxy.BuscarDadosPorCodEntid(destinatario.COD_ENTID.ToString()); if (string.IsNullOrEmpty(dadosDestinatario.DadosPessoais.EMAIL_AUX)) { throw new Exception("Não existe email cadastrado para seu usuário contacte o administrador do sistema."); } try { var emailConfig = AppSettings.Get().Email; EnvioEmail.Enviar(emailConfig, dadosDestinatario.DadosPessoais.EMAIL_AUX, mensagem.TXT_TITULO, mensagem.TXT_CORPO); } catch (Exception e) { throw new Exception("Erro ao enviar o token por email. Contacte o administrador do sistema." + e.Message); } } } new MensagemProxy().Insert(mensagem); return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }