diff --git a/src/App.vue b/src/App.vue index 9833673..32a8645 100644 --- a/src/App.vue +++ b/src/App.vue @@ -72,12 +72,7 @@ - - + @@ -155,6 +159,9 @@ const loggedIn = ref(false) const travelCreateMode = ref(false) const detailMode = ref(false) const selectedTravelRequest = ref(null) +const smartEntryOpen = ref(false) +const smartEntryContext = ref({ prompt: '', source: 'requests', request: null }) +const smartEntrySessionId = ref(0) function handleLogin(credentials) { if (credentials.username && credentials.password) { @@ -180,7 +187,7 @@ const customRange = ref({ start: '2024-07-06', end: '2024-07-12' }) const travelPrompts = ['帮我提交出差申请', '预订机票', '预订酒店', '预订火车票', '查询差旅政策'] const topBarView = computed(() => { - if (travelCreateMode.value || detailMode.value) { + if (detailMode.value) { return { title: '差旅报销详情', desc: '查看报销单据详情、票据识别与审批进度' @@ -211,6 +218,7 @@ function handleNavigate(view) { travelCreateMode.value = false detailMode.value = false selectedTravelRequest.value = null + smartEntryOpen.value = false setView(view) } @@ -220,15 +228,29 @@ function handleOpenChat(request) { } function openTravelCreate() { - travelCreateMode.value = true + smartEntryOpen.value = true + travelCreateMode.value = false detailMode.value = false selectedTravelRequest.value = null - activeView.value = 'chat' + smartEntryContext.value = { prompt: '', source: 'topbar', request: null } + smartEntrySessionId.value += 1 } -function backToRequests() { +function openSmartEntry(payload = {}) { + smartEntryOpen.value = true travelCreateMode.value = false - activeView.value = 'requests' + detailMode.value = false + selectedTravelRequest.value = null + smartEntryContext.value = { + prompt: payload.prompt ?? '', + source: payload.source ?? 'workbench', + request: payload.request ?? null + } + smartEntrySessionId.value += 1 +} + +function closeSmartEntry() { + smartEntryOpen.value = false } function openRequestDetail(request) { diff --git a/src/components/business/PersonalWorkbench.vue b/src/components/business/PersonalWorkbench.vue index e36f340..fc150ae 100644 --- a/src/components/business/PersonalWorkbench.vue +++ b/src/components/business/PersonalWorkbench.vue @@ -20,12 +20,17 @@

自动识别报销类别、核对附件完整性,并生成可继续提交的报销草稿。

- 例如:我昨天请客户吃饭花了 860 元,还打车去了客户公司 - + -
-
- - - -
- -
- - - -