Admin platform, with users, transactions, games and admin creation
This commit is contained in:
@@ -95,8 +95,7 @@ export const useAPIStore = defineStore('api', () => {
|
||||
const queryParams = new URLSearchParams({
|
||||
page: params.page || 1,
|
||||
...(params.type && { type: params.type }),
|
||||
...(params.date_from && { date_from: params.date_from }),
|
||||
...(params.date_to && { date_to: params.date_to }),
|
||||
...(params.blocked && { blocked: params.blocked }),
|
||||
}).toString()
|
||||
|
||||
return axios.get(`${API_BASE_URL}/users/${authStore.currentUserID}/transactions?${queryParams}`)
|
||||
@@ -114,6 +113,58 @@ export const useAPIStore = defineStore('api', () => {
|
||||
return axios.get(`${API_BASE_URL}/statistics/me`)
|
||||
}
|
||||
|
||||
const getPublicStats = () => {
|
||||
return axios.get(`${API_BASE_URL}/statistics/public`)
|
||||
}
|
||||
|
||||
const getAdminStats = () => {
|
||||
return axios.get(`${API_BASE_URL}/admin/statistics`)
|
||||
}
|
||||
|
||||
const getAdminUsers = (params) => {
|
||||
const queryParams = new URLSearchParams({
|
||||
page: params.page || 1,
|
||||
...(params.type && { type: params.type }),
|
||||
...(params.blocked && { blocked: params.blocked }),
|
||||
}).toString()
|
||||
return axios.get(`${API_BASE_URL}/admin/users?${queryParams}`)
|
||||
}
|
||||
|
||||
const blockUser = (user) => {
|
||||
return axios.post(`${API_BASE_URL}/admin/users/${user.id}/block`)
|
||||
}
|
||||
|
||||
const unblockUser = (user) => {
|
||||
return axios.post(`${API_BASE_URL}/admin/users/${user.id}/unblock`)
|
||||
}
|
||||
|
||||
const deleteUser = (user) => {
|
||||
return axios.delete(`${API_BASE_URL}/admin/users/${user.id}`)
|
||||
}
|
||||
|
||||
const getAdminTransactions = (params) => {
|
||||
const queryParams = new URLSearchParams({
|
||||
page: params.page || 1,
|
||||
...(params.sort_datetime == 'asc' && { sort_datetime: 'asc' }),
|
||||
...(params.sort_coins && { sort_coins: params.sort_coins }),
|
||||
}).toString()
|
||||
return axios.get(`${API_BASE_URL}/admin/transactions?${queryParams}`)
|
||||
}
|
||||
|
||||
const getAdminGames = (params) => {
|
||||
const queryParams = new URLSearchParams({
|
||||
page: params.page || 1,
|
||||
...(params.sort_direction == 'asc' && { sort_direction: 'asc' }),
|
||||
...(params.type && { type: params.type }),
|
||||
}).toString()
|
||||
return axios.get(`${API_BASE_URL}/games?${queryParams}`)
|
||||
}
|
||||
|
||||
const postAdmin = async (credentials) => {
|
||||
return axios.post(`${API_BASE_URL}/admin/users`, credentials)
|
||||
}
|
||||
|
||||
|
||||
return {
|
||||
postLogin,
|
||||
postLogout,
|
||||
@@ -123,6 +174,15 @@ export const useAPIStore = defineStore('api', () => {
|
||||
getCurrentUserTransactions,
|
||||
getCurrentUserStats,
|
||||
getLeaderboard,
|
||||
getPublicStats,
|
||||
getAdminStats,
|
||||
getAdminUsers,
|
||||
blockUser,
|
||||
unblockUser,
|
||||
deleteUser,
|
||||
getAdminTransactions,
|
||||
getAdminGames,
|
||||
postAdmin,
|
||||
gameQueryParameters,
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user