Item purchase
This commit is contained in:
parent
626435a3de
commit
6fa273f0b6
@ -95,6 +95,8 @@ const initDb = async () => {
|
|||||||
city TEXT,
|
city TEXT,
|
||||||
district TEXT,
|
district TEXT,
|
||||||
status INTEGER DEFAULT 0,
|
status INTEGER DEFAULT 0,
|
||||||
|
total_balance REAL DEFAULT 0,
|
||||||
|
bonus_balance REAL DEFAULT 0,
|
||||||
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
||||||
)
|
)
|
||||||
`);
|
`);
|
||||||
|
@ -370,6 +370,10 @@ export default class AdminProductHandler {
|
|||||||
text: 'No products for this location',
|
text: 'No products for this location',
|
||||||
markup: {
|
markup: {
|
||||||
inline_keyboard: [
|
inline_keyboard: [
|
||||||
|
[{
|
||||||
|
text: '📥 Import Products',
|
||||||
|
callback_data: `add_product_${locationId}_${categoryId}_${subcategoryId}`
|
||||||
|
}],
|
||||||
[{text: '« Back', callback_data: `prod_category_${locationId}_${categoryId}`}]
|
[{text: '« Back', callback_data: `prod_category_${locationId}_${categoryId}`}]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
11
src/index.js
11
src/index.js
@ -239,6 +239,9 @@ bot.on('callback_query', async (callbackQuery) => {
|
|||||||
} else if (action.startsWith('buy_product_')) {
|
} else if (action.startsWith('buy_product_')) {
|
||||||
logDebug(action, 'handleBuyProduct');
|
logDebug(action, 'handleBuyProduct');
|
||||||
await userProductHandler.handleBuyProduct(callbackQuery);
|
await userProductHandler.handleBuyProduct(callbackQuery);
|
||||||
|
} else if (action.startsWith('pay_with_')) {
|
||||||
|
logDebug(action, 'handlePay');
|
||||||
|
await userProductHandler.handlePay(callbackQuery);
|
||||||
}
|
}
|
||||||
// Admin location management
|
// Admin location management
|
||||||
else if (action === 'add_location') {
|
else if (action === 'add_location') {
|
||||||
@ -287,7 +290,7 @@ bot.on('callback_query', async (callbackQuery) => {
|
|||||||
logDebug(action, 'handleSubcategorySelection');
|
logDebug(action, 'handleSubcategorySelection');
|
||||||
await adminProductHandler.handleSubcategorySelection(callbackQuery);
|
await adminProductHandler.handleSubcategorySelection(callbackQuery);
|
||||||
} else if (action.startsWith('list_products_')) {
|
} else if (action.startsWith('list_products_')) {
|
||||||
logDebug(action, 'handleSubcategorySelection');
|
logDebug(action, 'handleProductListPage');
|
||||||
await adminProductHandler.handleProductListPage(callbackQuery);
|
await adminProductHandler.handleProductListPage(callbackQuery);
|
||||||
} else if (action.startsWith('add_product_')) {
|
} else if (action.startsWith('add_product_')) {
|
||||||
logDebug(action, 'handleAddProduct');
|
logDebug(action, 'handleAddProduct');
|
||||||
@ -299,7 +302,7 @@ bot.on('callback_query', async (callbackQuery) => {
|
|||||||
logDebug(action, 'handleProductEdit');
|
logDebug(action, 'handleProductEdit');
|
||||||
await adminProductHandler.handleProductEdit(callbackQuery)
|
await adminProductHandler.handleProductEdit(callbackQuery)
|
||||||
} else if (action.startsWith('delete_product_')) {
|
} else if (action.startsWith('delete_product_')) {
|
||||||
logDebug(action, 'handleViewProduct');
|
logDebug(action, 'handleProductDelete');
|
||||||
await adminProductHandler.handleProductDelete(callbackQuery);
|
await adminProductHandler.handleProductDelete(callbackQuery);
|
||||||
} else if (action.startsWith('confirm_delete_product_')) {
|
} else if (action.startsWith('confirm_delete_product_')) {
|
||||||
logDebug(action, 'handleConfirmDelete');
|
logDebug(action, 'handleConfirmDelete');
|
||||||
@ -310,13 +313,13 @@ bot.on('callback_query', async (callbackQuery) => {
|
|||||||
logDebug(action, 'handleViewUser');
|
logDebug(action, 'handleViewUser');
|
||||||
await adminUserHandler.handleViewUser(callbackQuery);
|
await adminUserHandler.handleViewUser(callbackQuery);
|
||||||
} else if (action.startsWith('list_users_')) {
|
} else if (action.startsWith('list_users_')) {
|
||||||
logDebug(action, 'handleViewUser');
|
logDebug(action, 'handleUserListPage');
|
||||||
await adminUserHandler.handleUserListPage(callbackQuery);
|
await adminUserHandler.handleUserListPage(callbackQuery);
|
||||||
} else if (action.startsWith('delete_user_')) {
|
} else if (action.startsWith('delete_user_')) {
|
||||||
logDebug(action, 'handleDeleteUser');
|
logDebug(action, 'handleDeleteUser');
|
||||||
await adminUserHandler.handleDeleteUser(callbackQuery);
|
await adminUserHandler.handleDeleteUser(callbackQuery);
|
||||||
} else if (action.startsWith('block_user_')) {
|
} else if (action.startsWith('block_user_')) {
|
||||||
logDebug(action, 'handleDeleteUser');
|
logDebug(action, 'handleBlockUser');
|
||||||
await adminUserHandler.handleBlockUser(callbackQuery);
|
await adminUserHandler.handleBlockUser(callbackQuery);
|
||||||
} else if (action.startsWith('confirm_delete_user_')) {
|
} else if (action.startsWith('confirm_delete_user_')) {
|
||||||
logDebug(action, 'handleConfirmDelete');
|
logDebug(action, 'handleConfirmDelete');
|
||||||
|
@ -103,4 +103,8 @@ export default class User {
|
|||||||
throw error;
|
throw error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static async recalculateBalance(telegramId) {
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user