Commit d55360b160c8945569861b5d8c3fddb2b7c8e46f

Authored by 潘钊
1 parent 28d8cc93

update...

src/main/resources/static/index.html
1 1 <!DOCTYPE html>
2 2 <html lang="zh">
3 3 <head>
4   - <meta name="renderer" content="webkit" />
5   - <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
6   - <meta charset="UTF-8">
7   - <title>调度系统</title>
8   -
9   - <meta http-equiv="Pragma" content="no-cache">
10   - <meta http-equiv="Cache-control" content="no-cache">
11   - <meta http-equiv="Cache" content="no-cache">
12   -
13   - <!-- Font Awesome 图标字体 -->
14   - <link
15   - href="/metronic_v4.5.4/plugins/font-awesome/css/font-awesome.min.css"
16   - rel="stylesheet" type="text/css" />
17   - <!-- Bootstrap style -->
18   - <link href="/metronic_v4.5.4/plugins/bootstrap/css/bootstrap.min.css"
19   - rel="stylesheet" type="text/css" />
20   - <!-- jsTree 数插件 -->
21   - <link
22   - href="/metronic_v4.5.4/plugins/jstree/dist/themes/default/style.min.css"
23   - rel="stylesheet" type="text/css" />
24   - <!-- MULTI-select 多选下拉框美化 -->
25   - <link
26   - href="/metronic_v4.5.4/plugins/jquery-multi-select/css/multi-select.css"
27   - rel="stylesheet" type="text/css" />
28   -
29   - <!-- editable -->
30   - <link
31   - href="/metronic_v4.5.4/plugins/bootstrap-editable/bootstrap-editable/css/bootstrap-editable.css"
32   - rel="stylesheet" type="text/css" />
33   - <!-- METRONIC style -->
34   - <link href="/metronic_v4.5.4/layout4/css/themes/light.min.css"
35   - rel="stylesheet" type="text/css" id="style_color" />
36   - <link href="/metronic_v4.5.4/css/components.css" rel="stylesheet"
37   - type="text/css" />
38   - <link href="/metronic_v4.5.4/css/plugins.css" rel="stylesheet"
39   - type="text/css" />
40   - <link href="/metronic_v4.5.4/layout4/css/layout.min.css"
41   - rel="stylesheet" type="text/css" />
42   - <link href="/metronic_v4.5.4/layout4/css/custom.min.css"
43   - rel="stylesheet" type="text/css" />
44   - <!-- select2 下拉框插件 -->
45   - <link href="/metronic_v4.5.4/plugins/select2/css/select2.min.css"
46   - rel="stylesheet" type="text/css" />
47   - <link
48   - href="/metronic_v4.5.4/plugins/select2/css/select2-bootstrap.min.css"
49   - rel="stylesheet" type="text/css" />
50   - <!-- layer 弹层 插件 -->
51   - <link href="/assets/plugins/layer-v2.4/layer/skin/layer.css"
52   - rel="stylesheet" type="text/css" />
53   - <!-- fileinput 上传 插件 -->
54   - <link href="/assets/plugins/fileinput/css/fileinput.min.css"
55   - rel="stylesheet" type="text/css" />
56   - <!-- iCheck 单选框和复选框 -->
57   - <link href="/metronic_v4.5.4/plugins/icheck/skins/all.css"
58   - rel="stylesheet" type="text/css" />
59   - <!-- 日期控件 -->
60   - <link
61   - href="/metronic_v4.5.4/plugins/bootstrap-datetimepicker-2/css/bootstrap-datetimepicker.min.css"
62   - rel="stylesheet" type="text/css" />
63   - <!-- table 表格控件 -->
64   - <link rel="stylesheet"
65   - href="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.css"
66   - type="text/css" />
67   - <link href="/metronic_v4.5.4/plugins/bootstrap-tagsinput/bootstrap-tagsinput.css" rel="stylesheet" type="text/css"/>
68   - <!-- handsontable样式 -->
69   - <link rel="stylesheet"
70   - href="/assets/bower_components/handsontable/dist/handsontable.full.css" />
71   - <!-- sweetalert样式 -->
72   - <link rel="stylesheet"
73   - href="/assets/bower_components/sweetalert/dist/sweetalert.css" />
74   - <!-- schedule计划调度AngularJS模块主css -->
75   - <link rel="stylesheet" href="/pages/scheduleApp/module/common/main.css"
76   - type="text/css" />
77   -
78   - <!-- CSS动画 -->
79   - <link
80   - href="/metronic_v4.5.4/plugins/tipso/css/animate.css"
81   - rel="stylesheet" type="text/css" />
82   -
83   - <!-- 提示工具样式 -->
84   - <link
85   - href="/metronic_v4.5.4/plugins/tipso/css/tipso.css"
86   - rel="stylesheet" type="text/css" />
87   -
88   - <style type="text/css">
89   - .searchForm {
90   -
91   - }
92   -
93   - .searchForm .form-group .control-label {
94   - padding-right: 0px;
95   - text-align: right;
96   - margin-top: 7px;
97   - }
98   -
99   - .searchForm .form-group>div {
100   - padding-left: 10px;
101   - padding-right: 0px;
102   - }
103   -
104   - .searchForm .row>div {
105   - padding-left: 0px;
106   - padding-right: 0px;
107   - padding: 5px 0 5px 0;
108   - width: 270px;
109   - display: inline-block;
110   - }
111   -
112   - .searchForm .form-actions {
113   -
114   - }
115   -
116   - tr.row-active td {
117   - border-bottom: 1px solid blue !important;
118   - color: blue;
119   - }
120   -
121   - .ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection
122   - {
123   - font-size: 14px;
124   - }
125   -
126   - .ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection
127   - {
128   - padding: 6px 26px;
129   - }
130   -
131   - .ms-container .ms-list {
132   - height: 306px;
133   - }
134   -
135   - .ms-container .ms-selectable,.ms-container .ms-selection {
136   - width: 47%;
137   - }
138   -
139   - .ms-container {
140   - width: 470px;
141   - margin: auto;
142   - }
143   -
144   - .multi-custom-header-left {
145   - text-align: center;
146   - padding: 7px;
147   - color: #3B3F51;
148   - }
149   -
150   - .multi-custom-header-right {
151   - text-align: center;
152   - padding: 7px;
153   - font-weight: bold;
154   - color: #36C6D3;
155   - }
156   -
157   - .mt-element-list .list-simple.mt-list-container ul>.mt-list-item>.list-item-content
158   - {
159   - padding: 0 55px 0 0px;
160   - }
161   -
162   - .mt-element-list .list-simple.mt-list-container ul>.mt-list-item {
163   - padding: 3.3px 0;
164   - }
165   -
166   - #route-container {
167   - display: none;
168   - }
169   -
170   - .page-content.active {
171   - display: block !important;
172   - }
173   -
174   - .page-header.navbar .page-logo .logo-default {
175   - margin: 0;
176   - }
177   -
178   - .page-header.navbar .top-menu .navbar-nav>li.dropdown.open .dropdown-toggle
179   - {
180   - background-color: #284a99;
181   - }
182   -
183   - .page-header.navbar .page-logo {
184   - padding-right: 10px;
185   - }
186   -
187   - .page-logo .logo-default.logo-default-text {
188   - font-weight: 600;
189   - color: white !important;
190   - margin-top: 19px !important;
191   - font-size: 24px;
192   - text-decoration: none;
193   - }
194   -
195   - .page-logo .logo-default.logo-default-text:HOVER {
196   - color: #dedede !important;
197   - }
198   - </style>
199   -
200   - <!-- ocLazyLoading载入文件的位置 -->
201   - <link id="ng_load_plugins_before" />
  4 + <meta name="renderer" content="webkit" />
  5 + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  6 + <meta charset="UTF-8">
  7 + <title>调度系统</title>
  8 +
  9 + <meta http-equiv="Pragma" content="no-cache">
  10 + <meta http-equiv="Cache-control" content="no-cache">
  11 + <meta http-equiv="Cache" content="no-cache">
  12 +
  13 + <!-- Font Awesome 图标字体 -->
  14 + <link
  15 + href="/metronic_v4.5.4/plugins/font-awesome/css/font-awesome.min.css"
  16 + rel="stylesheet" type="text/css" />
  17 + <!-- Bootstrap style -->
  18 + <link href="/metronic_v4.5.4/plugins/bootstrap/css/bootstrap.min.css"
  19 + rel="stylesheet" type="text/css" />
  20 + <!-- jsTree 数插件 -->
  21 + <link
  22 + href="/metronic_v4.5.4/plugins/jstree/dist/themes/default/style.min.css"
  23 + rel="stylesheet" type="text/css" />
  24 + <!-- MULTI-select 多选下拉框美化 -->
  25 + <link
  26 + href="/metronic_v4.5.4/plugins/jquery-multi-select/css/multi-select.css"
  27 + rel="stylesheet" type="text/css" />
  28 +
  29 + <!-- editable -->
  30 + <link
  31 + href="/metronic_v4.5.4/plugins/bootstrap-editable/bootstrap-editable/css/bootstrap-editable.css"
  32 + rel="stylesheet" type="text/css" />
  33 + <!-- METRONIC style -->
  34 + <link href="/metronic_v4.5.4/layout4/css/themes/light.min.css"
  35 + rel="stylesheet" type="text/css" id="style_color" />
  36 + <link href="/metronic_v4.5.4/css/components.css" rel="stylesheet"
  37 + type="text/css" />
  38 + <link href="/metronic_v4.5.4/css/plugins.css" rel="stylesheet"
  39 + type="text/css" />
  40 + <link href="/metronic_v4.5.4/layout4/css/layout.min.css"
  41 + rel="stylesheet" type="text/css" />
  42 + <link href="/metronic_v4.5.4/layout4/css/custom.min.css"
  43 + rel="stylesheet" type="text/css" />
  44 + <!-- select2 下拉框插件 -->
  45 + <link href="/metronic_v4.5.4/plugins/select2/css/select2.min.css"
  46 + rel="stylesheet" type="text/css" />
  47 + <link
  48 + href="/metronic_v4.5.4/plugins/select2/css/select2-bootstrap.min.css"
  49 + rel="stylesheet" type="text/css" />
  50 + <!-- layer 弹层 插件 -->
  51 + <link href="/assets/plugins/layer-v2.4/layer/skin/layer.css"
  52 + rel="stylesheet" type="text/css" />
  53 + <!-- fileinput 上传 插件 -->
  54 + <link href="/assets/plugins/fileinput/css/fileinput.min.css"
  55 + rel="stylesheet" type="text/css" />
  56 + <!-- iCheck 单选框和复选框 -->
  57 + <link href="/metronic_v4.5.4/plugins/icheck/skins/all.css"
  58 + rel="stylesheet" type="text/css" />
  59 + <!-- 日期控件 -->
  60 + <link
  61 + href="/metronic_v4.5.4/plugins/bootstrap-datetimepicker-2/css/bootstrap-datetimepicker.min.css"
  62 + rel="stylesheet" type="text/css" />
  63 + <!-- table 表格控件 -->
  64 + <link rel="stylesheet"
  65 + href="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.css"
  66 + type="text/css" />
  67 + <link href="/metronic_v4.5.4/plugins/bootstrap-tagsinput/bootstrap-tagsinput.css" rel="stylesheet" type="text/css"/>
  68 + <!-- handsontable样式 -->
  69 + <link rel="stylesheet"
  70 + href="/assets/bower_components/handsontable/dist/handsontable.full.css" />
  71 + <!-- sweetalert样式 -->
  72 + <link rel="stylesheet"
  73 + href="/assets/bower_components/sweetalert/dist/sweetalert.css" />
  74 + <!-- schedule计划调度AngularJS模块主css -->
  75 + <link rel="stylesheet" href="/pages/scheduleApp/module/common/main.css"
  76 + type="text/css" />
  77 +
  78 + <!-- CSS动画 -->
  79 + <link
  80 + href="/metronic_v4.5.4/plugins/tipso/css/animate.css"
  81 + rel="stylesheet" type="text/css" />
  82 +
  83 + <!-- 提示工具样式 -->
  84 + <link
  85 + href="/metronic_v4.5.4/plugins/tipso/css/tipso.css"
  86 + rel="stylesheet" type="text/css" />
  87 +
  88 + <style type="text/css">
  89 + .searchForm {
  90 +
  91 + }
  92 +
  93 + .searchForm .form-group .control-label {
  94 + padding-right: 0px;
  95 + text-align: right;
  96 + margin-top: 7px;
  97 + }
  98 +
  99 + .searchForm .form-group>div {
  100 + padding-left: 10px;
  101 + padding-right: 0px;
  102 + }
  103 +
  104 + .searchForm .row>div {
  105 + padding-left: 0px;
  106 + padding-right: 0px;
  107 + padding: 5px 0 5px 0;
  108 + width: 270px;
  109 + display: inline-block;
  110 + }
  111 +
  112 + .searchForm .form-actions {
  113 +
  114 + }
  115 +
  116 + tr.row-active td {
  117 + border-bottom: 1px solid blue !important;
  118 + color: blue;
  119 + }
  120 +
  121 + .ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection
  122 + {
  123 + font-size: 14px;
  124 + }
  125 +
  126 + .ms-container .ms-selectable li.ms-elem-selectable,.ms-container .ms-selection li.ms-elem-selection
  127 + {
  128 + padding: 6px 26px;
  129 + }
  130 +
  131 + .ms-container .ms-list {
  132 + height: 306px;
  133 + }
  134 +
  135 + .ms-container .ms-selectable,.ms-container .ms-selection {
  136 + width: 47%;
  137 + }
  138 +
  139 + .ms-container {
  140 + width: 470px;
  141 + margin: auto;
  142 + }
  143 +
  144 + .multi-custom-header-left {
  145 + text-align: center;
  146 + padding: 7px;
  147 + color: #3B3F51;
  148 + }
  149 +
  150 + .multi-custom-header-right {
  151 + text-align: center;
  152 + padding: 7px;
  153 + font-weight: bold;
  154 + color: #36C6D3;
  155 + }
  156 +
  157 + .mt-element-list .list-simple.mt-list-container ul>.mt-list-item>.list-item-content
  158 + {
  159 + padding: 0 55px 0 0px;
  160 + }
  161 +
  162 + .mt-element-list .list-simple.mt-list-container ul>.mt-list-item {
  163 + padding: 3.3px 0;
  164 + }
  165 +
  166 + #route-container {
  167 + display: none;
  168 + }
  169 +
  170 + .page-content.active {
  171 + display: block !important;
  172 + }
  173 +
  174 + .page-header.navbar .page-logo .logo-default {
  175 + margin: 0;
  176 + }
  177 +
  178 + .page-header.navbar .top-menu .navbar-nav>li.dropdown.open .dropdown-toggle
  179 + {
  180 + background-color: #284a99;
  181 + }
  182 +
  183 + .page-header.navbar .page-logo {
  184 + padding-right: 10px;
  185 + }
  186 +
  187 + .page-logo .logo-default.logo-default-text {
  188 + font-weight: 600;
  189 + color: white !important;
  190 + margin-top: 19px !important;
  191 + font-size: 24px;
  192 + text-decoration: none;
  193 + }
  194 +
  195 + .page-logo .logo-default.logo-default-text:HOVER {
  196 + color: #dedede !important;
  197 + }
  198 +
  199 + body,.page-content-wrapper,#pjax-container{
  200 + height: 100%;
  201 + }
  202 + html{
  203 + height: 90%;
  204 + }
  205 + .page-container{
  206 + height: 100%;
  207 + }
  208 + </style>
  209 +
  210 + <!-- ocLazyLoading载入文件的位置 -->
  211 + <link id="ng_load_plugins_before" />
