コード例 #1
0
        public void CreateOrUpdate(ImplementerBindingModel model)
        {
            Implementer tempImplementer = new Implementer {
                Id = 1
            };

            bool isImplementerExist = false;

            foreach (var implementer in source.Implementers)
            {
                if (implementer.Id >= tempImplementer.Id)
                {
                    tempImplementer.Id = implementer.Id + 1;
                }
                else if (implementer.Id == model.Id)
                {
                    tempImplementer    = implementer;
                    isImplementerExist = true;
                    break;
                }
            }

            if (isImplementerExist)
            {
                CreateModel(model, tempImplementer);
            }
            else
            {
                source.Implementers.Add(CreateModel(model, tempImplementer));
            }
        }
コード例 #2
0
 private Implementer CreateModel(ImplementerBindingModel model, Implementer Implementer)
 {
     Implementer.ImplementerFIO = model.ImplementerFIO;
     Implementer.WorkingTime    = model.WorkingTime;
     Implementer.PauseTime      = model.PauseTime;
     return(Implementer);
 }
        public void CreateOrUpdate(ImplementerBindingModel model)
        {
            Implementer element = source.Implementers.FirstOrDefault(rec =>
                                                                     rec.ImplementerFIO == model.ImplementerFIO && rec.Id != model.Id);

            if (element != null)
            {
                throw new Exception("Уже есть исполнитель с таким ФИО!");
            }
            if (model.Id.HasValue)
            {
                element = source.Implementers.FirstOrDefault(rec => rec.Id == model.Id);
                if (element == null)
                {
                    throw new Exception("Элемент не найден");
                }
            }
            else
            {
                int maxId = source.Implementers.Count > 0 ? source.Implementers.Max(rec => rec.Id) : 0;
                element = new Implementer {
                    Id = maxId + 1
                };
                source.Implementers.Add(element);
            }
            element.ImplementerFIO = model.ImplementerFIO;
            element.WorkingTime    = model.WorkingTime;
            element.PauseTime      = model.PauseTime;
        }
        public void CreateOrUpdate(ImplementerBindingModel model)
        {
            Implementer tempImplementer = model.Id.HasValue ? null : new Implementer {
                Id = 1
            };

            foreach (var implementer in source.Implementers)
            {
                if (implementer.ImplementerFIO == model.ImplementerFIO && implementer.Id != model.Id)
                {
                    throw new Exception("Уже есть исполнитель с таким ФИО!");
                }
                if (!model.Id.HasValue && implementer.Id >= tempImplementer.Id)
                {
                    tempImplementer.Id = implementer.Id + 1;
                }
                else if (model.Id.HasValue && implementer.Id == model.Id)
                {
                    tempImplementer = implementer;
                }
            }
            if (model.Id.HasValue)
            {
                if (tempImplementer == null)
                {
                    throw new Exception("Элемент не найден");
                }
                CreateModel(model, tempImplementer);
            }
            else
            {
                model.Id = source.Implementers.Count + 1;
                source.Implementers.Add(CreateModel(model, tempImplementer));
            }
        }
コード例 #5
0
 public void CreateOrUpdate(ImplementerBindingModel model)
 {
     using (var context = new AbstractSweetShopDatabase())
     {
         Implementer element = context.Implementers.FirstOrDefault(rec => rec.ImplementerFIO == model.ImplementerFIO && rec.Id != model.Id);
         if (element != null)
         {
             throw new Exception("Уже есть исполнитель с таким ФИО!");
         }
         if (model.Id.HasValue)
         {
             element = context.Implementers.FirstOrDefault(rec => rec.Id == model.Id);
             if (element == null)
             {
                 throw new Exception("Исполнитель не найден");
             }
         }
         else
         {
             element = new Implementer();
             context.Implementers.Add(element);
         }
         element.ImplementerFIO = model.ImplementerFIO;
         element.WorkingTime    = model.WorkingTime;
         element.PauseTime      = model.PauseTime;
         context.SaveChanges();
     }
 }
 public void Delete(ImplementerBindingModel model)
 {
     for (int i = 0; i < source.Implementers.Count; ++i)
     {
         if (source.Implementers[i].Id == model.Id.Value)
         {
             source.Implementers.RemoveAt(i);
             return;
         }
     }
     throw new Exception("Элемент не найден");
 }
コード例 #7
0
        public void Delete(ImplementerBindingModel model)
        {
            Implementer element = source.Implementers.FirstOrDefault(rec => rec.Id == model.Id);

            if (element != null)
            {
                source.Implementers.Remove(element);
            }
            else
            {
                throw new Exception("Элемент не найден");
            }
        }
 public List <ImplementerViewModel> Read(ImplementerBindingModel model)
 {
     return(source.Implementers
            .Where(rec => model == null || rec.Id == model.Id)
            .Select(rec => new ImplementerViewModel
     {
         Id = rec.Id,
         ImplementerFIO = rec.ImplementerFIO,
         WorkingTime = rec.WorkingTime,
         PauseTime = rec.PauseTime
     })
            .ToList());
 }
コード例 #9
0
 public List <ImplementerViewModel> Read(ImplementerBindingModel model)
 {
     using (var context = new AbstractSweetShopDatabase())
     {
         return(context.Implementers
                .Where(rec => model == null || rec.Id == model.Id)
                .Select(rec => new ImplementerViewModel
         {
             Id = rec.Id,
             ImplementerFIO = rec.ImplementerFIO,
             WorkingTime = rec.WorkingTime,
             PauseTime = rec.PauseTime
         })
                .ToList());
     }
 }
コード例 #10
0
 public void Delete(ImplementerBindingModel model)
 {
     using (var context = new AbstractSweetShopDatabase())
     {
         Implementer element = context.Implementers.FirstOrDefault(rec => rec.Id == model.Id);
         if (element != null)
         {
             context.Implementers.Remove(element);
             context.SaveChanges();
         }
         else
         {
             throw new Exception("Исполнитель не найден");
         }
     }
 }
コード例 #11
0
        public void CreateOrUpdate(ImplementerBindingModel model)
        {
            Implementer element = source.Implementers.FirstOrDefault(rec => rec.Id == model.Id);

            if (element == null)
            {
                int maxId = source.Implementers.Count > 0 ? source.Implementers.Max(rec => rec.Id) : 0;
                element = new Implementer {
                    Id = maxId + 1
                };
                source.Implementers.Add(element);
            }

            element.ImplementerFIO = model.ImplementerFIO;
            element.WorkingTime    = model.WorkingTime;
            element.PauseTime      = model.PauseTime;
        }
        public List <ImplementerViewModel> Read(ImplementerBindingModel model)
        {
            List <ImplementerViewModel> result = new List <ImplementerViewModel>();

            foreach (var implementer in source.Implementers)
            {
                if (model != null)
                {
                    if (implementer.Id == model.Id)
                    {
                        result.Add(CreateViewModel(implementer));
                        break;
                    }
                    continue;
                }
                result.Add(CreateViewModel(implementer));
            }
            return(result);
        }
コード例 #13
0
        public void CreateOrUpdate(ImplementerBindingModel model)
        {
            using (var context = new SecureShopDatabase())
            {
                Implementer element = context.Implementers.FirstOrDefault(rec => rec.Id == model.Id);

                if (element == null)
                {
                    element = new Implementer();
                    context.Implementers.Add(element);
                }

                element.ImplementerFIO = model.ImplementerFIO;
                element.WorkingTime    = model.WorkingTime;
                element.PauseTime      = model.PauseTime;

                context.SaveChanges();
            }
        }