Beispiel #1
0
        private void CRUDRate(int type, string range = null)
        {
            AppJournal.Write("Contract", "Open rate - " + (type == 1 ? "New" : SelectedRate.id.ToString()), true);

            string  transactionTxt, procentTxt;
            decimal transaction = 0, procent = 0;
            bool    error = false;

            if (SelectedRatesList != null)
            {
                if (type != 3)
                {
                    /*if(range == null) {
                     *  transactionTxt = await MessagesService.GetInput("Ввод диапазона сумм", "Введите суммы от и до через тире (-):");
                     *  procentTxt = await MessagesService.GetInput("Ввод процента", "Введите процент для заданного диапазона:");
                     * } else {*/
                    transactionTxt = range.Substring(2, range.LastIndexOf(" ") - range.IndexOf(" ")).Replace(" ", "").Replace(".", "");
                    procentTxt     = Percent.ToString();
                    //}

                    if (!string.IsNullOrEmpty(transactionTxt) && !string.IsNullOrEmpty(procentTxt))
                    {
                        try {
                            transactionTxt = transactionTxt.Replace("-", "-");
                            procentTxt     = procentTxt.Replace(".", ",");
                            transaction    = Convert.ToDecimal(string.IsNullOrEmpty(range) ? transactionTxt.Substring(0, transactionTxt.IndexOf("-")) : transactionTxt);
                            procent        = Convert.ToDecimal(procentTxt);
                        } catch (Exception) { error = true; }
                    }
                    else
                    {
                        error = true;
                    }
                }

                switch (type)
                {
                case 1:     // Create
                    if (!error)
                    {
                        // Fill model
                        var rate = new RateEF()
                        {
                            transaction = transaction,
                            percent     = procent,
                            rateslistid = SelectedRatesList.id
                        };

                        // Save changes
                        if (DataBaseClient.CreateRate(rate) == 0)
                        {
                            MessagesService.Show("Создание тарифных данных", "Во время создания произошла ошибка");
                        }
                        else
                        {
                            AppJournal.Write("Contract", "Create rate error", true);
                        }
                    }
                    break;

                case 2:     // Update
                    if (!error && SelectedRate != null)
                    {
                        if (!DataBaseClient.UpdateRate(SelectedRate.id, transaction, procent))
                        {
                            MessagesService.Show("Обновление тарифных данных", "Во время обновления произошла ошибка");
                        }
                    }
                    else
                    {
                        MessagesService.Show("Обновление тарифных данных", "При обновлении произошла ошибка.\nВозможно не были выбраны данные");
                        AppJournal.Write("Contract", "Update rate error", true);
                    }
                    break;

                case 3:     // Delete
                    if (SelectedRate != null)
                    {
                        if (!DataBaseClient.DeleteRate(SelectedRate.id))
                        {
                            MessagesService.Show("Удаление тарифных данных", "Во время удаления произошла ошибка");
                            AppJournal.Write("Contract", "Delete rate error", true);
                        }
                    }
                    else
                    {
                        MessagesService.Show("Удаление тарифных данных", "Не выбраны тарифные данные");
                    }
                    break;
                }

                UpdateRateView();
            }
            else
            {
                MessagesService.Show("Тарифные данные", "Не выбрана тарифная сетка");
            }
        }
Beispiel #2
0
        protected override void Seed(EFContext context)
        {
            //
            // ### RATES ###

            var rate01 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(0), Value = 0.32
            };
            var rate02 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(1), Value = 0.23
            };
            var rate03 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(2), Value = 0.25
            };
            var rate04 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(3), Value = 0.33
            };
            var rate05 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(4), Value = 0.35
            };
            var rate06 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(5), Value = 0.30
            };

            var rate07 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(0), Value = 1.53
            };
            var rate08 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(1), Value = 1.26
            };
            var rate09 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(2), Value = 1.36
            };
            var rate10 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(3), Value = 1.48
            };
            var rate11 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(4), Value = 1.31
            };
            var rate12 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(5), Value = 1.28
            };

            var rate13 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(0), Value = 1.13
            };
            var rate14 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(1), Value = 1.01
            };
            var rate15 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(2), Value = 1.23
            };
            var rate16 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(3), Value = 1.37
            };
            var rate17 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(4), Value = 1.22
            };
            var rate18 = new RateEF {
                Time = DateTime.Today + TimeSpan.FromHours(5), Value = 1.25
            };

            //
            // ### CURRENCIES ###

            var PLN = new CurrencyEF
            {
                Name         = "PLN",
                LastUpdate   = DateTime.Today,
                CurrentValue = 2.0,
            };

            var EUR = new CurrencyEF
            {
                Name         = "EUR",
                LastUpdate   = DateTime.Today,
                CurrentValue = 3.0,
            };

            var CHF = new CurrencyEF
            {
                Name         = "CHF",
                LastUpdate   = DateTime.Today,
                CurrentValue = 3.2,
            };

            PLN.Rates.Add(rate01);
            PLN.Rates.Add(rate02);
            PLN.Rates.Add(rate03);
            PLN.Rates.Add(rate04);
            PLN.Rates.Add(rate05);
            PLN.Rates.Add(rate06);

            EUR.Rates.Add(rate07);
            EUR.Rates.Add(rate08);
            EUR.Rates.Add(rate09);
            EUR.Rates.Add(rate10);
            EUR.Rates.Add(rate11);
            EUR.Rates.Add(rate12);

            CHF.Rates.Add(rate13);
            CHF.Rates.Add(rate14);
            CHF.Rates.Add(rate15);
            CHF.Rates.Add(rate16);
            CHF.Rates.Add(rate17);
            CHF.Rates.Add(rate18);

            //
            // saving changes

            context.Currencies.Add(PLN);
            context.Currencies.Add(EUR);
            context.Currencies.Add(CHF);
            context.SaveChanges();
        }