202 212  
203 213 </head>
204 214 <body
205   - class="page-container-bg-solid page-header-fixed page-sidebar-closed-hide-logo page-sidebar-fixed">
  215 + class="page-container-bg-solid page-header-fixed page-sidebar-closed-hide-logo page-sidebar-fixed">
206 216 <div class="page-header navbar navbar-fixed-top"
207   - style="background: linear-gradient(to bottom, #124e78, #125688);">
208   - <div class="page-header-inner ">
209   - <!-- LOGO -->
210   - <div class="page-logo">
211   - <a href="index.html" class="logo-default logo-default-text">
212   - 闵行公交调度系统 </a>
213   - <div class="menu-toggler sidebar-toggler"></div>
214   - </div>
215   - <!-- END LOGO -->
216   - <a href="javascript:;" class="menu-toggler responsive-toggler"
217   - data-toggle="collapse" data-target=".navbar-collapse"> </a>
218   - <div class="page-top">
219   - <div class="top-menu">
220   - <ul class="nav navbar-nav pull-right">
221   - <!-- 信息通知区 -->
222   - <li
223   - class="dropdown dropdown-extended dropdown-notification dropdown-dark"
224   - id="header_notification_bar"><a href="javascript:;"
225   - class="dropdown-toggle" data-toggle="dropdown"
226   - data-hover="dropdown" data-close-others="true"> <i
227   - class="fa fa-bell"></i> <span class="badge badge-success">
  217 + style="background: linear-gradient(to bottom, #124e78, #125688);">
  218 + <div class="page-header-inner ">
  219 + <!-- LOGO -->
  220 + <div class="page-logo">
  221 + <a href="index.html" class="logo-default logo-default-text">
  222 + 闵行公交调度系统 </a>
  223 + <div class="menu-toggler sidebar-toggler"></div>
  224 + </div>
  225 + <!-- END LOGO -->
  226 + <a href="javascript:;" class="menu-toggler responsive-toggler"
  227 + data-toggle="collapse" data-target=".navbar-collapse"> </a>
  228 + <div class="page-top">
  229 + <div class="top-menu">
  230 + <ul class="nav navbar-nav pull-right">
  231 + <!-- 信息通知区 -->
  232 + <li
  233 + class="dropdown dropdown-extended dropdown-notification dropdown-dark"
  234 + id="header_notification_bar"><a href="javascript:;"
  235 + class="dropdown-toggle" data-toggle="dropdown"
  236 + data-hover="dropdown" data-close-others="true"> <i
  237 + class="fa fa-bell"></i> <span class="badge badge-success">
