/** * 下单服务的service */ import { BehaviorSubject } from "rxjs"; import { MarginTypeEnum, TradeUnitEnum } from "@shared/types"; import { has } from "ramda"; import { toDefaultNumber } from "@utils/FormatNumber"; export class PlaceOrderService { static _instance: PlaceOrderService; constructor() { if (PlaceOrderService._instance) { return PlaceOrderService._instance; } } static get instance(): PlaceOrderService { if (PlaceOrderService._instance) { return PlaceOrderService._instance; } PlaceOrderService._instance = new PlaceOrderService(); return PlaceOrderService._instance; } // 二次确认偏好设置 preference$ = new BehaviorSubject(false); // 下单设置 tradeUnit$ = new BehaviorSubject(TradeUnitEnum.Quantity); // 保证金模式 marginType$ = new BehaviorSubject(MarginTypeEnum.Cross); // 杠杆 leverage$ = new BehaviorSubject(1); updatePreference(val: boolean) { this.preference$.next(val); } updateTradeUnit(val: TradeUnitEnum) { // todo提交更新api配置tradeUnit this.tradeUnit$.next(val); } updateLeverage(lev: any) { const newLeverage = Math.floor(toDefaultNumber(lev)); this.leverage$.next(newLeverage); } }