private async void CRUDRatesList(int type) { AppJournal.Write("Contract", "Open rates list - " + (type == 1 ? "New" : SelectedRatesList.name), true); string market = ""; int marketType = 0; if (type != 3) { market = await MessagesService.GetInput("Выберите биржу", "ЕТС - 1 / УТБ - 2 / КазЭТС - 3 (Введите цифру):"); if (!string.IsNullOrEmpty(market)) { try { marketType = Convert.ToInt32(market); } catch (Exception) { } if (marketType == 1) { marketType = 4; market = "ETS"; } else if (marketType == 2) { marketType = 1; market = "Астана"; } else if (marketType == 3) { marketType = 5; market = "КазЭТС"; } else { marketType = 0; } } } switch (type) { case 1: // Create if (marketType != 0) { // Fill model var ratesList = new RatesListEF() { contractid = Contract.id, name = market, siteid = marketType }; // Save changes if (DataBaseClient.CreateRatesList(ratesList) == 0) { MessagesService.Show("Создание тарифной сетки", "Во время создания произошла ошибка"); AppJournal.Write("Contract", "Create rates list error", true); } } break; case 2: // Update if (SelectedRatesList != null && marketType != 0) { // Get new market if (DataBaseClient.UpdateRatesList(SelectedRatesList.id, market, marketType)) { MessagesService.Show("Обновление тарифной сетки", "Обновление прошло успешно"); } else { MessagesService.Show("Обновление тарифной сетки", "Во время обновления произошла ошибка"); AppJournal.Write("Contract", "Update rates list error", true); } } else { MessagesService.Show("Удаление тарифной сетки", "Не выбрана тарифная сетка"); } break; case 3: // Delete if (SelectedRatesList != null) { if (DataBaseClient.DeleteRatesList(SelectedRatesList.id)) { MessagesService.Show("Удаление тарифной сетки", "Удаление прошло успешно"); } else { MessagesService.Show("Удаление тарифной сетки", "Во время удаления произошла ошибка"); AppJournal.Write("Contract", "Delete rates list error", true); } } else { MessagesService.Show("Удаление тарифной сетки", "Не выбрана тарифная сетка"); } break; } UpdateRatesListView(); }