Commit 878448d5fc989b6575e6875d1674701ee0671106
1 parent
cc455696
1、修正修改车辆信息报错bug,修正是否报废信息设定
2、调度执勤日报修正: 1)、修改班次中取消售票员选项 2)、新视图中,图例文字居中,烂班班次颜色改成红色,单个路牌全部烂班时,整行路牌(包括驾驶员信息)全部改成红色 3)、新视图中,上行班次加底色,下行班次用白色,并添加对应图例,图例文字中包含上行/下行起点站名 4)、新视图中,标题栏的站点后面的数字使用圈组数字,一圈报行一个上行一个下行,从1开始计数 5)、新视图中,不要有下拉框,指令内部自动计算整个高度,方便整个截图
Showing
8 changed files
with
417 additions
and
146 deletions
src/main/resources/static/pages/scheduleApp/module/basicInfo/busInfoManage/edit.html
| ... | ... | @@ -244,15 +244,20 @@ |
| 244 | 244 | </div> |
| 245 | 245 | </div> |
| 246 | 246 | |
| 247 | - <div class="form-group" ng-if="ctrl.busInfoForSave.scrapState == 1"> | |
| 247 | + <div class="form-group" ng-if="ctrl.busInfoForSave.scrapState"> | |
| 248 | 248 | <label class="col-md-2 control-label">报废号:</label> |
| 249 | 249 | <div class="col-md-4"> |
| 250 | - <input type="text" class="form-control" ng-model="ctrl.busInfoForSave.scrapCode" | |
| 251 | - placeholder="请输入报废号"/> | |
| 250 | + <input type="text" name="scrapCode" class="form-control" ng-model="ctrl.busInfoForSave.scrapCode" | |
| 251 | + required placeholder="请输入报废号"/> | |
| 252 | + </div> | |
| 253 | + | |
| 254 | + <!-- 隐藏块,显示验证信息 --> | |
| 255 | + <div class="alert alert-danger well-sm" ng-show="myForm.scrapCode.$error.required"> | |
| 256 | + 报废号必须填写 | |
| 252 | 257 | </div> |
| 253 | 258 | </div> |
| 254 | 259 | |
| 255 | - <div class="form-group" ng-if="ctrl.busInfoForSave.scrapState == 1"> | |
| 260 | + <div class="form-group" ng-if="ctrl.busInfoForSave.scrapState"> | |
| 256 | 261 | <label class="col-md-2 control-label">报废日期:</label> |
| 257 | 262 | <div class="col-md-4"> |
| 258 | 263 | <div class="input-group"> |
| ... | ... | @@ -260,7 +265,7 @@ |
| 260 | 265 | name="scrapDate" placeholder="请选择报废日期..." |
| 261 | 266 | uib-datepicker-popup="yyyy年MM月dd日" |
| 262 | 267 | is-open="ctrl.scrapDateOpen" |
| 263 | - ng-model="ctrl.busInfoForSave.scrapDate" readonly/> | |
| 268 | + ng-model="ctrl.busInfoForSave.scrapDate" readonly required/> | |
| 264 | 269 | <span class="input-group-btn"> |
| 265 | 270 | <button type="button" class="btn btn-default" ng-click="ctrl.scrapDate_open()"> |
| 266 | 271 | <i class="glyphicon glyphicon-calendar"></i> |
| ... | ... | @@ -268,6 +273,11 @@ |
| 268 | 273 | </span> |
| 269 | 274 | </div> |
| 270 | 275 | </div> |
| 276 | + | |
| 277 | + <!-- 隐藏块,显示验证信息 --> | |
| 278 | + <div class="alert alert-danger well-sm" ng-show="myForm.scrapDate.$error.required"> | |
| 279 | + 报废日期必须填写 | |
| 280 | + </div> | |
| 271 | 281 | </div> |
| 272 | 282 | <div class="form-group"> |
| 273 | 283 | <label class="col-md-2 control-label">厂牌型号1:</label> | ... | ... |
src/main/resources/static/pages/scheduleApp/module/basicInfo/busInfoManage/module.js
| ... | ... | @@ -361,7 +361,8 @@ angular.module('ScheduleApp').controller( |
| 361 | 361 | '$stateParams', |
| 362 | 362 | '$state', |
| 363 | 363 | 'DataStore', |
| 364 | - function(service, $stateParams, $state, DataStore) { | |
| 364 | + '$scope', | |
| 365 | + function(service, $stateParams, $state, DataStore, $scope) { | |
| 365 | 366 | var self = this; |
| 366 | 367 | var Cars = service.getQueryClass(); |
| 367 | 368 | |
| ... | ... | @@ -387,19 +388,26 @@ angular.module('ScheduleApp').controller( |
| 387 | 388 | |
| 388 | 389 | // 获取传过来的id,有的话就是修改,获取一遍数据 |
| 389 | 390 | var id = $stateParams.id; |
| 391 | + var _equipmentCode_temp; | |
| 390 | 392 | if (id) { |
| 391 | - self.busInfoForSave = Cars.get({id: id}, function() {}); | |
| 393 | + self.busInfoForSave = Cars.get({id: id}, function(obj) { | |
| 394 | + if (!obj.scrapState) { // 防止null值 | |
| 395 | + obj.scrapState = false; | |
| 396 | + } | |
| 397 | + _equipmentCode_temp = obj.equipmentCode; | |
| 398 | + }); | |
| 399 | + } else { | |
| 400 | + self.busInfoForSave.scrapState = false; | |
| 392 | 401 | } |
| 393 | 402 | |
| 394 | 403 | // 提交方法 |
| 395 | 404 | self.submit = function() { |
| 396 | 405 | console.log(self.busInfoForSave); |
| 397 | 406 | |
| 398 | - // // 报废的车辆,修改原来的车辆终端号 | |
| 399 | - // if (self.busInfoForSave.scrapState == true) { | |
| 400 | - // self.busInfoForSave.equipmentCode = "BF-" + self.busInfoForSave.equipmentCode; | |
| 401 | - // self.busInfoForSave.scrapCode = "BF-" + self.busInfoForSave.equipmentCode; | |
| 402 | - // } | |
| 407 | + // 报废的车辆,修改原来的车辆终端号 | |
| 408 | + if (self.busInfoForSave.scrapState) { | |
| 409 | + self.busInfoForSave.equipmentCode = "BF-" + _equipmentCode_temp; | |
| 410 | + } | |
| 403 | 411 | |
| 404 | 412 | |
| 405 | 413 | // 保存或者更新 |
| ... | ... | @@ -408,6 +416,17 @@ angular.module('ScheduleApp').controller( |
| 408 | 416 | $state.go("busInfoManage"); |
| 409 | 417 | }); |
| 410 | 418 | }; |
| 419 | + | |
| 420 | + $scope.$watch( | |
| 421 | + function() { | |
| 422 | + return self.busInfoForSave.scrapState; | |
| 423 | + }, | |
| 424 | + function(n) { | |
| 425 | + if (!n) { | |
| 426 | + self.busInfoForSave.scrapCode = "BF-" + _equipmentCode_temp; | |
| 427 | + } | |
| 428 | + } | |
| 429 | + ); | |
| 411 | 430 | } |
| 412 | 431 | ] |
| 413 | 432 | ); | ... | ... |
src/main/resources/static/pages/scheduleApp/module/common/dts2/scheduleplan/saPlanInfoView.js
| ... | ... | @@ -20,7 +20,19 @@ angular.module('ScheduleApp').directive( |
| 20 | 20 | bindToController: true, |
| 21 | 21 | controller: function() { |
| 22 | 22 | var self = this; |
| 23 | - // TODO: | |
| 23 | + // .ttInfo_detail高度 | |
| 24 | + self.ttInfo_detail_height = 800; | |
| 25 | + // ds绑定的数据-路牌扩展数据 | |
| 26 | + self.ds_ext_lp_info = {"路牌名字" : {allLb : "关联的班次是否全部烂班(true/false)"}}; | |
| 27 | + // ds绑定的数据-线路扩展数据 | |
| 28 | + self.ds_ext_xl_info = {"dir0_qdzName" : "上线起点站名字", "dir0_tip_width" : "上行图标宽度", | |
| 29 | + "dir1_qdzName" : "下行起点站名字", "dir1_tip_width" : "下行图标宽度"}; | |
| 30 | + // ds绑定的数据-标题扩展数据1 | |
| 31 | + self.ds_head_info1 = ["路牌", "驾驶员", "自编号", "车牌号"]; | |
| 32 | + // ds绑定的数据-标题扩展数据2 | |
| 33 | + self.ds_head_info2 = []; | |
| 34 | + | |
| 35 | + // TODO:后面可能还有其他扩展信息 | |
| 24 | 36 | |
| 25 | 37 | }, |
| 26 | 38 | /** |
| ... | ... | @@ -73,6 +85,105 @@ angular.module('ScheduleApp').directive( |
| 73 | 85 | } |
| 74 | 86 | |
| 75 | 87 | }; |
| 88 | + | |
| 89 | + // ------------------- 监控function ------------------// | |
| 90 | + // 监控 ds: "=ngModel" 数据 | |
| 91 | + scope.$watch( | |
| 92 | + function() { | |
| 93 | + return scope[ctrlAs].ds; | |
| 94 | + }, | |
| 95 | + function(newValue) { | |
| 96 | + // 创建ds绑定的数据-路牌扩展数据 | |
| 97 | + if (newValue["contents"]) { | |
| 98 | + angular.forEach(newValue["contents"], function(value) { | |
| 99 | + var _lpName = value[0]["lpName"]; | |
| 100 | + scope[ctrlAs]["ds_ext_lp_info"][_lpName] = {allLb : false}; | |
| 101 | + var _bcCounts = 0; // 班次总数 | |
| 102 | + var _lbBcCounts = 0; // 烂班班次总数 | |
| 103 | + angular.forEach(value, function(bc) { | |
| 104 | + if (bc.id) { | |
| 105 | + _bcCounts ++; | |
| 106 | + if (bc.status == -1) { | |
| 107 | + _lbBcCounts ++; | |
| 108 | + } | |
| 109 | + } | |
| 110 | + }); | |
| 111 | + if (_bcCounts > 0 && _bcCounts == _lbBcCounts) { | |
| 112 | + scope[ctrlAs]["ds_ext_lp_info"][_lpName].allLb = true; | |
| 113 | + } | |
| 114 | + }); | |
| 115 | + } | |
| 116 | + | |
| 117 | + // 创建ds绑定数据-线路扩展数据 | |
| 118 | + scope[ctrlAs]["ds_ext_xl_info"] = {}; | |
| 119 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName = ""; | |
| 120 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName = ""; | |
| 121 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_tip_width = 50; | |
| 122 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_tip_width = 50; | |
| 123 | + if (newValue["contents"]) { | |
| 124 | + angular.forEach(newValue["contents"], function(value) { | |
| 125 | + if (scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName | |
| 126 | + && scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName) { | |
| 127 | + return; | |
| 128 | + } | |
| 129 | + angular.forEach(value, function (bc) { | |
| 130 | + if (bc.id && bc.bcType == 'normal') { | |
| 131 | + if (bc.xlDir == '0' && bc.qdzName && !scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName) { | |
| 132 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName = bc.qdzName; | |
| 133 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_tip_width += bc.qdzName.length * 15; | |
| 134 | + } else if (bc.xlDir == '1' && bc.qdzName && !scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName) { | |
| 135 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName = bc.qdzName; | |
| 136 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_tip_width += bc.qdzName.length * 15; | |
| 137 | + } | |
| 138 | + } | |
| 139 | + | |
| 140 | + }) | |
| 141 | + }); | |
| 142 | + } | |
| 143 | + | |
| 144 | + // 计算 .ttInfo_detail高度 | |
| 145 | + scope[ctrlAs]["ttInfo_detail_height"] = 0; | |
| 146 | + var toolbar_height = 31; // 工具栏高度(参见template css) | |
| 147 | + var tt_table_head_height = 36; // 表格标题高度(参见template css) | |
| 148 | + var table_info_height = 30; // 表格行高度(参见template css) | |
| 149 | + var table_extra_height = 30; // 表格修正高度 | |
| 150 | + if (newValue["contents"]) { | |
| 151 | + scope[ctrlAs]["ttInfo_detail_height"] = | |
| 152 | + toolbar_height + | |
| 153 | + tt_table_head_height + | |
| 154 | + table_info_height * newValue["contents"].length + | |
| 155 | + table_extra_height; | |
| 156 | + } | |
| 157 | + | |
| 158 | + // 创建ds绑定的数据-标题扩展数据2 | |
| 159 | + scope[ctrlAs]["ds_head_info2"] = []; | |
| 160 | + angular.forEach(newValue["header"], function(head) { | |
| 161 | + if (head != '路牌' && head != '驾驶员' && head != '自编号' && head != '车牌号') { | |
| 162 | + scope[ctrlAs]["ds_head_info2"].push(head); | |
| 163 | + } | |
| 164 | + }); | |
| 165 | + // 2个班次一组 [上行group_no,下行group_no],从1开始 | |
| 166 | + var group_num = 1; | |
| 167 | + var group_num_array = [1, 1]; | |
| 168 | + for (var i = 0; i < scope[ctrlAs]["ds_head_info2"].length; i++) { | |
| 169 | + var head = scope[ctrlAs]["ds_head_info2"][i]; | |
| 170 | + if (head == scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName) { | |
| 171 | + scope[ctrlAs]["ds_head_info2"][i] = head.substr(0, 1) + group_num_array[0]; | |
| 172 | + } else { | |
| 173 | + scope[ctrlAs]["ds_head_info2"][i] = head.substr(0, 1) + group_num_array[1]; | |
| 174 | + group_num ++ ; | |
| 175 | + group_num_array = [group_num, group_num]; | |
| 176 | + } | |
| 177 | + | |
| 178 | + // TODO:如果是环线的话,目前group_num都是1,后面如果有变化再修正 | |
| 179 | + } | |
| 180 | + | |
| 181 | + // TODO: | |
| 182 | + | |
| 183 | + }, | |
| 184 | + true | |
| 185 | + ); | |
| 186 | + | |
| 76 | 187 | } |
| 77 | 188 | |
| 78 | 189 | }; | ... | ... |
src/main/resources/static/pages/scheduleApp/module/common/dts2/scheduleplan/saPlanInfoViewTemplate.html
| ... | ... | @@ -236,6 +236,14 @@ |
| 236 | 236 | background: #e43a45 !important; |
| 237 | 237 | color: white; |
| 238 | 238 | } |
| 239 | + .tt_table dd.isDir_0 { | |
| 240 | + background: #81b9e9 !important; | |
| 241 | + color: white; | |
| 242 | + } | |
| 243 | + .tt_table dd.isDir_1 { | |
| 244 | + background: white !important; | |
| 245 | + color: black; | |
| 246 | + } | |
| 239 | 247 | .tt_table dd.ists { |
| 240 | 248 | background: #105383 !important; |
| 241 | 249 | color: white; |
| ... | ... | @@ -260,8 +268,8 @@ |
| 260 | 268 | } |
| 261 | 269 | |
| 262 | 270 | .tt_table dd.islb { |
| 263 | - background: #53ff34 !important; | |
| 264 | - color: #501a1a; | |
| 271 | + background: #df0808 !important; | |
| 272 | + color: white; | |
| 265 | 273 | } |
| 266 | 274 | |
| 267 | 275 | .tt_table dd.isModify { |
| ... | ... | @@ -362,7 +370,7 @@ |
| 362 | 370 | </style> |
| 363 | 371 | |
| 364 | 372 | |
| 365 | -<div class="ttInfo_detail"> | |
| 373 | +<div class="ttInfo_detail" style="height: {{$saPlanInfoViewCtrl.ttInfo_detail_height}}px;"> | |
| 366 | 374 | <div class="container-fluid top-container"> |
| 367 | 375 | <div class="col-md-12 container-fluid schedule-wrap"> |
| 368 | 376 | <div class="col-md-12" style="height: 100%"> |
| ... | ... | @@ -378,10 +386,12 @@ |
| 378 | 386 | </div> |
| 379 | 387 | |
| 380 | 388 | <div style="float: right; padding-right: 10px;"> |
| 381 | - <span style="padding-right: 10px;background: #337ab7;color: white;text-align: center;">出场班次</span> | |
| 382 | - <span style="padding-right: 10px;background: #4e6477;color: white;text-align: center;">进场班次</span> | |
| 383 | - <span style="padding-right: 10px;background: #53ff34;color: #501a1a;text-align: center;">烂班班次</span> | |
| 384 | - <span style="padding-right: 10px;outline: 2px solid #541aff; outline-offset: -3px; text-align: center;">班次修改过</span> | |
| 389 | + <div style="display: inline-block;background: #81b9e9;color: white;text-align: center;height: 25px;line-height: 25px;width: {{$saPlanInfoViewCtrl.ds_ext_xl_info.dir0_tip_width}}px;">上行-{{$saPlanInfoViewCtrl.ds_ext_xl_info.dir0_qdzName}}</div> | |
| 390 | + <div style="display: inline-block;background: white;color: black;text-align: center;height: 25px;line-height: 25px;width: {{$saPlanInfoViewCtrl.ds_ext_xl_info.dir1_tip_width}}px;">下行-{{$saPlanInfoViewCtrl.ds_ext_xl_info.dir1_qdzName}}</div> | |
| 391 | + <div style="display: inline-block;background: #337ab7;color: white;text-align: center;height: 25px;line-height: 25px;width: 90px;">出场班次</div> | |
| 392 | + <div style="display: inline-block;background: #4e6477;color: white;text-align: center;height: 25px;line-height: 25px;width: 90px;">进场班次</div> | |
| 393 | + <div style="display: inline-block;background: #df0808;color: white;text-align: center;height: 25px;line-height: 25px;width: 90px;">烂班班次</div> | |
| 394 | + <div style="display: inline-block;outline: 2px solid #541aff;outline-offset: -3px;text-align: center;height: 25px;line-height: 25px;width: 90px;">班次修改过</div> | |
| 385 | 395 | </div> |
| 386 | 396 | </div> |
| 387 | 397 | |
| ... | ... | @@ -421,9 +431,13 @@ |
| 421 | 431 | 序号 |
| 422 | 432 | </dt> |
| 423 | 433 | |
| 424 | - <dt ng-repeat="head in $saPlanInfoViewCtrl.ds.header track by $index"> | |
| 425 | - {{(head != '路牌' && head != '驾驶员' && head != '自编号' && head != '车牌号') ? (head.substr(0, 1) + ($index)): head}} | |
| 434 | + <dt ng-repeat="head1 in $saPlanInfoViewCtrl.ds_head_info1 track by $index"> | |
| 435 | + {{head1}} | |
| 436 | + </dt> | |
| 437 | + <dt ng-repeat="head2 in $saPlanInfoViewCtrl.ds_head_info2 track by $index"> | |
| 438 | + {{head2}} | |
| 426 | 439 | </dt> |
| 440 | + | |
| 427 | 441 | </dl> |
| 428 | 442 | </div> |
| 429 | 443 | |
| ... | ... | @@ -437,23 +451,27 @@ |
| 437 | 451 | |
| 438 | 452 | <dd ng-repeat="cell in info track by $index" |
| 439 | 453 | ng-init="colIndex = $index" |
| 440 | - ng-if="$index == 0" > | |
| 454 | + ng-if="$index == 0" | |
| 455 | + ng-class="{islb : $saPlanInfoViewCtrl.ds_ext_lp_info[info[0].lpName].allLb}"> | |
| 441 | 456 | {{cell.lpName}} |
| 442 | 457 | </dd> |
| 443 | 458 | <dd ng-repeat="cell in info track by $index" |
| 444 | 459 | ng-init="colIndex = $index" |
| 445 | - ng-if="$index == 1" > | |
| 460 | + ng-if="$index == 1" | |
| 461 | + ng-class="{islb : $saPlanInfoViewCtrl.ds_ext_lp_info[info[0].lpName].allLb}"> | |
| 446 | 462 | {{cell.jName}} |
| 447 | 463 | </dd> |
| 448 | 464 | <dd ng-repeat="cell in info track by $index" |
| 449 | 465 | ng-init="colIndex = $index" |
| 450 | - ng-if="$index == 2" > | |
| 466 | + ng-if="$index == 2" | |
| 467 | + ng-class="{islb : $saPlanInfoViewCtrl.ds_ext_lp_info[info[0].lpName].allLb}"> | |
| 451 | 468 | {{cell.clZbh}} |
| 452 | 469 | </dd> |
| 453 | 470 | |
| 454 | 471 | <dd ng-repeat="cell in info track by $index" |
| 455 | 472 | ng-init="colIndex = $index" |
| 456 | - ng-if="$index == 3" style="border-right: 2px solid #96b9d7;"> | |
| 473 | + ng-if="$index == 3" style="border-right: 2px solid #96b9d7;" | |
| 474 | + ng-class="{islb : $saPlanInfoViewCtrl.ds_ext_lp_info[info[0].lpName].allLb}"> | |
| 457 | 475 | {{cell.clZbh}} |
| 458 | 476 | </dd> |
| 459 | 477 | |
| ... | ... | @@ -490,6 +508,8 @@ |
| 490 | 508 | lpName: true, |
| 491 | 509 | error: false, |
| 492 | 510 | active: cell.sel, |
| 511 | + isDir_0: cell.xlDir == '0', | |
| 512 | + isDir_1: cell.xlDir == '1', | |
| 493 | 513 | ists: false, |
| 494 | 514 | region: false, |
| 495 | 515 | isfb: false, | ... | ... |
src/main/resources/static/pages/scheduleApp/module/common/prj-common-directive.js
| ... | ... | @@ -6630,7 +6630,19 @@ angular.module('ScheduleApp').directive( |
| 6630 | 6630 | bindToController: true, |
| 6631 | 6631 | controller: function() { |
| 6632 | 6632 | var self = this; |
| 6633 | - // TODO: | |
| 6633 | + // .ttInfo_detail高度 | |
| 6634 | + self.ttInfo_detail_height = 800; | |
| 6635 | + // ds绑定的数据-路牌扩展数据 | |
| 6636 | + self.ds_ext_lp_info = {"路牌名字" : {allLb : "关联的班次是否全部烂班(true/false)"}}; | |
| 6637 | + // ds绑定的数据-线路扩展数据 | |
| 6638 | + self.ds_ext_xl_info = {"dir0_qdzName" : "上线起点站名字", "dir0_tip_width" : "上行图标宽度", | |
| 6639 | + "dir1_qdzName" : "下行起点站名字", "dir1_tip_width" : "下行图标宽度"}; | |
| 6640 | + // ds绑定的数据-标题扩展数据1 | |
| 6641 | + self.ds_head_info1 = ["路牌", "驾驶员", "自编号", "车牌号"]; | |
| 6642 | + // ds绑定的数据-标题扩展数据2 | |
| 6643 | + self.ds_head_info2 = []; | |
| 6644 | + | |
| 6645 | + // TODO:后面可能还有其他扩展信息 | |
| 6634 | 6646 | |
| 6635 | 6647 | }, |
| 6636 | 6648 | /** |
| ... | ... | @@ -6683,6 +6695,105 @@ angular.module('ScheduleApp').directive( |
| 6683 | 6695 | } |
| 6684 | 6696 | |
| 6685 | 6697 | }; |
| 6698 | + | |
| 6699 | + // ------------------- 监控function ------------------// | |
| 6700 | + // 监控 ds: "=ngModel" 数据 | |
| 6701 | + scope.$watch( | |
| 6702 | + function() { | |
| 6703 | + return scope[ctrlAs].ds; | |
| 6704 | + }, | |
| 6705 | + function(newValue) { | |
| 6706 | + // 创建ds绑定的数据-路牌扩展数据 | |
| 6707 | + if (newValue["contents"]) { | |
| 6708 | + angular.forEach(newValue["contents"], function(value) { | |
| 6709 | + var _lpName = value[0]["lpName"]; | |
| 6710 | + scope[ctrlAs]["ds_ext_lp_info"][_lpName] = {allLb : false}; | |
| 6711 | + var _bcCounts = 0; // 班次总数 | |
| 6712 | + var _lbBcCounts = 0; // 烂班班次总数 | |
| 6713 | + angular.forEach(value, function(bc) { | |
| 6714 | + if (bc.id) { | |
| 6715 | + _bcCounts ++; | |
| 6716 | + if (bc.status == -1) { | |
| 6717 | + _lbBcCounts ++; | |
| 6718 | + } | |
| 6719 | + } | |
| 6720 | + }); | |
| 6721 | + if (_bcCounts > 0 && _bcCounts == _lbBcCounts) { | |
| 6722 | + scope[ctrlAs]["ds_ext_lp_info"][_lpName].allLb = true; | |
| 6723 | + } | |
| 6724 | + }); | |
| 6725 | + } | |
| 6726 | + | |
| 6727 | + // 创建ds绑定数据-线路扩展数据 | |
| 6728 | + scope[ctrlAs]["ds_ext_xl_info"] = {}; | |
| 6729 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName = ""; | |
| 6730 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName = ""; | |
| 6731 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_tip_width = 50; | |
| 6732 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_tip_width = 50; | |
| 6733 | + if (newValue["contents"]) { | |
| 6734 | + angular.forEach(newValue["contents"], function(value) { | |
| 6735 | + if (scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName | |
| 6736 | + && scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName) { | |
| 6737 | + return; | |
| 6738 | + } | |
| 6739 | + angular.forEach(value, function (bc) { | |
| 6740 | + if (bc.id && bc.bcType == 'normal') { | |
| 6741 | + if (bc.xlDir == '0' && bc.qdzName && !scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName) { | |
| 6742 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName = bc.qdzName; | |
| 6743 | + scope[ctrlAs]["ds_ext_xl_info"].dir0_tip_width += bc.qdzName.length * 15; | |
| 6744 | + } else if (bc.xlDir == '1' && bc.qdzName && !scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName) { | |
| 6745 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_qdzName = bc.qdzName; | |
| 6746 | + scope[ctrlAs]["ds_ext_xl_info"].dir1_tip_width += bc.qdzName.length * 15; | |
| 6747 | + } | |
| 6748 | + } | |
| 6749 | + | |
| 6750 | + }) | |
| 6751 | + }); | |
| 6752 | + } | |
| 6753 | + | |
| 6754 | + // 计算 .ttInfo_detail高度 | |
| 6755 | + scope[ctrlAs]["ttInfo_detail_height"] = 0; | |
| 6756 | + var toolbar_height = 31; // 工具栏高度(参见template css) | |
| 6757 | + var tt_table_head_height = 36; // 表格标题高度(参见template css) | |
| 6758 | + var table_info_height = 30; // 表格行高度(参见template css) | |
| 6759 | + var table_extra_height = 30; // 表格修正高度 | |
| 6760 | + if (newValue["contents"]) { | |
| 6761 | + scope[ctrlAs]["ttInfo_detail_height"] = | |
| 6762 | + toolbar_height + | |
| 6763 | + tt_table_head_height + | |
| 6764 | + table_info_height * newValue["contents"].length + | |
| 6765 | + table_extra_height; | |
| 6766 | + } | |
| 6767 | + | |
| 6768 | + // 创建ds绑定的数据-标题扩展数据2 | |
| 6769 | + scope[ctrlAs]["ds_head_info2"] = []; | |
| 6770 | + angular.forEach(newValue["header"], function(head) { | |
| 6771 | + if (head != '路牌' && head != '驾驶员' && head != '自编号' && head != '车牌号') { | |
| 6772 | + scope[ctrlAs]["ds_head_info2"].push(head); | |
| 6773 | + } | |
| 6774 | + }); | |
| 6775 | + // 2个班次一组 [上行group_no,下行group_no],从1开始 | |
| 6776 | + var group_num = 1; | |
| 6777 | + var group_num_array = [1, 1]; | |
| 6778 | + for (var i = 0; i < scope[ctrlAs]["ds_head_info2"].length; i++) { | |
| 6779 | + var head = scope[ctrlAs]["ds_head_info2"][i]; | |
| 6780 | + if (head == scope[ctrlAs]["ds_ext_xl_info"].dir0_qdzName) { | |
| 6781 | + scope[ctrlAs]["ds_head_info2"][i] = head.substr(0, 1) + group_num_array[0]; | |
| 6782 | + } else { | |
| 6783 | + scope[ctrlAs]["ds_head_info2"][i] = head.substr(0, 1) + group_num_array[1]; | |
| 6784 | + group_num ++ ; | |
| 6785 | + group_num_array = [group_num, group_num]; | |
| 6786 | + } | |
| 6787 | + | |
| 6788 | + // TODO:如果是环线的话,目前group_num都是1,后面如果有变化再修正 | |
| 6789 | + } | |
| 6790 | + | |
| 6791 | + // TODO: | |
| 6792 | + | |
| 6793 | + }, | |
| 6794 | + true | |
| 6795 | + ); | |
| 6796 | + | |
| 6686 | 6797 | } |
| 6687 | 6798 | |
| 6688 | 6799 | }; | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/report/ext/edit.html
| ... | ... | @@ -222,44 +222,44 @@ |
| 222 | 222 | |
| 223 | 223 | </div> |
| 224 | 224 | |
| 225 | - <div class="form-group"> | |
| 226 | - <label class="col-md-5 control-label">售票员1:</label> | |
| 227 | - <div class="col-md-7"> | |
| 228 | - <sa-Select5 name="s1" | |
| 229 | - model="ctrl.formData" | |
| 230 | - cmaps="{'s1.id' : 'id', 's1.jobCode': 'workId', 's1.name': 'name'}" | |
| 231 | - dcname="s1.id" | |
| 232 | - icname="id" | |
| 233 | - dsparams="{{ {type: 'local', param: 'ry' } | json }}" | |
| 234 | - iterobjname="item" | |
| 235 | - iterobjexp="item.name + '(' + item.workId + ')'" | |
| 236 | - searchph="请输拼音..." | |
| 237 | - searchexp="this.name" | |
| 238 | - > | |
| 239 | - </sa-Select5> | |
| 240 | - </div> | |
| 241 | - | |
| 242 | - <!-- 公司权限 --> | |
| 243 | - <input type="hidden" name="s1_h_gs" ng-model="ctrl.formData.s1.id" | |
| 244 | - remote-Validation | |
| 245 | - remotevtype="ec_spy_gs" | |
| 246 | - remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s1.id} | json}}" /> | |
| 247 | - <div class="alert alert-danger well-sm" ng-show="myForm.s1_h_gs.$error.remote"> | |
| 248 | - <i class="fa fa-times-circle" aria-hidden="true"></i> | |
| 249 | - {{$remote_msg}} | |
| 250 | - </div> | |
| 251 | - <!-- 分公司权限 --> | |
| 252 | - <input type="hidden" name="s1_h_fgs" ng-model="ctrl.formData.s1.id" | |
| 253 | - remote-Warn | |
| 254 | - remotewtype="ec_spy_fgs" | |
| 255 | - remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s1.id} | json}}" | |
| 256 | - remotewmsgprop="ec_spy1_fgs_warn" | |
| 257 | - /> | |
| 258 | - <div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy1_fgs_warn"> | |
| 259 | - <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 260 | - {{ctrl.ec_spy1_fgs_warn}} | |
| 261 | - </div> | |
| 262 | - </div> | |
| 225 | + <!--<div class="form-group">--> | |
| 226 | + <!--<label class="col-md-5 control-label">售票员1:</label>--> | |
| 227 | + <!--<div class="col-md-7">--> | |
| 228 | + <!--<sa-Select5 name="s1"--> | |
| 229 | + <!--model="ctrl.formData"--> | |
| 230 | + <!--cmaps="{'s1.id' : 'id', 's1.jobCode': 'workId', 's1.name': 'name'}"--> | |
| 231 | + <!--dcname="s1.id"--> | |
| 232 | + <!--icname="id"--> | |
| 233 | + <!--dsparams="{{ {type: 'local', param: 'ry' } | json }}"--> | |
| 234 | + <!--iterobjname="item"--> | |
| 235 | + <!--iterobjexp="item.name + '(' + item.workId + ')'"--> | |
| 236 | + <!--searchph="请输拼音..."--> | |
| 237 | + <!--searchexp="this.name"--> | |
| 238 | + <!-->--> | |
| 239 | + <!--</sa-Select5>--> | |
| 240 | + <!--</div>--> | |
| 241 | + | |
| 242 | + <!--<!– 公司权限 –>--> | |
| 243 | + <!--<input type="hidden" name="s1_h_gs" ng-model="ctrl.formData.s1.id"--> | |
| 244 | + <!--remote-Validation--> | |
| 245 | + <!--remotevtype="ec_spy_gs"--> | |
| 246 | + <!--remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s1.id} | json}}" />--> | |
| 247 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.s1_h_gs.$error.remote">--> | |
| 248 | + <!--<i class="fa fa-times-circle" aria-hidden="true"></i>--> | |
| 249 | + <!--{{$remote_msg}}--> | |
| 250 | + <!--</div>--> | |
| 251 | + <!--<!– 分公司权限 –>--> | |
| 252 | + <!--<input type="hidden" name="s1_h_fgs" ng-model="ctrl.formData.s1.id"--> | |
| 253 | + <!--remote-Warn--> | |
| 254 | + <!--remotewtype="ec_spy_fgs"--> | |
| 255 | + <!--remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s1.id} | json}}"--> | |
| 256 | + <!--remotewmsgprop="ec_spy1_fgs_warn"--> | |
| 257 | + <!--/>--> | |
| 258 | + <!--<div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy1_fgs_warn">--> | |
| 259 | + <!--<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>--> | |
| 260 | + <!--{{ctrl.ec_spy1_fgs_warn}}--> | |
| 261 | + <!--</div>--> | |
| 262 | + <!--</div>--> | |
| 263 | 263 | |
| 264 | 264 | <div class="form-group"> |
| 265 | 265 | <label class="col-md-5 control-label">驾驶员2:</label> |
| ... | ... | @@ -301,45 +301,45 @@ |
| 301 | 301 | |
| 302 | 302 | </div> |
| 303 | 303 | |
| 304 | - <div class="form-group"> | |
| 305 | - <label class="col-md-5 control-label">售票员2:</label> | |
| 306 | - <div class="col-md-7"> | |
| 307 | - <sa-Select5 name="s2" | |
| 308 | - model="ctrl.formData" | |
| 309 | - cmaps="{'s2.id' : 'id', 's2.jobCode': 'workId', 's2.name': 'name'}" | |
| 310 | - dcname="s2.id" | |
| 311 | - icname="id" | |
| 312 | - dsparams="{{ {type: 'local', param: 'ry' } | json }}" | |
| 313 | - iterobjname="item" | |
| 314 | - iterobjexp="item.name + '(' + item.workId + ')'" | |
| 315 | - searchph="请输拼音..." | |
| 316 | - searchexp="this.name" | |
| 317 | - > | |
| 318 | - </sa-Select5> | |
| 319 | - </div> | |
| 320 | - | |
| 321 | - <!-- 公司权限 --> | |
| 322 | - <input type="hidden" name="s2_h_gs" ng-model="ctrl.formData.s2.id" | |
| 323 | - remote-Validation | |
| 324 | - remotevtype="ec_spy_gs" | |
| 325 | - remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s2.id} | json}}" /> | |
| 326 | - <div class="alert alert-danger well-sm" ng-show="myForm.s2_h_gs.$error.remote"> | |
| 327 | - <i class="fa fa-times-circle" aria-hidden="true"></i> | |
| 328 | - {{$remote_msg}} | |
| 329 | - </div> | |
| 330 | - <!-- 分公司权限 --> | |
| 331 | - <input type="hidden" name="s2_h_fgs" ng-model="ctrl.formData.s2.id" | |
| 332 | - remote-Warn | |
| 333 | - remotewtype="ec_spy_fgs" | |
| 334 | - remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s2.id} | json}}" | |
| 335 | - remotewmsgprop="ec_spy2_fgs_warn" | |
| 336 | - /> | |
| 337 | - <div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy2_fgs_warn"> | |
| 338 | - <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 339 | - {{ctrl.ec_spy2_fgs_warn}} | |
| 340 | - </div> | |
| 341 | - | |
| 342 | - </div> | |
| 304 | + <!--<div class="form-group">--> | |
| 305 | + <!--<label class="col-md-5 control-label">售票员2:</label>--> | |
| 306 | + <!--<div class="col-md-7">--> | |
| 307 | + <!--<sa-Select5 name="s2"--> | |
| 308 | + <!--model="ctrl.formData"--> | |
| 309 | + <!--cmaps="{'s2.id' : 'id', 's2.jobCode': 'workId', 's2.name': 'name'}"--> | |
| 310 | + <!--dcname="s2.id"--> | |
| 311 | + <!--icname="id"--> | |
| 312 | + <!--dsparams="{{ {type: 'local', param: 'ry' } | json }}"--> | |
| 313 | + <!--iterobjname="item"--> | |
| 314 | + <!--iterobjexp="item.name + '(' + item.workId + ')'"--> | |
| 315 | + <!--searchph="请输拼音..."--> | |
| 316 | + <!--searchexp="this.name"--> | |
| 317 | + <!-->--> | |
| 318 | + <!--</sa-Select5>--> | |
| 319 | + <!--</div>--> | |
| 320 | + | |
| 321 | + <!--<!– 公司权限 –>--> | |
| 322 | + <!--<input type="hidden" name="s2_h_gs" ng-model="ctrl.formData.s2.id"--> | |
| 323 | + <!--remote-Validation--> | |
| 324 | + <!--remotevtype="ec_spy_gs"--> | |
| 325 | + <!--remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s2.id} | json}}" />--> | |
| 326 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.s2_h_gs.$error.remote">--> | |
| 327 | + <!--<i class="fa fa-times-circle" aria-hidden="true"></i>--> | |
| 328 | + <!--{{$remote_msg}}--> | |
| 329 | + <!--</div>--> | |
| 330 | + <!--<!– 分公司权限 –>--> | |
| 331 | + <!--<input type="hidden" name="s2_h_fgs" ng-model="ctrl.formData.s2.id"--> | |
| 332 | + <!--remote-Warn--> | |
| 333 | + <!--remotewtype="ec_spy_fgs"--> | |
| 334 | + <!--remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s2.id} | json}}"--> | |
| 335 | + <!--remotewmsgprop="ec_spy2_fgs_warn"--> | |
| 336 | + <!--/>--> | |
| 337 | + <!--<div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy2_fgs_warn">--> | |
| 338 | + <!--<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>--> | |
| 339 | + <!--{{ctrl.ec_spy2_fgs_warn}}--> | |
| 340 | + <!--</div>--> | |
| 341 | + | |
| 342 | + <!--</div>--> | |
| 343 | 343 | |
| 344 | 344 | <div class="form-group"> |
| 345 | 345 | <label class="col-md-5 control-label">驾驶员3:</label> |
| ... | ... | @@ -381,45 +381,45 @@ |
| 381 | 381 | |
| 382 | 382 | </div> |
| 383 | 383 | |
| 384 | - <div class="form-group"> | |
| 385 | - <label class="col-md-5 control-label">售票员3:</label> | |
| 386 | - <div class="col-md-7"> | |
| 387 | - <sa-Select5 name="s3" | |
| 388 | - model="ctrl.formData" | |
| 389 | - cmaps="{'s3.id' : 'id', 's3.jobCode': 'workId', 's3.name': 'name'}" | |
| 390 | - dcname="s3.id" | |
| 391 | - icname="id" | |
| 392 | - dsparams="{{ {type: 'local', param: 'ry' } | json }}" | |
| 393 | - iterobjname="item" | |
| 394 | - iterobjexp="item.name + '(' + item.workId + ')'" | |
| 395 | - searchph="请输拼音..." | |
| 396 | - searchexp="this.name" | |
| 397 | - > | |
| 398 | - </sa-Select5> | |
| 399 | - </div> | |
| 400 | - | |
| 401 | - <!-- 公司权限 --> | |
| 402 | - <input type="hidden" name="s3_h_gs" ng-model="ctrl.formData.s3.id" | |
| 403 | - remote-Validation | |
| 404 | - remotevtype="ec_spy_gs" | |
| 405 | - remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s3.id} | json}}" /> | |
| 406 | - <div class="alert alert-danger well-sm" ng-show="myForm.s3_h_gs.$error.remote"> | |
| 407 | - <i class="fa fa-times-circle" aria-hidden="true"></i> | |
| 408 | - {{$remote_msg}} | |
| 409 | - </div> | |
| 410 | - <!-- 分公司权限 --> | |
| 411 | - <input type="hidden" name="s3_h_fgs" ng-model="ctrl.formData.s3.id" | |
| 412 | - remote-Warn | |
| 413 | - remotewtype="ec_spy_fgs" | |
| 414 | - remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s3.id} | json}}" | |
| 415 | - remotewmsgprop="ec_spy3_fgs_warn" | |
| 416 | - /> | |
| 417 | - <div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy3_fgs_warn"> | |
| 418 | - <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | |
| 419 | - {{ctrl.ec_spy3_fgs_warn}} | |
| 420 | - </div> | |
| 421 | - | |
| 422 | - </div> | |
| 384 | + <!--<div class="form-group">--> | |
| 385 | + <!--<label class="col-md-5 control-label">售票员3:</label>--> | |
| 386 | + <!--<div class="col-md-7">--> | |
| 387 | + <!--<sa-Select5 name="s3"--> | |
| 388 | + <!--model="ctrl.formData"--> | |
| 389 | + <!--cmaps="{'s3.id' : 'id', 's3.jobCode': 'workId', 's3.name': 'name'}"--> | |
| 390 | + <!--dcname="s3.id"--> | |
| 391 | + <!--icname="id"--> | |
| 392 | + <!--dsparams="{{ {type: 'local', param: 'ry' } | json }}"--> | |
| 393 | + <!--iterobjname="item"--> | |
| 394 | + <!--iterobjexp="item.name + '(' + item.workId + ')'"--> | |
| 395 | + <!--searchph="请输拼音..."--> | |
| 396 | + <!--searchexp="this.name"--> | |
| 397 | + <!-->--> | |
| 398 | + <!--</sa-Select5>--> | |
| 399 | + <!--</div>--> | |
| 400 | + | |
| 401 | + <!--<!– 公司权限 –>--> | |
| 402 | + <!--<input type="hidden" name="s3_h_gs" ng-model="ctrl.formData.s3.id"--> | |
| 403 | + <!--remote-Validation--> | |
| 404 | + <!--remotevtype="ec_spy_gs"--> | |
| 405 | + <!--remotevparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s3.id} | json}}" />--> | |
| 406 | + <!--<div class="alert alert-danger well-sm" ng-show="myForm.s3_h_gs.$error.remote">--> | |
| 407 | + <!--<i class="fa fa-times-circle" aria-hidden="true"></i>--> | |
| 408 | + <!--{{$remote_msg}}--> | |
| 409 | + <!--</div>--> | |
| 410 | + <!--<!– 分公司权限 –>--> | |
| 411 | + <!--<input type="hidden" name="s3_h_fgs" ng-model="ctrl.formData.s3.id"--> | |
| 412 | + <!--remote-Warn--> | |
| 413 | + <!--remotewtype="ec_spy_fgs"--> | |
| 414 | + <!--remotewparam="{{ {'xl.id_eq': ctrl.xlId, 'xl.name_eq': ctrl.xlName, 'spy.id_eq': ctrl.formData.s3.id} | json}}"--> | |
| 415 | + <!--remotewmsgprop="ec_spy3_fgs_warn"--> | |
| 416 | + <!--/>--> | |
| 417 | + <!--<div class="alert alert-warning well-sm" ng-show="ctrl.ec_spy3_fgs_warn">--> | |
| 418 | + <!--<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>--> | |
| 419 | + <!--{{ctrl.ec_spy3_fgs_warn}}--> | |
| 420 | + <!--</div>--> | |
| 421 | + | |
| 422 | + <!--</div>--> | |
| 423 | 423 | |
| 424 | 424 | <div class="form-group"> |
| 425 | 425 | <label class="col-md-5 control-label">备注:</label> |
| ... | ... | @@ -488,4 +488,4 @@ |
| 488 | 488 | </div> |
| 489 | 489 | |
| 490 | 490 | |
| 491 | -</div> | |
| 492 | 491 | \ No newline at end of file |
| 492 | +</div> | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/report/ext/list.html
| ... | ... | @@ -24,7 +24,7 @@ |
| 24 | 24 | </div> |
| 25 | 25 | </div> |
| 26 | 26 | |
| 27 | - <div ng-if="ctrl.viewId == 1" style="height: {{ctrl.ttHeight}}px;"> | |
| 27 | + <div class="fixDiv" ng-if="ctrl.viewId == 1"> | |
| 28 | 28 | <sa-Planinfoview name="saPlanView" ng-model="ctrl.saPlanInfoViewData.infos" ng-model-options="{ getterSetter: true }" |
| 29 | 29 | celldbclick="ctrl.singleEditBcDetail" toolbarlplbclick="ctrl.routeToLpLbView"> |
| 30 | 30 | </sa-Planinfoview> | ... | ... |
src/main/resources/static/pages/scheduleApp/module/core/schedulePlanManage/report/ext/module.js