예제 #1
0
        private void TratarQuestionario(classes.TrilhaNivel trilhaNivel, int idQuestionario, bool evolutivo,
                                        enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao)
        {
            var questionario = new ManterQuestionario().ObterQuestionarioPorID(idQuestionario);
            var questionarioAssociacaoEditar =
                trilhaNivel.ListaQuestionarioAssociacao.FirstOrDefault(
                    x =>
                    x.TrilhaNivel.ID == trilhaNivel.ID && x.Evolutivo == evolutivo &&
                    x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionarioAssociacao);

            if (questionarioAssociacaoEditar == null)
            {
                var questionarioAssociacaoAdicionar = new QuestionarioAssociacao
                {
                    TipoQuestionarioAssociacao =
                        new ManterTipoQuestionarioAssociacao().ObterTipoQuestionarioAssociacaoPorID(
                            (int)tipoQuestionarioAssociacao),
                    Evolutivo    = evolutivo,
                    TrilhaNivel  = trilhaNivel,
                    Questionario = questionario,
                    Obrigatorio  = true
                };

                trilhaNivel.ListaQuestionarioAssociacao.Add(questionarioAssociacaoAdicionar);
            }
            else
            {
                questionarioAssociacaoEditar.Questionario = questionario;
            }
        }
예제 #2
0
        private void TratarRemocao(TrilhaNivel trilhaNivel, bool evolutivo, enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao)
        {
            QuestionarioAssociacao questionarioAssociacaoRemover = trilhaNivel.ListaQuestionarioAssociacao.Where(x => x.TrilhaNivel == trilhaNivel && x.Evolutivo == evolutivo && x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionarioAssociacao).FirstOrDefault();

            if (questionarioAssociacaoRemover != null)
            {
                trilhaNivel.ListaQuestionarioAssociacao.Remove(questionarioAssociacaoRemover);
            }
        }
예제 #3
0
        private void TratarRemocao(Turma turma, bool evolutivo, enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao)
        {
            QuestionarioAssociacao questionarioAssociacaoRemover = turma.ListaQuestionarioAssociacao.Where(x => x.Turma != null && x.Turma.ID == turma.ID && x.Evolutivo == evolutivo && x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionarioAssociacao).FirstOrDefault();

            if (questionarioAssociacaoRemover != null)
            {
                turma.ListaQuestionarioAssociacao.Remove(questionarioAssociacaoRemover);
            }
        }
예제 #4
0
 private void AdicionarQuestionarioATurma(Turma turma, int idQuestionario, enumTipoQuestionarioAssociacao tipoQuestionario)
 {
     if (idQuestionario > 0)
     {
         this.TratarQuestionario(turma, idQuestionario, false, tipoQuestionario);
     }
     else
     {
         TratarRemocao(turma, false, tipoQuestionario);
     }
 }
        /// <summary>
        /// Busca a Associação pelo id do questionário, pelo tipo do questionário e pelo id do nível da trilha
        /// </summary>
        /// <param name="questionario"></param>
        /// <param name="trilhaNivel"></param>
        /// <param name="tipoQuestionarioAssociacao"></param>
        /// <returns></returns>
        public QuestionarioAssociacao ObterPorFiltro(Questionario questionario, TrilhaNivel trilhaNivel,
                                                     enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao, bool evolutivo)
        {
            this.ValidarInformacoesDoFiltro(questionario, trilhaNivel);

            QuestionarioAssociacao questionarioAssociacao = null;

            var query = repositorio.session.Query <QuestionarioAssociacao>();

            query = query.Fetch(x => x.Questionario);
            query = query.Fetch(x => x.TipoQuestionarioAssociacao);
            query = query.Fetch(x => x.TrilhaNivel);

            //Busca a Associação pelo id do questionário, pelo tipo do questionário e pelo id do nível da trilha
            questionarioAssociacao = query.FirstOrDefault(x => x.Questionario.ID == questionario.ID &&
                                                          x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionarioAssociacao &&
                                                          x.TrilhaNivel.ID == trilhaNivel.ID &&
                                                          x.Evolutivo == evolutivo);

            return(questionarioAssociacao);
        }
