Esempio n. 1
0
 public void Insert(WorkerBindingModel model)
 {
     using (var context = new CTODatabase())
     {
         context.Workers.Add(CreateModel(model, new Worker()));
         context.SaveChanges();
     }
 }
Esempio n. 2
0
 private Worker CreateModel(WorkerBindingModel model, Worker worker)
 {
     worker.FIO         = model.FIO;
     worker.NumberPhone = model.NumberPhone;
     worker.Email       = model.Email;
     worker.Password    = model.Password;
     return(worker);
 }
Esempio n. 3
0
        public void Delete(WorkerBindingModel model)
        {
            var element = _workerStorage.GetElement(new WorkerBindingModel {
                Id = model.Id
            });

            if (element == null)
            {
                throw new Exception("Сотрудник не найден");
            }
            _workerStorage.Delete(model);
        }
Esempio n. 4
0
 public void Update(WorkerBindingModel model)
 {
     using (var context = new CTODatabase())
     {
         var element = context.Workers.FirstOrDefault(rec => rec.Id == model.Id);
         if (element == null)
         {
             throw new Exception("Сотрудник не найден");
         }
         CreateModel(model, element);
         context.SaveChanges();
     }
 }
Esempio n. 5
0
 public List <WorkerViewModel> Read(WorkerBindingModel model)
 {
     if (model == null)
     {
         return(_workerStorage.GetFullList());
     }
     if (model.Id.HasValue)
     {
         return(new List <WorkerViewModel> {
             _workerStorage.GetElement(model)
         });
     }
     return(_workerStorage.GetFilteredList(model));
 }
Esempio n. 6
0
        public bool Login(WorkerBindingModel model)
        {
            var worker = storage.GetElement(
                new WorkerBindingModel
            {
                Login = model.Login
            });

            if (worker == null || !worker.Password.Equals(model.Password))
            {
                throw new Exception("Работник c такими данными не найден");
            }
            return(true);
        }
Esempio n. 7
0
 private void buttonCharge_Click(object sender, EventArgs e)
 {
     if (comboBoxFIO.SelectedValue == null)
     {
         MessageBox.Show("Выберите ФИО сотрудника", "Ошибка", MessageBoxButtons.OK,
                         MessageBoxIcon.Error);
         return;
     }
     if (comboBoxFIO.SelectedValue != null)
     {
         try
         {
             int client = 0;
             int id     = Convert.ToInt32(comboBoxFIO.SelectedValue);
             WorkerBindingModel model = new WorkerBindingModel();
             var countDone            = 0;
             var ticke = logicS.Read(null);
             foreach (var tick in ticke)
             {
                 if (tick.WorkerId == id)
                 {
                     client++;
                     if (tick.Status == Status.Продан)
                     {
                         countDone++;
                     }
                 }
             }
             if (countDone == client)
             {
                 model.Salary = 40000;
             }
             if ((client - countDone >= 1) && (client - countDone <= 3))
             {
                 model.Salary = 30000;
             }
             if (client - countDone > 3)
             {
                 model.Salary = 20000;
             }
             textBoxSalary.Text = model.Salary.ToString();
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK,
                             MessageBoxIcon.Error);
         }
     }
 }
Esempio n. 8
0
        public void Delete(WorkerBindingModel model)
        {
            var waiter = storage.GetElement(
                new WorkerBindingModel
            {
                Id = model.Id
            });

            if (waiter == null)
            {
                throw new Exception("Работник не найден");
            }

            storage.Delete(model);
        }
Esempio n. 9
0
 public void Delete(WorkerBindingModel model)
 {
     using (var context = new CTODatabase())
     {
         Worker element = context.Workers.FirstOrDefault(rec => rec.Id == model.Id);
         if (element != null)
         {
             context.Workers.Remove(element);
             context.SaveChanges();
         }
         else
         {
             throw new Exception("Сотрудник не найден");
         }
     }
 }
Esempio n. 10
0
 public List <WorkerViewModel> Read(WorkerBindingModel model)
 {
     using (var context = new ZooDatabase())
     {
         return(context.Workers
                .Where(rec => model == null || rec.Id == model.Id)
                .ToList()
                .Select(rec => new WorkerViewModel
         {
             Id = rec.Id,
             WorkerFIO = rec.WorkerFIO,
             Email = rec.Email,
             Salary = rec.Salary
         })
                .ToList());
     }
 }
