Esempio n. 1
0
        public PartialViewResult adicionarUsuarioEspecifico()
        {
            int    idUsuario    = UtilRequest.getInt32("idUsuarioEspecifico");
            string nomeUsuario  = UtilRequest.getString("nomeUsuarioEspecifico");
            string loginUsuario = UtilRequest.getString("loginUsuarioEspecifico");
            string emailUsuario = UtilRequest.getString("emailUsuarioEspecifico");

            if (idUsuario > 0)
            {
                var listUsuariosEspecificos = SessionNotificacoes.getListUsuariosEspecificos();

                if (!listUsuariosEspecificos.Any(x => x.id == idUsuario))
                {
                    var OAssociado = new UsuarioSistema()
                    {
                        id = idUsuario, nome = nomeUsuario, login = loginUsuario, email = emailUsuario
                    };
                    listUsuariosEspecificos.Add(OAssociado);
                    SessionNotificacoes.setListUsuariosEspecificos(listUsuariosEspecificos);
                }
                else
                {
                    this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "Esse usuário já está adicionado na sua lista.");
                }
            }
            else
            {
                this.Flash(UtilMessage.TYPE_MESSAGE_ERROR, "Selecione um usuário para adicionar à lista.");
            }

            return(PartialView("partialUsuariosEspecificos"));
        }
Esempio n. 2
0
        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));
        }