From 42e3ae16be78b0364077a851aa751504474af455 Mon Sep 17 00:00:00 2001 From: Egor Date: Sat, 17 Jan 2026 08:49:18 +0300 Subject: [PATCH] Add files via upload --- src/api/adminPayments.ts | 39 +++++++++++++++++++++++++++++++++++++++ src/api/balance.ts | 27 +++++++++++++++++++++++++-- 2 files changed, 64 insertions(+), 2 deletions(-) create mode 100644 src/api/adminPayments.ts diff --git a/src/api/adminPayments.ts b/src/api/adminPayments.ts new file mode 100644 index 0000000..a169517 --- /dev/null +++ b/src/api/adminPayments.ts @@ -0,0 +1,39 @@ +import apiClient from './client' +import type { PaginatedResponse, PendingPayment, ManualCheckResponse } from '../types' + +export interface PaymentsStats { + total_pending: number + by_method: Record +} + +export const adminPaymentsApi = { + // Get all pending payments (admin) + getPendingPayments: async (params?: { + page?: number + per_page?: number + method_filter?: string + }): Promise> => { + const response = await apiClient.get>('/cabinet/admin/payments', { + params, + }) + return response.data + }, + + // Get payments statistics + getStats: async (): Promise => { + const response = await apiClient.get('/cabinet/admin/payments/stats') + return response.data + }, + + // Get specific payment details + getPayment: async (method: string, paymentId: number): Promise => { + const response = await apiClient.get(`/cabinet/admin/payments/${method}/${paymentId}`) + return response.data + }, + + // Manually check payment status + checkPaymentStatus: async (method: string, paymentId: number): Promise => { + const response = await apiClient.post(`/cabinet/admin/payments/${method}/${paymentId}/check`) + return response.data + }, +} diff --git a/src/api/balance.ts b/src/api/balance.ts index b0a4d82..d2aeef4 100644 --- a/src/api/balance.ts +++ b/src/api/balance.ts @@ -1,5 +1,5 @@ -import apiClient from './client' -import type { Balance, Transaction, PaymentMethod, PaginatedResponse } from '../types' +import apiClient from './client' +import type { Balance, Transaction, PaymentMethod, PaginatedResponse, PendingPayment, ManualCheckResponse } from '../types' export const balanceApi = { // Get current balance @@ -73,5 +73,28 @@ export const balanceApi = { }) return response.data }, + + // Get pending payments for manual verification + getPendingPayments: async (params?: { + page?: number + per_page?: number + }): Promise> => { + const response = await apiClient.get>('/cabinet/balance/pending-payments', { + params, + }) + return response.data + }, + + // Get specific pending payment details + getPendingPayment: async (method: string, paymentId: number): Promise => { + const response = await apiClient.get(`/cabinet/balance/pending-payments/${method}/${paymentId}`) + return response.data + }, + + // Manually check payment status + checkPaymentStatus: async (method: string, paymentId: number): Promise => { + const response = await apiClient.post(`/cabinet/balance/pending-payments/${method}/${paymentId}/check`) + return response.data + }, }