public async Task <IActionResult> AssignSubjects(AssignSubjectDtoForAdd model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //if (await _repo.SubjectExists(subject.Name)) // return BadRequest(new { message = "Subject Already Exist" }); _response = await _repo.AssignSubjects(model); return(Ok(_response)); }
public async Task <ServiceResponse <object> > AssignSubjects(AssignSubjectDtoForAdd model) { try { var ListToAdd = new List <SubjectAssignment>(); foreach (var SubjectId in model.SubjectIds) { ListToAdd.Add(new SubjectAssignment { SubjectId = SubjectId, ClassId = model.ClassId, SemesterId = model.SemesterId, SchoolBranchId = _LoggedIn_BranchID, //TableOfContent = model.TableOfContent, CreatedById = _LoggedIn_UserID, CreatedDateTime = DateTime.UtcNow }); } await _context.SubjectAssignments.AddRangeAsync(ListToAdd); await _context.SaveChangesAsync(); _serviceResponse.Message = CustomMessage.Added; _serviceResponse.Success = true; } 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); }