// 代理客户详情相关类型定义

// 角色映射类型
export type RoleType = 1 | 2 | 3 | 4 | 5 | 6

// 角色名称映射
export const ROLE_MAP: Record<RoleType, string> = {
  1: '平台',
  2: '承包商',
  3: '特殊做市商',
  4: '普通做市商',
  5: '代理',
  6: '用户',
}

// 用户信息类型
export interface CustomerUserInfo {
  id: string | number
  email: string
  mobile: string
  role_id: RoleType
  capital_amount: string | number
  total_recharge_amount: string | number
  history_transfer_amount: string | number
  created_at: string
}

// 交易账户钱包信息类型
export interface AccountWallet {
  amount: string | number
  lever: string | number
}

// 交易账户类型
export interface Account {
  account_id: string | number
  account_name: string
  wallets_trade: AccountWallet
  collect_data: string | number
  created_at: string
}

// 客户详情响应类型
export interface CustomerDetailResponse {
  user: CustomerUserInfo
  accounts: Account[]
}

// 获取客户详情参数类型
export interface GetCustomerDetailParams {
  user_id: string | number
}

// 表格列配置类型
export interface TableColumn {
  label: string
  prop: string
  width?: number
  sortable?: boolean
}

// 用户展示信息类型
export interface UserDisplayInfo {
  name: string
  id: string | number
  role: string
  phone: string
  email: string
  deposit: string | number
  balance: string | number
  registerTime: string
  hisMeny: string | number
}

// 表格数据行类型
export interface TableDataRow {
  tradeAccount: string | number
  accountName: string
  balance: string | number
  leverage: string | number
  tradeVolume: string | number
  addTime: string
}
