feat: 报销预审会话状态管理与工作台交互增强

- 新增差旅报销会话状态管理与对话模型重构
- 增强风险观测服务与运行时聊天上下文作用域
- 优化工作台图标资源、助理意图识别与摘要工具
- 完善报销创建视图样式与差旅详情页标准调整交互
- 补充风险观测、运行时聊天与报销端点测试覆盖
This commit is contained in:
caoxiaozhu
2026-06-04 11:03:29 +08:00
parent 87da5df91b
commit 1cbf3fee44
60 changed files with 4156 additions and 393 deletions

View File

@@ -99,29 +99,33 @@ function handleCancel() {
</script>
<style scoped>
.shared-confirm-mask {
position: fixed;
inset: 0;
z-index: 10020;
display: grid;
place-items: center;
padding: 24px;
background: rgba(15, 23, 42, 0.32);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
.shared-confirm-card {
width: min(480px, 100%);
.shared-confirm-mask {
position: fixed;
inset: 0;
z-index: 10020;
display: grid;
place-items: center;
padding: 20px;
background: rgba(15, 23, 42, 0.32);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
.shared-confirm-card {
width: min(480px, calc(100vw - 40px));
max-height: calc(100vh - 40px);
max-height: calc(100dvh - 40px);
display: flex;
flex-direction: column;
gap: 14px;
padding: 24px;
border: 1px solid rgba(var(--theme-primary-rgb, 58, 124, 165), 0.14);
border-radius: 8px;
border-radius: 4px;
background:
radial-gradient(circle at top left, rgba(var(--theme-primary-rgb, 58, 124, 165), 0.10), transparent 36%),
linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 252, 0.98));
box-shadow: 0 28px 56px rgba(15, 23, 42, 0.18);
overflow: hidden;
}
.shared-confirm-badge {
@@ -165,12 +169,18 @@ function handleCancel() {
line-height: 1.7;
}
.shared-confirm-body {
display: grid;
gap: 10px;
}
.shared-confirm-body {
display: grid;
gap: 10px;
min-height: 0;
max-height: min(380px, calc(100dvh - 300px));
overflow-y: auto;
padding-right: 2px;
scrollbar-width: thin;
}
.shared-confirm-actions {
flex: 0 0 auto;
display: flex;
justify-content: flex-end;
gap: 10px;
@@ -257,12 +267,22 @@ function handleCancel() {
.shared-confirm-card--compact {
width: min(360px, 100%);
max-height: calc(100vh - 36px);
max-height: calc(100dvh - 36px);
gap: 8px;
padding: 16px;
border-radius: 6px;
border-radius: 4px;
background: #fff;
}
.shared-confirm-card--review {
width: min(560px, calc(100vw - 40px));
}
.shared-confirm-card--review .shared-confirm-body {
max-height: min(420px, calc(100dvh - 292px));
}
.shared-confirm-card--compact h4 {
font-size: 15px;
line-height: 1.35;
@@ -287,16 +307,23 @@ function handleCancel() {
@media (max-width: 720px) {
.shared-confirm-mask {
padding: 18px;
}
.shared-confirm-card {
padding: 20px;
border-radius: 8px;
padding: 14px;
}
.shared-confirm-card h4 {
font-size: 19px;
.shared-confirm-card {
width: min(100%, calc(100vw - 28px));
max-height: calc(100vh - 28px);
max-height: calc(100dvh - 28px);
padding: 20px;
border-radius: 4px;
}
.shared-confirm-body {
max-height: min(360px, calc(100dvh - 260px));
}
.shared-confirm-card h4 {
font-size: 19px;
}
.shared-confirm-actions {