private static async void UpdatePaymentBoard(HockeyChat chat, int paymentBoardMsgId, Telegram.Bot.Types.User user, int totalAmount, string OrderName) { if (chat.Payments == null) { chat.Payments = new List <HockeyPayment>(); } var payment = chat.Payments.FindLast(x => x.MessageId == paymentBoardMsgId); if (payment == null) { payment = new HockeyPayment() { MessageId = paymentBoardMsgId, Payers = new List <Payer>(), Name = OrderName }; chat.Payments.Add(payment); } var payer = new Payer(paymentBoardMsgId, user.Id, user.Username, user.FirstName, user.LastName, totalAmount); payment.Payers.Add(payer); try { await _bot.EditMessageTextAsync(chat.Id, payment.MessageId, payment.Report, parseMode : Telegram.Bot.Types.Enums.ParseMode.Markdown); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
public HockeyPayment GetPaymentByMessageId(int messageId) { var cmd = _conn.CreateCommand(); cmd.CommandText = "SELECT * FROM payment WHERE messageid = " + messageId; try { var reader = cmd.ExecuteReader(); while (reader.Read() && reader.HasRows) { var payment = new HockeyPayment() { Id = Convert.ToInt32(reader["id"].ToString()), MessageId = messageId, Payers = null, Name = reader["name"].ToString() }; return(payment); } } catch (SQLiteException ex) { Console.WriteLine(ex.Message); } return(null); }
private async void AddPay(HockeyChat chat, string arg) { var msg = await _bot.SendTextMessageAsync(chat.Id, $"{arg}"); var payment = new HockeyPayment() { MessageId = msg.MessageId, Payers = new List <Payer>(), Name = arg }; var payload = $"{chat.Id};{msg.MessageId}"; var prices = new List <Telegram.Bot.Types.Payments.LabeledPrice>() { new Telegram.Bot.Types.Payments.LabeledPrice("Traktorista", 30000) }; await _bot.SendInvoiceAsync(chat.Id, arg, "Да не обеднеет рука дающего", payload, Config.UkassaToken, "sasality", "RUB", prices); chat.Payments.Add(payment); }