public async Task Create(ExamViewDto dto) { var exam = new Exam { Content = dto.Content, Time = dto.Time, Type = dto.Type, CreatedDate = DateTime.Now }; await _context.Exams.AddAsync(exam); bool examSaved = await _context.SaveChangesAsync() > 0; if (examSaved) { // get questions in 3 type var listQuestionLaw = await _context.Questions.Where(s => s.Type == QuestionType.Law) .OrderBy(s => Guid.NewGuid()).Take(10) .Select(s => new QuestionInExam { QuestionId = s.Id, ExamId = exam.Id }).ToListAsync(); var listQuestionTrafficSign = await _context.Questions.Where(s => s.Type == QuestionType.TrafficSign) .OrderBy(s => Guid.NewGuid()).Take(5) .Select(s => new QuestionInExam { QuestionId = s.Id, ExamId = exam.Id, }).ToListAsync(); var listQuestionSituation = await _context.Questions.Where(s => s.Type == QuestionType.Situation) .OrderBy(s => Guid.NewGuid()).Take(5) .Select(s => new QuestionInExam { QuestionId = s.Id, ExamId = exam.Id }).ToListAsync(); await _context.QuestionInExams.AddRangeAsync(listQuestionLaw.Concat(listQuestionTrafficSign .Concat(listQuestionSituation))); await _context.SaveChangesAsync(); } }
public async Task <ActionResult> Create(UserDto dto) { var isExist = await _context.Users.AnyAsync(s => s.UserName == dto.UserName); if (isExist) { return(StatusCode((int)HttpStatusCode.InternalServerError, $"Đã tồn tại username: {dto.UserName}!!!")); } User user = new User { Name = dto.Name, Password = dto.Password, UserName = dto.UserName, IsActive = true, Dob = DateTime.ParseExact(dto.Dob, "dd/MM/yyyy", null), Gender = dto.Gender, Phone = dto.Phone }; await _context.AddAsync(user); await _context.SaveChangesAsync(); return(Ok()); }
public async Task <ActionResult> Create(LawDto input) { var isExist = await _context.Laws.AnyAsync(s => s.Content == input.Content); if (isExist) { return(StatusCode((int)HttpStatusCode.InternalServerError, $"Đã tồn tại content: {input.Content}!!!")); } Law law = new Law { Id = input.Id, Content = input.Content, Punishment = input.Punishment, Type = input.Type }; await _context.AddAsync(law); await _context.SaveChangesAsync(); return(Ok()); }