Browse Source

Merge branch 'dev-zw' of https://gitlink.org.cn/ci4s/ci4sManagement-cloud into dev-zw

pull/217/head
zhaowei 9 months ago
parent
commit
64e81a9a3a
2 changed files with 16 additions and 15 deletions
  1. +10
    -11
      react-ui/src/hooks/useServerTime.ts
  2. +6
    -4
      react-ui/src/pages/Experiment/Info/index.jsx

+ 10
- 11
react-ui/src/hooks/useServerTime.ts View File

@@ -11,44 +11,43 @@ import { useCallback, useEffect, useState } from 'react';
let globalTimeOffset: number | undefined = undefined;

export const globalGetSeverTime = async () => {
const requestStartTime = Date.now()
const requestStartTime = Date.now();
const [res] = await to(getSeverTimeReq());
const requestEndTime = Date.now()
const requestEndTime = Date.now();
const requestDuration = (requestEndTime - requestStartTime) / 2;
if (res && res.data) {
const serverDate = new Date(res.data);
const timeOffset = serverDate.getTime() + requestDuration - requestEndTime;
globalTimeOffset = timeOffset;
return timeOffset
return timeOffset;
}
};

export const now = () => {
return new Date(Date.now() + (globalTimeOffset ?? 0))
}
return new Date(Date.now() + (globalTimeOffset ?? 0));
};

/** 获取服务器时间 */
export function useServerTime() {
const [timeOffset, setTimeOffset] = useState<number>(globalTimeOffset ?? 0);

useEffect(() => {
// 获取服务器时间
const getSeverTime = async () => {
const [res] = await to(globalGetSeverTime());
if (res) {
setTimeOffset(res)
setTimeOffset(res);
}
};

// 获取服务器时间,防止第一次加载时,请求失败
if (!globalTimeOffset) {
getSeverTime();
}
}, []);

const now = useCallback(() => {
return new Date(Date.now() + timeOffset)
}, [timeOffset])

return new Date(Date.now() + timeOffset);
}, [timeOffset]);

return [now, timeOffset] as const;
return [now] as const;
}

+ 6
- 4
react-ui/src/pages/Experiment/Info/index.jsx View File

@@ -1,3 +1,4 @@
import RunDuration from '@/components/RunDuration';
import { ExperimentStatus } from '@/enums';
import { useStateRef } from '@/hooks/useStateRef';
import { useVisible } from '@/hooks/useVisible';
@@ -5,7 +6,7 @@ import { getExperimentIns } from '@/services/experiment/index.js';
import { getWorkflowById } from '@/services/pipeline/index.js';
import themes from '@/styles/theme.less';
import { fittingString, parseJsonText } from '@/utils';
import { elapsedTime, formatDate } from '@/utils/date';
import { formatDate } from '@/utils/date';
import { to } from '@/utils/promise';
import G6, { Util } from '@antv/g6';
import { Button } from 'antd';
@@ -15,8 +16,6 @@ import ExperimentDrawer from '../components/ExperimentDrawer';
import ParamsModal from '../components/ViewParamsModal';
import { experimentStatusInfo } from '../status';
import styles from './index.less';
import { useServerTime } from '@/hooks/useServerTime';
import RunDuration from '@/components/RunDuration';

let graph = null;

@@ -476,7 +475,10 @@ function ExperimentText() {
</div>
<div className={styles['pipeline-container__top__info']}>
执行时长:
<RunDuration createTime={experimentIns?.create_time} finishTime={experimentIns?.finish_time} />
<RunDuration
createTime={experimentIns?.create_time}
finishTime={experimentIns?.finish_time}
/>
</div>
<div className={styles['pipeline-container__top__info']}>
状态:


Loading…
Cancel
Save