public JsonResult excluirAssociadoEspecifico(int id) { var list = SessionNotificacoes.getListAssociadosEspecificos(); list.Remove(list.FirstOrDefault(x => x.idReferencia == id)); SessionNotificacoes.setListAssociadosEspecificos(list); return(Json(true)); }
public void adicionarAssociadoIndividual(int idAssociado) { var listAssociadosEspecificos = SessionNotificacoes.getListAssociadosEspecificos() ?? new List <NotificacaoSistemaEnvio>(); // Verificar se o associado já está adicionado if (listAssociadosEspecificos.FirstOrDefault(x => x.idReferencia == idAssociado) != null) { this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "O associado já está adicionado na sua lista."); return; } var OAssociado = this.OAssociadoBL.listar(0, "", "", "").Where(x => x.id == idAssociado) .Select(x => new AssociadoDadosBasicos() { id = x.id, idPessoa = x.idPessoa, nome = x.Pessoa.nome, nroDocumento = x.Pessoa.nroDocumento, emailPrincipal = x.Pessoa.listaEmails.FirstOrDefault(y => y.idTipoEmail == TipoEmailConst.PESSOAL && y.dtExclusao == null).email, emailSecundario = x.Pessoa.listaEmails.FirstOrDefault(y => y.idTipoEmail == TipoEmailConst.COMERCIAL && y.dtExclusao == null).email }).FirstOrDefault(); // Verificar se o associado já está adicionado if (OAssociado == null) { this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "O associado não foi encontrado."); return; } if (!UtilValidation.isEmail(OAssociado.emailPrincipal) && !UtilValidation.isEmail(OAssociado.emailSecundario)) { this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, $"O associado { OAssociado.nome } (Doc.: { UtilString.formatCPFCNPJ(OAssociado.nroDocumento) }) não possui e-mails válidos cadastrados."); return; } var listaEmails = new List <string> { OAssociado.emailPrincipal, OAssociado.emailSecundario }; foreach (var email in listaEmails) { var OEnvio = new NotificacaoSistemaEnvio(); OEnvio.idReferencia = OAssociado.id; OEnvio.idPessoa = OAssociado.idPessoa; OEnvio.nome = OAssociado.nome; OEnvio.email = email; if (!UtilValidation.isEmail(OEnvio.email)) { OEnvio.flagExcluido = true; OEnvio.motivoExclusao = "O e-mail configurado não é válido."; } listAssociadosEspecificos.Add(OEnvio); } SessionNotificacoes.setListAssociadosEspecificos(listAssociadosEspecificos); }
public ActionResult editar(AvisoNotificacaoForm ViewModel) { ViewModel.carregarFlags(); if (!ModelState.IsValid) { return(View(ViewModel)); } ViewModel.ONotificacaoSistema.flagAssociadosAdimplentes = ViewModel.flagAssociados == SituacaoContribuicaoConst.ADIMPLENTE; ViewModel.ONotificacaoSistema.flagAssociadosEspecificos = ViewModel.flagAssociados == "espec"; ViewModel.ONotificacaoSistema.flagAssociadosInadimplentes = ViewModel.flagAssociados == SituacaoContribuicaoConst.INADIMPLENTE; ViewModel.ONotificacaoSistema.dtProgramacaoEnvio = ViewModel.ONotificacaoSistema.dtProgramacaoEnvio ?? DateTime.Today; ViewModel.preencherListaDestinatarios(); if (!ViewModel.listaDestinatarios.Any()) { if (ViewModel.ONotificacaoSistema.flagAssociadosEspecificos == true) { this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "Informe ao menos um destinatário para a criação da notificação."); } if (ViewModel.ONotificacaoSistema.flagAssociadosEspecificos != true) { this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "Nenhum destinatário foi encontrado com as condições informadas."); } return(View(ViewModel)); } if (ViewModel.ONotificacaoSistema.idTemplate > 0) { var OTemplate = OTemplateMensagemConsultaBL.carregar(ViewModel.ONotificacaoSistema.idTemplate.toInt()); ViewModel.ONotificacaoSistema.notificacao = OTemplate.corpoHTML; ViewModel.ONotificacaoSistema.notificacaoTexto = OTemplate.corpoTexto; } var flagSucesso = this.ONotificacaoAssociadoAvulsaBL.salvar(ViewModel.ONotificacaoSistema, ViewModel.listaDestinatarios); if (flagSucesso) { SessionNotificacoes.setListAssociadosEspecificos(new List <NotificacaoSistemaEnvio>()); SessionNotificacoes.setListUsuariosEspecificos(new List <UsuarioSistema>()); SessionNotificacoes.setListPerfisEspecificos(new List <PerfilAcesso>()); this.Flash(UtilMessage.TYPE_MESSAGE_SUCCESS, "Os dados foram salvos com sucesso."); return(RedirectToAction("editar", new { ViewModel.ONotificacaoSistema.id })); } this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "Houve um problema ao salvar o registro. Tente novamente."); return(View(ViewModel)); }