コード例 #1
0
        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();
        }
コード例 #2
0
        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();
        }
コード例 #3
0
        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();*/
        }