Ejemplo n.º 1
0
        Get_DesafioCompletadoViewModel(int idEst, int idCurso,
                                       int idDesafio, int idCalificacion)
        {
            if (!await _data.Exist_Estudiante_Curso(idEst, idCurso))
            {
                throw new ApiNotFoundException();
            }

            if (!await _data.Exist_Desafio(idDesafio, idCurso))
            {
                throw new ApiNotFoundException();
            }

            var desafioCompletado = await _data.Find_Desafio(idDesafio);

            var siguienteDesafio = await _desafioService
                                   .Get_SiguienteDesafio(idCurso, idEst);

            var resultado = await _data
                            .Find_ResultadoScratchGeneral(idCalificacion);

            var calificacion = await _data.Find_Calificacion(idCalificacion);


            if (resultado == null)
            {
                throw new ApiNotFoundException();
            }


            return(ApiResult <DesafioCompletadoViewModel>
                   .Initialize(new DesafioCompletadoViewModel(idCurso, resultado, desafioCompletado, siguienteDesafio, calificacion.Puntuacion), true));
        }
Ejemplo n.º 2
0
        Get_DesafioCompletadoViewModel(int idEst, int idCurso,
                                       int idDesafio, int idCalificacion)
        {
            if (!await _data.Exist_Estudiante_Curso(idEst, idCurso))
            {
                return(null);
            }

            var desafio = await _desafioService
                          .Get_SiguienteDesafio(idCurso, idEst);

            var resultado = await _data
                            .Find_ResultadoScratchGeneral(idCalificacion);

            return(new DesafioCompletadoViewModel(idCurso, resultado,
                                                  desafio));
        }