Beispiel #1
0
        public void CreateOrUpdate(DisciplineBindingModel model)
        {
            var discipline = disciplineStorage.GetElement(
                new DisciplineBindingModel
            {
                NameDiscipline = model.NameDiscipline
            });

            var user = userStorage.GetElement(
                new UserBindingModel
            {
                Id = model.UserId
            });

            if (discipline != null && discipline.Id != model.Id)
            {
                throw new Exception("Уже есть такая дисциплина");
            }

            if (user.NameRole != "Преподаватель")
            {
                throw new Exception("Не выбран преподаватель");
            }

            if (model.Id.HasValue)
            {
                disciplineStorage.Update(model);
            }
            else
            {
                disciplineStorage.Insert(model);
            }
        }
Beispiel #2
0
 public void Insert(DisciplineBindingModel model)
 {
     using (var context = new JournalDb())
     {
         context.Disciplines.Add(CreateModel(model, new Discipline()));
         context.SaveChanges();
     }
 }
Beispiel #3
0
        public List <DisciplineViewModel> Read(DisciplineBindingModel model)
        {
            if (model == null)
            {
                return(disciplineStorage.GetFullList());
            }

            return(new List <DisciplineViewModel> {
                disciplineStorage.GetElement(model)
            });
        }
Beispiel #4
0
 public List <DisciplineViewModel> Read(DisciplineBindingModel model)
 {
     if (model == null)
     {
         return(_disciplineStorage.GetFullList());
     }
     if (model.Id.HasValue)
     {
         return(new List <DisciplineViewModel> {
             _disciplineStorage.GetElement(model)
         });
     }
     return(_disciplineStorage.GetFilteredList(model));
 }
Beispiel #5
0
        public void Delete(DisciplineBindingModel model)
        {
            var discipline = disciplineStorage.GetElement(
                new DisciplineBindingModel
            {
                Id = model.Id
            });

            if (discipline == null)
            {
                throw new Exception("Дисциплина не найден");
            }

            disciplineStorage.Delete(model);
        }
Beispiel #6
0
        public void Delete(DisciplineBindingModel model)
        {
            using (var context = new JournalDb())
            {
                var discipline = context.Disciplines.FirstOrDefault(rec => rec.Id == model.Id);

                if (discipline == null)
                {
                    throw new Exception("Дисциплина не найдена");
                }

                context.Disciplines.Remove(discipline);
                context.SaveChanges();
            }
        }
        public List <DisciplineViewModel> GetFilteredList(DisciplineBindingModel model)
        {
            if (model == null)
            {
                return(null);
            }

            using (var context = new Context())
            {
                return(context.Disciplines
                       .Include(rec => rec.Customer)
                       .ThenInclude(rec => rec.User)
                       .Include(rec => rec.Thread)
                       .Where(rec => rec.Name.Contains(model.Name))
                       .Select(CreateViewModel)
                       .ToList());
            }
        }
        public DisciplineViewModel GetElement(DisciplineBindingModel model)
        {
            if (model == null)
            {
                return(null);
            }

            using (var context = new Context())
            {
                var discipline = context.Disciplines
                                 .Include(rec => rec.Customer)
                                 .ThenInclude(rec => rec.User)
                                 .Include(rec => rec.Thread)
                                 .FirstOrDefault(rec => rec.Name == model.Name ||
                                                 rec.Id == model.Id);

                return(discipline != null?CreateViewModel(discipline) : null);
            }
        }
Beispiel #9
0
        public DisciplineViewModel GetElement(DisciplineBindingModel model)
        {
            if (model == null)
            {
                return(null);
            }
            using (var context = new JournalDb())
            {
                var discipline = context.Disciplines
                                 .Include(rec => rec.User)
                                 .FirstOrDefault(rec => rec.NameDiscipline == model.NameDiscipline ||
                                                 rec.Id == model.Id);

                return(discipline != null ?
                       new DisciplineViewModel
                {
                    Id = discipline.Id,
                    NameDiscipline = discipline.NameDiscipline,
                    UserId = discipline.UserId,
                    NameUser = discipline.User.UserName
                } :
                       null);
            }
        }
Beispiel #10
0
 private Discipline CreateModel(DisciplineBindingModel model, Discipline discipline)
 {
     discipline.NameDiscipline = model.NameDiscipline;
     discipline.UserId         = model.UserId;
     return(discipline);
 }