/// <summary> /// Выдает кредит. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void IssueCreditButtonBase_OnClick(object sender, RoutedEventArgs e) { if (PhysicalTabItem.IsSelected && PhysicalPersonsDataGrid.CurrentItem != null) { row = (DataRowView)PhysicalPersonsDataGrid.SelectedItem; } else if (LegalTabItem.IsSelected && LegalPersonsDataGrid.CurrentItem != null) { row = (DataRowView)LegalPersonsDataGrid.SelectedItem; } else { MessageBox.Show("Выберите нужного клиента!"); return; } OpenDepositOrCreditWindow openDepositOrCreditWindow = new OpenDepositOrCreditWindow(); openDepositOrCreditWindow.CapitalizationCheckBox.IsEnabled = false; if (openDepositOrCreditWindow.ShowDialog() == true) { // Костыль для инициализации таблицы. bankManager.GetCreditsTable(); DataRow dataRow = bankManager.CreditsDataTable.NewRow(); dataRow["ClientId"] = Int32.Parse(row["Id"].ToString()); dataRow["Sum"] = openDepositOrCreditWindow.Sum; dataRow["Rate"] = bool.Parse(row["Vip"].ToString()) ? 0.5 : 0.3; dataRow["Period"] = openDepositOrCreditWindow.Period; bankManager.CreditsDataTable.Rows.Add(dataRow); try { bankManager.CreditsSqlDataAdapter.SafelyUpdate(bankManager.CreditsDataTable); } catch (Exception ex) { MessageBox.Show($"Не удалось обновить таблицу кредитов. {ex.Message}"); Close(); } row["Sum"] = Int32.Parse(row["Sum"].ToString()) - openDepositOrCreditWindow.Sum; try { bankManager.CreditsSqlDataAdapter.SafelyUpdate(bankManager.CreditsDataTable); } catch (Exception ex) { MessageBox.Show($"Не удалось обновить таблицу кредитов. {ex.Message}"); Close(); } } }