mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-30 02:23:47 +00:00
Add files via upload
This commit is contained in:
39
src/api/adminPayments.ts
Normal file
39
src/api/adminPayments.ts
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
import apiClient from './client'
|
||||||
|
import type { PaginatedResponse, PendingPayment, ManualCheckResponse } from '../types'
|
||||||
|
|
||||||
|
export interface PaymentsStats {
|
||||||
|
total_pending: number
|
||||||
|
by_method: Record<string, number>
|
||||||
|
}
|
||||||
|
|
||||||
|
export const adminPaymentsApi = {
|
||||||
|
// Get all pending payments (admin)
|
||||||
|
getPendingPayments: async (params?: {
|
||||||
|
page?: number
|
||||||
|
per_page?: number
|
||||||
|
method_filter?: string
|
||||||
|
}): Promise<PaginatedResponse<PendingPayment>> => {
|
||||||
|
const response = await apiClient.get<PaginatedResponse<PendingPayment>>('/cabinet/admin/payments', {
|
||||||
|
params,
|
||||||
|
})
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
|
||||||
|
// Get payments statistics
|
||||||
|
getStats: async (): Promise<PaymentsStats> => {
|
||||||
|
const response = await apiClient.get<PaymentsStats>('/cabinet/admin/payments/stats')
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
|
||||||
|
// Get specific payment details
|
||||||
|
getPayment: async (method: string, paymentId: number): Promise<PendingPayment> => {
|
||||||
|
const response = await apiClient.get<PendingPayment>(`/cabinet/admin/payments/${method}/${paymentId}`)
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
|
||||||
|
// Manually check payment status
|
||||||
|
checkPaymentStatus: async (method: string, paymentId: number): Promise<ManualCheckResponse> => {
|
||||||
|
const response = await apiClient.post<ManualCheckResponse>(`/cabinet/admin/payments/${method}/${paymentId}/check`)
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import apiClient from './client'
|
import apiClient from './client'
|
||||||
import type { Balance, Transaction, PaymentMethod, PaginatedResponse } from '../types'
|
import type { Balance, Transaction, PaymentMethod, PaginatedResponse, PendingPayment, ManualCheckResponse } from '../types'
|
||||||
|
|
||||||
export const balanceApi = {
|
export const balanceApi = {
|
||||||
// Get current balance
|
// Get current balance
|
||||||
@@ -73,5 +73,28 @@ export const balanceApi = {
|
|||||||
})
|
})
|
||||||
return response.data
|
return response.data
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Get pending payments for manual verification
|
||||||
|
getPendingPayments: async (params?: {
|
||||||
|
page?: number
|
||||||
|
per_page?: number
|
||||||
|
}): Promise<PaginatedResponse<PendingPayment>> => {
|
||||||
|
const response = await apiClient.get<PaginatedResponse<PendingPayment>>('/cabinet/balance/pending-payments', {
|
||||||
|
params,
|
||||||
|
})
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
|
||||||
|
// Get specific pending payment details
|
||||||
|
getPendingPayment: async (method: string, paymentId: number): Promise<PendingPayment> => {
|
||||||
|
const response = await apiClient.get<PendingPayment>(`/cabinet/balance/pending-payments/${method}/${paymentId}`)
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
|
|
||||||
|
// Manually check payment status
|
||||||
|
checkPaymentStatus: async (method: string, paymentId: number): Promise<ManualCheckResponse> => {
|
||||||
|
const response = await apiClient.post<ManualCheckResponse>(`/cabinet/balance/pending-payments/${method}/${paymentId}/check`)
|
||||||
|
return response.data
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user