Example #1
0
 public PesquisaContatosIndexModel(bool ehProfessorOuCoordenador, List <PkHabilitacaoProfessor> listaDeCursosHabilitados, PkUsuarioLogado usuarioLogado)
 {
     this._usuarioLogado           = usuarioLogado;
     this.EhProfessorOuCoordenador = ehProfessorOuCoordenador;
     this.ListaDeCursosHabilitados = listaDeCursosHabilitados;
     this.TituloDaModal            = "Contatos";
 }
 private void SetDados(PkUsuarioLogado usuario)
 {
     this.Codigo          = usuario.Codigo;
     this.Nome            = usuario.Nome;
     this.TipoDeUsuario   = usuario.TipoDeUsuario;
     this.TipoDeProfessor = usuario.TipoDeProfessor;
     this.Permissoes      = usuario.Permissoes;
     this.RelacaoComAluno = usuario.RelacaoComAluno;
 }
Example #3
0
        public SaeResponseRepository <PkUsuarioLogado> GetUsuarioParaLogar(int codigoDoUsuario)
        {
            PkUsuarioLogado usuario = this
                                      ._db
                                      .Pessoas
                                      .Select(x => new PkUsuarioLogado
            {
                Codigo        = x.Codigo,
                Nome          = x.Nome,
                TipoDeUsuario = TipoDeUsuarioDoChatTrata.Responsavel
            })
                                      .FirstOrDefault(x => x.Codigo == codigoDoUsuario);

            return(new SaeResponseRepository <PkUsuarioLogado>(usuario != null, usuario));
        }
        public SaeResponseRepository <PkUsuarioLogado> GetUsuarioParaLogar(int codigoDoUsuario, string tipoDeProfessor)
        {
            PkUsuarioLogado usuario = this
                                      ._db
                                      .Cadforps
                                      .Where(x => x.Situacao == SaeSituacao.Ativo)
                                      .Select(x => new PkUsuarioLogado
            {
                Codigo          = x.Codigo,
                Nome            = x.Nome,
                TipoDeUsuario   = TipoDeUsuarioDoChatTrata.Professor,                      //tipoDoUsuario
                TipoDeProfessor = tipoDeProfessor
            })
                                      .FirstOrDefault(x => x.Codigo == codigoDoUsuario);

            return(new SaeResponseRepository <PkUsuarioLogado>(usuario != null, usuario));
        }
        public bool SetUsuarioLogado(int codigoDaEscola,
                                     int codigoDoUsuario,
                                     string tipoDoUsuario,
                                     string origemDeChat,
                                     int codigoDoAluno,
                                     string tipoDeRelacao)
        {
            bool status = false;
            SaeResponseRepository <PkUsuarioLogado> response;

            if (tipoDoUsuario == TipoDeUsuarioDoChatTrata.Aluno)
            {
                response = this._alunosRepository.GetUsuarioParaLogar(codigoDoUsuario);
            }
            else if (tipoDoUsuario == TipoDeUsuarioDoChatTrata.Professor || tipoDoUsuario == TipoDeUsuarioDoChatTrata.Coordenador)
            {
                response = this._cadforpsRepository.GetUsuarioParaLogar(codigoDoUsuario, tipoDoUsuario);
            }
            else if (tipoDoUsuario == TipoDeUsuarioDoChatTrata.Responsavel)
            {
                response = this._pessoasRepository.GetUsuarioParaLogar(codigoDoUsuario);
            }
            else
            {
                response = null;
            }

            if (response?.Status ?? false)
            {
                PkUsuarioLogado usuarioLogado = response.Content;

                SaeResponseRepository <AppCfg> responseConfig = this._appCfgRepository.GetFirstOrDefault();
                usuarioLogado.SetOrigemDeChat(origemDeChat);
                usuarioLogado.SetPermissoes(responseConfig.Content);
                usuarioLogado.SetRelacaoComAluno(
                    codigoDoAluno: codigoDoAluno,
                    nomeDoAluno: this._alunosRepository.GetNomeDoAluno(codigoDoAluno).Content,
                    tipoDeRelacao: tipoDeRelacao);

                this.SetDados(usuarioLogado);

                if (this.TrySerialize(out string json))
                {
                    string anoLetivo = this._historicoRepository.GetAnoLetivo().Content;

                    this.SetSessions(json);
                    this.SetCookies(
                        codigoDaEscola: codigoDaEscola,
                        codigoDoUsuario: codigoDoUsuario,
                        tipoDoUsuario: tipoDoUsuario,
                        origemDeChat: origemDeChat,
                        codigoDoAlunoSelecionado: codigoDoAluno,
                        tipoDeRelacaoComAluno: tipoDeRelacao,
                        anoLetivo: anoLetivo);
                    status = true;
                }
                else
                {
                    throw new SaeException("Não foi possível serializar o usuário para salvar na session.");
                }
            }

            return(status);
        }