Commit 6ebda363a815497d1bae16a60424ef70d442c84e

Authored by panzhaov5
1 parent 56a8fc68

update...

src/main/resources/auths.json
@@ -33,6 +33,11 @@ @@ -33,6 +33,11 @@
33 "page": "/pages/attendance/att_data_main.html", 33 "page": "/pages/attendance/att_data_main.html",
34 "items": [ 34 "items": [
35 { 35 {
  36 + "code": "maintain_plan",
  37 + "name": "保养计划",
  38 + "page": "/pages/attendance/maintain_plan_list.html"
  39 + },
  40 + {
36 "code": "att_list", 41 "code": "att_list",
37 "name": "签到退记录", 42 "name": "签到退记录",
38 "page": "/pages/attendance/list.html" 43 "page": "/pages/attendance/list.html"
@@ -40,6 +45,18 @@ @@ -40,6 +45,18 @@
40 ] 45 ]
41 }, 46 },
42 { 47 {
  48 + "code": "schedule_plan",
  49 + "name": "计划排班",
  50 + "page": "/pages/plan_schedule/p_s_main.html",
  51 + "items": [
  52 + {
  53 + "code": "p_s_tzrc",
  54 + "name": "调整人车",
  55 + "page": "/pages/plan_schedule/tzrc/list.html"
  56 + }
  57 + ]
  58 + },
  59 + {
43 "code": "basic_data", 60 "code": "basic_data",
44 "name": "基础数据", 61 "name": "基础数据",
45 "page": "/pages/basic_data/main.html", 62 "page": "/pages/basic_data/main.html",
@@ -85,16 +102,6 @@ @@ -85,16 +102,6 @@
85 "code": "user", 102 "code": "user",
86 "name": "用户和账号", 103 "name": "用户和账号",
87 "page": "/pages/system_manager/user/user_list.html" 104 "page": "/pages/system_manager/user/user_list.html"
88 - },  
89 - {  
90 - "code": "logs",  
91 - "name": "日志",  
92 - "page": ""  
93 - },  
94 - {  
95 - "code": "config",  
96 - "name": "参数配置",  
97 - "page": ""  
98 } 105 }
99 ] 106 ]
100 } 107 }
src/main/resources/static/index.html
@@ -28,16 +28,14 @@ @@ -28,16 +28,14 @@
28 <div class="uk-card uk-card-default uk-card-body uk-width-1-1@m top_tools"> 28 <div class="uk-card uk-card-default uk-card-body uk-width-1-1@m top_tools">
29 <h3 class="uk-card-title"><img src="/assets/svg/park.svg"> 调派系统</h3> 29 <h3 class="uk-card-title"><img src="/assets/svg/park.svg"> 调派系统</h3>
30 <div class="ct-btn-list"> 30 <div class="ct-btn-list">
31 - <span class="ct-btn-link lasting" data-name="b_p_manager" data-page="/pages/b_p_manager/b_p_main.html">停放监管</span>  
32 - <span class="ct-btn-link lasting" data-name="abnormal_data" data-page="/pages/abnormal/main.html">异常监管</span>  
33 - <span class="ct-btn-link" data-name="inout_data" data-page="/pages/inout/in_out_main.html">进出场</span>  
34 - <span class="ct-btn-link" data-name="attendance_data" data-page="/pages/attendance/att_data_main.html">签到/退</span>  
35 - <span class="ct-btn-link" data-name="schedule_plan" data-page="/pages/plan_schedule/p_s_main.html">计划排班</span>  
36 - <span class="ct-btn-link" data-name="basic_data" data-page="/pages/basic_data/main.html">基础数据</span>  
37 - <span class="ct-btn-link" data-name="system_manager" data-page="/pages/system_manager/sm_main.html">系统管理</span>  
38 - 31 + <div class="menu_list" style="display: inline-block;"></div>
39 <span class="ct-user-info"> 32 <span class="ct-user-info">
40 - <i uk-icon="icon: user;"></i> admin,在线 33 + <div><i uk-icon="icon: user;"></i> <span id="user_name_t_span"></span>,在线</div>
  34 + <div uk-dropdown="">
  35 + <ul class="uk-nav uk-dropdown-nav">
  36 + <li><a href="/logout">退出登陆</a></li>
  37 + </ul>
  38 + </div>
