bea288e414
== 已部署上线 (9项) == - 代办事项真实数据源集成 (企微审批API 8bug修复链) - H5/坐席端 Logo样式统一+绿色背景 - 视频引导页修复 (localStorage key v2) - 坐席端 v9 Vue版本修复 (ElMessage._context) - 截图按钮 v10 修复 (getDisplayMedia user gesture) - 扫码样式恢复+H5扫码登录跳转修复 - H5截图快捷键提示 == 代码完成待部署 (3项) == - 知识迭代3Bug修复 (#8 POST端点/#7 MERGE幂等/#6 过期检查) - 会议室预定-小鱼易联终端 (40文件, 40/40测试通过) - IT资产升级审批推送 (asset_service.py) == 需求文档 (2项) == - 坐席端AI辅助消息框-PRD (4项新功能确认) - 坐席端布局优化建议 v2.0 (7天计划) == 新增文档 == - 日报-2026-07-11.md - 知识迭代Bug修复报告-20260711.md - 会议室预定-部署指南.md - CHANGELOG.md 更新 == 测试 == - test_todo_integration.py: 40/40 - test_meetingroom.py: 40/40 - test_bugfix_ki_suggestions.py: 21/21
72 lines
3.9 KiB
HTML
72 lines
3.9 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<!-- 移动端视口设置(适配企微 WebView) -->
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
|
<!-- CSP 由 nginx HTTP 头统一管理(移除 meta CSP 避免双 CSP 冲突导致企微 WebView 脚本加载失败) -->
|
|
<!-- 企微 JS-SDK(静态引入,确保在 Vue 应用加载前 window.wx 就绪;比动态创建 script 更可靠) -->
|
|
<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
|
|
<!-- 页面标题 -->
|
|
<title>智能IT支持服务台</title>
|
|
<!-- 首屏骨架屏样式 v0.5.2 强化版 -->
|
|
<style>
|
|
html, body { margin: 0; padding: 0; height: 100%; background: #f7f8fa; }
|
|
#app-skeleton {
|
|
position: fixed; inset: 0;
|
|
display: flex; flex-direction: column;
|
|
align-items: center; justify-content: center;
|
|
font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif;
|
|
color: #969799;
|
|
z-index: 9999;
|
|
}
|
|
#app-skeleton .logo {
|
|
width: 64px; height: 64px; border-radius: 16px;
|
|
background: linear-gradient(135deg, #1989fa 0%, #1c64f2 100%);
|
|
margin-bottom: 20px;
|
|
box-shadow: 0 8px 24px rgba(25, 137, 250, 0.3);
|
|
animation: pulse 1.5s ease-in-out infinite;
|
|
}
|
|
#app-skeleton .title { font-size: 18px; font-weight: 600; color: #323233; margin-bottom: 8px; }
|
|
#app-skeleton .subtitle { font-size: 14px; color: #969799; margin-bottom: 28px; }
|
|
#app-skeleton .spinner {
|
|
width: 28px; height: 28px;
|
|
border: 3px solid #ebedf0;
|
|
border-top-color: #1989fa;
|
|
border-radius: 50%;
|
|
animation: spin 0.8s linear infinite;
|
|
}
|
|
@keyframes spin { to { transform: rotate(360deg); } }
|
|
@keyframes pulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.7; transform: scale(0.95); } }
|
|
/* v0.5.2 强化:不再依赖 :empty 选择器(部分浏览器/Vue mount 太快会失效) */
|
|
/* 改用 body.app-loaded 类名,由 main.ts 挂载后主动添加 */
|
|
body.app-loaded #app-skeleton { display: none !important; }
|
|
</style>
|
|
<script type="module" crossorigin src="/h5/assets/index-DgVr7UP6.js"></script>
|
|
<link rel="stylesheet" crossorigin href="/h5/assets/index-Ctdjg3Zn.css">
|
|
</head>
|
|
<body>
|
|
<!-- 非企微环境拦截 -->
|
|
<script>
|
|
(function(){
|
|
var _ok = /^(localhost|127\.0\.0\.1)(:\d+)?$/.test(location.hostname) || navigator.userAgent.toLowerCase().indexOf('wxwork') > -1
|
|
if (!_ok) {
|
|
document.open()
|
|
document.write('<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>仅限企业微信访问</title><style>*{margin:0;padding:0;box-sizing:border-box}body{background:#f7f8fa;display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;text-align:center;padding:40px}.icon{font-size:60px;margin-bottom:24px}.title{font-size:20px;font-weight:600;color:#323233;margin-bottom:12px}.desc{font-size:14px;color:#969799;line-height:1.8}</style></head><body><div><div class="icon">🔒</div><div class="title">仅限企业微信访问</div><div class="desc">请在<strong>企业微信工作台</strong>中打开<br>「IT支持服务」访问此页面</div></div></body></html>')
|
|
document.close()
|
|
}
|
|
})()
|
|
</script>
|
|
<!-- Vue 应用挂载点 -->
|
|
<div id="app"></div>
|
|
<!-- 首屏骨架屏(JS 加载期间显示,挂载后自动隐藏) v0.5.2 -->
|
|
<div id="app-skeleton">
|
|
<div class="logo"></div>
|
|
<div class="title">智能IT支持服务台</div>
|
|
<div class="subtitle">正在加载...</div>
|
|
<div class="spinner"></div>
|
|
</div>
|
|
<!-- 入口脚本 -->
|
|
|
|
</body>
|
|
</html>
|