UNPKG

@gt6/sdk

Version:

GT6 SDK for articles management - A comprehensive JavaScript/TypeScript library for managing articles, categories, and tags in GT6 platform

425 lines 10.9 kB
import { GT6Client } from '../core/client'; export interface LoginRequest { username: string; password: string; platformId: number; } export interface LoginResponse { success: boolean; message?: string; token?: string; user?: { userId: number; username: string; userLevel: number; status: boolean; platformId: number; d1: number; d2: number; d3: number; }; } export interface RegisterRequest { username: string; password: string; platformId: number; ibcode?: string; } export interface RegisterResponse { success: boolean; message?: string; userId?: number; } export interface UserData { userId: number; username: string; userLevel: number; status: boolean; platformId: number; d1: number; d2: number; d3: number; token: string; } export interface UserFunds { id: number; userId: number; userType: number; fund: string; noFund: string; rentFund: string; marginFund: string; marginNoFund: string; userIntegral: number; creditLevel: number; } export interface UserFundsResponse { success: boolean; fund: UserFunds; message?: string; } export interface PaymentRecord { id: number; orderId: string; userId: number; userType: number; methodId: number; recordType: number; amount: string; status: string; description?: string; adminDescription?: string; img?: string; createTime: string; updateTime?: string; } export interface PaymentRecordsResponse { success: boolean; records: PaymentRecord[]; total: number; page: number; pageSize: number; message?: string; } export interface PaymentRecordsOptions { page?: number; pageSize?: number; status?: string; recordType?: number; methodId?: number; } export interface FundLog { logId: number; fundId: number | null; userId: number; fieldName: string; oldBalance: string; newBalance: string; changeAmount: string; operatorId: number; operationTime: string; remark: string | null; } export interface FundLogsResponse { success: boolean; logs: FundLog[]; total: number; message?: string; } export interface FundLogsOptions { page?: number; pageSize?: number; } export interface RetailOrderDetail { detail_id: number; product_id: number; product_name: string; address_id: number; sku: string; shipping_fee: number; tax_fee: number; quantity: number; single_price: number; total_price: number; region_id: number; remark: string; created_at: string; updated_at: string; } export interface RetailOrder { order_id: number; user_id: number; user_type: number; total_amount: number; pay_way: number; payment_record_id: number | null; fund_log_id: number | null; status: number; product_type: number; created_at: string; updated_at: string; platform_id: number; d1: number; d2: number; d3: number; details: RetailOrderDetail[]; } export interface RetailOrdersResponse { success: boolean; data: { total: number; page: number; pageSize: number; orders: RetailOrder[]; }; message?: string; } export interface RetailOrdersOptions { page?: number; pageSize?: number; } export interface AddressInfo { addressId: number; userId: number; userType: number; consignee: string; phone: string; address: string; regionId: number; isDefault: boolean; createdAt: string; updatedAt: string; } export interface AddressesResponse { success: boolean; addresses?: AddressInfo[]; message?: string; } export interface UserProfile { email: string | null; phone: string | null; avatar: string | null; realName: string | null; } export interface UserProfileResponse { success: boolean; message?: string; user?: UserProfile; } export interface UpdateProfileRequest { email?: string; phone?: string; realName?: string; avatar?: string; } export interface UpdateProfileResponse { success: boolean; message?: string; } export interface ChangePasswordRequest { oldPassword: string; newPassword: string; } export interface ChangePasswordResponse { success: boolean; message?: string; } export interface AddressRequest { regionId: number; consignee: string; phone: string; address: string; isDefault: boolean; userType?: number; } export interface AddressResponse { success: boolean; message?: string; addressId?: number; } export interface UploadResponse { success: boolean; message?: string; url?: string; } /** * 用户管理API模块 * 提供用户登录、注册等功能 */ export declare class UsersAPI { private client; constructor(client: GT6Client); /** * 用户登录 * @param loginData 登录数据 * @returns 登录响应 */ login(loginData: LoginRequest): Promise<LoginResponse>; /** * 用户注册 * @param registerData 注册数据 * @returns 注册响应 */ register(registerData: RegisterRequest): Promise<RegisterResponse>; /** * 保存用户数据到本地存储 * @param userData 用户数据 */ saveUserData(userData: UserData): void; /** * 从本地存储获取用户数据 * @returns 用户数据或null */ getUserData(): UserData | null; /** * 清除本地存储的用户数据 */ clearUserData(): void; /** * 检查用户是否已登录 * @returns 是否已登录 */ isLoggedIn(): boolean; /** * 获取当前登录用户的token * @returns token或null */ getToken(): string | null; /** * 获取当前登录用户信息 * @returns 用户信息或null */ getCurrentUser(): Omit<UserData, 'token'> | null; /** * 用户登出 */ logout(): void; /** * 记住用户登录信息 * @param username 用户名 * @param password 密码 */ rememberLogin(username: string, password: string): void; /** * 获取记住的登录信息 * @returns 记住的登录信息 */ getRememberedLogin(): { username: string; password: string; } | null; /** * 清除记住的登录信息 */ clearRememberedLogin(): void; /** * 获取用户资金信息 * @returns 用户资金信息 */ getUserFunds(): Promise<UserFundsResponse>; /** * 获取用户资金信息(简化版本,返回资金对象或null) * @returns 用户资金信息或null */ getFunds(): Promise<UserFunds | null>; /** * 获取用户支付记录列表 * @param options 查询选项 * @returns 支付记录列表响应 */ getPaymentRecords(options?: PaymentRecordsOptions): Promise<PaymentRecordsResponse>; /** * 获取用户支付记录列表(简化版本) * @param page 页码,默认为1 * @param pageSize 每页数量,默认为10 * @returns 支付记录列表或null */ getPaymentRecordsSimple(page?: number, pageSize?: number): Promise<{ records: PaymentRecord[]; total: number; page: number; pageSize: number; } | null>; /** * 获取用户资金日志列表 * @param options 查询选项 * @returns 资金日志列表响应 */ getFundLogs(options?: FundLogsOptions): Promise<FundLogsResponse>; /** * 获取用户资金日志列表(简化版本) * @param page 页码,默认为1 * @param pageSize 每页数量,默认为10 * @returns 资金日志列表或null */ getFundLogsSimple(page?: number, pageSize?: number): Promise<{ logs: FundLog[]; total: number; } | null>; /** * 获取用户零售订单列表 * @param options 查询选项 * @returns 零售订单列表响应 */ getRetailOrders(options?: RetailOrdersOptions): Promise<RetailOrdersResponse>; /** * 获取用户零售订单列表(简化版本) * @param page 页码,默认为1 * @param pageSize 每页数量,默认为10 * @returns 零售订单列表或null */ getRetailOrdersSimple(page?: number, pageSize?: number): Promise<{ orders: RetailOrder[]; total: number; page: number; pageSize: number; } | null>; /** * 获取用户地址列表 * @param userType 用户类型,默认为2(普通用户) * @returns 地址列表响应 */ getAddresses(userType?: number): Promise<AddressesResponse>; /** * 获取用户地址列表(简化版本) * @param userType 用户类型,默认为2(普通用户) * @returns 地址列表或null */ getAddressesSimple(userType?: number): Promise<AddressInfo[] | null>; /** * 根据地址ID获取地址信息 * @param addressId 地址ID * @param userType 用户类型,默认为2(普通用户) * @returns 地址信息或null */ getAddressById(addressId: number, userType?: number): Promise<AddressInfo | null>; /** * 获取用户资料 * @returns 用户资料响应 */ getUserProfile(): Promise<UserProfileResponse>; /** * 获取用户资料(简化版本) * @returns 用户资料或null */ getProfile(): Promise<UserProfile | null>; /** * 更新用户资料 * @param profileData 用户资料数据 * @returns 更新响应 */ updateProfile(profileData: UpdateProfileRequest): Promise<UpdateProfileResponse>; /** * 修改密码 * @param passwordData 密码数据 * @returns 修改密码响应 */ changePassword(passwordData: ChangePasswordRequest): Promise<ChangePasswordResponse>; /** * 创建地址 * @param addressData 地址数据 * @returns 创建地址响应 */ createAddress(addressData: AddressRequest): Promise<AddressResponse>; /** * 更新地址 * @param addressId 地址ID * @param addressData 地址数据 * @returns 更新地址响应 */ updateAddress(addressId: number, addressData: AddressRequest): Promise<AddressResponse>; /** * 删除地址 * @param addressId 地址ID * @param userType 用户类型,默认为2(普通用户) * @returns 删除地址响应 */ deleteAddress(addressId: number, userType?: number): Promise<AddressResponse>; /** * 上传文件 * @param file 文件对象 * @returns 上传响应 */ uploadFile(file: File): Promise<UploadResponse>; } //# sourceMappingURL=users.d.ts.map