private void btEditKey_Click(object sender, EventArgs e) { this.Enabled = false; try { if (lvDongles.SelectedItems.Count == 0) { throw new Exception("Не выбран ключ"); } if (lvClients.SelectedItems.Count == 0) { throw new Exception("Не выбран пользователь"); } sClient client = lvClients.SelectedItems[0].Tag as sClient; sDongle dongle = lvDongles.SelectedItems[0].Tag as sDongle; //GRDVendorKey key = new GRDVendorKey(); //if (key.ID == 0) //throw new Exception("Произошла ошибка подключения к ключу.\nПодробности в логах"); AddDongleForm dlg = new AddDongleForm(client, dongle, true); if (dlg.ShowDialog() == DialogResult.OK) { /*string q; * int retCode = key.GetTRUQuestion(out q); * if (retCode != 0) throw new Exception("Ощибка при генерировании числа-вопроса: " + retCode.ToString()); * ResponceItem s = _reqSend.ExecuteMethod(MethodName.VendorUpdateDongle, //MName.VendorSheduleDongle, * MPN.base64_question, q, * MPN.orgId, client.Id, * MPN.farms, dlg.Farms.ToString(), * MPN.flags, dlg.Flags.ToString(), * MPN.startDate, (lvDongles.SelectedItems[0].Tag as sDongle).StartDate, * MPN.endDate, dlg.EndDate.ToString("yyyy-MM-dd"), * MPN.dongleId, key.ID.ToString()); * * retCode = key.SetTRUAnswer(s.Value.ToString()); * if (retCode != 0) throw new Exception("Ощибка установки числа ответа: " + retCode.ToString()); * MessageBox.Show("Прошивка Завершена");*/ ResponceItem s = _reqSend.ExecuteMethod(MethodName.VendorSheduleDongle, MPN.orgId, client.Id, MPN.farms, dlg.Farms.ToString(), MPN.flags, dlg.Flags.ToString(), MPN.startDate, (lvDongles.SelectedItems[0].Tag as sDongle).StartDate, MPN.endDate, dlg.EndDate.ToString("yyyy-MM-dd"), MPN.dongleId, dongle.Id); MessageBox.Show("Отправлено"); } //key.Dispose(); } catch (Exception exc) { MessageBox.Show( (exc.InnerException != null) ? exc.InnerException.Message : exc.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Warning); } fillUsers(); this.Enabled = true; }
private void fillUsers() { lvDongles.Items.Clear(); lvClients.Items.Clear(); ResponceItem ri = _reqSend.ExecuteMethod(MethodName.GetClients); foreach (sClient cl in (ri.Value as sClient[])) { ListViewItem lvi = lvClients.Items.Add(cl.Organization); lvi.SubItems.Add(cl.ContactMan); lvi.SubItems.Add(cl.Money); lvi.SubItems.Add(cl.Address); lvi.SubItems.Add(cl.SAAS ? "SAAS" : "BOX"); lvi.Tag = cl; } }
private static void dongleUpdate() { VenReqSender reqSend = new VenReqSender(); reqSend.Url = Helper.UriNormalize(_url); reqSend.UserID = 0; reqSend.Key = new byte[GRD_Base.KEY_CODE_LENGTH]; byte[] defPass = Encoding.UTF8.GetBytes(DEF_PWD); Array.Copy(defPass, reqSend.Key, defPass.Length); string q = _grd.GetTRUQuestion(); ResponceItem ri = reqSend.ExecuteMethod(MethodName.ClientGetUpdate, MPN.question, q); if (String.IsNullOrEmpty(ri.Value as String)) { throw new Exception("Получен пустой ответ от сервера"); } _grd.SetTRUAnswer(ri.Value as String); }
private void btAddKey_Click(object sender, System.EventArgs e) { GRDVendorKey key = null; try { int retCode = 0; if (lvClients.SelectedItems.Count == 0) { throw new Exception("Не выбран клиент"); } sClient client = lvClients.SelectedItems[0].Tag as sClient; key = new GRDVendorKey(); if (key.ID == 0) { throw new Exception("Произошла ошибка подключения к ключу.\nПодробности в логах"); } #if !DEBUG foreach (sDongle d in client.Dongles) { if (d.Id == key.ID.ToString()) { throw new Exception("Данный клиент уже имеет этот ключ"); } } #endif this.Enabled = false; AddDongleForm dlg = new AddDongleForm(client, key.ID, true); if (dlg.ShowDialog() == DialogResult.OK) { _reqSend.ExecuteMethod(MethodName.VendorAddDongle, MPN.dongleId, key.ID.ToString(), MPN.orgId, client.Id, MPN.model, key.Model.ToString()); retCode = key.SetTRUKey(); if (retCode != 0) { throw new Exception("Ощибка при инициализации ключа: " + retCode.ToString()); } string q = ""; retCode = key.GetTRUQuestion(out q); if (retCode != 0) { throw new Exception("Ощибка при генерировании числа-вопроса: " + retCode.ToString()); } ResponceItem s = _reqSend.ExecuteMethod(MethodName.VendorUpdateDongle, MPN.base64_question, q, MPN.orgId, client.Id, MPN.farms, dlg.Farms.ToString(), MPN.flags, dlg.Flags.ToString(), MPN.startDate, dlg.StartDate.ToString("yyyy-MM-dd"), MPN.endDate, dlg.EndDate.ToString("yyyy-MM-dd"), MPN.dongleId, key.ID.ToString()); string ans = s.Value.ToString(); if (ans == "") { throw new Exception("Пустое число-ответ"); } key.SetTRUAnswer(ans); MessageBox.Show("Прошивка Завершена"); } } catch (Exception exc) { MessageBox.Show( (exc.InnerException != null) ? exc.InnerException.Message : exc.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Warning); } if (key != null) { key.Dispose(); } this.Enabled = true; fillUsers(); }