refactor(hq): 抽离卡片行情订阅客户端
This commit is contained in:
@@ -21,29 +21,32 @@ export interface CardData {
|
||||
tableList: RankItem[];
|
||||
}
|
||||
|
||||
// 4106 行情推送的原始分列数据。Vue 中实际为“字段 ID -> 数组”的字典,
|
||||
// ArkTS 使用显式属性描述同一结构,数组中相同下标代表同一份合约行情。
|
||||
// 字段 ID:code=4、market=36103、name=55、price=10、price_chg=34818、
|
||||
// pre_price=6、open_price=7、pre_settle_price=66、turnover=19、incre_posit=34355、
|
||||
// chg_speed_1min=34874、chg_speed_5min=34325、chg_speed_10min=34875、chg_speed_15min=34876。
|
||||
export interface MarketRankingQuoteData {
|
||||
code: string[];
|
||||
market: string[];
|
||||
name: string[];
|
||||
price: number[];
|
||||
price_chg: number[];
|
||||
pre_price: number[];
|
||||
open_price: number[];
|
||||
pre_settle_price: number[];
|
||||
turnover: number[];
|
||||
incre_posit: number[];
|
||||
chg_speed_1min: number[];
|
||||
chg_speed_5min: number[];
|
||||
chg_speed_10min: number[];
|
||||
chg_speed_15min: number[];
|
||||
export type MarketRankingHqValue = string | number;
|
||||
|
||||
// 对齐真实鸿蒙行情返回行:通过行情字段 ID 获取当前合约的值。
|
||||
export class MarketRankingTableRow {
|
||||
private values: Map<number, MarketRankingHqValue> =
|
||||
new Map<number, MarketRankingHqValue>();
|
||||
|
||||
set(fieldId: number, value: MarketRankingHqValue): void {
|
||||
this.values.set(fieldId, value);
|
||||
}
|
||||
|
||||
get(fieldId: number): MarketRankingHqValue | undefined {
|
||||
return this.values.get(fieldId);
|
||||
}
|
||||
}
|
||||
|
||||
export interface MarketRankingQuoteRequestParams {
|
||||
// 对齐真实鸿蒙行情 TableData:每个 tableRows 元素代表一份合约行情。
|
||||
export class MarketRankingTableData {
|
||||
tableRows: MarketRankingTableRow[] = [];
|
||||
|
||||
addRow(row: MarketRankingTableRow): void {
|
||||
this.tableRows.push(row);
|
||||
}
|
||||
}
|
||||
|
||||
export interface MarketRankingHqRequestParams {
|
||||
protocolId: string;
|
||||
pageId: string;
|
||||
onlineId: string;
|
||||
@@ -54,21 +57,16 @@ export interface MarketRankingQuoteRequestParams {
|
||||
export interface TabMetric {
|
||||
id: string;
|
||||
label: ResourceStr;
|
||||
stat: string; // 埋点用
|
||||
api: string; // HTTP 接口 quote_type 参数用
|
||||
hqId: string; // 行情订阅 sortid 用
|
||||
hqName: string; // 推送字段映射用
|
||||
index: number;
|
||||
api: string; // HTTP 接口 quote_type 参数用
|
||||
hqId: number; // 行情订阅 sortid 用
|
||||
hasChildren: boolean; // Vue 用 children 数组本身判断,这里简化为布尔标记
|
||||
}
|
||||
|
||||
export interface PeriodRange {
|
||||
id: string;
|
||||
label: ResourceStr;
|
||||
stat: string;
|
||||
api: string;
|
||||
hqId: string;
|
||||
index: number;
|
||||
hqId: number;
|
||||
}
|
||||
|
||||
// ============ 后端接口原始响应类型(recommend_futures) ============
|
||||
|
||||
Reference in New Issue
Block a user