审查视图

src/routes.js 8.7 KB
朱兆平 authored
1 2 3
import Login from './views/Login.vue'
import NotFound from './views/404.vue'
import Home from './views/Home.vue'
王勇 authored
4
import Main from './views/dashboard/index'
5 6 7
// import Table from './views/nav1/Table.vue'
import Role from './views/nav1/role.vue'
import Perm from './views/nav1/perm.vue'
8
import LOG from './views/nav1/Log.vue'
朱兆平 authored
9
import PreManifest from './views/agent/PreManifest.vue'
shenhailong authored
10 11
import Company from './views/nav1/company.vue'
import Department from './views/nav1/department.vue'
12
import Group from './views/nav1/groupcompany.vue'
朱兆平 authored
13 14
import Process from './views/hqpt/Process.vue'
import Job from './views/hqpt/Job.vue'
15
// import Form from './views/nav1/Form.vue'
16
17
18
import OrgManifest from './views/nmms/orgManifest.vue'
19 20 21 22 23 24 25 26
import ExitFlight from './views/nmms/ExitFlight.vue'
import ExitPre from './views/nmms/ExitPre.vue'
import ExitTidy from './views/nmms/ExitTidy.vue'
import ExitArrive from './views/nmms/ExitArrive.vue'
import ExitManifest from './views/nmms/ExitManifest.vue'
import ExitLoading from './views/nmms/ExitLoading.vue'
import ExitFlightDesc from './views/nmms/ExitFlightDesc.vue'
import LostLoad from './views/lostLoadChange/lostLoading.vue'
zhangFan authored
27 28
import LostLoadChange from './views/lostLoadChange/lostLoadChange.vue'
29 30 31 32 33 34 35 36 37
import OrigFlightList from './views/nmms_import/OrigFlightList.vue'
import EnterFlightInfo from './views/nmms_import/EnterFlightInfo.vue'
import OrigMaster from './views/nmms_import/OrigMaster.vue'
import EnterTally from './views/nmms_import/EnterFlightTally.vue'
import TallyMster from './views/nmms_import/TallyMster.vue'
import Waybill from './views/nmms_import/Waybill.vue'
import AllocateSearch from './views/nmms_import/AllocateSearch.vue'
import Importallocation from './views/nmms_import/Importallocation.vue'
import Allocatearrive from './views/nmms_import/Allocatearrive.vue'
38
import User from './views/nav1/user.vue'
朱兆平 authored
39 40 41 42
import Page4 from './views/nav2/Page4.vue'
import Page5 from './views/nav2/Page5.vue'
import Page6 from './views/nav3/Page6.vue'
import echarts from './views/charts/echarts.vue'
43 44 45
import SecrityInspection from './views/staff/security_inspection.vue'
import Key from './views/staff/key.vue'
import Maintain from './views/staff/maintain.vue'
46 47
import ComeCar from './views/staff/come_car.vue'
import OnDuty from './views/staff/on_duty.vue'
shenhailong authored
48
import WaterStationsPatrol from './views/water/water_stations_patrol.vue'
朱兆平 authored
49
import Location from './views/empt/Location.vue'
朱兆平 authored
50 51 52 53 54

