Commit 7c05a1dd57e4f83eb32654688f4b873dce92927e
1 parent
d62a4b7c
智能时刻表单独列出一个模块,目录名称ttinfoManage2,配置相关的module,route等
Showing
11 changed files
with
1646 additions
and
64 deletions
src/main/resources/static/pages/base/timesmodel/add2.html
0 → 100644
| 1 | +<style> | |
| 2 | +.form-control:focus { | |
| 3 | + border-color: #53ced9; | |
| 4 | +} | |
| 5 | +.tagsDiv { | |
| 6 | + border: 1px solid #c2cad8; | |
| 7 | + margin-left: 15px; | |
| 8 | + padding: 4px 15px 4px 15px; | |
| 9 | + width: 50%; | |
| 10 | +} | |
| 11 | +</style> | |
| 12 | +<!-- 片段标题 START --> | |
| 13 | +<div class="page-head"> | |
| 14 | + <div class="page-title"> | |
| 15 | + <h1>智能时刻表明细制作建模</h1> | |
| 16 | + </div> | |
| 17 | +</div> | |
| 18 | +<!-- 片段标题 END --> | |
| 19 | +<!-- 线路信息导航栏组件 START --> | |
| 20 | +<ul class="page-breadcrumb breadcrumb"> | |
| 21 | + <li><a href="/pages/home.html" data-pjax>首页</a> <i class="fa fa-circle"></i></li> | |
| 22 | + <li><span class="active">运营计划管理</span> <i class="fa fa-circle"></i></li> | |
| 23 | + <li> | |
| 24 | + <a href="/#/ttInfoManage2">智能时刻表管理</a> | |
| 25 | + <i class="fa fa-circle"></i> | |
| 26 | + </li> | |
| 27 | + <li><span class="active">智能时刻表明细制作建模</span></li> | |
| 28 | +</ul> | |
| 29 | +<!-- 线路信息导航栏组件 END --> | |
| 30 | +<div class="portlet light bordered" id="form-wizard-info"> | |
| 31 | + <div class="portlet-title"> | |
| 32 | + <div class="caption"> | |
| 33 | + <i class="icon-equalizer font-red-sunglo"></i> | |
| 34 | + <span class="caption-subject font-red-sunglo bold uppercase">添加参数 | |
| 35 | + <span class="step-title"> 1 - 4 </span> | |
| 36 | + </span> | |
| 37 | + </div> | |
| 38 | + | |
| 39 | + <div class="actions"> | |
| 40 | + <div class="btn-group btn-group-devided" data-toggle="buttons"> | |
| 41 | + <a class="btn btn-circle blue openHaveSkb" href="javascript:;" data-pjax><i class="fa fa-check"></i> 打开现有时刻表明细</a> | |
| 42 | + </div> | |
| 43 | + <div class="btn-group btn-group-devided" data-toggle="buttons"> | |
| 44 | + <a class="btn btn-circle default" href="/pages/base/timesmodel/index.html" style="float: right;padding: 4px 23px;" data-pjax=""><i class="fa fa-reply"></i> 退出</a> | |
| 45 | + </div> | |
| 46 | + </div> | |
| 47 | + </div> | |
| 48 | + <div class="portlet-body form"> | |
| 49 | + <!-- START FORM 表单容器 --> | |
| 50 | + <form class="form-horizontal" id="submit_argus_form" action="/" method="POST" novalidate="novalidate"> | |
| 51 | + <div class="form-wizard"> | |
| 52 | + <div class="form-body"> | |
| 53 | + <ul class="nav nav-pills nav-justified steps"> | |
| 54 | + <li class="active"> | |
| 55 | + <a href="#tab1" data-toggle="tab" class="step" aria-expanded="true"> | |
| 56 | + <span class="number"> 1 </span> | |
| 57 | + <span class="desc"> | |
| 58 | + <i class="fa fa-check"></i> 选择时刻表 </span> | |
| 59 | + </a> | |
| 60 | + </li> | |
| 61 | + <li> | |
| 62 | + <a href="#tab2" data-toggle="tab" class="step"> | |
| 63 | + <span class="number"> 2 </span> | |
| 64 | + <span class="desc"> | |
| 65 | + <i class="fa fa-check"></i> 选择参数方案 </span> | |
| 66 | + </a> | |
| 67 | + </li> | |
| 68 | + <li> | |
| 69 | + <a href="#tab3" data-toggle="tab" class="step active"> | |
| 70 | + <span class="number"> 3 </span> | |
| 71 | + <span class="desc"> | |
| 72 | + <i class="fa fa-check"></i> 参数详情 </span> | |
| 73 | + </a> | |
| 74 | + </li> | |
| 75 | + <li> | |
| 76 | + <a href="#tab4" data-toggle="tab" class="step"> | |
| 77 | + <span class="number"> 4 </span> | |
| 78 | + <span class="desc"> | |
| 79 | + <i class="fa fa-check"></i> 确认 </span> | |
| 80 | + </a> | |
| 81 | + </li> | |
| 82 | + </ul> | |
| 83 | + | |
| 84 | + <!-- 进度条 --> | |
| 85 | + <div id="bar" class="progress progress-striped" role="progressbar"> | |
| 86 | + <div class="progress-bar progress-bar-success" style="width: 25%;"></div> | |
| 87 | + </div> | |
| 88 | + | |
| 89 | + <div class="tab-content"> | |
| 90 | + <div class="alert alert-danger display-hide"> | |
| 91 | + <button class="close" data-close="alert"></button> | |
| 92 | + 您的输入有误,请检查下面的输入项 | |
| 93 | + </div> | |
| 94 | + <div class="alert alert-success display-none"> | |
| 95 | + <button class="close" data-dismiss="alert"></button> | |
| 96 | + 验证成功! | |
| 97 | + </div> | |
| 98 | + <!-- 线路名称 --> | |
| 99 | + <div class="tab-pane active" id="tab1"> | |
| 100 | + <h3 class="block"> 选择时刻表 </h3> | |
| 101 | + <!-- 表单分组组件 form-group START --> | |
| 102 | + <div class="form-group"> | |
| 103 | + <!-- 时刻表名称 (* 必填项) START --> | |
| 104 | + <div class="col-md-6"> | |
| 105 | + <label class="control-label col-md-5"> | |
| 106 | + <span class="required"> * </span> 时刻表名称 : | |
| 107 | + </label> | |
| 108 | + <div class="col-md-6"> | |
| 109 | + <select name="skbName" class="form-control input-medium" id="skbNameSelect"></select> | |
| 110 | + </div> | |
| 111 | + </div> | |
| 112 | + <!-- 时刻表名称 (* 必填项) END --> | |
| 113 | + <!-- 线路名称 (* 必填项) START --> | |
| 114 | + <div class="col-md-6"> | |
| 115 | + <label class="control-label col-md-5"> | |
| 116 | + <span class="required"> * </span> 线路名称 : | |
| 117 | + </label> | |
| 118 | + <div class="col-md-6"> | |
| 119 | + <select name="lineName" class="form-control input-medium" id="lineSelect"></select> | |
| 120 | + </div> | |
| 121 | + </div> | |
| 122 | + <!-- 线路名称 (* 必填项) END --> | |
| 123 | + | |
| 124 | + </div> | |
| 125 | + | |
| 126 | + <div class="form-group"> | |
| 127 | + <!-- 线路版本 --> | |
| 128 | + <div class="col-md-6"> | |
| 129 | + <label class="control-label col-md-5"> | |
| 130 | + <span class="required"> * </span> 站点路由版本 : | |
| 131 | + </label> | |
| 132 | + <div class="col-md-6"> | |
| 133 | + <select name="lineVersion" class="form-control input-medium" id="lineVersionSelect"></select> | |
| 134 | + </div> | |
| 135 | + </div> | |
| 136 | + </div> | |
| 137 | + | |
| 138 | + <!-- 表单分组组件 form-group END --> | |
| 139 | + </div> | |
| 140 | + <!-- 获取参数 --> | |
| 141 | + <div class="tab-pane" id="tab2"> | |
| 142 | + <h3 class="block"> 参数方案 </h3> | |
| 143 | + <!-- 获取参数 --> | |
| 144 | + <div class="form-group"> | |
| 145 | + <label class="col-md-3 control-label"> <span class="required"> * </span> 选择参数方案:</label> | |
| 146 | + <div class="col-md-9"> | |
| 147 | + <div class="icheck-list"> | |
| 148 | + <label > | |
| 149 | + <input type="radio" class="icheck" name="baseRes" value=1> 班型/人次/车辆 | |
| 150 | + </label> | |
| 151 | + <label> | |
| 152 | + <input type="radio" class="icheck" name="baseRes" value=2 > 发车间隔分析(旧:一步调整) | |
| 153 | + </label> | |
| 154 | + <label> | |
| 155 | + <input type="radio" class="icheck" name="baseRes" value=3 checked> 发车间隔分析(新:增量调整-单向进出场) | |
| 156 | + </label> | |
| 157 | + <label> | |
| 158 | + <input type="radio" class="icheck" name="baseRes" value=0> 客流大数据分析 | |
| 159 | + </label> | |
| 160 | + </div> | |
| 161 | + </div> | |
| 162 | + </div> | |
| 163 | + <!-- 客容总量 --> | |
| 164 | + <!-- <div class="form-group" id="krlGroup"> | |
| 165 | + <label class="col-md-3 control-label"><span class="required"> * </span>客容总量 :</label> | |
| 166 | + <div class="col-md-9"> | |
| 167 | + <input type="text" class="form-control input-medium" name="krl" id="krlInput" placeholder="客容总量"> | |
| 168 | + </div> | |
| 169 | + </div> --> | |
| 170 | + </div> | |
| 171 | + <!-- 参数详情 --> | |
| 172 | + <div class="tab-pane" id="tab3"> | |
| 173 | + <h3 class="block"> 参数详情 </h3> | |
| 174 | + </div> | |
| 175 | + <!-- 确定提交资料信息 --> | |
| 176 | + <div class="tab-pane" id="tab4"> | |
| 177 | + <h3 class="block"> 确认您提交的参数信息 </h3> | |
| 178 | + </div> | |
| 179 | + </div> | |
| 180 | + </div> | |
| 181 | + <div class="form-actions"> | |
| 182 | + <div class="row"> | |
| 183 | + <div class="col-md-offset-5 col-md-9"> | |
| 184 | + <a href="javascript:;" class="btn default button-previous disabled" style="display: none;"> | |
| 185 | + <i class="fa fa-angle-left"></i> 返回 </a> | |
| 186 | + <a href="javascript:;" class="btn btn-outline green button-next"> 下一步 | |
| 187 | + <i class="fa fa-angle-right"></i> | |
| 188 | + </a> | |
| 189 | + <a href="javascript:;" class="btn green button-submit" style="display: none;"> 生成时刻模型 | |
| 190 | + <i class="fa fa-check"></i> | |
| 191 | + </a> | |
| 192 | + </div> | |
| 193 | + </div> | |
| 194 | + </div> | |
| 195 | + </div> | |
| 196 | + </form> | |
| 197 | + <!-- END FORM--> | |
| 198 | + </div> | |
| 199 | +</div> | |
| 200 | +<script src="/pages/base/timesmodel/js/add-form-wizard.js"></script> | |
| 201 | +<script src="/pages/base/timesmodel/js/add-form-reload.js"></script> | |
| 202 | +<script src="/pages/base/timesmodel/js/tagsinput.js"></script> | |
| 0 | 203 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/base/timesmodel/js/v2_2/main_v2_2.js
| ... | ... | @@ -69,72 +69,79 @@ var Main_v2_2 = function() { |
| 69 | 69 | $('.exportAddXlsx').off('click'); |
| 70 | 70 | |
| 71 | 71 | $('.exportAddXls').on('click', function() { |
| 72 | - var aInfos = { | |
| 73 | - "lpObjList": Main_v2_2_excel[0](aInternalLpObj, _paramObj), // 路牌班次信息列表 | |
| 74 | - "statInfoList": Main_v2_2_excel[1](aInternalLpObj, _paramObj), // 统计项目列表 | |
| 75 | - "parameterInfoList" : Main_v2_2_excel[2](_paramObj) // 参数对象 | |
| 76 | - }; | |
| 77 | - | |
| 78 | - console.log(aInfos); | |
| 79 | - | |
| 80 | - $(".exportAdd").addClass("disabled"); | |
| 81 | - $(".exportAddSpan").html("正在导出..."); | |
| 82 | - | |
| 83 | - // 提交 | |
| 84 | - $.ajax({ | |
| 85 | - type: 'POST', | |
| 86 | - url: "/tidc/exportDTDFile/xls", | |
| 87 | - dataType: 'binary', | |
| 88 | - contentType: "application/json", | |
| 89 | - data: JSON.stringify(aInfos), | |
| 90 | - success: function(data){ | |
| 91 | - Main_v2.downloadFile(data, "application/octet-stream", "时刻表信息.xls"); | |
| 92 | - | |
| 93 | - $(".exportAdd").removeClass("disabled"); | |
| 94 | - $(".exportAddSpan").html(" 导出数据"); | |
| 95 | - }, | |
| 96 | - error: function(xhr, type){ | |
| 97 | - alert('错误:TODO'); | |
| 98 | - | |
| 99 | - $(".exportAdd").removeClass("disabled"); | |
| 100 | - $(".exportAddSpan").html(" 导出数据"); | |
| 101 | - } | |
| 102 | - }); | |
| 72 | + alert("测试中....."); | |
| 103 | 73 | }); |
| 104 | - | |
| 105 | 74 | $('.exportAddXlsx').on('click', function() { |
| 106 | - var aInfos = { | |
| 107 | - "lpObjList": _funCalcuExportData_lpObjList(aInternalLpObj), // 路牌班次信息列表 | |
| 108 | - "statInfoList": _funCalcuExportData_statInfoList(aInternalLpObj), // 统计项目列表 | |
| 109 | - "parameterInfoList" : __funCalcuExportData_paramInfoList() // 参数对象 | |
| 110 | - }; | |
| 111 | - | |
| 112 | - console.log(aInfos); | |
| 113 | - | |
| 114 | - $(".exportAdd").addClass("disabled"); | |
| 115 | - $(".exportAddSpan").html("正在导出..."); | |
| 116 | - | |
| 117 | - // 提交 | |
| 118 | - $.ajax({ | |
| 119 | - type: 'POST', | |
| 120 | - url: "/tidc/exportDTDFile/xlsx", | |
| 121 | - dataType: 'binary', | |
| 122 | - contentType: "application/json", | |
| 123 | - data: JSON.stringify(aInfos), | |
| 124 | - success: function(data){ | |
| 125 | - Main_v2.downloadFile(data, "application/octet-stream", "时刻表信息.xlsx"); | |
| 126 | - | |
| 127 | - $(".exportAdd").removeClass("disabled"); | |
| 128 | - $(".exportAddSpan").html(" 导出数据"); | |
| 129 | - }, | |
| 130 | - error: function(xhr, type){ | |
| 131 | - alert('错误:TODO'); | |
| 132 | - | |
| 133 | - $(".exportAdd").removeClass("disabled"); | |
| 134 | - $(".exportAddSpan").html(" 导出数据"); | |
| 135 | - } | |
| 136 | - }); | |
| 75 | + alert("测试中....."); | |
| 137 | 76 | }); |
| 77 | + | |
| 78 | + // $('.exportAddXls').on('click', function() { | |
| 79 | + // var aInfos = { | |
| 80 | + // "lpObjList": Main_v2_2_excel[0](aInternalLpObj, _paramObj), // 路牌班次信息列表 | |
| 81 | + // "statInfoList": Main_v2_2_excel[1](aInternalLpObj, _paramObj), // 统计项目列表 | |
| 82 | + // "parameterInfoList" : Main_v2_2_excel[2](_paramObj) // 参数对象 | |
| 83 | + // }; | |
| 84 | + // | |
| 85 | + // console.log(aInfos); | |
| 86 | + // | |
| 87 | + // $(".exportAdd").addClass("disabled"); | |
| 88 | + // $(".exportAddSpan").html("正在导出..."); | |
| 89 | + // | |
| 90 | + // // 提交 | |
| 91 | + // $.ajax({ | |
| 92 | + // type: 'POST', | |
| 93 | + // url: "/tidc/exportDTDFile/xls", | |
| 94 | + // dataType: 'binary', | |
| 95 | + // contentType: "application/json", | |
| 96 | + // data: JSON.stringify(aInfos), | |
| 97 | + // success: function(data){ | |
| 98 | + // Main_v2.downloadFile(data, "application/octet-stream", "时刻表信息.xls"); | |
| 99 | + // | |
| 100 | + // $(".exportAdd").removeClass("disabled"); | |
| 101 | + // $(".exportAddSpan").html(" 导出数据"); | |
| 102 | + // }, | |
| 103 | + // error: function(xhr, type){ | |
| 104 | + // alert('错误:TODO'); | |
| 105 | + // | |
| 106 | + // $(".exportAdd").removeClass("disabled"); | |
| 107 | + // $(".exportAddSpan").html(" 导出数据"); | |
| 108 | + // } | |
| 109 | + // }); | |
| 110 | + // }); | |
| 111 | + // | |
| 112 | + // $('.exportAddXlsx').on('click', function() { | |
| 113 | + // var aInfos = { | |
| 114 | + // "lpObjList": _funCalcuExportData_lpObjList(aInternalLpObj), // 路牌班次信息列表 | |
| 115 | + // "statInfoList": _funCalcuExportData_statInfoList(aInternalLpObj), // 统计项目列表 | |
| 116 | + // "parameterInfoList" : __funCalcuExportData_paramInfoList() // 参数对象 | |
| 117 | + // }; | |
| 118 | + // | |
| 119 | + // console.log(aInfos); | |
| 120 | + // | |
| 121 | + // $(".exportAdd").addClass("disabled"); | |
| 122 | + // $(".exportAddSpan").html("正在导出..."); | |
| 123 | + // | |
| 124 | + // // 提交 | |
| 125 | + // $.ajax({ | |
| 126 | + // type: 'POST', | |
| 127 | + // url: "/tidc/exportDTDFile/xlsx", | |
| 128 | + // dataType: 'binary', | |
| 129 | + // contentType: "application/json", | |
| 130 | + // data: JSON.stringify(aInfos), | |
| 131 | + // success: function(data){ | |
| 132 | + // Main_v2.downloadFile(data, "application/octet-stream", "时刻表信息.xlsx"); | |
| 133 | + // | |
| 134 | + // $(".exportAdd").removeClass("disabled"); | |
| 135 | + // $(".exportAddSpan").html(" 导出数据"); | |
| 136 | + // }, | |
| 137 | + // error: function(xhr, type){ | |
| 138 | + // alert('错误:TODO'); | |
| 139 | + // | |
| 140 | + // $(".exportAdd").removeClass("disabled"); | |
| 141 | + // $(".exportAddSpan").html(" 导出数据"); | |
| 142 | + // } | |
| 143 | + // }); | |
| 144 | + // }); | |
| 138 | 145 | }, |
| 139 | 146 | |
| 140 | 147 | downloadFile: function (data, mimeType, fileName) { | ... | ... |
src/main/resources/static/pages/scheduleApp/Gruntfile.js
| ... | ... | @@ -114,7 +114,8 @@ module.exports = function (grunt) { |
| 114 | 114 | 'module/core/schedulePlanManage/report/ext/route.js', // 排班计划明日运营模块Ext |
| 115 | 115 | 'module/core/scheduleRuleManage/route.js', // 排班规则管理模块 |
| 116 | 116 | 'module/core/ttInfoManage/route.js', // 时刻表管理模块 |
| 117 | - 'module/core/ttInfoManage/detailedit/route.js' // 时刻表明细管理模块 | |
| 117 | + 'module/core/ttInfoManage/detailedit/route.js', // 时刻表明细管理模块 | |
| 118 | + 'module/core/ttInfoManage2/route.js' // 智能时刻表管理模块 | |
| 118 | 119 | ], |
| 119 | 120 | dest: 'module/common/prj-common-ui-route-state.js' |
| 120 | 121 | }, | ... | ... |
src/main/resources/static/pages/scheduleApp/module/common/prj-common-ui-route-state.js
| ... | ... | @@ -1287,4 +1287,99 @@ ScheduleApp.config([ |
| 1287 | 1287 | ; |
| 1288 | 1288 | |
| 1289 | 1289 | } |
| 1290 | +]); | |
| 1291 | +// ui route 配置 | |
| 1292 | + | |
| 1293 | +/** 时刻表管理配置route */ | |
| 1294 | +ScheduleApp.config([ | |
| 1295 | + '$stateProvider', | |
| 1296 | + '$urlRouterProvider', | |
| 1297 | + function($stateProvider, $urlRouterProvider) { | |
| 1298 | + // 默认路由 | |
| 1299 | + //$urlRouterProvider.otherwise('/busConfig.html'); | |
| 1300 | + | |
| 1301 | + $stateProvider | |
| 1302 | + .state("ttInfoManage2", { // index页面 | |
| 1303 | + url: '/ttInfoManage2', | |
| 1304 | + views: { | |
| 1305 | + "": { | |
| 1306 | + templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/index.html' | |
| 1307 | + }, | |
| 1308 | + "ttInfoManage2_list@ttInfoManage2": { | |
| 1309 | + templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/list.html' | |
| 1310 | + } | |
| 1311 | + }, | |
| 1312 | + | |
| 1313 | + resolve: { | |
| 1314 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 1315 | + return $ocLazyLoad.load({ | |
| 1316 | + name: 'ttInfoManage2_module', | |
| 1317 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 1318 | + files: [ | |
| 1319 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 1320 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 1321 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 1322 | + ] | |
| 1323 | + }); | |
| 1324 | + }] | |
| 1325 | + } | |
| 1326 | + }) | |
| 1327 | + .state("ttInfoManage2_form", { // 添加时刻表信息form | |
| 1328 | + url: '/ttInfoManage2_form', | |
| 1329 | + views: { | |
| 1330 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/form.html'} | |
| 1331 | + }, | |
| 1332 | + resolve: { | |
| 1333 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 1334 | + return $ocLazyLoad.load({ | |
| 1335 | + name: 'ttInfoManage2_form_module', | |
| 1336 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 1337 | + files: [ | |
| 1338 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 1339 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 1340 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 1341 | + ] | |
| 1342 | + }); | |
| 1343 | + }] | |
| 1344 | + } | |
| 1345 | + }) | |
| 1346 | + .state("ttInfoManage2_edit", { // 修改时刻表信息form | |
| 1347 | + url: '/ttInfoManage2_edit/:id', | |
| 1348 | + views: { | |
| 1349 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/edit.html'} | |
| 1350 | + }, | |
| 1351 | + resolve: { | |
| 1352 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 1353 | + return $ocLazyLoad.load({ | |
| 1354 | + name: 'ttInfoManage2_edit_module', | |
| 1355 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 1356 | + files: [ | |
| 1357 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 1358 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 1359 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 1360 | + ] | |
| 1361 | + }); | |
| 1362 | + }] | |
| 1363 | + } | |
| 1364 | + }) | |
| 1365 | + .state("ttInfoManage2_detail", { // 时刻表详细信息 | |
| 1366 | + url: '/ttInfoManage2_detail/:id', | |
| 1367 | + views: { | |
| 1368 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/detail.html'} | |
| 1369 | + }, | |
| 1370 | + resolve: { | |
| 1371 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 1372 | + return $ocLazyLoad.load({ | |
| 1373 | + name: 'ttInfoManage2_detail_module', | |
| 1374 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 1375 | + files: [ | |
| 1376 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 1377 | + ] | |
| 1378 | + }); | |
| 1379 | + }] | |
| 1380 | + } | |
| 1381 | + }) | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + } | |
| 1290 | 1385 | ]); |
| 1291 | 1386 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/detail.html
0 → 100644
| 1 | +<div class="page-head"> | |
| 2 | + <div class="page-title"> | |
| 3 | + <h1>智能时刻表管理</h1> | |
| 4 | + </div> | |
| 5 | +</div> | |
| 6 | + | |
| 7 | +<ul class="page-breadcrumb breadcrumb"> | |
| 8 | + <li> | |
| 9 | + <a href="/pages/home.html" data-pjax>首页</a> | |
| 10 | + <i class="fa fa-circle"></i> | |
| 11 | + </li> | |
| 12 | + <li> | |
| 13 | + <span class="active">运营计划管理</span> | |
| 14 | + <i class="fa fa-circle"></i> | |
| 15 | + </li> | |
| 16 | + <li> | |
| 17 | + <a ui-sref="ttInfoManage2">智能时刻表管理</a> | |
| 18 | + <i class="fa fa-circle"></i> | |
| 19 | + </li> | |
| 20 | + <li> | |
| 21 | + <span class="active">时刻表基础信息</span> | |
| 22 | + </li> | |
| 23 | +</ul> | |
| 24 | + | |
| 25 | +<div class="portlet light bordered" ng-controller="TtInfoManage2DetailCtrl as ctrl"> | |
| 26 | + <div class="portlet-title"> | |
| 27 | + <div class="caption"> | |
| 28 | + <i class="icon-equalizer font-red-sunglo"></i> <span | |
| 29 | + class="caption-subject font-red-sunglo bold uppercase" | |
| 30 | + ng-bind="ctrl.title"></span> | |
| 31 | + </div> | |
| 32 | + </div> | |
| 33 | + | |
| 34 | + <div class="portlet-body form"> | |
| 35 | + <form class="form-horizontal" novalidate name="myForm"> | |
| 36 | + <!--<div class="alert alert-danger display-hide">--> | |
| 37 | + <!--<button class="close" data-close="alert"></button>--> | |
| 38 | + <!--您的输入有误,请检查下面的输入项--> | |
| 39 | + <!--</div>--> | |
| 40 | + | |
| 41 | + | |
| 42 | + <!-- 其他信息放置在这里 --> | |
| 43 | + <div class="form-body"> | |
| 44 | + <div class="form-group has-success has-feedback"> | |
| 45 | + <label class="col-md-2 control-label">线路*:</label> | |
| 46 | + <div class="col-md-4"> | |
| 47 | + <input type="text" class="form-control" | |
| 48 | + name="xl" ng-model="ctrl.ttInfoManageForDetail.xl.name" readonly/> | |
| 49 | + </div> | |
| 50 | + </div> | |
| 51 | + | |
| 52 | + <div class="form-group has-success has-feedback"> | |
| 53 | + <label class="col-md-2 control-label">线路走向*:</label> | |
| 54 | + <div class="col-md-4"> | |
| 55 | + <sa-Radiogroup model="ctrl.ttInfoManageForDetail.xlDir" dicgroup="LineTrend2" name="xlDir" disabled="true"></sa-Radiogroup> | |
| 56 | + </div> | |
| 57 | + </div> | |
| 58 | + | |
| 59 | + <div class="form-group has-success has-feedback"> | |
| 60 | + <label class="col-md-2 control-label">时刻表名字*:</label> | |
| 61 | + <div class="col-md-4"> | |
| 62 | + <input type="text" class="form-control" | |
| 63 | + name="name" ng-model="ctrl.ttInfoManageForDetail.name" readonly/> | |
| 64 | + </div> | |
| 65 | + </div> | |
| 66 | + | |
| 67 | + <div class="form-group has-success has-feedback"> | |
| 68 | + <label class="col-md-2 control-label">启用日期*:</label> | |
| 69 | + <div class="col-md-4"> | |
| 70 | + <input type="text" class="form-control" | |
| 71 | + name="qyrq" uib-datepicker-popup="yyyy年MM月dd日" | |
| 72 | + ng-model="ctrl.ttInfoManageForDetail.qyrq" readonly/> | |
| 73 | + </div> | |
| 74 | + </div> | |
| 75 | + | |
| 76 | + <div class="form-group has-success has-feedback"> | |
| 77 | + <label class="col-md-2 control-label">是否启用*:</label> | |
| 78 | + <div class="col-md-4"> | |
| 79 | + <sa-Radiogroup model="ctrl.ttInfoManageForDetail.isEnableDisTemplate" dicgroup="truefalseType" name="isEnableDisTemplate" disabled="true"></sa-Radiogroup> | |
| 80 | + </div> | |
| 81 | + | |
| 82 | + </div> | |
| 83 | + | |
| 84 | + <!--<div class="form-group">--> | |
| 85 | + <!--<label class="col-md-2 control-label">路牌数量:</label>--> | |
| 86 | + <!--<div class="col-md-4">--> | |
| 87 | + <!--<input type="number" class="form-control" ng-value="ctrl.ttInfoManageForDetail.lpCount"--> | |
| 88 | + <!--name="lpCount" placeholder="请输入路牌数" min="1" readonly/>--> | |
| 89 | + <!--</div>--> | |
| 90 | + <!--</div>--> | |
| 91 | + | |
| 92 | + <!--<div class="form-group">--> | |
| 93 | + <!--<label class="col-md-2 control-label">营运圈数:</label>--> | |
| 94 | + <!--<div class="col-md-4">--> | |
| 95 | + <!--<input type="number" class="form-control" ng-value="ctrl.ttInfoManageForDetail.loopCount"--> | |
| 96 | + <!--name="loopCount" placeholder="请输入圈数" min="1" readonly/>--> | |
| 97 | + <!--</div>--> | |
| 98 | + <!--</div>--> | |
| 99 | + | |
| 100 | + <!--<div class="form-group">--> | |
| 101 | + <!--<label class="col-md-2 control-label">停车场:</label>--> | |
| 102 | + <!--<div class="col-md-4">--> | |
| 103 | + <!--<input type="text" class="form-control" ng-value="ctrl.ttInfoManageForDetail.xl.carParkCode | dict:'CarPark':'未知' "--> | |
| 104 | + <!--name="carParkCode" readonly/>--> | |
| 105 | + <!--</div>--> | |
| 106 | + <!--</div>--> | |
| 107 | + | |
| 108 | + <div class="form-group"> | |
| 109 | + <label class="col-md-2 control-label">常规有效日:</label> | |
| 110 | + <div class="col-md-6"> | |
| 111 | + <sa-Checkboxgroup model="ctrl.timeTableManageForForm" | |
| 112 | + name="rule_days" | |
| 113 | + dcvalue="{{ctrl.ttInfoManageForDetail.rule_days}}" | |
| 114 | + disabled > | |
| 115 | + </sa-Checkboxgroup> | |
| 116 | + </div> | |
| 117 | + </div> | |
| 118 | + | |
| 119 | + <div class="form-group"> | |
| 120 | + <label class="col-md-2 control-label">特殊有效日:</label> | |
| 121 | + <div class="col-md-6"> | |
| 122 | + <sa-Dategroup model="ctrl.ttInfoManageForDetail" | |
| 123 | + name="special_days" | |
| 124 | + dcvalue="{{ctrl.timeTableManageForDetail.special_days}}" | |
| 125 | + disabled | |
| 126 | + > | |
| 127 | + </sa-Dategroup> | |
| 128 | + </div> | |
| 129 | + </div> | |
| 130 | + | |
| 131 | + <!--<div class="form-group">--> | |
| 132 | + <!--<label class="col-md-2 control-label">备注:</label>--> | |
| 133 | + <!--</div>--> | |
| 134 | + | |
| 135 | + <div class="form-group"> | |
| 136 | + <label class="col-md-2 control-label">创建人:</label> | |
| 137 | + <div class="col-md-4"> | |
| 138 | + <input type="text" class="form-control" ng-value="ctrl.ttInfoManageForDetail.createBy.name" | |
| 139 | + name="createBy" readonly/> | |
| 140 | + </div> | |
| 141 | + </div> | |
| 142 | + | |
| 143 | + <div class="form-group"> | |
| 144 | + <label class="col-md-2 control-label">创建时间:</label> | |
| 145 | + <div class="col-md-4"> | |
| 146 | + <input type="text" class="form-control" ng-model="ctrl.ttInfoManageForDetail.createDate" | |
| 147 | + name="createDate" uib-datepicker-popup="yyyy年MM月dd日 hh:mm:ss" | |
| 148 | + readonly/> | |
| 149 | + </div> | |
| 150 | + </div> | |
| 151 | + | |
| 152 | + <div class="form-group"> | |
| 153 | + <label class="col-md-2 control-label">更新人:</label> | |
| 154 | + <div class="col-md-4"> | |
| 155 | + <input type="text" class="form-control" ng-value="ctrl.ttInfoManageForDetail.updateBy.name" | |
| 156 | + name="updateBy" readonly/> | |
| 157 | + </div> | |
| 158 | + </div> | |
| 159 | + | |
| 160 | + <div class="form-group"> | |
| 161 | + <label class="col-md-2 control-label">更新时间:</label> | |
| 162 | + <div class="col-md-4"> | |
| 163 | + <input type="text" class="form-control" ng-model="ctrl.ttInfoManageForDetail.updateDate" | |
| 164 | + name="updateDate" uib-datepicker-popup="yyyy年MM月dd日 hh:mm:ss" | |
| 165 | + readonly/> | |
| 166 | + </div> | |
| 167 | + </div> | |
| 168 | + | |
| 169 | + <!-- 其他form-group --> | |
| 170 | + | |
| 171 | + </div> | |
| 172 | + | |
| 173 | + </form> | |
| 174 | + | |
| 175 | + </div> | |
| 176 | + | |
| 177 | +</div> | |
| 0 | 178 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/edit.html
0 → 100644
| 1 | +<div class="page-head"> | |
| 2 | + <div class="page-title"> | |
| 3 | + <h1>智能时刻表管理</h1> | |
| 4 | + </div> | |
| 5 | +</div> | |
| 6 | + | |
| 7 | +<ul class="page-breadcrumb breadcrumb"> | |
| 8 | + <li> | |
| 9 | + <a href="/pages/home.html" data-pjax>首页</a> | |
| 10 | + <i class="fa fa-circle"></i> | |
| 11 | + </li> | |
| 12 | + <li> | |
| 13 | + <span class="active">运营计划管理</span> | |
| 14 | + <i class="fa fa-circle"></i> | |
| 15 | + </li> | |
| 16 | + <li> | |
| 17 | + <a ui-sref="ttInfoManage2">智能时刻表管理</a> | |
| 18 | + <i class="fa fa-circle"></i> | |
| 19 | + </li> | |
| 20 | + <li> | |
| 21 | + <span class="active">修改时刻表基础信息</span> | |
| 22 | + </li> | |
| 23 | +</ul> | |
| 24 | + | |
| 25 | +<div class="portlet light bordered" ng-controller="TtInfoManage2FormCtrl as ctrl"> | |
| 26 | + <div class="portlet-title"> | |
| 27 | + <div class="caption"> | |
| 28 | + <i class="icon-equalizer font-red-sunglo"></i> <span | |
| 29 | + class="caption-subject font-red-sunglo bold uppercase">表单</span> | |
| 30 | + </div> | |
| 31 | + </div> | |
| 32 | + | |
| 33 | + <div class="portlet-body form"> | |
| 34 | + <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> | |
| 35 | + <!--<div class="alert alert-danger display-hide">--> | |
| 36 | + <!--<button class="close" data-close="alert"></button>--> | |
| 37 | + <!--您的输入有误,请检查下面的输入项--> | |
| 38 | + <!--</div>--> | |
| 39 | + | |
| 40 | + | |
| 41 | + <!-- 其他信息放置在这里 --> | |
| 42 | + <div class="form-body"> | |
| 43 | + <div class="form-group has-success has-feedback"> | |
| 44 | + <label class="col-md-2 control-label">线路*:</label> | |
| 45 | + <div class="col-md-3"> | |
| 46 | + <sa-Select5 name="xl" | |
| 47 | + model="ctrl.ttInfoManageForForm" | |
| 48 | + cmaps="{'xl.id' : 'id'}" | |
| 49 | + dcname="xl.id" | |
| 50 | + icname="id" | |
| 51 | + dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" | |
| 52 | + iterobjname="item" | |
| 53 | + iterobjexp="item.name" | |
| 54 | + searchph="请输拼音..." | |
| 55 | + searchexp="this.name" | |
| 56 | + required > | |
| 57 | + </sa-Select5> | |
| 58 | + </div> | |
| 59 | + <!-- 隐藏块,显示验证信息 --> | |
| 60 | + <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> | |
| 61 | + 线路必须选择 | |
| 62 | + </div> | |
| 63 | + </div> | |
| 64 | + | |
| 65 | + <div class="form-group has-success has-feedback"> | |
| 66 | + <label class="col-md-2 control-label">线路走向*:</label> | |
| 67 | + <div class="col-md-3"> | |
| 68 | + <sa-Radiogroup model="ctrl.ttInfoManageForForm.xlDir" dicgroup="LineTrend2" name="xlDir" required></sa-Radiogroup> | |
| 69 | + </div> | |
| 70 | + <!-- 隐藏块,显示验证信息 --> | |
| 71 | + <div class="alert alert-danger well-sm" ng-show="myForm.xlDir.$error.required"> | |
| 72 | + 线路走向必须填写 | |
| 73 | + </div> | |
| 74 | + </div> | |
| 75 | + | |
| 76 | + <div class="form-group has-success has-feedback"> | |
| 77 | + <label class="col-md-2 control-label">时刻表名字*:</label> | |
| 78 | + <div class="col-md-3"> | |
| 79 | + <input type="text" class="form-control" ng-model="ctrl.ttInfoManageForForm.name" | |
| 80 | + name="name" placeholder="请输入时刻表名字..." required | |
| 81 | + remote-Validation | |
| 82 | + remotevtype="tic_name" | |
| 83 | + remotevparam="{{ {'id_eq': ctrl.ttInfoManageForForm.id, 'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'name_eq': ctrl.ttInfoManageForForm.name} | json}}" | |
| 84 | + /> | |
| 85 | + </div> | |
| 86 | + | |
| 87 | + <!-- 隐藏块,显示验证信息 --> | |
| 88 | + <div class="alert alert-danger well-sm" ng-show="myForm.name.$error.required"> | |
| 89 | + 时刻表名字必须填写 | |
| 90 | + </div> | |
| 91 | + <div class="alert alert-danger well-sm" ng-show="myForm.name.$error.remote"> | |
| 92 | + 相同线路下的时刻表不能同名 | |
| 93 | + </div> | |
| 94 | + </div> | |
| 95 | + | |
| 96 | + <div class="form-group has-success has-feedback"> | |
| 97 | + <label class="col-md-2 control-label">启用日期*:</label> | |
| 98 | + <div class="col-md-3"> | |
| 99 | + <div class="input-group"> | |
| 100 | + <input type="text" class="form-control" | |
| 101 | + name="qyrq" placeholder="请选择启用日期..." | |
| 102 | + uib-datepicker-popup="yyyy年MM月dd日" | |
| 103 | + is-open="ctrl.qyrqOpen" | |
| 104 | + ng-model="ctrl.ttInfoManageForForm.qyrq" readonly required/> | |
| 105 | + <span class="input-group-btn"> | |
| 106 | + <button type="button" class="btn btn-default" ng-click="ctrl.qyrq_open()"> | |
| 107 | + <i class="glyphicon glyphicon-calendar"></i> | |
| 108 | + </button> | |
| 109 | + </span> | |
| 110 | + </div> | |
| 111 | + </div> | |
| 112 | + | |
| 113 | + <!-- 隐藏块,显示验证信息 --> | |
| 114 | + <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.required"> | |
| 115 | + 启用日期必须填写 | |
| 116 | + </div> | |
| 117 | + </div> | |
| 118 | + | |
| 119 | + <div class="form-group has-success has-feedback"> | |
| 120 | + <label class="col-md-2 control-label">是否启用*:</label> | |
| 121 | + <div class="col-md-3"> | |
| 122 | + <sa-Radiogroup model="ctrl.ttInfoManageForForm.isEnableDisTemplate" dicgroup="truefalseType" name="isEnableDisTemplate" required></sa-Radiogroup> | |
| 123 | + </div> | |
| 124 | + | |
| 125 | + <!-- 隐藏块,显示验证信息 --> | |
| 126 | + <div class="alert alert-danger well-sm" ng-show="myForm.isEnableDisTemplate.$error.required"> | |
| 127 | + 是否启用必须选择 | |
| 128 | + </div> | |
| 129 | + | |
| 130 | + </div> | |
| 131 | + | |
| 132 | + <!--<div class="form-group">--> | |
| 133 | + <!--<label class="col-md-2 control-label">路牌数量:</label>--> | |
| 134 | + <!--<div class="col-md-3">--> | |
| 135 | + <!--<input type="number" class="form-control" ng-model="ctrl.ttInfoManageForForm.lpCount"--> | |
| 136 | + <!--name="lpCount" placeholder="请输入路牌数..." min="1"/>--> | |
| 137 | + <!--</div>--> | |
| 138 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.lpCount.$error.number">--> | |
| 139 | + <!--必须输入数字--> | |
| 140 | + <!--</div>--> | |
| 141 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.lpCount.$error.min">--> | |
| 142 | + <!--路爬数量必须大于1--> | |
| 143 | + <!--</div>--> | |
| 144 | + <!--</div>--> | |
| 145 | + | |
| 146 | + <!--<div class="form-group">--> | |
| 147 | + <!--<label class="col-md-2 control-label">营运圈数:</label>--> | |
| 148 | + <!--<div class="col-md-3">--> | |
| 149 | + <!--<input type="number" class="form-control" ng-model="ctrl.ttInfoManageForForm.loopCount"--> | |
| 150 | + <!--name="loopCount" placeholder="请输入圈数..." min="1"/>--> | |
| 151 | + <!--</div>--> | |
| 152 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.loopCount.$error.number">--> | |
| 153 | + <!--必须输入数字--> | |
| 154 | + <!--</div>--> | |
| 155 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.loopCount.$error.min">--> | |
| 156 | + <!--营运圈数必须大于1--> | |
| 157 | + <!--</div>--> | |
| 158 | + <!--</div>--> | |
| 159 | + | |
| 160 | + <div class="form-group"> | |
| 161 | + <label class="col-md-2 control-label">常规有效日:</label> | |
| 162 | + <div class="col-md-6"> | |
| 163 | + <sa-Checkboxgroup model="ctrl.ttInfoManageForForm" | |
| 164 | + name="rule_days" | |
| 165 | + dcvalue="{{ctrl.ttInfoManageForForm.rule_days}}" | |
| 166 | + dcname="rule_days" | |
| 167 | + required > | |
| 168 | + </sa-Checkboxgroup> | |
| 169 | + | |
| 170 | + <input type="hidden" name="rule_days_h" ng-model="ctrl.ttInfoManageForForm.rule_days" | |
| 171 | + remote-Warn | |
| 172 | + remotewtype="tic_n_d" | |
| 173 | + remotewparam="{{ {'id_eq': ctrl.ttInfoManageForForm.id, 'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'rule_days_eq': ctrl.ttInfoManageForForm.rule_days} | json}}" | |
| 174 | + remotewmsgprop="rule_days_warn" | |
| 175 | + /> | |
| 176 | + | |
| 177 | + </div> | |
| 178 | + <div class="alert alert-danger well-sm" ng-show="myForm.rule_days.$error.required"> | |
| 179 | + 请操作一下1 | |
| 180 | + </div> | |
| 181 | + <div class="alert alert-warning well-sm" ng-show="ctrl.rule_days_warn"> | |
| 182 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 183 | + {{ctrl.rule_days_warn}} | |
| 184 | + </div> | |
| 185 | + </div> | |
| 186 | + | |
| 187 | + <div class="form-group"> | |
| 188 | + <label class="col-md-2 control-label">特殊有效日:</label> | |
| 189 | + <div class="col-md-6"> | |
| 190 | + <sa-Dategroup model="ctrl.ttInfoManageForForm" | |
| 191 | + name="special_days" | |
| 192 | + dcvalue="{{ctrl.ttInfoManageForForm.special_days}}" | |
| 193 | + dcname="special_days" | |
| 194 | + > | |
| 195 | + </sa-Dategroup> | |
| 196 | + | |
| 197 | + <input type="hidden" name="special_days_h" ng-model="ctrl.ttInfoManageForForm.special_days" | |
| 198 | + remote-Warn | |
| 199 | + remotewtype="tic_s_d" | |
| 200 | + remotewparam="{{ {'id_eq': ctrl.ttInfoManageForForm.id, 'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'special_days_eq': ctrl.ttInfoManageForForm.special_days} | json}}" | |
| 201 | + remotewmsgprop="rule_special_days_warn" | |
| 202 | + /> | |
| 203 | + </div> | |
| 204 | + <div class="alert alert-danger well-sm" ng-show="myForm.special_days.$error.required"> | |
| 205 | + 请操作一下2 | |
| 206 | + </div> | |
| 207 | + | |
| 208 | + <div class="alert alert-warning well-sm" ng-show="ctrl.rule_special_days_warn"> | |
| 209 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 210 | + {{ctrl.rule_special_days_warn}} | |
| 211 | + </div> | |
| 212 | + </div> | |
| 213 | + | |
| 214 | + <!--<div class="form-group">--> | |
| 215 | + <!--<label class="col-md-2 control-label">备注:</label>--> | |
| 216 | + <!--</div>--> | |
| 217 | + | |
| 218 | + <!-- 其他form-group --> | |
| 219 | + | |
| 220 | + </div> | |
| 221 | + | |
| 222 | + <!-- TODO:!myForm.$valid 在这里有点问题,改用以下方法验证 --> | |
| 223 | + <div class="form-actions"> | |
| 224 | + <div class="row"> | |
| 225 | + <div class="col-md-offset-3 col-md-4"> | |
| 226 | + <button type="submit" class="btn green" | |
| 227 | + ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | |
| 228 | + <a type="button" class="btn default" ui-sref="ttInfoManage2" ><i class="fa fa-times"></i> 取消</a> | |
| 229 | + </div> | |
| 230 | + </div> | |
| 231 | + </div> | |
| 232 | + | |
| 233 | + </form> | |
| 234 | + | |
| 235 | + </div> | |
| 236 | + | |
| 237 | + | |
| 238 | +</div> | |
| 0 | 239 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/form.html
0 → 100644
| 1 | +<div class="page-head"> | |
| 2 | + <div class="page-title"> | |
| 3 | + <h1>智能时刻表管理</h1> | |
| 4 | + </div> | |
| 5 | +</div> | |
| 6 | + | |
| 7 | +<ul class="page-breadcrumb breadcrumb"> | |
| 8 | + <li> | |
| 9 | + <a href="/pages/home.html" data-pjax>首页</a> | |
| 10 | + <i class="fa fa-circle"></i> | |
| 11 | + </li> | |
| 12 | + <li> | |
| 13 | + <span class="active">运营计划管理</span> | |
| 14 | + <i class="fa fa-circle"></i> | |
| 15 | + </li> | |
| 16 | + <li> | |
| 17 | + <a ui-sref="ttInfoManage2">智能时刻表管理</a> | |
| 18 | + <i class="fa fa-circle"></i> | |
| 19 | + </li> | |
| 20 | + <li> | |
| 21 | + <span class="active">添加时刻表基础信息</span> | |
| 22 | + </li> | |
| 23 | +</ul> | |
| 24 | + | |
| 25 | +<div class="portlet light bordered" ng-controller="TtInfoManage2FormCtrl as ctrl"> | |
| 26 | + <div class="portlet-title"> | |
| 27 | + <div class="caption"> | |
| 28 | + <i class="icon-equalizer font-red-sunglo"></i> <span | |
| 29 | + class="caption-subject font-red-sunglo bold uppercase">表单</span> | |
| 30 | + </div> | |
| 31 | + </div> | |
| 32 | + | |
| 33 | + <div class="portlet-body form"> | |
| 34 | + <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> | |
| 35 | + <!--<div class="alert alert-danger display-hide">--> | |
| 36 | + <!--<button class="close" data-close="alert"></button>--> | |
| 37 | + <!--您的输入有误,请检查下面的输入项--> | |
| 38 | + <!--</div>--> | |
| 39 | + | |
| 40 | + | |
| 41 | + <!-- 其他信息放置在这里 --> | |
| 42 | + <div class="form-body"> | |
| 43 | + <div class="form-group has-success has-feedback"> | |
| 44 | + <label class="col-md-2 control-label">线路*:</label> | |
| 45 | + <div class="col-md-3"> | |
| 46 | + <sa-Select5 name="xl" | |
| 47 | + model="ctrl.ttInfoManageForForm" | |
| 48 | + cmaps="{'xl.id' : 'id'}" | |
| 49 | + dcname="xl.id" | |
| 50 | + icname="id" | |
| 51 | + dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" | |
| 52 | + iterobjname="item" | |
| 53 | + iterobjexp="item.name" | |
| 54 | + searchph="请输拼音..." | |
| 55 | + searchexp="this.name" | |
| 56 | + required > | |
| 57 | + </sa-Select5> | |
| 58 | + </div> | |
| 59 | + <!-- 隐藏块,显示验证信息 --> | |
| 60 | + <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> | |
| 61 | + 线路必须选择 | |
| 62 | + </div> | |
| 63 | + </div> | |
| 64 | + | |
| 65 | + <div class="form-group has-success has-feedback"> | |
| 66 | + <label class="col-md-2 control-label">线路走向*:</label> | |
| 67 | + <div class="col-md-3"> | |
| 68 | + <sa-Radiogroup model="ctrl.ttInfoManageForForm.xlDir" dicgroup="LineTrend2" name="xlDir" required></sa-Radiogroup> | |
| 69 | + </div> | |
| 70 | + <!-- 隐藏块,显示验证信息 --> | |
| 71 | + <div class="alert alert-danger well-sm" ng-show="myForm.xlDir.$error.required"> | |
| 72 | + 线路走向必须填写 | |
| 73 | + </div> | |
| 74 | + </div> | |
| 75 | + | |
| 76 | + <div class="form-group has-success has-feedback"> | |
| 77 | + <label class="col-md-2 control-label">时刻表名字*:</label> | |
| 78 | + <div class="col-md-3"> | |
| 79 | + <input type="text" class="form-control" ng-model="ctrl.ttInfoManageForForm.name" | |
| 80 | + name="name" placeholder="请输入时刻表名字..." required | |
| 81 | + remote-Validation | |
| 82 | + remotevtype="tic_name" | |
| 83 | + remotevparam="{{ {'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'name_eq': ctrl.ttInfoManageForForm.name} | json}}" | |
| 84 | + /> | |
| 85 | + </div> | |
| 86 | + | |
| 87 | + <!-- 隐藏块,显示验证信息 --> | |
| 88 | + <div class="alert alert-danger well-sm" ng-show="myForm.name.$error.required"> | |
| 89 | + 时刻表名字必须填写 | |
| 90 | + </div> | |
| 91 | + <div class="alert alert-danger well-sm" ng-show="myForm.name.$error.remote"> | |
| 92 | + 相同线路下的时刻表不能同名 | |
| 93 | + </div> | |
| 94 | + </div> | |
| 95 | + | |
| 96 | + <div class="form-group has-success has-feedback"> | |
| 97 | + <label class="col-md-2 control-label">启用日期*:</label> | |
| 98 | + <div class="col-md-3"> | |
| 99 | + <div class="input-group"> | |
| 100 | + <input type="text" class="form-control" | |
| 101 | + name="qyrq" placeholder="请选择启用日期..." | |
| 102 | + uib-datepicker-popup="yyyy年MM月dd日" | |
| 103 | + is-open="ctrl.qyrqOpen" | |
| 104 | + ng-model="ctrl.ttInfoManageForForm.qyrq" readonly required/> | |
| 105 | + <span class="input-group-btn"> | |
| 106 | + <button type="button" class="btn btn-default" ng-click="ctrl.qyrq_open()"> | |
| 107 | + <i class="glyphicon glyphicon-calendar"></i> | |
| 108 | + </button> | |
| 109 | + </span> | |
| 110 | + </div> | |
| 111 | + </div> | |
| 112 | + | |
| 113 | + <!-- 隐藏块,显示验证信息 --> | |
| 114 | + <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.required"> | |
| 115 | + 启用日期必须填写 | |
| 116 | + </div> | |
| 117 | + </div> | |
| 118 | + | |
| 119 | + <div class="form-group has-success has-feedback"> | |
| 120 | + <label class="col-md-2 control-label">是否启用*:</label> | |
| 121 | + <div class="col-md-3"> | |
| 122 | + <sa-Radiogroup model="ctrl.ttInfoManageForForm.isEnableDisTemplate" dicgroup="truefalseType" name="isEnableDisTemplate" required></sa-Radiogroup> | |
| 123 | + </div> | |
| 124 | + | |
| 125 | + <!-- 隐藏块,显示验证信息 --> | |
| 126 | + <div class="alert alert-danger well-sm" ng-show="myForm.isEnableDisTemplate.$error.required"> | |
| 127 | + 是否启用必须选择 | |
| 128 | + </div> | |
| 129 | + | |
| 130 | + </div> | |
| 131 | + | |
| 132 | + <!--<div class="form-group">--> | |
| 133 | + <!--<label class="col-md-2 control-label">路牌数量:</label>--> | |
| 134 | + <!--<div class="col-md-3">--> | |
| 135 | + <!--<input type="number" class="form-control" ng-model="ctrl.ttInfoManageForForm.lpCount"--> | |
| 136 | + <!--name="lpCount" placeholder="请输入路牌数..." min="1"/>--> | |
| 137 | + <!--</div>--> | |
| 138 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.lpCount.$error.number">--> | |
| 139 | + <!--必须输入数字--> | |
| 140 | + <!--</div>--> | |
| 141 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.lpCount.$error.min">--> | |
| 142 | + <!--路爬数量必须大于1--> | |
| 143 | + <!--</div>--> | |
| 144 | + <!--</div>--> | |
| 145 | + | |
| 146 | + <!--<div class="form-group">--> | |
| 147 | + <!--<label class="col-md-2 control-label">营运圈数:</label>--> | |
| 148 | + <!--<div class="col-md-3">--> | |
| 149 | + <!--<input type="number" class="form-control" ng-model="ctrl.ttInfoManageForForm.loopCount"--> | |
| 150 | + <!--name="loopCount" placeholder="请输入圈数..." min="1"/>--> | |
| 151 | + <!--</div>--> | |
| 152 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.loopCount.$error.number">--> | |
| 153 | + <!--必须输入数字--> | |
| 154 | + <!--</div>--> | |
| 155 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.loopCount.$error.min">--> | |
| 156 | + <!--营运圈数必须大于1--> | |
| 157 | + <!--</div>--> | |
| 158 | + <!--</div>--> | |
| 159 | + | |
| 160 | + <div class="form-group"> | |
| 161 | + <label class="col-md-2 control-label">常规有效日:</label> | |
| 162 | + <div class="col-md-6"> | |
| 163 | + <sa-Checkboxgroup model="ctrl.ttInfoManageForForm" | |
| 164 | + name="rule_days" | |
| 165 | + dcvalue="{{ctrl.ttInfoManageForForm.rule_days}}" | |
| 166 | + dcname="rule_days" | |
| 167 | + required > | |
| 168 | + </sa-Checkboxgroup> | |
| 169 | + | |
| 170 | + <input type="hidden" name="rule_days_h" ng-model="ctrl.ttInfoManageForForm.rule_days" | |
| 171 | + remote-Warn | |
| 172 | + remotewtype="tic_n_d" | |
| 173 | + remotewparam="{{ {'id_eq': ctrl.ttInfoManageForForm.id, 'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'rule_days_eq': ctrl.ttInfoManageForForm.rule_days} | json}}" | |
| 174 | + remotewmsgprop="rule_days_warn" | |
| 175 | + /> | |
| 176 | + </div> | |
| 177 | + <div class="alert alert-danger well-sm" ng-show="myForm.rule_days.$error.required"> | |
| 178 | + 请操作一下1 | |
| 179 | + </div> | |
| 180 | + <div class="alert alert-warning well-sm" ng-show="ctrl.rule_days_warn"> | |
| 181 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 182 | + {{ctrl.rule_days_warn}} | |
| 183 | + </div> | |
| 184 | + </div> | |
| 185 | + | |
| 186 | + <div class="form-group"> | |
| 187 | + <label class="col-md-2 control-label">特殊有效日:</label> | |
| 188 | + <div class="col-md-6"> | |
| 189 | + <sa-Dategroup model="ctrl.ttInfoManageForForm" | |
| 190 | + name="special_days" | |
| 191 | + dcvalue="{{ctrl.ttInfoManageForForm.special_days}}" | |
| 192 | + dcname="special_days" | |
| 193 | + > | |
| 194 | + </sa-Dategroup> | |
| 195 | + | |
| 196 | + <input type="hidden" name="special_days_h" ng-model="ctrl.ttInfoManageForForm.special_days" | |
| 197 | + remote-Warn | |
| 198 | + remotewtype="tic_s_d" | |
| 199 | + remotewparam="{{ {'id_eq': ctrl.ttInfoManageForForm.id, 'xl.id_eq': ctrl.ttInfoManageForForm.xl.id, 'special_days_eq': ctrl.ttInfoManageForForm.special_days} | json}}" | |
| 200 | + remotewmsgprop="rule_special_days_warn" | |
| 201 | + /> | |
| 202 | + </div> | |
| 203 | + <div class="alert alert-danger well-sm" ng-show="myForm.special_days.$error.required"> | |
| 204 | + 请操作一下2 | |
| 205 | + </div> | |
| 206 | + | |
| 207 | + <div class="alert alert-warning well-sm" ng-show="ctrl.rule_special_days_warn"> | |
| 208 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 209 | + {{ctrl.rule_special_days_warn}} | |
| 210 | + </div> | |
| 211 | + </div> | |
| 212 | + | |
| 213 | + <!--<div class="form-group">--> | |
| 214 | + <!--<label class="col-md-2 control-label">备注:</label>--> | |
| 215 | + <!--</div>--> | |
| 216 | + | |
| 217 | + <!-- 其他form-group --> | |
| 218 | + | |
| 219 | + </div> | |
| 220 | + | |
| 221 | + <!-- TODO:!myForm.$valid 在这里有点问题,改用以下方法验证 --> | |
| 222 | + <div class="form-actions"> | |
| 223 | + <div class="row"> | |
| 224 | + <div class="col-md-offset-3 col-md-4"> | |
| 225 | + <button type="submit" class="btn green" | |
| 226 | + ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | |
| 227 | + <a type="button" class="btn default" ui-sref="ttInfoManage2" ><i class="fa fa-times"></i> 取消</a> | |
| 228 | + </div> | |
| 229 | + </div> | |
| 230 | + </div> | |
| 231 | + | |
| 232 | + </form> | |
| 233 | + | |
| 234 | + </div> | |
| 235 | + | |
| 236 | + | |
| 237 | +</div> | |
| 0 | 238 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/index.html
0 → 100644
| 1 | +<div class="page-head"> | |
| 2 | + <div class="page-title"> | |
| 3 | + <h1>智能时刻表管理</h1> | |
| 4 | + </div> | |
| 5 | +</div> | |
| 6 | + | |
| 7 | +<ul class="page-breadcrumb breadcrumb"> | |
| 8 | + <li> | |
| 9 | + <a href="/pages/home.html" data-pjax>首页</a> | |
| 10 | + <i class="fa fa-circle"></i> | |
| 11 | + </li> | |
| 12 | + <li> | |
| 13 | + <span class="active">运营计划管理</span> | |
| 14 | + <i class="fa fa-circle"></i> | |
| 15 | + </li> | |
| 16 | + <li> | |
| 17 | + <span class="active">智能时刻表管理</span> | |
| 18 | + </li> | |
| 19 | +</ul> | |
| 20 | + | |
| 21 | +<div class="row"> | |
| 22 | + <div class="col-md-12" ng-controller="TtInfoManage2IndexCtrl as ctrl"> | |
| 23 | + <div class="portlet light bordered"> | |
| 24 | + <div class="portlet-title"> | |
| 25 | + <div class="caption font-dark"> | |
| 26 | + <i class="fa fa-database font-dark"></i> | |
| 27 | + <span class="caption-subject bold uppercase">时刻表</span> | |
| 28 | + </div> | |
| 29 | + <div class="actions"> | |
| 30 | + <!--<a ui-sref="ttInfoManage_test" class="btn btn-circle blue">--> | |
| 31 | + <!--<i class="fa fa-plus"></i>--> | |
| 32 | + <!--测试--> | |
| 33 | + <!--</a>--> | |
| 34 | + <a href="javascript:" class="btn btn-circle blue" ng-click="ctrl.toTtInfoManageForm()"> | |
| 35 | + <i class="fa fa-plus"></i> | |
| 36 | + 添加时刻表 | |
| 37 | + </a> | |
| 38 | + | |
| 39 | + </div> | |
| 40 | + </div> | |
| 41 | + | |
| 42 | + <div class="portlet-body"> | |
| 43 | + <div ui-view="ttInfoManage2_list"></div> | |
| 44 | + </div> | |
| 45 | + </div> | |
| 46 | + </div> | |
| 47 | +</div> | |
| 0 | 48 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/list.html
0 → 100644
| 1 | +<!-- ui-route employeeInfoManage.list --> | |
| 2 | +<div ng-controller="TtInfoManage2ListCtrl as ctrl"> | |
| 3 | + <div class="fixDiv"> | |
| 4 | + <table class="fixTable table table-striped table-bordered table-hover table-checkable order-column"> | |
| 5 | + <thead> | |
| 6 | + <tr role="row" class="heading"> | |
| 7 | + <th style="width: 70px;">序号</th> | |
| 8 | + <th style="width: 150px;">线路</th> | |
| 9 | + <th style="width: 180px;">时刻表名称</th> | |
| 10 | + <th style="width: 80px">上下行</th> | |
| 11 | + <th style="width: 50px;">启用</th> | |
| 12 | + <th style="width: 130px">操作日期</th> | |
| 13 | + <th style="width: 80px">状态</th> | |
| 14 | + <th style="width: 60%">时刻表明细</th> | |
| 15 | + <th style="width: 40%">操作</th> | |
| 16 | + </tr> | |
| 17 | + <tr role="row" class="filter"> | |
| 18 | + <td></td> | |
| 19 | + <td> | |
| 20 | + <sa-Select5 name="xl" | |
| 21 | + model="ctrl.searchCondition()" | |
| 22 | + cmaps="{'xl.id_eq' : 'id'}" | |
| 23 | + dcname="xl.id_eq" | |
| 24 | + icname="id" | |
| 25 | + dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" | |
| 26 | + iterobjname="item" | |
| 27 | + iterobjexp="item.name" | |
| 28 | + searchph="请输拼音..." | |
| 29 | + searchexp="this.name" | |
| 30 | + required > | |
| 31 | + </sa-Select5> | |
| 32 | + </td> | |
| 33 | + <td> | |
| 34 | + <input type="text" class="form-control form-filter input-sm" ng-model="ctrl.searchCondition().name_like" placeholder="输入时刻表名称..."/> | |
| 35 | + </td> | |
| 36 | + <td></td> | |
| 37 | + <td> | |
| 38 | + <label class="checkbox-inline"> | |
| 39 | + <input type="checkbox" ng-model="ctrl.searchCondition()['isEnableDisTemplate_eq']"/>是 | |
| 40 | + </label> | |
| 41 | + </td> | |
| 42 | + <td></td> | |
| 43 | + <td> | |
| 44 | + <label class="checkbox-inline"> | |
| 45 | + <input type="checkbox" ng-model="ctrl.searchCondition()['isCancel_eq']"/>已作废 | |
| 46 | + </label> | |
| 47 | + </td> | |
| 48 | + <td></td> | |
| 49 | + <td> | |
| 50 | + <button class="btn btn-sm green btn-outline filter-submit margin-bottom" | |
| 51 | + ng-click="ctrl.doPage()"> | |
| 52 | + <i class="fa fa-search"></i> 搜索</button> | |
| 53 | + | |
| 54 | + <button class="btn btn-sm red btn-outline filter-cancel" | |
| 55 | + ng-click="ctrl.reset()"> | |
| 56 | + <i class="fa fa-times"></i> 重置</button> | |
| 57 | + </td> | |
| 58 | + </tr> | |
| 59 | + | |
| 60 | + </thead> | |
| 61 | + <tbody> | |
| 62 | + <tr ng-repeat="info in ctrl.page()['content']" ng-class="{odd: true, gradeX: true, danger: info.isCancel}"> | |
| 63 | + <td> | |
| 64 | + <div> | |
| 65 | + <a href="#"> | |
| 66 | + <i class="fa fa-list-ol" aria-hidden="true"></i> | |
| 67 | + {{$index + ctrl.page().number * 10 + 1}} | |
| 68 | + </a> | |
| 69 | + </div> | |
| 70 | + </td> | |
| 71 | + <td> | |
| 72 | + <div> | |
| 73 | + <a href="#"> | |
| 74 | + <span ng-bind="info.xl.name"></span> | |
| 75 | + </a> | |
| 76 | + </div> | |
| 77 | + <div> | |
| 78 | + <a href="#" | |
| 79 | + ng-mouseenter="ctrl.getLineVersionTip(info)" | |
| 80 | + tooltip-animation="false" | |
| 81 | + tooltip-placement="top" | |
| 82 | + uib-tooltip="{{ctrl.lineVersionTip}}" | |
| 83 | + tooltip-class="headClass"> | |
| 84 | + | |
| 85 | + <span ng-bind="'线路版本:' + info.lineVersion"></span> | |
| 86 | + </a> | |
| 87 | + | |
| 88 | + </div> | |
| 89 | + | |
| 90 | + | |
| 91 | + </td> | |
| 92 | + <td> | |
| 93 | + <div> | |
| 94 | + <a href="#" | |
| 95 | + tooltip-animation="false" | |
| 96 | + tooltip-placement="top" | |
| 97 | + uib-tooltip="{{info.name}}" | |
| 98 | + tooltip-class="headClass"> | |
| 99 | + {{info.name}} | |
| 100 | + </a> | |
| 101 | + </div> | |
| 102 | + </td> | |
| 103 | + <td> | |
| 104 | + <span ng-bind="info.xlDir | dict:'LineTrend2':'未知' "></span> | |
| 105 | + </td> | |
| 106 | + <td> | |
| 107 | + <span ng-bind="info.isEnableDisTemplate | dict:'truefalseType':'未知' "></span> | |
| 108 | + </td> | |
| 109 | + <td> | |
| 110 | + <div> | |
| 111 | + <a href="#" | |
| 112 | + tooltip-animation="false" | |
| 113 | + tooltip-placement="top" | |
| 114 | + uib-tooltip="启用时间:{{info.qyrq | date: 'yyyy-MM-dd HH:mm:ss' }}" | |
| 115 | + tooltip-class="headClass"> | |
| 116 | + 启用 | |
| 117 | + <span ng-bind="(info.qyrq | date: 'yyyy-MM-dd')"></span> | |
| 118 | + </a> | |
| 119 | + </div> | |
| 120 | + | |
| 121 | + <div> | |
| 122 | + <a href="#" | |
| 123 | + tooltip-animation="false" | |
| 124 | + tooltip-placement="top" | |
| 125 | + uib-tooltip="备份时间:{{info.lastBackUpDate | date: 'yyyy-MM-dd HH:mm:ss' }}" | |
| 126 | + tooltip-class="headClass"> | |
| 127 | + 备份 | |
| 128 | + <span ng-bind="(info.lastBackUpDate | date: 'yyyy-MM-dd')"></span> | |
| 129 | + </a> | |
| 130 | + </div> | |
| 131 | + | |
| 132 | + <div> | |
| 133 | + <a href="#" | |
| 134 | + tooltip-animation="false" | |
| 135 | + tooltip-placement="top" | |
| 136 | + uib-tooltip="创建时间:{{info.createDate | date: 'yyyy-MM-dd HH:mm:ss' }}" | |
| 137 | + tooltip-class="headClass"> | |
| 138 | + 创建 | |
| 139 | + <span ng-bind="(info.createDate | date: 'yyyy-MM-dd')"></span> | |
| 140 | + </a> | |
| 141 | + </div> | |
| 142 | + | |
| 143 | + <div> | |
| 144 | + <a href="#" | |
| 145 | + tooltip-animation="false" | |
| 146 | + tooltip-placement="top" | |
| 147 | + uib-tooltip="更新时间:{{info.updateDate | date: 'yyyy-MM-dd HH:mm:ss' }}" | |
| 148 | + tooltip-class="headClass"> | |
| 149 | + 更新 | |
| 150 | + <span ng-bind="(info.updateDate | date: 'yyyy-MM-dd')"></span> | |
| 151 | + </a> | |
| 152 | + </div> | |
| 153 | + | |
| 154 | + <!--<div>--> | |
| 155 | + <!--<a href="#"--> | |
| 156 | + <!--tooltip-animation="false"--> | |
| 157 | + <!--tooltip-placement="top"--> | |
| 158 | + <!--uib-tooltip="备份时间:{{info.lastBackUpDate | date: 'yyyy-MM-dd HH:mm:ss' }}"--> | |
| 159 | + <!--tooltip-class="headClass">--> | |
| 160 | + | |
| 161 | + <!--<i class="fa fa-hdd-o" aria-hidden="true"></i>--> | |
| 162 | + <!--<span ng-bind="info.lastBackUpDate | date: 'yyyy-MM-dd'"></span>--> | |
| 163 | + <!--</a>--> | |
| 164 | + | |
| 165 | + <!--</div>--> | |
| 166 | + | |
| 167 | + </td> | |
| 168 | + <td> | |
| 169 | + <span class="glyphicon glyphicon-ok" ng-if="info.isCancel == '0'"></span> | |
| 170 | + <span class="glyphicon glyphicon-remove" ng-if="info.isCancel == '1'"></span> | |
| 171 | + </td> | |
| 172 | + <td> | |
| 173 | + <a ng-click="ctrl.toTtInfoDetailAuto(info.id)" | |
| 174 | + class="btn btn-info btn-sm" ng-if="info.isCancel == '0'"> 动态生成 </a> | |
| 175 | + </td> | |
| 176 | + <td> | |
| 177 | + <a ui-sref="ttInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> 详细 </a> | |
| 178 | + <a ui-sref="ttInfoManage_edit({id: info.id})" class="btn btn-info btn-sm" ng-if="info.isCancel == '0'"> 修改 </a> | |
| 179 | + </td> | |
| 180 | + </tr> | |
| 181 | + </tbody> | |
| 182 | + </table> | |
| 183 | + </div> | |
| 184 | + | |
| 185 | + <div class="pageBar"> | |
| 186 | + <div class="pageBarLeft"> | |
| 187 | + {{'显示从' + ctrl.page()['uiFromRecord'] + '到' + ctrl.page()['uiToRecord'] + ' 共' + ctrl.page()['totalElements'] + '条' + ' 每页显示10条'}} | |
| 188 | + </div> | |
| 189 | + | |
| 190 | + <div class="pageBarRight"> | |
| 191 | + <uib-pagination total-items="ctrl.page()['totalElements']" | |
| 192 | + ng-model="ctrl.page()['uiNumber']" | |
| 193 | + ng-change="ctrl.doPage()" | |
| 194 | + rotate="false" | |
| 195 | + max-size="10" | |
| 196 | + boundary-links="true" | |
| 197 | + first-text="首页" | |
| 198 | + previous-text="上一页" | |
| 199 | + next-text="下一页" | |
| 200 | + last-text="尾页"> | |
| 201 | + </uib-pagination> | |
| 202 | + </div> | |
| 203 | + </div> | |
| 204 | + | |
| 205 | +</div> | |
| 0 | 206 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/module.js
0 → 100644
| 1 | +// 时刻表管理service,包装外部定义的globalservice,并保存一定的操作状态 | |
| 2 | +angular.module('ScheduleApp').factory( | |
| 3 | + 'TtInfoManage2Service', | |
| 4 | + [ | |
| 5 | + 'TTInfoManageService_g', | |
| 6 | + 'TimeTableDetailManageService_g', | |
| 7 | + 'UserPrincipal', | |
| 8 | + function(service, dservice, UserPrincipal) { | |
| 9 | + // 当前查询的内容条件搜索对象 | |
| 10 | + var currentSearchCondition = {page: 0, 'isCancel_eq': false, 'isEnableDisTemplate_eq': true}; | |
| 11 | + // 当前查询返回的信息 | |
| 12 | + var currentPage = { // 后台spring data返回的格式 | |
| 13 | + totalElements: 0, | |
| 14 | + number: 0, // 后台返回的页码,spring返回从0开始 | |
| 15 | + content: [], | |
| 16 | + | |
| 17 | + uiNumber: 1, // 页面绑定的页码 | |
| 18 | + uiFromRecord: 0, // 页面绑定,当前页第几条记录 | |
| 19 | + uiToRecord: 0 // 页面绑定,当前页到第几条记录 | |
| 20 | + }; | |
| 21 | + | |
| 22 | + // 查询对象类 | |
| 23 | + var queryClass = service.rest; | |
| 24 | + | |
| 25 | + return { | |
| 26 | + getTtInfoQueryClass: function() { | |
| 27 | + return queryClass; | |
| 28 | + }, | |
| 29 | + getSearchCondition: function() { | |
| 30 | + currentSearchCondition.page = currentPage.uiNumber - 1; | |
| 31 | + | |
| 32 | + // 加公司判定 | |
| 33 | + if (UserPrincipal.getGsStrs().length > 0) { | |
| 34 | + currentSearchCondition["xl.cgsbm_in"] = UserPrincipal.getGsStrs().join(","); | |
| 35 | + } | |
| 36 | + | |
| 37 | + return currentSearchCondition; | |
| 38 | + }, | |
| 39 | + getPage: function(page) { | |
| 40 | + if (page) { | |
| 41 | + currentPage.totalElements = page.totalElements; | |
| 42 | + currentPage.number = page.number; | |
| 43 | + currentPage.content = page.content; | |
| 44 | + | |
| 45 | + // 计算当前页开始记录,结束记录 | |
| 46 | + if (page.numberOfElements && page.numberOfElements > 0) { | |
| 47 | + currentPage.uiFromRecord = page.number * 10 + 1; | |
| 48 | + currentPage.uiToRecord = page.number * 10 + page.numberOfElements; | |
| 49 | + } | |
| 50 | + } | |
| 51 | + return currentPage; | |
| 52 | + }, | |
| 53 | + resetStatus: function() { | |
| 54 | + currentSearchCondition = {page: 0, 'isCancel_eq': false}; | |
| 55 | + currentPage = { | |
| 56 | + totalElements: 0, | |
| 57 | + number: 0, | |
| 58 | + content: [], | |
| 59 | + uiNumber: 1, | |
| 60 | + uiFromRecord: 0, | |
| 61 | + uiToRecord: 0 | |
| 62 | + }; | |
| 63 | + }, | |
| 64 | + /** | |
| 65 | + * 数据导出。 | |
| 66 | + * @returns {*|Function|promise|n} | |
| 67 | + */ | |
| 68 | + dataExport: function(ttinfoid) { | |
| 69 | + var param = {}; | |
| 70 | + param.type = 'exportFile'; | |
| 71 | + param.ttinfoid = ttinfoid; | |
| 72 | + return dservice.dataTools.dataExport(param).$promise; | |
| 73 | + }, | |
| 74 | + | |
| 75 | + /** | |
| 76 | + * 备份。 | |
| 77 | + * @returns {*|Function|promise|n} | |
| 78 | + */ | |
| 79 | + backupinfo: function(ttinfoid) { | |
| 80 | + var param = {}; | |
| 81 | + param.ttinfoid = ttinfoid; | |
| 82 | + return service.backup.do(param).$promise; | |
| 83 | + }, | |
| 84 | + | |
| 85 | + /** | |
| 86 | + * 获取线路版本描述。 | |
| 87 | + * @param lineId | |
| 88 | + * @param version | |
| 89 | + * @returns {*|Function|promise|n} | |
| 90 | + */ | |
| 91 | + versiondesc: function(lineId, version) { | |
| 92 | + var param = {}; | |
| 93 | + param.lineId = lineId; | |
| 94 | + param.version = version; | |
| 95 | + return service.versiondesc.do(param).$promise; | |
| 96 | + } | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + // TODO: | |
| 101 | + } | |
| 102 | + } | |
| 103 | + ] | |
| 104 | +); | |
| 105 | + | |
| 106 | +// index.html控制器 | |
| 107 | +angular.module('ScheduleApp').controller( | |
| 108 | + 'TtInfoManage2IndexCtrl', | |
| 109 | + [ | |
| 110 | + '$state', | |
| 111 | + function($state) { | |
| 112 | + var self = this; | |
| 113 | + | |
| 114 | + // 切换到时刻表form界面 | |
| 115 | + self.toTtInfoManageForm = function() { | |
| 116 | + $state.go('ttInfoManage2_form'); | |
| 117 | + } | |
| 118 | + } | |
| 119 | + ] | |
| 120 | +); | |
| 121 | + | |
| 122 | +// list.html控制器 | |
| 123 | +angular.module('ScheduleApp').controller( | |
| 124 | + 'TtInfoManage2ListCtrl', | |
| 125 | + [ | |
| 126 | + 'TtInfoManage2Service', | |
| 127 | + 'FileDownload_g', | |
| 128 | + function(service, fileDownload) { | |
| 129 | + var self = this; | |
| 130 | + var TtInfo = service.getTtInfoQueryClass(); | |
| 131 | + | |
| 132 | + self.page = function() { | |
| 133 | + return service.getPage(); | |
| 134 | + }; | |
| 135 | + | |
| 136 | + self.searchCondition = function() { | |
| 137 | + return service.getSearchCondition(); | |
| 138 | + }; | |
| 139 | + | |
| 140 | + self.doPage = function() { | |
| 141 | + var page = TtInfo.list(self.searchCondition(), function() { | |
| 142 | + service.getPage(page); | |
| 143 | + }); | |
| 144 | + }; | |
| 145 | + self.reset = function() { | |
| 146 | + service.resetStatus(); | |
| 147 | + var page = TtInfo.list(self.searchCondition(), function() { | |
| 148 | + service.getPage(page); | |
| 149 | + }); | |
| 150 | + }; | |
| 151 | + self.toggleTtinfo = function(id) { | |
| 152 | + TtInfo.delete({id: id}, function(result) { | |
| 153 | + if (result.message) { // 暂时这样做,之后全局拦截 | |
| 154 | + alert("失败:" + result.message); | |
| 155 | + } else { | |
| 156 | + self.doPage(); | |
| 157 | + } | |
| 158 | + }); | |
| 159 | + }; | |
| 160 | + // 导出excel | |
| 161 | + self.exportData = function(ttinfoid) { | |
| 162 | + service.dataExport(ttinfoid).then( | |
| 163 | + function(result) { | |
| 164 | + fileDownload.downloadFile(result.data, "application/octet-stream", "时刻表.xls"); | |
| 165 | + }, | |
| 166 | + function(result) { | |
| 167 | + console.log("exportData failed:" + result); | |
| 168 | + } | |
| 169 | + ); | |
| 170 | + }; | |
| 171 | + | |
| 172 | + // 备份信息 | |
| 173 | + self.backupinfo = function(ttinfoid) { | |
| 174 | + service.backupinfo(ttinfoid).then( | |
| 175 | + function(result) { | |
| 176 | + self.doPage(); | |
| 177 | + console.log("备份成功!"); | |
| 178 | + }, | |
| 179 | + function(result) { | |
| 180 | + console.log("备份失败:" + result); | |
| 181 | + } | |
| 182 | + ); | |
| 183 | + }; | |
| 184 | + | |
| 185 | + self.doPage(); | |
| 186 | + | |
| 187 | + // TODO:跳转到自动生成时刻表页面(jquery页面),之后会替换为Angularjs版本 | |
| 188 | + self.toTtInfoDetailAuto = function(ttinfoid) { | |
| 189 | + showPjax(); | |
| 190 | + $.pjax({url: 'pages/base/timesmodel/add2.html?no=' + ttinfoid, container: pjaxContainer}); | |
| 191 | + }; | |
| 192 | + | |
| 193 | + self.lineVersionTip = "载入中..."; | |
| 194 | + var currentTTInfoForLineVersion; | |
| 195 | + self.getLineVersionTip = function(info) { | |
| 196 | + if (currentTTInfoForLineVersion != info) { | |
| 197 | + service.versiondesc(info.xl.id, info.lineVersion).then( | |
| 198 | + function(result) { | |
| 199 | + self.lineVersionTip = result.desc; | |
| 200 | + currentTTInfoForLineVersion = info; | |
| 201 | + } | |
| 202 | + ); | |
| 203 | + } | |
| 204 | + | |
| 205 | + }; | |
| 206 | + | |
| 207 | + // TODO: | |
| 208 | + } | |
| 209 | + ] | |
| 210 | +); | |
| 211 | + | |
| 212 | +// form.html控制器 | |
| 213 | +angular.module('ScheduleApp').controller( | |
| 214 | + 'TtInfoManage2FormCtrl', | |
| 215 | + [ | |
| 216 | + 'TtInfoManage2Service', | |
| 217 | + '$stateParams', | |
| 218 | + '$state', | |
| 219 | + function(service, $stateParams, $state) { | |
| 220 | + var self = this; | |
| 221 | + var TtInfo = service.getTtInfoQueryClass(); | |
| 222 | + | |
| 223 | + // 启用日期 日期控件开关 | |
| 224 | + self.qyrqOpen = false; | |
| 225 | + self.qyrq_open = function() { | |
| 226 | + self.qyrqOpen = true; | |
| 227 | + }; | |
| 228 | + | |
| 229 | + // 欲保存的表单信息,双向绑定 | |
| 230 | + self.ttInfoManageForForm = new TtInfo; | |
| 231 | + self.ttInfoManageForForm.xl = {}; | |
| 232 | + | |
| 233 | + // 如果是修改,获取传过来的id,从后台获取一份数据,用于绑定页面form值 | |
| 234 | + var id = $stateParams.id; | |
| 235 | + if (id) { | |
| 236 | + TtInfo.get({id: id}, function(value) { | |
| 237 | + self.ttInfoManageForForm = value; | |
| 238 | + }); | |
| 239 | + } else { | |
| 240 | + // 初始表单,使用查询条件获取线路id | |
| 241 | + self.ttInfoManageForForm.xl.id = service.getSearchCondition()['xl.id_eq']; | |
| 242 | + } | |
| 243 | + | |
| 244 | + // form提交方法 | |
| 245 | + self.submit = function() { | |
| 246 | + self.ttInfoManageForForm.$save(function() { | |
| 247 | + $state.go("ttInfoManage2"); | |
| 248 | + }); | |
| 249 | + }; | |
| 250 | + } | |
| 251 | + ] | |
| 252 | +); | |
| 253 | + | |
| 254 | +// detail.html控制器 | |
| 255 | +angular.module('ScheduleApp').controller( | |
| 256 | + 'TtInfoManage2DetailCtrl', | |
| 257 | + [ | |
| 258 | + 'TtInfoManage2Service', | |
| 259 | + '$stateParams', | |
| 260 | + function(service, $stateParams) { | |
| 261 | + var self = this; | |
| 262 | + var TtInfo = service.getTtInfoQueryClass(); | |
| 263 | + var id = $stateParams.id; | |
| 264 | + | |
| 265 | + self.title = ""; | |
| 266 | + self.ttInfoManageForDetail = {}; | |
| 267 | + | |
| 268 | + TtInfo.get({id: id}, function(value) { | |
| 269 | + self.ttInfoManageForDetail = value; | |
| 270 | + self.title = self.ttInfoManageForDetail.xl.name + | |
| 271 | + "(" + | |
| 272 | + self.ttInfoManageForDetail.name + | |
| 273 | + ")" + | |
| 274 | + "时刻表基础信息"; | |
| 275 | + }); | |
| 276 | + } | |
| 277 | + ] | |
| 278 | +); | |
| 0 | 279 | \ No newline at end of file | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/ttinfoManage2/route.js
0 → 100644
| 1 | +// ui route 配置 | |
| 2 | + | |
| 3 | +/** 时刻表管理配置route */ | |
| 4 | +ScheduleApp.config([ | |
| 5 | + '$stateProvider', | |
| 6 | + '$urlRouterProvider', | |
| 7 | + function($stateProvider, $urlRouterProvider) { | |
| 8 | + // 默认路由 | |
| 9 | + //$urlRouterProvider.otherwise('/busConfig.html'); | |
| 10 | + | |
| 11 | + $stateProvider | |
| 12 | + .state("ttInfoManage2", { // index页面 | |
| 13 | + url: '/ttInfoManage2', | |
| 14 | + views: { | |
| 15 | + "": { | |
| 16 | + templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/index.html' | |
| 17 | + }, | |
| 18 | + "ttInfoManage2_list@ttInfoManage2": { | |
| 19 | + templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/list.html' | |
| 20 | + } | |
| 21 | + }, | |
| 22 | + | |
| 23 | + resolve: { | |
| 24 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 25 | + return $ocLazyLoad.load({ | |
| 26 | + name: 'ttInfoManage2_module', | |
| 27 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 28 | + files: [ | |
| 29 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 30 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 31 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 32 | + ] | |
| 33 | + }); | |
| 34 | + }] | |
| 35 | + } | |
| 36 | + }) | |
| 37 | + .state("ttInfoManage2_form", { // 添加时刻表信息form | |
| 38 | + url: '/ttInfoManage2_form', | |
| 39 | + views: { | |
| 40 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/form.html'} | |
| 41 | + }, | |
| 42 | + resolve: { | |
| 43 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 44 | + return $ocLazyLoad.load({ | |
| 45 | + name: 'ttInfoManage2_form_module', | |
| 46 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 47 | + files: [ | |
| 48 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 49 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 50 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 51 | + ] | |
| 52 | + }); | |
| 53 | + }] | |
| 54 | + } | |
| 55 | + }) | |
| 56 | + .state("ttInfoManage2_edit", { // 修改时刻表信息form | |
| 57 | + url: '/ttInfoManage2_edit/:id', | |
| 58 | + views: { | |
| 59 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/edit.html'} | |
| 60 | + }, | |
| 61 | + resolve: { | |
| 62 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 63 | + return $ocLazyLoad.load({ | |
| 64 | + name: 'ttInfoManage2_edit_module', | |
| 65 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 66 | + files: [ | |
| 67 | + "assets/bower_components/angular-ui-select/dist/select.min.css", | |
| 68 | + "assets/bower_components/angular-ui-select/dist/select.min.js", | |
| 69 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 70 | + ] | |
| 71 | + }); | |
| 72 | + }] | |
| 73 | + } | |
| 74 | + }) | |
| 75 | + .state("ttInfoManage2_detail", { // 时刻表详细信息 | |
| 76 | + url: '/ttInfoManage2_detail/:id', | |
| 77 | + views: { | |
| 78 | + "": {templateUrl: 'pages/scheduleApp/module/core/ttInfoManage2/detail.html'} | |
| 79 | + }, | |
| 80 | + resolve: { | |
| 81 | + deps: ['$ocLazyLoad', function($ocLazyLoad) { | |
| 82 | + return $ocLazyLoad.load({ | |
| 83 | + name: 'ttInfoManage2_detail_module', | |
| 84 | + insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | |
| 85 | + files: [ | |
| 86 | + "pages/scheduleApp/module/core/ttInfoManage2/module.js" | |
| 87 | + ] | |
| 88 | + }); | |
| 89 | + }] | |
| 90 | + } | |
| 91 | + }) | |
| 92 | + | |
| 93 | + | |
| 94 | + } | |
| 95 | +]); | |
| 0 | 96 | \ No newline at end of file | ... | ... |