Jelajahi Sumber

添加搜索框,删除权限校验

yangsl 3 tahun lalu
induk
melakukan
f6a6f51188

+ 13 - 5
src/components/GlobalHeader/index.vue

@@ -1,7 +1,7 @@
 <template>
  <div class="header-animat">
   <!--切换应用-->
-    <a-menu
+    <!-- <a-menu
     style="height: 55px; border-bottom: 0px;"
     mode="horizontal"
     :default-selected-keys="dev"
@@ -10,10 +10,14 @@
         <a-menu-item key="personal" style="top:0px;margin-top: 5px; line-height: 55px; padding-left: 10px; padding-right: 10px" >
             个人工作台
         </a-menu-item>
-        <!-- <a-menu-item key="project" style="top:0px;margin-top: 5px;line-height: 55px; padding-left: 10px; padding-right: 10px">
+        <a-menu-item key="project" style="top:0px;margin-top: 5px;line-height: 55px; padding-left: 10px; padding-right: 10px">
             项目管理
-        </a-menu-item> -->
-    </a-menu>
+        </a-menu-item>
+    </a-menu> -->
+    <!--修改 显示搜索框,不显示菜单-->
+
+    <a-input-search placeholder="搜索任务" enter-button @search="onSearch" style="margin-top: 15px;width: 400px;"/>
+
  </div>
 </template>
 
@@ -44,7 +48,11 @@ export default {
                     console.log(res)
                 })
             }
-        }
+        },
+
+     onSearch(value) {
+      console.log(value);
+     }
     }
 }
 </script>

+ 23 - 340
src/config/router.config.js

