fix: 替换获取服务器时间接口
This commit is contained in:
@@ -1,23 +1,15 @@
|
||||
import { RESULT_CODE_SUCCESS } from '@/constants/result-constants';
|
||||
import { request } from '@/plugins/http-fetch';
|
||||
|
||||
/**
|
||||
* 获取服务器时间
|
||||
* 服务器时间
|
||||
* @returns object
|
||||
*/
|
||||
export async function getServerTime() {
|
||||
// 发起请求
|
||||
const result = await request({
|
||||
url: `/api/rest/systemManagement/v1/elementType/OMC/objectType/time`,
|
||||
return request({
|
||||
url: `/time`,
|
||||
method: 'GET',
|
||||
whithToken: false,
|
||||
});
|
||||
// 解析数据
|
||||
if (result.code === RESULT_CODE_SUCCESS && result.data) {
|
||||
return Object.assign(result, {
|
||||
data: result.data.data,
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -194,28 +194,25 @@ onMounted(() => {
|
||||
});
|
||||
|
||||
// ==== 服务器时间显示 start
|
||||
let serverTime = reactive({
|
||||
timestamp: 0,
|
||||
zone: 'UTC', // 时区 UTC
|
||||
interval: null as any, // 定时器
|
||||
});
|
||||
let serverTimeInterval: any = null;
|
||||
let serverTime = 0;
|
||||
|
||||
// 获取服务器时间
|
||||
function fnGetServerTime() {
|
||||
getServerTime().then(res => {
|
||||
if (res.code === RESULT_CODE_SUCCESS && res.data) {
|
||||
clearInterval(serverTimeInterval);
|
||||
serverTimeInterval = null;
|
||||
serverTime = res.data.timestamp;
|
||||
// 用DOM直接修改
|
||||
const serverTimeDom = document.getElementById('serverTimeDom');
|
||||
// 时区
|
||||
const utcOffset = res.data.timeZone / 3600;
|
||||
serverTime.zone = `UTC ${utcOffset}`;
|
||||
// 时间戳
|
||||
serverTime.timestamp = parseInt(res.data.timestamp);
|
||||
serverTime.interval = setInterval(() => {
|
||||
serverTime.timestamp += 1000;
|
||||
// serverTimeStr.value = parseDateToStr(serverTime.timestamp);
|
||||
// 用DOM直接修改
|
||||
serverTimeInterval = setInterval(() => {
|
||||
serverTime += 1000;
|
||||
if (serverTimeDom) {
|
||||
serverTimeDom.innerText = parseDateToStr(serverTime.timestamp);
|
||||
serverTimeDom.innerText = parseDateToStr(serverTime);
|
||||
} else {
|
||||
clearInterval(serverTimeInterval);
|
||||
serverTimeInterval = null;
|
||||
}
|
||||
}, 1000);
|
||||
}
|
||||
@@ -226,21 +223,21 @@ function fnGetServerTime() {
|
||||
document.addEventListener('visibilitychange', function () {
|
||||
if (document.visibilityState == 'hidden') {
|
||||
//切离该页面时执行
|
||||
clearInterval(serverTime.interval);
|
||||
serverTime.interval = null;
|
||||
clearInterval(serverTimeInterval);
|
||||
serverTimeInterval = null;
|
||||
}
|
||||
if (document.visibilityState == 'visible') {
|
||||
//切换到该页面时执行
|
||||
clearInterval(serverTime.interval);
|
||||
serverTime.interval = null;
|
||||
clearInterval(serverTimeInterval);
|
||||
serverTimeInterval = null;
|
||||
fnGetServerTime();
|
||||
useAlarmStore().fnGetActiveAlarmInfo();
|
||||
}
|
||||
});
|
||||
|
||||
onUnmounted(() => {
|
||||
clearInterval(serverTime.interval);
|
||||
serverTime.interval = null;
|
||||
clearInterval(serverTimeInterval);
|
||||
serverTimeInterval = null;
|
||||
});
|
||||
// ==== 服务器时间显示 end
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user