コード例 #1
0
        public void OnGet(string container = null)
        {
            Containers = _blobStorageService.GetContainers()
                         .OrderBy(c => c.Name);

            if (Containers.Any(c => c.Name == container))
            {
                SelectedContainer = container;
                BlobsInContainer  = _blobStorageService.ListBlobsInContainer(container).OrderBy(b => b.Name);
            }
            else if (container != null)
            {
                MessageModel message = new MessageModel()
                {
                    Level = MessageLevel.Warning, Message = $"Container {container} does not exist"
                };
                TempData.Put <MessageModel>("Message", message);
            }
        }
コード例 #2
0
ファイル: PortCommand.cs プロジェクト: Fooxboy/HydraBot
        public void Execute(Message msg, IMessageSenderService sender, IBot bot)
        {
            if (Main.Api.Users.IsBanned(msg))
            {
                return;
            }

            if (!Main.Api.Users.CheckUser(msg))
            {
                var kb2 = new KeyboardBuilder(bot);
                kb2.AddButton("➕ Зарегистрироваться", "start");
                sender.Text("❌ Вы не зарегистрированы, нажмите на кнопку ниже, чтобы начать", msg.ChatId, kb2.Build());
                return;
            }

            _sender = sender;
            var text    = $"📦 Порт с контейнерами (новые через {Time} мин.):";
            int counter = 1;

            foreach (var container in Containers)
            {
                text += $"\n 📦 Контейнер #{counter}:" +
                        $"\n 🏳 Страна: {container.Country}" +
                        $"\n ⚖ Вес: {container.Weight} " +
                        $"\n 💰 Ставка: {container.Price} руб. от {container.LastNamePrice}" +
                        $"\n";
                counter++;
            }

            var kb = new KeyboardBuilder(bot);

            kb.AddButton($"📦 #1 ({Containers[0].Price + 1000} руб.)", "port", new List <string>()
            {
                "0"
            });
            kb.AddLine();
            kb.AddButton($"📦 #2 ({Containers[1].Price + 1000} руб.)", "port", new List <string>()
            {
                "1"
            });
            kb.AddLine();
            kb.AddButton($"📦 #3 ({Containers[2].Price + 1000} руб.)", "port", new List <string>()
            {
                "2"
            });
            kb.AddLine();
            kb.AddButton("🔃 Обновить", "port");
            kb.AddLine();
            kb.AddButton(ButtonsHelper.ToHomeButton());

            if (msg.Payload.Arguments != null)
            {
                var number    = Int32.Parse(msg.Payload.Arguments[0]);
                var container = Containers[number];

                var user = Main.Api.Users.GetUser(msg);
                if (Containers.Any(c => c.UserId == user.Id))
                {
                    sender.Text("❌ Вы можете сделать только одну ставку.", msg.ChatId);
                    return;
                }

                var price = container.Price + 1000;
                if (user.Money < price)
                {
                    sender.Text("❌ У Вас недостаточно денег для ставки.", msg.ChatId);
                }
                else
                {
                    container.Price         = price;
                    container.LastNamePrice = user.Name;
                    container.UserId        = user.Id;
                    sender.Text("✔ Вы сделали ставку", msg.ChatId);
                }
            }

            sender.Text(text, msg.ChatId, kb.Build());
        }