228 238 0 </span>
229   - </a>
230   - <ul class="dropdown-menu" style="max-width: 345px; width: 345px;">
231   - <li class="external">
232   - <h3>
233   - 今日 <span class="bold">0 条</span> 通知
234   - </h3> <a href="javascript:;">查看全部</a>
235   - </li>
236   - <li>
237   - <ul class="dropdown-menu-list scroller" style="height: 250px;"
238   - data-handle-color="#637283">
239   - </ul>
240   - </li>
241   - </ul></li>
242   - <li class="dropdown dropdown-user dropdown-dark"><a
243   - href="javascript:;" class="dropdown-toggle"
244   - data-toggle="dropdown" data-hover="dropdown"
245   - data-close-others="true"> <span id="indexTopUName"
246   - class="username username-hide-on-mobile"
247   - style="vertical-align: middle;"> <i class="fa fa-user"></i></span>
248   - </a>
249   - <ul class="dropdown-menu dropdown-menu-default">
250   - <li><a href="javascript:;"> <i class="fa fa-user"></i>
251   - 我的信息
252   - </a></li>
253   - <li><a href="javascript:;" id="changePWD"> <i
254   - class="fa fa-unlock-alt"></i> 修改密码
255   - </a></li>
256   - <li class="divider"></li>
257   - <li><a href="javascript:;"> <i class="fa fa-lock"></i>
258   - 锁屏
259   - </a></li>
260   - <li><a href="/logout"> <i class="fa fa-key"></i> 注销登陆
261   - </a></li>
262   - </ul></li>
263   - </ul>
264   - </div>
265   - </div>
266   - </div>
  239 + </a>
  240 + <ul class="dropdown-menu" style="max-width: 345px; width: 345px;">
  241 + <li class="external">
  242 + <h3>
  243 + 今日 <span class="bold">0 条</span> 通知
  244 + </h3> <a href="javascript:;">查看全部</a>
  245 + </li>
  246 + <li>
  247 + <ul class="dropdown-menu-list scroller" style="height: 250px;"
  248 + data-handle-color="#637283">
  249 + </ul>
  250 + </li>
  251 + </ul></li>
  252 + <li class="dropdown dropdown-user dropdown-dark"><a
  253 + href="javascript:;" class="dropdown-toggle"
  254 + data-toggle="dropdown" data-hover="dropdown"
  255 + data-close-others="true"> <span id="indexTopUName"
  256 + class="username username-hide-on-mobile"
  257 + style="vertical-align: middle;"> <i class="fa fa-user"></i></span>
  258 + </a>
  259 + <ul class="dropdown-menu dropdown-menu-default">
  260 + <li><a href="javascript:;"> <i class="fa fa-user"></i>
  261 + 我的信息
  262 + </a></li>
  263 + <li><a href="javascript:;" id="changePWD"> <i
  264 + class="fa fa-unlock-alt"></i> 修改密码
  265 + </a></li>
  266 + <li class="divider"></li>
  267 + <li><a href="javascript:;"> <i class="fa fa-lock"></i>
  268 + 锁屏
  269 + </a></li>
  270 + <li><a href="/logout"> <i class="fa fa-key"></i> 注销登陆
  271 + </a></li>
  272 + </ul></li>
  273 + </ul>
  274 + </div>
  275 + </div>
  276 + </div>
