| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- import { GetPCMenus, QueryTableDefine } from '@/services/go/commonService/index';
- import { LoginQuery } from '@/services/go/useInfo/index';
- import APP from '@/services';
- import { getAccoutIdList } from '@/services/bus/account';
- import { isLogin } from '@/services/bus/login';
- import { checkTokenLoop, handleTokenCheck } from '@/services/bus/token';
- import { getAppConfig, getCommonApiUrl } from '@/services/http/getconf';
- import { queryAllMyColloct } from '@/services/http/mine/colloct';
- import { queryHsbyMyGoods } from '@/services/http/mine/index';
- import { getServerTime, queryErrorInfos } from '@/services/http/system/index';
- import { queryAccountInfo, queryAreaRoleMarket, queryTaAccountMarket, queryTradeDate } from '@/services/socket/account/index';
- import { querySystemParam } from '@/services/socket/error/index';
- import ProtobufCtr from '@/services/socket/protobuf/index';
- import { setServiceURL } from '@/services/request/serviceURL';
- import { localStorageUtil } from '@/utils/storage';
- import { message } from 'ant-design-vue';
- import { pollingNotice } from '../http/notice';
- /**
- * 全局数据刷新
- */
- export async function globalDataRefresh(): Promise<string> {
- // 全局初始化依赖查询
- await queryDependencies();
- try {
- // 首先判断是否登录 如果没有登录不需要长链
- if (isLogin()) {
- // 获取服务时间,token校验需要用到
- await getServerTime();
- await LoginQuery();
- // 建立行情交易长链x
- await APP.connectTrading();
- // token 校验处理
- const res = await handleTokenCheck()
- .then(() => true)
- .catch(() => false);
- if (!res) {
- // Router.push({ path: '/login' }); // 回到登录页面
- return Promise.reject('刷新时token校验失败');
- } else {
- // token校验成功 马上轮询
- checkTokenLoop();
- // 登录并且建立长链成功后 进行资金账号相关业务走长连查询
- // await queryAfterLogin();
- await queryAllMyColloct();
- await GetPCMenus();
- await QueryTableDefine();
- }
- } else {
- // 重置数据中心数据
- APP.reset();
- }
- if (!localStorageUtil.getItem('errorCodeInfos')) {
- await queryErrorInfos();
- }
- // await queryGoodsList();
- return Promise.resolve('ok');
- } catch (error) {
- return Promise.reject('刷新数据加载失败');
- }
- }
- /**
- * 全局依赖的数据查询,涉及各个方面
- */
- async function queryDependencies(): Promise<number> {
- try {
- // 加载proto文件
- await ProtobufCtr.loadProto('./proto/mtp.proto');
- /** 获取接口查询配置信息 */
- const config = await getAppConfig();
- const apiUrl = await getCommonApiUrl(config.data.apiUrl);
- if (apiUrl.data.code === 200) setServiceURL(apiUrl.data.data);
- // await APP.connectQuote();
- /** 数据返回 */
- return Promise.resolve(1);
- } catch (error) {
- message.error(error.message);
- return Promise.reject(error);
- }
- }
- /**
- * 登录后的查询,涉及各个方面
- */
- export async function queryAfterLogin(): Promise<string> {
- try {
- await queryAccountInfo('').catch((err) => {
- throw '账号信息 查询失败' + err;
- });
- // 查询市场权限
- const isArea = (): boolean => APP.get('userInfo').UserType === 5;
- // 查询系统枚举参数
- await Promise.all([
- queryHsbyMyGoods(getAccoutIdList()).catch((err: string) => {
- throw '盘面: ' + err;
- }),
- isArea()
- ? queryAreaRoleMarket().catch((err: string) => {
- throw '投资者查根据经纪会员查市场权限 查询失败: ' + err;
- })
- : queryTaAccountMarket().catch((err: string) => {
- throw '非投资者查资金市场权限 查询失败: ' + err;
- }),
- querySystemParam().catch(() => {
- throw '查询系统参数 查询失败';
- }),
- // queryAccountTradeRuleAndFeeAndMargin().catch(() => {
- // throw '查询账户交易费用与规则信息的方法 查询失败';
- // }),
- // queryErrorCode().catch((err) => {
- // console.error('查询错误码 查询失败:' + err);
- // return '';
- // }),
- queryTradeDate().catch(() => {
- throw '查询交易日 查询失败';
- }),
- ]);
- // 通知公告轮询
- pollingNotice();
- return Promise.resolve('ok');
- } catch (err) {
- console.error(err);
- return Promise.reject(err);
- }
- }
|