public async Task <ServiceResponse <object> > AddSubject(TutorSubjectDtoForAdd model) { try { //var branch = await _context.SchoolBranch.Where(m => m.BranchName == "ONLINE ACADEMY").FirstOrDefaultAsync(); var ToAdd = new TutorSubject { Name = model.Name, Active = true, ExpertRate = model.ExpertRate, CreatedById = _LoggedIn_UserID, CreatedDateTime = DateTime.UtcNow, SchoolBranchId = _LoggedIn_BranchID, }; await _context.TutorSubjects.AddAsync(ToAdd); await _context.SaveChangesAsync(); var Exist = await _context.TutorProfiles.AnyAsync(m => m.CreatedById == _LoggedIn_UserID); if (!Exist) { var ToAdd3 = new TutorProfile { GradeLevels = string.Join(',', model.GradeLevels), Active = true, SchoolBranchId = _LoggedIn_BranchID, CreatedById = _LoggedIn_UserID, CreatedDateTime = DateTime.UtcNow, }; await _context.TutorProfiles.AddAsync(ToAdd3); await _context.SaveChangesAsync(); } _serviceResponse.Message = CustomMessage.Added; _serviceResponse.Success = true; return(_serviceResponse); } catch (DbUpdateException ex) { if (ex.InnerException.Message.Contains("Cannot insert duplicate key row")) { _serviceResponse.Success = false; _serviceResponse.Message = CustomMessage.SqlDuplicateRecord; } else { throw ex; } return(_serviceResponse); } }
public async Task <IActionResult> AddSubject(TutorSubjectDtoForAdd model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (await _subjectRepo.SubjectExists(model.Name)) { return(BadRequest(new { message = CustomMessage.RecordAlreadyExist })); } _response = await _repo.AddSubject(model); return(Ok(_response)); }