public List <Department> GetDepartments()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Department.ToList());
     }
 }
 public List <Semesters> GetSemesters()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Semesters.ToList());
     }
 }
 public List <Schedule> GetAuditoriumSchedule(short auditoriumId)
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Schedule.Where(s => s.AuditoriumId == auditoriumId && s.SemesterId == GetCurrentSemester().Id).ToList());
     }
 }
 public List <Group> GetGroups()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Group.ToList());
     }
 }
 public List <Hour> GetHours()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Hour.ToList());
     }
 }
 public List <Schedule> GetFacultySchedule(int facultyId)
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Schedule.ToList());
     }
 }
 public List <Criteria> GetCriteria()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Criteria.ToList());
     }
 }
 public List <Faculty> GetFaculties()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Faculty.ToList());
     }
 }
 public List <Timetable.DomainCore.Domain.DayOfWeek> GetDaysOfWeek()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.DayOfWeek.ToList());
     }
 }
 public List <Course> GetCourses()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Course.ToList());
     }
 }
Beispiel #11
0
 public List <Schedule> GetTeacherSchedule(Raschasovka load)
 {
     using (var db = new ScheduleKSTUContext())
     {
         List <Schedule> scheduleList = db.Schedule
                                        .Include(s => s.ScheduleWeeks)
                                        .Where(s => s.TeacherId == load.TeacherId && s.SemesterId == GetCurrentSemester().Id).ToList();
         List <Schedule> teachersFree = new List <Schedule>();
         foreach (var s in scheduleList)
         {
             //weeksContains = !load.RaschasovkaWeeks.Where(rw => rw.HoursForWeek != 0).Select(w => new Week { Id = w.WeekId }).Except(s.ScheduleWeeks.Select(sw => new Week
             //{
             //    Id = sw.WeekId,
             //})).Any();
             var set    = new HashSet <int>(load.RaschasovkaWeeks.Where(rw => rw.HoursForWeek != 0).Select(w => (int)w.WeekId));
             var set2   = s.ScheduleWeeks.Select(sw => (int)sw.WeekId);
             var equals = set.SetEquals(set2);
             if (equals == false && set.Count() == set2.Count())
             {
                 teachersFree.Add(s);
             }
         }
         scheduleList = scheduleList.Except(teachersFree).ToList();
         return(scheduleList);
     }
 }
Beispiel #12
0
 public bool InsertGenTeachers(List <RateData> teachers)
 {
     using (var db = new ScheduleKSTUContext())
     {
         using (var dbContextTransaction = db.Database.BeginTransaction())
         {
             ///////!!!!!!!
             db.Database.ExecuteSqlCommand("Delete From Gen_Teachers");
             try
             {
                 foreach (RateData teach in teachers)
                 {
                     db.GenTeachers.Add(new GenTeachers
                     {
                         TeacherId = teach.Id,
                         Rate      = teach.Rate + 1
                     });
                 }
                 db.SaveChanges();
                 dbContextTransaction.Commit();
             }
             catch (Exception ex)
             {
                 dbContextTransaction.Rollback();
                 throw ex;
             }
         }
     }
     return(true);
 }
Beispiel #13
0
 public List <TimeslotsWeight> GetTimeslotsWeight()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Set <TimeslotsWeight>().FromSql("dbo.GetTimeslotsWeight").AsNoTracking().ToList());
     }
 }
Beispiel #14
0
 public List <TableWeight> GetSubjectClassWeight()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Set <TableWeight>().FromSql("dbo.GetSubjectClassWeight").AsNoTracking().ToList());
     }
 }
 public Faculty GetFacultie(int id)
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Faculty.FirstOrDefault(f => f.Id == id));
     }
 }
 public List <Week> GetWeeks()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Week.ToList());
     }
 }
 public Week GetWeekNumber(byte id)
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Week.FirstOrDefault(w => w.Id == id));
     }
 }
 public List <Raschasovka> GetLoad()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Raschasovka.ToList());
     }
 }
 public List <Teacher> GetTeachers()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Teacher.ToList());
     }
 }
 public int AddScheduleTimeslot(Raschasovka load, TimeslotsCriteriaWeight timeslot)
 {
     using (var db = new ScheduleKSTUContext())
     {
         Schedule schedule;
         using (var dbContextTransaction = db.Database.BeginTransaction())
         {
             try
             {
                 schedule = new Schedule
                 {
                     GroupId       = load.GroupId,
                     TeacherId     = load.TeacherId,
                     SubjectId     = load.SubjectId,
                     SubjectTypeId = load.SubjectTypeId,
                     SemesterId    = GetCurrentSemester().Id,
                     HourId        = timeslot.HourId,
                     DayOfWeekId   = timeslot.DayId,
                     AuditoriumId  = timeslot.AuditoriumId,
                 };
                 db.Schedule.Add(schedule);
                 db.SaveChanges();
                 dbContextTransaction.Commit();
             }
             catch (Exception ex)
             {
                 dbContextTransaction.Rollback();
                 throw ex;
             }
         }
         return(schedule.Id);
     }
 }
 public List <Auditorium> GetAuditoriums()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Auditorium.ToList());
     }
 }
 public bool AddScheduleWeeks(int scheduleId, int loadId)
 {
     using (var db = new ScheduleKSTUContext())
     {
         using (var dbContextTransaction = db.Database.BeginTransaction())
         {
             try
             {
                 List <ScheduleWeeks> scheduleWeeks = db.RaschasovkaWeeks.Where(rw => rw.RaschasovkaId == loadId && rw.HoursForWeek != 0)
                                                      .Select(rw => new ScheduleWeeks {
                     ScheduleId = scheduleId, WeekId = rw.WeekId
                 }).ToList();
                 db.ScheduleWeeks.AddRange(scheduleWeeks);
                 db.SaveChanges();
                 dbContextTransaction.Commit();
             }
             catch (Exception ex)
             {
                 dbContextTransaction.Rollback();
                 throw;
             }
         }
     }
     return(true);
 }
 public List <SubjectType> GetSubjectTypes()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.SubjectType.ToList());
     }
 }
