整理了一下整个admin的框架

This commit is contained in:
zxx 2022-10-13 13:57:58 +08:00
parent 4b62b3d062
commit d19ce89143
68 changed files with 87 additions and 87 deletions

View File

@ -64,23 +64,23 @@ const routerMap = {
demo: { demo: {
name: '演示页', name: '演示页',
renderMenu: false, renderMenu: false,
component: () => import('@/pages/demo') component: () => import('@/pages/base/demo')
}, },
exp403: { exp403: {
authority: '*', authority: '*',
name: 'exp403', name: 'exp403',
path: '403', path: '403',
component: () => import('@/pages/exception/403') component: () => import('@/pages/base/exception/403')
}, },
exp404: { exp404: {
name: 'exp404', name: 'exp404',
path: '404', path: '404',
component: () => import('@/pages/exception/404') component: () => import('@/pages/base/exception/404')
}, },
exp500: { exp500: {
name: 'exp500', name: 'exp500',
path: '500', path: '500',
component: () => import('@/pages/exception/500') component: () => import('@/pages/base/exception/500')
}, },
root: { root: {
path: '/', path: '/',

View File

@ -54,7 +54,7 @@ getRoles().then(res => {
``` ```
:::tip :::tip
注意,存在本地的 permissions 和 roles 都应该是数组。 注意,存在本地的 permissions 和 roles 都应该是数组。
你可以在 /pages/login/Login.vue 查看完整的用户角色和权限设置代码。 你可以在 /pages/base/login/Login.vue 查看完整的用户角色和权限设置代码。
::: :::
## 页面权限 ## 页面权限
如果你想给一些页面设置准入权限,只需要给该页面对应的路由设置元数据 authority 即可。 authority 的值可以是一个字符串,也可以是对象。 如果你想给一些页面设置准入权限,只需要给该页面对应的路由设置元数据 authority 即可。 authority 的值可以是一个字符串,也可以是对象。

View File

@ -42,7 +42,7 @@ lang: zh-CN
{ {
path: 'basic', path: 'basic',
name: '基础表单', name: '基础表单',
component: () => import('@/pages/form/basic/BasicForm'), component: () => import('@/pages/base/form/basic/BasicForm'),
} }
] ]
} }

View File

@ -28,7 +28,7 @@
<script> <script>
import {mapGetters} from 'vuex' // vuexmapGetters import {mapGetters} from 'vuex' // vuexmapGetters
import {logout} from '@/services/user' // 退 import {logout} from '@/services/base/user' // 退
export default { export default {
name: 'HeaderAvatar', // name: 'HeaderAvatar', //

View File

@ -20,7 +20,7 @@
</template> </template>
<script> <script>
import ColorCheckbox from '../../components/checkbox/ColorCheckbox' import ColorCheckbox from '@/components/checkbox/ColorCheckbox'
const ColorCheckboxGroup = ColorCheckbox.Group const ColorCheckboxGroup = ColorCheckbox.Group

View File

@ -13,8 +13,8 @@
</template> </template>
<script> <script>
import TaskGroup from '../../components/task/TaskGroup' import TaskGroup from '@/components/task/TaskGroup'
import TaskItem from '../../components/task/TaskItem' import TaskItem from '@/components/task/TaskItem'
const todoList = ['任务一', '任务二', '任务三', '任务四', '任务五', '任务六'] const todoList = ['任务一', '任务二', '任务三', '任务四', '任务五', '任务六']
const inproList = ['任务七', '任务八', '任务九', '任务十', '任务十一', '任务十二'] const inproList = ['任务七', '任务八', '任务九', '任务十', '任务十一', '任务十二']
const doneList = ['任务十三', '任务十四', '任务十五', '任务十六', '任务十七', '任务十八'] const doneList = ['任务十三', '任务十四', '任务十五', '任务十六', '任务十七', '任务十八']

View File

@ -39,7 +39,7 @@
<script> <script>
import AdvanceTable from '@/components/table/advance/AdvanceTable' import AdvanceTable from '@/components/table/advance/AdvanceTable'
import {dataSource as ds} from '@/services' import {dataSource as ds} from '@/services'
import Api from '@/pages/components/table/Api' import Api from '@/pages/base/components/table/Api'
export default { export default {
name: 'Table', name: 'Table',

View File

@ -37,8 +37,8 @@
</template> </template>
<script> <script>
import DetailList from '../../components/tool/DetailList' import DetailList from '@/components/tool/DetailList'
import PageLayout from '../../layouts/PageLayout' import PageLayout from '@/layouts/PageLayout'
const DetailListItem = DetailList.Item const DetailListItem = DetailList.Item

View File

@ -0,0 +1,2 @@
import AdvancedForm from '@/pages/base/form/advance/AdvancedForm'
export default AdvancedForm

View File

@ -61,7 +61,7 @@
</template> </template>
<script> <script>
import HeadInfo from '../../components/tool/HeadInfo' import HeadInfo from '@/components/tool/HeadInfo'
export default { export default {
name: 'StandardList', name: 'StandardList',
components: {HeadInfo} components: {HeadInfo}

View File

@ -29,7 +29,7 @@
<script> <script>
import SearchForm from './SearchForm' import SearchForm from './SearchForm'
import AvatarList from '../../../components/tool/AvatarList' import AvatarList from '@/components/tool/AvatarList'
const AvatarListItem = AvatarList.Item const AvatarListItem = AvatarList.Item

View File

@ -64,8 +64,8 @@
</template> </template>
<script> <script>
import TagSelect from '../../../components/tool/TagSelect' import TagSelect from '@/components/tool/TagSelect'
import FormRow from '../../../components/form/FormRow' import FormRow from '@/components/form/FormRow'
const TagSelectOption = TagSelect.Option const TagSelectOption = TagSelect.Option

View File

@ -35,9 +35,9 @@
</template> </template>
<script> <script>
import Result from '../../components/result/Result' import Result from '@/components/result/Result'
import DetailList from '../../components/tool/DetailList' import DetailList from '@/components/tool/DetailList'
import AStepItem from '../../components/tool/AStepItem' import AStepItem from '@/components/tool/AStepItem'
const AStepItemGroup = AStepItem.Group const AStepItemGroup = AStepItem.Group
const DetailListItem = DetailList.Item const DetailListItem = DetailList.Item

View File

@ -1,2 +0,0 @@
import AdvancedForm from '@/pages/form/advance/AdvancedForm'
export default AdvancedForm

View File

@ -82,7 +82,7 @@
<script> <script>
import CommonLayout from '@/layouts/CommonLayout' import CommonLayout from '@/layouts/CommonLayout'
import {login, getRoutesConfig} from '@/services/user' import {login, getRoutesConfig} from '@/services/base/user'
import {setAuthorization} from '@/utils/request' import {setAuthorization} from '@/utils/request'
import {loadRoutes} from '@/utils/routerUtil' import {loadRoutes} from '@/utils/routerUtil'
import {mapMutations} from 'vuex' import {mapMutations} from 'vuex'

View File

@ -38,17 +38,17 @@ const view = {
basicForm: { basicForm: {
path: 'basic', path: 'basic',
name: '基础表单', name: '基础表单',
component: () => import('@/pages/form/basic') component: () => import('@/pages/base/form/basic')
}, },
stepForm: { stepForm: {
path: 'step', path: 'step',
name: '分步表单', name: '分步表单',
component: () => import('@/pages/form/step') component: () => import('@/pages/base/form/step')
}, },
advanceForm: { advanceForm: {
path: 'advance', path: 'advance',
name: '高级表单', name: '高级表单',
component: () => import('@/pages/form/advance') component: () => import('@/pages/base/form/advance')
}, },
list: { list: {
name: '列表页', name: '列表页',
@ -58,34 +58,34 @@ const view = {
queryList: { queryList: {
path: 'query', path: 'query',
name: '查询表格', name: '查询表格',
component: () => import('@/pages/list/QueryList') component: () => import('@/pages/base/list/QueryList')
}, },
primaryList: { primaryList: {
path: 'primary', path: 'primary',
name: '标准列表', name: '标准列表',
component: () => import('@/pages/list/StandardList') component: () => import('@/pages/base/list/StandardList')
}, },
cardList: { cardList: {
path: 'card', path: 'card',
name: '卡片列表', name: '卡片列表',
component: () => import('@/pages/list/CardList') component: () => import('@/pages/base/list/CardList')
}, },
searchList: { searchList: {
path: 'search', path: 'search',
name: '搜索列表', name: '搜索列表',
component: () => import('@/pages/list/search/SearchLayout') component: () => import('@/pages/base/list/search/SearchLayout')
}, },
article: { article: {
name: '文章', name: '文章',
component: () => import('@/pages/list/search/ArticleList') component: () => import('@/pages/base/list/search/ArticleList')
}, },
application: { application: {
name: '应用', name: '应用',
component: () => import('@/pages/list/search/ApplicationList') component: () => import('@/pages/base/list/search/ApplicationList')
}, },
project: { project: {
name: '项目', name: '项目',
component: () => import('@/pages/list/search/ProjectList') component: () => import('@/pages/base/list/search/ProjectList')
}, },
details: { details: {
name: '详情页', name: '详情页',
@ -95,12 +95,12 @@ const view = {
basicDetails: { basicDetails: {
path: 'basic', path: 'basic',
name: '基础详情页', name: '基础详情页',
component: () => import('@/pages/detail/BasicDetail') component: () => import('@/pages/base/detail/BasicDetail')
}, },
advanceDetails: { advanceDetails: {
path: 'advance', path: 'advance',
name: '高级详情页', name: '高级详情页',
component: () => import('@/pages/detail/AdvancedDetail') component: () => import('@/pages/base/detail/AdvancedDetail')
}, },
result: { result: {
name: '结果页', name: '结果页',
@ -109,11 +109,11 @@ const view = {
}, },
success: { success: {
name: '成功', name: '成功',
component: () => import('@/pages/result/Success') component: () => import('@/pages/base/result/Success')
}, },
error: { error: {
name: '失败', name: '失败',
component: () => import('@/pages/result/Error') component: () => import('@/pages/base/result/Error')
}, },
exception: { exception: {
name: '异常页', name: '异常页',
@ -124,17 +124,17 @@ const view = {
authority: '*', authority: '*',
name: 'exp403', name: 'exp403',
path: '403', path: '403',
component: () => import('@/pages/exception/403') component: () => import('@/pages/base/exception/403')
}, },
exp404: { exp404: {
name: 'exp404', name: 'exp404',
path: '404', path: '404',
component: () => import('@/pages/exception/404') component: () => import('@/pages/base/exception/404')
}, },
exp500: { exp500: {
name: 'exp500', name: 'exp500',
path: '500', path: '500',
component: () => import('@/pages/exception/500') component: () => import('@/pages/base/exception/500')
}, },
components: { components: {
name: '小组件', name: '小组件',
@ -143,11 +143,11 @@ const view = {
}, },
taskCard: { taskCard: {
name: '任务卡片', name: '任务卡片',
component: () => import('@/pages/components/TaskCard') component: () => import('@/pages/base/components/TaskCard')
}, },
palette: { palette: {
name: '颜色复选框', name: '颜色复选框',
component: () => import('@/pages/components/Palette') component: () => import('@/pages/base/components/Palette')
}, },
@ -173,7 +173,7 @@ const view = {
}, },
WorkReporList:{ WorkReporList:{
name: '报工列表', name: '报工列表',
component: () => import('@/pages/plan/WorkReporList'), component: () => import('@/pages/base/plan/WorkReporList'),
authority: ['WorkReport-All','WorkRepor-List'] authority: ['WorkReport-All','WorkRepor-List']
}, },
Payroll:{ Payroll:{
@ -184,13 +184,13 @@ const view = {
}, },
PayrollList:{ PayrollList:{
name: '工资列表', name: '工资列表',
component: () => import('@/pages/plan/PayrollList'), component: () => import('@/pages/base/plan/PayrollList'),
authority: ['Payroll-All','Payroll-List'] authority: ['Payroll-All','Payroll-List']
}, },
PayrollSettings:{ PayrollSettings:{
name: '工资设置', name: '工资设置',
component: () => import('@/pages/plan/PayrollSettings'), component: () => import('@/pages/base/plan/PayrollSettings'),
authority: ['Payroll-All','Payroll-Settings'] authority: ['Payroll-All','Payroll-Settings']
}, },

View File

@ -13,12 +13,12 @@ const options = {
{ {
path: '*', path: '*',
name: '404', name: '404',
component: () => import('@/pages/exception/404'), component: () => import('@/pages/base/exception/404'),
}, },
{ {
path: '/403', path: '/403',
name: '403', name: '403',
component: () => import('@/pages/exception/403'), component: () => import('@/pages/base/exception/403'),
}, },
{ {
path: '/', path: '/',
@ -66,12 +66,12 @@ const options = {
// { // {
// path: 'order', // path: 'order',
// name: '生产订单列表', // name: '生产订单列表',
// component: () => import('@/pages/plan/Order'), // component: () => import('@/pages/base/plan/Order'),
// }, // },
// { // {
// path: 'DemandPlan', // path: 'DemandPlan',
// name: '需求计划单列表', // name: '需求计划单列表',
// component: () => import('@/pages/plan/DemandPlan'), // component: () => import('@/pages/base/plan/DemandPlan'),
// } // }
// ] // ]
// }, // },
@ -93,7 +93,7 @@ const options = {
// { // {
// path: 'DeployList', // path: 'DeployList',
// name: '布产单列表', // name: '布产单列表',
// component: () => import('@/pages/plan/DeployList'), // component: () => import('@/pages/base/plan/DeployList'),
// } // }
// ] // ]
// }, // },
@ -115,12 +115,12 @@ const options = {
// { // {
// path: 'Dengyao', // path: 'Dengyao',
// name: '登窑管理', // name: '登窑管理',
// component: () => import('@/pages/plan/Dengyao'), // component: () => import('@/pages/base/plan/Dengyao'),
// }, // },
// { // {
// path: 'UnloadingKiln', // path: 'UnloadingKiln',
// name: '卸窑管理', // name: '卸窑管理',
// component: () => import('@/pages/plan/UnloadingKiln'), // component: () => import('@/pages/base/plan/UnloadingKiln'),
// } // }
// ] // ]
// }, // },
@ -140,7 +140,7 @@ const options = {
// { // {
// path: 'WorkReporList', // path: 'WorkReporList',
// name: '报工单列表', // name: '报工单列表',
// component: () => import('@/pages/plan/WorkReporList'), // component: () => import('@/pages/base/plan/WorkReporList'),
// } // }
// ] // ]
// }, // },
@ -160,12 +160,12 @@ const options = {
// { // {
// path: 'PayrollList', // path: 'PayrollList',
// name: '计件工资单列表', // name: '计件工资单列表',
// component: () => import('@/pages/plan/PayrollList'), // component: () => import('@/pages/base/plan/PayrollList'),
// }, // },
// { // {
// path: 'PayrollSettings', // path: 'PayrollSettings',
// name: '计件工资设置', // name: '计件工资设置',
// component: () => import('@/pages/plan/PayrollSettings'), // component: () => import('@/pages/base/plan/PayrollSettings'),
// } // }
// ] // ]
// }, // },
@ -186,12 +186,12 @@ const options = {
// { // {
// path: 'QualityTestingList', // path: 'QualityTestingList',
// name: '质检单列表', // name: '质检单列表',
// component: () => import('@/pages/plan/QualityTestingList'), // component: () => import('@/pages/base/plan/QualityTestingList'),
// }, // },
// { // {
// path: 'QualityInspection', // path: 'QualityInspection',
// name: '质检档案', // name: '质检档案',
// component: () => import('@/pages/plan/QualityInspection'), // component: () => import('@/pages/base/plan/QualityInspection'),
// } // }
// ] // ]
// }, // },
@ -213,7 +213,7 @@ const options = {
// { // {
// path: 'SampleList', // path: 'SampleList',
// name: '样品列表', // name: '样品列表',
// component: () => import('@/pages/plan/SampleList'), // component: () => import('@/pages/base/plan/SampleList'),
// } // }
// ] // ]
// }, // },
@ -236,17 +236,17 @@ const options = {
// { // {
// path: 'procedure', // path: 'procedure',
// name: '工序管理', // name: '工序管理',
// component: () => import('@/pages/preset/Procedures'), // component: () => import('@/pages/base/preset/Procedures'),
// }, // },
// { // {
// path: 'pipeline', // path: 'pipeline',
// name: '流水线管理', // name: '流水线管理',
// component: () => import('@/pages/preset/Pipeline'), // component: () => import('@/pages/base/preset/Pipeline'),
// }, // },
// { // {
// path: 'person', // path: 'person',
// name: '员工管理', // name: '员工管理',
// component: () => import('@/pages/preset/Person'), // component: () => import('@/pages/base/preset/Person'),
// }, // },
@ -254,12 +254,12 @@ const options = {
// { // {
// path: 'BlankCar', // path: 'BlankCar',
// name: '车架管理', // name: '车架管理',
// component: () => import('@/pages/preset/BlankCar'), // component: () => import('@/pages/base/preset/BlankCar'),
// }, // },
// { // {
// path: 'Workshop', // path: 'Workshop',
// name: '车间管理', // name: '车间管理',
// component: () => import('@/pages/preset/Workshop'), // component: () => import('@/pages/base/preset/Workshop'),
// }, // },
@ -268,7 +268,7 @@ const options = {
// { // {
// path: 'Kiln', // path: 'Kiln',
// name: '窑炉管理', // name: '窑炉管理',
// component: () => import('@/pages/preset/Kiln'), // component: () => import('@/pages/base/preset/Kiln'),
// } // }
// ] // ]
// }, // },
@ -289,7 +289,7 @@ const options = {
// meta: { // meta: {
// authority: 'queryForm', // authority: 'queryForm',
// }, // },
// component: () => import('@/pages/list/QueryList'), // component: () => import('@/pages/base/list/QueryList'),
// }, // },
// { // {
// path: 'query/detail/:id', // path: 'query/detail/:id',
@ -303,32 +303,32 @@ const options = {
// { // {
// path: 'primary', // path: 'primary',
// name: '标准列表', // name: '标准列表',
// component: () => import('@/pages/list/StandardList'), // component: () => import('@/pages/base/list/StandardList'),
// }, // },
// { // {
// path: 'card', // path: 'card',
// name: '卡片列表', // name: '卡片列表',
// component: () => import('@/pages/list/CardList'), // component: () => import('@/pages/base/list/CardList'),
// }, // },
// { // {
// path: 'search', // path: 'search',
// name: '搜索列表', // name: '搜索列表',
// component: () => import('@/pages/list/search/SearchLayout'), // component: () => import('@/pages/base/list/search/SearchLayout'),
// children: [ // children: [
// { // {
// path: 'article', // path: 'article',
// name: '文章', // name: '文章',
// component: () => import('@/pages/list/search/ArticleList'), // component: () => import('@/pages/base/list/search/ArticleList'),
// }, // },
// { // {
// path: 'application', // path: 'application',
// name: '应用', // name: '应用',
// component: () => import('@/pages/list/search/ApplicationList'), // component: () => import('@/pages/base/list/search/ApplicationList'),
// }, // },
// { // {
// path: 'project', // path: 'project',
// name: '项目', // name: '项目',
// component: () => import('@/pages/list/search/ProjectList'), // component: () => import('@/pages/base/list/search/ProjectList'),
// } // }
// ] // ]
// } // }
@ -345,12 +345,12 @@ const options = {
// { // {
// path: 'basic', // path: 'basic',
// name: '基础详情页', // name: '基础详情页',
// component: () => import('@/pages/detail/BasicDetail') // component: () => import('@/pages/base/detail/BasicDetail')
// }, // },
// { // {
// path: 'advance', // path: 'advance',
// name: '高级详情页', // name: '高级详情页',
// component: () => import('@/pages/detail/AdvancedDetail') // component: () => import('@/pages/base/detail/AdvancedDetail')
// } // }
// ] // ]
// }, // },
@ -365,12 +365,12 @@ const options = {
// { // {
// path: 'success', // path: 'success',
// name: '成功', // name: '成功',
// component: () => import('@/pages/result/Success') // component: () => import('@/pages/base/result/Success')
// }, // },
// { // {
// path: 'error', // path: 'error',
// name: '失败', // name: '失败',
// component: () => import('@/pages/result/Error') // component: () => import('@/pages/base/result/Error')
// } // }
// ] // ]
// }, // },
@ -385,17 +385,17 @@ const options = {
// { // {
// path: '404', // path: '404',
// name: 'Exp404', // name: 'Exp404',
// component: () => import('@/pages/exception/404') // component: () => import('@/pages/base/exception/404')
// }, // },
// { // {
// path: '403', // path: '403',
// name: 'Exp403', // name: 'Exp403',
// component: () => import('@/pages/exception/403') // component: () => import('@/pages/base/exception/403')
// }, // },
// { // {
// path: '500', // path: '500',
// name: 'Exp500', // name: 'Exp500',
// component: () => import('@/pages/exception/500') // component: () => import('@/pages/base/exception/500')
// } // }
// ] // ]
// }, // },
@ -410,17 +410,17 @@ const options = {
{ {
path: 'taskCard', path: 'taskCard',
name: '任务卡片', name: '任务卡片',
component: () => import('@/pages/components/TaskCard') component: () => import('@/pages/base/components/TaskCard')
}, },
{ {
path: 'palette', path: 'palette',
name: '颜色复选框', name: '颜色复选框',
component: () => import('@/pages/components/Palette') component: () => import('@/pages/base/components/Palette')
}, },
{ {
path: 'table', path: 'table',
name: '高级表格', name: '高级表格',
component: () => import('@/pages/components/table') component: () => import('@/pages/base/components/table')
} }
] ]
}, },
@ -433,7 +433,7 @@ const options = {
permission: 'form' permission: 'form'
} }
}, },
component: () => import('@/pages/form/basic') component: () => import('@/pages/base/form/basic')
}, },
{ {
name: '带参菜单', name: '带参菜单',
@ -444,7 +444,7 @@ const options = {
name: '菜单默认参数' name: '菜单默认参数'
} }
}, },
component: () => import('@/pages/Demo') component: () => import('@/pages/base/Demo')
}, },
{ {
name: '动态路由菜单', name: '动态路由菜单',
@ -455,7 +455,7 @@ const options = {
id: 123 id: 123
} }
}, },
component: () => import('@/pages/Demo') component: () => import('@/pages/base/Demo')
}, },
{ {
name: 'Ant Design Vue', name: 'Ant Design Vue',

View File

@ -1,4 +1,4 @@
import {LOGIN, ROUTES, USERINFO,PERMISSION} from '@/services/api' import {LOGIN, ROUTES, USERINFO,PERMISSION} from '@/services/base/api'
import {request, METHOD, removeAuthorization} from '@/utils/request' import {request, METHOD, removeAuthorization} from '@/utils/request'
/** /**
* 登录服务 * 登录服务

View File

@ -1,5 +1,5 @@
import userService from './user' import userService from './base/user'
import dataSource from './dataSource' import dataSource from './base/dataSource'
export { export {
userService, userService,