267 277 </div>
268 278 <div class="page-container">
269   - <div class="page-sidebar-wrapper">
270   - <div class="page-sidebar navbar-collapse collapse">
271   - <ul class="page-sidebar-menu page-sidebar-menu-fixed"
272   - data-keep-expanded="false" data-auto-scroll="true"
273   - data-slide-speed="200" id="leftMenuSidebar">
274   - </ul>
275   - </div>
276   - </div>
277   - <div class="page-content-wrapper">
278   - <div id="pjax-container" class="page-content"></div>
279   -
280   - <div id="route-container">
281   - <div ng-app="ScheduleApp">
282   - <div ng-controller="ScheduleAppController">
283   -
284   - <!-- loading widget -->
285   - <div id="loadingWidget" class="flyover mask" loading-widget>
286   - <div class="alert alert-info">
287   - <strong>载入中......</strong>
288   - </div>
289   - </div>
290   -
291   - <div ui-view class="uv"></div>
292   - </div>
293   - </div>
294   - </div>
295   - </div>
  279 + <div class="page-sidebar-wrapper">
  280 + <div class="page-sidebar navbar-collapse collapse">
  281 + <ul class="page-sidebar-menu page-sidebar-menu-fixed"
  282 + data-keep-expanded="false" data-auto-scroll="true"
  283 + data-slide-speed="200" id="leftMenuSidebar">
  284 + </ul>
  285 + </div>
  286 + </div>
  287 + <div class="page-content-wrapper">
  288 + <div id="pjax-container" class="page-content"></div>
  289 +
  290 + <div id="route-container">
  291 + <div ng-app="ScheduleApp">
  292 + <div ng-controller="ScheduleAppController">
  293 +
  294 + <!-- loading widget -->
  295 + <div id="loadingWidget" class="flyover mask" loading-widget>
  296 + <div class="alert alert-info">
  297 + <strong>载入中......</strong>
  298 + </div>
  299 + </div>
  300 +
  301 + <div ui-view class="uv"></div>
  302 + </div>
  303 + </div>
  304 + </div>
  305 + </div>
