Exemplo n.º 1
0
        /// <summary>
        /// Перевод средств между клиентами
        /// </summary>
        /// <param name="Sum_Transfer"></param>
        internal void Transfer(TextBox Sum_Transfer, TextBlock Selected_Finance, TextBlock Current_Finance)
        {
            try
            {
                MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Client.SetLeve();

                if (agent.Work == true)
                {
                    int x = 0;
                    if (Int32.TryParse(Sum_Transfer.Text, out x))
                    {
                    }
                    else
                    {
                        throw new MyExeption("Сумма Перевода введена не корректно");
                    }

                    if (needId == -1)
                    {
                        throw new MyExeption("Вы пытаетесь сделать перевод на несуществующий счет!");
                    }
                    int sum = Convert.ToInt32(Sum_Transfer.Text);

                    // Перегрузка операторов >
                    if (sum > 0 || MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId] < sum /*sum < Convert.ToInt32(MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance)*/)
                    {
                        ///Используются методы расширения
                        MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance = MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance.SubUint(sum);

                        MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].Acc_finance = MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].Acc_finance.SumUint(sum);
                        //было
                        //MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance = (Convert.ToInt32(MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance) - sum).ToString();
                        //MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].Acc_finance = (Convert.ToInt32(MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].Acc_finance) + sum).ToString();
                        var  cl  = MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Client;
                        var  one = MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].IdCashAcc;
                        var  two = MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].IdCashAcc;
                        Logi l   = new Logi(("Перевод мeждусчитами " + one + " и " + two + "  на сумму " + sum + "p. " + (DateTime.Now).ToString()));
                        MainWindow.ML.LogiAll.Logis.Add(l);
                        MainWindow.ML.LogiAll.Save();

                        Current_Finance.Text  = MainWindow.ML.all_Cash_Accounts.All_cash_acc[selectedId].Acc_finance;
                        Selected_Finance.Text = MainWindow.ML.all_Cash_Accounts.All_cash_acc[needId].Acc_finance;

                        Ev_Mes += Mes;
                        Ev_Mes("Вы перевели " + sum.ToString());
                        Ev_Mes -= Mes;
                    }
                    else
                    {
                        MessageBox.Show("Вы ввели не коректную сумму");
                    }
                }
            }

            catch (MyExeption e)
            {
                MessageBox.Show("Проверьте вводимые значения. " + e.Message);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Переводит средства со счета на счет
        /// </summary>
        /// <param name="Combo_Selected_Acc"></param>
        /// <param name="Sum_Transfer"></param>
        /// <param name="Selected_Finance"></param>
        internal void Trasfer(ComboBox Combo_Selected_Acc, TextBox Sum_Transfer, TextBlock Selected_Finance, TextBlock Current_Finance)
        {
            if (Sum_Transfer.Text != "")
            {
                try
                {
                    var id = ((Cash_Account)Combo_Selected_Acc.SelectedItem);
                    (MainWindow.ML.all_Cash_Accounts[id.Client.Passport])[0].Client.SetLeve();

                    if ((MainWindow.ML.all_Cash_Accounts[id.Client.Passport])[0].Client.Work == true)
                    {
                        // var id = ((Cash_Account)Combo_Selected_Acc.SelectedItem);
                        uint sum_toTrans = 0;
                        if (UInt32.TryParse(Sum_Transfer.Text, out sum_toTrans))
                        {
                        }
                        else
                        {
                            throw new MyExeption("Вы ввели некоректную сумму для перевода");
                        }


                        if (sum_toTrans > Convert.ToUInt32(Selected_Finance.Text))
                        {
                            MessageBox.Show("Недостаточно средств!");
                        }


                        else
                        {
                            foreach (var acc in curent_acc)
                            {
                                if (id == acc)
                                {
                                    ///Используются методы расширения
                                    acc.Acc_finance = acc.Acc_finance.SubUint(sum_toTrans);
                                    // acc.Acc_finance = (Convert.ToUInt32(acc.Acc_finance) - sum_toTrans).ToString();
                                    //Selected_Finance.Text = acc.Acc_finance;
                                }
                                else if (acc.IdCashAcc == cur_acc1.IdCashAcc)
                                {
                                    ///Используются методы расширения
                                    acc.Acc_finance = acc.Acc_finance.SumUint(sum_toTrans);
                                    //БЫЛО
                                    // acc.Acc_finance = (Convert.ToUInt32(acc.Acc_finance) + sum_toTrans).ToString();
                                    Current_Finance.Text = acc.Acc_finance;
                                }
                            }
                            Sum_Transfer.BorderBrush        = Brushes.Gray;
                            Combo_Selected_Acc.SelectedItem = null;
                            Sum_Transfer.Text = "";
                            Ev_Mes           += Mes;
                            Ev_Mes("Вы перевели " + sum_toTrans.ToString());
                            var l = new Logi(("Перевод междусчитами на сумму " + sum_toTrans + "p. " + (DateTime.Now).ToString()));
                            MainWindow.ML.LogiAll.Logis.Add(l);
                            MainWindow.ML.LogiAll.Save();

                            Ev_Mes -= Mes;
                        }
                    }
                }

                catch (MyExeption e)
                {
                    Sum_Transfer.BorderBrush = Brushes.Red;
                    MessageBox.Show("Вы ввели некоректные данные. " + e.Message);
                }
            }
            else
            {
                MessageBox.Show("ВВедите Сумму перевода.");
            }
        }