diff --git a/frontend/components.d.ts b/frontend/components.d.ts
index 308d5dba1..b919c0cf1 100644
--- a/frontend/components.d.ts
+++ b/frontend/components.d.ts
@@ -77,8 +77,10 @@ declare module 'vue' {
FileList: typeof import('./src/components/file-list/index.vue')['default']
FileRole: typeof import('./src/components/file-role/index.vue')['default']
Footer: typeof import('./src/components/app-layout/footer/index.vue')['default']
+ FormButton: typeof import('./src/components/layout-content/form-button.vue')['default']
Group: typeof import('./src/components/group/index.vue')['default']
InfiniteScroll: typeof import('element-plus/es')['ElInfiniteScroll']
+ LayoutContent: typeof import('./src/components/layout-content/index.vue')['default']
Line: typeof import('./src/components/v-charts/components/Line.vue')['default']
Loading: typeof import('element-plus/es')['ElLoadingDirective']
Logo: typeof import('./src/components/app-layout/menu/components/Logo.vue')['default']
diff --git a/frontend/index.html b/frontend/index.html
index ab47872bb..67ed8e048 100644
--- a/frontend/index.html
+++ b/frontend/index.html
@@ -4,7 +4,7 @@
-
+
loading...
diff --git a/frontend/src/assets/iconfont/iconfont.css b/frontend/src/assets/iconfont/iconfont.css
index 8789f7898..6505a38ac 100644
--- a/frontend/src/assets/iconfont/iconfont.css
+++ b/frontend/src/assets/iconfont/iconfont.css
@@ -1,9 +1,9 @@
@font-face {
font-family: "panel"; /* Project id 3575356 */
- src: url('iconfont.woff2?t=1681715760705') format('woff2'),
- url('iconfont.woff?t=1681715760705') format('woff'),
- url('iconfont.ttf?t=1681715760705') format('truetype'),
- url('iconfont.svg?t=1681715760705#panel') format('svg');
+ src: url('iconfont.woff2?t=1684465849452') format('woff2'),
+ url('iconfont.woff?t=1684465849452') format('woff'),
+ url('iconfont.ttf?t=1684465849452') format('truetype'),
+ url('iconfont.svg?t=1684465849452#panel') format('svg');
}
.panel {
@@ -14,6 +14,10 @@
-moz-osx-font-smoothing: grayscale;
}
+.p-caidan:before {
+ content: "\e61d";
+}
+
.p-yanzhengma1:before {
content: "\e744";
}
diff --git a/frontend/src/assets/iconfont/iconfont.js b/frontend/src/assets/iconfont/iconfont.js
index e6f806879..b13583654 100644
--- a/frontend/src/assets/iconfont/iconfont.js
+++ b/frontend/src/assets/iconfont/iconfont.js
@@ -1 +1 @@
-window._iconfont_svg_string_3575356='',function(c){var l=(l=document.getElementsByTagName("script"))[l.length-1],h=l.getAttribute("data-injectcss"),l=l.getAttribute("data-disable-injectsvg");if(!l){var a,t,v,p,i,z=function(l,h){h.parentNode.insertBefore(l,h)};if(h&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(l){console&&console.log(l)}}a=function(){var l,h=document.createElement("div");h.innerHTML=c._iconfont_svg_string_3575356,(h=h.getElementsByTagName("svg")[0])&&(h.setAttribute("aria-hidden","true"),h.style.position="absolute",h.style.width=0,h.style.height=0,h.style.overflow="hidden",h=h,(l=document.body).firstChild?z(h,l.firstChild):l.appendChild(h))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(a,0):(t=function(){document.removeEventListener("DOMContentLoaded",t,!1),a()},document.addEventListener("DOMContentLoaded",t,!1)):document.attachEvent&&(v=a,p=c.document,i=!1,o(),p.onreadystatechange=function(){"complete"==p.readyState&&(p.onreadystatechange=null,m())})}function m(){i||(i=!0,v())}function o(){try{p.documentElement.doScroll("left")}catch(l){return void setTimeout(o,50)}m()}}(window);
\ No newline at end of file
+window._iconfont_svg_string_3575356='',function(c){var l=(l=document.getElementsByTagName("script"))[l.length-1],h=l.getAttribute("data-injectcss"),l=l.getAttribute("data-disable-injectsvg");if(!l){var a,t,v,p,i,z=function(l,h){h.parentNode.insertBefore(l,h)};if(h&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(l){console&&console.log(l)}}a=function(){var l,h=document.createElement("div");h.innerHTML=c._iconfont_svg_string_3575356,(h=h.getElementsByTagName("svg")[0])&&(h.setAttribute("aria-hidden","true"),h.style.position="absolute",h.style.width=0,h.style.height=0,h.style.overflow="hidden",h=h,(l=document.body).firstChild?z(h,l.firstChild):l.appendChild(h))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(a,0):(t=function(){document.removeEventListener("DOMContentLoaded",t,!1),a()},document.addEventListener("DOMContentLoaded",t,!1)):document.attachEvent&&(v=a,p=c.document,i=!1,o(),p.onreadystatechange=function(){"complete"==p.readyState&&(p.onreadystatechange=null,m())})}function m(){i||(i=!0,v())}function o(){try{p.documentElement.doScroll("left")}catch(l){return void setTimeout(o,50)}m()}}(window);
\ No newline at end of file
diff --git a/frontend/src/assets/iconfont/iconfont.json b/frontend/src/assets/iconfont/iconfont.json
index 0b96a03b4..1d602c93b 100644
--- a/frontend/src/assets/iconfont/iconfont.json
+++ b/frontend/src/assets/iconfont/iconfont.json
@@ -5,6 +5,13 @@
"css_prefix_text": "p-",
"description": "",
"glyphs": [
+ {
+ "icon_id": "7708032",
+ "name": "菜单",
+ "font_class": "caidan",
+ "unicode": "e61d",
+ "unicode_decimal": 58909
+ },
{
"icon_id": "7131916",
"name": "验证码",
diff --git a/frontend/src/assets/iconfont/iconfont.svg b/frontend/src/assets/iconfont/iconfont.svg
index 4d48c5746..3bccc2519 100644
--- a/frontend/src/assets/iconfont/iconfont.svg
+++ b/frontend/src/assets/iconfont/iconfont.svg
@@ -14,6 +14,8 @@
/>
+
+
diff --git a/frontend/src/assets/iconfont/iconfont.ttf b/frontend/src/assets/iconfont/iconfont.ttf
index 243aa6c73..f3b3ffcf0 100644
Binary files a/frontend/src/assets/iconfont/iconfont.ttf and b/frontend/src/assets/iconfont/iconfont.ttf differ
diff --git a/frontend/src/assets/iconfont/iconfont.woff b/frontend/src/assets/iconfont/iconfont.woff
index d9c642fb5..9e8513443 100644
Binary files a/frontend/src/assets/iconfont/iconfont.woff and b/frontend/src/assets/iconfont/iconfont.woff differ
diff --git a/frontend/src/assets/iconfont/iconfont.woff2 b/frontend/src/assets/iconfont/iconfont.woff2
index e29342605..bb96c94f4 100644
Binary files a/frontend/src/assets/iconfont/iconfont.woff2 and b/frontend/src/assets/iconfont/iconfont.woff2 differ
diff --git a/frontend/src/components/app-status/index.vue b/frontend/src/components/app-status/index.vue
index 1877a5721..e5ef65401 100644
--- a/frontend/src/components/app-status/index.vue
+++ b/frontend/src/components/app-status/index.vue
@@ -71,7 +71,6 @@ import { onMounted, reactive, ref } from 'vue';
import Status from '@/components/status/index.vue';
import { ElMessageBox } from 'element-plus';
import i18n from '@/lang';
-import LayoutContent from '@/layout/layout-content.vue';
import { MsgSuccess } from '@/utils/message';
const props = defineProps({
diff --git a/frontend/src/components/group/index.vue b/frontend/src/components/group/index.vue
index 2c01f7123..78d850c65 100644
--- a/frontend/src/components/group/index.vue
+++ b/frontend/src/components/group/index.vue
@@ -58,7 +58,6 @@
+
+
+
+
+
diff --git a/frontend/src/components/app-layout/menu/components/Collapse.vue b/frontend/src/layout/components/Sidebar/components/Collapse.vue
similarity index 100%
rename from frontend/src/components/app-layout/menu/components/Collapse.vue
rename to frontend/src/layout/components/Sidebar/components/Collapse.vue
diff --git a/frontend/src/components/app-layout/menu/components/Logo.vue b/frontend/src/layout/components/Sidebar/components/Logo.vue
similarity index 100%
rename from frontend/src/components/app-layout/menu/components/Logo.vue
rename to frontend/src/layout/components/Sidebar/components/Logo.vue
diff --git a/frontend/src/components/app-layout/menu/components/sub-item.vue b/frontend/src/layout/components/Sidebar/components/SubItem.vue
similarity index 97%
rename from frontend/src/components/app-layout/menu/components/sub-item.vue
rename to frontend/src/layout/components/Sidebar/components/SubItem.vue
index 29f64bf19..50945994f 100644
--- a/frontend/src/components/app-layout/menu/components/sub-item.vue
+++ b/frontend/src/layout/components/Sidebar/components/SubItem.vue
@@ -3,7 +3,7 @@
diff --git a/frontend/src/components/app-layout/menu/index.scss b/frontend/src/layout/components/Sidebar/index.scss
similarity index 98%
rename from frontend/src/components/app-layout/menu/index.scss
rename to frontend/src/layout/components/Sidebar/index.scss
index c5778d73d..7891c249f 100644
--- a/frontend/src/components/app-layout/menu/index.scss
+++ b/frontend/src/layout/components/Sidebar/index.scss
@@ -75,7 +75,7 @@
}
}
-.menu-popper {
+.sidebar-container-popper {
.el-menu {
background-color: var(--el-menu-bg-color) !important;
padding: 4px 8px;
diff --git a/frontend/src/components/app-layout/menu/index.vue b/frontend/src/layout/components/Sidebar/index.vue
similarity index 95%
rename from frontend/src/components/app-layout/menu/index.vue
rename to frontend/src/layout/components/Sidebar/index.vue
index 3c5d6c498..6d6ea50c1 100644
--- a/frontend/src/components/app-layout/menu/index.vue
+++ b/frontend/src/layout/components/Sidebar/index.vue
@@ -1,7 +1,6 @@