[store] add reputation info to bot answers

This commit is contained in:
West14
2022-04-26 00:49:32 +03:00
parent f69ecc93f6
commit d90556d445
+5 -4
View File
@@ -87,21 +87,22 @@ public class Store : BotEventHandler
var storeItem = mediaService.StoreItem; var storeItem = mediaService.StoreItem;
var messageId = query.Message!.MessageId; var messageId = query.Message!.MessageId;
if (await _reputation.GetUserReputationAsync(Chat, From) < storeItem.Price) var reputation = await _reputation.GetUserReputationAsync(Chat, From);
if (reputation < storeItem.Price)
{ {
await Bot.EditMessageTextAsync( await Bot.EditMessageTextAsync(
Chat.Id, Chat.Id,
messageId, messageId,
$"{From.ToHtml()}, продолжай работать и тебе обязательно хватит на покупку.", $"<b>{From.ToHtml()} ({reputation})</b>, продолжай работать и тебе обязательно хватит на покупку.",
ParseMode.Html); ParseMode.Html);
await AnswerQuery(query.Id); await AnswerQuery(query.Id);
return; return;
} }
await _reputation.IncrementReputationAsync(Chat, From, -storeItem.Price); reputation = await _reputation.SetUserReputationAsync(Chat, From, reputation - storeItem.Price);
await Bot.EditMessageTextAsync(Chat.Id, await Bot.EditMessageTextAsync(Chat.Id,
messageId, messageId,
$"{From.ToHtml()} купил \"{storeItem.Name}\".", $"<b>{From.ToHtml()} ({reputation})</b> купил \"{storeItem.Name}\".",
ParseMode.Html); ParseMode.Html);
var randomMedia = await mediaService!.GetRandomMediaAsync(); var randomMedia = await mediaService!.GetRandomMediaAsync();