diff --git a/public/index.html b/public/index.html index ee16e4f..16864cc 100644 --- a/public/index.html +++ b/public/index.html @@ -88,6 +88,13 @@ +
+

🗄️ Склад

+
+

Нет доступного склада.

+
+
+ 🏠 Перейти в чат бота @@ -98,7 +105,7 @@ fetch(`/player/${playerId}`) .then(response => response.json()) .then(data => { - const { user, business, enterprises } = data; + const { user, business, enterprises, warehouse } = data; // Личные данные document.getElementById("name").textContent = user.name || user.username; @@ -168,6 +175,29 @@ enterprisesDiv.appendChild(div); }); } + + // Склад (имеет следующие переменные playerId: DataTypes.BIGINT,capacity: DataTypes.INTEGER, // Общая ёмкость складаwood: DataTypes.INTEGER,coal: DataTypes.INTEGER,oil: DataTypes.INTEGER,metall: DataTypes.INTEGER,gold: DataTypes.INTEGER,diamond: DataTypes.INTEGER,), красиво выводим весь склад и добавляем прогрессбар заполненности + const warehouseDiv = document.getElementById("warehouse"); + if (warehouse) { + warehouseDiv.innerHTML = ""; + const resources = Object.keys(warehouse.dataValues).filter(key => key !== 'playerId' && key !== 'capacity'); + resources.forEach(resource => { + const div = document.createElement("div"); + div.classList.add("resource"); + div.innerHTML = ` + ${getResourceName(resource)}
+ Количество: ${warehouse[resource]}
+ Максимум: ${warehouse.capacity} + `; + // Добавляем прогрессбар заполненности склада + const progress = (warehouse[resource] / warehouse.capacity) * 100; + const progressBar = document.createElement("div"); + progressBar.classList.add("progress-bar"); + progressBar.innerHTML = `
`; + div.appendChild(progressBar); + warehouseDiv.appendChild(div); + }); + } }) .catch(err => { console.error("Ошибка загрузки данных:", err); diff --git a/server.js b/server.js index 4cb7ea1..ff10bb8 100644 --- a/server.js +++ b/server.js @@ -25,6 +25,7 @@ app.get('/player/:id', async (req, res) => { business = await BusinessModel.findOne( {where: { owner: user.business.id} } ) } const enterprises = await EnterpriseModel.findAll({ where: { playerId } }); + const warehouse = await WarehouseModel.findOne({ where: { playerId } }); if (!user || !character) { return res.status(404).json({ error: "Игрок не найден." }); @@ -55,6 +56,7 @@ app.get('/player/:id', async (req, res) => { }, business: business || { name: "Отсутствует", balance: 0, materials: 0, users: [] }, enterprises: enterprises || [], + warehouse: warehouse || { materials: 0, maxMaterials: 0 }, }); } catch (err) { console.error(err);