41 </span> 39 </span>
42 </div> 40 </div>
43 </div> 41 </div>
@@ -45,6 +43,18 @@ @@ -45,6 +43,18 @@
45 <div class="ct-cont-body"></div> 43 <div class="ct-cont-body"></div>
46 </div> 44 </div>
47 45
  46 +<script id="index_menu_list-temp" type="text/html">
  47 + {{each list as obj i}}
  48 + <span class="ct-btn-link" data-name="{{obj.code}}" data-page="{{obj.page}}">{{obj.name}}</span>
  49 + {{/each}}
  50 +</script>
  51 +
  52 +<script id="sub_menu_list-temp" type="text/html">
  53 + {{each list as obj i}}
  54 + <li class="ct-btn-link" data-name="{{obj.code}}" data-page="{{obj.page}}">{{obj.name}}</li>
  55 + {{/each}}
  56 +</script>
  57 +
48 <script src="/assets/plugins/d3/d3.min.js" ></script> 58 <script src="/assets/plugins/d3/d3.min.js" ></script>
49 <script src="/assets/plugins/d3/radialprogress/vizuly_core.min.js" ></script> 59 <script src="/assets/plugins/d3/radialprogress/vizuly_core.min.js" ></script>
50 <script src="/assets/plugins/d3/radialprogress/vizuly_radialprogress.min.js" ></script> 60 <script src="/assets/plugins/d3/radialprogress/vizuly_radialprogress.min.js" ></script>
@@ -76,7 +86,6 @@ @@ -76,7 +86,6 @@
76 <script src="/assets/plugins/toastr/toastr.min.js"></script> 86 <script src="/assets/plugins/toastr/toastr.min.js"></script>
77 <script src="/js/tts.js"></script> 87 <script src="/js/tts.js"></script>
78 88
79 -  
80 <script src="/js/common.js"></script> 89 <script src="/js/common.js"></script>
81 <!-- 主JS 文件 --> 90 <!-- 主JS 文件 -->
82 <script src="/js/main.js"></script> 91 <script src="/js/main.js"></script>
src/main/resources/static/js/main.js
  1 +/**
  2 + * 动态菜单相关 ----- start -----
  3 + */
  4 +var cUser, cMenus, allAuths;
  5 +$.get('/user/currentUser', function (rs) {
  6 + cUser = rs;
  7 + $('#user_name_t_span').text(cUser.userName);
  8 +
  9 + //用户的菜单权限
  10 + cMenus = {};
  11 + var arr1 = cUser.roles[0]['menuStr'].split('$')
  12 + , arr2;
  13 +
  14 + for (var i = 0, len = arr1.length; i < len; i++) {
  15 + if (!arr1[i] || arr1[i] == '')
  16 + continue;
  17 +
  18 + arr2 = arr1[i].split('^');
  19 + cMenus[arr2[0]] = [];
  20 +
  21 + if (arr2.length == 1)
  22 + continue;
  23 +
  24 + for (var j = 1; j < arr2.length; j++) {
  25 + cMenus[arr2[0]].push(arr2[j]);
  26 + }
  27 + }
  28 +
  29 + all_auths(function (auths) {
  30 + allAuths = auths;
  31 +
  32 + //渲染一级菜单
  33 + var menu1 = gb_common.get_keys(cMenus)
  34 + , data = [];
  35 +
  36 + for (var i = 0, t; t = menu1[i++];) {
  37 + if (!auths[t])
  38 + continue;
  39 + data.push({
  40 + code: t,
  41 + name: auths[t].name,
  42 + page: auths[t].page
  43 + });
  44 + }
  45 +
  46 + var mentWrap = '.ct-container>.top_tools .menu_list';
  47 + var htmlStr = template('index_menu_list-temp', {list: data});
  48 + $(mentWrap).html(htmlStr);
  49 +
  50 + //默认选中第一项
  51 + $('.ct-btn-link:eq(0)', mentWrap).trigger('click');
  52 + });
  53 +});
  54 +
  55 +function all_auths(cb) {
  56 + $.get('/role/auth_json', function (rs) {
  57 + var list = JSON.parse(rs).list;
  58 +
  59 + var data = {};
  60 +
  61 + for (var i = 0, obj; obj = list[i++];) {
  62 + data[obj.code] = {
  63 + name: obj.name,
  64 + page: obj.page
  65 + }
  66 +
  67 + if (!obj.items)
  68 + continue;
  69 +
  70 + for (var j = 0, item; item = obj.items[j++];) {
  71 + data[obj.code + '$' + item.code] = {
  72 + name: item.name,
  73 + page: item.page
  74 + }
  75 + }
  76 + }
  77 +
  78 + cb && cb(data);
  79 + });
  80 +}
  81 +
  82 +/**
  83 + * 渲染二级菜单
  84 + */
  85 +function renderSubmmenu(wrap) {
  86 + var pCode = $('.ct-btn-link.active', top_btn_list).data('name');
  87 + var mList = cMenus[pCode];
  88 +
  89 + if(mList){
  90 + var data = [];
  91 + for(var i=0,t;t=mList[i++];){
  92 + data.push({
  93 + code: t,
  94 + name: allAuths[pCode+'$'+ t].name,
  95 + page: allAuths[pCode+'$'+ t].page
  96 + })
  97 + }
  98 +
  99 + var menuStr = template('sub_menu_list-temp', {list: data});
  100 + $('.left-menus>ul', wrap).html(menuStr);
  101 +
  102 + //默认选中第一项
  103 + $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click');
  104 + }
  105 +}
  106 +/**
  107 + * 动态菜单相关 ----- end -----
  108 + */
  109 +
  110 +