296 306 </div>
297 307  
298 308 <script id="menu_list_temp" type="text/html">
299   - {{each list as group i}}
300   - <li class="heading">
301   - <h3 class="uppercase">{{group.name}}</h3>
302   - </li>
303   - {{each group.children as dir j}}
304   - <li class="nav-item">
305   - <a href="javascript:;" class="nav-link nav-toggle ">
306   - <i class="{{dir.icon}}"></i>
307   - <span class="title">{{dir.name}}</span>
308   - <span class="arrow"></span>
309   - </a>
310   - <ul class="sub-menu">
311   - {{each dir.children as module s}}
312   - <li class="nav-item ">
313   - {{if module.container=="pjax-container"}}
314   - <a href="/pages/{{module.path}}" class="nav-link " data-pjax>
315   - <span class="title">{{module.name}}</span>
316   - </a>
317   - {{else}}
318   - <a href="{{module.path}}" class="nav-link " data-angularjs>
319   - <span class="title">{{module.name}}</span>
320   - </a>
321   - {{/if}}
322   - </li>
323   - {{/each}}
324   - </ul>
325   - </li>
326   - {{/each}}
327   - {{/each}}
  309 + {{each list as group i}}
  310 + <li class="heading">
  311 + <h3 class="uppercase">{{group.name}}</h3>
  312 + </li>
  313 + {{each group.children as dir j}}
  314 + <li class="nav-item">
  315 + <a href="javascript:;" class="nav-link nav-toggle ">
  316 + <i class="{{dir.icon}}"></i>
  317 + <span class="title">{{dir.name}}</span>
  318 + <span class="arrow"></span>
  319 + </a>
  320 + <ul class="sub-menu">
  321 + {{each dir.children as module s}}
  322 + <li class="nav-item ">
  323 + {{if module.container=="pjax-container"}}
  324 + <a href="/pages/{{module.path}}" class="nav-link " data-pjax>
  325 + <span class="title">{{module.name}}</span>
  326 + </a>
  327 + {{else}}
  328 + <a href="{{module.path}}" class="nav-link " data-angularjs>
  329 + <span class="title">{{module.name}}</span>
  330 + </a>
  331 + {{/if}}
  332 + </li>
  333 + {{/each}}
  334 + </ul>
  335 + </li>
  336 + {{/each}}
  337 + {{/each}}
328 338  
329 339 </script>
330 340 <script>
331   - delete window.require;
332   - delete window.exports;
333   - delete window.module;
  341 + delete window.require;
  342 + delete window.exports;
  343 + delete window.module;
334 344 </script>
335 345 <!-- jQuery -->
336 346 <script src="/metronic_v4.5.4/plugins/jquery.min.js" data-exclude=1></script>
337 347 <!-- bootstrap -->
338 348 <script src="/metronic_v4.5.4/plugins/bootstrap/js/bootstrap.min.js"
339   - data-exclude=1></script>
  349 + data-exclude=1></script>
340 350 <script src="/pages/forms/statement/js/jquery.autocompleter.js"></script>
341 351 <script src="/pages/forms/statement/js/jquery.PrintArea.js"></script>
342 352 <!-- MTRONIC JS -->
343 353 <script src="/metronic_v4.5.4/scripts/app.min.js" data-exclude=1></script>
344 354 <script src="/metronic_v4.5.4/layout4/scripts/layout.min.js"
345   - data-exclude=1></script>
  355 + data-exclude=1></script>
346 356 <!-- 虚拟滚动条 -->
347 357 <script
348   - src="/metronic_v4.5.4/plugins/jquery-slimscroll/jquery.slimscroll.min.js"></script>
  358 + src="/metronic_v4.5.4/plugins/jquery-slimscroll/jquery.slimscroll.min.js"></script>
349 359 <!-- jsTree 树插件 -->
350 360 <script src="/metronic_v4.5.4/plugins/jstree/dist/jstree.min.js"></script>
351 361 <!-- bootstrap-hover-dropDown -->
352 362 <script
353   - src="/metronic_v4.5.4/plugins/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js"></script>
  363 + src="/metronic_v4.5.4/plugins/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js"></script>
354 364 <!-- jquery.validate 表单验证 -->
355 365 <script
356   - src="/metronic_v4.5.4/plugins/jquery-validation/js/jquery.validate.min.js"></script>
  366 + src="/metronic_v4.5.4/plugins/jquery-validation/js/jquery.validate.min.js"></script>
357 367 <script
358   - src="/metronic_v4.5.4/plugins/jquery-validation/js/localization/messages_zh.js"></script>
  368 + src="/metronic_v4.5.4/plugins/jquery-validation/js/localization/messages_zh.js"></script>
359 369 <!-- 向导式插件 -->
360 370 <script
361   - src="/metronic_v4.5.4//plugins/bootstrap-wizard/jquery.bootstrap.wizard.min.js"></script>
  371 + src="/metronic_v4.5.4//plugins/bootstrap-wizard/jquery.bootstrap.wizard.min.js"></script>
