export interface PartnerProfitsState { availableBalance: number; withdrawingBalance: number; withdrawnBalance: number; availableProfit: number; withdrawnProfit: number; failedProfit: number; } export interface PartnerInviteCode { inviteCode: string; } export interface PartnerInfo extends PartnerInviteCode {} export interface InviteUserInfo { id: string; // 用户ID,可选 userId: string; // 用户唯一标识 nickName: string; // 用户昵称 bandPhone: boolean; // 是否绑定了手机号,可选 avatarUrl: string; // 用户头像URL,可选 isDefaultAvatar: boolean; // 是否使用默认头像,可选 isDefaultNickname: boolean; // 是否使用默认昵称,可选 isBindPhone: boolean; // 是否绑定了手机号,可选 created: string; // 用户创建时间戳,可选 updated: string; // 用户更新时间戳,可选 isBoss: boolean; // 是否是老板,可选 isPartner: boolean; // 是否是合作伙伴,可选 userBoss: { level: string; // 上级老板的等级,可选 expireTime: string; // 上级老板的过期时间,可选 isExpire: boolean; // 上级老板是否过期,可选 }; bossAuthStatus: string; // 老板认证状态,可选 existAvailableJob: boolean; // 是否存在可用的工作,可选 isCreateResume: boolean; // 是否创建了简历,可选 imAcctNo: string; // 即时通讯账号,可选 phone: string; // 用户手机号,可选 roleType: string; // 角色类型,可选 } export enum ProfitType { PAYMENT_SHARE = 'PAYMENT_SHARE', CHAT_SHARE = 'CHAT_SHARE', INDIRECT_MEMBER_REFERRAL = 'INDIRECT_MEMBER_REFERRAL', } export enum ProfitStatus { AVAILABLE = '1', WITHDRAWING = '2', WITHDRAW = '3', } export interface GetProfitRequest { type: ProfitType; } export interface PartnerProfitItem { id: number; // 唯一标识 partnerId: string; sourceUserId: string; originatingUserId: string; // 用户ID relatedEntityId: string; relatedEntityType: string; amount: number; // 利润 earnType: ProfitType; // 利润类型 status: ProfitStatus; // 状态 remark: string; // 备注 created: string; // 创建时间 updated: string; // 更新时间 expectedSettlementDate: string; actualSettlementDate: string; } export interface WithdrawResponse { outBillNo: string; transferBillNo: string; createTime: string; state: string; packageInfo: string; } export interface WithdrawRecord { id: number; userId: string; orderNo: string; outTradeId: string; amt: number; status: number; remark: string; created: string; updated: string; finishedTime: string; } export interface PartnerPagination { content: T[]; totalPages: number; }