1 var company_json, company_code_name = {}; 111 var company_json, company_code_name = {};
2 var cont = $('.ct-container'); 112 var cont = $('.ct-container');
3 var top_btn_list = $('.ct-btn-list', cont); 113 var top_btn_list = $('.ct-btn-list', cont);
@@ -21,19 +131,29 @@ var ep = EventProxy.create(&#39;load_company&#39;, &#39;load_lines&#39;, function (companyData, @@ -21,19 +131,29 @@ var ep = EventProxy.create(&#39;load_company&#39;, &#39;load_lines&#39;, function (companyData,
21 131
22 groupLineArrays[key].push(this); 132 groupLineArrays[key].push(this);
23 }); 133 });
24 - //默认显示  
25 - $('.ct-btn-link[data-name=b_p_manager]').trigger('click'); 134 +
26 gb_basic_data.init(); 135 gb_basic_data.init();
27 }); 136 });
28 137
29 -$('.ct-btn-link', top_btn_list).on('click', function () { 138 +/**
  139 + * 一级菜单点击事件
  140 + */
  141 +var _loading;
  142 +top_btn_list.on('click', '.ct-btn-link', function () {
  143 + if(_loading)
  144 + return;
  145 +
  146 + _loading = true;
  147 +
30 var page = $(this).data('page'); 148 var page = $(this).data('page');
31 if (!page) 149 if (!page)
32 return; 150 return;
33 - var that = this; 151 +
  152 + $('.ct-btn-link.active', top_btn_list).removeClass('active');
  153 + $(this).addClass('active');
  154 +
34 $('.ct-cont-body', cont).trigger('exit').empty().load(page, function () { 155 $('.ct-cont-body', cont).trigger('exit').empty().load(page, function () {
35 - $('.ct-btn-link.active', top_btn_list).removeClass('active');  
36 - $(that).addClass('active'); 156 + _loading = false;
37 }); 157 });
38 }); 158 });
39 159
src/main/resources/static/pages/attendance/att_data_main.html
1 <div id="att_data_wrap" class="l_r_split_screen"> 1 <div id="att_data_wrap" class="l_r_split_screen">
2 2
3 <div class="left-menus"> 3 <div class="left-menus">
4 - <ul class="uk-list">  
5 - <li class="ct-btn-link" data-name="maintain_plan" data-page="/pages/attendance/maintain_plan_list.html">保养计划</li>  
6 - <li class="ct-btn-link" data-name="att_list" data-page="/pages/attendance/list.html">签到退记录</li>  
7 - </ul> 4 + <ul class="uk-list"></ul>
8 </div> 5 </div>
9 <div class="right-body"> 6 <div class="right-body">
10 7
@@ -14,7 +11,7 @@ @@ -14,7 +11,7 @@
14 (function () { 11 (function () {
15 var wrap = '#att_data_wrap', $body = $('.right-body', wrap); 12 var wrap = '#att_data_wrap', $body = $('.right-body', wrap);
16 13
17 - $('.left-menus .ct-btn-link', wrap).on('click', function () { 14 + $(wrap).on('click', '.left-menus .ct-btn-link', function () {
18 var page = $(this).data('page'); 15 var page = $(this).data('page');
19 if(!page) 16 if(!page)
20 return; 17 return;
@@ -26,8 +23,8 @@ @@ -26,8 +23,8 @@
26 }); 23 });
27 }); 24 });
28 25
29 - //默认选中第一项  
30 - $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click'); 26 + //渲染二级菜单
  27 + renderSubmmenu(wrap);
