safety-eval-service/safety-eval-start/src/main/resources/templates/safetyEval-h5.html

129 lines
6.4 KiB
HTML
Raw Normal View History

2026-07-09 17:21:51 +08:00
<!doctype html><html lang="zh"><head data-built-info="@cqsjjb/scripts@2.0.0-rspack.2 Frontend_Env[production] Build_Date[2026/7/9 17:13:57] App_Identifier[safetyEval-h5]"><meta charset="UTF-8"/><meta name="renderer" content="webkit"/><meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1"/><meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover"><meta charset="UTF-8" name="referrer" content="strict-origin-when-cross-origin"/><title>大屏</title><script>(function () {
2026-07-08 20:44:27 +08:00
const APP_ENV = {
antd: {
'ant-prefix': 'micro-temp',
fontFamily: 'PingFangSC-Regular',
colorPrimary: '#1677ff',
borderRadius: parseInt('2')
},
appKey: '',
basename: 'safetyEval-h5',
API_HOST: 'https://gbs-gateway.qhdsafety.com'
};
2026-07-09 11:04:21 +08:00
APP_ENV.API_HOST = 'https://gbs-gateway.qhdsafety.com';
const injectedApiHost = APP_ENV.API_HOST;
const isDev = 'production' === 'development';
if (isDev && injectedApiHost && injectedApiHost.indexOf('http') === 0) {
APP_ENV.API_HOST = injectedApiHost;
} else {
APP_ENV.API_HOST = sessionStorage.API_HOST || injectedApiHost || window.location.origin;
}
2026-07-08 20:44:27 +08:00
window.process = {
env: { app: APP_ENV },
NODE_ENV: 'production'
};
window.__JJB_ENVIRONMENT__ = {
API_HOST: APP_ENV.API_HOST,
redirect: '',
FRAMEWORK: APP_ENV.antd
};
2026-07-08 21:57:20 +08:00
/** 返回 GBS 基座(与 Map 页左上角返回一致) */
window.backToBase = function () {
window.close();
setTimeout(function () {
if (!window.closed && !window.opener) {
var apiHost = (window.__JJB_ENVIRONMENT__ && window.__JJB_ENVIRONMENT__.API_HOST)
|| (window.process && window.process.env && window.process.env.app && window.process.env.app.API_HOST)
|| 'https://gbs-gateway.qhdsafety.com/';
window.location.href = apiHost.slice(-1) === '/' ? apiHost : apiHost + '/';
}
}, 500);
};
2026-07-09 11:04:21 +08:00
/** 全局 HTTP 拦截器 */
2026-07-08 21:57:20 +08:00
window.jjbCommonGlobalConfig = {
httpInterceptor: {
2026-07-09 11:04:21 +08:00
request: function (url, method, params, headers) {
if (sessionStorage.getItem('orgInfoId')) {
headers.orgInfoId = sessionStorage.getItem('orgInfoId');
}
return Promise.resolve([url, method, params, headers]);
},
2026-07-08 21:57:20 +08:00
response: function (res) {
2026-07-09 11:04:21 +08:00
var url = (res && res.config && res.config.url)
|| (res.response && res.response.config && res.response.config.url)
|| '';
// 注册/填报开放接口、终端类型检测、文件上传失败时不自动返回基座
if (
url.indexOf('checkTerminalType') !== -1
|| url.indexOf('/safetyEval/images/') !== -1
|| url.indexOf('/safetyEval/file/upload') !== -1
) {
return Promise.resolve(res);
}
2026-07-08 21:57:20 +08:00
var data = res && (res.data || (res.response && res.response.data));
if (data && data.success === false) {
window.backToBase();
}
return Promise.resolve(res);
}
}
};
2026-07-09 11:04:21 +08:00
/** Driver 鉴权参数提前解析,避免首屏请求时 sessionStorage 尚未写入 */
(function bootstrapDriverAuthParams() {
var AUTH_KEYS = ['token', 'accessTicket', 'clientId', 'orgId', 'code'];
function parseQuery(search) {
var params = {};
if (!search) return params;
try {
var normalized = search.charAt(0) === '?' ? search : '?' + search;
var urlParams = new URLSearchParams(normalized);
urlParams.forEach(function (value, key) {
if (value) params[key] = value;
});
} catch (e) { /* ignore */ }
return params;
}
function parseUrl(url) {
if (!url) return {};
try {
return parseQuery(new URL(url, window.location.origin).search);
} catch (e) {
var idx = url.indexOf('?');
return idx === -1 ? {} : parseQuery(url.slice(idx));
}
}
function parseHash() {
var hash = window.location.hash || '';
var idx = hash.indexOf('?');
return idx === -1 ? {} : parseQuery(hash.slice(idx));
}
function mergeParams() {
var sources = [
parseQuery(window.location.search),
parseHash(),
parseUrl(window.location.href),
parseUrl(document.referrer)
];
var result = {};
sources.forEach(function (source) {
AUTH_KEYS.forEach(function (key) {
if (!result[key] && source[key]) result[key] = source[key];
});
});
AUTH_KEYS.forEach(function (key) {
if (!result[key]) {
var stored = sessionStorage.getItem(key);
if (stored) result[key] = stored;
}
});
AUTH_KEYS.forEach(function (key) {
if (result[key]) sessionStorage.setItem(key, result[key]);
});
return result;
}
mergeParams();
})();
2026-07-09 17:21:51 +08:00
})();</script><script defer="defer" src="/safetyEval-h5/static/js/548.ac3036a0ff72bbda.js"></script><script defer="defer" src="/safetyEval-h5/static/js/551.40cd16b83ccef834.js"></script><script defer="defer" src="/safetyEval-h5/static/js/485.cc16547839dceff2.js"></script><script defer="defer" src="/safetyEval-h5/static/js/main.9be5f856ca83a1a3.js"></script><link href="/safetyEval-h5/static/css/main.d529a13088ceae37.css" rel="stylesheet"></head><body><noscript>此网页需要开启JavaScript功能。</noscript><div id="root" style="width: 100%; height: 100%; position: relative;overflow-y: auto;"></div><script type="text/javascript">/* @cqsjjb/script 输出当前应用基本信息 */console.log("%c@cqsjjb/scripts@2.0.0-rspack.2 Frontend_Env[production] Build_Date[2026/7/9 17:13:57] App_Identifier[safetyEval-h5] Frontend_Branch[dev] Backend_Branch[<branch-name>]", "color: #1890ff; border-radius: 2px; padding: 0 4px; border: 1px solid #1890ff; background: #f9fcff")</script></body><script src="https://cesium.com/downloads/cesiumjs/releases/1.91/Build/Cesium/Cesium.js"></script><link href="https://cesium.com/downloads/cesiumjs/releases/1.91/Build/Cesium/Widgets/widgets.css" rel="stylesheet"></html>