@gt6/sdk
Version:
GT6 SDK for articles management - A comprehensive JavaScript/TypeScript library for managing articles, categories, and tags in GT6 platform
196 lines • 5.07 kB
TypeScript
import { GT6Client } from '../core/client';
import { RetailOrder } from './users';
export interface PlatformInfoField {
id: number;
platformId: number;
fieldName: string;
fieldValue: string;
aliases: string | null;
}
export interface AdminInfo {
id: number;
username: string;
privilegeLevel: number;
parentId: number | null;
agentId: number;
agentLevel: number;
platformId: number;
managerLogin: boolean;
member: boolean;
}
export interface FundInfo {
id: number;
userId: number;
userType: number;
fund: string;
noFund: string;
rentFund: string;
marginFund: string;
marginNoFund: string;
userIntegral: number;
creditLevel: number;
}
export interface PlatformUserInfo {
id: number;
platformName: string;
platformDescription: string;
parentId: number;
platformLevel: number;
platformType: number;
platformInfo: PlatformInfoField[];
admins: AdminInfo[];
fund: FundInfo;
generatedAt: string;
createdAt: string | null;
updatedAt: string | null;
}
export interface GetUserInfoResponse {
success: boolean;
message?: string;
data?: PlatformUserInfo;
}
export interface DeductFundsRequest {
fieldName: string;
changeAmount: number;
remark?: string;
}
export interface DeductFundsResponse {
success: boolean;
message?: string;
logId?: number;
newBalance?: string;
}
export interface CreateRetailOrderRequest {
user_id: number;
user_type: number;
total_amount: number;
pay_way: number;
product_type: number;
platform_id: number;
d1: number;
d2: number;
d3: number;
products: Array<{
product_id: number;
quantity: number;
sku: string;
price: number;
region_id: number;
address_id: number;
shipping_fee: number;
tax_fee: number;
}>;
fundLogId?: number;
status?: number;
}
export interface CreateRetailOrderResponse {
success: boolean;
message?: string;
order?: RetailOrder;
orderId?: number;
data?: {
order_id: string;
total_amount: number;
};
}
export interface CreatePaymentRecordRequest {
methodId: number;
recordType: number;
orderId?: number;
amount: number;
description?: string;
img?: string;
userType: number;
orderData?: {
user_id: number;
products: Array<{
product_id: number;
quantity: number;
sku: string;
price: number;
region_id: number;
address_id: number;
shipping_fee: number;
tax_fee: number;
}>;
total_amount: number;
platform_id: number;
d1: number;
d2: number;
d3: number;
pay_way: number;
};
}
export interface CreatePaymentRecordResponse {
success: boolean;
message?: string;
code?: number;
data?: {
record_id?: number;
order_id?: string;
};
}
/**
* 交易管理API模块
* 提供资金扣款、订单创建等功能
*/
export declare class TransactionsAPI {
private client;
constructor(client: GT6Client);
/**
* 资金扣款
* @param deductData 扣款数据
* @returns 扣款响应
*/
deductFunds(deductData: DeductFundsRequest): Promise<DeductFundsResponse>;
/**
* 创建零售订单
* @param orderData 订单数据
* @returns 创建订单响应
*/
createRetailOrder(orderData: CreateRetailOrderRequest): Promise<CreateRetailOrderResponse>;
/**
* 获取用户token(从本地存储)
* @returns token或null
*/
private getToken;
/**
* 创建支付记录
* @param paymentData 支付记录数据
* @returns 创建支付记录响应
*/
createPaymentRecord(paymentData: CreatePaymentRecordRequest): Promise<CreatePaymentRecordResponse>;
/**
* 获取用户平台信息
* @param platformId 平台ID
* @returns 用户平台信息响应
*/
getUserInfo(platformId: number): Promise<GetUserInfoResponse>;
/**
* 1. 根据字段名查询字段值
* @param platformInfo 平台信息数组
* @param fieldName 字段名称
* @returns 字段值或null
*/
getFieldByName(platformInfo: PlatformInfoField[], fieldName: string): string | null;
/**
* 2. 根据别名查询字段值
* @param platformInfo 平台信息数组
* @param aliases 别名
* @returns 字段值数组
*/
getFieldsByAliases(platformInfo: PlatformInfoField[], aliases: string): PlatformInfoField[];
/**
* 3. 获取管理员信息
* @param userInfo 用户平台信息
* @returns 管理员信息数组
*/
getAdminsInfo(userInfo: PlatformUserInfo): AdminInfo[];
/**
* 4. 获取资金信息
* @param userInfo 用户平台信息
* @returns 资金信息对象
*/
getFundInfo(userInfo: PlatformUserInfo): FundInfo | null;
}
//# sourceMappingURL=transactions.d.ts.map