Esempio n. 11
0
        public void CreateOrUpdate(WorkerBindingModel model)
        {
            var element = _workerStorage.GetElement(new WorkerBindingModel {
                Telephone = model.Telephone
            });

            if (element != null && element.Id != model.Id)
            {
                throw new Exception("Уже есть сотрудник с таким номером телефона");
            }
            if (model.Id.HasValue)
            {
                _workerStorage.Update(model);
            }
            else
            {
                _workerStorage.Insert(model);
            }
        }
Esempio n. 12
0
 public List <WorkerViewModel> GetFilteredList(WorkerBindingModel model)
 {
     if (model == null)
     {
         return(null);
     }
     using (var context = new CTODatabase())
     {
         return(context.Workers.Where(rec => rec.Email == model.Email && rec.Password == rec.Password)
                .Select(rec => new WorkerViewModel
         {
             Id = rec.Id,
             FIO = rec.FIO,
             NumberPhone = rec.NumberPhone,
             Email = rec.Email,
             Password = rec.Password
         })
                .ToList());
     }
 }
Esempio n. 13
0
        public void CreateOrUpdate(WorkerBindingModel model)
        {
            var element = _workerStorage.GetElement(new WorkerBindingModel
            {
                Email = model.Email
            });

            if (element != null && element.Id != model.Id)
            {
                throw new Exception("Уже есть пользователь с таким логином");
            }
            if (model.Id.HasValue)
            {
                _workerStorage.Update(model);
            }
            else
            {
                _workerStorage.Insert(model);
            }
        }
Esempio n. 14
0
        public void AddElement(WorkerBindingModel model)
        {
            int maxId = 0;

            for (int i = 0; i < source.Workers.Count; ++i)
            {
                if (source.Workers[i].Id > maxId)
                {
                    maxId = source.Workers[i].Id;
                }
                if (source.Workers[i].WorkerFIO == model.WorkerFIO)
                {
                    throw new Exception("Уже есть сотрудник с таким ФИО");
                }
            }
            source.Workers.Add(new Worker
            {
                Id        = maxId + 1,
                WorkerFIO = model.WorkerFIO
            });
        }
Esempio n. 15
0
 public WorkerViewModel GetElement(WorkerBindingModel model)
 {
     if (model == null)
     {
         return(null);
     }
     using (var context = new CTODatabase())
     {
         var worker = context.Workers.FirstOrDefault(rec => rec.Id == model.Id || rec.Email == model.Email);
         return(worker != null ?
                new WorkerViewModel
         {
             Id = worker.Id,
             FIO = worker.FIO,
             NumberPhone = worker.NumberPhone,
             Email = worker.Email,
             Password = worker.Password
         } :
                null);
     }
 }
Esempio n. 16
0
        public void CreateOrUpdate(WorkerBindingModel model)
        {
            var worker = storage.GetElement(
                new WorkerBindingModel
            {
                Login = model.Login
            });

            if (worker != null && worker.Id != model.Id)
            {
                throw new Exception("Данная почта для работника  зарегестрирована!");
            }

            if (model.Id.HasValue)
            {
                storage.Update(model);
            }
            else
            {
                storage.Insert(model);
            }
        }
Esempio n. 17
0
        public void UpdElement(WorkerBindingModel model)
        {
            int index = -1;

            for (int i = 0; i < source.Workers.Count; ++i)
            {
                if (source.Workers[i].Id == model.Id)
                {
                    index = i;
                }
                if (source.Workers[i].WorkerFIO == model.WorkerFIO &&
                    source.Workers[i].Id != model.Id)
                {
                    throw new Exception("Уже есть сотрудник с таким ФИО");
                }
            }
            if (index == -1)
            {
                throw new Exception("Элемент не найден");
            }
            source.Workers[index].WorkerFIO = model.WorkerFIO;
        }
Esempio n. 18
0
 public void CreateOrUpdate(WorkerBindingModel model)
 {
     using (var context = new ZooDatabase())
     {
         Worker element = context.Workers.FirstOrDefault(rec => rec.Id == model.Id);
         if (model.Id.HasValue)
         {
             element = context.Workers.FirstOrDefault(rec => rec.Id == model.Id);
             if (element == null)
             {
                 throw new Exception("Элемент не найден");
             }
         }
         else
         {
             element = new Worker();
             context.Workers.Add(element);
         }
         element.WorkerFIO = model.WorkerFIO;
         element.Salary    = model.Salary;
         context.SaveChanges();
     }
 }
Esempio n. 19
0
 public void Register(WorkerBindingModel model) => _logic.CreateOrUpdate(model);
Esempio n. 20
0
 public void UpdateData(WorkerBindingModel model) => _logic.CreateOrUpdate(model);