Appearance
個人資料與提款(開發文檔)
最後更新:2026-04-10
📖 功能說明請參考 個人資料與提款
架構
相關檔案
ViewController — 個人資料(11 個)
| 檔案 | 說明 |
|---|---|
.../UserInfo/C/BBPersonalInfoMainController.swift | 主頁 |
.../UserInfo/C/BBPersonalInfoController.swift | 個人資訊 |
.../UserInfo/C/BBPersonalInfoBankCardListController.swift | 銀行卡列表 |
.../UserInfo/C/BBPersonalInfoAddBankCardController.swift | 新增銀行卡 |
.../UserInfo/C/BBPersonalInfoAddressListController.swift | 地址列表 |
.../UserInfo/C/BBAddVirtualAddressViewController.swift | 新增虛擬地址 |
.../UserInfo/C/BBVirtualWithdrawViewController.swift | 虛擬提款 |
.../UserInfo/C/BBPersonalInfoChangePwdController.swift | 修改密碼 |
.../UserInfo/C/BBPersonalInfoBindCelEmailController.swift | 綁定手機/郵箱 |
.../UserInfo/C/BBPersonalInfoEntryAddressController.swift | 收款地址 |
.../UserInfo/C/BBScanViewController.swift | 掃碼 |
基礎路徑:
BBSport/Tab/我的/Mine/
ViewController — 提款(3 個)
| 檔案 | 說明 |
|---|---|
.../Withdraw/C/WithdrawViewController.swift | 法幣提款 |
.../Withdraw/C/WithdrawDetailViewController.swift | 提款詳情 |
.../Login_Register/登录注册/FindPassword/C/ChangePaawordViewController.swift | 忘記密碼-改密 |
基礎路徑:
BBSport/Tab/我的/Mine/
ViewModel / Helper(7 個)
| 檔案 | 說明 |
|---|---|
.../UserInfo/ViewModel/BBOnelineInputControllerViewModel.swift | 輸入 ViewModel |
.../UserInfo/C/BBOnelineInputController.swift | 單行輸入 |
.../UserInfo/C/BBPersonalInfoBaseController.swift | 基底 |
.../Helpers/AipOcrSdk/BBBankCardIdentify.swift | 銀行卡 OCR 識別 |
.../Helpers/BBBankIconHelper.swift | 銀行 Icon |
.../Helpers/BBWalletService.swift | 錢包服務 |
.../Helpers/PersonalInfoUIManager.swift | UI 管理 |
基礎路徑:
BBSport/Tab/我的/Mine/
View — 個人資料(13 個)
| 檔案 | 說明 |
|---|---|
.../UserInfo/V/BBAddBankCardPhotoView.swift | 銀行卡照片 |
.../UserInfo/V/BBAddressListCell.swift | 地址列表 Cell |
.../UserInfo/V/BBAddressPicker.swift | 地址選擇器 |
.../UserInfo/V/BBBankCardListCell.swift | 銀行卡列表 Cell |
.../UserInfo/V/BBChoiceSegmentView.swift | 選項切換 |
.../UserInfo/V/BBInputAutoField.swift | 自動輸入欄位 |
.../UserInfo/V/BBPersonEditView.swift | 個人編輯 |
.../UserInfo/V/BBPersonalInfoMainCell.swift | 主頁 Cell |
.../UserInfo/V/BBSelectAffiliatedBankView.swift | 選擇開戶銀行 |
.../UserInfo/V/BBSendMsgCodeView.swift | 發送驗證碼 |
.../UserInfo/V/BBVirtualAddressCell.swift | 虛擬地址 Cell |
.../UserInfo/V/BBVirtualAddressEmptyView.swift | 虛擬地址空狀態 |
.../UserInfo/V/BBVirtualAddressTableFooterView.swift | 虛擬地址 Footer |
基礎路徑:
BBSport/Tab/我的/Mine/
View — 虛擬幣 / 提款(23 個)
| 檔案 | 說明 |
|---|---|
.../UserInfo/V/BBVirtualInputView.swift | 虛擬幣輸入 |
.../UserInfo/V/BBVirtualProtocolView.swift | 虛擬幣協議 |
.../Withdraw/C/WithdrawViewModel.swift | 提款 ViewModel |
.../Withdraw/V/BodyView/BBWithdrawAccount.swift | 提款帳戶 |
.../Withdraw/V/BodyView/BankBody/WithdrawBankBodyView.swift | 銀行提款 Body |
.../Withdraw/V/BodyView/ChooseAdress/WithdrawAddressListView.swift | 選擇地址列表 |
.../Withdraw/V/BodyView/ChooseBank/WithdrawBankCell.swift | 選擇銀行卡 Cell |
.../Withdraw/V/BodyView/ChooseBank/WithdrawSelectBankCardView.swift | 選擇銀行卡 |
.../Withdraw/V/BodyView/ChooseBank/WithdrawSelectBankView.swift | 選擇銀行 |
.../Withdraw/V/BodyView/ContentView/WithdrawBodyView.swift | Body 容器 |
.../Withdraw/V/BodyView/DigitalBody/WithdrawDigitalBodyView.swift | 虛擬幣 Body |
.../Withdraw/V/BodyView/DigitalBody/WithdrawDigitalChangeTypeView.swift | 切換幣種 |
.../Withdraw/V/BodyView/DigitalBody/WithdrawDigitalTypeButton.swift | 幣種按鈕 |
.../Withdraw/V/BodyView/SubView/AppointmentView.swift | 預約提款 |
.../Withdraw/V/BodyView/SubView/BankMaintenanceView.swift | 銀行維護 |
.../Withdraw/V/BodyView/SubView/InputAmountView.swift | 金額輸入 |
.../Withdraw/V/BodyView/SubView/WithdrawTipView.swift | 提款提示 |
.../Withdraw/V/BodyView/SubView/WithdrawTitleView.swift | 提款標題 |
.../Withdraw/V/BottomView/WithdrawBottomButtonsView.swift | 底部按鈕 |
.../Withdraw/V/BottomView/WithdrawBottomView.swift | 底部區域 |
.../Withdraw/V/BottomView/WithdrawC2CAmountView.swift | C2C 金額 |
.../Withdraw/V/BottomView/WithdrawMoneysView.swift | 提款金額列表 |
.../Withdraw/V/BottomView/WithdrawProgressView.swift | 提款進度 |
基礎路徑:
BBSport/Tab/我的/Mine/
View — 提款詳情(9 個)
| 檔案 | 說明 |
|---|---|
.../Withdraw/V/BottomView/WithdrawTypeChannelView.swift | 通道限額 |
.../Withdraw/V/Detail/WithdrawDetailC2CSplitOrderCell/WithdrawDetailC2CSplitOrderCell.swift | C2C 拆單 Cell |
.../Withdraw/V/Detail/WithdrawDetailC2CSplitOrderCell/WithdrawDetailC2CSplitOrderCellStatusView.swift | C2C 拆單狀態 |
.../Withdraw/V/Detail/WithdrawDetailOrderSplitCell.swift | 拆單詳情 Cell |
.../Withdraw/V/Detail/WithdrawDetailTBHeaderView.swift | 詳情 Header |
.../Withdraw/V/Detail/WithdrawDetialLeftRightLabelView.swift | 左右 Label |
.../Withdraw/V/Detail/WithdrawMoneyDetailView.swift | 金額詳情 |
.../Withdraw/V/Detail/WithdrawStatusEnums.swift | 狀態枚舉 |
.../Withdraw/V/WithdrawDigitalGuideView.swift | 虛擬幣引導 |
基礎路徑:
BBSport/Tab/我的/Mine/
Model(10 個)
| 檔案 | 說明 |
|---|---|
.../Withdraw/M/WithdrawInfoModel.swift | 提款資訊 |
.../Withdraw/M/WithdrawType.swift | 提款類型 |
.../Withdraw/M/WithdrawDigitalType.swift | 虛擬幣類型 |
.../Withdraw/M/WithdrawLastStatusModel.swift | 最新狀態 |
.../Withdraw/M/WithdrawModel.swift | 提款主模型 |
.../Withdraw/M/WithdrawStatusInput.swift | 狀態輸入 |
.../Withdraw/M/AppointmentInfoModel.swift | 預約提款 |
.../Withdraw/M/WithdrawC2CAmountType.swift | C2C 金額類型 |
.../Withdraw/M/WithdrawDigitalAddressModel.swift | 虛擬幣地址 |
.../Withdraw/V/NameView/WithdrawNameView.swift | 提款姓名 |
基礎路徑:
BBSport/Tab/我的/Mine/
API — 個人資料(16 個)
| 檔案 | 說明 |
|---|---|
STAPI+BindEmailRequest.swift | 綁定郵箱 |
STAPI+BindMobileRequest.swift | 綁定手機 |
STAPI+ChangePasswordRequest.swift | 修改密碼 |
STAPI+NickNameDetailRequest.swift | 暱稱詳情 |
STAPI+UpdateUserInfoRequest.swift | 更新用戶資訊 |
STAPI+UserCenterAvatarRequest.swift | 用戶頭像 |
STAPI+UserSecurityInfoRequest.swift | 安全資訊查詢 |
STAPI+UpdateSecurityInfoRequest.swift | 更新安全資訊 |
STAPI+UserValidCodeRequest.swift | 驗證碼 |
STAPI+ResetUserValidCodeRequest.swift | 重置驗證碼 |
STAPI+InviteCodeRequest.swift | 邀請碼 |
STAPI+ProfileInfoRequest.swift | 個人主頁資訊 |
STAPI+ProfileBetRequest.swift | 個人投注紀錄 |
STAPI+ProfileFollowExpertRequest.swift | 關注專家 |
STAPI+ProfileFollowOthersRequest.swift | 關注他人 |
STAPI+ProfileLikeBetRequest.swift | 按讚投注 |
基礎路徑:
BBSport/API/STAPI/
API — 地址管理(17 個)
| 檔案 | 說明 |
|---|---|
.../Address/USDT/STAPI+AddWithdrawalUSDTAddressRequest.swift | 新增 USDT 地址 |
.../Address/USDT/STAPI+DeleteWithdrawalUSDTAddressRequest.swift | 刪除 USDT 地址 |
.../Address/USDT/STAPI+WithdrawalUSDTProtocolAddressRequest.swift | USDT 協議地址 |
.../Address/EB/STAPI+AddWithdrawalEBAddressRequest.swift | 新增 EB 地址 |
.../Address/EB/STAPI+DeleteWithdrawalEBAddressRequest.swift | 刪除 EB 地址 |
.../Address/TB/STAPI+AddWithdrawalTBAddressRequest.swift | 新增 TB 地址 |
.../Address/TB/STAPI+DeleteWithdrawalTBAddressRequest.swift | 刪除 TB 地址 |
.../Address/TB/STAPI+WithdrawalTBProtocolAddressRequest.swift | TB 協議地址 |
.../Address/TBU/STAPI+AddWithdrawalTBUAddressRequest.swift | 新增 TBU 地址 |
.../Address/TBU/STAPI+DeleteWithdrawalTBUAddressRequest.swift | 刪除 TBU 地址 |
.../Address/TBU/WithdrawalTBUProtocolAddressRequest.swift | TBU 協議地址 |
.../Address/Receive/STAPI+UserReceiveAddressRequest.swift | 收貨地址列表 |
.../Address/Receive/STAPI+AddReceiveAddressRequest.swift | 新增收貨地址 |
.../Address/Receive/STAPI+DeleteReceiveAddressRequest.swift | 刪除收貨地址 |
.../Address/Receive/STAPI+ProvinceRequest.swift | 省份列表 |
.../Address/Receive/STAPI+UpdateDefaultReceiveAddressRequest.swift | 設定預設收貨地址 |
.../Address/Receive/STAPI+UpdateReceiveAddressRequest.swift | 更新收貨地址 |
基礎路徑:
BBSport/API/STAPI/User/
API — 驗證碼(12 個)
| 檔案 | 說明 |
|---|---|
.../VerifyCode/BankCard/STAPI+ApplyBankCardVerifyCodeRequest.swift | 銀行卡綁定驗證碼-申請 |
.../VerifyCode/BankCard/STAPI+BindBankCardVerifyCodeRequest.swift | 銀行卡綁定驗證碼 |
.../VerifyCode/BankCard/STAPI+DeleteBankCardVerifyCodeRequest.swift | 銀行卡刪除驗證碼 |
.../VerifyCode/EB/STAPI+AddWithdrawalEBAddressVerifyCodeRequest.swift | EB 新增地址驗證碼 |
.../VerifyCode/EB/STAPI+DeleteWithdrawalEBAddressVerifyCodeRequest.swift | EB 刪除地址驗證碼 |
.../VerifyCode/STAPI+BindEmailVerifyCodeRequest.swift | 綁定郵箱驗證碼 |
.../VerifyCode/STAPI+BindMobileVerifyCodeRequest.swift | 綁定手機驗證碼 |
.../VerifyCode/STAPI+WithdrawalSecurityVerifyCodeRequest.swift | 提款安全驗證碼 |
.../VerifyCode/STAPI+WithdrawalVerifyCodeRequest.swift | 提款驗證碼 |
.../VerifyCode/TB/STAPI+AddWithdrawalTBAddressVerifyCodeRequest.swift | TB 新增地址驗證碼 |
.../VerifyCode/TBU/STAPI+AddWithdrawalTBUAddressVerifyCodeRequest.swift | TBU 新增地址驗證碼 |
.../VerifyCode/USDT/STAPI+AddWithdrawalUSDTAddressVerifyCodeRequest.swift | USDT 新增地址驗證碼 |
基礎路徑:
BBSport/API/STAPI/User/
API — 其他(10 個)
| 檔案 | 說明 |
|---|---|
.../User/Profile/STAPI+ProfileViewingPermissionRequest.swift | 查看權限 |
.../User/Profile/STAPI+StopNotifyingRequest.swift | 停止通知 |
.../User/Profile/FansPage/STAPI+FansPageFollowRequest.swift | 粉絲頁關注 |
.../User/Profile/FansPage/STAPI+FansPageSubscriptionRequest.swift | 粉絲頁訂閱 |
.../User/Title/STAPI+AllMemberTitleRequest.swift | 全部稱號 |
.../User/Title/STAPI+SetUserTitleInfoRequest.swift | 設定稱號 |
.../User/Title/STAPI+UserTitleListInfoRequest.swift | 稱號列表 |
.../User/Title/STAPI+UserTitleObtainInfoRequest.swift | 稱號取得資訊 |
.../User/Title/STAPI+UserTitleWallInfoRequest.swift | 稱號牆資訊 |
.../User/STAPI+VIPProgressRequest.swift | VIP 進度 |
基礎路徑:
BBSport/API/STAPI/
Helper — OCR / 其他(13 個)
| 檔案 | 說明 |
|---|---|
.../Helpers/AipOcrSdk/Category/AipDisplayLink.m | OCR - DisplayLink |
.../Helpers/AipOcrSdk/Category/IOSpeScaleLayoutButton.m | OCR - ScaleButton |
.../Helpers/AipOcrSdk/Category/IOSpeScaleLayoutConstraint.m | OCR - ScaleConstraint |
.../Helpers/AipOcrSdk/Category/IOSpeScaleLayoutLabel.m | OCR - ScaleLabel |
.../Helpers/AipOcrSdk/Category/UIImage+AipCameraAddition.m | OCR - UIImage |
.../Helpers/AipOcrSdk/View/AipCameraPreviewView.m | OCR - PreviewView |
.../Helpers/AipOcrSdk/View/AipCutImageView.m | OCR - CutImageView |
.../Helpers/AipOcrSdk/View/AipImageView.m | OCR - ImageView |
.../Helpers/AipOcrSdk/ViewController/AipCameraController.m | OCR - CameraController |
.../Helpers/AipOcrSdk/ViewController/AipCaptureCardVC.m | OCR - CaptureCardVC |
.../Helpers/AipOcrSdk/ViewController/AipGeneralVC.m | OCR - GeneralVC |
.../Helpers/AipOcrSdk/ViewController/AipLoaderBaseVC.m | OCR - LoaderBaseVC |
.../Helpers/AipOcrSdk/ViewController/AipNavigationController.m | OCR - NavigationController |
基礎路徑:
BBSport/Tab/我的/Mine/
API
查詢類
取得安全資訊
POST api/forehead/user/security/load/info — JSON — STAPI.UserSecurityInfoRequest
無參數,靠 Header token/uid 認證。
Response:
| 欄位 | 型別 | 說明 |
|---|---|---|
| mobile | String | 手機號(自動補 +) |
| withdrawVal | Int | 提款驗證是否已完成(>0 為已完成) |
| cardCount | Int | 已綁銀行卡數量 |
| String | 郵箱 | |
| reallyName | String | 真實姓名 |
| usdtCount | Int | USDT 地址數量 |
| ebCount | Int | EB 地址數量 |
取得已綁定銀行卡列表
POST api/forehead/fund/userbankcard/list — urlForm — STAPI.UserBankCardRequest
無參數,靠 Header token/uid 認證。
Response:
| 欄位 | 型別 | 說明 |
|---|---|---|
| name | String | 持卡人姓名 |
| cardList | [BankCard] | 已綁定的銀行卡列表 |
BankCard 欄位:bankId(Int), bankName(String), bankLogo(String), cardId(Int), cardNo(String), status(Int, 2=人工審核中), canDelete(Bool)
取得支援銀行列表
POST api/forehead/fund/userbankcard/supportBankList — urlForm — STAPI.SupportBankRequest
無參數,靠 Header token/uid 認證。
Response: data: [Bank],每筆含 bankId(Int), bankName(String), bankLogo(String)。
USDT 地址查詢
POST api/forehead/fund/user/usdt/list — urlForm — STAPI
無參數,靠 Header token/uid 認證。
Response: data: [AddressInfo]
| 欄位 | 型別 | 說明 |
|---|---|---|
| id | Int | 地址 ID |
| nickName | String | 地址暱稱 |
| address | String | 錢包地址 |
| protocol | String | 協議名稱(如 TRC20) |
| status | Int | 狀態 |
| userId | Int | 用戶 ID |
| userName | String | 用戶名 |
| createDate | Double | 建立時間 |
USDT 協議地址查詢
POST api/forehead/fund/user/usdt/protocol/list — urlForm — STAPI
無參數,靠 Header token/uid 認證。
Response: data: [GeneralCryptoProtocol]
| 欄位 | 型別 | 說明 |
|---|---|---|
| protocol | String | 協議名稱(如 TRC20, ERC20) |
| message | String | 協議說明訊息 |
EB / TB / TBU 地址查詢
- EB:
POST api/forehead/fund/user/eb/list - TB:
POST api/forehead/fund/user/tb/list - TBU:
POST api/forehead/fund/user/tbu/list
無參數,靠 Header token/uid 認證。Response: 同 USDT 地址查詢。
取得省份列表
POST api/forehead/system/area/load — urlForm — STAPI.ProvinceRequest
無參數,靠 Header token/uid 認證。
Response: data: [Province],含省份 ID 和名稱。
取得收款地址
POST api/forehead/user/setting/address/list — urlForm — STAPI.UserReceiveAddressRequest
無參數,靠 Header token/uid 認證。
Response: data: [Address]
| 欄位 | 型別 | 說明 |
|---|---|---|
| id | Int | 收貨地址 ID |
| name | String | 收件人姓名 |
| mobile | String | 手機號 |
| mobileArea | String | 手機區碼 |
| province | String | 省份名稱 |
| provinceId | Int | 省份 ID |
| city | String | 城市名稱 |
| cityId | Int | 城市 ID |
| area | String | 區域名稱 |
| areaId | Int | 區域 ID |
| street | String | 街道/詳細地址 |
| status | Int | 是否為預設地址(>0 為預設) |
計算屬性:pcaAddress(省市區帶空格)、whereAddress(完整地址不帶空格)
加密貨幣排序
POST api/forehead/fund/user/tb/digiCoin/sort — urlForm — STAPI.WithdrawalCryptoSortRequest
無參數,靠 Header token/uid 認證。
Response: data: [CryptoSort],每筆含 coin(String), sort(Int)。
查詢提款匯率
POST api/forehead/fund/withdraw/rate — urlForm — STAPI.WithdrawRateRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| coin | string | ✅ | 幣種代碼(如 "USDT", "EB", "TB", "TBU") |
Response: data 為 Double,即時匯率。
取得最新提款狀態
POST api/forehead/fund/withdraw/last/status — urlForm — STAPI.WithdrawLastStatusRequest
無參數,靠 Header token/uid 認證。
Response:
| 欄位 | 型別 | 說明 |
|---|---|---|
| bankCards | [WithdrawBankModel] | 用戶銀行卡列表 |
| telephone | String | 綁定的手機號 |
| withdraws | [WithdrawModel] | 提款記錄列表 |
| receivedMoney | Bool | 確認收款是否已按過 |
| isC2CSplitWithdrawOpen | Bool | C2C 拆單功能 |
| totalFee | Double | C2C 拆單手續費總合 |
| currentStep | Int | 進度(1=申請, 2=等待付款, 3=待確認到帳, 4=完成) |
| activityMessage | String | 超時補償文案 |
取得預約提款資訊
POST api/forehead/fund/withdraw/reserve/config/get — urlForm — STAPI.ReserveInfoRequest
無參數,靠 Header token/uid 認證。
Response:
| 欄位 | 型別 | 說明 |
|---|---|---|
| c2cReserveWithdrawOpen | Int | 專屬提款預約(1=開啟) |
| c2cReserveWithdrawDuration | [AppointmentModel] | 專屬預約時段 |
| normalReserveWithdrawOpen | Int | 普通提款預約 |
| normalReserveWithdrawDuration | [AppointmentModel] | 普通預約時段 |
| usdtReserveWithdrawOpen | Int | USDT 提款預約 |
| usdtReserveWithdrawDuration | [AppointmentModel] | USDT 預約時段 |
AppointmentModel:durationId(Int), startDuration(Double), endDuration(Double), appoinmentRate(String), isReserve(Bool)
寫入類 — 銀行卡
新增銀行卡
POST api/forehead/fund/userbankcard/v2/bindcard — urlForm — STAPI.AddBankCardRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| name | string | ✅ | 真實姓名 |
| bankId | string | ✅ | 銀行 ID |
| cardNo | string | ✅ | 銀行卡號 |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
人工新增銀行卡
POST api/forehead/fund/userbankcard/v2/apply/bindcard — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| name | string | ✅ | 真實姓名 |
| bankId | string | ✅ | 銀行 ID |
| cardNo | string | ✅ | 銀行卡號 |
| code | string | ✅ | 驗證碼 |
| imagePath | string | ✅ | 銀行卡照片路徑 |
Response: 無 data,僅含 code 和 message。
刪除銀行卡
POST api/forehead/fund/userbankcard/delete — urlForm — STAPI.DeleteBankCardRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| cardId | int | ✅ | 銀行卡 ID |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
綁銀行卡驗證碼
POST api/forehead/user/setting/binding/bankcard/get/code/v2 — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| type | string | ✅ | 固定值 "card_bind" |
| lotNumber / captchaOutput / passToken / genTime | string | ✅ | 極驗四件組 |
Response: 無 data,僅含 code 和 message。
人工綁卡驗證碼
POST api/forehead/user/setting/apply/binding/bankcard/get/code/v2 — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| type | string | ✅ | 固定值 "apply_card_bind" |
| lotNumber / captchaOutput / passToken / genTime | string | ✅ | 極驗四件組 |
Response: 無 data,僅含 code 和 message。
刪除銀行卡驗證碼
POST api/forehead/user/setting/delete/bankcard/get/code/v2 — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| type | string | ✅ | 固定值 "card_del" |
| lotNumber / captchaOutput / passToken / genTime | string | ✅ | 極驗四件組 |
Response: 無 data,僅含 code 和 message。
寫入類 — 加密貨幣地址
新增 USDT 地址
POST api/forehead/fund/user/usdt/add — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| nickName | string | ✅ | 地址暱稱 |
| protocol | string | ✅ | 協議名稱(如 "TRC20", "ERC20") |
| address | string | ✅ | 錢包地址 |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
新增 EB 地址
POST api/forehead/fund/user/eb/submit — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| nickName | string | ✅ | 地址暱稱 |
| address | string | ✅ | 錢包地址 |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
新增 TB / TBU 地址
- TB:
POST api/forehead/fund/user/tb/add - TBU:
POST api/forehead/fund/user/tbu/add
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| nickName | string | ✅ | 地址暱稱 |
| protocol | string | ✅ | 協議名稱 |
| address | string | ✅ | 錢包地址 |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
刪除 USDT 地址
POST api/forehead/fund/user/usdt/del — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| id | int | ✅ | 地址 ID |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
刪除 EB 地址
POST api/forehead/fund/user/eb/delete — urlForm — STAPI
Request: 同刪除 USDT 地址。
Response: 無 data,僅含 code 和 message。
新增地址驗證碼
- USDT:
POST api/forehead/user/setting/binding/usdt/address/get/code/v2(type="add_usdt_address") - EB/TB:
POST api/forehead/user/setting/binding/general/get/code(type 依幣種,EB bindType=4)
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| type | string | ✅ | 依幣種對應的 type 值 |
| lotNumber / captchaOutput / passToken / genTime | string | ✅ | 極驗四件組 |
Response: 無 data,僅含 code 和 message。
寫入類 — 密碼
修改密碼
POST api/forehead/user/setting/submit/reset/password — urlForm — STAPI.ChangePasswordRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| oldPwd | string | ✅ | 原密碼 |
| newPwd | string | ✅ | 新密碼 |
Response: 無 data,僅含 code 和 message。
寫入類 — 綁定手機/郵箱
綁定手機號
POST api/forehead/user/setting/submit/binding/mobile — urlForm — STAPI.BindMobileRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| mobile | string | ✅ | 手機號碼 |
| telArea | string | ✅ | 國際區碼 |
| type | string | ✅ | 固定值 "mobile_bind" |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
綁定郵箱
POST api/forehead/user/setting/submit/binding/email — urlForm — STAPI.BindEmailRequest
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| string | ✅ | 郵箱地址 | |
| type | string | ✅ | 固定值 "email_bind" |
| code | string | ✅ | 驗證碼 |
Response: 無 data,僅含 code 和 message。
綁定手機驗證碼
POST api/forehead/user/setting/binding/mobile/get/code/v2 — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| mobile | string | ✅ | 手機號碼 |
| telArea | string | ✅ | 國際區碼 |
| lotNumber / captchaOutput / passToken / genTime | string | ✅ | 極驗四件組 |
Response: 無 data,僅含 code 和 message。
綁定郵箱驗證碼
POST api/forehead/user/setting/binding/email/get/code — urlForm — STAPI
| 參數 | 型別 | 必填 | 說明 |
|---|---|---|---|
| string | ✅ | 郵箱地址 | |
| type | string | ✅ | 固定值 "email_bind" |
Response: 無 data,僅含 code 和 message。
寫入類 — 提款
以下 API 與提款模組共用,完整規格詳見 提款-dev:
- 提交提款 —
POST /withdraw/submit,詳見 提款-dev > 提交提款申請 - 確認到帳 —
POST /withdraw/submit/confirm/receive,詳見 提款-dev > 提款訂單確認到帳 - 提款驗證碼 —
POST /user/setting/withdraw/validate/get/code,詳見 提款-dev > 提款驗證碼 - 提款安全驗證碼 —
POST /user/setting/withdraw/validate/switch/get/code,詳見 提款-dev > 提款安全驗證碼
資料模型速查
WithdrawType(提款方式)
| Case | orgSubmitType | 說明 |
|---|---|---|
.bank | 1 | 銀行卡(含普通+專屬) |
.normal | 2 | 普通提款 |
.c2c | 3 | 專屬提款 |
.digital(.usdt) | 4 | USDT |
.digital(.ebPay) | 6 | EBPay |
.digital(.tbPay) | 21 | TB |
.digital(.tbu) | 22 | TBU |
BankCard.status
| 值 | 說明 |
|---|---|
| 非 2 | 正常(可使用、可刪除) |
| 2 | 人工審核中 |
GeneralConfig(提款限額)
| 欄位 | 說明 |
|---|---|
| minLimit / maxLimit | 法幣最低/最高金額 |
| usdtMinLimit / usdtMaxLimit | 數字幣整體限額 |
| usdtLimits | 各協議限額(minAmount, maxAmount, protocolName) |
| feeType | .fix / .percent |
| fee / feeLimit | 手續費 / 上限 |
| leftFreeCount / freeTimes | 剩餘免費次數 / 總次數 |
| leftWithdrawCount | 當天剩餘提款次數 |
BBWalletService 職責
BBWalletService(位於 BBSport/Tab/我的/Mine/Helpers/BBWalletService.swift)是充值與提款的入口管理器,負責:
- 進入提款流程 (
openWithdrawVC):刷新銀行卡列表 → 查詢最新提款狀態 → 判斷是否需綁定手機/流水不足 → 進入提款頁或提款詳情頁 - 進入充值流程 (
openRecharge):查詢充值狀態 → 判斷是否有進行中訂單 → 載入快捷金額和代理碼 → 進入充值頁 - 發起充值請求 (
requestRecharge):區分內部支付(/do/transfer)和第三方支付(/do/submitURL 拼接跳轉) - 錢包轉帳 (
toCenterWallet):提款前將各場館子錢包餘額轉入中心錢包 - 運營位圖片快取:持有
rechargeOperateList
實作重點
- OCR 銀行卡辨識:使用 AipOCR SDK 拍照自動識別卡號
- 雙通道綁卡:自動驗卡失敗 → 人工審核通道(需上傳照片,status=2)
- 極驗驗證流程:所有發送驗證碼 API 都需極驗四件組
- 提款先轉帳:提款前先將餘額從各錢包轉入中心錢包
- C2C 專屬提款:後端控制限額和次數,支援拆單
- 收款地址:配合省份選擇,用於實物獎品配送
關鍵數字
- 每種虛擬幣最多 5 個地址
- 密碼規則:8~20 字元,至少數字+字母 2 種組合
- 匯率精度:USDT/TB/TBU = 4 位小數,EB = 2 位小數