private void button1_Click(object sender, EventArgs e) { DataBaseCenter dataBaseCenter = DataBaseCenter.Create(); if (dataBaseCenter.Autorization(user.login, textBox1.Text) != null) { if (textBox2.Text == textBox3.Text) { if (0 < dataBaseCenter.RunCommand(string.Format("UPDATE пользователи SET пароль='{1}' WHERE id='{0}'", user.id, DataBaseCenter.HashPass(textBox2.Text)))) { MessageBox.Show("Пароль изменен", "Оповещение"); } else { MessageBox.Show("Пароль изменить не удалось!", "Ошибка"); }; } else { MessageBox.Show("Новые пароли не совпадают!", "Ошибка"); } } else { MessageBox.Show("Старый пароль неверный!", "Ошибка"); }; }
public bool Authorization() { VkApi vkAcc = new VkApi(); try { DataBaseCenter dataBase = DataBaseCenter.Create(); DataTable dataTable = dataBase.GetDataTable("SELECT значение FROM Настройки WHERE название='vk'"); if (dataTable.Rows.Count == 0) { return(false); } string[] str = dataTable.Rows[0].ItemArray[0].ToString().Split("|".ToCharArray()); ulong.TryParse(str[0], out appId); login = str[1]; pass = str[2]; vkAcc.Authorize(new ApiAuthParams { ApplicationId = appId, Login = login, Password = pass, AccessToken = str[3], Settings = Settings.All }); } catch { return(false); } vkMessages = new VkMessages(vkAcc); vkBot = new VkBot(vkAcc, vkMessages); return(true); }
private LongPollHistoryResponse GetLongPoolHistory() { if (!Ts.HasValue) { GetLongPoolServer(null); } MessagesGetLongPollHistoryParams rp = new MessagesGetLongPollHistoryParams(); rp.Ts = Ts.Value; rp.Pts = Pts; int c = 0; LongPollHistoryResponse history = null; string errorLog = ""; while (c < 5 && history == null) { c++; try { history = vkAcc.Messages.GetLongPollHistory(rp); } catch (TooManyRequestsException) { Thread.Sleep(150); c--; } catch (Exception ex) { DataBaseCenter dataBase = DataBaseCenter.Create(); System.Data.DataTable dataTable = dataBase.GetDataTable("SELECT значение FROM Настройки WHERE название='vk'"); string[] str = dataTable.Rows[0].ItemArray[0].ToString().Split("|".ToCharArray()); ulong appId; ulong.TryParse(str[0], out appId); vkAcc.Authorize(new ApiAuthParams { ApplicationId = appId, Login = str[1], Password = str[2], AccessToken = str[3], Settings = Settings.All }); try { GetLongPoolServer(null); } catch { }; } } if (history != null) { Pts = history.NewPts; foreach (var m in history.Messages) { m.FromId = m.Type == VkNet.Enums.MessageType.Sended ? vkAcc.UserId : m.UserId; } } return(history); }
public QiwiWatcher() { DataBaseCenter dataBase = DataBaseCenter.Create(); DataTable dataTable = dataBase.GetDataTable("SELECT значение FROM Настройки WHERE название='qiwi'"); string[] str = dataTable.Rows[0].ItemArray[0].ToString().Split("|".ToCharArray()); phone = str[0]; token = str[1]; }
public static DataBaseCenter Create() { if (dataBaseCenter == null) { dataBaseCenter = new DataBaseCenter(); } return(dataBaseCenter); }
private void сброситьПарольToolStripMenuItem_Click(object sender, EventArgs e) { string alhp = "qwertyuiopasdfghjklzxcvbnm"; Random random = new Random(); string pass = alhp[random.Next(25)].ToString() + alhp[random.Next(25)].ToString() + alhp[random.Next(25)].ToString() + alhp[random.Next(25)].ToString() + alhp[random.Next(25)].ToString(); пользователиDataGridView.CurrentRow.Cells[3].Value = DataBaseCenter.HashPass(pass); MessageBox.Show("Новый пароль " + pass, "Оповещение"); }
public WinFormDataParkings(User user) { InitializeComponent(); парковкиDataGridView.DataError += new DataGridViewDataErrorEventHandler(DataGridView_DataError); DataBaseCenter dataBase = DataBaseCenter.Create(); if (dataBase.CheckRigth(user, Rights.редПольз)) { парковкиDataGridView.ReadOnly = false; bindingNavigatorAddNewItem.Enabled = true; bindingNavigatorDeleteItem.Enabled = true; парковкиBindingNavigatorSaveItem.Enabled = true; } }
private void button1_Click(object sender, EventArgs e) { DataBaseCenter dataBaseCenter = DataBaseCenter.Create(); User user = null; user = dataBaseCenter.Autorization(textBox1.Text, textBox2.Text); if (user != null) { (new WinFormMain(user)).Show(); this.Hide(); } else { MessageBox.Show("Неверный логин или пароль!", "Ошибка"); } }
private void button8_Click(object sender, EventArgs e) { DataBaseCenter dataBase = DataBaseCenter.Create(); if (!dataBase.CheckRigth(user, Rights.группы)) { MessageBox.Show("Недостаточно прав!", "Предупреждение"); return; } try { (new WinFormDataGroups()).Show(); } catch { } }
private void button3_Click(object sender, EventArgs e) { if (double.TryParse(textBox3.Text, out double d)) { DataBaseCenter dataBaseCenter = DataBaseCenter.Create(); dataBaseCenter.AddPayment(textBox6.Text, textBox3.Text); MessageBox.Show("Выполнено!", "Оповещение"); panel2.Visible = false; клиентыDataGridView.Enabled = true; this.клиентыTableAdapter.Fill(this.parkingDataSet.клиенты); } else { MessageBox.Show("Введена некорректная сумма!", "Ошибка"); } }
private void button10_Click(object sender, EventArgs e) { DataBaseCenter dataBase = DataBaseCenter.Create(); if (!dataBase.CheckRigth(user, Rights.настройки)) { MessageBox.Show("Недостаточно прав!", "Предупреждение"); return; } try { (new WinFormQiwiSetting()).Show(); } catch { } }
public WinFormDataClients(User user) { InitializeComponent(); клиентыDataGridView.DataError += new DataGridViewDataErrorEventHandler(DataGridView_DataError); контактыклиентовDataGridView.DataError += new DataGridViewDataErrorEventHandler(DataGridView_DataError); DataBaseCenter dataBase = DataBaseCenter.Create(); if (dataBase.CheckRigth(user, Rights.редКлиенты)) { клиентыDataGridView.ReadOnly = false; bindingNavigatorDeleteItem.Enabled = true; toolStripButton2.Enabled = true; контактыклиентовDataGridView.ReadOnly = false; } клиентыDataGridView.Columns[3].ReadOnly = true; }
private void WinFormSettings_Load(object sender, EventArgs e) { try { FileStream stream = new FileStream("Настройки\\Камеры.cfg", FileMode.Open); byte[] byte_buff = new byte[(int)stream.Length]; stream.Read(byte_buff, 0, (int)stream.Length); string str_buff = Encoding.Default.GetString(byte_buff); cameras = JsonConvert.DeserializeObject <List <Camera> >(str_buff); stream.Close(); } catch { } for (int i = 0; i < cameras.Count; i++) { listBox1.Items.Add(cameras[i].camName + " // " + cameras[i].url); listBox2.Items.Add(cameras[i].camName + " // " + cameras[i].url); } if (cameras.Count != 0) { listBox1.SelectedIndex = 0; listBox2.SelectedIndex = 0; } DataBaseCenter dataBase = DataBaseCenter.Create(); if (!dataBase.CheckRigth(user, Rights.настройки)) { button5.Enabled = false; return; } DataTable dataTable = dataBase.GetDataTable("SELECT значение FROM Настройки WHERE название='vk'"); if (dataTable.Rows.Count != 0) { string[] str = dataTable.Rows[0].ItemArray[0].ToString().Split("|".ToCharArray()); Array.Resize(ref str, 4); textBox10.Text = str[0]; textBox9.Text = str[1]; textBox11.Text = str[2]; textBox12.Text = str[3]; } }
private void button5_Click(object sender, EventArgs e) { ulong id; if (!ulong.TryParse(textBox10.Text, out id)) { MessageBox.Show("Некорректный индентификатор приложения!", "Ошибка!"); return; } DataBaseCenter dataBase = DataBaseCenter.Create(); dataBase.RunCommand("UPDATE Настройки SET значение='" + textBox10.Text + "|" + textBox9.Text + "|" + textBox11.Text + "|" + textBox12.Text + "' WHERE название='vk'"); }
private void button1_Click(object sender, EventArgs e) { if (comboBox1.Text == "" || textBox1.Text == "") { MessageBox.Show("Введены не все данные!", "Ошибка"); return; } if (number == null) { number = new Number(); if (comboBox2.SelectedIndex >= 0) { number.photo = cameras[comboBox2.SelectedIndex].GetMat(); } } number.text = textBox1.Text; number.direction = comboBox1.Text == "Въезд" ? -1 : 1; DataBaseCenter dataBase = DataBaseCenter.Create(); if (number.direction == dataBase.CheckDirection(number, user)) { historyTransit = dataBase.NumberToHistory(number, user); if (historyTransit != null) { richTextBox1.AppendText((historyTransit.blackList ? "В ЧЕРНОМ СПИСКЕ! \n" : "")); richTextBox1.AppendText("ФИО: " + historyTransit.fio + "\n"); richTextBox1.AppendText("Серия/номер ВУ: " + historyTransit.serialNum + "\n"); richTextBox1.AppendText("Баланс: " + historyTransit.balance + "\n"); richTextBox1.AppendText("Авто: " + historyTransit.avto + "\n"); richTextBox1.AppendText("Дата въезда: " + historyTransit.dateEnter + "\n"); richTextBox1.AppendText("Дата выезда: " + historyTransit.dateExit + "\n"); richTextBox1.AppendText("Стоимость стоянки: " + historyTransit.cost + "\n"); richTextBox1.AppendText("Комментарий: " + historyTransit.comment + "\n"); if (VkNotyf != null && historyTransit.added) { Task.Run(() => { VkNotyf(number, historyTransit); }); } if (historyTransit.added) { MessageBox.Show("Добавлено!", "Оповещение"); } else { MessageBox.Show("Не удалось добавить!", "Ошибка"); } } else { MessageBox.Show("Не удалось добавить!", "Ошибка"); } } else { MessageBox.Show("Направление движения не совпадает с ожидаемым!", "Ошибка"); return; } }
private void MessagesRecievedDelegate(VkApi owner, ReadOnlyCollection <Message> messages) { foreach (Message msg in messages) { if (msg.FromId != vkAcc.UserId) { string[] cmd = msg.Body.ToLower().Split(Convert.ToChar(" ")); switch (cmd[0]) { case "инфо": { DataBaseCenter dataBase = DataBaseCenter.Create(); try { string str = dataBase.StatusAvto(msg.FromId.Value); vkMessages.SendMsg(msg.FromId.Value, str); } catch { vkMessages.SendMsg(msg.FromId.Value, "Необходимо зарегистрировать ваш ID в системе, обратитесь к оператору!"); } break; } case "парковка": { DataBaseCenter dataBase = DataBaseCenter.Create(); string str = dataBase.BusyParking(); vkMessages.SendMsg(msg.FromId.Value, str); break; } case "счет": { DataBaseCenter dataBase = DataBaseCenter.Create(); System.Data.DataTable dt = dataBase.GetDataTable( string.Format( "Select Клиенты.id, балансСчета FROM Клиенты JOIN КонтактыКлиентов ON КонтактыКлиентов.клиент=Клиенты.id WHERE КонтактыКлиентов.контакт='{0}'", msg.FromId.Value)); if (dt.Rows.Count > 0) { vkMessages.SendMsg( msg.FromId.Value, string.Format( @"Номер вашего счета: ЛС{0} Баланс вашего счета: {1}", dt.Rows[0].ItemArray[0].ToString(), dt.Rows[0].ItemArray[1].ToString())); } else { vkMessages.SendMsg(msg.FromId.Value, "Необходимо зарегистрировать ваш ID в системе, обратитесь к оператору!"); } break; } case "отчет": { try { switch (cmd[1]) { case "платежи": { Report report = new Report(); string path = report.CreateReportTransaction(msg.FromId.Value, cmd[2], cmd[3]); vkMessages.SendMsg(msg.FromId.Value, "Отчет готов", path); System.IO.File.Delete(path); break; } case "парковка": { Report report = new Report(); string path = report.CreateReportTransit(msg.FromId.Value, cmd[2], cmd[3]); vkMessages.SendMsg(msg.FromId.Value, "Отчет готов", path); System.IO.File.Delete(path); break; } default: { ErrMsg(msg.FromId.Value, msg.Id.Value); break; } } } catch { vkMessages.SendMsg(msg.FromId.Value, "Необходимо зарегистрировать ваш ID в системе, обратитесь к оператору!"); } break; } default: { ErrMsg(msg.FromId.Value, msg.Id.Value); break; } } } } }
public string CreateReportTransaction(long idvk, string leftDate, string rightDate) { DataBaseCenter dataBase = DataBaseCenter.Create(); DataTable dataTable = dataBase.GetDataTable(string.Format( @"Select ИсторияТранзакций.операция, ИсторияТранзакций.сумма, ИсторияТранзакций.дата, concat(въехалДата, ' - ', выехалДата, ' - авто: ',госНомер) From ИсторияТранзакций JOIN Клиенты ON Клиенты.id=ИсторияТранзакций.клиент JOIN КонтактыКлиентов ON КонтактыКлиентов.клиент=Клиенты.id LEFT JOIN ИсторияПроездов ON ИсторияПроездов.id=ИсторияТранзакций.стоянка LEFT JOIN Авто ON Авто.id=ИсторияПроездов.авто WHERE КонтактыКлиентов.контакт='{0}' and ИсторияТранзакций.дата between '{1}' and '{2}' ORDER BY ИсторияТранзакций.дата DESC", idvk, leftDate, rightDate)); DataRow[] data_arr = dataTable.Select(); dataTable = dataBase.GetDataTable(string.Format(@"Select ФИО, серияНомер_ВУ From Клиенты JOIN КонтактыКлиентов ON КонтактыКлиентов.клиент=Клиенты.id WHERE КонтактыКлиентов.контакт='{0}' LIMIT 1", idvk)); if (dataTable.Rows.Count == 0) { throw new Exception(); } string path = string.Format("report {0} {1}.docx", idvk, DateTime.Now.ToString("yyyy-MM-dd HH-mm")); DocX document = DocX.Create(path); document.InsertParagraph(string.Format("История операций по счету за период '{0}' - '{1}'", leftDate, rightDate)).Font(new FontFamily("Times New Roman")).FontSize(16).Bold().Alignment = Alignment.center; document.InsertParagraph(string.Format("Для {0}, вод. удост. {1}", dataTable.Rows[0].ItemArray[0].ToString(), dataTable.Rows[0].ItemArray[1].ToString())).Font(new FontFamily("Times New Roman")).FontSize(16).Bold().Alignment = Alignment.center; document.InsertParagraph(); Table table = document.AddTable(1, 4); for (int i = 0; i < 4; i++) { table.Rows[0].Cells[i].RemoveParagraphAt(0); table.Rows[0].Cells[i].VerticalAlignment = VerticalAlignment.Center; } table.Alignment = Alignment.center; table.Rows[0].Cells[0].Width = 100; table.Rows[0].Cells[1].Width = 50; table.Rows[0].Cells[2].Width = 100; table.Rows[0].Cells[3].Width = 400; table.Rows[0].Cells[0].InsertParagraph("Операция").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[1].InsertParagraph("Сумма").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[2].InsertParagraph("Дата").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[3].InsertParagraph("Стоянка").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; for (int i = 0; i < data_arr.Length; i++) { table.InsertRow(); for (int j = 0; j < 4; j++) { table.Rows[i + 1].Cells[j].RemoveParagraphAt(0); table.Rows[i + 1].Cells[j].InsertParagraph(data_arr[i].ItemArray[j].ToString()).Font(new FontFamily("Times New Roman")).FontSize(14).Alignment = Alignment.left; table.Rows[i + 1].Cells[j].VerticalAlignment = VerticalAlignment.Center; } } document.InsertTable(table); document.Save(); return(path); }
public string CreateReportTransit(long idvk, string leftDate, string rightDate) { DataBaseCenter dataBase = DataBaseCenter.Create(); DataTable dataTable = dataBase.GetDataTable(string.Format( @"Select concat(Парковки.название, ' ', Парковки.адрес), concat(въехалДата, ' - ', выехалДата), госНомер, ИсторияПроездов.стоимость From ИсторияПроездов JOIN Авто ON Авто.id=ИсторияПроездов.авто JOIN Клиенты ON Клиенты.id=Авто.клиент JOIN КонтактыКлиентов ON КонтактыКлиентов.клиент=Клиенты.id JOIN Парковки ON Парковки.id=ИсторияПроездов.парковка WHERE КонтактыКлиентов.контакт='{0}' and (ИсторияПроездов.въехалДата between '{1}' and '{2}' or ИсторияПроездов.выехалДата between '{1}' and '{2}') ORDER BY ИсторияПроездов.въехалДата DESC", idvk, leftDate, rightDate)); DataRow[] data_arr = dataTable.Select(); dataTable = dataBase.GetDataTable(string.Format(@"Select ФИО, серияНомер_ВУ From Клиенты JOIN КонтактыКлиентов ON КонтактыКлиентов.клиент=Клиенты.id WHERE КонтактыКлиентов.контакт='{0}' LIMIT 1", idvk)); if (dataTable.Rows.Count == 0) { throw new Exception(); } string path = string.Format("report {0} {1}.docx", idvk, DateTime.Now.ToString("yyyy-MM-dd HH-mm")); DocX document = DocX.Create(path); document.InsertParagraph(string.Format("История парковки за период '{0}' - '{1}'", leftDate, rightDate)).Font(new FontFamily("Times New Roman")).FontSize(16).Bold().Alignment = Alignment.center; document.InsertParagraph(string.Format("Для {0}, вод. удост. {1}", dataTable.Rows[0].ItemArray[0].ToString(), dataTable.Rows[0].ItemArray[1].ToString())).Font(new FontFamily("Times New Roman")).FontSize(16).Bold().Alignment = Alignment.center; document.InsertParagraph(); Table table = document.AddTable(1, 4); for (int i = 0; i < 4; i++) { table.Rows[0].Cells[i].RemoveParagraphAt(0); table.Rows[0].Cells[i].VerticalAlignment = VerticalAlignment.Center; } table.Alignment = Alignment.center; table.Rows[0].Cells[0].Width = 250; table.Rows[0].Cells[1].Width = 250; table.Rows[0].Cells[2].Width = 100; table.Rows[0].Cells[3].Width = 50; table.Rows[0].Cells[0].InsertParagraph("Парковка").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[1].InsertParagraph("Дата").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[2].InsertParagraph("Гос. номер").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; table.Rows[0].Cells[3].InsertParagraph("Стоимость").Font(new FontFamily("Times New Roman")).FontSize(14).Bold().Alignment = Alignment.center; for (int i = 0; i < data_arr.Length; i++) { table.InsertRow(); for (int j = 0; j < 4; j++) { table.Rows[i + 1].Cells[j].RemoveParagraphAt(0); table.Rows[i + 1].Cells[j].InsertParagraph(data_arr[i].ItemArray[j].ToString()).Font(new FontFamily("Times New Roman")).FontSize(14).Alignment = Alignment.left; table.Rows[i + 1].Cells[j].VerticalAlignment = VerticalAlignment.Center; } } document.InsertTable(table); document.Save(); return(path); }
public int CameraControlCreate(User user) { this.user = user; int result = 0; try { FileStream stream = new FileStream("Настройки\\Камеры.cfg", FileMode.Open); byte[] byte_buff = new byte[(int)stream.Length]; stream.Read(byte_buff, 0, (int)stream.Length); string str_buff = Encoding.Default.GetString(byte_buff); cameras = JsonConvert.DeserializeObject <List <Camera> >(str_buff); stream.Close(); } catch { result += 2; } try { StreamReader reader = new StreamReader("Настройки\\ШаблоныНомеров.cfg"); while (!reader.EndOfStream) { numTemplate.Add(reader.ReadLine()); } reader.Close(); } catch { result += 4; } if (!vkControl.Authorization()) { result += 8; } else { DataBaseCenter dataBase = DataBaseCenter.Create(); if (dataBase.CheckRigth(user, Rights.чатБот)) { vkControl.vkBot.BotStart(); } } if (dataBase.CheckRigth(user, Rights.qiwiБот)) { qiwiWatcher = new QiwiWatcher(); qiwiWatcher.StartAsync(); } Task.Run(() => { for (int i = 0; i < cameras.Count; i++) { cameras[i].Reconnect(); numberDetectors.Add(new NumberDetector(cameras[i])); numberDetectors.Last().NewNumberDetect += NewNumberDetected; //numberDetectors.Last().NewNumbersDetect += NewNumbersDetected; numberDetectors.Last().Start(); // добавить также обработчики } }); return(result); }