Example #1
0
        private void button2_Click(object sender, EventArgs e) //Вызов формы регистрации
        {
            RegisterForm form   = new RegisterForm();          //Вызываем форму регистрации
            DialogResult result = form.ShowDialog(this);

            if (result == DialogResult.Cancel)//После закрытия формы заносим полученные данные в базу
            {
                return;
            }
            Role   role   = db.Roles.FirstOrDefault(u => u.Name == "Admin");
            Person person = new Person();//Создаем пользователя с ролью Admin, с введенными при регистрации Login
            string str1   = PasswordHash.CreateSalt();

            person.role            = role;
            person.RoleId          = role.Id;
            person.Login           = form.textBox1.Text;
            person.PasswordHash    = PasswordHash.GetHash(form.textBox2.Text + str1);//Пароль хэшируем с солью и вносим соль и хэш в бд
            person.PasswordSalt    = str1;
            person.PersonalAccount = 0;
            db.People.Add(person);
            db.SaveChanges();//Сохраняем изменения
        }
Example #2
0
        private void button3_Click(object sender, EventArgs e) //Кнопка добавления товара
        {
            ItemAddForm form = new ItemAddForm();              //Вызываем форму

            DialogResult result = form.ShowDialog(this);

            if (result == DialogResult.Cancel)//После закрытия формы заносим полученные данные в базу
            {
                return;
            }
            Item item = new Item();

            item.Name         = form.textBox1.Text;              //Создаем товар по введенным данным
            item.ExchangeRate = Convert.ToDouble(form.textBox2.Text);
            ExchangeRateHistory erh = new ExchangeRateHistory(); //Делаем запись об изменении курса товара

            erh.DateOfChange       = DateTime.Now;
            erh.ExchangeRateChange = item.ExchangeRate;
            erh.Item = item;
            item.RateHistory.Add(erh);

            db.Items.Add(item);//Сохраняем запись и товар в бд
            db.ExchangeRateHistories.Add(erh);
            db.SaveChanges();
            List <Person> users = db.People.Local.Where(u => u.role.Name == "User").ToList();//для каждого юзера создаем баланс этого товара в бд

            if (users != null)
            {
                foreach (Person v in users)
                {
                    ItemPersonAccount ipa = new ItemPersonAccount();
                    ipa.Item         = item;
                    ipa.ItemQuantity = 0;
                    ipa.Person       = v;
                    ipa.PersonId     = v.Id;
                    db.ItemPersonAccounts.Add(ipa);
                    v.Accounts.Add(ipa);
                    db.SaveChanges();
                }
            }
            dataGridView1.Refresh(); //Обновляем таблицу товаров
            Updater();               //Обновляем таблицу истории курса
            GraphBuild();            //Заново строим график
        }