362 372 <!-- iCheck 单选框和复选框 -->
363 373 <script src="/metronic_v4.5.4/plugins/icheck/icheck.min.js"></script>
364 374 <!-- select2 下拉框 -->
365 375 <script src="/metronic_v4.5.4/plugins/select2/js/select2.full.min.js"></script>
366 376 <!-- MULTI SELECT 多选下拉框 -->
367 377 <script
368   - src="/metronic_v4.5.4/plugins/jquery-multi-select/js/jquery.multi-select.js"></script>
  378 + src="/metronic_v4.5.4/plugins/jquery-multi-select/js/jquery.multi-select.js"></script>
369 379 <!-- editable.js -->
370 380 <script
371   - src="/metronic_v4.5.4/plugins/bootstrap-editable/bootstrap-editable/js/bootstrap-editable.min.js"></script>
  381 + src="/metronic_v4.5.4/plugins/bootstrap-editable/bootstrap-editable/js/bootstrap-editable.min.js"></script>
372 382 <!-- PJAX -->
373 383 <script src="/assets/plugins/jquery.pjax.js"></script>
374 384 <!-- layer 弹层 -->
... ... @@ -393,7 +403,7 @@
393 403 <script src="/assets/plugins/pinyin.js"></script>
394 404 <!-- 日期控件 -->
395 405 <script
396   - src="/metronic_v4.5.4/plugins/bootstrap-datetimepicker-2/js/bootstrap-datetimepicker.min.js"></script>
  406 + src="/metronic_v4.5.4/plugins/bootstrap-datetimepicker-2/js/bootstrap-datetimepicker.min.js"></script>
