feat(subscription): Refactor subscription handling and update imports for better organization

This commit is contained in:
web@ppanel
2025-03-08 12:34:23 +07:00
parent 3222016799
commit 2215c7f2b9
27 changed files with 1042 additions and 180 deletions
+84 -1
View File
@@ -187,7 +187,7 @@ declare namespace API {
};
type GetAvailablePaymentMethodsResponse = {
list: PaymentConfig[];
list: PaymenMethod[];
};
type GetLoginLogParams = {
@@ -224,6 +224,24 @@ declare namespace API {
total: number;
};
type GetSubscriptionResponse = {
list: Subscribe[];
};
type GetUserSubscribeTrafficLogsRequest = {
page: number;
size: number;
user_id: number;
subscribe_id: number;
start_time: number;
end_time: number;
};
type GetUserSubscribeTrafficLogsResponse = {
list: TrafficLog[];
total: number;
};
type GetUserTicketDetailRequest = {
id: number;
};
@@ -351,6 +369,16 @@ declare namespace API {
updated_at: number;
};
type PaymenMethod = {
id: number;
name: string;
mark: string;
icon: string;
fee_mode: number;
fee_percent: number;
fee_amount: number;
};
type PaymentConfig = {
id: number;
name: string;
@@ -364,6 +392,21 @@ declare namespace API {
enable: boolean;
};
type PortalPurchaseRequest = {
identifier: string;
platform: string;
password?: string;
payment: string;
subscribe_id: number;
quantity: number;
coupon?: string;
turnstile_token?: string;
};
type PortalPurchaseResponse = {
order_no: string;
};
type PreOrderResponse = {
price: number;
amount: number;
@@ -374,6 +417,22 @@ declare namespace API {
fee_amount: number;
};
type PrePurchaseOrderRequest = {
payment: string;
subscribe_id: number;
quantity: number;
coupon?: string;
};
type PrePurchaseOrderResponse = {
price: number;
amount: number;
discount: number;
coupon: string;
coupon_discount: number;
fee_amount: number;
};
type PreRenewalOrderResponse = {
orderNo: string;
};
@@ -467,6 +526,30 @@ declare namespace API {
list: OrderDetail[];
};
type QueryPurchaseOrderParams = {
order_no: string;
};
type QueryPurchaseOrderRequest = {
order_no: string;
};
type QueryPurchaseOrderResponse = {
order_no: string;
subscribe: Subscribe;
quantity: number;
price: number;
amount: number;
discount: number;
coupon: string;
coupon_discount: number;
fee_amount: number;
payment: string;
status: number;
created_at: number;
token?: string;
};
type QuerySubscribeGroupListResponse = {
list: SubscribeGroup[];
total: number;