31 })(); 28 })();
32 </script> 29 </script>
33 </div> 30 </div>
34 \ No newline at end of file 31 \ No newline at end of file
src/main/resources/static/pages/basic_data/main.html
@@ -2,13 +2,7 @@ @@ -2,13 +2,7 @@
2 <div id="basic_data_wrap" class="l_r_split_screen"> 2 <div id="basic_data_wrap" class="l_r_split_screen">
3 3
4 <div class="left-menus"> 4 <div class="left-menus">
5 - <ul class="uk-list">  
6 - <li class="ct-btn-link" data-name="person_card" data-page="/pages/basic_data/person_card/list.html">人员/人卡</li>  
7 - <li class="ct-btn-link" data-name="bus" data-page="/pages/basic_data/bus/list.html">车辆信息</li>  
8 - <li class="ct-btn-link" data-name="bus_card" data-page="/pages/basic_data/bus_card/bus_card_list.html">车卡信息</li>  
9 - <li class="ct-btn-link" data-name="private_car" data-page="/pages/basic_data/car/car_list.html">私家车</li>  
10 - <li class="ct-btn-link" data-name="berth" data-page="/pages/basic_data/berth/berth_main.html">区域和泊位</li>  
11 - </ul> 5 + <ul class="uk-list"></ul>
12 </div> 6 </div>
13 <div class="right-body"> 7 <div class="right-body">
14 8
@@ -20,7 +14,7 @@ @@ -20,7 +14,7 @@
20 14
21 var wrap = '#basic_data_wrap', $body = $('.right-body', wrap); 15 var wrap = '#basic_data_wrap', $body = $('.right-body', wrap);
22 16
23 - $('.left-menus .ct-btn-link', wrap).on('click', function () { 17 + $(wrap).on('click', '.left-menus .ct-btn-link', function () {
24 var page = $(this).data('page'); 18 var page = $(this).data('page');
25 if(!page) 19 if(!page)
26 return; 20 return;
@@ -32,8 +26,9 @@ @@ -32,8 +26,9 @@
32 }); 26 });
33 }); 27 });
34 28
35 - //默认选中第一项  
36 - $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click'); 29 +
  30 + //渲染二级菜单
  31 + renderSubmmenu(wrap);
37 })(); 32 })();
38 </script> 33 </script>
39 </div> 34 </div>
40 \ No newline at end of file 35 \ No newline at end of file
src/main/resources/static/pages/inout/in_out_main.html
1 <div id="inout_data_wrap" class="l_r_split_screen"> 1 <div id="inout_data_wrap" class="l_r_split_screen">
2 2
3 <div class="left-menus"> 3 <div class="left-menus">
4 - <ul class="uk-list">  
5 - <li class="ct-btn-link" data-name="in_out_schedule" data-page="/pages/inout/in_out_schedule/list.html">计划出场</li>  
6 - <li class="ct-btn-link" data-name="rfid_cljcc_list" data-page="/pages/inout/signal/signal_inout_list.html">车辆进出场</li>  
7 - </ul> 4 + <ul class="uk-list"></ul>
8 </div> 5 </div>
9 <div class="right-body"> 6 <div class="right-body">
10 7
@@ -14,7 +11,7 @@ @@ -14,7 +11,7 @@
14 (function () { 11 (function () {
15 var wrap = '#inout_data_wrap', $body = $('.right-body', wrap); 12 var wrap = '#inout_data_wrap', $body = $('.right-body', wrap);
16 13
17 - $('.left-menus .ct-btn-link', wrap).on('click', function () { 14 + $(wrap).on('click', '.left-menus .ct-btn-link', function () {
18 var page = $(this).data('page'); 15 var page = $(this).data('page');
19 if(!page) 16 if(!page)
20 return; 17 return;
@@ -26,8 +23,8 @@ @@ -26,8 +23,8 @@
26 }); 23 });
27 }); 24 });
28 25
29 - //默认选中第一项  
30 - $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click'); 26 + //渲染二级菜单
  27 + renderSubmmenu(wrap);