예제 #6
0
 /// <summary>
 /// Busca a Associação pelo id do questionário, pelo tipo do questionário e pelo id do nível da trilha
 /// </summary>
 /// <param name="questionario"></param>
 /// <param name="trilhaNivel"></param>
 /// <param name="tipoQuestionarioAssociacao"></param>
 /// <returns></returns>
 public QuestionarioAssociacao ObterPorFiltro(Questionario questionario, TrilhaNivel trilhaNivel,
                                              enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao, bool evolutivo)
 {
     return(questionarioAssociacao.ObterPorFiltro(questionario, trilhaNivel, tipoQuestionarioAssociacao, evolutivo));
 }
        private QuestionarioAssociacao ObterQuestionarioAssociacao(classes.TurmaCapacitacao turma, enumTipoQuestionarioAssociacao tipo, Questionario questionario)
        {
            var questionarioPreAssociacao = new QuestionarioAssociacao
            {
                TipoQuestionarioAssociacao = new ManterTipoQuestionarioAssociacao().ObterTipoQuestionarioAssociacaoPorID((int)tipo),
                Questionario     = questionario,
                Evolutivo        = false,
                TurmaCapacitacao = turma,
                Obrigatorio      = true
            };

            return(questionarioPreAssociacao);
        }
        private IList <QuestionarioAssociacao> AtualizarQuestionarioAssociacao(IList <QuestionarioAssociacao> listaRetorno, classes.TurmaCapacitacao turma, int idQuestionario, enumTipoQuestionarioAssociacao tipo)
        {
            var questionarioAssociacao = listaRetorno.FirstOrDefault(p => p.TipoQuestionarioAssociacao.ID == (int)tipo);

            if (idQuestionario == 0)
            {
                if (questionarioAssociacao == null)
                {
                    return(listaRetorno);
                }
                listaRetorno.Remove(questionarioAssociacao);
                return(listaRetorno);
            }
            var manterQuestionario = new ManterQuestionario();
            var questionario       = manterQuestionario.ObterQuestionarioPorID(idQuestionario);

            if (questionarioAssociacao == null)
            {
                listaRetorno.Add(ObterQuestionarioAssociacao(turma, tipo, questionario));
            }
            else
            {
                var index = listaRetorno.IndexOf(questionarioAssociacao);
                listaRetorno[index].Questionario = questionario;
                listaRetorno[index].TipoQuestionarioAssociacao = new ManterTipoQuestionarioAssociacao().ObterTipoQuestionarioAssociacaoPorID((int)tipo);
            }
            return(listaRetorno);
        }
예제 #9
0
        /// <summary>
        /// Verifica se existem pendências de resposta do questionário informado
        /// </summary>
        /// <param name="matricula"></param>
        /// <param name="mtOferta"></param>
        /// <param name="tipoQuestionario"></param>
        /// <returns></returns>
        public bool VerificarQuestionarioPendente(MatriculaTurma matricula, MatriculaOferta mtOferta, enumTipoQuestionarioAssociacao tipoQuestionario)
        {
            if (matricula.Turma.ListaQuestionarioAssociacao.Count > 0)
            {
                var questionarioAssociacao =
                    matricula.Turma.ListaQuestionarioAssociacao.FirstOrDefault(
                        x => x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionario);

                if (questionarioAssociacao != null)
                {
                    if (
                        !(new BMQuestionarioParticipacao().ObterPorUsuario(mtOferta.Usuario)
                          .Any(
                              x =>
                              x.TipoQuestionarioAssociacao.ID ==
                              (int)tipoQuestionario &&
                              x.Turma.ID == mtOferta.MatriculaTurma.FirstOrDefault().Turma.ID&&
                              x.DataParticipacao != null)))
                    {
                        return(true);
                    }
                }
            }

            return(false);
        }
예제 #10
0
        private void TratarQuestionario(Turma turma, int idQuestionario, bool evolutivo, enumTipoQuestionarioAssociacao tipoQuestionarioAssociacao)
        {
            Questionario           questionario = new ManterQuestionario().ObterQuestionarioPorID(idQuestionario);
            QuestionarioAssociacao questionarioAssociacaoEditar = turma.ListaQuestionarioAssociacao.FirstOrDefault(x => x.Turma != null && x.Turma.ID == turma.ID && x.Evolutivo == evolutivo && x.TipoQuestionarioAssociacao.ID == (int)tipoQuestionarioAssociacao);

            if (questionarioAssociacaoEditar == null)
            {
                QuestionarioAssociacao questionarioAssociacaoAdicionar = new QuestionarioAssociacao();
                questionarioAssociacaoAdicionar.TipoQuestionarioAssociacao = new ManterTipoQuestionarioAssociacao().ObterTipoQuestionarioAssociacaoPorID((int)tipoQuestionarioAssociacao);
                questionarioAssociacaoAdicionar.Evolutivo    = false;
                questionarioAssociacaoAdicionar.Turma        = turma;
                questionarioAssociacaoAdicionar.Questionario = questionario;
                questionarioAssociacaoAdicionar.Obrigatorio  = true;
                turma.ListaQuestionarioAssociacao.Add(questionarioAssociacaoAdicionar);
            }
            else
            {
                questionarioAssociacaoEditar.Questionario = questionario;
            }
        }