private void btnTariffShow_Click(object sender, EventArgs e) { var tariff = (sender == btnTariffPenaltyShow) ? Settings.Default.PenaltyTarif : String.Empty; if (String.IsNullOrEmpty(tariff)) { MessageBox.Show(this, "Необходимо задать тариф с мастер-карты!", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (tariffForm == null) { tariffForm = new TariffViewForm(); } try { tariffForm.Setup(CashDeskHelper.DeserializeTariff(tariff)); tariffForm.ShowDialog(); } catch (Exception ex) { MessageBox.Show(this, "Ошибка чтения тарифа из файла конфигурации: \r\n" + ex.Message, ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnTariffMetroRead_Click(object sender, EventArgs e) { string tm = String.Empty; string tmd = String.Empty; try { tm = CashDeskHelper.SerializeTariff(CashDeskHelper.LoadTariff(CashDeskHelper.TariffMetroFileName)); tmd = CashDeskHelper.SerializeTariff(CashDeskHelper.LoadTariff(CashDeskHelper.TariffMetroDiscountFileName)); } catch (Exception ex) { logger.Write(ex, "Ошибка чтения тарифов метро"); MessageBox.Show(this, "Ошибка чтения тарифов метро", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Settings.Default["MetroTariffK"] = tm; Settings.Default["MetroTariffL"] = tmd; Settings.Default.Save(); MessageBox.Show(this, "Тарифы метро успешно прочитаны", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Information); }
private void btnTariffPenaltyRead_Click(object sender, EventArgs e) { // Загружает ключи с мастер карты и записывает их в считыватель ISmartCardMaster master = new SmartCardMaster(); try { smartCardManager.ReadMasterCard(master); } catch (Exception ex) { logger.Write(ex, "Ошибка чтения мастер-карты"); MessageBox.Show(this, "Ошибка чтения мастер-карты", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // Распределение ключей. На мастер карте хранится 4 ключа для 9 секторов. smartCardManager.KeysB[1] = master.KeysB[0]; smartCardManager.KeysB[2] = master.KeysB[1]; smartCardManager.KeysB[3] = master.KeysB[2]; smartCardManager.KeysB[4] = master.KeysB[2]; smartCardManager.KeysB[5] = master.KeysB[2]; smartCardManager.KeysB[6] = master.KeysB[2]; smartCardManager.KeysB[7] = master.KeysB[3]; smartCardManager.KeysB[8] = master.KeysB[3]; smartCardManager.KeysB[9] = master.KeysB[3]; smartCardManager.KeysB[SmartCardLayoutHelper.MetroSectorIndex] = GetKeyForDiscountSector(master.KeysB[3]); // Шифрование и Запись прочитанных с мастер-карты ключей в конфигурацию. // Непосредственно запись произойдет, если пользователь нажмет кнопку "ОК". try { Settings.Default["KeyB1"] = Convert.ToBase64String(Crypt.Encrypt(master.KeysB[0].Value, "A23F78C4")); Settings.Default["KeyB2"] = Convert.ToBase64String(Crypt.Encrypt(master.KeysB[1].Value, "A23F78C4")); Settings.Default["KeyB3"] = Convert.ToBase64String(Crypt.Encrypt(master.KeysB[2].Value, "A23F78C4")); Settings.Default["KeyB4"] = Convert.ToBase64String(Crypt.Encrypt(master.KeysB[3].Value, "A23F78C4")); Settings.Default["KeyBM"] = Convert.ToBase64String(Crypt.Encrypt(GetKeyForDiscountSector(master.KeysB[3]).Value, "A23F78C4")); } catch (Exception ex) { logger.Write(ex, "Ошибка кодирования полученных с мастер-карты ключей"); MessageBox.Show(this, "Ошибка кодирования полученных с мастер-карты ключей", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Error); return; } string tariff = String.Empty; try { tariff = CashDeskHelper.SerializeTariff(master.Tariff); } catch (Exception ex) { logger.Write(ex, "Ошибка чтения тарифа с мастер-карты"); MessageBox.Show(this, "Ошибка чтения тарифа с мастер-карты", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Settings.Default["PenaltyTarif"] = tariff; Settings.Default.Save(); MessageBox.Show(this, "Мастер-карта успешно прочитана", ApplicationServices.GetApplicationName(), MessageBoxButtons.OK, MessageBoxIcon.Information); }