From eed7c5aed1e5d44746beecd49aaa480654b34569 Mon Sep 17 00:00:00 2001
From: cjh <949661474@qq.com>
Date: Thu, 4 Jun 2026 17:16:51 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=A1=B5=E9=9D=A2=E6=A0=B7?=
=?UTF-8?q?=E5=BC=8F+Ai=E8=B5=84=E4=BF=A1=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/assets/review-tools/back-active.svg | 1 +
src/assets/review-tools/back-default.svg | 1 +
src/assets/review-tools/pattern-active.svg | 1 +
src/assets/review-tools/pattern-default.svg | 1 +
src/assets/review-tools/response-active.svg | 1 +
src/assets/review-tools/response-default.svg | 1 +
src/assets/review-tools/reupload-active.svg | 1 +
src/assets/review-tools/reupload-default.svg | 1 +
src/assets/review-tools/style-active.svg | 1 +
src/assets/review-tools/style-default.svg | 1 +
src/layouts/base-layout/index.vue | 74 +-
src/locales/langs/en-us.ts | 1 +
src/locales/langs/zh-cn.ts | 1 +
src/router/elegant/imports.ts | 1 +
src/router/elegant/routes.ts | 9 +
src/router/elegant/transform.ts | 1 +
src/typings/elegant-router.d.ts | 3 +
src/views/ai-assistant/ai-read/index.vue | 86 +-
.../ai-read/module/analysis-result.vue | 178 +-
.../ai-read/module/document-preview.vue | 61 +-
.../ai-read/module/part-reading.vue | 92 +-
src/views/ai-credit/index.vue | 2068 +++++++++++++++++
.../content-check/index.vue | 24 +-
.../tech-proposal-redesign/index.vue | 713 +++++-
.../regular-analysis/index.vue | 10 +-
.../responsive-check/index.vue | 131 +-
.../content-check/modules/setting-drawer.vue | 15 +-
src/views/library/resource-library/index.vue | 615 ++++-
.../tech-proposal/document-edit/index.vue | 182 +-
.../smart-proposal/tech-proposal/index.vue | 29 +-
.../tech-proposal/modules/file-catalogue.vue | 11 +-
.../system2/modules/system2-list-page.vue | 22 +-
32 files changed, 3985 insertions(+), 352 deletions(-)
create mode 100644 src/assets/review-tools/back-active.svg
create mode 100644 src/assets/review-tools/back-default.svg
create mode 100644 src/assets/review-tools/pattern-active.svg
create mode 100644 src/assets/review-tools/pattern-default.svg
create mode 100644 src/assets/review-tools/response-active.svg
create mode 100644 src/assets/review-tools/response-default.svg
create mode 100644 src/assets/review-tools/reupload-active.svg
create mode 100644 src/assets/review-tools/reupload-default.svg
create mode 100644 src/assets/review-tools/style-active.svg
create mode 100644 src/assets/review-tools/style-default.svg
create mode 100644 src/views/ai-credit/index.vue
diff --git a/src/assets/review-tools/back-active.svg b/src/assets/review-tools/back-active.svg
new file mode 100644
index 0000000..32d0306
--- /dev/null
+++ b/src/assets/review-tools/back-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/back-default.svg b/src/assets/review-tools/back-default.svg
new file mode 100644
index 0000000..2d12203
--- /dev/null
+++ b/src/assets/review-tools/back-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/pattern-active.svg b/src/assets/review-tools/pattern-active.svg
new file mode 100644
index 0000000..ea73217
--- /dev/null
+++ b/src/assets/review-tools/pattern-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/pattern-default.svg b/src/assets/review-tools/pattern-default.svg
new file mode 100644
index 0000000..c166b18
--- /dev/null
+++ b/src/assets/review-tools/pattern-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/response-active.svg b/src/assets/review-tools/response-active.svg
new file mode 100644
index 0000000..cdf485f
--- /dev/null
+++ b/src/assets/review-tools/response-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/response-default.svg b/src/assets/review-tools/response-default.svg
new file mode 100644
index 0000000..b043651
--- /dev/null
+++ b/src/assets/review-tools/response-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/reupload-active.svg b/src/assets/review-tools/reupload-active.svg
new file mode 100644
index 0000000..d8abf20
--- /dev/null
+++ b/src/assets/review-tools/reupload-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/reupload-default.svg b/src/assets/review-tools/reupload-default.svg
new file mode 100644
index 0000000..e455a53
--- /dev/null
+++ b/src/assets/review-tools/reupload-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/style-active.svg b/src/assets/review-tools/style-active.svg
new file mode 100644
index 0000000..753e0f6
--- /dev/null
+++ b/src/assets/review-tools/style-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/review-tools/style-default.svg b/src/assets/review-tools/style-default.svg
new file mode 100644
index 0000000..68bbd3c
--- /dev/null
+++ b/src/assets/review-tools/style-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/layouts/base-layout/index.vue b/src/layouts/base-layout/index.vue
index d82f309..6fcc894 100644
--- a/src/layouts/base-layout/index.vue
+++ b/src/layouts/base-layout/index.vue
@@ -2,14 +2,16 @@
import { computed, defineAsyncComponent, onMounted } from 'vue';
import { AdminLayout, LAYOUT_SCROLL_EL_ID } from '@sa/materials';
import type { LayoutMode } from '@sa/materials';
+import { useRoute } from 'vue-router';
import { useAppStore } from '@/store/modules/app';
import { useThemeStore } from '@/store/modules/theme';
import { initWebSocket } from '@/utils/websocket';
import { initSSE } from '@/utils/sse';
-import GlobalHeader from '../modules/global-header/index.vue';
import GlobalSider from '../modules/global-sider/index.vue';
import GlobalTab from '../modules/global-tab/index.vue';
import GlobalContent from '../modules/global-content/index.vue';
+import MessageButton from '../modules/global-header/components/message-button.vue';
+import UserAvatar from '../modules/global-header/components/user-avatar.vue';
// import GlobalFooter from '../modules/global-footer/index.vue';
import ThemeDrawer from '../modules/theme-drawer/index.vue';
import { setupMixMenuContext } from '../context';
@@ -20,6 +22,7 @@ defineOptions({
const appStore = useAppStore();
const themeStore = useThemeStore();
+const route = useRoute();
const { childLevelMenus, isActiveFirstLevelMenuHasChildren } = setupMixMenuContext();
const GlobalMenu = defineAsyncComponent(() => import('../modules/global-menu/index.vue'));
@@ -30,41 +33,6 @@ const layoutMode = computed(() => {
return themeStore.layout.mode.includes(vertical) ? vertical : horizontal;
});
-const headerProps = computed(() => {
- // const { mode, reverseHorizontalMix } = themeStore.layout;
- const { mode } = themeStore.layout;
-
- const headerPropsConfig: Record = {
- vertical: {
- showLogo: false,
- showMenu: false,
- showMenuToggler: true
- },
- 'vertical-mix': {
- showLogo: false,
- showMenu: false,
- showMenuToggler: false
- },
- horizontal: {
- showLogo: true,
- showMenu: true,
- showMenuToggler: false
- },
- 'horizontal-mix': {
- showLogo: false,
- showMenu: true,
- showMenuToggler: true
- }
- // 'horizontal-mix': {
- // showLogo: true,
- // showMenu: true,
- // showMenuToggler: reverseHorizontalMix && isActiveFirstLevelMenuHasChildren.value
- // }
- };
-
- return headerPropsConfig[mode];
-});
-
const siderVisible = computed(() => themeStore.layout.mode !== 'horizontal');
const isVerticalMix = computed(() => themeStore.layout.mode === 'vertical-mix');
@@ -75,6 +43,8 @@ const siderWidth = computed(() => getSiderWidth());
const siderCollapsedWidth = computed(() => getSiderCollapsedWidth());
+const floatingActionsVisible = computed(() => !route.path.startsWith('/smart-proposal/document-edit'));
+
function getSiderWidth() {
const { reverseHorizontalMix } = themeStore.layout;
// const { width, mixWidth, mixChildMenuWidth } = themeStore.sider;
@@ -129,7 +99,7 @@ onMounted(() => {
:is-mobile="appStore.isMobile"
:full-content="appStore.fullContent"
:fixed-top="themeStore.fixedHeaderAndTab"
- :header-height="themeStore.header.height"
+ :header-height="0"
:tab-visible="themeStore.tab.visible"
:tab-height="themeStore.tab.height"
:content-class="appStore.contentXScrollable ? 'overflow-x-hidden' : ''"
@@ -141,9 +111,6 @@ onMounted(() => {
:fixed-footer="themeStore.footer.fixed"
:right-footer="themeStore.footer.right"
>
-
-
-
@@ -152,6 +119,10 @@ onMounted(() => {
+
+
+
+