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); }
public WinFormQiwiSetting() { InitializeComponent(); DataTable dataTable = dataBase.GetDataTable("SELECT значение FROM Настройки WHERE название='qiwi'"); string[] str = dataTable.Rows[0].ItemArray[0].ToString().Split("|".ToCharArray()); textBox1.Text = str[0]; textBox2.Text = str[1]; }
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]; }
private async void watchAsync(object state) { try { var qiwiHistory = await GetQiwiHistoryyAsync(); if (qiwiHistory != null && qiwiHistory.history.Count > 0) { foreach (Datum pay in qiwiHistory.history) { string client = pay.comment; if (client.IndexOf("ЛС") >= 0 && pay.type.ToLower() == "in") { client = client.Remove(0, client.IndexOf("ЛС") + 2); if (client.IndexOf(" ") >= 0) { client = client.Remove(client.IndexOf(" ")); } dataBase.RunCommand(string.Format( "INSERT INTO ИсторияТранзакций (клиент, операция, сумма, номерТранзакции) VALUES('{0}', 'приход', '{1}', '{2}')", client, pay.sum.amount, pay.trmTxnId)); } } } } catch { DataTable dataTable = dataBase.GetDataTable("SELECT дата FROM ИсторияТранзакций WHERE номерТранзакции is not null and операция='приход' ORDER BY дата DESC LIMIT 1"); if (dataTable.Rows.Count > 0) { DateTime dateTime = DateTime.ParseExact(dataTable.Rows[0].ItemArray[0].ToString(), "yyyy-MM-dd HH:mm:ss", null); try { var qiwiHistory = await GetQiwiHistoryyAsync(dateTime); } catch { }; } } }
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]; } }
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 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); }
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; } } } } }