@@ -15,368 +15,51 @@ export const asyncRouterMap = [
     meta: { title: 'menu.home' },
     redirect: '/tasks/myday',
     children: [
-      // dashboard
-      {
-        path: '/dashboard',
-        name: 'dashboard',
-        redirect: '/dashboard/workplace',
-        component: RouteView,
-        meta: { title: 'menu.dashboard', keepAlive: true, icon: bxAnaalyse, permission: ['dashboard'] },
-        children: [
-          {
-            path: '/dashboard/workplace',
-            name: 'Workplace',
-            component: () => import('@/views/dashboard/Workplace'),
-            meta: { title: 'menu.dashboard.workplace', keepAlive: true, permission: ['dashboard'] }
-          },
-          {
-            path: '/dashboard/analysis/:pageNo([1-9]\\d*)?',
-            name: 'Analysis',
-            component: () => import('@/views/dashboard/Analysis'),
-            meta: { title: 'menu.dashboard.analysis', keepAlive: false, permission: ['dashboard'] }
-          },
-          // 外部链接
-          {
-            path: 'https://www.baidu.com/',
-            name: 'Monitor',
-            meta: { title: 'menu.dashboard.monitor', target: '_blank' }
-          }
-        ]
-      },
-      // forms
-      {
-        path: '/form',
-        redirect: '/form/base-form',
-        component: RouteView,
-        meta: { title: 'menu.form', icon: 'form', permission: ['form'] },
-        children: [
-          {
-            path: '/form/base-form',
-            name: 'BaseForm',
-            component: () => import('@/views/form/basicForm'),
-            meta: { title: 'menu.form.basic-form', keepAlive: true, permission: ['form'] }
-          },
-          {
-            path: '/form/step-form',
-            name: 'StepForm',
-            component: () => import('@/views/form/stepForm/StepForm'),
-            meta: { title: 'menu.form.step-form', keepAlive: true, permission: ['form'] }
-          },
-          {
-            path: '/form/advanced-form',
-            name: 'AdvanceForm',
-            component: () => import('@/views/form/advancedForm/AdvancedForm'),
-            meta: { title: 'menu.form.advanced-form', keepAlive: true, permission: ['form'] }
-          }
-        ]
-      },
-      // list
-      {
-        path: '/list',
-        name: 'list',
-        component: RouteView,
-        redirect: '/list/table-list',
-        meta: { title: 'menu.list', icon: 'table', permission: ['table'] },
-        children: [
-          {
-            path: '/list/table-list/:pageNo([1-9]\\d*)?',
-            name: 'TableListWrapper',
-            hideChildrenInMenu: true, // 强制显示 MenuItem 而不是 SubMenu
-            component: () => import('@/views/list/TableList'),
-            meta: { title: 'menu.list.table-list', keepAlive: true, permission: ['table'] }
-          },
-          {
-            path: '/list/basic-list',
-            name: 'BasicList',
-            component: () => import('@/views/list/BasicList'),
-            meta: { title: 'menu.list.basic-list', keepAlive: true, permission: ['table'] }
-          },
-          {
-            path: '/list/card',
-            name: 'CardList',
-            component: () => import('@/views/list/CardList'),
-            meta: { title: 'menu.list.card-list', keepAlive: true, permission: ['table'] }
-          },
-          {
-            path: '/list/search',
-            name: 'SearchList',
-            component: () => import('@/views/list/search/SearchLayout'),
-            redirect: '/list/search/article',
-            meta: { title: 'menu.list.search-list', keepAlive: true, permission: ['table'] },
-            children: [
-              {
-                path: '/list/search/article',
-                name: 'SearchArticles',
-                component: () => import('../views/list/search/Article'),
-                meta: { title: 'menu.list.search-list.articles', permission: ['table'] }
-              },
-              {
-                path: '/list/search/project',
-                name: 'SearchProjects',
-                component: () => import('../views/list/search/Projects'),
-                meta: { title: 'menu.list.search-list.projects', permission: ['table'] }
-              },
-              {
-                path: '/list/search/application',
-                name: 'SearchApplications',
-                component: () => import('../views/list/search/Applications'),
-                meta: { title: 'menu.list.search-list.applications', permission: ['table'] }
-              }
-            ]
-          }
-        ]
-      },
-
-      // profile
-      {
-        path: '/profile',
-        name: 'profile',
-        component: RouteView,
-        redirect: '/profile/basic',
-        meta: { title: 'menu.profile', icon: 'profile', permission: ['profile'] },
-        children: [
-          {
-            path: '/profile/basic',
-            name: 'ProfileBasic',
-            component: () => import('@/views/profile/basic'),
-            meta: { title: 'menu.profile.basic', permission: ['profile'] }
-          },
-          {
-            path: '/profile/advanced',
-            name: 'ProfileAdvanced',
-            component: () => import('@/views/profile/advanced/Advanced'),
-            meta: { title: 'menu.profile.advanced', permission: ['profile'] }
-          }
-        ]
-      },
-
-      // result
-      {
-        path: '/result',
-        name: 'result',
-        component: RouteView,
-        redirect: '/result/success',
-        meta: { title: 'menu.result', icon: 'check-circle-o', permission: ['result'] },
-        children: [
-          {
-            path: '/result/success',
-            name: 'ResultSuccess',
-            component: () => import(/* webpackChunkName: "result" */ '@/views/result/Success'),
-            meta: { title: 'menu.result.success', keepAlive: false, hiddenHeaderContent: true, permission: ['result'] }
-          },
-          {
-            path: '/result/fail',
-            name: 'ResultFail',
-            component: () => import(/* webpackChunkName: "result" */ '@/views/result/Error'),
-            meta: { title: 'menu.result.fail', keepAlive: false, hiddenHeaderContent: true, permission: ['result'] }
-          }
-        ]
-      },
-
-      // Exception
-      {
-        path: '/exception',
-        name: 'exception',
-        component: RouteView,
-        redirect: '/exception/403',
-        meta: { title: 'menu.exception', icon: 'warning', permission: ['exception'] },
-        children: [
-          {
-            path: '/exception/403',
-            name: 'Exception403',
-            component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/403'),
-            meta: { title: 'menu.exception.not-permission', permission: ['exception'] }
-          },
-          {
-            path: '/exception/404',
-            name: 'Exception404',
-            component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/404'),
-            meta: { title: 'menu.exception.not-find', permission: ['exception'] }
-          },
-          {
-            path: '/exception/500',
-            name: 'Exception500',
-            component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/500'),
-            meta: { title: 'menu.exception.server-error', permission: ['exception'] }
-          }
-        ]
-      },
-
-      // account
-      {
-        path: '/account',
-        component: RouteView,
-        redirect: '/account/center',
-        name: 'account',
-        meta: { title: 'menu.account', icon: 'user', keepAlive: true, permission: ['user'] },
-        children: [
-          {
-            path: '/account/center',
-            name: 'center',
-            component: () => import('@/views/account/center'),
-            meta: { title: 'menu.account.center', keepAlive: true, permission: ['user'] }
-          },
-          {
-            path: '/account/settings',
-            name: 'settings',
-            component: () => import('@/views/account/settings/Index'),
-            meta: { title: 'menu.account.settings', hideHeader: true, permission: ['user'] },
-            redirect: '/account/settings/basic',
-            hideChildrenInMenu: true,
-            children: [
-              {
-                path: '/account/settings/basic',
-                name: 'BasicSettings',
-                component: () => import('@/views/account/settings/BasicSetting'),
-                meta: { title: 'account.settings.menuMap.basic', hidden: true, permission: ['user'] }
-              },
-              {
-                path: '/account/settings/security',
-                name: 'SecuritySettings',
-                component: () => import('@/views/account/settings/Security'),
-                meta: {
-                  title: 'account.settings.menuMap.security',
-                  hidden: true,
-                  keepAlive: true,
-                  permission: ['user']
-                }
-              },
-              {
-                path: '/account/settings/custom',
-                name: 'CustomSettings',
-                component: () => import('@/views/account/settings/Custom'),
-                meta: { title: 'account.settings.menuMap.custom', hidden: true, keepAlive: true, permission: ['user'] }
-              },
-              {
-                path: '/account/settings/binding',
-                name: 'BindingSettings',
-                component: () => import('@/views/account/settings/Binding'),
-                meta: { title: 'account.settings.menuMap.binding', hidden: true, keepAlive: true, permission: ['user'] }
-              },
-              {
-                path: '/account/settings/notification',
-                name: 'NotificationSettings',
-                component: () => import('@/views/account/settings/Notification'),
-                meta: {
-                  title: 'account.settings.menuMap.notification',
-                  hidden: true,
-                  keepAlive: true,
-                  permission: ['user']
-                }
-              }
-            ]
-          }
-        ]
-      },
-
       // 个人任务清单
       {
         path: '/tasks/myday',
         name: 'myday',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/personal/OneDayForMe'),
+        component: () => import('@/views/task/personal/OneDayForMe'),
         meta: { title: 'menu.tasks.myday', icon: 'flag' }
       },
       {
         path: '/tasks/important',
         name: 'important',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/personal/Important'),
+        component: () => import('@/views/task/personal/Important'),
         meta: { title: 'menu.tasks.important', icon: 'star' }
       },
       {
-        path: '/tasks/planned',
-        name: 'planned',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/personal/InsideThePlan'),
-        meta: { title: 'menu.tasks.planned', icon: 'calendar' }
+        path: '/tasks/inside_the_plan',
+        name: 'inside_the_plan',
+        component: () => import('@/views/task/personal/InsideThePlan'),
+        meta: { title: 'menu.tasks.inside_the_plan', icon: 'calendar' }
       },
       {
         path: '/tasks/assigned_to_me',
         name: 'assigned_to_me',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/personal/AssignedToMe'),
+        component: () => import('@/views/task/personal/AssignedToMe'),
         meta: { title: 'menu.tasks.assigned_to_me', icon: 'user' }
       },
       {
-        path: '/tasks/inbox',
-        name: 'inbox',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/personal/MyTask'),
-        meta: { title: 'menu.tasks.inbox', icon: 'inbox' }
+        path: '/tasks/mytask',
+        name: 'mytask',
+        component: () => import('@/views/task/personal/MyTask'),
+        meta: { title: 'menu.tasks.mytask', icon: 'alert' }
       },
 
       // 项目管理部分
-      {
-        path: '/project/weeklyplan',
-        name: 'weeklyplan',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/project/WeeklyPlan'),
-        meta: { title: 'menu.exception', icon: 'tag' }
-      },
-      {
-        path: '/project/monthlyplan',
-        name: 'monthlyplan',
-        component: () => import(/* webpackChunkName: "fail" */ '@/views/task/project/MonthlyPlan'),
-        meta: { title: 'menu.exception', icon: 'tags' }
-      }
-
-      // other
-      /*
-      {
-        path: '/other',
-        name: 'otherPage',
-        component: PageView,
-        meta: { title: '其他组件', icon: 'slack', permission: [ 'dashboard' ] },
-        redirect: '/other/icon-selector',
-        children: [
-          {
-            path: '/other/icon-selector',
-            name: 'TestIconSelect',
-            component: () => import('@/views/other/IconSelectorView'),
-            meta: { title: 'IconSelector', icon: 'tool', keepAlive: true, permission: [ 'dashboard' ] }
-          },
-          {
-            path: '/other/list',
-            component: RouteView,
-            meta: { title: '业务布局', icon: 'layout', permission: [ 'support' ] },
-            redirect: '/other/list/tree-list',
-            children: [
-              {
-                path: '/other/list/tree-list',
-                name: 'TreeList',
-                component: () => import('@/views/other/TreeList'),
-                meta: { title: '树目录表格', keepAlive: true }
-              },
-              {
-                path: '/other/list/edit-table',
-                name: 'EditList',
-                component: () => import('@/views/other/TableInnerEditList'),
-                meta: { title: '内联编辑表格', keepAlive: true }
-              },
-              {
-                path: '/other/list/user-list',
-                name: 'UserList',
-                component: () => import('@/views/other/UserList'),
-                meta: { title: '用户列表', keepAlive: true }
-              },
-              {
-                path: '/other/list/role-list',
-                name: 'RoleList',
-                component: () => import('@/views/other/RoleList'),
-                meta: { title: '角色列表', keepAlive: true }
-              },
-              {
-                path: '/other/list/system-role',
-                name: 'SystemRole',
-                component: () => import('@/views/role/RoleList'),
-                meta: { title: '角色列表2', keepAlive: true }
-              },
-              {
-                path: '/other/list/permission-list',
-                name: 'PermissionList',
-                component: () => import('@/views/other/PermissionList'),
-                meta: { title: '权限列表', keepAlive: true }
-              }
-            ]
-          }
-        ]
-      }
-      */
+      // {
+      //   path: '/project/weeklyplan',
+      //   name: 'weeklyplan',
+      //   component: () => import(/* webpackChunkName: "fail" */ '@/views/task/project/WeeklyPlan'),
+      //   meta: { title: '', icon: 'tag' }
+      // },
+      // {
+      //   path: '/project/monthlyplan',
+      //   name: 'monthlyplan',
+      //   component: () => import(/* webpackChunkName: "fail" */ '@/views/task/project/MonthlyPlan'),
+      //   meta: { title: 'menu.exception', icon: 'tags' }
+      // }
     ]
   },
   {

+ 4 - 9
src/layouts/BasicLayout.vue

@@ -48,6 +48,7 @@ import { i18nRender } from '@/locales'
 import { mapState } from 'vuex'
 import { CONTENT_WIDTH_TYPE, SIDEBAR_TYPE, TOGGLE_MOBILE_TYPE } from '@/store/mutation-types'
 
+import { asyncRouterMap } from '@/config/router.config.js'
 import defaultSettings from '@/config/defaultSettings'
 import RightContent from '@/components/GlobalHeader/RightContent'
 import GlobalHeader from '@/components/GlobalHeader'
@@ -105,15 +106,9 @@ export default {
     })
   },
   created () {
-    const routes = this.mainMenu.find(item => item.path === '/')
-    this.menus = (routes && routes.children) || []
-    // 处理侧栏收起状态
-    this.$watch('collapsed', () => {
-      this.$store.commit(SIDEBAR_TYPE, this.collapsed)
-    })
-    this.$watch('isMobile', () => {
-      this.$store.commit(TOGGLE_MOBILE_TYPE, this.isMobile)
-    })
+  const routes = asyncRouterMap.find((item) => item.path === '/')
+  // const routes = this.mainMenu.find((item) => item.path === '/')
+  this.menus = (routes && routes.children) || []
   },
   mounted () {
     const userAgent = navigator.userAgent

+ 8 - 1
src/locales/lang/zh-CN/menu.js

@@ -1,3 +1,4 @@
+//国际化-中文文档
 export default {
     'menu.welcome': '欢迎',
     'menu.home': '主页',
@@ -35,5 +36,11 @@ export default {
     'menu.account.center': '个人中心',
     'menu.account.settings': '个人设置',
     'menu.account.trigger': '触发报错',
-    'menu.account.logout': '退出登录'
+    'menu.account.logout': '退出登录',
+    'menu.tasks.myday':'我的一天',
+    'menu.tasks.important':'重要',
+    'menu.tasks.inside_the_plan':'计划内',
+    'menu.tasks.assigned_to_me':'已分配给我',
+    'menu.tasks.mytask':'任务'
+
 }

+ 1 - 1
src/main.js

@@ -17,7 +17,7 @@ import './mock'
 
 import bootstrap from './core/bootstrap'
 import './core/lazy_use' // use lazy load components
-import './permission' // permission control
+//import './permission' // permission control
 import './utils/filter' // global filter
 import './global.less' // global style
 

+ 2 - 9
src/router/index.js

@@ -1,17 +1,10 @@
 import Vue from 'vue'
 import Router from 'vue-router'
-import { constantRouterMap } from '@/config/router.config'
-
-// hack router push callback
-const originalPush = Router.prototype.push
-Router.prototype.push = function push (location, onResolve, onReject) {
-  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
-  return originalPush.call(this, location).catch(err => err)
-}
+import { constantRouterMap, asyncRouterMap } from '@/config/router.config'
 
 Vue.use(Router)
 
 export default new Router({
   mode: 'history',
-  routes: constantRouterMap
+  routes: constantRouterMap.concat(asyncRouterMap)
 })

+ 3 - 10
src/views/task/personal/OneDayForMe.vue

@@ -1,13 +1,8 @@
 <template>
-  <page-header-wrapper class="uodate">
-    <template v-slot:content>
-      <div class="page-header-content">
-        {{ nowDate }}
-      </div>
-    </template>
-
     <a-layout>
       <a-layout-content style="height:100%;background-color:white;padding: 20px;">
+        <h2><strong>我的一天</strong></h2>
+        {{ nowDate }}
         <div style="display: inline-block;float: right;">
           <a-button type="link" icon="swap">
             排序
@@ -29,7 +24,7 @@
               <h3>
                 <strong>已完成 {{ finishedTask.length }}</strong>
               </h3>
-            </template>
+            </template>    
             <task-list :taskdata="finishedTask" @getData="getFinishedData" @refreshData="refreshData" @openConfig="openConfig" />
           </a-collapse-panel>
         </a-collapse>
@@ -56,8 +51,6 @@
         </a-card>
       </a-layout-sider>
     </a-layout>
-
-  </page-header-wrapper>
 </template>
 
 <script>