public async Task <IEnumerable <Learner> > UpdateLearnerStatus(LearnerStatus learnerStatus) { Db.LearnerStatuses.Add(learnerStatus); await Db.SaveChangesAsync(); return(await GetLearnersFullDetail() .Where(l => l.Id == learnerStatus.LearnerId) .ToListAsync()); }
public static void Initialize(UsersContext context) { if (context.UserTypes.Any()) { return; } var userTypes = new UserType[] { new UserType { Name = "Admin" }, new UserType { Name = "Tutor" }, new UserType { Name = "Learner" }, new UserType { Name = "Other" } }; foreach (var userType in userTypes) { context.UserTypes.Add(userType); } context.SaveChanges(); if (context.Organisations.Any()) { return; } var orgs = new Organisation[] { new Organisation { Name = "WEST" }, new Organisation { Name = "Tribal" }, new Organisation { Name = "Others" }, new Organisation { Name = "ACT Training Group" } }; foreach (var org in orgs) { context.Organisations.Add(org); } context.SaveChanges(); if (context.Centres.Any()) { return; } var centres = new Centre[] { new Centre { OrganisationId = orgs.Single(o => o.Name == "ACT Training Group").Id, Name = "Academy of Hair and Beauty" }, new Centre { OrganisationId = orgs.Single(o => o.Name == "ACT Training Group").Id, Name = "ACT Enhance" }, new Centre { OrganisationId = orgs.Single(o => o.Name == "ACT Training Group").Id, Name = "ACT Staff Initial Assessments" } }; if (context.Users.Any()) { return; } foreach (var centre in centres) { context.Centres.Add(centre); } context.SaveChanges(); var users = new User[] { new User { Username = "******", FirstName = "Admin0 FN", LastName = "Admin0 LN", OrganisationId = 1, Birthdate = DateTime.Parse("1990-01-01"), TypeId = 1, Status = true }, new User { Username = "******", FirstName = "Tutor0 FN", LastName = "Tutor0 LN", OrganisationId = 2, Birthdate = DateTime.Parse("1991-01-01"), TypeId = 2, Status = true }, new User { Username = "******", FirstName = "Learner0 FN", LastName = "Learner0 LN", OrganisationId = 2, Birthdate = DateTime.Parse("2005-01-01"), TypeId = 3, Status = true } }; foreach (var user in users) { context.Users.Add(user); } context.SaveChanges(); if (context.Groups.Any()) { return; } var groups = new Group[] { new Group { Name = "default" } }; foreach (var group in groups) { context.Groups.Add(group); } context.SaveChanges(); if (context.Learners.Any()) { return; } var learnerUsers = users.Where(u => u.TypeId == 3); var learners = new List <Learner>(); foreach (var learnerUser in learnerUsers) { var learner = new Learner { UserId = learnerUser.Id, GroupId = 1 }; learners.Add(learner); context.Learners.Add(learner); } context.SaveChanges(); if (context.Courses.Any()) { return; } var courses = new Course[] { new Course { Name = "Application of Number 2015", IconPath = "./assets/image/esm.png" }, new Course { Name = "Communication (English) 2015", IconPath = "./assets/image/esl.png" }, new Course { Name = "Communication (Welsh) 2015", IconPath = "./assets/image/esw.png" }, new Course { Name = "Digital Literacy", IconPath = "./assets/image/esd.png" }, new Course { Name = "ESOL", IconPath = "./assets/image/esol.png" } }; foreach (var course in courses) { context.Courses.Add(course); } context.SaveChanges(); if (context.LearnerStatuses.Any()) { return; } var learnerStatuses = new LearnerStatus[] { new LearnerStatus { LearnerId = learners.Single(l => l.User.Username == "learner0").Id, CourseId = courses.Single(c => c.Name == "Application of Number 2015").Id }, new LearnerStatus { LearnerId = learners.Single(l => l.User.Username == "learner0").Id, CourseId = courses.Single(c => c.Name == "ESOL").Id } }; foreach (var learnerStatus in learnerStatuses) { context.LearnerStatuses.Add(learnerStatus); } context.SaveChanges(); }