31 })(); 28 })();
32 </script> 29 </script>
33 </div> 30 </div>
34 \ No newline at end of file 31 \ No newline at end of file
src/main/resources/static/pages/plan_schedule/p_s_main.html
@@ -2,9 +2,7 @@ @@ -2,9 +2,7 @@
2 <div id="plan_schedule_data_wrap" class="l_r_split_screen"> 2 <div id="plan_schedule_data_wrap" class="l_r_split_screen">
3 3
4 <div class="left-menus"> 4 <div class="left-menus">
5 - <ul class="uk-list">  
6 - <li class="ct-btn-link" data-name="p_s_tzrc" data-page="/pages/plan_schedule/tzrc/list.html">调整人车</li>  
7 - </ul> 5 + <ul class="uk-list"></ul>
8 </div> 6 </div>
9 <div class="right-body"> 7 <div class="right-body">
10 8
@@ -16,7 +14,7 @@ @@ -16,7 +14,7 @@
16 14
17 var wrap = '#plan_schedule_data_wrap', $body = $('.right-body', wrap); 15 var wrap = '#plan_schedule_data_wrap', $body = $('.right-body', wrap);
18 16
19 - $('.left-menus .ct-btn-link', wrap).on('click', function () { 17 + $(wrap).on('click', '.left-menus .ct-btn-link', function () {
20 var page = $(this).data('page'); 18 var page = $(this).data('page');
21 if(!page) 19 if(!page)
22 return; 20 return;
@@ -28,8 +26,8 @@ @@ -28,8 +26,8 @@
28 }); 26 });
29 }); 27 });
30 28
31 - //默认选中第一项  
32 - $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click'); 29 + //渲染二级菜单
  30 + renderSubmmenu(wrap);
33 })(); 31 })();
34 </script> 32 </script>
35 </div> 33 </div>
36 \ No newline at end of file 34 \ No newline at end of file
src/main/resources/static/pages/system_manager/role/auths.html
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 <div class="fun_s_list"></div> 19 <div class="fun_s_list"></div>
20 </div> 20 </div>
21 <div class="footer_wrap"> 21 <div class="footer_wrap">
22 - <button class="uk-button uk-width-1-1 uk-margin-small-bottom save_btn">保存</button> 22 + <button class="uk-button uk-button-primary uk-width-1-1 save_btn">保存</button>
23 </div> 23 </div>
24 </div> 24 </div>
25 25
src/main/resources/static/pages/system_manager/sm_main.html
@@ -3,10 +3,8 @@ @@ -3,10 +3,8 @@
3 3
4 <div class="left-menus"> 4 <div class="left-menus">
5 <ul class="uk-list"> 5 <ul class="uk-list">
6 - <li class="ct-btn-link" data-name="role" data-page="/pages/system_manager/role/auths.html">角色和权限</li>  
7 - <li class="ct-btn-link" data-name="user" data-page="/pages/system_manager/user/user_list.html">用户和账号</li>  
8 - <li class="ct-btn-link" data-name="logs" data-page="">日志</li>  
9 - <li class="ct-btn-link" data-name="config" data-page="">参数配置</li> 6 +<!-- <li class="ct-btn-link" data-name="logs" data-page="">日志</li>
  7 + <li class="ct-btn-link" data-name="config" data-page="">参数配置</li>-->
10 </ul> 8 </ul>
11 </div> 9 </div>
12 <div class="right-body"> 10 <div class="right-body">
@@ -19,7 +17,7 @@ @@ -19,7 +17,7 @@
19 17
20 var wrap = '#system_manager_wrap', $body = $('.right-body', wrap); 18 var wrap = '#system_manager_wrap', $body = $('.right-body', wrap);
21 19
22 - $('.left-menus .ct-btn-link', wrap).on('click', function () { 20 + $(wrap).on('click', '.left-menus .ct-btn-link', function () {
23 var page = $(this).data('page'); 21 var page = $(this).data('page');
24 if(!page) 22 if(!page)
25 return; 23 return;
@@ -31,8 +29,8 @@ @@ -31,8 +29,8 @@
31 }); 29 });
32 }); 30 });
33 31
34 - //默认选中第一项  
35 - $('.left-menus .ct-btn-link:eq(0)', wrap).trigger('click'); 32 + //渲染二级菜单
  33 + renderSubmmenu(wrap);
36 })(); 34 })();
37 </script> 35 </script>
38 </div> 36 </div>
39 \ No newline at end of file 37 \ No newline at end of file