Exemple #1
0
        public async Task <ApiResponse <bool> > EnrollUserExam(UserExamViewModel userExam)
        {
            var result = new ApiResponse <bool>();

            try
            {
                var oUserExam = await dbContext.UserExams
                                .FirstOrDefaultAsync(e => (e.ExamId == userExam.ExamId && e.ApplicationUserId == this.CurrentUser().Id)) as UserExam;

                if (oUserExam == null)
                {
                    var userExamd = new UserExam
                    {
                        ApplicationUserId = this.CurrentUser().Id,
                        ExamId            = userExam.ExamId,
                        Status            = userExam.Status,
                        StartDate         = userExam.StartDate,
                        EndDate           = userExam.EndDate,
                        Score             = userExam.Score
                    };
                    await dbContext.UserExams.AddAsync(userExamd);

                    await dbContext.SaveChangesAsync();

                    result.Data = true;
                    result.AddSuccess();
                    result.AddMessage("You are Enrolled Succesfully");
                    return(await Task.FromResult(result));
                }
                else
                {
                    result.Data = false;
                    result.AddMessage("You have already been enrolled successfully");
                    return(await Task.FromResult(result));
                }
            }
            catch (Exception ex)
            {
                result.AddError(ex);
                return(await Task.FromResult(result));
            }
        }
Exemple #2
0
 public async Task <IActionResult> EnrollUserExam(UserExamViewModel userExam)
 {
     return(Ok(await userExamService.EnrollUserExam(userExam)));
 }