Beispiel #24
0
        public bool InsertGenTimeslots(List <CriteriaRate> timeslots, int i)
        {
            using (var db = new ScheduleKSTUContext())
            {
                using (var dbContextTransaction = db.Database.BeginTransaction())
                {
                    ///////!!!!!!!
                    db.Database.ExecuteSqlCommand("Delete From Gen_Timeslots");

                    try
                    {
                        foreach (CriteriaRate cr in timeslots)
                        {
                            db.GenTimeslots.Add(new GenTimeslots
                            {
                                AuditoriumId = cr.timeslots.AuditoriumId,
                                DayId        = cr.timeslots.DayId,
                                HourId       = cr.timeslots.HourId,
                                Rate         = cr.Rate + 1
                            });
                        }

                        db.SaveChanges();
                        dbContextTransaction.Commit();
                    }
                    catch (Exception ex)
                    {
                        dbContextTransaction.Rollback();
                        throw ex;
                    }
                }
            }
            return(true);
        }
 /*
  * Load
  *
  */
 public List <Raschasovka> GetFlawsFromLoad()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Raschasovka.Where(load => load.Potok != null).ToList());
     }
 }
 public byte GetCurrentWeek()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Week.FirstOrDefault().Id);
     }
 }
 public List <Raschasovka> GetGroupsLoadForCurrentSemester()
 {
     using (var db = new ScheduleKSTUContext())
     {
         return(db.Raschasovka.Where(load => load.Semester.Id == GetSemesterByName("Весенний").Id)
                .Include(l => l.RaschasovkaWeeks)
                .OrderBy(load => load.Course.Number).ToList());
     }
 }
 /*
  * Semester
  *
  */
 public Semesters GetSemesterByName(string semesterName)
 {
     using (var db = new ScheduleKSTUContext())
     {
         Semesters semester = db.Semesters.FirstOrDefault(sem => sem.Name == semesterName);
         return(new Semesters
         {
             Id = semester.Id,
             Name = semester.Name
         });
     }
 }
        //public List<TeachersLoadWeight> GetTeachersLoadRate()
        //{
        //    int i = 0;
        //    var GenList = db.Raschasovka.GroupBy(r => new { r.TeacherId, r.TotalHoursForSemestr })
        //        .Select(r => new TeachersLoadRate { Id = 0, Rate = r.Count() + r.Key.TotalHoursForSemestr, TeacherId = r.Key.TeacherId, TotalHours = r.Key.TotalHoursForSemestr }).ToList();
        //    foreach (var item in GenList)
        //        item.Id = ++i;
        //    InsertGenTeachers(GenList.Select(l=>new RateData {Id = l.Id, Rate = l.Rate }).ToList());
        //    return GenList.Join(GetTeachersWeight(), l => l.Id, w => w.Id, (l, w) => new TeachersLoadWeight { TeacherId = l.TeacherId, TotalHours = l.TotalHours, Weight = w.Weight }).ToList();
        //}

        public List <RateData> GetTeachersLoadRate()
        {
            //return db.Raschasovka.GroupBy(r => new { r.TeacherId, r.TotalHoursForSemestr })
            //    .Select(r => new RateData { Rate = r.Count() + r.Key.TotalHoursForSemestr, Id = r.Key.TeacherId }).ToList();
            using (var db = new ScheduleKSTUContext())
            {
                return(db.Raschasovka.GroupBy(r => r.TeacherId)
                       .Select(r => new RateData {
                    Rate = r.Count(), Id = r.Key
                }).ToList());
            }
        }
        /*
         *
         * Faculties
         *
         */

        public List <Faculty> GetFacultiesView()
        {
            using (var db = new ScheduleKSTUContext())
            {
                return(db.Faculty.Select(f => new Faculty
                {
                    Id = f.Id,
                    FullName = f.FullName,
                    Name = f.Name
                }).ToList());
            }
        }