{{ item.checkConfig || '暂无规则配置' }}
++ {{ item.templateType === SYSTEM_TEMPLATE_TYPE ? getRuleScopeLabel(item.type) : '用户自定义规则' }} · + {{ getRuleCount(item.checkConfig) }} 项规则 +
+ 状态: + {{ item.lockStatus === 1 ? '已锁定' : '可编辑' }} +
diff --git a/src/assets/svg-icon/library-tabs/catalog-active.svg b/src/assets/svg-icon/library-tabs/catalog-active.svg
new file mode 100644
index 0000000..7c9863d
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/catalog-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/catalog-default.svg b/src/assets/svg-icon/library-tabs/catalog-default.svg
new file mode 100644
index 0000000..bf5c569
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/catalog-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/device-active.svg b/src/assets/svg-icon/library-tabs/device-active.svg
new file mode 100644
index 0000000..5a34889
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/device-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/device-default.svg b/src/assets/svg-icon/library-tabs/device-default.svg
new file mode 100644
index 0000000..f6ce32c
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/device-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/process-active.svg b/src/assets/svg-icon/library-tabs/process-active.svg
new file mode 100644
index 0000000..596b1cb
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/process-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/process-default.svg b/src/assets/svg-icon/library-tabs/process-default.svg
new file mode 100644
index 0000000..6e557aa
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/process-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/qualification-active.svg b/src/assets/svg-icon/library-tabs/qualification-active.svg
new file mode 100644
index 0000000..7e4b4bb
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/qualification-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/qualification-default.svg b/src/assets/svg-icon/library-tabs/qualification-default.svg
new file mode 100644
index 0000000..c052589
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/qualification-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/risk-active.svg b/src/assets/svg-icon/library-tabs/risk-active.svg
new file mode 100644
index 0000000..bd54c5b
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/risk-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/risk-default.svg b/src/assets/svg-icon/library-tabs/risk-default.svg
new file mode 100644
index 0000000..369f391
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/risk-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/rule-active.svg b/src/assets/svg-icon/library-tabs/rule-active.svg
new file mode 100644
index 0000000..8669964
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/rule-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/rule-default.svg b/src/assets/svg-icon/library-tabs/rule-default.svg
new file mode 100644
index 0000000..e4bb139
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/rule-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/standard-active.svg b/src/assets/svg-icon/library-tabs/standard-active.svg
new file mode 100644
index 0000000..4d608c4
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/standard-active.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/library-tabs/standard-default.svg b/src/assets/svg-icon/library-tabs/standard-default.svg
new file mode 100644
index 0000000..e79071c
--- /dev/null
+++ b/src/assets/svg-icon/library-tabs/standard-default.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/menu/ai-read.svg b/src/assets/svg-icon/menu/ai-read.svg
new file mode 100644
index 0000000..086b87a
--- /dev/null
+++ b/src/assets/svg-icon/menu/ai-read.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/menu/ai-review.svg b/src/assets/svg-icon/menu/ai-review.svg
index a967ebb..a09258d 100644
--- a/src/assets/svg-icon/menu/ai-review.svg
+++ b/src/assets/svg-icon/menu/ai-review.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/menu/library.svg b/src/assets/svg-icon/menu/library.svg
index 09f2517..d777a36 100644
--- a/src/assets/svg-icon/menu/library.svg
+++ b/src/assets/svg-icon/menu/library.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/menu/resource-library.svg b/src/assets/svg-icon/menu/resource-library.svg
new file mode 100644
index 0000000..d777a36
--- /dev/null
+++ b/src/assets/svg-icon/menu/resource-library.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/svg-icon/menu/smart-proposal.svg b/src/assets/svg-icon/menu/smart-proposal.svg
index 35cc9a5..387c00d 100644
--- a/src/assets/svg-icon/menu/smart-proposal.svg
+++ b/src/assets/svg-icon/menu/smart-proposal.svg
@@ -1 +1 @@
-
+
\ No newline at end of file
diff --git a/src/components/custom/file-upload-button.vue b/src/components/custom/file-upload-button.vue
index 032b782..a464cbf 100644
--- a/src/components/custom/file-upload-button.vue
+++ b/src/components/custom/file-upload-button.vue
@@ -189,7 +189,10 @@ function triggerUpload() {
const el = uploadInstRef.value?.$el;
if (el) {
const input = el.querySelector('input[type="file"]') as HTMLInputElement;
- input?.click();
+ if (input) {
+ input.value = '';
+ input.click();
+ }
}
}
diff --git a/src/router/elegant/routes.ts b/src/router/elegant/routes.ts
index 3025350..daefdd2 100644
--- a/src/router/elegant/routes.ts
+++ b/src/router/elegant/routes.ts
@@ -45,7 +45,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'layout.base',
meta: {
title: 'ai-assistant',
- i18nKey: 'route.ai-assistant'
+ i18nKey: 'route.ai-assistant',
+ localIcon: 'menu-ai-read'
},
children: [
{
@@ -54,7 +55,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'view.ai-assistant_ai-read',
meta: {
title: 'ai-assistant_ai-read',
- i18nKey: 'route.ai-assistant_ai-read'
+ i18nKey: 'route.ai-assistant_ai-read',
+ localIcon: 'menu-ai-read'
}
}
]
@@ -65,7 +67,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'layout.base',
meta: {
title: 'ai-review',
- i18nKey: 'route.ai-review'
+ i18nKey: 'route.ai-review',
+ localIcon: 'menu-ai-review'
},
children: [
{
@@ -73,7 +76,8 @@ export const generatedRoutes: GeneratedRoute[] = [
path: '/ai-review/tech-proposal',
meta: {
title: 'ai-review_tech-proposal',
- i18nKey: 'route.ai-review_tech-proposal'
+ i18nKey: 'route.ai-review_tech-proposal',
+ localIcon: 'menu-ai-review'
},
children: [
{
@@ -186,6 +190,42 @@ export const generatedRoutes: GeneratedRoute[] = [
]
}
]
+ },
+ {
+ name: 'ai-review_tech-proposal-redesign_content-check',
+ path: '/ai-review/tech-proposal-redesign/content-check',
+ component: 'view.ai-review_tech-proposal-redesign_content-check',
+ meta: {
+ title: 'ai-review_tech-proposal-redesign_content-check',
+ i18nKey: 'route.ai-review_tech-proposal-redesign_content-check'
+ }
+ },
+ {
+ name: 'ai-review_tech-proposal-redesign_regular-analysis',
+ path: '/ai-review/tech-proposal-redesign/regular-analysis',
+ component: 'view.ai-review_tech-proposal-redesign_regular-analysis',
+ meta: {
+ title: 'ai-review_tech-proposal-redesign_regular-analysis',
+ i18nKey: 'route.ai-review_tech-proposal-redesign_regular-analysis'
+ }
+ },
+ {
+ name: 'ai-review_tech-proposal-redesign_responsive-check',
+ path: '/ai-review/tech-proposal-redesign/responsive-check',
+ component: 'view.ai-review_tech-proposal-redesign_responsive-check',
+ meta: {
+ title: 'ai-review_tech-proposal-redesign_responsive-check',
+ i18nKey: 'route.ai-review_tech-proposal-redesign_responsive-check'
+ }
+ },
+ {
+ name: 'ai-review_tech-proposal-redesign_reupload',
+ path: '/ai-review/tech-proposal-redesign/reupload',
+ component: 'view.ai-review_tech-proposal-redesign_reupload',
+ meta: {
+ title: 'ai-review_tech-proposal-redesign_reupload',
+ i18nKey: 'route.ai-review_tech-proposal-redesign_reupload'
+ }
}
]
},
@@ -195,7 +235,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'view.ai-review_tech-proposal-redesign',
meta: {
title: 'ai-review_tech-proposal-redesign',
- i18nKey: 'route.ai-review_tech-proposal-redesign'
+ i18nKey: 'route.ai-review_tech-proposal-redesign',
+ localIcon: 'menu-ai-review'
},
children: [
{
@@ -274,7 +315,7 @@ export const generatedRoutes: GeneratedRoute[] = [
meta: {
title: 'home',
i18nKey: 'route.home',
- icon: 'mdi:monitor-dashboard',
+ localIcon: 'menu-dashboard',
order: 1
}
},
@@ -306,7 +347,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'layout.base',
meta: {
title: 'library',
- i18nKey: 'route.library'
+ i18nKey: 'route.library',
+ localIcon: 'menu-library'
},
children: [
{
@@ -333,7 +375,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'view.library_resource-library',
meta: {
title: 'library_resource-library',
- i18nKey: 'route.library_resource-library'
+ i18nKey: 'route.library_resource-library',
+ localIcon: 'menu-resource-library'
}
},
{
@@ -470,7 +513,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'layout.base',
meta: {
title: 'smart-proposal',
- i18nKey: 'route.smart-proposal'
+ i18nKey: 'route.smart-proposal',
+ localIcon: 'menu-smart-proposal'
},
children: [
{
@@ -479,7 +523,8 @@ export const generatedRoutes: GeneratedRoute[] = [
component: 'view.smart-proposal_tech-proposal',
meta: {
title: 'smart-proposal_tech-proposal',
- i18nKey: 'route.smart-proposal_tech-proposal'
+ i18nKey: 'route.smart-proposal_tech-proposal',
+ localIcon: 'menu-smart-proposal'
},
children: [
{
diff --git a/src/views/ai-review/tech-proposal-redesign/index.vue b/src/views/ai-review/tech-proposal-redesign/index.vue
index c58f05a..4d006bb 100644
--- a/src/views/ai-review/tech-proposal-redesign/index.vue
+++ b/src/views/ai-review/tech-proposal-redesign/index.vue
@@ -1,5 +1,5 @@
@@ -516,6 +723,7 @@ onMounted(async () => {
type="button"
@click="switchLibrary(tab.key)"
>
+
{{ tab.label }}
@@ -524,8 +732,66 @@ onMounted(async () => {
{{ item.checkConfig || '暂无规则配置' }}
++ {{ item.templateType === SYSTEM_TEMPLATE_TYPE ? getRuleScopeLabel(item.type) : '用户自定义规则' }} · + {{ getRuleCount(item.checkConfig) }} 项规则 +
+ 状态: + {{ item.lockStatus === 1 ? '已锁定' : '可编辑' }} +