SelectOffer.cs 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. using System.Threading.Tasks;
  2. using CardCollector.Controllers;
  3. using CardCollector.DataBase.Entity;
  4. using CardCollector.DataBase.EntityDao;
  5. using CardCollector.Resources;
  6. using CardCollector.Session.Modules;
  7. using Telegram.Bot.Types;
  8. namespace CardCollector.Commands.CallbackQuery
  9. {
  10. public class SelectOffer : CallbackQueryCommand
  11. {
  12. protected override string CommandText => Command.select_offer;
  13. protected override bool ClearMenu => false;
  14. protected override bool AddToStack => false;
  15. public override async Task Execute()
  16. {
  17. await User.ClearChat();
  18. var offerId = int.Parse(CallbackData.Split('=')[1]);
  19. var offerInfo = await ShopDao.GetById(offerId);
  20. var module = User.Session.GetModule<ShopModule>();
  21. module.SelectedPosition = offerInfo;
  22. var message = await MessageController.SendSticker(User, offerInfo.ImageId, Keyboard.OfferKeyboard(module));
  23. User.Session.Messages.Add(message.MessageId);
  24. }
  25. public SelectOffer() { }
  26. public SelectOffer(UserEntity user, Update update) : base(user, update) { }
  27. }
  28. }