let routes = [
    {
        path: '/login',
        component: Login,
55
        name: '登录',
朱兆平 authored
56 57 58 59 60
        hidden: true
    },
    {
        path: '/404',
        component: NotFound,
61
        name: '错误',
朱兆平 authored
62 63 64 65 66
        hidden: true
    },
    {
        path: '/',
        component: Home,
67
        name: '主页',
68 69
        leaf: true,
        iconCls: 'el-icon-menu',
朱兆平 authored
70
        children: [
71
            {path: '/main', component: Main, name: '首页'},
72 73 74 75
        ]
    },
    // { path: '/test', component: Main },
    {
76
        path: '/admin',
77
        component: Home,
78
        name: '系统设置',
79 80 81
        iconCls: 'el-icon-setting',//图标样式class
        children: [
            { path: '/user', component: User, name: '用户管理' },
82
            { path: '/role', component: Role, name: '组织机构' },
83
            { path: '/perm', component: Perm, name: '权限管理' },
84
            { path: '/log', component: LOG, name: '系统日志' },
shenhailong authored
85 86
            { path: '/department', component: Department, name: '部门管理' },
            { path: '/company', component: Company, name: '公司管理'},
87
            { path: '/group', component: Group, name: '集团管理'}
朱兆平 authored
88 89 90
        ]
    },
    {
朱兆平 authored
91 92 93 94 95 96
        path: '/guestService',
        component: Home,
        name: '客服系统',
        iconCls: 'fa fa-id-card-o',
        children: [
            { path: '/process', component: Process, name: '工单管理' },
97
            { path: '/job', component: Job, name: '任务管理' },
98 99 100 101 102 103 104 105 106 107 108
            {path: '/pre1', component: PreManifest, name: '预配'},
        ]
    },
    {
        path: '/output',
        component: Home,
        name: '出港业务申报',
        iconCls: 'el-icon-collection',
        children: [
            {path: '/flight', component: ExitFlight, name: '出港航班申报'},
            {path: '/manifest', component: ExitManifest, name: '出港运单申报'},
zhangFan authored
109
            {path: '/pre', component: ExitPre, name: '出港预配舱单'},
110 111 112 113 114 115 116
            {path: '/arrive', component: ExitArrive, name: '出港运抵'},
            {path: '/loadingView', component: ExitFlightDesc, name: '出港航班信息'},
            {path: '/loading', component: ExitLoading, name: '出港装载'},
            {path: '/tidy', component: ExitTidy, name: '出港理货'}
        ]
    },
    {
117 118 119 120 121 122 123 124 125 126 127 128 129
        path: '/nmms2',
        component: Home,
        name: '进港业务申报',
        iconCls: 'fa fa-id-card-o',
        children: [
            { path: '/orig', component: OrigFlightList, name: '进港航班申报' },
            {path:'/waybill',component:Waybill,name:'进港运单申报'},
            {path:'/allocateSearch',component:AllocateSearch,name:'运单分拨申报'},
            { path: '/enter', component: EnterFlightInfo, name: '原始舱单'},
            { path:'/origmaster',component:OrigMaster,name:'进港原始舱单'},
            {path:'/entertall',component:EnterTally,name:'进港理货'},
            {path:'/tallymaster',component:TallyMster,name:'进港理货舱单'},
            {path:'/importallocation',component:Importallocation,name:'进港分拨'},
xudada authored
130
            {path:'/allocatearrive',component:Allocatearrive,name:'分拨运抵'},
131 132 133
        ]
    },
    {
134 135 136 137 138 139
        path: '/lost',
        component: Home,
        name: '落装改配申报',
        iconCls:'el-icon-goods',
        children:[
            {path:'/lostLoad',component:LostLoad,name:'落装业务申报'},
140 141
            {path:'/lostLoadChange',component:LostLoadChange,name:'改配业务申报'}
朱兆平 authored
142 143 144
        ]
    },
    {
朱兆平 authored
145 146 147 148 149 150 151 152 153
        path: '/empt',
        component: Home,
        name: '能源管理',
        iconCls: 'fa fa-id-card-o',
        children: [
            { path: '/location', component: Location, name: '能源缴费' },
        ]
    },
    {
154
        path: '/satff',
朱兆平 authored
155
        component: Home,
156
        name: '生活保障部门',
朱兆平 authored
157 158
        iconCls: 'fa fa-id-card-o',
        children: [
159 160 161
            { path: '/security_inspection', component: SecrityInspection, name: '职工公寓安全巡视管理' },
            { path: '/key', component: Key, name: '职工公寓备用钥匙使用登记管理' },
            { path: '/maintain', component: Maintain, name: '职工公寓设施设备维修记录管理' },
shenhailong authored
162 163
            { path: '/come_car', component: ComeCar, name: '职工公寓外来人员车辆登记管理' },
            { path: '/on_duty', component: OnDuty, name: '职工公寓值班巡视记录管理' },
朱兆平 authored
164 165 166
        ]
    },
    {
shenhailong authored
167
        path: '/water_heating_chamber',
朱兆平 authored
168
        component: Home,
shenhailong authored
169
        name: '水暖室',
朱兆平 authored
170
        iconCls: 'fa fa-address-card',
shenhailong authored
171
        // leaf: true,//只有一个节点
朱兆平 authored
172
        children: [
shenhailong authored
173 174 175 176 177
            { path: '/water_stations_patrol', component: WaterStationsPatrol, name: '二水厂-水站巡视记录单管理' },
            // { path: '/page6', component: Page6, name: '水质量检测' },
            // { path: '/page6', component: Page6, name: '污水站' },
            // { path: '/page6', component: Page6, name: '一水厂' },
            // { path: '/page6', component: Page6, name: '综合楼空调站' },
朱兆平 authored
178 179 180 181 182 183 184 185
        ]
    },
    {
        path: '/',
        component: Home,
        name: 'Charts',
        iconCls: 'fa fa-bar-chart',
        children: [
186
            {path: '/echarts', component: echarts, name: 'echarts'}
朱兆平 authored
187 188 189 190 191
        ]
    },
    {
        path: '*',
        hidden: true,
192
        redirect: {path: '/404'}
朱兆平 authored
193 194
    }
];
195
let initRouters = routes.concat();
196 197
let setUserMenus = function (list) {
    routes = list;
198 199 200 201 202
}
/**
 * 处理登陆后的账号对应的菜单
 * @param menuList
 */
203
let handleMenuList = function (router, menu) {
204 205 206 207 208 209 210 211 212 213 214 215
    var _self = this;
    var routerName = "";
    router.forEach(function (v_router) {
        routerName = v_router.name;
        menu.forEach(function (v_menu) {
            //查找返回的目录列表是否包含路由名称,有就返回匹配到的元素,没有就移除
            let result = menu.find(item => {
                return item.name === routerName;
            });

            //匹配到继续判断是否子元素,有子元素继续递归
            if (result) {
216 217
                if (v_router.children) {
                    _self.handleMenuList(v_router.children, result.children);
218 219
                }
                //没有则可以移除
220 221
            } else {
                router.splice(router.findIndex(itm => itm.name === routerName), 1);
222 223 224
            }
        })
    });
225 226
}
export default {
227
    routes, setUserMenus, handleMenuList, initRouters
228
};