397 407 <!-- 表格控件 -->
398 408 <script src="/metronic_v4.5.4/plugins/bootstrap-tagsinput/bootstrap-tagsinput.min.js"></script>
399 409 <!-- 统计图控件 -->
... ... @@ -404,145 +414,145 @@
404 414 <!-- tipso JS -->
405 415 <script src="/metronic_v4.5.4/plugins/tipso/js/tipso.js"></script>
406 416 <script data-exclude=1>
407   - //初始打开的片段地址
408   - var initFragment = "^_^initFragment^_^";
409   - //静态文件目录
410   - var dir = '/pages/';
411   - //片段容器
412   - var pjaxContainer = '#pjax-container'
413   - , angJsContainer = '#route-container';
414   -
415   - $(document).ajaxError(function (event, jqxhr, settings, thrownError) {
416   - if(jqxhr.status == 403){
417   - layer.closeAll();
418   - layer.alert(jqxhr.message?jqxhr.message:'访问被拒绝', {icon: 2, title: '操作失败'});
419   - }
420   - });
421   -
422   - $(function () {
423   - $.get('/user/currentUser', function (user) {
424   - $('#indexTopUName').text(user.userName);
425   - });
426   -
427   - //带 data-pjax 的链接由pjax加载
428   - $(document).pjax('a[data-pjax]', pjaxContainer);
429   -
430   - //pjax左菜单点击事件
431   - $(document).on('click', '#leftMenuSidebar a[data-pjax]', function () {
432   - setTitle(this);
433   -
434   - $('#leftMenuSidebar li.nav-item.active').removeClass('active');
435   - $(this).parent().addClass('active');
436   - showPjax();
437   - });
438   -
439   - //angularjs左菜单点击事件
440   - $(document).on('click', '#leftMenuSidebar a[data-angularjs]', function () {
441   - setTitle(this);
442   -
443   - $('#leftMenuSidebar li.nav-item.active').removeClass('active');
444   - $(this).parent().addClass('active');
445   - showAngJs();
446   - });
447   -
448   - //加载左菜单栏
449   - $get('/module/findByCurrentUser', null,
450   - function (ms) {
451   - var treeArray = createTreeData(ms);
452   - treeArray.sort(function (a, b) {
453   - return a.createDate - b.createDate;
454   - });
455   - var menuHtml = template('menu_list_temp', {list: treeArray});
456   - $('#leftMenuSidebar').html(menuHtml);
457   -
458   - //----------- 检查URL ----------------
459   - var h = location.hash;
460   - if (initFragment && initFragment != '') {
461   - showPjax();
462   - //普通片段
463   - loadPage(initFragment);
464   - //选中菜单
465   - $.each($('#leftMenuSidebar a'), function (i, item) {
466   - if (urlPattern($(item).attr('href'), initFragment)) {
467   - activeLeftMenu(item);
468   - }
469   - });
470   - } else if (h) {
471   - //angularjs片段
472   - showAngJs();
473   - //选中菜单
474   - $.each($('#leftMenuSidebar a'), function (i, item) {
475   - if ($(item).attr('href') == h) {
476   - activeLeftMenu(item);
477   - }
478   - });
479   - }
480   - else {
481   - //加载主页
482   - loadPage('/pages/home.html');
483   - }
484   - });
485   -
486   - //修改密码
487   - $('#changePWD').on('click', function () {
488   - $.get('/pages/permission/user/changePWD.html', function (content) {
489   - layer.open({
490   - type: 1,
491   - area: ['600px', '360px'],
492   - content: content,
493   - title: '修改密码',
494   - shift: 5,
495   - scrollbar: false,
496   - success: function () {
497   - }
498   - });
499   - });
500   - });
501   - });
502   -
503   - //modal关闭时销毁dom
504   - $(document).on('hidden.bs.modal', '.modal', function () {
505   - $(this).remove();
506   - });
507   -
508   - //pjax加载完成事件
509   - $(document).on('pjax:success', function () {
510   - var dicts = $(pjaxContainer).find('.nt-dictionary');
511   - dictionaryUtils.transformDom(dicts);
512   - });
513   -
514   - function loadPage(url) {
515   - $.pjax({url: url, container: pjaxContainer})
516   - }
517   -
518   - function urlPattern(a, b) {
519   - var r;
520   - try {
521   - r = a.substring(0, a.lastIndexOf('/')) == b.substring(0, b.lastIndexOf('/'));
522   - } catch (e) {
523   - r = false;
524   - }
525   - return r;
526   - }
527   -
528   - function showPjax() {
529   - $(angJsContainer).removeClass('page-content active').hide();
530   - $(pjaxContainer).addClass('page-content active');
531   - }
532   -
533   - function showAngJs() {
534   - $(pjaxContainer).html('').removeClass('page-content active').hide();
535   - $(angJsContainer).addClass('page-content active');
536   - }
537   -
538   - function activeLeftMenu(item) {
539   - $(item).parent('.nav-item').addClass('active').parent('.sub-menu').show().parent().addClass('open');
540   - setTitle(item);
541   - }
542   -
543   - function setTitle(menuItem){
544   - document.title = $('span.title', menuItem).text();
545   - }
  417 + //初始打开的片段地址
  418 + var initFragment = "^_^initFragment^_^";
  419 + //静态文件目录
  420 + var dir = '/pages/';
  421 + //片段容器
  422 + var pjaxContainer = '#pjax-container'
  423 + , angJsContainer = '#route-container';
  424 +
  425 + $(document).ajaxError(function (event, jqxhr, settings, thrownError) {
  426 + if(jqxhr.status == 403){
  427 + layer.closeAll();
  428 + layer.alert(jqxhr.message?jqxhr.message:'访问被拒绝', {icon: 2, title: '操作失败'});
  429 + }
  430 + });
  431 +
  432 + $(function () {
  433 + $.get('/user/currentUser', function (user) {
  434 + $('#indexTopUName').text(user.userName);
  435 + });
  436 +
  437 + //带 data-pjax 的链接由pjax加载
  438 + $(document).pjax('a[data-pjax]', pjaxContainer);
  439 +
  440 + //pjax左菜单点击事件
  441 + $(document).on('click', '#leftMenuSidebar a[data-pjax]', function () {
  442 + setTitle(this);
  443 +
  444 + $('#leftMenuSidebar li.nav-item.active').removeClass('active');
  445 + $(this).parent().addClass('active');
  446 + showPjax();
  447 + });
  448 +
  449 + //angularjs左菜单点击事件
  450 + $(document).on('click', '#leftMenuSidebar a[data-angularjs]', function () {
  451 + setTitle(this);
  452 +
  453 + $('#leftMenuSidebar li.nav-item.active').removeClass('active');
  454 + $(this).parent().addClass('active');
  455 + showAngJs();
  456 + });
  457 +
  458 + //加载左菜单栏
  459 + $get('/module/findByCurrentUser', null,
  460 + function (ms) {
  461 + var treeArray = createTreeData(ms);
  462 + treeArray.sort(function (a, b) {
  463 + return a.createDate - b.createDate;
  464 + });
  465 + var menuHtml = template('menu_list_temp', {list: treeArray});
  466 + $('#leftMenuSidebar').html(menuHtml);
  467 +
  468 + //----------- 检查URL ----------------
  469 + var h = location.hash;
  470 + if (initFragment && initFragment != '') {
  471 + showPjax();
  472 + //普通片段
  473 + loadPage(initFragment);
  474 + //选中菜单
  475 + $.each($('#leftMenuSidebar a'), function (i, item) {
  476 + if (urlPattern($(item).attr('href'), initFragment)) {
  477 + activeLeftMenu(item);
  478 + }
  479 + });
  480 + } else if (h) {
  481 + //angularjs片段
  482 + showAngJs();
  483 + //选中菜单
  484 + $.each($('#leftMenuSidebar a'), function (i, item) {
  485 + if ($(item).attr('href') == h) {
  486 + activeLeftMenu(item);
  487 + }
  488 + });
  489 + }
  490 + else {
  491 + //加载主页
  492 + loadPage('/pages/home.html');
  493 + }
  494 + });
  495 +
  496 + //修改密码
  497 + $('#changePWD').on('click', function () {
  498 + $.get('/pages/permission/user/changePWD.html', function (content) {
  499 + layer.open({
  500 + type: 1,
  501 + area: ['600px', '360px'],
  502 + content: content,
  503 + title: '修改密码',
  504 + shift: 5,
  505 + scrollbar: false,
  506 + success: function () {
  507 + }
  508 + });
  509 + });
  510 + });
  511 + });
  512 +
  513 + //modal关闭时销毁dom
  514 + $(document).on('hidden.bs.modal', '.modal', function () {
  515 + $(this).remove();
  516 + });
  517 +
  518 + //pjax加载完成事件
  519 + $(document).on('pjax:success', function () {
  520 + var dicts = $(pjaxContainer).find('.nt-dictionary');
  521 + dictionaryUtils.transformDom(dicts);
  522 + });
  523 +
  524 + function loadPage(url) {
  525 + $.pjax({url: url, container: pjaxContainer})
  526 + }
  527 +
  528 + function urlPattern(a, b) {
  529 + var r;
  530 + try {
  531 + r = a.substring(0, a.lastIndexOf('/')) == b.substring(0, b.lastIndexOf('/'));
  532 + } catch (e) {
  533 + r = false;
  534 + }
  535 + return r;
  536 + }
  537 +
  538 + function showPjax() {
  539 + $(angJsContainer).removeClass('page-content active').hide();
  540 + $(pjaxContainer).addClass('page-content active');
  541 + }
  542 +
  543 + function showAngJs() {
  544 + $(pjaxContainer).html('').removeClass('page-content active').hide();
  545 + $(angJsContainer).addClass('page-content active');
  546 + }
  547 +
  548 + function activeLeftMenu(item) {
  549 + $(item).parent('.nav-item').addClass('active').parent('.sub-menu').show().parent().addClass('open');
  550 + setTitle(item);
  551 + }
  552 +
  553 + function setTitle(menuItem){
  554 + document.title = $('span.title', menuItem).text();
  555 + }
