feat: 报销预审会话状态管理与工作台交互增强
- 新增差旅报销会话状态管理与对话模型重构 - 增强风险观测服务与运行时聊天上下文作用域 - 优化工作台图标资源、助理意图识别与摘要工具 - 完善报销创建视图样式与差旅详情页标准调整交互 - 补充风险观测、运行时聊天与报销端点测试覆盖
This commit is contained in:
@@ -31,22 +31,21 @@ const iconStyle = computed(() => iconMeta.value.style)
|
||||
<style scoped>
|
||||
.workbench-list-icon {
|
||||
position: relative;
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
width: var(--workbench-list-icon-size, 48px);
|
||||
height: var(--workbench-list-icon-size, 48px);
|
||||
flex-shrink: 0;
|
||||
color: var(--icon-color, var(--theme-primary));
|
||||
}
|
||||
|
||||
.workbench-list-icon__halo {
|
||||
position: absolute;
|
||||
inset: -3px;
|
||||
border-radius: 20px;
|
||||
background: radial-gradient(
|
||||
circle at 50% 40%,
|
||||
color-mix(in srgb, var(--icon-color, var(--theme-primary)) 24%, transparent) 0%,
|
||||
transparent 72%
|
||||
);
|
||||
opacity: 0.7;
|
||||
top: 8px;
|
||||
bottom: 8px;
|
||||
left: 0;
|
||||
width: 3px;
|
||||
border-radius: 2px;
|
||||
background: color-mix(in srgb, var(--icon-color, var(--theme-primary)) 78%, #ffffff);
|
||||
opacity: 0.72;
|
||||
}
|
||||
|
||||
.workbench-list-icon__panel {
|
||||
@@ -57,26 +56,25 @@ const iconStyle = computed(() => iconMeta.value.style)
|
||||
display: grid;
|
||||
place-items: center;
|
||||
overflow: hidden;
|
||||
border-radius: 18px;
|
||||
border: 1px solid color-mix(in srgb, var(--icon-color, var(--theme-primary)) 18%, var(--line, #e2e8f0));
|
||||
border-radius: 4px;
|
||||
border: 1px solid color-mix(in srgb, var(--icon-color, var(--theme-primary)) 22%, var(--line, #e2e8f0));
|
||||
background:
|
||||
radial-gradient(circle at 24% 16%, rgba(255, 255, 255, 0.98), transparent 46%),
|
||||
linear-gradient(180deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.44)),
|
||||
linear-gradient(
|
||||
160deg,
|
||||
color-mix(in srgb, var(--icon-accent, var(--theme-primary-soft)) 72%, #fff) 0%,
|
||||
#fff 44%,
|
||||
color-mix(in srgb, var(--icon-color, var(--theme-primary)) 7%, var(--surface-soft, #f8fafc)) 100%
|
||||
135deg,
|
||||
color-mix(in srgb, var(--icon-accent, var(--theme-primary-soft)) 64%, #fff) 0%,
|
||||
#fff 52%,
|
||||
color-mix(in srgb, var(--icon-color, var(--theme-primary)) 8%, var(--surface-soft, #f8fafc)) 100%
|
||||
);
|
||||
box-shadow:
|
||||
inset 0 1px 0 rgba(255, 255, 255, 0.98),
|
||||
0 1px 2px rgba(15, 23, 42, 0.04),
|
||||
0 10px 20px color-mix(in srgb, var(--icon-color, var(--theme-primary)) 12%, transparent);
|
||||
inset 0 1px 0 rgba(255, 255, 255, 0.9),
|
||||
0 1px 2px rgba(15, 23, 42, 0.045);
|
||||
}
|
||||
|
||||
.workbench-list-icon__shine {
|
||||
position: absolute;
|
||||
inset: 0;
|
||||
background: linear-gradient(180deg, rgba(255, 255, 255, 0.55), transparent 38%);
|
||||
background: linear-gradient(110deg, rgba(255, 255, 255, 0.42), transparent 44%);
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
@@ -85,16 +83,15 @@ const iconStyle = computed(() => iconMeta.value.style)
|
||||
z-index: 1;
|
||||
display: grid;
|
||||
place-items: center;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
width: var(--workbench-list-icon-art-size, 28px);
|
||||
height: var(--workbench-list-icon-art-size, 28px);
|
||||
}
|
||||
|
||||
.workbench-list-icon__art :deep(.workbench-heroicon) {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
width: var(--workbench-list-icon-art-size, 28px);
|
||||
height: var(--workbench-list-icon-art-size, 28px);
|
||||
display: block;
|
||||
color: color-mix(in srgb, var(--icon-color, var(--theme-primary)) 86%, var(--theme-primary-active));
|
||||
filter: drop-shadow(0 2px 5px color-mix(in srgb, var(--icon-color, var(--theme-primary)) 18%, transparent));
|
||||
}
|
||||
|
||||
.workbench-list-icon--outline .workbench-list-icon__art :deep(.workbench-heroicon) {
|
||||
|
||||
Reference in New Issue
Block a user