diff --git a/src/hooks/web/useApexCharts.ts b/src/hooks/web/useApexCharts.ts index b3f33325..a182fac3 100644 --- a/src/hooks/web/useApexCharts.ts +++ b/src/hooks/web/useApexCharts.ts @@ -30,6 +30,7 @@ export function useApexCharts(elRef: Ref) { return; } chartInstanceRef.value = null; + chartInstance.destroy(); }); return { setOptions, diff --git a/src/router/menus/modules/demo/dashboard.ts b/src/router/menus/modules/demo/dashboard.ts index c75e1565..20f028a4 100644 --- a/src/router/menus/modules/demo/dashboard.ts +++ b/src/router/menus/modules/demo/dashboard.ts @@ -5,9 +5,13 @@ const menu: MenuModule = { name: 'Dashboard', path: '/dashboard', children: [ + { + path: '/workbench', + name: '工作台', + }, { path: '/welcome', - name: '欢迎页', + name: '首页', }, ], }, diff --git a/src/router/routes/modules/demo/dashboard.ts b/src/router/routes/modules/demo/dashboard.ts index 69c39a77..325d9595 100644 --- a/src/router/routes/modules/demo/dashboard.ts +++ b/src/router/routes/modules/demo/dashboard.ts @@ -7,7 +7,7 @@ export default { path: '/dashboard', name: 'Dashboard', component: PAGE_LAYOUT_COMPONENT, - redirect: '/dashboard/welcome', + redirect: '/dashboard/workbench', meta: { icon: 'ant-design:home-outlined', title: 'Dashboard', @@ -20,7 +20,15 @@ export default { name: 'Welcome', component: () => import('/@/views/dashboard/welcome/index.vue'), meta: { - title: '欢迎页', + title: '首页', + }, + }, + { + path: '/workbench', + name: 'Workbench', + component: () => import('/@/views/dashboard/workbench/index.vue'), + meta: { + title: '工作台', affix: true, }, }, diff --git a/src/views/dashboard/workbench/components/NewsList.vue b/src/views/dashboard/workbench/components/NewsList.vue new file mode 100644 index 00000000..915b7e98 --- /dev/null +++ b/src/views/dashboard/workbench/components/NewsList.vue @@ -0,0 +1,97 @@ + + + diff --git a/src/views/dashboard/workbench/components/ProdTotal.vue b/src/views/dashboard/workbench/components/ProdTotal.vue new file mode 100644 index 00000000..66ca0a1c --- /dev/null +++ b/src/views/dashboard/workbench/components/ProdTotal.vue @@ -0,0 +1,101 @@ + + + diff --git a/src/views/dashboard/workbench/components/ShortCuts.vue b/src/views/dashboard/workbench/components/ShortCuts.vue new file mode 100644 index 00000000..a6f8ddc5 --- /dev/null +++ b/src/views/dashboard/workbench/components/ShortCuts.vue @@ -0,0 +1,101 @@ + + + diff --git a/src/views/dashboard/workbench/components/TodoList.vue b/src/views/dashboard/workbench/components/TodoList.vue new file mode 100644 index 00000000..112220ab --- /dev/null +++ b/src/views/dashboard/workbench/components/TodoList.vue @@ -0,0 +1,114 @@ + + + diff --git a/src/views/dashboard/workbench/components/Week.vue b/src/views/dashboard/workbench/components/Week.vue new file mode 100644 index 00000000..7c1da578 --- /dev/null +++ b/src/views/dashboard/workbench/components/Week.vue @@ -0,0 +1,94 @@ + + diff --git a/src/views/dashboard/workbench/data.ts b/src/views/dashboard/workbench/data.ts new file mode 100644 index 00000000..f3c48fea --- /dev/null +++ b/src/views/dashboard/workbench/data.ts @@ -0,0 +1,48 @@ +export const wokbProd = [ + { + amount: '20', + type: '成品总数', + }, + { + amount: '50', + type: '未发布', + }, + { + amount: '80', + type: '发布中', + }, + { + amount: '100', + type: '异常', + }, +]; + +export const todoList = (() => { + const ret: any[] = []; + for (let index = 0; index < 3; index++) { + ret.push({ + id: index, + sbmter: '张三', + sbmtTime: new Date().toLocaleString(), + title: '主要', + memo: '工作任务', + }); + } + return ret; +})(); +export const newList = (() => { + const ret: any[] = []; + for (let index = 0; index < 3; index++) { + ret.push({ + id: index, + sender: '李四', + sendTime: new Date().toLocaleString(), + title: '代码', + memo: '工作任务', + cnteId: `c${index}`, + cnteStas: 'opened', + cnteRepo: index, + }); + } + return ret; +})(); diff --git a/src/views/dashboard/workbench/index.vue b/src/views/dashboard/workbench/index.vue new file mode 100644 index 00000000..dd7775f4 --- /dev/null +++ b/src/views/dashboard/workbench/index.vue @@ -0,0 +1,38 @@ + + +