546 556  
547 557 </script>
548 558 <!-- d3 -->
... ... @@ -557,31 +567,31 @@
557 567 <script src="/assets/js/angular.js" data-autocephaly=1></script>
558 568 <script src="/assets/bower_components/angular-i18n/angular-locale_zh-cn.js" data-autocephaly=1></script>
559 569 <script
560   - src="/assets/bower_components/angular-resource/angular-resource.min.js"
561   - data-exclude=1></script>
  570 + src="/assets/bower_components/angular-resource/angular-resource.min.js"
  571 + data-exclude=1></script>
562 572 <script
563   - src="/assets/bower_components/angular-sanitize/angular-sanitize.min.js"
564   - data-exclude=1></script>
  573 + src="/assets/bower_components/angular-sanitize/angular-sanitize.min.js"
  574 + data-exclude=1></script>
565 575 <script
566   - src="/assets/bower_components/angular-animate/angular-animate.min.js"
567   - data-exclude=1></script>
  576 + src="/assets/bower_components/angular-animate/angular-animate.min.js"
  577 + data-exclude=1></script>
568 578 <script
569   - src="/assets/bower_components/angular-touch/angular-touch.min.js"
570   - data-exclude=1></script>
  579 + src="/assets/bower_components/angular-touch/angular-touch.min.js"
  580 + data-exclude=1></script>
571 581 <script
572   - src="/assets/bower_components/angular-ui-router/release/angular-ui-router.min.js"
573   - data-exclude=1></script>
  582 + src="/assets/bower_components/angular-ui-router/release/angular-ui-router.min.js"
  583 + data-exclude=1></script>
574 584 <script
575   - src="/assets/bower_components/oclazyload/dist/ocLazyLoad.min.js"
576   - data-exclude=1></script>
  585 + src="/assets/bower_components/oclazyload/dist/ocLazyLoad.min.js"
  586 + data-exclude=1></script>
577 587 <script
578   - src="/assets/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"
579   - data-exclude=1></script>
  588 + src="/assets/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"
  589 + data-exclude=1></script>
580 590 <!-- handsontable相关js -->
581 591 <script
582   - src="/assets/bower_components/handsontable/dist/handsontable.full.js"></script>
  592 + src="/assets/bower_components/handsontable/dist/handsontable.full.js"></script>
583 593 <script
584   - src="/assets/bower_components/ngHandsontable/dist/ngHandsontable.js"></script>
  594 + src="/assets/bower_components/ngHandsontable/dist/ngHandsontable.js"></script>
585 595 <!-- sweetalert相关js -->
586 596 <script src="/assets/bower_components/sweetalert/dist/sweetalert.min.js"></script>
587 597 <script src="/assets/bower_components/ng-sweet-alert/ng-sweet-alert.js"></script>
... ... @@ -589,35 +599,35 @@
589 599 <!-- schedule计划调度AngularJS模块主JS -->
590 600 <script src="/pages/scheduleApp/module/common/main.js" data-exclude=1></script>
591 601 <script
592   - src="/pages/scheduleApp/module/common/prj-common-globalservice.js"
593   - data-exclude=1></script>
  602 + src="/pages/scheduleApp/module/common/prj-common-globalservice.js"
  603 + data-exclude=1></script>
594 604 <script src="/pages/scheduleApp/module/common/prj-common-filter.js"
595   - data-exclude=1></script>
  605 + data-exclude=1></script>
596 606 <script src="/pages/scheduleApp/module/common/prj-common-directive.js"
597   - data-exclude=1></script>
  607 + data-exclude=1></script>
598 608 <script
599   - src="/pages/scheduleApp/module/common/prj-common-ui-route-state.js"
600   - data-exclude=1></script>
  609 + src="/pages/scheduleApp/module/common/prj-common-ui-route-state.js"
  610 + data-exclude=1></script>
601 611  
602 612 <!-- 地图相关 -->
603 613 <!-- 百度 -->
604 614 <script
605   - src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"
606   - data-exclude=1></script>
  615 + src="http://api.map.baidu.com/api?v=2.0&ak=IGGrr4UjwIYzatoCRFKEL8sT"
  616 + data-exclude=1></script>
607 617 <script
608   - src="http://api.map.baidu.com/library/TrafficControl/1.4/src/TrafficControl_min.js"
609   - data-exclude=1></script>
  618 + src="http://api.map.baidu.com/library/TrafficControl/1.4/src/TrafficControl_min.js"
  619 + data-exclude=1></script>
610 620 <script type="text/javascript"
611   - src="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.js"
612   - data-exclude=1></script>
  621 + src="http://api.map.baidu.com/library/DrawingManager/1.4/src/DrawingManager_min.js"
  622 + data-exclude=1></script>
613 623 <script type="text/javascript"
614   - src="http://api.map.baidu.com/library/RichMarker/1.2/src/RichMarker_min.js "
615   - data-exclude=1></script>
  624 + src="http://api.map.baidu.com/library/RichMarker/1.2/src/RichMarker_min.js "
  625 + data-exclude=1></script>
616 626 <script src="/assets/js/baidu/TextIconOverlay.js" data-exclude=1></script>
617 627 <script src="/assets/js/baidu//MarkerClusterer.js" data-exclude=1></script>
618 628 <!-- 高德 -->
619 629 <script
620   - src="http://webapi.amap.com/maps?v=1.3&key=16cb1c5043847e09ef9edafdd77befda"
621   - data-exclude=1></script>
  630 + src="http://webapi.amap.com/maps?v=1.3&key=16cb1c5043847e09ef9edafdd77befda"
  631 + data-exclude=1></script>
622 632 </body>
623 633 </html>
624 634 \ No newline at end of file
... ...