public async Task UpdateDayAsync(DayViewModel model) { await UpdateAsync(model.Day); var daySubjects = await GetAllDaySubjectsAsync(); model.CheckList.ForEach(async item => { var existingEntry = daySubjects .FirstOrDefault(x => x.DayId == model.Day.DayId && x.SubjectId == item.Id); if (!item.IsSelected && existingEntry != null) { await RemoveAsync(existingEntry); } if (item.IsSelected && existingEntry == null) { DaySubject ds = new DaySubject() { DayId = model.Day.DayId, SubjectId = item.Id }; _context.Add(ds); } }); await _context.SaveChangesAsync(); }
public async Task AddDayAsync(DayViewModel model) { var day = new Day(); day.Name = model.Day.Name; day.Description = model.Day.Description; await AddAsync(day); foreach (var item in model.CheckList) { if (item.IsSelected) { DaySubject ds = new DaySubject() { DayId = day.DayId, SubjectId = item.Id }; _context.Add(ds); } } await _context.SaveChangesAsync(); }
public static void Initialize(AppDbContext context) { context.Database.EnsureCreated(); if (context.Users.Any() && context.Subjects.Any()) { return; // DB has been seeded } var emp1 = new Employee { Id = Guid.Parse("b96f7695-c9d9-4b5c-849e-4219083d6220"), FirstName = "Mantas", LastName = "Bagdonas", Email = "*****@*****.**" }; var emp2 = new Employee { Id = Guid.Parse("1c8c9ce0-2251-4ef3-ab0b-cfc7dd7a2949"), FirstName = "Evaldas", LastName = "Jonaitis", Email = "*****@*****.**", BossId = emp1.Id }; var emp3 = new Employee { Id = Guid.Parse("5a677c6e-56e5-4cf1-9c64-157b483e8eff"), BossId = emp2.Id, FirstName = "Justinas", LastName = "Kondroska", Email = "*****@*****.**", }; var emp4 = new Employee { Id = Guid.Parse("61f06ab5-1d19-40b3-90fa-bcd6ba20304b"), BossId = emp2.Id, FirstName = "Kostas", LastName = "Tostas", Email = "*****@*****.**" }; var emp5 = new Employee { Id = Guid.Parse("cd915686-9476-4dc9-af2f-1f4e8d6f744b"), BossId = emp4.Id, FirstName = "Arturas", LastName = "Honduras", Email = "*****@*****.**" }; var employees = new Employee[] { emp1, emp2, emp3, emp4, emp5, new Employee { Id = Guid.Parse("63f4e537-cb7b-4fe0-beca-cc080e42552d"), FirstName = "Spotify", LastName = "Premium", Email = "*****@*****.**", BossId = emp3.Id }, new Employee { Id = Guid.Parse("69ca4eef-df2a-4d04-87eb-c0e2f31c0708"), FirstName = "Petras", LastName = "Gardziulas", Email = "*****@*****.**", BossId = emp3.Id }, new Employee { Id = Guid.Parse("ca595500-ac9b-4d55-a887-7ec28bad3983"), FirstName = "Algis", LastName = "Greitullas", Email = "*****@*****.**", BossId = emp3.Id }, new Employee { Id = Guid.Parse("4cce91af-6898-4b09-9d8d-043bbdc4e654"), FirstName = "Nartumanas", LastName = "Karbovskis", Email = "*****@*****.**", BossId = emp3.Id }, new Employee { Id = Guid.Parse("c85d09e8-8658-456c-8595-502076661f41"), FirstName = "Martensas", LastName = "Gilberto", Email = "*****@*****.**", BossId = emp3.Id }, new Employee { Id = Guid.Parse("e214ea22-5d39-4cea-bf71-3749806e7bdd"), FirstName = "Zemaiciu", LastName = "Blynai", Email = "*****@*****.**", BossId = emp3.Id } }; /*context.Users.AddRange(employees); * context.SaveChanges();*/ var parentSubject = new Subject("Programming", null, "description description text"); var childOne = new Subject("Object oriented programming", parentSubject.Id, "description description text"); var childTwo = new Subject("Functional programming", parentSubject.Id, "description description text"); var subjects = new Subject[] { parentSubject, childOne, childTwo, new Subject("Java language", childOne.Id, "description description text"), new Subject("C language", childTwo.Id, "description description text") }; context.Subjects.AddRange(subjects); context.SaveChanges(); var employeeSubjects = new EmployeeSubject[] { new EmployeeSubject { EmployeeId = emp1.Id, Employee = emp1, SubjectId = parentSubject.Id, Subject = parentSubject }, new EmployeeSubject { EmployeeId = emp1.Id, Employee = emp1, SubjectId = childOne.Id, Subject = childOne }, new EmployeeSubject { EmployeeId = emp1.Id, Employee = emp1, SubjectId = childTwo.Id, Subject = childTwo }, new EmployeeSubject { EmployeeId = emp2.Id, Employee = emp2, SubjectId = parentSubject.Id, Subject = parentSubject }, new EmployeeSubject { EmployeeId = emp2.Id, Employee = emp2, SubjectId = childOne.Id, Subject = childOne }, new EmployeeSubject { EmployeeId = emp3.Id, Employee = emp3, SubjectId = childTwo.Id, Subject = childTwo }, new EmployeeSubject { EmployeeId = Guid.Parse("63f4e537-cb7b-4fe0-beca-cc080e42552d"), SubjectId = childTwo.Id }, new EmployeeSubject { EmployeeId = emp4.Id, Employee = emp4, SubjectId = parentSubject.Id, Subject = parentSubject }, new EmployeeSubject { EmployeeId = emp4.Id, Employee = emp4, SubjectId = childTwo.Id, Subject = childTwo } }; /*context.EmployeeSubjects.AddRange(employeeSubjects); * context.SaveChanges();*/ var daysList = new List <Day>(); var day1 = new Day { Employee = emp1, Id = Guid.NewGuid(), Date = new DateTime(), }; var day2 = new Day { Employee = emp2, Id = Guid.NewGuid(), Date = new DateTime(), }; daysList.Add(day1); daysList.Add(day2); context.Days.AddRange(daysList); context.SaveChanges(); var daysSubjects = new DaySubject[] { new DaySubject { Day = day1, Subject = parentSubject }, new DaySubject { Day = day1, Subject = childOne }, new DaySubject { Day = day1, Subject = childTwo }, new DaySubject { Day = day2, Subject = parentSubject }, new DaySubject { Day = day2, Subject = childTwo }, }; /*context.DaySubjects.AddRange(daysSubjects); * context.SaveChanges();*/ }