riku
2025-09-11 307b17ef15c73a071912a262834f2a5f68e1fa87
src/utils/factor/data.js
@@ -159,8 +159,10 @@
/**
 * 获取历史数据
 */
function fetchHistoryData(params) {
  if (import.meta.env.VITE_DATA_MODE == 'jingan') {
function fetchHistoryData(params, origin = true) {
  if (origin) {
    return fetchOriginHistoryData(params);
  } else if (import.meta.env.VITE_DATA_MODE == 'jingan') {
    const _params = {
      compUser: 'user1',
      compPassword: 'User1@jingan',
@@ -180,27 +182,31 @@
var fetchingTask;
var isFetching;
var pause = false;
/**
 * 开启实时数据循环获取
 * @param {Object} params
 */
function startLoopFetchRealTimeData(onParam, callback) {
function startLoopFetchRealTimeData(onParam, callback, _interval) {
  // 时间间隔
  let interval;
  // 数据获取方法
  let fetchFun;
  if (import.meta.env.VITE_DATA_MODE == 'jingan') {
    //  该数据传输最低间隔为1分钟,每次获取结束时间自动调整为开始时间的1分钟后
    //  该数据传输最低间隔为1分钟,每次获取结束时间自动调整为开始时间的0.5分钟后
    fetchFun = fetchThirdPartyData;
    interval = 60 * 1000;
    interval = 30 * 1000;
  } else {
    fetchFun = fetchOriginRealTimeData;
    interval = 10 * 1000;
  }
  if (_interval) {
    interval = _interval;
  }
  // 开始循环任务
  clearFetchingTask();
  fetchingTask = setInterval(() => {
    if (isFetching) {
    if (isFetching || pause) {
      return;
    }
    isFetching = true;
@@ -232,6 +238,11 @@
  }, interval);
}
function pauseTask() {
  pause = !pause;
  return pause;
}
/**
 * 清理历史实时数据获取任务
 */
@@ -243,4 +254,9 @@
  }
}
export { fetchHistoryData, startLoopFetchRealTimeData, clearFetchingTask };
export {
  fetchHistoryData,
  startLoopFetchRealTimeData,
  clearFetchingTask,
  pauseTask
};