chore: backup workspace before list detail shell refactor

This commit is contained in:
caoxiaozhu
2026-05-28 22:33:53 +08:00
parent e384318046
commit b383244a29
18 changed files with 4005 additions and 503 deletions

View File

@@ -47,6 +47,7 @@
'policies-main': activeView === 'policies',
'audit-main': activeView === 'audit',
'audit-detail-main': activeView === 'audit' && auditDetailOpen,
'digital-employees-detail-main': activeView === 'digitalEmployees' && digitalEmployeeDetailOpen,
'digital-employees-main': activeView === 'digitalEmployees',
'logs-main': activeView === 'logs',
'employees-main': activeView === 'employees',
@@ -54,7 +55,7 @@
}"
>
<TopBar
v-if="activeView !== 'settings' && !(activeView === 'audit' && auditDetailOpen)"
v-if="activeView !== 'settings' && !(activeView === 'audit' && auditDetailOpen) && !(activeView === 'digitalEmployees' && digitalEmployeeDetailOpen)"
:current-view="topBarView"
:search="search"
:active-view="activeView"
@@ -65,6 +66,7 @@
:logs-summary="logsSummary"
:request-summary="requestSummary"
:document-summary="documentSummary"
:digital-employee-summary="digitalEmployeeSummary"
:company-name="ENTERPRISE_DISPLAY_NAME"
:detail-mode="detailMode"
:log-detail-mode="logDetailMode"
@@ -144,7 +146,11 @@
/>
<PoliciesView v-else-if="activeView === 'policies'" @summary-change="knowledgeSummary = $event" />
<AuditView v-else-if="activeView === 'audit'" @detail-open-change="auditDetailOpen = $event" />
<DigitalEmployeesView v-else-if="activeView === 'digitalEmployees'" />
<DigitalEmployeesView
v-else-if="activeView === 'digitalEmployees'"
@summary-change="digitalEmployeeSummary = $event"
@detail-open-change="digitalEmployeeDetailOpen = $event"
/>
<LogDetailView v-else-if="activeView === 'logs' && logDetailMode" />
<LogsView v-else-if="activeView === 'logs'" @summary-change="logsSummary = $event" />
<EmployeeManagementView v-else-if="activeView === 'employees'" @overview-change="employeeSummary = $event" />
@@ -197,7 +203,9 @@ const employeeSummary = ref(null)
const knowledgeSummary = ref(null)
const logsSummary = ref(null)
const documentSummary = ref(null)
const digitalEmployeeSummary = ref(null)
const auditDetailOpen = ref(false)
const digitalEmployeeDetailOpen = ref(false)
const loginEntryAnimating = ref(false)
const sidebarCollapsed = ref(false)
const mobileSidebarOpen = ref(false)

View File

@@ -4,7 +4,7 @@
<article
v-if="selectedEmployee"
key="detail"
class="skill-detail digital-employee-detail"
class="skill-detail digital-employee-detail json-risk-skill-detail"
>
<div class="detail-scroll">
<section v-if="detailError" class="detail-inline-state panel error">
@@ -74,8 +74,13 @@
</footer>
</article>
<article v-else key="list" class="skill-list panel digital-employees-list">
<nav class="status-tabs" aria-label="数字员工页签">
<article
v-else
key="list"
class="skill-list digital-employees-list"
:class="{ 'panel': !workRecordDetailOpen }"
>
<nav v-if="!workRecordDetailOpen" class="status-tabs" aria-label="数字员工页签">
<button
type="button"
:class="{ active: activeSection === 'skills' }"
@@ -260,6 +265,8 @@
<DigitalEmployeeWorkRecords
v-else
class="digital-work-records-section"
@summary-change="emit('summary-change', $event)"
@detail-open-change="workRecordDetailOpen = $event"
/>
</article>
</Transition>
@@ -279,7 +286,7 @@
</template>
<script setup>
import { computed, onMounted, ref } from 'vue'
import { computed, onMounted, ref, watch } from 'vue'
import AuditDigitalEmployeeDetail from '../components/audit/AuditDigitalEmployeeDetail.vue'
import AuditPickerFilter from '../components/audit/AuditPickerFilter.vue'
@@ -322,11 +329,18 @@ import {
const { currentUser } = useSystemState()
const { toast } = useToast()
const emit = defineEmits(['summary-change', 'detail-open-change'])
const employees = ref([])
const selectedEmployee = ref(null)
const selectedEmployeeId = ref('')
const activeSection = ref('skills')
const workRecordDetailOpen = ref(false)
const isDetailOpen = computed(() => Boolean(selectedEmployee.value) || (activeSection.value === 'workRecords' && workRecordDetailOpen.value))
watch(isDetailOpen, (newVal) => {
emit('detail-open-change', newVal)
}, { immediate: true })
const keyword = ref('')
const selectedStatus = ref('')
const selectedEnabledState = ref('')

View File

@@ -14,6 +14,7 @@ const SOURCE_LABELS = {
const KNOWLEDGE_JOB_TYPES = new Set([
'knowledge_index_sync',
'llm_wiki_sync',
'llm_wiki_rule_formation',
'finance_policy_knowledge_organize'
])