Esempio n. 1
0
        /// <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();
                }
            }
        }