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();//Сохраняем изменения }
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(); //Заново строим график }