Commit 77217ea7fd1a095c29a99146e2e769d908232f4e
Merge remote-tracking branch 'origin/pudong_jdk8_wvp' into pudong_jdk8_wvp
Showing
24 changed files
with
3466 additions
and
2944 deletions
src/main/resources/static/pages/scheduleApp/language/en.js
| @@ -2,10 +2,52 @@ | @@ -2,10 +2,52 @@ | ||
| 2 | // 英文资源 | 2 | // 英文资源 |
| 3 | 3 | ||
| 4 | var ScheduleApp_en_language = { | 4 | var ScheduleApp_en_language = { |
| 5 | + // main.js | ||
| 6 | + "main_js_line_82_txt-3966" : "Operation", | ||
| 7 | + "main_js_line_83_txt-3958" : "Lack of vehicles", | ||
| 8 | + "main_js_line_84_txt-3960" : "Climate", | ||
| 9 | + "main_js_line_85_txt-3837" : "Accident", | ||
| 10 | + "main_js_line_86_txt-3838" : "Dispute", | ||
| 11 | + "main_js_line_87_txt-3876" : "Reduction", | ||
| 12 | + "main_js_line_88_txt-4026" : "Vehicle allocation", | ||
| 13 | + "main_js_line_89_txt-3840" : "Fault", | ||
| 14 | + "main_js_line_90_txt-3961" : "Road obstruction", | ||
| 15 | + "main_js_line_91_txt-3962" : "Few passengers", | ||
| 16 | + "main_js_line_92_txt-3963" : "Slow hanging", | ||
| 17 | + "main_js_line_93_txt-4197" : "Other", | ||
| 18 | + "main_js_line_94_txt-4102" : "Maintenance", | ||
| 19 | + "main_js_line_95_txt-3957" : "Lack of manpower", | ||
| 20 | + "main_js_line_96_txt-3956" : "Foreign aid", | ||
| 21 | + "main_js_line_99_txt-2790" : "Current version", | ||
| 22 | + "main_js_line_100_txt-168" : "All Versions (To be Updated, Current, Historical)", | ||
| 23 | + "main_js_line_301_txt-1805" : "Please Log in Again!", | ||
| 24 | + "main_js_line_304_txt-2284" : "Status Code:", | ||
| 25 | + "main_js_line_305_txt-2285" : "Access Path:", | ||
| 26 | + "main_js_line_306_txt-2286" : "Error Message:", | ||
| 27 | + "main_js_line_307_txt-1807" : "Server Error:", | ||
| 28 | + "main_js_line_325_txt-695" : "It seems that the server cannot connect", | ||
| 29 | + "main_js_line_327_txt-2284" : "Status Code:", | ||
| 30 | + "main_js_line_330_txt-2325" : "Error Content:", | ||
| 31 | + "main_js_line_332_txt-2325" : "Error Content:", | ||
| 32 | + "main_js_line_336_txt-1807" : "Server Error:", | ||
| 33 | + "main_js_line_338_txt-1838" : "Please Log in Again:", | ||
| 34 | + "main_js_line_340_txt-2333" : "Other Errors:", | ||
| 35 | + "main_js_line_383_txt-1149" : "Subpages Loaded:", | ||
| 36 | + | ||
| 37 | + //------------ 自定义指令 --------------// | ||
| 38 | + // 指令位置:../module/common/dts2/queryOption | ||
| 39 | + // 页面:saOrderOptionTemplate.html | ||
| 40 | + "queryOption_saOrderOptionTemplate_line93_txt-4157" : "Ascending order", | ||
| 41 | + "queryOption_saOrderOptionTemplate_line94_txt-4156" : "Descending order", | ||
| 42 | + | ||
| 43 | + // 指令位置:../module/common/dts1/select | ||
| 44 | + // js:saSelect5.js | ||
| 45 | + "saSelect5_js_line375_txt-1275" : "Dictionary data is not available=", | ||
| 46 | + | ||
| 5 | //------------ 车辆信息管理模块 -----------// | 47 | //------------ 车辆信息管理模块 -----------// |
| 6 | // 模块位置:../module/basicInfo/busInfoManage | 48 | // 模块位置:../module/basicInfo/busInfoManage |
| 7 | - // 页面;index.html | ||
| 8 | 49 | ||
| 50 | + // 页面;index.html | ||
| 9 | // line3 | 51 | // line3 |
| 10 | "busInfoManage_index_page-title" : "vehicle information management", | 52 | "busInfoManage_index_page-title" : "vehicle information management", |
| 11 | // line9 | 53 | // line9 |
| @@ -57,11 +99,11 @@ var ScheduleApp_en_language = { | @@ -57,11 +99,11 @@ var ScheduleApp_en_language = { | ||
| 57 | "busInfoManage_list_page_line142_txt-4257" : "Yes", | 99 | "busInfoManage_list_page_line142_txt-4257" : "Yes", |
| 58 | "busInfoManage_list_page_line142_txt-3817" : "Cancel", | 100 | "busInfoManage_list_page_line142_txt-3817" : "Cancel", |
| 59 | "busInfoManage_list_page_line144_txt-3868" : "Delete", | 101 | "busInfoManage_list_page_line144_txt-3868" : "Delete", |
| 60 | - "busInfoManage_list_page_line153_txt-3053" : "Showing {{from}} to {{to}} of {{total}}entries.10 entries per page", | ||
| 61 | - "busInfoManage_list_page_line163_txt-4430" : "First", | ||
| 62 | - "busInfoManage_list_page_line164_txt-3613" : "Previous", | ||
| 63 | - "busInfoManage_list_page_line165_txt-3614" : "Next", | ||
| 64 | - "busInfoManage_list_page_line166_txt-4068" : "Last", | 102 | + "busInfoManage_list_page_line156_txt-3053" : "Showing {{from}} to {{to}} of {{total}}entries.10 entries per page", |
| 103 | + "busInfoManage_list_page_line169_txt-4430" : "First", | ||
| 104 | + "busInfoManage_list_page_line170_txt-3613" : "Previous", | ||
| 105 | + "busInfoManage_list_page_line171_txt-3614" : "Next", | ||
| 106 | + "busInfoManage_list_page_line172_txt-4068" : "Last", | ||
| 65 | 107 | ||
| 66 | // 页面:detail.html | 108 | // 页面:detail.html |
| 67 | "busInfoManage_detail_page_line3_txt-1656" : "vehicle details", | 109 | "busInfoManage_detail_page_line3_txt-1656" : "vehicle details", |
| @@ -287,8 +329,273 @@ var ScheduleApp_en_language = { | @@ -287,8 +329,273 @@ var ScheduleApp_en_language = { | ||
| 287 | "busInfoManage_module_js_line434_txt-4009" : "Vehicles", | 329 | "busInfoManage_module_js_line434_txt-4009" : "Vehicles", |
| 288 | "busInfoManage_module_js_line434_txt-3066" : "Details", | 330 | "busInfoManage_module_js_line434_txt-3066" : "Details", |
| 289 | 331 | ||
| 332 | + //------------ 人员信息管理模块 -----------// | ||
| 333 | + // 模块位置:../module/basicInfo/employeeInfoManage | ||
| 334 | + // 页面;index.html | ||
| 335 | + "employeeInfoManage_index_page_line3_txt-1658" : "Personnel information management", | ||
| 336 | + "employeeInfoManage_index_page_line9_txt-3807" : "Home page", | ||
| 337 | + "employeeInfoManage_index_page_line13_txt-2398" : "Basic information", | ||
| 338 | + "employeeInfoManage_index_page_line17_txt-1658" : "Personnel information management", | ||
| 339 | + "employeeInfoManage_index_page_line36_txt-2234" : "Personnel information table", | ||
| 340 | + "employeeInfoManage_index_page_line41_txt-1648" : "Add personnel information", | ||
| 341 | + "employeeInfoManage_index_page_line47_txt-3339" : "Data tool", | ||
| 342 | + "employeeInfoManage_index_page_line54_txt-4493" : "Export to excel", | ||
| 343 | + | ||
| 344 | + // 页面:orderOptionOpen.html | ||
| 345 | + "employeeInfoManage_orderOptionOpen_page_line5_txt-1682" : "Sort field selection", | ||
| 346 | + "employeeInfoManage_orderOptionOpen_page_line17_txt-4018" : "Yes", | ||
| 347 | + | ||
| 348 | + // 页面:list.html | ||
| 349 | + "employeeInfoManage_list_page_line7_txt-3934" : "Serial number", | ||
| 350 | + "employeeInfoManage_list_page_line8_txt-3949" : "Name", | ||
| 351 | + "employeeInfoManage_list_page_line9_txt-3955" : "No.", | ||
| 352 | + "employeeInfoManage_list_page_line10_txt-3940" : "Employee number", | ||
| 353 | + "employeeInfoManage_list_page_line11_txt-3095" : "Kingdee employee number", | ||
| 354 | + "employeeInfoManage_list_page_line12_txt-4086" : "Gender", | ||
| 355 | + "employeeInfoManage_list_page_line13_txt-3096" : "Company", | ||
| 356 | + "employeeInfoManage_list_page_line14_txt-3777" : "Branch company", | ||
| 357 | + "employeeInfoManage_list_page_line15_txt-4093" : "Occupation type", | ||
| 358 | + "employeeInfoManage_list_page_line16_txt-4085" : "Deactivate", | ||
| 359 | + "employeeInfoManage_list_page_line17_txt-3942" : "Operation", | ||
| 360 | + "employeeInfoManage_list_page_line23_txt-3231" : "Enter name", | ||
| 361 | + "employeeInfoManage_list_page_line26_txt-3233" : "Enter number", | ||
| 362 | + "employeeInfoManage_list_page_line29_txt-3232" : "Enter employee number", | ||
| 363 | + "employeeInfoManage_list_page_line32_txt-3232" : "Enter employee number", | ||
| 364 | + "employeeInfoManage_list_page_line45_txt-3364" : "Please enter pinyin", | ||
| 365 | + "employeeInfoManage_list_page_line60_txt-3364" : "Please enter pinyin", | ||
| 366 | + "employeeInfoManage_list_page_line75_txt-3364" : "Please enter pinyin", | ||
| 367 | + "employeeInfoManage_list_page_line82_txt-4085" : "Deactivate", | ||
| 368 | + "employeeInfoManage_list_page_line89_txt-4001" : "Search", | ||
| 369 | + "employeeInfoManage_list_page_line99_txt-3385" : "Sorting options", | ||
| 370 | + "employeeInfoManage_list_page_line107_txt-4000" : "Reset", | ||
| 371 | + "employeeInfoManage_list_page_line120_txt-4426" : "Name/Job-code:", | ||
| 372 | + "employeeInfoManage_list_page_line142_txt-4058" : "Unknown", | ||
| 373 | + "employeeInfoManage_list_page_line163_txt-4058" : "Unknown", | ||
| 374 | + "employeeInfoManage_list_page_line171_txt-3866" : "Details", | ||
| 375 | + "employeeInfoManage_list_page_line172_txt-4028" : "Modify", | ||
| 376 | + "employeeInfoManage_list_page_line174_txt-675" : "Do you want to delete personnel information?", | ||
| 377 | + "employeeInfoManage_list_page_line175_txt-3719" : "Name:", | ||
| 378 | + "employeeInfoManage_list_page_line175_txt-3761" : "Employee number:", | ||
| 379 | + "employeeInfoManage_list_page_line175_txt-40" : "If there is personnel configuration information associated, an error will be reported. It is recommended not to delete it casually!", | ||
| 380 | + "employeeInfoManage_list_page_line177_txt-4257" : "Yes", | ||
| 381 | + "employeeInfoManage_list_page_line178_txt-3817" : "Cancel", | ||
| 382 | + "employeeInfoManage_list_page_line180_txt-3868" : "Delete", | ||
| 383 | + "employeeInfoManage_list_page_line189_txt-3053" : "Showing {{from}} to {{to}} of {{total}}entries.10 entries per page", | ||
| 384 | + "employeeInfoManage_list_page_line202_txt-4430" : "First", | ||
| 385 | + "employeeInfoManage_list_page_line203_txt-3613" : "Previous", | ||
| 386 | + "employeeInfoManage_list_page_line204_txt-3614" : "Next", | ||
| 387 | + "employeeInfoManage_list_page_line205_txt-4068" : "Last", | ||
| 388 | + | ||
| 389 | + // 页面:detail.html | ||
| 390 | + "employeeInfoManage_detail_page_line3_txt-1650" : "Personnel details", | ||
| 391 | + "employeeInfoManage_detail_page_line9_txt-3807" : "Home page", | ||
| 392 | + "employeeInfoManage_detail_page_line13_txt-2398" : "Basic information", | ||
| 393 | + "employeeInfoManage_detail_page_line17_txt-1658" : "Personnel information management", | ||
| 394 | + "employeeInfoManage_detail_page_line21_txt-1650" : "Personnel details", | ||
| 395 | + "employeeInfoManage_detail_page_line38_txt-2686" : "Company", | ||
| 396 | + "employeeInfoManage_detail_page_line45_txt-1765" : "Affiliated branch:", | ||
| 397 | + "employeeInfoManage_detail_page_line52_txt-3955" : "No.", | ||
| 398 | + "employeeInfoManage_detail_page_line59_txt-3949" : "Name", | ||
| 399 | + "employeeInfoManage_detail_page_line66_txt-902" : "Operation service certificate number:", | ||
| 400 | + "employeeInfoManage_detail_page_line73_txt-903" : "One-card work card number:", | ||
| 401 | + "employeeInfoManage_detail_page_line80_txt-3698" : "Gender:", | ||
| 402 | + "employeeInfoManage_detail_page_line86_txt-3703" : "Occupation type:", | ||
| 403 | + "employeeInfoManage_detail_page_line89_txt-4058" : "Unknown", | ||
| 404 | + | ||
| 405 | + // 页面:edit.html | ||
| 406 | + "employeeInfoManage_edit_page_line3_txt-1643" : "Modify personnel information", | ||
| 407 | + "employeeInfoManage_edit_page_line9_txt-3807" : "Home page", | ||
| 408 | + "employeeInfoManage_edit_page_line13_txt-2398" : "Basic information", | ||
| 409 | + "employeeInfoManage_edit_page_line17_txt-1658" : "Personnel information management", | ||
| 410 | + "employeeInfoManage_edit_page_line21_txt-1643" : "Modify personnel information", | ||
| 411 | + "employeeInfoManage_edit_page_line29_txt-3849" : "Form", | ||
| 412 | + "employeeInfoManage_edit_page_line37_txt-2686" : "Company", | ||
| 413 | + "employeeInfoManage_edit_page_line47_txt-973" : "Please select the company", | ||
| 414 | + "employeeInfoManage_edit_page_line55_txt-1792" : "Company must be selected", | ||
| 415 | + "employeeInfoManage_edit_page_line60_txt-3777" : "Branch company", | ||
| 416 | + "employeeInfoManage_edit_page_line70_txt-973" : "Please select the branch", | ||
| 417 | + "employeeInfoManage_edit_page_line79_txt-923" : "Branch must also be selected", | ||
| 418 | + "employeeInfoManage_edit_page_line84_txt-3940" : "Employee number", | ||
| 419 | + "employeeInfoManage_edit_page_line88_txt-2346" : "Please enter employee number", | ||
| 420 | + "employeeInfoManage_edit_page_line95_txt-1793" : "Employee number must be filled in", | ||
| 421 | + "employeeInfoManage_edit_page_line103_txt-3949" : "Name", | ||
| 422 | + "employeeInfoManage_edit_page_line107_txt-2345" : "Please enter name", | ||
| 423 | + "employeeInfoManage_edit_page_line111_txt-1787" : "Name must be filled in", | ||
| 424 | + "employeeInfoManage_edit_page_line116_txt-902" : "Operation service certificate number:", | ||
| 425 | + "employeeInfoManage_edit_page_line119_txt-516" : "Please enter the operation service certificate number", | ||
| 426 | + "employeeInfoManage_edit_page_line124_txt-2244" : "One-card number:", | ||
| 427 | + "employeeInfoManage_edit_page_line127_txt-517" : "Please enter your work card number", | ||
| 428 | + "employeeInfoManage_edit_page_line132_txt-3698" : "Gender:", | ||
| 429 | + "employeeInfoManage_edit_page_line139_txt-3703" : "Occupation type:", | ||
| 430 | + "employeeInfoManage_edit_page_line149_txt-3364" : "Please enter pinyin", | ||
| 431 | + "employeeInfoManage_edit_page_line157_txt-3449" : "Remarks:", | ||
| 432 | + "employeeInfoManage_edit_page_line174_txt-4173" : "Submit", | ||
| 433 | + "employeeInfoManage_edit_page_line175_txt-3817" : "Cancel", | ||
| 434 | + | ||
| 435 | + // 页面:form.html | ||
| 436 | + "employeeInfoManage_form_page_line3_txt-1648" : "Add personnel information", | ||
| 437 | + "employeeInfoManage_form_page_line9_txt-3807" : "Home page", | ||
| 438 | + "employeeInfoManage_form_page_line13_txt-2398" : "Basic information", | ||
| 439 | + "employeeInfoManage_form_page_line17_txt-1658" : "Personnel information management", | ||
| 440 | + "employeeInfoManage_form_page_line21_txt-1648" : "Add personnel information", | ||
| 441 | + "employeeInfoManage_form_page_line29_txt-3849" : "Form", | ||
| 442 | + "employeeInfoManage_form_page_line37_txt-2686" : "Company", | ||
| 443 | + "employeeInfoManage_form_page_line47_txt-973" : "Please select the company", | ||
| 444 | + "employeeInfoManage_form_page_line55_txt-1792" : "Company must be selected", | ||
| 445 | + "employeeInfoManage_form_page_line60_txt-3777" : "Branch company", | ||
| 446 | + "employeeInfoManage_form_page_line70_txt-973" : "Please select the branch", | ||
| 447 | + "employeeInfoManage_form_page_line79_txt-923" : "Branch must also be selected", | ||
| 448 | + "employeeInfoManage_form_page_line84_txt-3940" : "Employee number", | ||
| 449 | + "employeeInfoManage_form_page_line88_txt-2346" : "Please enter employee number", | ||
| 450 | + "employeeInfoManage_form_page_line95_txt-1793" : "Employee number must be filled in", | ||
| 451 | + "employeeInfoManage_form_page_line103_txt-3949" : "Name", | ||
| 452 | + "employeeInfoManage_form_page_line107_txt-2345" : "Please enter name", | ||
| 453 | + "employeeInfoManage_form_page_line111_txt-1787" : "Name must be filled in", | ||
| 454 | + "employeeInfoManage_form_page_line116_txt-902" : "Operation service certificate number:", | ||
| 455 | + "employeeInfoManage_form_page_line119_txt-516" : "Please enter the operation service certificate number", | ||
| 456 | + "employeeInfoManage_form_page_line124_txt-2244" : "One-card number:", | ||
| 457 | + "employeeInfoManage_form_page_line127_txt-517" : "Please enter your work card number", | ||
| 458 | + "employeeInfoManage_form_page_line132_txt-3698" : "Gender:", | ||
| 459 | + "employeeInfoManage_form_page_line139_txt-3703" : "Occupation type:", | ||
| 460 | + "employeeInfoManage_form_page_line149_txt-3364" : "Please enter pinyin", | ||
| 461 | + "employeeInfoManage_form_page_line157_txt-3449" : "Remarks:", | ||
| 462 | + "employeeInfoManage_form_page_line174_txt-4173" : "Submit", | ||
| 463 | + "employeeInfoManage_form_page_line175_txt-3817" : "Cancel", | ||
| 464 | + | ||
| 465 | + // module.js | ||
| 466 | + "employeeInfoManage_module_js_line33_txt-3949" : "Name", | ||
| 467 | + "employeeInfoManage_module_js_line34_txt-3940" : "Worker number", | ||
| 468 | + "employeeInfoManage_module_js_line35_txt-4086" : "Gender", | ||
| 469 | + "employeeInfoManage_module_js_line36_txt-3096" : "Company", | ||
| 470 | + "employeeInfoManage_module_js_line37_txt-3777" : "Branch company", | ||
| 471 | + "employeeInfoManage_module_js_line38_txt-4093" : "Occupation type", | ||
| 472 | + "employeeInfoManage_module_js_line182_txt-1614" : "Basic information of personnel", | ||
| 473 | + "employeeInfoManage_module_js_line286_txt-3729" : "Failed:", | ||
| 474 | + "employeeInfoManage_module_js_line411_txt-4081" : "Employee", | ||
| 475 | + "employeeInfoManage_module_js_line413_txt-3066" : "Details", | ||
| 476 | + | ||
| 477 | + //------------ 车辆设备信息管理模块 -----------// | ||
| 478 | + // 模块位置:../module/basicInfo/deviceInfoManage | ||
| 479 | + // 页面;index.html | ||
| 480 | + "deviceInfoManage_index_page_line3_txt-848" : "Vehicle equipment information management", | ||
| 481 | + "deviceInfoManage_index_page_line9_txt-3807" : "Home page", | ||
| 482 | + "deviceInfoManage_index_page_line13_txt-2398" : "Basic information", | ||
| 483 | + "deviceInfoManage_index_page_line17_txt-848" : "Vehicle equipment information management", | ||
| 484 | + "deviceInfoManage_index_page_line27_txt-2233" : "Equipment information table", | ||
| 485 | + "deviceInfoManage_index_page_line32_txt-1791" : "Add equipment information", | ||
| 486 | + | ||
| 487 | + // 页面:orderOptionOpen.html | ||
| 488 | + "deviceInfoManage_orderOptionOpen_page_line5_txt-1682" : "Sort field selection", | ||
| 489 | + "deviceInfoManage_orderOptionOpen_page_line17_txt-4018" : "Yes", | ||
| 490 | + | ||
| 491 | + // 页面:list.html | ||
| 492 | + "deviceInfoManage_list_page_line17_txt-3934" : "Serial number", | ||
| 493 | + "deviceInfoManage_list_page_line18_txt-3347" : "Route name", | ||
| 494 | + "deviceInfoManage_list_page_line19_txt-2597" : "Internal number", | ||
| 495 | + "deviceInfoManage_list_page_line20_txt-3211" : "Activation date", | ||
| 496 | + "deviceInfoManage_list_page_line21_txt-2185" : "Old equipment number", | ||
| 497 | + "deviceInfoManage_list_page_line22_txt-2184" : "New equipment number", | ||
| 498 | + "deviceInfoManage_list_page_line23_txt-4389" : "Operator/Operation time", | ||
| 499 | + "deviceInfoManage_list_page_line24_txt-3874" : "Status", | ||
| 500 | + "deviceInfoManage_list_page_line25_txt-3942" : "Operation", | ||
| 501 | + "deviceInfoManage_list_page_line38_txt-3364" : "Please enter pinyin", | ||
| 502 | + "deviceInfoManage_list_page_line44_txt-1773" : "Enter internal number", | ||
| 503 | + "deviceInfoManage_list_page_line52_txt-4162" : "Scrapped", | ||
| 504 | + "deviceInfoManage_list_page_line59_txt-4001" : "Search", | ||
| 505 | + "deviceInfoManage_list_page_line69_txt-3385" : "Sorting options", | ||
| 506 | + "deviceInfoManage_list_page_line77_txt-4000" : "Reset", | ||
| 507 | + "deviceInfoManage_list_page_line122_txt-4058" : "Unknown", | ||
| 508 | + "deviceInfoManage_list_page_line127_txt-3866" : "Details", | ||
| 509 | + "deviceInfoManage_list_page_line144_txt-3053" : "Showing {{from}} to {{to}} of {{total}}entries.10 entries per page", | ||
| 510 | + "deviceInfoManage_list_page_line157_txt-4430" : "First", | ||
| 511 | + "deviceInfoManage_list_page_line158_txt-3613" : "Previous", | ||
| 512 | + "deviceInfoManage_list_page_line159_txt-3614" : "Next", | ||
| 513 | + "deviceInfoManage_list_page_line160_txt-4068" : "Last", | ||
| 514 | + | ||
| 515 | + // 页面:detail.html | ||
| 516 | + "deviceInfoManage_detail_page_line3_txt-847" : "Vehicle equipment details", | ||
| 517 | + "deviceInfoManage_detail_page_line9_txt-3807" : "Home page", | ||
| 518 | + "deviceInfoManage_detail_page_line13_txt-2398" : "Basic information", | ||
| 519 | + "deviceInfoManage_detail_page_line17_txt-848" : "Vehicle equipment information management", | ||
| 520 | + "deviceInfoManage_detail_page_line21_txt-847" : "Vehicle equipment details", | ||
| 521 | + "deviceInfoManage_detail_page_line38_txt-1476" : "Vehicle internal number", | ||
| 522 | + "deviceInfoManage_detail_page_line45_txt-3347" : "Route name", | ||
| 523 | + "deviceInfoManage_detail_page_line52_txt-3216" : "Old terminal number", | ||
| 524 | + "deviceInfoManage_detail_page_line59_txt-3201" : "New terminal number", | ||
| 525 | + "deviceInfoManage_detail_page_line67_txt-4422" : "Old SIM card number:", | ||
| 526 | + "deviceInfoManage_detail_page_line74_txt-3701" : "New SIM card number:", | ||
| 527 | + "deviceInfoManage_detail_page_line82_txt-2258" : "Fault description:", | ||
| 528 | + "deviceInfoManage_detail_page_line90_txt-4403" : "Description:", | ||
| 529 | + "deviceInfoManage_detail_page_line98_txt-3211" : "Activation date", | ||
| 530 | + | ||
| 531 | + // 页面:edit.html | ||
| 532 | + "deviceInfoManage_edit_page_line3_txt-836" : "Modify vehicle equipment information", | ||
| 533 | + "deviceInfoManage_edit_page_line9_txt-3807" : "Home page", | ||
| 534 | + "deviceInfoManage_edit_page_line13_txt-2398" : "Basic information", | ||
| 535 | + "deviceInfoManage_edit_page_line17_txt-848" : "Vehicle equipment information management", | ||
| 536 | + "deviceInfoManage_edit_page_line21_txt-836" : "Modify vehicle equipment information", | ||
| 537 | + "deviceInfoManage_edit_page_line29_txt-3849" : "Form", | ||
| 538 | + "deviceInfoManage_edit_page_line38_txt-3347" : "Route name", | ||
| 539 | + "deviceInfoManage_edit_page_line48_txt-3364" : "Please enter pinyin", | ||
| 540 | + "deviceInfoManage_edit_page_line55_txt-1788" : "Line must be selected", | ||
| 541 | + "deviceInfoManage_edit_page_line60_txt-3469" : "Vehicle:", | ||
| 542 | + "deviceInfoManage_edit_page_line71_txt-3364" : "Please enter pinyin", | ||
| 543 | + "deviceInfoManage_edit_page_line78_txt-1794" : "Vehicle must be selected", | ||
| 544 | + "deviceInfoManage_edit_page_line83_txt-3216" : "Old terminal number", | ||
| 545 | + "deviceInfoManage_edit_page_line91_txt-3201" : "New terminal number", | ||
| 546 | + "deviceInfoManage_edit_page_line98_txt-1264" : "Please enter the new terminal number", | ||
| 547 | + "deviceInfoManage_edit_page_line102_txt-910" : "The new terminal number must be filled in", | ||
| 548 | + "deviceInfoManage_edit_page_line110_txt-4422" : "Old SIM card number:", | ||
| 549 | + "deviceInfoManage_edit_page_line113_txt-3357" : "Please enter your old SIM card number", | ||
| 550 | + "deviceInfoManage_edit_page_line118_txt-3701" : "New SIM card number:", | ||
| 551 | + "deviceInfoManage_edit_page_line121_txt-3356" : "Please enter the new SIM card number", | ||
| 552 | + "deviceInfoManage_edit_page_line126_txt-2258" : "Fault description:", | ||
| 553 | + "deviceInfoManage_edit_page_line134_txt-4403" : "Description:", | ||
| 554 | + "deviceInfoManage_edit_page_line170_txt-2252" : "Activation date:", | ||
| 555 | + "deviceInfoManage_edit_page_line183_txt-146" : "Activation date must be selected, accurate to the specific time", | ||
| 556 | + "deviceInfoManage_edit_page_line197_txt-4173" : "Submit", | ||
| 557 | + "deviceInfoManage_edit_page_line198_txt-3817" : "Cancel", | ||
| 558 | + | ||
| 559 | + // 页面:form.html | ||
| 560 | + "deviceInfoManage_form_page_line3_txt-845" : "Add vehicle equipment information", | ||
| 561 | + "deviceInfoManage_form_page_line9_txt-3807" : "Home page", | ||
| 562 | + "deviceInfoManage_form_page_line13_txt-2398" : "Basic information", | ||
| 563 | + "deviceInfoManage_form_page_line17_txt-848" : "Vehicle equipment information management", | ||
| 564 | + "deviceInfoManage_form_page_line21_txt-845" : "Add vehicle equipment information", | ||
| 565 | + "deviceInfoManage_form_page_line29_txt-3849" : "Form", | ||
| 566 | + "deviceInfoManage_form_page_line38_txt-3347" : "Route name", | ||
| 567 | + "deviceInfoManage_form_page_line48_txt-3364" : "Please enter pinyin", | ||
| 568 | + "deviceInfoManage_form_page_line55_txt-1788" : "Line must be selected", | ||
| 569 | + "deviceInfoManage_form_page_line60_txt-3469" : "Vehicle:", | ||
| 570 | + "deviceInfoManage_form_page_line71_txt-3364" : "Please enter pinyin", | ||
| 571 | + "deviceInfoManage_form_page_line78_txt-1794" : "Vehicle must be selected", | ||
| 572 | + "deviceInfoManage_form_page_line83_txt-3216" : "Old terminal number", | ||
| 573 | + "deviceInfoManage_form_page_line91_txt-3201" : "New terminal number", | ||
| 574 | + "deviceInfoManage_form_page_line98_txt-1264" : "Please enter the new terminal number", | ||
| 575 | + "deviceInfoManage_form_page_line102_txt-910" : "The new terminal number must be filled in", | ||
| 576 | + "deviceInfoManage_form_page_line110_txt-4422" : "Old SIM card number:", | ||
| 577 | + "deviceInfoManage_form_page_line113_txt-3357" : "Please enter your old SIM card number", | ||
| 578 | + "deviceInfoManage_form_page_line118_txt-3701" : "New SIM card number:", | ||
| 579 | + "deviceInfoManage_form_page_line121_txt-3356" : "Please enter the new SIM card number", | ||
| 580 | + "deviceInfoManage_form_page_line126_txt-2258" : "Fault description:", | ||
| 581 | + "deviceInfoManage_form_page_line134_txt-4403" : "Description:", | ||
| 582 | + "deviceInfoManage_form_page_line197_txt-4173" : "Submit", | ||
| 583 | + "deviceInfoManage_form_page_line198_txt-3817" : "Cancel", | ||
| 584 | + | ||
| 585 | + // module.js | ||
| 586 | + "deviceInfoManage_module_js_line26_txt-3347" : "Route name", | ||
| 587 | + "deviceInfoManage_module_js_line27_txt-1476" : "Vehicle internal number", | ||
| 588 | + "deviceInfoManage_module_js_line28_txt-3211" : "Activation date", | ||
| 589 | + "deviceInfoManage_module_js_line29_txt-2185" : "Old equipment number", | ||
| 590 | + "deviceInfoManage_module_js_line30_txt-3201" : "New terminal number", | ||
| 591 | + "deviceInfoManage_module_js_line148_txt-3729" : "Failed:", | ||
| 592 | + "deviceInfoManage_module_js_line269_txt-3243" : "{{clZbh}} Equipment information", | ||
| 290 | 593 | ||
| 291 | 594 | ||
| 595 | + // TODO; | ||
| 596 | + | ||
| 292 | }; | 597 | }; |
| 293 | 598 | ||
| 294 | -// TODO; | 599 | + |
| 600 | + | ||
| 601 | + |
src/main/resources/static/pages/scheduleApp/language/zh.js
| @@ -2,10 +2,53 @@ | @@ -2,10 +2,53 @@ | ||
| 2 | // 中文资源 | 2 | // 中文资源 |
| 3 | 3 | ||
| 4 | var ScheduleApp_zh_language = { | 4 | var ScheduleApp_zh_language = { |
| 5 | + // main.js | ||
| 6 | + "main_js_line_82_txt-3966" : "营运", | ||
| 7 | + "main_js_line_83_txt-3958" : "缺车", | ||
| 8 | + "main_js_line_84_txt-3960" : "气候", | ||
| 9 | + "main_js_line_85_txt-3837" : "肇事", | ||
| 10 | + "main_js_line_86_txt-3838" : "纠纷", | ||
| 11 | + "main_js_line_87_txt-3876" : "抽减", | ||
| 12 | + "main_js_line_88_txt-4026" : "配车", | ||
| 13 | + "main_js_line_89_txt-3840" : "故障", | ||
| 14 | + "main_js_line_90_txt-3961" : "路阻", | ||
| 15 | + "main_js_line_91_txt-3962" : "客稀", | ||
| 16 | + "main_js_line_92_txt-3963" : "吊慢", | ||
| 17 | + "main_js_line_93_txt-4197" : "其他", | ||
| 18 | + "main_js_line_94_txt-4102" : "保养", | ||
| 19 | + "main_js_line_95_txt-3957" : "缺人", | ||
| 20 | + "main_js_line_96_txt-3956" : "援外", | ||
| 21 | + "main_js_line_99_txt-2790" : "当前版本", | ||
| 22 | + "main_js_line_100_txt-168" : "所有版本(待更新,当前,历史)", | ||
| 23 | + "main_js_line_301_txt-1805" : "请重新登录!", | ||
| 24 | + "main_js_line_304_txt-2284" : "状态编码:", | ||
| 25 | + "main_js_line_305_txt-2285" : "访问路径:", | ||
| 26 | + "main_js_line_306_txt-2286" : "错误消息:", | ||
| 27 | + "main_js_line_307_txt-1807" : "服务端错误:", | ||
| 28 | + "main_js_line_325_txt-695" : "貌似服务端连接不上", | ||
| 29 | + "main_js_line_327_txt-2284" : "状态编码:", | ||
| 30 | + "main_js_line_330_txt-2325" : "错误内容:", | ||
| 31 | + "main_js_line_332_txt-2325" : "错误内容:", | ||
| 32 | + "main_js_line_336_txt-1807" : "服务端错误:", | ||
| 33 | + "main_js_line_338_txt-1838" : "请重新登录:", | ||
| 34 | + "main_js_line_340_txt-2333" : "其他错误:", | ||
| 35 | + "main_js_line_383_txt-1149" : "子页面已载入:", | ||
| 36 | + | ||
| 37 | + //------------ 自定义指令 --------------// | ||
| 38 | + // 指令位置:../module/common/dts2/queryOption | ||
| 39 | + // 页面:saOrderOptionTemplate.html | ||
| 40 | + "queryOption_saOrderOptionTemplate_line93_txt-4157" : "升序", | ||
| 41 | + "queryOption_saOrderOptionTemplate_line94_txt-4156" : "降序", | ||
| 42 | + | ||
| 43 | + // 指令位置:../module/common/dts1/select | ||
| 44 | + // js:saSelect5.js | ||
| 45 | + "saSelect5_js_line375_txt-1275" : "字典数据不存在=", | ||
| 46 | + | ||
| 47 | + | ||
| 5 | //------------ 车辆信息管理模块 -----------// | 48 | //------------ 车辆信息管理模块 -----------// |
| 6 | // 模块位置:../module/basicInfo/busInfoManage | 49 | // 模块位置:../module/basicInfo/busInfoManage |
| 7 | - // 页面;index.html | ||
| 8 | 50 | ||
| 51 | + // 页面;index.html | ||
| 9 | // line3 | 52 | // line3 |
| 10 | "busInfoManage_index_page-title" : "车辆信息管理", | 53 | "busInfoManage_index_page-title" : "车辆信息管理", |
| 11 | // line9 | 54 | // line9 |
| @@ -57,11 +100,11 @@ var ScheduleApp_zh_language = { | @@ -57,11 +100,11 @@ var ScheduleApp_zh_language = { | ||
| 57 | "busInfoManage_list_page_line142_txt-4257" : "是", | 100 | "busInfoManage_list_page_line142_txt-4257" : "是", |
| 58 | "busInfoManage_list_page_line142_txt-3817" : "取消", | 101 | "busInfoManage_list_page_line142_txt-3817" : "取消", |
| 59 | "busInfoManage_list_page_line144_txt-3868" : "删除", | 102 | "busInfoManage_list_page_line144_txt-3868" : "删除", |
| 60 | - "busInfoManage_list_page_line153_txt-3053" : "显示从{{from}}到{{to}} 共{{total}}条 每页显示10条", | ||
| 61 | - "busInfoManage_list_page_line163_txt-4430" : "首页", | ||
| 62 | - "busInfoManage_list_page_line164_txt-3613" : "上一页", | ||
| 63 | - "busInfoManage_list_page_line165_txt-3614" : "下一页", | ||
| 64 | - "busInfoManage_list_page_line166_txt-4068" : "尾页", | 103 | + "busInfoManage_list_page_line156_txt-3053" : "显示从{{from}}到{{to}} 共{{total}}条 每页显示10条", |
| 104 | + "busInfoManage_list_page_line169_txt-4430" : "首页", | ||
| 105 | + "busInfoManage_list_page_line170_txt-3613" : "上一页", | ||
| 106 | + "busInfoManage_list_page_line171_txt-3614" : "下一页", | ||
| 107 | + "busInfoManage_list_page_line172_txt-4068" : "尾页", | ||
| 65 | 108 | ||
| 66 | // 页面:detail.html | 109 | // 页面:detail.html |
| 67 | "busInfoManage_detail_page_line3_txt-1656" : "车辆详细信息", | 110 | "busInfoManage_detail_page_line3_txt-1656" : "车辆详细信息", |
| @@ -287,6 +330,267 @@ var ScheduleApp_zh_language = { | @@ -287,6 +330,267 @@ var ScheduleApp_zh_language = { | ||
| 287 | "busInfoManage_module_js_line434_txt-4009" : "车辆", | 330 | "busInfoManage_module_js_line434_txt-4009" : "车辆", |
| 288 | "busInfoManage_module_js_line434_txt-3066" : "详细信息", | 331 | "busInfoManage_module_js_line434_txt-3066" : "详细信息", |
| 289 | 332 | ||
| 333 | + //------------ 人员信息管理模块 -----------// | ||
| 334 | + // 模块位置:../module/basicInfo/employeeInfoManage | ||
| 335 | + // 页面;index.html | ||
| 336 | + "employeeInfoManage_index_page_line3_txt-1658" : "人员信息管理", | ||
| 337 | + "employeeInfoManage_index_page_line9_txt-3807" : "首页", | ||
| 338 | + "employeeInfoManage_index_page_line13_txt-2398" : "基础信息", | ||
| 339 | + "employeeInfoManage_index_page_line17_txt-1658" : "人员信息管理", | ||
| 340 | + "employeeInfoManage_index_page_line36_txt-2234" : "人员信息表", | ||
| 341 | + "employeeInfoManage_index_page_line41_txt-1648" : "添加人员信息", | ||
| 342 | + "employeeInfoManage_index_page_line47_txt-3339" : "数据工具", | ||
| 343 | + "employeeInfoManage_index_page_line54_txt-4493" : "导出Excel", | ||
| 344 | + | ||
| 345 | + // 页面:orderOptionOpen.html | ||
| 346 | + "employeeInfoManage_orderOptionOpen_page_line5_txt-1682" : "排序字段选择", | ||
| 347 | + "employeeInfoManage_orderOptionOpen_page_line17_txt-4018" : "确定", | ||
| 348 | + | ||
| 349 | + // 页面:list.html | ||
| 350 | + "employeeInfoManage_list_page_line7_txt-3934" : "序号", | ||
| 351 | + "employeeInfoManage_list_page_line8_txt-3949" : "姓名", | ||
| 352 | + "employeeInfoManage_list_page_line9_txt-3955" : "编号", | ||
| 353 | + "employeeInfoManage_list_page_line10_txt-3940" : "工号", | ||
| 354 | + "employeeInfoManage_list_page_line11_txt-3095" : "金蝶工号", | ||
| 355 | + "employeeInfoManage_list_page_line12_txt-4086" : "性别", | ||
| 356 | + "employeeInfoManage_list_page_line13_txt-3096" : "所在公司", | ||
| 357 | + "employeeInfoManage_list_page_line14_txt-3777" : "分公司", | ||
| 358 | + "employeeInfoManage_list_page_line15_txt-4093" : "工种", | ||
| 359 | + "employeeInfoManage_list_page_line16_txt-4085" : "停用", | ||
| 360 | + "employeeInfoManage_list_page_line17_txt-3942" : "操作", | ||
| 361 | + "employeeInfoManage_list_page_line23_txt-3231" : "输入姓名", | ||
| 362 | + "employeeInfoManage_list_page_line26_txt-3233" : "输入编号", | ||
| 363 | + "employeeInfoManage_list_page_line29_txt-3232" : "输入工号", | ||
| 364 | + "employeeInfoManage_list_page_line32_txt-3232" : "输入工号", | ||
| 365 | + "employeeInfoManage_list_page_line45_txt-3364" : "请输拼音", | ||
| 366 | + "employeeInfoManage_list_page_line60_txt-3364" : "请输拼音", | ||
| 367 | + "employeeInfoManage_list_page_line75_txt-3364" : "请输拼音", | ||
| 368 | + "employeeInfoManage_list_page_line82_txt-4085" : "停用", | ||
| 369 | + "employeeInfoManage_list_page_line89_txt-4001" : "搜索", | ||
| 370 | + "employeeInfoManage_list_page_line99_txt-3385" : "排序选项", | ||
| 371 | + "employeeInfoManage_list_page_line107_txt-4000" : "重置", | ||
| 372 | + "employeeInfoManage_list_page_line120_txt-4426" : "姓名/工号:", | ||
| 373 | + "employeeInfoManage_list_page_line142_txt-4058" : "未知", | ||
| 374 | + "employeeInfoManage_list_page_line163_txt-4058" : "未知", | ||
| 375 | + "employeeInfoManage_list_page_line171_txt-3866" : "详细", | ||
| 376 | + "employeeInfoManage_list_page_line172_txt-4028" : "修改", | ||
| 377 | + "employeeInfoManage_list_page_line174_txt-675" : "是否删除人员信息?", | ||
| 378 | + "employeeInfoManage_list_page_line175_txt-3719" : "姓名:", | ||
| 379 | + "employeeInfoManage_list_page_line175_txt-3761" : "工号:", | ||
| 380 | + "employeeInfoManage_list_page_line175_txt-40" : "如果有人员配置信息关联,会报错,建议不要随便删除!", | ||
| 381 | + "employeeInfoManage_list_page_line177_txt-4257" : "是", | ||
| 382 | + "employeeInfoManage_list_page_line178_txt-3817" : "取消", | ||
| 383 | + "employeeInfoManage_list_page_line180_txt-3868" : "删除", | ||
| 384 | + "employeeInfoManage_list_page_line189_txt-3053" : "显示从{{from}}到{{to}} 共{{total}}条 每页显示10条", | ||
| 385 | + "employeeInfoManage_list_page_line202_txt-4430" : "首页", | ||
| 386 | + "employeeInfoManage_list_page_line203_txt-3613" : "上一页", | ||
| 387 | + "employeeInfoManage_list_page_line204_txt-3614" : "下一页", | ||
| 388 | + "employeeInfoManage_list_page_line205_txt-4068" : "尾页", | ||
| 389 | + | ||
| 390 | + // 页面:detail.html | ||
| 391 | + "employeeInfoManage_detail_page_line3_txt-1650" : "人员详细信息", | ||
| 392 | + "employeeInfoManage_detail_page_line9_txt-3807" : "首页", | ||
| 393 | + "employeeInfoManage_detail_page_line13_txt-2398" : "基础信息", | ||
| 394 | + "employeeInfoManage_detail_page_line17_txt-1658" : "人员信息管理", | ||
| 395 | + "employeeInfoManage_detail_page_line21_txt-1650" : "人员详细信息", | ||
| 396 | + "employeeInfoManage_detail_page_line38_txt-2686" : "所属公司", | ||
| 397 | + "employeeInfoManage_detail_page_line45_txt-1765" : "所属分公司:", | ||
| 398 | + "employeeInfoManage_detail_page_line52_txt-3955" : "编号", | ||
| 399 | + "employeeInfoManage_detail_page_line59_txt-3949" : "姓名", | ||
| 400 | + "employeeInfoManage_detail_page_line66_txt-902" : "运营服务证书号:", | ||
| 401 | + "employeeInfoManage_detail_page_line73_txt-903" : "一卡通工作卡号:", | ||
| 402 | + "employeeInfoManage_detail_page_line80_txt-3698" : "性别:", | ||
| 403 | + "employeeInfoManage_detail_page_line86_txt-3703" : "工种:", | ||
| 404 | + "employeeInfoManage_detail_page_line89_txt-4058" : "未知", | ||
| 405 | + | ||
| 406 | + // 页面:edit.html | ||
| 407 | + "employeeInfoManage_edit_page_line3_txt-1643" : "修改人员信息", | ||
| 408 | + "employeeInfoManage_edit_page_line9_txt-3807" : "首页", | ||
| 409 | + "employeeInfoManage_edit_page_line13_txt-2398" : "基础信息", | ||
| 410 | + "employeeInfoManage_edit_page_line17_txt-1658" : "人员信息管理", | ||
| 411 | + "employeeInfoManage_edit_page_line21_txt-1643" : "修改人员信息", | ||
| 412 | + "employeeInfoManage_edit_page_line29_txt-3849" : "表单", | ||
| 413 | + "employeeInfoManage_edit_page_line37_txt-2686" : "所属公司", | ||
| 414 | + "employeeInfoManage_edit_page_line47_txt-973" : "请选择所属公司", | ||
| 415 | + "employeeInfoManage_edit_page_line55_txt-1792" : "公司必须选择", | ||
| 416 | + "employeeInfoManage_edit_page_line60_txt-3777" : "分公司", | ||
| 417 | + "employeeInfoManage_edit_page_line70_txt-973" : "请选择所属分公司", | ||
| 418 | + "employeeInfoManage_edit_page_line79_txt-923" : "分公司也必须选择", | ||
| 419 | + "employeeInfoManage_edit_page_line84_txt-3940" : "工号", | ||
| 420 | + "employeeInfoManage_edit_page_line88_txt-2346" : "请输入工号", | ||
| 421 | + "employeeInfoManage_edit_page_line95_txt-1793" : "工号必须填写", | ||
| 422 | + "employeeInfoManage_edit_page_line103_txt-3949" : "姓名", | ||
| 423 | + "employeeInfoManage_edit_page_line107_txt-2345" : "请输入姓名", | ||
| 424 | + "employeeInfoManage_edit_page_line111_txt-1787" : "姓名必须填写", | ||
| 425 | + "employeeInfoManage_edit_page_line116_txt-902" : "运营服务证书号:", | ||
| 426 | + "employeeInfoManage_edit_page_line119_txt-516" : "请输入运营服务证书号", | ||
| 427 | + "employeeInfoManage_edit_page_line124_txt-2244" : "一卡通号:", | ||
| 428 | + "employeeInfoManage_edit_page_line127_txt-517" : "请输入一卡通工作卡号", | ||
| 429 | + "employeeInfoManage_edit_page_line132_txt-3698" : "性别:", | ||
| 430 | + "employeeInfoManage_edit_page_line139_txt-3703" : "工种:", | ||
| 431 | + "employeeInfoManage_edit_page_line149_txt-3364" : "请输拼音", | ||
| 432 | + "employeeInfoManage_edit_page_line157_txt-3449" : "备注:", | ||
| 433 | + "employeeInfoManage_edit_page_line174_txt-4173" : "提交", | ||
| 434 | + "employeeInfoManage_edit_page_line175_txt-3817" : "取消", | ||
| 435 | + | ||
| 436 | + // 页面:form.html | ||
| 437 | + "employeeInfoManage_form_page_line3_txt-1648" : "添加人员信息", | ||
| 438 | + "employeeInfoManage_form_page_line9_txt-3807" : "首页", | ||
| 439 | + "employeeInfoManage_form_page_line13_txt-2398" : "基础信息", | ||
| 440 | + "employeeInfoManage_form_page_line17_txt-1658" : "人员信息管理", | ||
| 441 | + "employeeInfoManage_form_page_line21_txt-1648" : "添加人员信息", | ||
| 442 | + "employeeInfoManage_form_page_line29_txt-3849" : "表单", | ||
| 443 | + "employeeInfoManage_form_page_line37_txt-2686" : "所属公司", | ||
| 444 | + "employeeInfoManage_form_page_line47_txt-973" : "请选择所属公司", | ||
| 445 | + "employeeInfoManage_form_page_line55_txt-1792" : "公司必须选择", | ||
| 446 | + "employeeInfoManage_form_page_line60_txt-3777" : "分公司", | ||
| 447 | + "employeeInfoManage_form_page_line70_txt-973" : "请选择所属分公司", | ||
| 448 | + "employeeInfoManage_form_page_line79_txt-923" : "分公司也必须选择", | ||
| 449 | + "employeeInfoManage_form_page_line84_txt-3940" : "工号", | ||
| 450 | + "employeeInfoManage_form_page_line88_txt-2346" : "请输入工号", | ||
| 451 | + "employeeInfoManage_form_page_line95_txt-1793" : "工号必须填写", | ||
| 452 | + "employeeInfoManage_form_page_line103_txt-3949" : "姓名", | ||
| 453 | + "employeeInfoManage_form_page_line107_txt-2345" : "请输入姓名", | ||
| 454 | + "employeeInfoManage_form_page_line111_txt-1787" : "姓名必须填写", | ||
| 455 | + "employeeInfoManage_form_page_line116_txt-902" : "运营服务证书号:", | ||
| 456 | + "employeeInfoManage_form_page_line119_txt-516" : "请输入运营服务证书号", | ||
| 457 | + "employeeInfoManage_form_page_line124_txt-2244" : "一卡通号:", | ||
| 458 | + "employeeInfoManage_form_page_line127_txt-517" : "请输入一卡通工作卡号", | ||
| 459 | + "employeeInfoManage_form_page_line132_txt-3698" : "性别:", | ||
| 460 | + "employeeInfoManage_form_page_line139_txt-3703" : "工种:", | ||
| 461 | + "employeeInfoManage_form_page_line149_txt-3364" : "请输拼音", | ||
| 462 | + "employeeInfoManage_form_page_line157_txt-3449" : "备注:", | ||
| 463 | + "employeeInfoManage_form_page_line174_txt-4173" : "提交", | ||
| 464 | + "employeeInfoManage_form_page_line175_txt-3817" : "取消", | ||
| 465 | + | ||
| 466 | + // module.js | ||
| 467 | + "employeeInfoManage_module_js_line33_txt-3949" : "姓名", | ||
| 468 | + "employeeInfoManage_module_js_line34_txt-3940" : "工号", | ||
| 469 | + "employeeInfoManage_module_js_line35_txt-4086" : "性别", | ||
| 470 | + "employeeInfoManage_module_js_line36_txt-3096" : "所在公司", | ||
| 471 | + "employeeInfoManage_module_js_line37_txt-3777" : "分公司", | ||
| 472 | + "employeeInfoManage_module_js_line38_txt-4093" : "工种", | ||
| 473 | + "employeeInfoManage_module_js_line182_txt-1614" : "人员基础信息", | ||
| 474 | + "employeeInfoManage_module_js_line286_txt-3729" : "失败:", | ||
| 475 | + "employeeInfoManage_module_js_line411_txt-4081" : "员工", | ||
| 476 | + "employeeInfoManage_module_js_line413_txt-3066" : "详细信息", | ||
| 477 | + | ||
| 478 | + //------------ 车辆设备信息管理模块 -----------// | ||
| 479 | + // 模块位置:../module/basicInfo/deviceInfoManage | ||
| 480 | + // 页面;index.html | ||
| 481 | + "deviceInfoManage_index_page_line3_txt-848" : "车辆设备信息管理", | ||
| 482 | + "deviceInfoManage_index_page_line9_txt-3807" : "首页", | ||
| 483 | + "deviceInfoManage_index_page_line13_txt-2398" : "基础信息", | ||
| 484 | + "deviceInfoManage_index_page_line17_txt-848" : "车辆设备信息管理", | ||
| 485 | + "deviceInfoManage_index_page_line27_txt-2233" : "设备信息表", | ||
| 486 | + "deviceInfoManage_index_page_line32_txt-1791" : "添加设备信息", | ||
| 487 | + | ||
| 488 | + // 页面:orderOptionOpen.html | ||
| 489 | + "deviceInfoManage_orderOptionOpen_page_line5_txt-1682" : "排序字段选择", | ||
| 490 | + "deviceInfoManage_orderOptionOpen_page_line17_txt-4018" : "确定", | ||
| 491 | + | ||
| 492 | + // 页面:list.html | ||
| 493 | + "deviceInfoManage_list_page_line17_txt-3934" : "序号", | ||
| 494 | + "deviceInfoManage_list_page_line18_txt-3347" : "线路名称", | ||
| 495 | + "deviceInfoManage_list_page_line19_txt-2597" : "内部编号", | ||
| 496 | + "deviceInfoManage_list_page_line20_txt-3211" : "启用日期", | ||
| 497 | + "deviceInfoManage_list_page_line21_txt-2185" : "旧设备编号", | ||
| 498 | + "deviceInfoManage_list_page_line22_txt-2184" : "新设备编号", | ||
| 499 | + "deviceInfoManage_list_page_line23_txt-4389" : "操作人/操作时间", | ||
| 500 | + "deviceInfoManage_list_page_line24_txt-3874" : "状态", | ||
| 501 | + "deviceInfoManage_list_page_line25_txt-3942" : "操作", | ||
| 502 | + "deviceInfoManage_list_page_line38_txt-3364" : "请输拼音", | ||
| 503 | + "deviceInfoManage_list_page_line44_txt-1773" : "输入内部编号", | ||
| 504 | + "deviceInfoManage_list_page_line52_txt-4162" : "报废", | ||
| 505 | + "deviceInfoManage_list_page_line59_txt-4001" : "搜索", | ||
| 506 | + "deviceInfoManage_list_page_line69_txt-3385" : "排序选项", | ||
| 507 | + "deviceInfoManage_list_page_line77_txt-4000" : "重置", | ||
| 508 | + "deviceInfoManage_list_page_line122_txt-4058" : "未知", | ||
| 509 | + "deviceInfoManage_list_page_line127_txt-3866" : "详细", | ||
| 510 | + "deviceInfoManage_list_page_line144_txt-3053" : "显示从{{from}}到{{to}} 共{{total}}条 每页显示10条", | ||
| 511 | + "deviceInfoManage_list_page_line157_txt-4430" : "首页", | ||
| 512 | + "deviceInfoManage_list_page_line158_txt-3613" : "上一页", | ||
| 513 | + "deviceInfoManage_list_page_line159_txt-3614" : "下一页", | ||
| 514 | + "deviceInfoManage_list_page_line160_txt-4068" : "尾页", | ||
| 515 | + | ||
| 516 | + // 页面:detail.html | ||
| 517 | + "deviceInfoManage_detail_page_line3_txt-847" : "车辆设备详细信息", | ||
| 518 | + "deviceInfoManage_detail_page_line9_txt-3807" : "首页", | ||
| 519 | + "deviceInfoManage_detail_page_line13_txt-2398" : "基础信息", | ||
| 520 | + "deviceInfoManage_detail_page_line17_txt-848" : "车辆设备信息管理", | ||
| 521 | + "deviceInfoManage_detail_page_line21_txt-847" : "车辆设备详细信息", | ||
| 522 | + "deviceInfoManage_detail_page_line38_txt-1476" : "车辆内部编号", | ||
| 523 | + "deviceInfoManage_detail_page_line45_txt-3347" : "线路名称", | ||
| 524 | + "deviceInfoManage_detail_page_line52_txt-3216" : "旧终端号", | ||
| 525 | + "deviceInfoManage_detail_page_line59_txt-3201" : "新终端号", | ||
| 526 | + "deviceInfoManage_detail_page_line67_txt-4422" : "旧SIM卡号:", | ||
| 527 | + "deviceInfoManage_detail_page_line74_txt-3701" : "新SIM卡号:", | ||
| 528 | + "deviceInfoManage_detail_page_line82_txt-2258" : "故障描述:", | ||
| 529 | + "deviceInfoManage_detail_page_line90_txt-4403" : "保修描述:", | ||
| 530 | + "deviceInfoManage_detail_page_line98_txt-3211" : "启用日期", | ||
| 531 | + | ||
| 532 | + // 页面:edit.html | ||
| 533 | + "deviceInfoManage_edit_page_line3_txt-836" : "修改车辆设备信息", | ||
| 534 | + "deviceInfoManage_edit_page_line9_txt-3807" : "首页", | ||
| 535 | + "deviceInfoManage_edit_page_line13_txt-2398" : "基础信息", | ||
| 536 | + "deviceInfoManage_edit_page_line17_txt-848" : "车辆设备信息管理", | ||
| 537 | + "deviceInfoManage_edit_page_line21_txt-836" : "修改车辆设备信息", | ||
| 538 | + "deviceInfoManage_edit_page_line29_txt-3849" : "表单", | ||
| 539 | + "deviceInfoManage_edit_page_line38_txt-3347" : "线路名称", | ||
| 540 | + "deviceInfoManage_edit_page_line48_txt-3364" : "请输拼音", | ||
| 541 | + "deviceInfoManage_edit_page_line55_txt-1788" : "线路必须选择", | ||
| 542 | + "deviceInfoManage_edit_page_line60_txt-3469" : "车辆:", | ||
| 543 | + "deviceInfoManage_edit_page_line71_txt-3364" : "请输拼音", | ||
| 544 | + "deviceInfoManage_edit_page_line78_txt-1794" : "车辆必须选择", | ||
| 545 | + "deviceInfoManage_edit_page_line83_txt-3216" : "旧终端号", | ||
| 546 | + "deviceInfoManage_edit_page_line91_txt-3201" : "新终端号", | ||
| 547 | + "deviceInfoManage_edit_page_line98_txt-1264" : "请输入新终端号", | ||
| 548 | + "deviceInfoManage_edit_page_line102_txt-910" : "新终端号必须填写", | ||
| 549 | + "deviceInfoManage_edit_page_line110_txt-4422" : "旧SIM卡号:", | ||
| 550 | + "deviceInfoManage_edit_page_line113_txt-3357" : "请输入旧SIM卡号", | ||
| 551 | + "deviceInfoManage_edit_page_line118_txt-3701" : "新SIM卡号:", | ||
| 552 | + "deviceInfoManage_edit_page_line121_txt-3356" : "请输入新SIM卡号", | ||
| 553 | + "deviceInfoManage_edit_page_line126_txt-2258" : "故障描述:", | ||
| 554 | + "deviceInfoManage_edit_page_line134_txt-4403" : "保修描述:", | ||
| 555 | + "deviceInfoManage_edit_page_line170_txt-2252" : "启用日期:", | ||
| 556 | + "deviceInfoManage_edit_page_line183_txt-146" : "启用日期必须选择,精确到具体时间", | ||
| 557 | + "deviceInfoManage_edit_page_line197_txt-4173" : "提交", | ||
| 558 | + "deviceInfoManage_edit_page_line198_txt-3817" : "取消", | ||
| 559 | + | ||
| 560 | + // 页面:form.html | ||
| 561 | + "deviceInfoManage_form_page_line3_txt-845" : "添加车辆设备信息", | ||
| 562 | + "deviceInfoManage_form_page_line9_txt-3807" : "首页", | ||
| 563 | + "deviceInfoManage_form_page_line13_txt-2398" : "基础信息", | ||
| 564 | + "deviceInfoManage_form_page_line17_txt-848" : "车辆设备信息管理", | ||
| 565 | + "deviceInfoManage_form_page_line21_txt-845" : "添加车辆设备信息", | ||
| 566 | + "deviceInfoManage_form_page_line29_txt-3849" : "表单", | ||
| 567 | + "deviceInfoManage_form_page_line38_txt-3347" : "线路名称", | ||
| 568 | + "deviceInfoManage_form_page_line48_txt-3364" : "请输拼音", | ||
| 569 | + "deviceInfoManage_form_page_line55_txt-1788" : "线路必须选择", | ||
| 570 | + "deviceInfoManage_form_page_line60_txt-3469" : "车辆:", | ||
| 571 | + "deviceInfoManage_form_page_line71_txt-3364" : "请输拼音", | ||
| 572 | + "deviceInfoManage_form_page_line78_txt-1794" : "车辆必须选择", | ||
| 573 | + "deviceInfoManage_form_page_line83_txt-3216" : "旧终端号", | ||
| 574 | + "deviceInfoManage_form_page_line91_txt-3201" : "新终端号", | ||
| 575 | + "deviceInfoManage_form_page_line98_txt-1264" : "请输入新终端号", | ||
| 576 | + "deviceInfoManage_form_page_line102_txt-910" : "新终端号必须填写", | ||
| 577 | + "deviceInfoManage_form_page_line110_txt-4422" : "旧SIM卡号:", | ||
| 578 | + "deviceInfoManage_form_page_line113_txt-3357" : "请输入旧SIM卡号", | ||
| 579 | + "deviceInfoManage_form_page_line118_txt-3701" : "新SIM卡号:", | ||
| 580 | + "deviceInfoManage_form_page_line121_txt-3356" : "请输入新SIM卡号", | ||
| 581 | + "deviceInfoManage_form_page_line126_txt-2258" : "故障描述:", | ||
| 582 | + "deviceInfoManage_form_page_line134_txt-4403" : "保修描述:", | ||
| 583 | + "deviceInfoManage_form_page_line197_txt-4173" : "提交", | ||
| 584 | + "deviceInfoManage_form_page_line198_txt-3817" : "取消", | ||
| 585 | + | ||
| 586 | + // module.js | ||
| 587 | + "deviceInfoManage_module_js_line26_txt-3347" : "线路名称", | ||
| 588 | + "deviceInfoManage_module_js_line27_txt-1476" : "车辆内部编号", | ||
| 589 | + "deviceInfoManage_module_js_line28_txt-3211" : "启用日期", | ||
| 590 | + "deviceInfoManage_module_js_line29_txt-2185" : "旧设备编号", | ||
| 591 | + "deviceInfoManage_module_js_line30_txt-3201" : "新终端号", | ||
| 592 | + "deviceInfoManage_module_js_line148_txt-3729" : "失败:", | ||
| 593 | + "deviceInfoManage_module_js_line269_txt-3243" : "车辆 {{clZbh}} 设备信息", | ||
| 290 | 594 | ||
| 291 | 595 | ||
| 292 | // TODO: | 596 | // TODO: |
src/main/resources/static/pages/scheduleApp/module/basicInfo/busInfoManage/list.html
| @@ -5,15 +5,15 @@ | @@ -5,15 +5,15 @@ | ||
| 5 | <thead> | 5 | <thead> |
| 6 | <tr role="row" class="heading"> | 6 | <tr role="row" class="heading"> |
| 7 | <th style="width: 70px; max-width: 70px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line7_txt-3934" | translate}}</th> | 7 | <th style="width: 70px; max-width: 70px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line7_txt-3934" | translate}}</th> |
| 8 | - <th style="width: 110px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line8_txt-2479" | translate}}</th> | ||
| 9 | - <th style="width: 110px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line9_txt-2597" | translate}}</th> | ||
| 10 | - <th style="width: 110px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line10_txt-3094" | translate}}</th> | ||
| 11 | - <th style="width: 110px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line11_txt-3704" | translate}}</th> | ||
| 12 | - <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line12_txt-3096" | translate}}</th> | ||
| 13 | - <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line13_txt-2188" | translate}}</th> | ||
| 14 | - <th style="width: 60px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line14_txt-4087" | translate}}</th> | ||
| 15 | - <th style="width: 80px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;" >{{"busInfoManage_list_page_line15_txt-3874" | translate}}</th> | ||
| 16 | - <th style="width: 230px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line16_txt-3942" | translate}}</th> | 8 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line8_txt-2479" | translate}}</th> |
| 9 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line9_txt-2597" | translate}}</th> | ||
| 10 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line10_txt-3094" | translate}}</th> | ||
| 11 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line11_txt-3704" | translate}}</th> | ||
| 12 | + <th style="width: 130px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line12_txt-3096" | translate}}</th> | ||
| 13 | + <th style="width: 130px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line13_txt-2188" | translate}}</th> | ||
| 14 | + <th style="width: 60px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line14_txt-4087" | translate}}</th> | ||
| 15 | + <th style="width: 80px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;" >{{"busInfoManage_list_page_line15_txt-3874" | translate}}</th> | ||
| 16 | + <th style="width: 230px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"busInfoManage_list_page_line16_txt-3942" | translate}}</th> | ||
| 17 | </tr> | 17 | </tr> |
| 18 | <tr role="row" class="filter"> | 18 | <tr role="row" class="filter"> |
| 19 | <td></td> | 19 | <td></td> |
| @@ -40,6 +40,7 @@ | @@ -40,6 +40,7 @@ | ||
| 40 | iterobjexp="item.businessName" | 40 | iterobjexp="item.businessName" |
| 41 | searchph="{{'busInfoManage_list_page_line41_txt-3364' | translate}}" | 41 | searchph="{{'busInfoManage_list_page_line41_txt-3364' | translate}}" |
| 42 | searchexp="this.businessName" | 42 | searchexp="this.businessName" |
| 43 | + width="100" | ||
| 43 | required | 44 | required |
| 44 | > | 45 | > |
| 45 | </sa-Select5> | 46 | </sa-Select5> |
| @@ -55,6 +56,7 @@ | @@ -55,6 +56,7 @@ | ||
| 55 | iterobjexp="item.businessName" | 56 | iterobjexp="item.businessName" |
| 56 | searchph="{{'busInfoManage_list_page_line56_txt-3364' | translate}}" | 57 | searchph="{{'busInfoManage_list_page_line56_txt-3364' | translate}}" |
| 57 | searchexp="this.businessName" | 58 | searchexp="this.businessName" |
| 59 | + width="100" | ||
| 58 | required | 60 | required |
| 59 | > | 61 | > |
| 60 | </sa-Select5> | 62 | </sa-Select5> |
| @@ -153,7 +155,7 @@ | @@ -153,7 +155,7 @@ | ||
| 153 | 155 | ||
| 154 | <div class="pageBar"> | 156 | <div class="pageBar"> |
| 155 | <div class="pageBarLeft" | 157 | <div class="pageBarLeft" |
| 156 | - translate="busInfoManage_list_page_line153_txt-3053" | 158 | + translate="busInfoManage_list_page_line156_txt-3053" |
| 157 | translate-value-from="{{ ctrl.page()['uiFromRecord'] }}" | 159 | translate-value-from="{{ ctrl.page()['uiFromRecord'] }}" |
| 158 | translate-value-to="{{ ctrl.page()['uiToRecord'] }}" | 160 | translate-value-to="{{ ctrl.page()['uiToRecord'] }}" |
| 159 | translate-value-total="{{ ctrl.page()['totalElements'] }}"> | 161 | translate-value-total="{{ ctrl.page()['totalElements'] }}"> |
| @@ -166,10 +168,10 @@ | @@ -166,10 +168,10 @@ | ||
| 166 | rotate="false" | 168 | rotate="false" |
| 167 | max-size="10" | 169 | max-size="10" |
| 168 | boundary-links="true" | 170 | boundary-links="true" |
| 169 | - first-text="{{'busInfoManage_list_page_line163_txt-4430' | translate}}" | ||
| 170 | - previous-text="{{'busInfoManage_list_page_line164_txt-3613' | translate}}" | ||
| 171 | - next-text="{{'busInfoManage_list_page_line165_txt-3614' | translate}}" | ||
| 172 | - last-text="{{'busInfoManage_list_page_line166_txt-4068' | translate}}"> | 171 | + first-text="{{'busInfoManage_list_page_line169_txt-4430' | translate}}" |
| 172 | + previous-text="{{'busInfoManage_list_page_line170_txt-3613' | translate}}" | ||
| 173 | + next-text="{{'busInfoManage_list_page_line171_txt-3614' | translate}}" | ||
| 174 | + last-text="{{'busInfoManage_list_page_line172_txt-4068' | translate}}"> | ||
| 173 | </uib-pagination> | 175 | </uib-pagination> |
| 174 | </div> | 176 | </div> |
| 175 | </div> | 177 | </div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/detail.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-847}</h1> | 3 | + <h1>{{"deviceInfoManage_detail_page_line3_txt-847" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"deviceInfoManage_detail_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"deviceInfoManage_detail_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="deviceInfoManage">$$$$$${txt-848}</a> | 17 | + <a ui-sref="deviceInfoManage">{{"deviceInfoManage_detail_page_line17_txt-848" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-847}</span> | 21 | + <span class="active">{{"deviceInfoManage_detail_page_line21_txt-847" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -35,28 +35,28 @@ | @@ -35,28 +35,28 @@ | ||
| 35 | <form class="form-horizontal" novalidate name="myForm"> | 35 | <form class="form-horizontal" novalidate name="myForm"> |
| 36 | <div class="form-body"> | 36 | <div class="form-body"> |
| 37 | <div class="form-group has-success has-feedback"> | 37 | <div class="form-group has-success has-feedback"> |
| 38 | - <label class="col-md-2 control-label">$$$$$${txt-1476}*:</label> | 38 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line38_txt-1476" | translate}}*:</label> |
| 39 | <div class="col-md-3"> | 39 | <div class="col-md-3"> |
| 40 | <input type="text" class="form-control" name="clZbh" | 40 | <input type="text" class="form-control" name="clZbh" |
| 41 | ng-model="ctrl.deviceInfoForDetail.clZbh" readonly/> | 41 | ng-model="ctrl.deviceInfoForDetail.clZbh" readonly/> |
| 42 | </div> | 42 | </div> |
| 43 | </div> | 43 | </div> |
| 44 | <div class="form-group has-success has-feedback"> | 44 | <div class="form-group has-success has-feedback"> |
| 45 | - <label class="col-md-2 control-label">$$$$$${txt-3815}*:</label> | 45 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line45_txt-3347" | translate}}*:</label> |
| 46 | <div class="col-md-3"> | 46 | <div class="col-md-3"> |
| 47 | <input type="text" class="form-control" name="xlName" | 47 | <input type="text" class="form-control" name="xlName" |
| 48 | ng-model="ctrl.deviceInfoForDetail.xlName" readonly/> | 48 | ng-model="ctrl.deviceInfoForDetail.xlName" readonly/> |
| 49 | </div> | 49 | </div> |
| 50 | </div> | 50 | </div> |
| 51 | <div class="form-group has-success has-feedback"> | 51 | <div class="form-group has-success has-feedback"> |
| 52 | - <label class="col-md-2 control-label">$$$$$${txt-3216}*:</label> | 52 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line52_txt-3216" | translate}}*:</label> |
| 53 | <div class="col-md-3"> | 53 | <div class="col-md-3"> |
| 54 | <input type="text" class="form-control" name="oldDeviceNo" | 54 | <input type="text" class="form-control" name="oldDeviceNo" |
| 55 | ng-model="ctrl.deviceInfoForDetail.oldDeviceNo" readonly/> | 55 | ng-model="ctrl.deviceInfoForDetail.oldDeviceNo" readonly/> |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | <div class="form-group has-success has-feedback"> | 58 | <div class="form-group has-success has-feedback"> |
| 59 | - <label class="col-md-2 control-label">$$$$$${txt-3201}*:</label> | 59 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line59_txt-3201" | translate}}*:</label> |
| 60 | <div class="col-md-3"> | 60 | <div class="col-md-3"> |
| 61 | <input type="text" class="form-control" name="newDeviceNo" | 61 | <input type="text" class="form-control" name="newDeviceNo" |
| 62 | ng-model="ctrl.deviceInfoForDetail.newDeviceNo" readonly/> | 62 | ng-model="ctrl.deviceInfoForDetail.newDeviceNo" readonly/> |
| @@ -64,14 +64,14 @@ | @@ -64,14 +64,14 @@ | ||
| 64 | </div> | 64 | </div> |
| 65 | 65 | ||
| 66 | <div class="form-group"> | 66 | <div class="form-group"> |
| 67 | - <label class="col-md-2 control-label">$$$$$${txt-4422}</label> | 67 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line67_txt-4422" | translate}}</label> |
| 68 | <div class="col-md-4"> | 68 | <div class="col-md-4"> |
| 69 | <input type="text" class="form-control" name="oldSimNo" | 69 | <input type="text" class="form-control" name="oldSimNo" |
| 70 | ng-model="ctrl.deviceInfoForDetail.oldSimNo" readonly/> | 70 | ng-model="ctrl.deviceInfoForDetail.oldSimNo" readonly/> |
| 71 | </div> | 71 | </div> |
| 72 | </div> | 72 | </div> |
| 73 | <div class="form-group"> | 73 | <div class="form-group"> |
| 74 | - <label class="col-md-2 control-label">$$$$$${txt-3701}</label> | 74 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line74_txt-3701" | translate}}</label> |
| 75 | <div class="col-md-4"> | 75 | <div class="col-md-4"> |
| 76 | <input type="text" class="form-control" name="newSimNo" | 76 | <input type="text" class="form-control" name="newSimNo" |
| 77 | ng-model="ctrl.deviceInfoForDetail.newSimNo" readonly/> | 77 | ng-model="ctrl.deviceInfoForDetail.newSimNo" readonly/> |
| @@ -79,7 +79,7 @@ | @@ -79,7 +79,7 @@ | ||
| 79 | </div> | 79 | </div> |
| 80 | 80 | ||
| 81 | <div class="form-group"> | 81 | <div class="form-group"> |
| 82 | - <label class="col-md-2 control-label">$$$$$${txt-2258}</label> | 82 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line82_txt-2258" | translate}}</label> |
| 83 | <div class="col-md-10"> | 83 | <div class="col-md-10"> |
| 84 | <textarea rows="3" class="form-control" name="troubleDesc" | 84 | <textarea rows="3" class="form-control" name="troubleDesc" |
| 85 | ng-model="ctrl.deviceInfoForDetail.troubleDesc" readonly></textarea> | 85 | ng-model="ctrl.deviceInfoForDetail.troubleDesc" readonly></textarea> |
| @@ -87,7 +87,7 @@ | @@ -87,7 +87,7 @@ | ||
| 87 | </div> | 87 | </div> |
| 88 | 88 | ||
| 89 | <div class="form-group"> | 89 | <div class="form-group"> |
| 90 | - <label class="col-md-2 control-label">$$$$$${txt-4403}</label> | 90 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line90_txt-4403" | translate}}</label> |
| 91 | <div class="col-md-10"> | 91 | <div class="col-md-10"> |
| 92 | <textarea rows="3" class="form-control" name="guaranteeDesc" | 92 | <textarea rows="3" class="form-control" name="guaranteeDesc" |
| 93 | ng-model="ctrl.deviceInfoForDetail.guaranteeDesc" readonly></textarea> | 93 | ng-model="ctrl.deviceInfoForDetail.guaranteeDesc" readonly></textarea> |
| @@ -95,7 +95,7 @@ | @@ -95,7 +95,7 @@ | ||
| 95 | </div> | 95 | </div> |
| 96 | 96 | ||
| 97 | <div class="form-group has-success has-feedback"> | 97 | <div class="form-group has-success has-feedback"> |
| 98 | - <label class="col-md-2 control-label">$$$$$${txt-3211}*:</label> | 98 | + <label class="col-md-2 control-label">{{"deviceInfoManage_detail_page_line98_txt-3211" | translate}}*:</label> |
| 99 | <div class="col-md-3"> | 99 | <div class="col-md-3"> |
| 100 | <input type="text" class="form-control" | 100 | <input type="text" class="form-control" |
| 101 | name="qyrq" uib-datepicker-popup="yyyy年MM月dd日 HH:mm" | 101 | name="qyrq" uib-datepicker-popup="yyyy年MM月dd日 HH:mm" |
| @@ -109,4 +109,4 @@ | @@ -109,4 +109,4 @@ | ||
| 109 | </form> | 109 | </form> |
| 110 | </div> | 110 | </div> |
| 111 | 111 | ||
| 112 | -</div> | ||
| 113 | \ No newline at end of file | 112 | \ No newline at end of file |
| 113 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/edit.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-845}</h1> | 3 | + <h1>{{"deviceInfoManage_edit_page_line3_txt-845" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"deviceInfoManage_edit_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"deviceInfoManage_edit_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="deviceInfoManage">$$$$$${txt-848}</a> | 17 | + <a ui-sref="deviceInfoManage">{{"deviceInfoManage_edit_page_line17_txt-848" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-836}</span> | 21 | + <span class="active">{{"deviceInfoManage_edit_page_line21_txt-836" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
| 26 | <div class="portlet-title"> | 26 | <div class="portlet-title"> |
| 27 | <div class="caption"> | 27 | <div class="caption"> |
| 28 | <i class="icon-equalizer font-red-sunglo"></i> <span | 28 | <i class="icon-equalizer font-red-sunglo"></i> <span |
| 29 | - class="caption-subject font-red-sunglo bold uppercase">$$$$$${txt-3849}</span> | 29 | + class="caption-subject font-red-sunglo bold uppercase">{{"deviceInfoManage_edit_page_line29_txt-3849" | translate}}</span> |
| 30 | </div> | 30 | </div> |
| 31 | </div> | 31 | </div> |
| 32 | 32 | ||
| @@ -35,7 +35,7 @@ | @@ -35,7 +35,7 @@ | ||
| 35 | <div class="form-body"> | 35 | <div class="form-body"> |
| 36 | 36 | ||
| 37 | <div class="form-group has-success has-feedback"> | 37 | <div class="form-group has-success has-feedback"> |
| 38 | - <label class="col-md-2 control-label">$$$$$${txt-3815}*:</label> | 38 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line38_txt-3347" | translate}}*:</label> |
| 39 | <div class="col-md-3"> | 39 | <div class="col-md-3"> |
| 40 | <sa-Select5 name="xl" | 40 | <sa-Select5 name="xl" |
| 41 | model="ctrl.deviceInfoForSave" | 41 | model="ctrl.deviceInfoForSave" |
| @@ -45,19 +45,19 @@ | @@ -45,19 +45,19 @@ | ||
| 45 | dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" | 45 | dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" |
| 46 | iterobjname="item" | 46 | iterobjname="item" |
| 47 | iterobjexp="item.name" | 47 | iterobjexp="item.name" |
| 48 | - searchph="$$$$$${txt-3364}" | 48 | + searchph="{{'deviceInfoManage_edit_page_line48_txt-3364' | translate}}" |
| 49 | searchexp="this.name" | 49 | searchexp="this.name" |
| 50 | required > | 50 | required > |
| 51 | </sa-Select5> | 51 | </sa-Select5> |
| 52 | </div> | 52 | </div> |
| 53 | <!-- 隐藏块,显示验证信息 --> | 53 | <!-- 隐藏块,显示验证信息 --> |
| 54 | <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> | 54 | <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> |
| 55 | - $$$$$${txt-1788} | 55 | + {{"deviceInfoManage_edit_page_line55_txt-1788" | translate}} |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | 58 | ||
| 59 | <div class="form-group has-success has-feedback"> | 59 | <div class="form-group has-success has-feedback"> |
| 60 | - <label class="col-md-2 control-label">$$$$$${txt-3469}</label> | 60 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line60_txt-3469" | translate}}</label> |
| 61 | <div class="col-md-3"> | 61 | <div class="col-md-3"> |
| 62 | <sa-Select5 name="cl" | 62 | <sa-Select5 name="cl" |
| 63 | model="ctrl.deviceInfoForSave" | 63 | model="ctrl.deviceInfoForSave" |
| @@ -68,19 +68,19 @@ | @@ -68,19 +68,19 @@ | ||
| 68 | dsparamsextra="{'type':'all', 'isCancel_eq': false}" | 68 | dsparamsextra="{'type':'all', 'isCancel_eq': false}" |
| 69 | iterobjname="item" | 69 | iterobjname="item" |
| 70 | iterobjexp="item.cl.insideCode + '<' + item.xl.name + '>'" | 70 | iterobjexp="item.cl.insideCode + '<' + item.xl.name + '>'" |
| 71 | - searchph="$$$$$${txt-3364}" | 71 | + searchph="{{'deviceInfoManage_edit_page_line71_txt-3364' | translate}}" |
| 72 | searchexp="this.cl.insideCode + '<' + this.xl.name + '>'" | 72 | searchexp="this.cl.insideCode + '<' + this.xl.name + '>'" |
| 73 | required > | 73 | required > |
| 74 | </sa-Select5> | 74 | </sa-Select5> |
| 75 | </div> | 75 | </div> |
| 76 | <!-- 隐藏块,显示验证信息 --> | 76 | <!-- 隐藏块,显示验证信息 --> |
| 77 | <div class="alert alert-danger well-sm" ng-show="myForm.cl.$error.required"> | 77 | <div class="alert alert-danger well-sm" ng-show="myForm.cl.$error.required"> |
| 78 | - $$$$$${txt-1794} | 78 | + {{"deviceInfoManage_edit_page_line78_txt-1794" | translate}} |
| 79 | </div> | 79 | </div> |
| 80 | </div> | 80 | </div> |
| 81 | 81 | ||
| 82 | <div class="form-group has-success has-feedback"> | 82 | <div class="form-group has-success has-feedback"> |
| 83 | - <label class="col-md-2 control-label">$$$$$${txt-3216}*:</label> | 83 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line83_txt-3216" | translate}}*:</label> |
| 84 | <div class="col-md-3"> | 84 | <div class="col-md-3"> |
| 85 | <input type="text" class="form-control" name="oldDeviceNo" | 85 | <input type="text" class="form-control" name="oldDeviceNo" |
| 86 | ng-model="ctrl.deviceInfoForSave.oldDeviceNo" readonly/> | 86 | ng-model="ctrl.deviceInfoForSave.oldDeviceNo" readonly/> |
| @@ -88,18 +88,18 @@ | @@ -88,18 +88,18 @@ | ||
| 88 | </div> | 88 | </div> |
| 89 | 89 | ||
| 90 | <div class="form-group has-success has-feedback"> | 90 | <div class="form-group has-success has-feedback"> |
| 91 | - <label class="col-md-2 control-label">$$$$$${txt-3201}*:</label> | 91 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line91_txt-3201" | translate}}*:</label> |
| 92 | <div class="col-md-3"> | 92 | <div class="col-md-3"> |
| 93 | <input type="text" class="form-control" | 93 | <input type="text" class="form-control" |
| 94 | name="newDeviceNo" ng-model="ctrl.deviceInfoForSave.newDeviceNo" | 94 | name="newDeviceNo" ng-model="ctrl.deviceInfoForSave.newDeviceNo" |
| 95 | remote-Validation | 95 | remote-Validation |
| 96 | remotevtype="cars_sbbh" | 96 | remotevtype="cars_sbbh" |
| 97 | remotevparam="{{ {'id_eq': null, 'equipmentCode_eq': ctrl.deviceInfoForSave.newDeviceNo} | json}}" | 97 | remotevparam="{{ {'id_eq': null, 'equipmentCode_eq': ctrl.deviceInfoForSave.newDeviceNo} | json}}" |
| 98 | - required placeholder="$$$$$${txt-1264}"/> | 98 | + required placeholder="{{'deviceInfoManage_edit_page_line98_txt-1264' | translate}}"/> |
| 99 | </div> | 99 | </div> |
| 100 | <!-- 隐藏块,显示验证信息 --> | 100 | <!-- 隐藏块,显示验证信息 --> |
| 101 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.required"> | 101 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.required"> |
| 102 | - $$$$$${txt-910} | 102 | + {{"deviceInfoManage_edit_page_line102_txt-910" | translate}} |
| 103 | </div> | 103 | </div> |
| 104 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.remote"> | 104 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.remote"> |
| 105 | {{$remote_msg}} | 105 | {{$remote_msg}} |
| @@ -107,23 +107,23 @@ | @@ -107,23 +107,23 @@ | ||
| 107 | </div> | 107 | </div> |
| 108 | 108 | ||
| 109 | <div class="form-group"> | 109 | <div class="form-group"> |
| 110 | - <label class="col-md-2 control-label">$$$$$${txt-4422}</label> | 110 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line110_txt-4422" | translate}}</label> |
| 111 | <div class="col-md-4"> | 111 | <div class="col-md-4"> |
| 112 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.oldSimNo" | 112 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.oldSimNo" |
| 113 | - placeholder="$$$$$${txt-3357}"/> | 113 | + placeholder="{{'deviceInfoManage_edit_page_line113_txt-3357' | translate}}"/> |
| 114 | </div> | 114 | </div> |
| 115 | </div> | 115 | </div> |
| 116 | 116 | ||
| 117 | <div class="form-group"> | 117 | <div class="form-group"> |
| 118 | - <label class="col-md-2 control-label">$$$$$${txt-3701}</label> | 118 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line118_txt-3701" | translate}}</label> |
| 119 | <div class="col-md-4"> | 119 | <div class="col-md-4"> |
| 120 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.newSimNo" | 120 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.newSimNo" |
| 121 | - placeholder="$$$$$${txt-3356}"/> | 121 | + placeholder="{{'deviceInfoManage_edit_page_line121_txt-3356' | translate}}"/> |
| 122 | </div> | 122 | </div> |
| 123 | </div> | 123 | </div> |
| 124 | 124 | ||
| 125 | <div class="form-group"> | 125 | <div class="form-group"> |
| 126 | - <label class="col-md-2 control-label">$$$$$${txt-2258}</label> | 126 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line126_txt-2258" | translate}}</label> |
| 127 | <div class="col-md-10"> | 127 | <div class="col-md-10"> |
| 128 | <textarea rows="3" class="form-control" name="descriptions" | 128 | <textarea rows="3" class="form-control" name="descriptions" |
| 129 | ng-model="ctrl.deviceInfoForSave.troubleDesc"></textarea> | 129 | ng-model="ctrl.deviceInfoForSave.troubleDesc"></textarea> |
| @@ -131,7 +131,7 @@ | @@ -131,7 +131,7 @@ | ||
| 131 | </div> | 131 | </div> |
| 132 | 132 | ||
| 133 | <div class="form-group"> | 133 | <div class="form-group"> |
| 134 | - <label class="col-md-2 control-label">$$$$$${txt-4403}</label> | 134 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line134_txt-4403" | translate}}</label> |
| 135 | <div class="col-md-10"> | 135 | <div class="col-md-10"> |
| 136 | <textarea rows="3" class="form-control" name="descriptions" | 136 | <textarea rows="3" class="form-control" name="descriptions" |
| 137 | ng-model="ctrl.deviceInfoForSave.guaranteeDesc"></textarea> | 137 | ng-model="ctrl.deviceInfoForSave.guaranteeDesc"></textarea> |
| @@ -167,7 +167,7 @@ | @@ -167,7 +167,7 @@ | ||
| 167 | <!--</div>--> | 167 | <!--</div>--> |
| 168 | 168 | ||
| 169 | <div class="form-group has-success has-feedback"> | 169 | <div class="form-group has-success has-feedback"> |
| 170 | - <label class="col-md-2 control-label">$$$$$${txt-2252}</label> | 170 | + <label class="col-md-2 control-label">{{"deviceInfoManage_edit_page_line170_txt-2252" | translate}}</label> |
| 171 | <div class="col-md-3"> | 171 | <div class="col-md-3"> |
| 172 | <div class="input-group"> | 172 | <div class="input-group"> |
| 173 | <input type="datetime-local" class="form-control" name="qyrq" | 173 | <input type="datetime-local" class="form-control" name="qyrq" |
| @@ -180,7 +180,7 @@ | @@ -180,7 +180,7 @@ | ||
| 180 | </div> | 180 | </div> |
| 181 | <!-- 隐藏块,显示验证信息 --> | 181 | <!-- 隐藏块,显示验证信息 --> |
| 182 | <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.required"> | 182 | <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.required"> |
| 183 | - $$$$$${txt-146} | 183 | + {{"deviceInfoManage_edit_page_line183_txt-146" | translate}} |
| 184 | </div> | 184 | </div> |
| 185 | <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.remote"> | 185 | <div class="alert alert-danger well-sm" ng-show="myForm.qyrq.$error.remote"> |
| 186 | {{$remote_msg}} | 186 | {{$remote_msg}} |
| @@ -194,12 +194,12 @@ | @@ -194,12 +194,12 @@ | ||
| 194 | <div class="form-actions"> | 194 | <div class="form-actions"> |
| 195 | <div class="row"> | 195 | <div class="row"> |
| 196 | <div class="col-md-offset-3 col-md-4"> | 196 | <div class="col-md-offset-3 col-md-4"> |
| 197 | - <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | ||
| 198 | - <a type="button" class="btn default" ui-sref="deviceInfoManage" ><i class="fa fa-times"></i> $$$$$${txt-3817}</a> | 197 | + <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> {{"deviceInfoManage_edit_page_line197_txt-4173" | translate}}</button> |
| 198 | + <a type="button" class="btn default" ui-sref="deviceInfoManage" ><i class="fa fa-times"></i> {{"deviceInfoManage_edit_page_line198_txt-3817" | translate}}</a> | ||
| 199 | </div> | 199 | </div> |
| 200 | </div> | 200 | </div> |
| 201 | </div> | 201 | </div> |
| 202 | </form> | 202 | </form> |
| 203 | </div> | 203 | </div> |
| 204 | 204 | ||
| 205 | -</div> | ||
| 206 | \ No newline at end of file | 205 | \ No newline at end of file |
| 206 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/form.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-845}</h1> | 3 | + <h1>{{"deviceInfoManage_form_page_line3_txt-845" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"deviceInfoManage_form_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"deviceInfoManage_form_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="deviceInfoManage">$$$$$${txt-848}</a> | 17 | + <a ui-sref="deviceInfoManage">{{"deviceInfoManage_form_page_line17_txt-848" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-845}</span> | 21 | + <span class="active">{{"deviceInfoManage_form_page_line21_txt-845" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
| 26 | <div class="portlet-title"> | 26 | <div class="portlet-title"> |
| 27 | <div class="caption"> | 27 | <div class="caption"> |
| 28 | <i class="icon-equalizer font-red-sunglo"></i> <span | 28 | <i class="icon-equalizer font-red-sunglo"></i> <span |
| 29 | - class="caption-subject font-red-sunglo bold uppercase">$$$$$${txt-3849}</span> | 29 | + class="caption-subject font-red-sunglo bold uppercase">{{"deviceInfoManage_form_page_line29_txt-3849" | translate}}</span> |
| 30 | </div> | 30 | </div> |
| 31 | </div> | 31 | </div> |
| 32 | 32 | ||
| @@ -35,7 +35,7 @@ | @@ -35,7 +35,7 @@ | ||
| 35 | <div class="form-body"> | 35 | <div class="form-body"> |
| 36 | 36 | ||
| 37 | <div class="form-group has-success has-feedback"> | 37 | <div class="form-group has-success has-feedback"> |
| 38 | - <label class="col-md-2 control-label">$$$$$${txt-3815}*:</label> | 38 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line38_txt-3347" | translate}}*:</label> |
| 39 | <div class="col-md-3"> | 39 | <div class="col-md-3"> |
| 40 | <sa-Select5 name="xl" | 40 | <sa-Select5 name="xl" |
| 41 | model="ctrl.deviceInfoForSave" | 41 | model="ctrl.deviceInfoForSave" |
| @@ -45,19 +45,19 @@ | @@ -45,19 +45,19 @@ | ||
| 45 | dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" | 45 | dsparams="{{ {type: 'ajax', param:{type: 'all', 'destroy_eq': 0}, atype:'xl' } | json }}" |
| 46 | iterobjname="item" | 46 | iterobjname="item" |
| 47 | iterobjexp="item.name" | 47 | iterobjexp="item.name" |
| 48 | - searchph="$$$$$${txt-3364}" | 48 | + searchph="{{'deviceInfoManage_form_page_line48_txt-3364' | translate}}" |
| 49 | searchexp="this.name" | 49 | searchexp="this.name" |
| 50 | required > | 50 | required > |
| 51 | </sa-Select5> | 51 | </sa-Select5> |
| 52 | </div> | 52 | </div> |
| 53 | <!-- 隐藏块,显示验证信息 --> | 53 | <!-- 隐藏块,显示验证信息 --> |
| 54 | <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> | 54 | <div class="alert alert-danger well-sm" ng-show="myForm.xl.$error.required"> |
| 55 | - $$$$$${txt-1788} | 55 | + {{"deviceInfoManage_form_page_line55_txt-1788" | translate}} |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | 58 | ||
| 59 | <div class="form-group has-success has-feedback"> | 59 | <div class="form-group has-success has-feedback"> |
| 60 | - <label class="col-md-2 control-label">$$$$$${txt-3469}</label> | 60 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line60_txt-3469" | translate}}</label> |
| 61 | <div class="col-md-3"> | 61 | <div class="col-md-3"> |
| 62 | <sa-Select5 name="cl" | 62 | <sa-Select5 name="cl" |
| 63 | model="ctrl.deviceInfoForSave" | 63 | model="ctrl.deviceInfoForSave" |
| @@ -68,19 +68,19 @@ | @@ -68,19 +68,19 @@ | ||
| 68 | dsparamsextra="{'type':'all', 'isCancel_eq': false}" | 68 | dsparamsextra="{'type':'all', 'isCancel_eq': false}" |
| 69 | iterobjname="item" | 69 | iterobjname="item" |
| 70 | iterobjexp="item.cl.insideCode + '<' + item.xl.name + '>'" | 70 | iterobjexp="item.cl.insideCode + '<' + item.xl.name + '>'" |
| 71 | - searchph="$$$$$${txt-3364}" | 71 | + searchph="{{'deviceInfoManage_form_page_line71_txt-3364' | translate}}" |
| 72 | searchexp="this.cl.insideCode + '<' + this.xl.name + '>'" | 72 | searchexp="this.cl.insideCode + '<' + this.xl.name + '>'" |
| 73 | required > | 73 | required > |
| 74 | </sa-Select5> | 74 | </sa-Select5> |
| 75 | </div> | 75 | </div> |
| 76 | <!-- 隐藏块,显示验证信息 --> | 76 | <!-- 隐藏块,显示验证信息 --> |
| 77 | <div class="alert alert-danger well-sm" ng-show="myForm.cl.$error.required"> | 77 | <div class="alert alert-danger well-sm" ng-show="myForm.cl.$error.required"> |
| 78 | - $$$$$${txt-1794} | 78 | + {{"deviceInfoManage_form_page_line78_txt-1794" | translate}} |
| 79 | </div> | 79 | </div> |
| 80 | </div> | 80 | </div> |
| 81 | 81 | ||
| 82 | <div class="form-group has-success has-feedback"> | 82 | <div class="form-group has-success has-feedback"> |
| 83 | - <label class="col-md-2 control-label">$$$$$${txt-3216}*:</label> | 83 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line83_txt-3216" | translate}}*:</label> |
| 84 | <div class="col-md-3"> | 84 | <div class="col-md-3"> |
| 85 | <input type="text" class="form-control" name="oldDeviceNo" | 85 | <input type="text" class="form-control" name="oldDeviceNo" |
| 86 | ng-model="ctrl.deviceInfoForSave.oldDeviceNo" readonly/> | 86 | ng-model="ctrl.deviceInfoForSave.oldDeviceNo" readonly/> |
| @@ -88,18 +88,18 @@ | @@ -88,18 +88,18 @@ | ||
| 88 | </div> | 88 | </div> |
| 89 | 89 | ||
| 90 | <div class="form-group has-success has-feedback"> | 90 | <div class="form-group has-success has-feedback"> |
| 91 | - <label class="col-md-2 control-label">$$$$$${txt-3201}*:</label> | 91 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line91_txt-3201" | translate}}*:</label> |
| 92 | <div class="col-md-3"> | 92 | <div class="col-md-3"> |
| 93 | <input type="text" class="form-control" | 93 | <input type="text" class="form-control" |
| 94 | name="newDeviceNo" ng-model="ctrl.deviceInfoForSave.newDeviceNo" | 94 | name="newDeviceNo" ng-model="ctrl.deviceInfoForSave.newDeviceNo" |
| 95 | remote-Validation | 95 | remote-Validation |
| 96 | remotevtype="cars_sbbh" | 96 | remotevtype="cars_sbbh" |
| 97 | remotevparam="{{ {'id_eq': null, 'equipmentCode_eq': ctrl.deviceInfoForSave.newDeviceNo} | json}}" | 97 | remotevparam="{{ {'id_eq': null, 'equipmentCode_eq': ctrl.deviceInfoForSave.newDeviceNo} | json}}" |
| 98 | - required placeholder="$$$$$${txt-1264}"/> | 98 | + required placeholder="{{'deviceInfoManage_form_page_line98_txt-1264' | translate}}"/> |
| 99 | </div> | 99 | </div> |
| 100 | <!-- 隐藏块,显示验证信息 --> | 100 | <!-- 隐藏块,显示验证信息 --> |
| 101 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.required"> | 101 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.required"> |
| 102 | - $$$$$${txt-910} | 102 | + {{"deviceInfoManage_form_page_line102_txt-910" | translate}} |
| 103 | </div> | 103 | </div> |
| 104 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.remote"> | 104 | <div class="alert alert-danger well-sm" ng-show="myForm.newDeviceNo.$error.remote"> |
| 105 | {{$remote_msg}} | 105 | {{$remote_msg}} |
| @@ -107,23 +107,23 @@ | @@ -107,23 +107,23 @@ | ||
| 107 | </div> | 107 | </div> |
| 108 | 108 | ||
| 109 | <div class="form-group"> | 109 | <div class="form-group"> |
| 110 | - <label class="col-md-2 control-label">$$$$$${txt-4422}</label> | 110 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line110_txt-4422" | translate}}</label> |
| 111 | <div class="col-md-4"> | 111 | <div class="col-md-4"> |
| 112 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.oldSimNo" | 112 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.oldSimNo" |
| 113 | - placeholder="$$$$$${txt-3357}"/> | 113 | + placeholder="{{'deviceInfoManage_form_page_line113_txt-3357' | translate}}"/> |
| 114 | </div> | 114 | </div> |
| 115 | </div> | 115 | </div> |
| 116 | 116 | ||
| 117 | <div class="form-group"> | 117 | <div class="form-group"> |
| 118 | - <label class="col-md-2 control-label">$$$$$${txt-3701}</label> | 118 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line118_txt-3701" | translate}}</label> |
| 119 | <div class="col-md-4"> | 119 | <div class="col-md-4"> |
| 120 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.newSimNo" | 120 | <input type="text" class="form-control" ng-model="ctrl.deviceInfoForSave.newSimNo" |
| 121 | - placeholder="$$$$$${txt-3356}"/> | 121 | + placeholder="{{'deviceInfoManage_form_page_line121_txt-3356' | translate}}"/> |
| 122 | </div> | 122 | </div> |
| 123 | </div> | 123 | </div> |
| 124 | 124 | ||
| 125 | <div class="form-group"> | 125 | <div class="form-group"> |
| 126 | - <label class="col-md-2 control-label">$$$$$${txt-2258}</label> | 126 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line126_txt-2258" | translate}}</label> |
| 127 | <div class="col-md-10"> | 127 | <div class="col-md-10"> |
| 128 | <textarea rows="3" class="form-control" name="descriptions" | 128 | <textarea rows="3" class="form-control" name="descriptions" |
| 129 | ng-model="ctrl.deviceInfoForSave.troubleDesc"></textarea> | 129 | ng-model="ctrl.deviceInfoForSave.troubleDesc"></textarea> |
| @@ -131,7 +131,7 @@ | @@ -131,7 +131,7 @@ | ||
| 131 | </div> | 131 | </div> |
| 132 | 132 | ||
| 133 | <div class="form-group"> | 133 | <div class="form-group"> |
| 134 | - <label class="col-md-2 control-label">$$$$$${txt-4403}</label> | 134 | + <label class="col-md-2 control-label">{{"deviceInfoManage_form_page_line134_txt-4403" | translate}}</label> |
| 135 | <div class="col-md-10"> | 135 | <div class="col-md-10"> |
| 136 | <textarea rows="3" class="form-control" name="descriptions" | 136 | <textarea rows="3" class="form-control" name="descriptions" |
| 137 | ng-model="ctrl.deviceInfoForSave.guaranteeDesc"></textarea> | 137 | ng-model="ctrl.deviceInfoForSave.guaranteeDesc"></textarea> |
| @@ -194,12 +194,12 @@ | @@ -194,12 +194,12 @@ | ||
| 194 | <div class="form-actions"> | 194 | <div class="form-actions"> |
| 195 | <div class="row"> | 195 | <div class="row"> |
| 196 | <div class="col-md-offset-3 col-md-4"> | 196 | <div class="col-md-offset-3 col-md-4"> |
| 197 | - <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | ||
| 198 | - <a type="button" class="btn default" ui-sref="deviceInfoManage" ><i class="fa fa-times"></i> $$$$$${txt-3817}</a> | 197 | + <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> {{"deviceInfoManage_form_page_line197_txt-4173" | translate}}</button> |
| 198 | + <a type="button" class="btn default" ui-sref="deviceInfoManage" ><i class="fa fa-times"></i> {{"deviceInfoManage_form_page_line198_txt-3817" | translate}}</a> | ||
| 199 | </div> | 199 | </div> |
| 200 | </div> | 200 | </div> |
| 201 | </div> | 201 | </div> |
| 202 | </form> | 202 | </form> |
| 203 | </div> | 203 | </div> |
| 204 | 204 | ||
| 205 | -</div> | ||
| 206 | \ No newline at end of file | 205 | \ No newline at end of file |
| 206 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/index.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-848}</h1> | 3 | + <h1>{{"deviceInfoManage_index_page_line3_txt-848" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"deviceInfoManage_index_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"deviceInfoManage_index_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <span class="active">$$$$$${txt-848}</span> | 17 | + <span class="active">{{"deviceInfoManage_index_page_line17_txt-848" | translate}}</span> |
| 18 | </li> | 18 | </li> |
| 19 | </ul> | 19 | </ul> |
| 20 | 20 | ||
| @@ -24,12 +24,12 @@ | @@ -24,12 +24,12 @@ | ||
| 24 | <div class="portlet-title"> | 24 | <div class="portlet-title"> |
| 25 | <div class="caption font-dark"> | 25 | <div class="caption font-dark"> |
| 26 | <i class="fa fa-database font-dark"></i> | 26 | <i class="fa fa-database font-dark"></i> |
| 27 | - <span class="caption-subject bold uppercase">$$$$$${txt-2233}</span> | 27 | + <span class="caption-subject bold uppercase">{{"deviceInfoManage_index_page_line27_txt-2233" | translate}}</span> |
| 28 | </div> | 28 | </div> |
| 29 | <div class="actions"> | 29 | <div class="actions"> |
| 30 | <a href="javascript:" class="btn blue" ng-click="ctrl.goForm()"> | 30 | <a href="javascript:" class="btn blue" ng-click="ctrl.goForm()"> |
| 31 | <i class="fa fa-plus"></i> | 31 | <i class="fa fa-plus"></i> |
| 32 | - $$$$$${txt-1791} | 32 | + {{"deviceInfoManage_index_page_line32_txt-1791" | translate}} |
| 33 | </a> | 33 | </a> |
| 34 | 34 | ||
| 35 | <!--<div class="btn-group">--> | 35 | <!--<div class="btn-group">--> |
| @@ -55,4 +55,4 @@ | @@ -55,4 +55,4 @@ | ||
| 55 | </div> | 55 | </div> |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | -</div> | ||
| 59 | \ No newline at end of file | 58 | \ No newline at end of file |
| 59 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/list.html
| @@ -10,19 +10,19 @@ | @@ -10,19 +10,19 @@ | ||
| 10 | </style> | 10 | </style> |
| 11 | 11 | ||
| 12 | 12 | ||
| 13 | - <div style="width: 100%; height: 100%; overflow: auto"> | 13 | + <div class="fixDiv"> |
| 14 | <table class="fixTable table table-striped table-bordered table-hover table-checkable order-column"> | 14 | <table class="fixTable table table-striped table-bordered table-hover table-checkable order-column"> |
| 15 | <thead> | 15 | <thead> |
| 16 | <tr role="row" class="heading"> | 16 | <tr role="row" class="heading"> |
| 17 | - <th style="width: 70px;">$$$$$${txt-3934}</th> | ||
| 18 | - <th style="width: 15%;">$$$$$${txt-3347}</th> | ||
| 19 | - <th style="width: 10%;">$$$$$${txt-2597}</th> | ||
| 20 | - <th style="width: 160px;">$$$$$${txt-3211}</th> | ||
| 21 | - <th>$$$$$${txt-2185}</th> | ||
| 22 | - <th>$$$$$${txt-2184}</th> | ||
| 23 | - <th style="width: 180px;">$$$$$${txt-4389}</th> | ||
| 24 | - <th style="width: 80px;" >$$$$$${txt-3874}</th> | ||
| 25 | - <th style="width: 150pt;">$$$$$${txt-3942}</th> | 17 | + <th style="width: 70px; max-width: 70px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line17_txt-3934" | translate}}</th> |
| 18 | + <th style="width: 170px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line18_txt-3347" | translate}}</th> | ||
| 19 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line19_txt-2597" | translate}}</th> | ||
| 20 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line20_txt-3211" | translate}}</th> | ||
| 21 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line21_txt-2185" | translate}}</th> | ||
| 22 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line22_txt-2184" | translate}}</th> | ||
| 23 | + <th style="width: 160px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line23_txt-4389" | translate}}</th> | ||
| 24 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line24_txt-3874" | translate}}</th> | ||
| 25 | + <th style="width: 200px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"deviceInfoManage_list_page_line25_txt-3942" | translate}}</th> | ||
| 26 | </tr> | 26 | </tr> |
| 27 | <tr role="row" class="filter"> | 27 | <tr role="row" class="filter"> |
| 28 | <td></td> | 28 | <td></td> |
| @@ -35,13 +35,14 @@ | @@ -35,13 +35,14 @@ | ||
| 35 | dsparams="{{ {type: 'ajax', param:{type: 'all'}, atype:'xl' } | json }}" | 35 | dsparams="{{ {type: 'ajax', param:{type: 'all'}, atype:'xl' } | json }}" |
| 36 | iterobjname="item" | 36 | iterobjname="item" |
| 37 | iterobjexp="item.name" | 37 | iterobjexp="item.name" |
| 38 | - searchph="$$$$$${txt-3364}" | 38 | + searchph="{{'deviceInfoManage_list_page_line38_txt-3364' | translate}}" |
| 39 | searchexp="this.name" | 39 | searchexp="this.name" |
| 40 | + width="140" | ||
| 40 | required > | 41 | required > |
| 41 | </sa-Select5> | 42 | </sa-Select5> |
| 42 | </td> | 43 | </td> |
| 43 | <td> | 44 | <td> |
| 44 | - <input type="text" class="form-control form-filter input-sm" ng-model="ctrl.searchCondition()['clZbh_like']" placeholder="$$$$$${txt-1773}"/> | 45 | + <input type="text" class="form-control form-filter input-sm" ng-model="ctrl.searchCondition()['clZbh_like']" placeholder="{{'deviceInfoManage_list_page_line44_txt-1773' | translate}}"/> |
| 45 | </td> | 46 | </td> |
| 46 | <td></td> | 47 | <td></td> |
| 47 | <td></td> | 48 | <td></td> |
| @@ -49,14 +50,14 @@ | @@ -49,14 +50,14 @@ | ||
| 49 | <td></td> | 50 | <td></td> |
| 50 | <td> | 51 | <td> |
| 51 | <label class="checkbox-inline input"> | 52 | <label class="checkbox-inline input"> |
| 52 | - <input type="checkbox" ng-model="ctrl.searchCondition()['isCancel_eq']" />$$$$$${txt-4162} | 53 | + <input type="checkbox" ng-model="ctrl.searchCondition()['isCancel_eq']" />{{"deviceInfoManage_list_page_line52_txt-4162" | translate}} |
| 53 | </label> | 54 | </label> |
| 54 | </td> | 55 | </td> |
| 55 | <td> | 56 | <td> |
| 56 | <div class="btn-group"> | 57 | <div class="btn-group"> |
| 57 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" style="margin-right: 0;" | 58 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" style="margin-right: 0;" |
| 58 | ng-click="ctrl.doPage()"> | 59 | ng-click="ctrl.doPage()"> |
| 59 | - <i class="fa fa-search"></i> $$$$$${txt-4001}</button> | 60 | + <i class="fa fa-search"></i> {{"deviceInfoManage_list_page_line59_txt-4001" | translate}}</button> |
| 60 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom dropdown-toggle" | 61 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom dropdown-toggle" |
| 61 | data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> | 62 | data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> |
| 62 | <span class="caret"></span> | 63 | <span class="caret"></span> |
| @@ -66,7 +67,7 @@ | @@ -66,7 +67,7 @@ | ||
| 66 | <li> | 67 | <li> |
| 67 | <a href="javascript:" class="tool-action" ng-click="ctrl.customOrder()"> | 68 | <a href="javascript:" class="tool-action" ng-click="ctrl.customOrder()"> |
| 68 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> | 69 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> |
| 69 | - $$$$$${txt-3385} | 70 | + {{"deviceInfoManage_list_page_line69_txt-3385" | translate}} |
| 70 | </a> | 71 | </a> |
| 71 | </li> | 72 | </li> |
| 72 | </ul> | 73 | </ul> |
| @@ -74,7 +75,7 @@ | @@ -74,7 +75,7 @@ | ||
| 74 | 75 | ||
| 75 | <button class="btn btn-sm red btn-outline filter-cancel" | 76 | <button class="btn btn-sm red btn-outline filter-cancel" |
| 76 | ng-click="ctrl.reset()"> | 77 | ng-click="ctrl.reset()"> |
| 77 | - <i class="fa fa-times"></i> $$$$$${txt-4000}</button> | 78 | + <i class="fa fa-times"></i> {{"deviceInfoManage_list_page_line77_txt-4000" | translate}}</button> |
| 78 | </td> | 79 | </td> |
| 79 | 80 | ||
| 80 | </tr> | 81 | </tr> |
| @@ -119,12 +120,12 @@ | @@ -119,12 +120,12 @@ | ||
| 119 | 120 | ||
| 120 | </td> | 121 | </td> |
| 121 | <td> | 122 | <td> |
| 122 | - <span ng-bind="info.isCancel | dict:'truefalseType':'$$$$$${txt-4058}' "></span> | 123 | + <span ng-bind="info.isCancel | dict:'truefalseType':('deviceInfoManage_list_page_line122_txt-4058' | translate) "></span> |
| 123 | </td> | 124 | </td> |
| 124 | <td> | 125 | <td> |
| 125 | <!--<a href="details.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 详细 </a>--> | 126 | <!--<a href="details.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 详细 </a>--> |
| 126 | <!--<a href="edit.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 修改 </a>--> | 127 | <!--<a href="edit.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 修改 </a>--> |
| 127 | - <a ui-sref="deviceInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> $$$$$${txt-3866} </a> | 128 | + <a ui-sref="deviceInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> {{"deviceInfoManage_list_page_line127_txt-3866" | translate}} </a> |
| 128 | <!--<a ui-sref="deviceInfoManage_edit({id: info.id})" class="btn btn-info btn-sm" ng-if="info.isCancel == '0'"> 修改 </a>--> | 129 | <!--<a ui-sref="deviceInfoManage_edit({id: info.id})" class="btn btn-info btn-sm" ng-if="info.isCancel == '0'"> 修改 </a>--> |
| 129 | <!--<a sweetalert--> | 130 | <!--<a sweetalert--> |
| 130 | <!--sweet-options="{title: '是否作废车辆设备历史信息?',text: '内部编号:' + info.clZbh, html: true,type: 'warning',showCancelButton: true,confirmButtonColor: '#DD6B55',confirmButtonText: '是',cancelButtonText: '取消'}"--> | 131 | <!--sweet-options="{title: '是否作废车辆设备历史信息?',text: '内部编号:' + info.clZbh, html: true,type: 'warning',showCancelButton: true,confirmButtonColor: '#DD6B55',confirmButtonText: '是',cancelButtonText: '取消'}"--> |
| @@ -140,8 +141,11 @@ | @@ -140,8 +141,11 @@ | ||
| 140 | </div> | 141 | </div> |
| 141 | 142 | ||
| 142 | <div class="pageBar"> | 143 | <div class="pageBar"> |
| 143 | - <div class="pageBarLeft"> | ||
| 144 | - $$$$$${txt-3053} | 144 | + <div class="pageBarLeft" |
| 145 | + translate="employeeInfoManage_list_page_line189_txt-3053" | ||
| 146 | + translate-value-from="{{ ctrl.page()['uiFromRecord'] }}" | ||
| 147 | + translate-value-to="{{ ctrl.page()['uiToRecord'] }}" | ||
| 148 | + translate-value-total="{{ ctrl.page()['totalElements'] }}"> | ||
| 145 | </div> | 149 | </div> |
| 146 | 150 | ||
| 147 | <div class="pageBarRight"> | 151 | <div class="pageBarRight"> |
| @@ -151,10 +155,10 @@ | @@ -151,10 +155,10 @@ | ||
| 151 | rotate="false" | 155 | rotate="false" |
| 152 | max-size="10" | 156 | max-size="10" |
| 153 | boundary-links="true" | 157 | boundary-links="true" |
| 154 | - first-text="$$$$$${txt-4430}" | ||
| 155 | - previous-text="$$$$$${txt-3613}" | ||
| 156 | - next-text="$$$$$${txt-3614}" | ||
| 157 | - last-text="$$$$$${txt-4068}"> | 158 | + first-text="{{'deviceInfoManage_list_page_line157_txt-4430' | translate}}" |
| 159 | + previous-text="{{'deviceInfoManage_list_page_line158_txt-3613' | translate}}" | ||
| 160 | + next-text="{{'deviceInfoManage_list_page_line159_txt-3614' | translate}}" | ||
| 161 | + last-text="{{'deviceInfoManage_list_page_line160_txt-4068' | translate}}"> | ||
| 158 | </uib-pagination> | 162 | </uib-pagination> |
| 159 | </div> | 163 | </div> |
| 160 | </div> | 164 | </div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/module.js
| @@ -5,7 +5,8 @@ angular.module('ScheduleApp').factory( | @@ -5,7 +5,8 @@ angular.module('ScheduleApp').factory( | ||
| 5 | [ | 5 | [ |
| 6 | 'DeviceInfoManageService_g', | 6 | 'DeviceInfoManageService_g', |
| 7 | 'UserPrincipal', | 7 | 'UserPrincipal', |
| 8 | - function(service, UserPrincipal) { | 8 | + '$translate', |
| 9 | + function(service, UserPrincipal, translate) { | ||
| 9 | /** 当前的查询条件信息 */ | 10 | /** 当前的查询条件信息 */ |
| 10 | var currentSearchCondition = {'isCancel_eq': false}; | 11 | var currentSearchCondition = {'isCancel_eq': false}; |
| 11 | 12 | ||
| @@ -22,11 +23,11 @@ angular.module('ScheduleApp').factory( | @@ -22,11 +23,11 @@ angular.module('ScheduleApp').factory( | ||
| 22 | 23 | ||
| 23 | // 字段描述 | 24 | // 字段描述 |
| 24 | var columns = [ | 25 | var columns = [ |
| 25 | - {name: "xl", desc: i18n('txt-3347')}, | ||
| 26 | - {name: "clZbh", desc: i18n('txt-1476')}, | ||
| 27 | - {name: "qyrq", desc: i18n('txt-3211')}, | ||
| 28 | - {name: "oldDeviceNo", desc: i18n('txt-2185')}, | ||
| 29 | - {name: "newDeviceNo", desc: i18n('txt-3201')} | 26 | + {name: "xl", desc: translate.instant("deviceInfoManage_module_js_line26_txt-3347")}, |
| 27 | + {name: "clZbh", desc: translate.instant("deviceInfoManage_module_js_line27_txt-1476")}, | ||
| 28 | + {name: "qyrq", desc: translate.instant("deviceInfoManage_module_js_line28_txt-3211")}, | ||
| 29 | + {name: "oldDeviceNo", desc: translate.instant("deviceInfoManage_module_js_line29_txt-2185")}, | ||
| 30 | + {name: "newDeviceNo", desc: translate.instant("deviceInfoManage_module_js_line30_txt-3201")} | ||
| 30 | ]; | 31 | ]; |
| 31 | // 排序字段 | 32 | // 排序字段 |
| 32 | var orderColumns = { | 33 | var orderColumns = { |
| @@ -117,7 +118,8 @@ angular.module('ScheduleApp').controller( | @@ -117,7 +118,8 @@ angular.module('ScheduleApp').controller( | ||
| 117 | [ | 118 | [ |
| 118 | 'DeviceInfoManageService', | 119 | 'DeviceInfoManageService', |
| 119 | '$uibModal', | 120 | '$uibModal', |
| 120 | - function(service, $uibModal) { | 121 | + '$translate', |
| 122 | + function(service, $uibModal, translate) { | ||
| 121 | var self = this; | 123 | var self = this; |
| 122 | var CarDevice = service.getQueryClass(); | 124 | var CarDevice = service.getQueryClass(); |
| 123 | 125 | ||
| @@ -143,7 +145,7 @@ angular.module('ScheduleApp').controller( | @@ -143,7 +145,7 @@ angular.module('ScheduleApp').controller( | ||
| 143 | self.toggleCarDevice = function(id) { | 145 | self.toggleCarDevice = function(id) { |
| 144 | CarDevice.delete({id: id}, function(result) { | 146 | CarDevice.delete({id: id}, function(result) { |
| 145 | if (result.msg) { // 暂时这样做,之后全局拦截 | 147 | if (result.msg) { // 暂时这样做,之后全局拦截 |
| 146 | - alert(i18n('txt-3729') + result.msg); | 148 | + alert(translate.instant("deviceInfoManage_module_js_line148_txt-3729") + result.msg); |
| 147 | } else { | 149 | } else { |
| 148 | self.doPage(); | 150 | self.doPage(); |
| 149 | } | 151 | } |
| @@ -252,7 +254,8 @@ angular.module('ScheduleApp').controller( | @@ -252,7 +254,8 @@ angular.module('ScheduleApp').controller( | ||
| 252 | [ | 254 | [ |
| 253 | 'DeviceInfoManageService', | 255 | 'DeviceInfoManageService', |
| 254 | '$stateParams', | 256 | '$stateParams', |
| 255 | - function(service, $stateParams) { | 257 | + '$translate', |
| 258 | + function(service, $stateParams, translate) { | ||
| 256 | var self = this; | 259 | var self = this; |
| 257 | var CarDevice = service.getQueryClass(); | 260 | var CarDevice = service.getQueryClass(); |
| 258 | var id = $stateParams.id; | 261 | var id = $stateParams.id; |
| @@ -263,9 +266,9 @@ angular.module('ScheduleApp').controller( | @@ -263,9 +266,9 @@ angular.module('ScheduleApp').controller( | ||
| 263 | // 当转向到此页面时,就获取明细信息并绑定 | 266 | // 当转向到此页面时,就获取明细信息并绑定 |
| 264 | CarDevice.get({id: id}, function(value) { | 267 | CarDevice.get({id: id}, function(value) { |
| 265 | self.deviceInfoForDetail = value; | 268 | self.deviceInfoForDetail = value; |
| 266 | - self.title = i18n('txt-3243',[self.deviceInfoForDetail.clZbh]); | 269 | + self.title = translate.instant("deviceInfoManage_module_js_line269_txt-3243", {clZbh: self.deviceInfoForDetail.clZbh}); |
| 267 | }); | 270 | }); |
| 268 | 271 | ||
| 269 | } | 272 | } |
| 270 | ] | 273 | ] |
| 271 | -); | ||
| 272 | \ No newline at end of file | 274 | \ No newline at end of file |
| 275 | +); |
src/main/resources/static/pages/scheduleApp/module/basicInfo/deviceInfoManage/orderOptionOpen.html
| @@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
| 2 | <div class="modal-title"> | 2 | <div class="modal-title"> |
| 3 | <h3> | 3 | <h3> |
| 4 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> | 4 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> |
| 5 | - <span class="caption-subject bold uppercase">$$$$$${txt-1682}</span> | 5 | + <span class="caption-subject bold uppercase">{{"deviceInfoManage_orderOptionOpen_page_line5_txt-1682" | translate}}</span> |
| 6 | </h3> | 6 | </h3> |
| 7 | </div> | 7 | </div> |
| 8 | </div> | 8 | </div> |
| @@ -14,5 +14,5 @@ | @@ -14,5 +14,5 @@ | ||
| 14 | </sa-Orderoption> | 14 | </sa-Orderoption> |
| 15 | </div> | 15 | </div> |
| 16 | <div class="modal-footer"> | 16 | <div class="modal-footer"> |
| 17 | - <button class="btn btn-primary" ng-click="$ctrl.confirm($ctrl.orderColumns)">$$$$$${txt-4018}</button> | ||
| 18 | -</div> | ||
| 19 | \ No newline at end of file | 17 | \ No newline at end of file |
| 18 | + <button class="btn btn-primary" ng-click="$ctrl.confirm($ctrl.orderColumns)">{{"deviceInfoManage_orderOptionOpen_page_line17_txt-4018" | translate}}</button> | ||
| 19 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/detail.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-1650}</h1> | 3 | + <h1>{{"employeeInfoManage_detail_page_line3_txt-1650" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"employeeInfoManage_detail_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"employeeInfoManage_detail_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="employeeInfoManage">$$$$$${txt-1658}</a> | 17 | + <a ui-sref="employeeInfoManage">{{"employeeInfoManage_detail_page_line17_txt-1658" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-1650}</span> | 21 | + <span class="active">{{"employeeInfoManage_detail_page_line21_txt-1650" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -35,58 +35,58 @@ | @@ -35,58 +35,58 @@ | ||
| 35 | <form class="form-horizontal" novalidate name="myForm"> | 35 | <form class="form-horizontal" novalidate name="myForm"> |
| 36 | <div class="form-body"> | 36 | <div class="form-body"> |
| 37 | <div class="form-group has-success has-feedback"> | 37 | <div class="form-group has-success has-feedback"> |
| 38 | - <label class="col-md-2 control-label">$$$$$${txt-2686}*:</label> | 38 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line38_txt-2686" | translate}}*:</label> |
| 39 | <div class="col-md-3"> | 39 | <div class="col-md-3"> |
| 40 | <input type="text" class="form-control" name="company" | 40 | <input type="text" class="form-control" name="company" |
| 41 | ng-model="ctrl.employeeInfoForDetail.company" readonly/> | 41 | ng-model="ctrl.employeeInfoForDetail.company" readonly/> |
| 42 | </div> | 42 | </div> |
| 43 | </div> | 43 | </div> |
| 44 | <div class="form-group"> | 44 | <div class="form-group"> |
| 45 | - <label class="col-md-2 control-label">$$$$$${txt-1765}</label> | 45 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line45_txt-1765" | translate}}</label> |
| 46 | <div class="col-md-3"> | 46 | <div class="col-md-3"> |
| 47 | <input type="text" class="form-control" name="brancheCompany" | 47 | <input type="text" class="form-control" name="brancheCompany" |
| 48 | ng-model="ctrl.employeeInfoForDetail.brancheCompany" readonly/> | 48 | ng-model="ctrl.employeeInfoForDetail.brancheCompany" readonly/> |
| 49 | </div> | 49 | </div> |
| 50 | </div> | 50 | </div> |
| 51 | <div class="form-group has-success has-feedback"> | 51 | <div class="form-group has-success has-feedback"> |
| 52 | - <label class="col-md-2 control-label">$$$$$${txt-3955}*:</label> | 52 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line52_txt-3955" | translate}}*:</label> |
| 53 | <div class="col-md-3"> | 53 | <div class="col-md-3"> |
| 54 | <input type="text" class="form-control" name="jobCode" | 54 | <input type="text" class="form-control" name="jobCode" |
| 55 | ng-model="ctrl.employeeInfoForDetail.jobCode" readonly/> | 55 | ng-model="ctrl.employeeInfoForDetail.jobCode" readonly/> |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | <div class="form-group has-success has-feedback"> | 58 | <div class="form-group has-success has-feedback"> |
| 59 | - <label class="col-md-2 control-label">$$$$$${txt-3949}*:</label> | 59 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line59_txt-3949" | translate}}*:</label> |
| 60 | <div class="col-md-3"> | 60 | <div class="col-md-3"> |
| 61 | <input type="text" class="form-control" name="personnelName" | 61 | <input type="text" class="form-control" name="personnelName" |
| 62 | ng-model="ctrl.employeeInfoForDetail.personnelName" readonly/> | 62 | ng-model="ctrl.employeeInfoForDetail.personnelName" readonly/> |
| 63 | </div> | 63 | </div> |
| 64 | </div> | 64 | </div> |
| 65 | <div class="form-group"> | 65 | <div class="form-group"> |
| 66 | - <label class="col-md-2 control-label">$$$$$${txt-902}</label> | 66 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line66_txt-902" | translate}}</label> |
| 67 | <div class="col-md-4"> | 67 | <div class="col-md-4"> |
| 68 | <input type="text" class="form-control" name="papersCode" | 68 | <input type="text" class="form-control" name="papersCode" |
| 69 | ng-model="ctrl.employeeInfoForDetail.papersCode" readonly/> | 69 | ng-model="ctrl.employeeInfoForDetail.papersCode" readonly/> |
| 70 | </div> | 70 | </div> |
| 71 | </div> | 71 | </div> |
| 72 | <div class="form-group"> | 72 | <div class="form-group"> |
| 73 | - <label class="col-md-2 control-label">$$$$$${txt-903}</label> | 73 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line73_txt-903" | translate}}</label> |
| 74 | <div class="col-md-4"> | 74 | <div class="col-md-4"> |
| 75 | <input type="text" class="form-control" name="icCardCode" | 75 | <input type="text" class="form-control" name="icCardCode" |
| 76 | ng-model="ctrl.employeeInfoForDetail.icCardCode" readonly/> | 76 | ng-model="ctrl.employeeInfoForDetail.icCardCode" readonly/> |
| 77 | </div> | 77 | </div> |
| 78 | </div> | 78 | </div> |
| 79 | <div class="form-group"> | 79 | <div class="form-group"> |
| 80 | - <label class="col-md-2 control-label">$$$$$${txt-3698}</label> | 80 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line80_txt-3698" | translate}}</label> |
| 81 | <div class="col-md-4"> | 81 | <div class="col-md-4"> |
| 82 | <sa-Radiogroup model="ctrl.employeeInfoForDetail.personnelType" disabled="true" dicgroup="sexType" name="personnelType"></sa-Radiogroup> | 82 | <sa-Radiogroup model="ctrl.employeeInfoForDetail.personnelType" disabled="true" dicgroup="sexType" name="personnelType"></sa-Radiogroup> |
| 83 | </div> | 83 | </div> |
| 84 | </div> | 84 | </div> |
| 85 | <div class="form-group"> | 85 | <div class="form-group"> |
| 86 | - <label class="col-md-2 control-label">$$$$$${txt-3703}</label> | 86 | + <label class="col-md-2 control-label">{{"employeeInfoManage_detail_page_line86_txt-3703" | translate}}</label> |
| 87 | <div class="col-md-4"> | 87 | <div class="col-md-4"> |
| 88 | <input type="text" class="form-control" name="posts" | 88 | <input type="text" class="form-control" name="posts" |
| 89 | - ng-value="ctrl.employeeInfoForDetail.posts | dict:'gzType':'$$$$$${txt-4058}'" readonly/> | 89 | + ng-value="ctrl.employeeInfoForDetail.posts | dict:'gzType':('employeeInfoManage_detail_page_line89_txt-4058' | translate)" readonly/> |
| 90 | </div> | 90 | </div> |
| 91 | </div> | 91 | </div> |
| 92 | 92 | ||
| @@ -96,4 +96,4 @@ | @@ -96,4 +96,4 @@ | ||
| 96 | </form> | 96 | </form> |
| 97 | </div> | 97 | </div> |
| 98 | 98 | ||
| 99 | -</div> | ||
| 100 | \ No newline at end of file | 99 | \ No newline at end of file |
| 100 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/edit.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-1643}</h1> | 3 | + <h1>{{"employeeInfoManage_edit_page_line3_txt-1643" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"employeeInfoManage_edit_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"employeeInfoManage_edit_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="employeeInfoManage">$$$$$${txt-1658}</a> | 17 | + <a ui-sref="employeeInfoManage">{{"employeeInfoManage_edit_page_line17_txt-1658" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-1643}</span> | 21 | + <span class="active">{{"employeeInfoManage_edit_page_line21_txt-1643" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
| 26 | <div class="portlet-title"> | 26 | <div class="portlet-title"> |
| 27 | <div class="caption"> | 27 | <div class="caption"> |
| 28 | <i class="icon-equalizer font-red-sunglo"></i> <span | 28 | <i class="icon-equalizer font-red-sunglo"></i> <span |
| 29 | - class="caption-subject font-red-sunglo bold uppercase">$$$$$${txt-3849}</span> | 29 | + class="caption-subject font-red-sunglo bold uppercase">{{"employeeInfoManage_edit_page_line29_txt-3849" | translate}}</span> |
| 30 | </div> | 30 | </div> |
| 31 | </div> | 31 | </div> |
| 32 | 32 | ||
| @@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
| 34 | <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> | 34 | <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> |
| 35 | <div class="form-body"> | 35 | <div class="form-body"> |
| 36 | <div class="form-group has-success has-feedback"> | 36 | <div class="form-group has-success has-feedback"> |
| 37 | - <label class="col-md-2 control-label">$$$$$${txt-2686}*:</label> | 37 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line37_txt-2686" | translate}}*:</label> |
| 38 | <div class="col-md-3"> | 38 | <div class="col-md-3"> |
| 39 | <sa-Select5 name="gs" | 39 | <sa-Select5 name="gs" |
| 40 | model="ctrl.employeeInfoForSave" | 40 | model="ctrl.employeeInfoForSave" |
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" | 44 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" |
| 45 | iterobjname="item" | 45 | iterobjname="item" |
| 46 | iterobjexp="item.businessName" | 46 | iterobjexp="item.businessName" |
| 47 | - searchph="$$$$$${txt-973}" | 47 | + searchph="{{'employeeInfoManage_edit_page_line47_txt-973' | translate}}" |
| 48 | searchexp="this.businessName" | 48 | searchexp="this.businessName" |
| 49 | required | 49 | required |
| 50 | > | 50 | > |
| @@ -52,12 +52,12 @@ | @@ -52,12 +52,12 @@ | ||
| 52 | </div> | 52 | </div> |
| 53 | <!-- 隐藏块,显示验证信息 --> | 53 | <!-- 隐藏块,显示验证信息 --> |
| 54 | <div class="alert alert-danger well-sm" ng-show="myForm.gs.$error.required"> | 54 | <div class="alert alert-danger well-sm" ng-show="myForm.gs.$error.required"> |
| 55 | - $$$$$${txt-1792} | 55 | + {{"employeeInfoManage_edit_page_line55_txt-1792" | translate}} |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | 58 | ||
| 59 | <div class="form-group has-success has-feedback"> | 59 | <div class="form-group has-success has-feedback"> |
| 60 | - <label class="col-md-2 control-label">$$$$$${txt-3777}*:</label> | 60 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line60_txt-3777" | translate}}*:</label> |
| 61 | <div class="col-md-3"> | 61 | <div class="col-md-3"> |
| 62 | <sa-Select5 name="fgs" | 62 | <sa-Select5 name="fgs" |
| 63 | model="ctrl.employeeInfoForSave" | 63 | model="ctrl.employeeInfoForSave" |
| @@ -67,33 +67,32 @@ | @@ -67,33 +67,32 @@ | ||
| 67 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}" | 67 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}" |
| 68 | iterobjname="item" | 68 | iterobjname="item" |
| 69 | iterobjexp="item.businessName" | 69 | iterobjexp="item.businessName" |
| 70 | - searchph="$$$$$${txt-973}" | 70 | + searchph="{{'employeeInfoManage_edit_page_line70_txt-973' | translate}}" |
| 71 | searchexp="this.businessName" | 71 | searchexp="this.businessName" |
| 72 | required | 72 | required |
| 73 | > | 73 | > |
| 74 | </sa-Select5> | 74 | </sa-Select5> |
| 75 | 75 | ||
| 76 | </div> | 76 | </div> |
| 77 | - | ||
| 78 | <!-- 隐藏块,显示验证信息 --> | 77 | <!-- 隐藏块,显示验证信息 --> |
| 79 | <div class="alert alert-danger well-sm" ng-show="myForm.fgs.$error.required"> | 78 | <div class="alert alert-danger well-sm" ng-show="myForm.fgs.$error.required"> |
| 80 | - $$$$$${txt-923} | 79 | + {{"employeeInfoManage_edit_page_line79_txt-923" | translate}} |
| 81 | </div> | 80 | </div> |
| 82 | </div> | 81 | </div> |
| 83 | 82 | ||
| 84 | <div class="form-group has-success has-feedback"> | 83 | <div class="form-group has-success has-feedback"> |
| 85 | - <label class="col-md-2 control-label">$$$$$${txt-3940}*:</label> | 84 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line84_txt-3940" | translate}}*:</label> |
| 86 | <div class="col-md-3"> | 85 | <div class="col-md-3"> |
| 87 | <input type="text" class="form-control" | 86 | <input type="text" class="form-control" |
| 88 | name="jobCode" ng-model="ctrl.employeeInfoForSave.jobCodeori" | 87 | name="jobCode" ng-model="ctrl.employeeInfoForSave.jobCodeori" |
| 89 | - required placeholder="$$$$$${txt-2346}" | 88 | + required placeholder="{{'employeeInfoManage_edit_page_line88_txt-2346' | translate}}" |
| 90 | remote-Validation | 89 | remote-Validation |
| 91 | remotevtype="ee_gh" | 90 | remotevtype="ee_gh" |
| 92 | remotevparam="{{ {'id_eq': ctrl.employeeInfoForSave.id, 'companyCode_eq' : ctrl.employeeInfoForSave.companyCode, 'jobCode_eq': ctrl.employeeInfoForSave.jobCode} | json}}"/> | 91 | remotevparam="{{ {'id_eq': ctrl.employeeInfoForSave.id, 'companyCode_eq' : ctrl.employeeInfoForSave.companyCode, 'jobCode_eq': ctrl.employeeInfoForSave.jobCode} | json}}"/> |
| 93 | </div> | 92 | </div> |
| 94 | <!-- 隐藏块,显示验证信息 --> | 93 | <!-- 隐藏块,显示验证信息 --> |
| 95 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.required"> | 94 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.required"> |
| 96 | - $$$$$${txt-1793} | 95 | + {{"employeeInfoManage_edit_page_line95_txt-1793" | translate}} |
| 97 | </div> | 96 | </div> |
| 98 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.remote"> | 97 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.remote"> |
| 99 | {{$remote_msg}} | 98 | {{$remote_msg}} |
| @@ -101,43 +100,43 @@ | @@ -101,43 +100,43 @@ | ||
| 101 | </div> | 100 | </div> |
| 102 | 101 | ||
| 103 | <div class="form-group has-success has-feedback"> | 102 | <div class="form-group has-success has-feedback"> |
| 104 | - <label class="col-md-2 control-label">$$$$$${txt-3949}*:</label> | 103 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line103_txt-3949" | translate}}*:</label> |
| 105 | <div class="col-md-3"> | 104 | <div class="col-md-3"> |
| 106 | <input type="text" class="form-control" | 105 | <input type="text" class="form-control" |
| 107 | name="personnelName" ng-model="ctrl.employeeInfoForSave.personnelName" | 106 | name="personnelName" ng-model="ctrl.employeeInfoForSave.personnelName" |
| 108 | - required placeholder="$$$$$${txt-2345}"/> | 107 | + required placeholder="{{'employeeInfoManage_edit_page_line107_txt-2345' | translate}}"/> |
| 109 | </div> | 108 | </div> |
| 110 | <!-- 隐藏块,显示验证信息 --> | 109 | <!-- 隐藏块,显示验证信息 --> |
| 111 | <div class="alert alert-danger well-sm" ng-show="myForm.personnelName.$error.required"> | 110 | <div class="alert alert-danger well-sm" ng-show="myForm.personnelName.$error.required"> |
| 112 | - $$$$$${txt-1787} | 111 | + {{"employeeInfoManage_edit_page_line111_txt-1787" | translate}} |
| 113 | </div> | 112 | </div> |
| 114 | </div> | 113 | </div> |
| 115 | 114 | ||
| 116 | <div class="form-group"> | 115 | <div class="form-group"> |
| 117 | - <label class="col-md-2 control-label">$$$$$${txt-902}</label> | 116 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line116_txt-902" | translate}}</label> |
| 118 | <div class="col-md-4"> | 117 | <div class="col-md-4"> |
| 119 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.papersCode" | 118 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.papersCode" |
| 120 | - placeholder="$$$$$${txt-516}"/> | 119 | + placeholder="{{'employeeInfoManage_edit_page_line119_txt-516' | translate}}"/> |
| 121 | </div> | 120 | </div> |
| 122 | </div> | 121 | </div> |
| 123 | 122 | ||
| 124 | <div class="form-group"> | 123 | <div class="form-group"> |
| 125 | - <label class="col-md-2 control-label">$$$$$${txt-2244}</label> | 124 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line124_txt-2244" | translate}}</label> |
| 126 | <div class="col-md-4"> | 125 | <div class="col-md-4"> |
| 127 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.icCardCode" | 126 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.icCardCode" |
| 128 | - placeholder="$$$$$${txt-517}"/> | 127 | + placeholder="{{'employeeInfoManage_edit_page_line127_txt-517' | translate}}"/> |
| 129 | </div> | 128 | </div> |
| 130 | </div> | 129 | </div> |
| 131 | 130 | ||
| 132 | <div class="form-group"> | 131 | <div class="form-group"> |
| 133 | - <label class="col-md-2 control-label">$$$$$${txt-3698}</label> | 132 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line132_txt-3698" | translate}}</label> |
| 134 | <div class="col-md-4"> | 133 | <div class="col-md-4"> |
| 135 | <sa-Radiogroup model="ctrl.employeeInfoForSave.personnelType" dicgroup="sexType" name="personnelType"></sa-Radiogroup> | 134 | <sa-Radiogroup model="ctrl.employeeInfoForSave.personnelType" dicgroup="sexType" name="personnelType"></sa-Radiogroup> |
| 136 | </div> | 135 | </div> |
| 137 | </div> | 136 | </div> |
| 138 | 137 | ||
| 139 | <div class="form-group"> | 138 | <div class="form-group"> |
| 140 | - <label class="col-md-2 control-label">$$$$$${txt-3703}</label> | 139 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line139_txt-3703" | translate}}</label> |
| 141 | <div class="col-md-4"> | 140 | <div class="col-md-4"> |
| 142 | <sa-Select5 name="posts" | 141 | <sa-Select5 name="posts" |
| 143 | model="ctrl.employeeInfoForSave" | 142 | model="ctrl.employeeInfoForSave" |
| @@ -147,7 +146,7 @@ | @@ -147,7 +146,7 @@ | ||
| 147 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" | 146 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" |
| 148 | iterobjname="item" | 147 | iterobjname="item" |
| 149 | iterobjexp="item.name" | 148 | iterobjexp="item.name" |
| 150 | - searchph="$$$$$${txt-3364}" | 149 | + searchph="{{'employeeInfoManage_edit_page_line149_txt-3364' | translate}}" |
| 151 | searchexp="this.name" | 150 | searchexp="this.name" |
| 152 | > | 151 | > |
| 153 | </sa-Select5> | 152 | </sa-Select5> |
| @@ -155,7 +154,7 @@ | @@ -155,7 +154,7 @@ | ||
| 155 | </div> | 154 | </div> |
| 156 | 155 | ||
| 157 | <div class="form-group"> | 156 | <div class="form-group"> |
| 158 | - <label class="col-md-2 control-label">$$$$$${txt-3449}</label> | 157 | + <label class="col-md-2 control-label">{{"employeeInfoManage_edit_page_line157_txt-3449" | translate}}</label> |
| 159 | <div class="col-md-3"> | 158 | <div class="col-md-3"> |
| 160 | <textarea class="form-control" | 159 | <textarea class="form-control" |
| 161 | ng-model="ctrl.employeeInfoForSave.remark" | 160 | ng-model="ctrl.employeeInfoForSave.remark" |
| @@ -172,8 +171,8 @@ | @@ -172,8 +171,8 @@ | ||
| 172 | <div class="form-actions"> | 171 | <div class="form-actions"> |
| 173 | <div class="row"> | 172 | <div class="row"> |
| 174 | <div class="col-md-offset-3 col-md-4"> | 173 | <div class="col-md-offset-3 col-md-4"> |
| 175 | - <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | ||
| 176 | - <a type="button" class="btn default" ui-sref="employeeInfoManage" ><i class="fa fa-times"></i> $$$$$${txt-3817}</a> | 174 | + <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> {{"employeeInfoManage_edit_page_line174_txt-4173" | translate}}</button> |
| 175 | + <a type="button" class="btn default" ui-sref="employeeInfoManage" ><i class="fa fa-times"></i> {{"employeeInfoManage_edit_page_line175_txt-3817" | translate}}</a> | ||
| 177 | </div> | 176 | </div> |
| 178 | </div> | 177 | </div> |
| 179 | </div> | 178 | </div> |
| @@ -181,4 +180,4 @@ | @@ -181,4 +180,4 @@ | ||
| 181 | </form> | 180 | </form> |
| 182 | </div> | 181 | </div> |
| 183 | 182 | ||
| 184 | -</div> | ||
| 185 | \ No newline at end of file | 183 | \ No newline at end of file |
| 184 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/form.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-1648}</h1> | 3 | + <h1>{{"employeeInfoManage_form_page_line3_txt-1648" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"employeeInfoManage_form_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"employeeInfoManage_form_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <a ui-sref="employeeInfoManage">$$$$$${txt-1658}</a> | 17 | + <a ui-sref="employeeInfoManage">{{"employeeInfoManage_form_page_line17_txt-1658" | translate}}</a> |
| 18 | <i class="fa fa-circle"></i> | 18 | <i class="fa fa-circle"></i> |
| 19 | </li> | 19 | </li> |
| 20 | <li> | 20 | <li> |
| 21 | - <span class="active">$$$$$${txt-1648}</span> | 21 | + <span class="active">{{"employeeInfoManage_form_page_line21_txt-1648" | translate}}</span> |
| 22 | </li> | 22 | </li> |
| 23 | </ul> | 23 | </ul> |
| 24 | 24 | ||
| @@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
| 26 | <div class="portlet-title"> | 26 | <div class="portlet-title"> |
| 27 | <div class="caption"> | 27 | <div class="caption"> |
| 28 | <i class="icon-equalizer font-red-sunglo"></i> <span | 28 | <i class="icon-equalizer font-red-sunglo"></i> <span |
| 29 | - class="caption-subject font-red-sunglo bold uppercase">$$$$$${txt-3849}</span> | 29 | + class="caption-subject font-red-sunglo bold uppercase">{{"employeeInfoManage_form_page_line29_txt-3849" | translate}}</span> |
| 30 | </div> | 30 | </div> |
| 31 | </div> | 31 | </div> |
| 32 | 32 | ||
| @@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
| 34 | <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> | 34 | <form ng-submit="ctrl.submit()" class="form-horizontal" novalidate name="myForm"> |
| 35 | <div class="form-body"> | 35 | <div class="form-body"> |
| 36 | <div class="form-group has-success has-feedback"> | 36 | <div class="form-group has-success has-feedback"> |
| 37 | - <label class="col-md-2 control-label">$$$$$${txt-2686}*:</label> | 37 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line37_txt-2686" | translate}}*:</label> |
| 38 | <div class="col-md-3"> | 38 | <div class="col-md-3"> |
| 39 | <sa-Select5 name="gs" | 39 | <sa-Select5 name="gs" |
| 40 | model="ctrl.employeeInfoForSave" | 40 | model="ctrl.employeeInfoForSave" |
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" | 44 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" |
| 45 | iterobjname="item" | 45 | iterobjname="item" |
| 46 | iterobjexp="item.businessName" | 46 | iterobjexp="item.businessName" |
| 47 | - searchph="$$$$$${txt-973}" | 47 | + searchph="{{'employeeInfoManage_form_page_line47_txt-973' | translate}}" |
| 48 | searchexp="this.businessName" | 48 | searchexp="this.businessName" |
| 49 | required | 49 | required |
| 50 | > | 50 | > |
| @@ -52,12 +52,12 @@ | @@ -52,12 +52,12 @@ | ||
| 52 | </div> | 52 | </div> |
| 53 | <!-- 隐藏块,显示验证信息 --> | 53 | <!-- 隐藏块,显示验证信息 --> |
| 54 | <div class="alert alert-danger well-sm" ng-show="myForm.gs.$error.required"> | 54 | <div class="alert alert-danger well-sm" ng-show="myForm.gs.$error.required"> |
| 55 | - $$$$$${txt-1792} | 55 | + {{"employeeInfoManage_form_page_line55_txt-1792" | translate}} |
| 56 | </div> | 56 | </div> |
| 57 | </div> | 57 | </div> |
| 58 | 58 | ||
| 59 | <div class="form-group has-success has-feedback"> | 59 | <div class="form-group has-success has-feedback"> |
| 60 | - <label class="col-md-2 control-label">$$$$$${txt-3777}*:</label> | 60 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line60_txt-3777" | translate}}*:</label> |
| 61 | <div class="col-md-3"> | 61 | <div class="col-md-3"> |
| 62 | <sa-Select5 name="fgs" | 62 | <sa-Select5 name="fgs" |
| 63 | model="ctrl.employeeInfoForSave" | 63 | model="ctrl.employeeInfoForSave" |
| @@ -67,7 +67,7 @@ | @@ -67,7 +67,7 @@ | ||
| 67 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}" | 67 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.employeeInfoForSave.companyCode }, atype:'gs' } | json }}" |
| 68 | iterobjname="item" | 68 | iterobjname="item" |
| 69 | iterobjexp="item.businessName" | 69 | iterobjexp="item.businessName" |
| 70 | - searchph="$$$$$${txt-973}" | 70 | + searchph="{{'employeeInfoManage_form_page_line70_txt-973' | translate}}" |
| 71 | searchexp="this.businessName" | 71 | searchexp="this.businessName" |
| 72 | required | 72 | required |
| 73 | > | 73 | > |
| @@ -76,23 +76,23 @@ | @@ -76,23 +76,23 @@ | ||
| 76 | </div> | 76 | </div> |
| 77 | <!-- 隐藏块,显示验证信息 --> | 77 | <!-- 隐藏块,显示验证信息 --> |
| 78 | <div class="alert alert-danger well-sm" ng-show="myForm.fgs.$error.required"> | 78 | <div class="alert alert-danger well-sm" ng-show="myForm.fgs.$error.required"> |
| 79 | - $$$$$${txt-923} | 79 | + {{"employeeInfoManage_form_page_line79_txt-923" | translate}} |
| 80 | </div> | 80 | </div> |
| 81 | </div> | 81 | </div> |
| 82 | 82 | ||
| 83 | <div class="form-group has-success has-feedback"> | 83 | <div class="form-group has-success has-feedback"> |
| 84 | - <label class="col-md-2 control-label">$$$$$${txt-3940}*:</label> | 84 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line84_txt-3940" | translate}}*:</label> |
| 85 | <div class="col-md-3"> | 85 | <div class="col-md-3"> |
| 86 | <input type="text" class="form-control" | 86 | <input type="text" class="form-control" |
| 87 | name="jobCode" ng-model="ctrl.employeeInfoForSave.jobCodeori" | 87 | name="jobCode" ng-model="ctrl.employeeInfoForSave.jobCodeori" |
| 88 | - required placeholder="$$$$$${txt-2346}" | 88 | + required placeholder="{{'employeeInfoManage_form_page_line88_txt-2346' | translate}}" |
| 89 | remote-Validation | 89 | remote-Validation |
| 90 | remotevtype="ee_gh" | 90 | remotevtype="ee_gh" |
| 91 | remotevparam="{{ {'companyCode_eq' : ctrl.employeeInfoForSave.companyCode, 'jobCode_eq': ctrl.employeeInfoForSave.jobCode} | json}}"/> | 91 | remotevparam="{{ {'companyCode_eq' : ctrl.employeeInfoForSave.companyCode, 'jobCode_eq': ctrl.employeeInfoForSave.jobCode} | json}}"/> |
| 92 | </div> | 92 | </div> |
| 93 | <!-- 隐藏块,显示验证信息 --> | 93 | <!-- 隐藏块,显示验证信息 --> |
| 94 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.required"> | 94 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.required"> |
| 95 | - $$$$$${txt-1793} | 95 | + {{"employeeInfoManage_form_page_line95_txt-1793" | translate}} |
| 96 | </div> | 96 | </div> |
| 97 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.remote"> | 97 | <div class="alert alert-danger well-sm" ng-show="myForm.jobCode.$error.remote"> |
| 98 | {{$remote_msg}} | 98 | {{$remote_msg}} |
| @@ -100,43 +100,43 @@ | @@ -100,43 +100,43 @@ | ||
| 100 | </div> | 100 | </div> |
| 101 | 101 | ||
| 102 | <div class="form-group has-success has-feedback"> | 102 | <div class="form-group has-success has-feedback"> |
| 103 | - <label class="col-md-2 control-label">$$$$$${txt-3949}*:</label> | 103 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line103_txt-3949" | translate}}*:</label> |
| 104 | <div class="col-md-3"> | 104 | <div class="col-md-3"> |
| 105 | <input type="text" class="form-control" | 105 | <input type="text" class="form-control" |
| 106 | name="personnelName" ng-model="ctrl.employeeInfoForSave.personnelName" | 106 | name="personnelName" ng-model="ctrl.employeeInfoForSave.personnelName" |
| 107 | - required placeholder="$$$$$${txt-2345}"/> | 107 | + required placeholder="{{'employeeInfoManage_form_page_line107_txt-2345' | translate}}"/> |
| 108 | </div> | 108 | </div> |
| 109 | <!-- 隐藏块,显示验证信息 --> | 109 | <!-- 隐藏块,显示验证信息 --> |
| 110 | <div class="alert alert-danger well-sm" ng-show="myForm.personnelName.$error.required"> | 110 | <div class="alert alert-danger well-sm" ng-show="myForm.personnelName.$error.required"> |
| 111 | - $$$$$${txt-1787} | 111 | + {{"employeeInfoManage_form_page_line111_txt-1787" | translate}} |
| 112 | </div> | 112 | </div> |
| 113 | </div> | 113 | </div> |
| 114 | 114 | ||
| 115 | <div class="form-group"> | 115 | <div class="form-group"> |
| 116 | - <label class="col-md-2 control-label">$$$$$${txt-902}</label> | 116 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line116_txt-902" | translate}}</label> |
| 117 | <div class="col-md-4"> | 117 | <div class="col-md-4"> |
| 118 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.papersCode" | 118 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.papersCode" |
| 119 | - placeholder="$$$$$${txt-516}"/> | 119 | + placeholder="{{'employeeInfoManage_form_page_line119_txt-516' | translate}}"/> |
| 120 | </div> | 120 | </div> |
| 121 | </div> | 121 | </div> |
| 122 | 122 | ||
| 123 | <div class="form-group"> | 123 | <div class="form-group"> |
| 124 | - <label class="col-md-2 control-label">$$$$$${txt-2244}</label> | 124 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line124_txt-2244" | translate}}</label> |
| 125 | <div class="col-md-4"> | 125 | <div class="col-md-4"> |
| 126 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.icCardCode" | 126 | <input type="text" class="form-control" ng-model="ctrl.employeeInfoForSave.icCardCode" |
| 127 | - placeholder="$$$$$${txt-517}"/> | 127 | + placeholder="{{'employeeInfoManage_form_page_line127_txt-517' | translate}}"/> |
| 128 | </div> | 128 | </div> |
| 129 | </div> | 129 | </div> |
| 130 | 130 | ||
| 131 | <div class="form-group"> | 131 | <div class="form-group"> |
| 132 | - <label class="col-md-2 control-label">$$$$$${txt-3698}</label> | 132 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line132_txt-3698" | translate}}</label> |
| 133 | <div class="col-md-4"> | 133 | <div class="col-md-4"> |
| 134 | <sa-Radiogroup model="ctrl.employeeInfoForSave.personnelType" dicgroup="sexType" name="personnelType"></sa-Radiogroup> | 134 | <sa-Radiogroup model="ctrl.employeeInfoForSave.personnelType" dicgroup="sexType" name="personnelType"></sa-Radiogroup> |
| 135 | </div> | 135 | </div> |
| 136 | </div> | 136 | </div> |
| 137 | 137 | ||
| 138 | <div class="form-group"> | 138 | <div class="form-group"> |
| 139 | - <label class="col-md-2 control-label">$$$$$${txt-3703}</label> | 139 | + <label class="col-md-2 control-label">{{"employeeInfoManage_form_page_line139_txt-3703" | translate}}</label> |
| 140 | <div class="col-md-4"> | 140 | <div class="col-md-4"> |
| 141 | <sa-Select5 name="posts" | 141 | <sa-Select5 name="posts" |
| 142 | model="ctrl.employeeInfoForSave" | 142 | model="ctrl.employeeInfoForSave" |
| @@ -146,7 +146,7 @@ | @@ -146,7 +146,7 @@ | ||
| 146 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" | 146 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" |
| 147 | iterobjname="item" | 147 | iterobjname="item" |
| 148 | iterobjexp="item.name" | 148 | iterobjexp="item.name" |
| 149 | - searchph="$$$$$${txt-3364}" | 149 | + searchph="{{'employeeInfoManage_form_page_line149_txt-3364' | translate}}" |
| 150 | searchexp="this.name" | 150 | searchexp="this.name" |
| 151 | > | 151 | > |
| 152 | </sa-Select5> | 152 | </sa-Select5> |
| @@ -154,7 +154,7 @@ | @@ -154,7 +154,7 @@ | ||
| 154 | </div> | 154 | </div> |
| 155 | 155 | ||
| 156 | <div class="form-group"> | 156 | <div class="form-group"> |
| 157 | - <label class="col-md-2 control-label">$$$$$${txt-3449}</label> | 157 | + <label class="col-md-2 control-label">{{'employeeInfoManage_form_page_line157_txt-3449' | translate}}</label> |
| 158 | <div class="col-md-3"> | 158 | <div class="col-md-3"> |
| 159 | <textarea class="form-control" | 159 | <textarea class="form-control" |
| 160 | ng-model="ctrl.employeeInfoForSave.remark" | 160 | ng-model="ctrl.employeeInfoForSave.remark" |
| @@ -171,8 +171,8 @@ | @@ -171,8 +171,8 @@ | ||
| 171 | <div class="form-actions"> | 171 | <div class="form-actions"> |
| 172 | <div class="row"> | 172 | <div class="row"> |
| 173 | <div class="col-md-offset-3 col-md-4"> | 173 | <div class="col-md-offset-3 col-md-4"> |
| 174 | - <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> 提交</button> | ||
| 175 | - <a type="button" class="btn default" ui-sref="employeeInfoManage" ><i class="fa fa-times"></i> $$$$$${txt-3817}</a> | 174 | + <button type="submit" class="btn green" ng-disabled="!myForm.$valid"><i class="fa fa-check"></i> {{"employeeInfoManage_form_page_line174_txt-4173" | translate}}</button> |
| 175 | + <a type="button" class="btn default" ui-sref="employeeInfoManage" ><i class="fa fa-times"></i> {{"employeeInfoManage_form_page_line175_txt-3817" | translate}}</a> | ||
| 176 | </div> | 176 | </div> |
| 177 | </div> | 177 | </div> |
| 178 | </div> | 178 | </div> |
| @@ -180,4 +180,4 @@ | @@ -180,4 +180,4 @@ | ||
| 180 | </form> | 180 | </form> |
| 181 | </div> | 181 | </div> |
| 182 | 182 | ||
| 183 | -</div> | ||
| 184 | \ No newline at end of file | 183 | \ No newline at end of file |
| 184 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/index.html
| 1 | <div class="page-head"> | 1 | <div class="page-head"> |
| 2 | <div class="page-title"> | 2 | <div class="page-title"> |
| 3 | - <h1>$$$$$${txt-1658}</h1> | 3 | + <h1>{{"employeeInfoManage_index_page_line3_txt-1658" | translate}}</h1> |
| 4 | </div> | 4 | </div> |
| 5 | </div> | 5 | </div> |
| 6 | 6 | ||
| 7 | <ul class="page-breadcrumb breadcrumb"> | 7 | <ul class="page-breadcrumb breadcrumb"> |
| 8 | <li> | 8 | <li> |
| 9 | - <a href="/pages/home.html" data-pjax>$$$$$${txt-3807}</a> | 9 | + <a href="/pages/home.html" data-pjax>{{"employeeInfoManage_index_page_line9_txt-3807" | translate}}</a> |
| 10 | <i class="fa fa-circle"></i> | 10 | <i class="fa fa-circle"></i> |
| 11 | </li> | 11 | </li> |
| 12 | <li> | 12 | <li> |
| 13 | - <span class="active">$$$$$${txt-2398}</span> | 13 | + <span class="active">{{"employeeInfoManage_index_page_line13_txt-2398" | translate}}</span> |
| 14 | <i class="fa fa-circle"></i> | 14 | <i class="fa fa-circle"></i> |
| 15 | </li> | 15 | </li> |
| 16 | <li> | 16 | <li> |
| 17 | - <span class="active">$$$$$${txt-1658}</span> | 17 | + <span class="active">{{"employeeInfoManage_index_page_line17_txt-1658" | translate}}</span> |
| 18 | </li> | 18 | </li> |
| 19 | </ul> | 19 | </ul> |
| 20 | 20 | ||
| @@ -33,25 +33,25 @@ | @@ -33,25 +33,25 @@ | ||
| 33 | <div class="portlet-title"> | 33 | <div class="portlet-title"> |
| 34 | <div class="caption font-dark"> | 34 | <div class="caption font-dark"> |
| 35 | <i class="fa fa-database font-dark"></i> | 35 | <i class="fa fa-database font-dark"></i> |
| 36 | - <span class="caption-subject bold uppercase">$$$$$${txt-2234}</span> | 36 | + <span class="caption-subject bold uppercase">{{"employeeInfoManage_index_page_line36_txt-2234" | translate}}</span> |
| 37 | </div> | 37 | </div> |
| 38 | <div class="actions"> | 38 | <div class="actions"> |
| 39 | <a href="javascript:" class="btn blue" ng-click="ctrl.goForm()" ng-if="ctrl.userInfo.getRole().indexOf('_ADMIN') > -1"> | 39 | <a href="javascript:" class="btn blue" ng-click="ctrl.goForm()" ng-if="ctrl.userInfo.getRole().indexOf('_ADMIN') > -1"> |
| 40 | <i class="fa fa-plus"></i> | 40 | <i class="fa fa-plus"></i> |
| 41 | - $$$$$${txt-1648}{{}} | 41 | + {{"employeeInfoManage_index_page_line41_txt-1648" | translate}} |
| 42 | </a> | 42 | </a> |
| 43 | 43 | ||
| 44 | <div class="btn-group"> | 44 | <div class="btn-group"> |
| 45 | <a href="javascript:" class="btn red btn-outline" data-toggle="dropdown"> | 45 | <a href="javascript:" class="btn red btn-outline" data-toggle="dropdown"> |
| 46 | <i class="fa fa-share"></i> | 46 | <i class="fa fa-share"></i> |
| 47 | - <span>$$$$$${txt-3339}</span> | 47 | + <span>{{"employeeInfoManage_index_page_line47_txt-3339" | translate}}</span> |
| 48 | <i class="fa fa-angle-down"></i> | 48 | <i class="fa fa-angle-down"></i> |
| 49 | </a> | 49 | </a> |
| 50 | <ul class="dropdown-menu pull-right"> | 50 | <ul class="dropdown-menu pull-right"> |
| 51 | <li> | 51 | <li> |
| 52 | <a href="javascript:" class="tool-action" ng-click="ctrl.exportData()"> | 52 | <a href="javascript:" class="tool-action" ng-click="ctrl.exportData()"> |
| 53 | <i class="fa fa-file-excel-o"></i> | 53 | <i class="fa fa-file-excel-o"></i> |
| 54 | - $$$$$${txt-4493} | 54 | + {{"employeeInfoManage_index_page_line54_txt-4493" | translate}} |
| 55 | </a> | 55 | </a> |
| 56 | </li> | 56 | </li> |
| 57 | <!--<li class="divider"></li>--> | 57 | <!--<li class="divider"></li>--> |
| @@ -71,4 +71,4 @@ | @@ -71,4 +71,4 @@ | ||
| 71 | </div> | 71 | </div> |
| 72 | </div> | 72 | </div> |
| 73 | </div> | 73 | </div> |
| 74 | -</div> | ||
| 75 | \ No newline at end of file | 74 | \ No newline at end of file |
| 75 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/list.html
| @@ -4,32 +4,32 @@ | @@ -4,32 +4,32 @@ | ||
| 4 | <table class="fixTable table table-striped table-bordered table-hover table-checkable order-column"> | 4 | <table class="fixTable table table-striped table-bordered table-hover table-checkable order-column"> |
| 5 | <thead> | 5 | <thead> |
| 6 | <tr role="row" class="heading"> | 6 | <tr role="row" class="heading"> |
| 7 | - <th style="width:70px;">$$$$$${txt-3934}</th> | ||
| 8 | - <th style="width: 100px;">$$$$$${txt-3949}</th> | ||
| 9 | - <th style="width: 100px;">$$$$$${txt-3955}</th> | ||
| 10 | - <th style="width: 100px;">$$$$$${txt-3940}</th> | ||
| 11 | - <th style="width: 100px;">$$$$$${txt-3095}</th> | ||
| 12 | - <th style="width: 60px;">$$$$$${txt-4086}</th> | ||
| 13 | - <th style="width: 150px;">$$$$$${txt-3096}</th> | ||
| 14 | - <th >$$$$$${txt-3777}</th> | ||
| 15 | - <th >$$$$$${txt-4093}</th> | ||
| 16 | - <th style="width: 80px;">$$$$$${txt-4085}</th> | ||
| 17 | - <th >$$$$$${txt-3942}</th> | 7 | + <th style="width: 70px; max-width: 70px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line7_txt-3934" | translate}}</th> |
| 8 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line8_txt-3949" | translate}}</th> | ||
| 9 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line9_txt-3955" | translate}}</th> | ||
| 10 | + <th style="width: 100px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line10_txt-3940" | translate}}</th> | ||
| 11 | + <th style="width: 100px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line11_txt-3095" | translate}}</th> | ||
| 12 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line12_txt-4086" | translate}}</th> | ||
| 13 | + <th style="width: 130px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line13_txt-3096" | translate}}</th> | ||
| 14 | + <th style="width: 130px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line14_txt-3777" | translate}}</th> | ||
| 15 | + <th style="width: 130px; white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line15_txt-4093" | translate}}</th> | ||
| 16 | + <th style="white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line16_txt-4085" | translate}}</th> | ||
| 17 | + <th style="width: 230px;white-space: pre-wrap;word-wrap: break-word;text-align: center;vertical-align: middle;">{{"employeeInfoManage_list_page_line17_txt-3942" | translate}}</th> | ||
| 18 | </tr> | 18 | </tr> |
| 19 | <tr role="row" class="filter"> | 19 | <tr role="row" class="filter"> |
| 20 | <td> | 20 | <td> |
| 21 | </td> | 21 | </td> |
| 22 | <td> | 22 | <td> |
| 23 | - <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().personnelName_like" placeholder="$$$$$${txt-3231}"/> | 23 | + <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().personnelName_like" placeholder="{{'employeeInfoManage_list_page_line23_txt-3231' | translate}}"/> |
| 24 | </td> | 24 | </td> |
| 25 | <td> | 25 | <td> |
| 26 | - <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jobCode_like" placeholder="$$$$$${txt-3233}"/> | 26 | + <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jobCode_like" placeholder="{{'employeeInfoManage_list_page_line26_txt-3233' | translate}}"/> |
| 27 | </td> | 27 | </td> |
| 28 | <td> | 28 | <td> |
| 29 | - <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jobCodeori_like" placeholder="$$$$$${txt-3232}"/> | 29 | + <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jobCodeori_like" placeholder="{{'employeeInfoManage_list_page_line29_txt-3232' | translate}}"/> |
| 30 | </td> | 30 | </td> |
| 31 | <td> | 31 | <td> |
| 32 | - <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jdCodeori_like" placeholder="$$$$$${txt-3232}"/> | 32 | + <input type="text" class="form-control input-sm" ng-model="ctrl.searchCondition().jdCodeori_like" placeholder="{{'employeeInfoManage_list_page_line32_txt-3232' | translate}}"/> |
| 33 | </td> | 33 | </td> |
| 34 | <td> | 34 | <td> |
| 35 | </td> | 35 | </td> |
| @@ -42,8 +42,9 @@ | @@ -42,8 +42,9 @@ | ||
| 42 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" | 42 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': '88' }, atype:'gs' } | json }}" |
| 43 | iterobjname="item" | 43 | iterobjname="item" |
| 44 | iterobjexp="item.businessName" | 44 | iterobjexp="item.businessName" |
| 45 | - searchph="$$$$$${txt-3364}" | 45 | + searchph="{{'employeeInfoManage_list_page_line45_txt-3364' | translate}}" |
| 46 | searchexp="this.businessName" | 46 | searchexp="this.businessName" |
| 47 | + width="100" | ||
| 47 | required | 48 | required |
| 48 | > | 49 | > |
| 49 | </sa-Select5> | 50 | </sa-Select5> |
| @@ -57,8 +58,9 @@ | @@ -57,8 +58,9 @@ | ||
| 57 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.searchCondition().companyCode_eq }, atype:'gs' } | json }}" | 58 | dsparams="{{ {type: 'ajax', param:{'upCode_eq': ctrl.searchCondition().companyCode_eq }, atype:'gs' } | json }}" |
| 58 | iterobjname="item" | 59 | iterobjname="item" |
| 59 | iterobjexp="item.businessName" | 60 | iterobjexp="item.businessName" |
| 60 | - searchph="$$$$$${txt-3364}" | 61 | + searchph="{{'employeeInfoManage_list_page_line60_txt-3364' | translate}}" |
| 61 | searchexp="this.businessName" | 62 | searchexp="this.businessName" |
| 63 | + width="100" | ||
| 62 | required | 64 | required |
| 63 | > | 65 | > |
| 64 | </sa-Select5> | 66 | </sa-Select5> |
| @@ -72,21 +74,22 @@ | @@ -72,21 +74,22 @@ | ||
| 72 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" | 74 | dsparams="{{ {type: 'dic', param: 'gzType' } | json }}" |
| 73 | iterobjname="item" | 75 | iterobjname="item" |
| 74 | iterobjexp="item.name" | 76 | iterobjexp="item.name" |
| 75 | - searchph="$$$$$${txt-3364}" | 77 | + searchph="{{'employeeInfoManage_list_page_line75_txt-3364' | translate}}" |
| 78 | + width="100" | ||
| 76 | searchexp="this.name" | 79 | searchexp="this.name" |
| 77 | > | 80 | > |
| 78 | </sa-Select5> | 81 | </sa-Select5> |
| 79 | </td> | 82 | </td> |
| 80 | <td> | 83 | <td> |
| 81 | <label class="checkbox-inline"> | 84 | <label class="checkbox-inline"> |
| 82 | - <input type="checkbox" ng-true-value="1" ng-model="ctrl.searchCondition()['destroy_eq']"/>$$$$$${txt-4085} | 85 | + <input type="checkbox" ng-true-value="1" ng-model="ctrl.searchCondition()['destroy_eq']"/>{{"employeeInfoManage_list_page_line82_txt-4085" | translate}} |
| 83 | </label> | 86 | </label> |
| 84 | </td> | 87 | </td> |
| 85 | <td> | 88 | <td> |
| 86 | <div class="btn-group"> | 89 | <div class="btn-group"> |
| 87 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" style="margin-right: 0;" | 90 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom" style="margin-right: 0;" |
| 88 | ng-click="ctrl.doPage()"> | 91 | ng-click="ctrl.doPage()"> |
| 89 | - <i class="fa fa-search"></i> $$$$$${txt-4001}</button> | 92 | + <i class="fa fa-search"></i> {{"employeeInfoManage_list_page_line89_txt-4001" | translate}}</button> |
| 90 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom dropdown-toggle" | 93 | <button class="btn btn-sm green btn-outline filter-submit margin-bottom dropdown-toggle" |
| 91 | data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> | 94 | data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> |
| 92 | <span class="caret"></span> | 95 | <span class="caret"></span> |
| @@ -96,7 +99,7 @@ | @@ -96,7 +99,7 @@ | ||
| 96 | <li> | 99 | <li> |
| 97 | <a href="javascript:" class="tool-action" ng-click="ctrl.customOrder()"> | 100 | <a href="javascript:" class="tool-action" ng-click="ctrl.customOrder()"> |
| 98 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> | 101 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> |
| 99 | - $$$$$${txt-3385} | 102 | + {{"employeeInfoManage_list_page_line99_txt-3385" | translate}} |
| 100 | </a> | 103 | </a> |
| 101 | </li> | 104 | </li> |
| 102 | </ul> | 105 | </ul> |
| @@ -104,7 +107,7 @@ | @@ -104,7 +107,7 @@ | ||
| 104 | 107 | ||
| 105 | <button class="btn btn-sm red btn-outline filter-cancel" | 108 | <button class="btn btn-sm red btn-outline filter-cancel" |
| 106 | ng-click="ctrl.reset()"> | 109 | ng-click="ctrl.reset()"> |
| 107 | - <i class="fa fa-times"></i> $$$$$${txt-4000}</button> | 110 | + <i class="fa fa-times"></i> {{"employeeInfoManage_list_page_line107_txt-4000" | translate}}</button> |
| 108 | 111 | ||
| 109 | </td> | 112 | </td> |
| 110 | 113 | ||
| @@ -117,7 +120,7 @@ | @@ -117,7 +120,7 @@ | ||
| 117 | <a href="#" | 120 | <a href="#" |
| 118 | tooltip-animation="false" | 121 | tooltip-animation="false" |
| 119 | tooltip-placement="top" | 122 | tooltip-placement="top" |
| 120 | - uib-tooltip="{{'$$$$$${txt-4426}' + info.personnelName + '/' + info.jobCodeori}}" | 123 | + uib-tooltip="{{('employeeInfoManage_list_page_line120_txt-4426' | translate) + info.personnelName + '/' + info.jobCodeori}}" |
| 121 | tooltip-class="headClass"> | 124 | tooltip-class="headClass"> |
| 122 | 125 | ||
| 123 | <i class="fa fa-list-ol" aria-hidden="true"></i> | 126 | <i class="fa fa-list-ol" aria-hidden="true"></i> |
| @@ -139,7 +142,7 @@ | @@ -139,7 +142,7 @@ | ||
| 139 | <span ng-bind="info.jdCodeori"></span> | 142 | <span ng-bind="info.jdCodeori"></span> |
| 140 | </td> | 143 | </td> |
| 141 | <td> | 144 | <td> |
| 142 | - <span ng-bind="info.personnelType | dict:'sexType':'$$$$$${txt-4058}'"></span> | 145 | + <span ng-bind="info.personnelType | dict:'sexType':('employeeInfoManage_list_page_line142_txt-4058' | translate)"></span> |
| 143 | 146 | ||
| 144 | <!--<div ng-if="info.personnelType == '1'">--> | 147 | <!--<div ng-if="info.personnelType == '1'">--> |
| 145 | <!--<a href="#">--> | 148 | <!--<a href="#">--> |
| @@ -160,7 +163,7 @@ | @@ -160,7 +163,7 @@ | ||
| 160 | <span ng-bind="info.brancheCompany"></span> | 163 | <span ng-bind="info.brancheCompany"></span> |
| 161 | </td> | 164 | </td> |
| 162 | <td> | 165 | <td> |
| 163 | - <span ng-bind="info.posts | dict:'gzType':'$$$$$${txt-4058}'"></span> | 166 | + <span ng-bind="info.posts | dict:'gzType':('employeeInfoManage_list_page_line163_txt-4058' | translate)"></span> |
| 164 | </td> | 167 | </td> |
| 165 | <td> | 168 | <td> |
| 166 | <span class="glyphicon glyphicon-ok" ng-if="info.destroy != '1'"></span> | 169 | <span class="glyphicon glyphicon-ok" ng-if="info.destroy != '1'"></span> |
| @@ -168,12 +171,16 @@ | @@ -168,12 +171,16 @@ | ||
| 168 | </td> | 171 | </td> |
| 169 | <td> | 172 | <td> |
| 170 | <!--<a href="details.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 详细 </a>--> | 173 | <!--<a href="details.html?lineId={{obj.id}}" class="btn default blue-stripe btn-sm"> 详细 </a>--> |
| 171 | - <a ui-sref="employeeInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> $$$$$${txt-3866} </a> | ||
| 172 | - <a ui-sref="employeeInfoManage_edit({id: info.id})" class="btn btn-info btn-sm"> $$$$$${txt-4028} </a> | 174 | + <a ui-sref="employeeInfoManage_detail({id: info.id})" class="btn btn-info btn-sm"> {{"employeeInfoManage_list_page_line171_txt-3866" | translate}} </a> |
| 175 | + <a ui-sref="employeeInfoManage_edit({id: info.id})" class="btn btn-info btn-sm"> {{"employeeInfoManage_list_page_line172_txt-4028" | translate}} </a> | ||
| 173 | <a sweetalert | 176 | <a sweetalert |
| 174 | - sweet-options="{title: '$$$$$${txt-675}',text: '$$$$$${txt-3719}' + info.personnelName + '</br>$$$$$${txt-3761}' + info.jobCode + '</br>$$$$$${txt-40}', html: true,type: 'warning',showCancelButton: true,confirmButtonColor: '#DD6B55',confirmButtonText: '$$$$$${txt-4257}',cancelButtonText: '$$$$$${txt-3817}'}" | 177 | + sweet-options="{title: ('employeeInfoManage_list_page_line174_txt-675' | translate), |
| 178 | + text: ('employeeInfoManage_list_page_line175_txt-3719' | translate) + info.personnelName + '</br>' + ('employeeInfoManage_list_page_line175_txt-3761' | translate) + info.jobCode + '</br>' + ('employeeInfoManage_list_page_line175_txt-40' | translate), | ||
| 179 | + html: true,type: 'warning',showCancelButton: true,confirmButtonColor: '#DD6B55', | ||
| 180 | + confirmButtonText: ('employeeInfoManage_list_page_line177_txt-4257' | translate), | ||
| 181 | + cancelButtonText: ('employeeInfoManage_list_page_line178_txt-3817' | translate)}" | ||
| 175 | sweet-on-confirm="ctrl.deleteEmp(info.id)" | 182 | sweet-on-confirm="ctrl.deleteEmp(info.id)" |
| 176 | - class="btn btn-danger btn-sm">$$$$$${txt-3868}</a> | 183 | + class="btn btn-danger btn-sm">{{"employeeInfoManage_list_page_line180_txt-3868" | translate}}</a> |
| 177 | </td> | 184 | </td> |
| 178 | </tr> | 185 | </tr> |
| 179 | </tbody> | 186 | </tbody> |
| @@ -181,8 +188,11 @@ | @@ -181,8 +188,11 @@ | ||
| 181 | </div> | 188 | </div> |
| 182 | 189 | ||
| 183 | <div class="pageBar"> | 190 | <div class="pageBar"> |
| 184 | - <div class="pageBarLeft"> | ||
| 185 | - $$$$$${txt-3053} | 191 | + <div class="pageBarLeft" |
| 192 | + translate="employeeInfoManage_list_page_line189_txt-3053" | ||
| 193 | + translate-value-from="{{ ctrl.page()['uiFromRecord'] }}" | ||
| 194 | + translate-value-to="{{ ctrl.page()['uiToRecord'] }}" | ||
| 195 | + translate-value-total="{{ ctrl.page()['totalElements'] }}"> | ||
| 186 | </div> | 196 | </div> |
| 187 | 197 | ||
| 188 | <div class="pageBarRight"> | 198 | <div class="pageBarRight"> |
| @@ -192,11 +202,11 @@ | @@ -192,11 +202,11 @@ | ||
| 192 | rotate="false" | 202 | rotate="false" |
| 193 | max-size="10" | 203 | max-size="10" |
| 194 | boundary-links="true" | 204 | boundary-links="true" |
| 195 | - first-text="$$$$$${txt-4430}" | ||
| 196 | - previous-text="$$$$$${txt-3613}" | ||
| 197 | - next-text="$$$$$${txt-3614}" | ||
| 198 | - last-text="$$$$$${txt-4068}"> | 205 | + first-text="{{'employeeInfoManage_list_page_line202_txt-4430' | translate}}" |
| 206 | + previous-text="{{'employeeInfoManage_list_page_line203_txt-3613' | translate}}" | ||
| 207 | + next-text="{{'employeeInfoManage_list_page_line204_txt-3614' | translate}}" | ||
| 208 | + last-text="{{'employeeInfoManage_list_page_line205_txt-4068' | translate}}"> | ||
| 199 | </uib-pagination> | 209 | </uib-pagination> |
| 200 | </div> | 210 | </div> |
| 201 | </div> | 211 | </div> |
| 202 | -</div> | ||
| 203 | \ No newline at end of file | 212 | \ No newline at end of file |
| 213 | +</div> |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/module.js
| @@ -5,7 +5,8 @@ angular.module('ScheduleApp').factory( | @@ -5,7 +5,8 @@ angular.module('ScheduleApp').factory( | ||
| 5 | [ | 5 | [ |
| 6 | 'EmployeeInfoManageService_g', | 6 | 'EmployeeInfoManageService_g', |
| 7 | 'UserPrincipal', | 7 | 'UserPrincipal', |
| 8 | - function(service, UserPrincipal) { | 8 | + '$translate', |
| 9 | + function(service, UserPrincipal, translate) { | ||
| 9 | 10 | ||
| 10 | /** 当前的查询条件信息 */ | 11 | /** 当前的查询条件信息 */ |
| 11 | var currentSearchCondition = { | 12 | var currentSearchCondition = { |
| @@ -29,12 +30,12 @@ angular.module('ScheduleApp').factory( | @@ -29,12 +30,12 @@ angular.module('ScheduleApp').factory( | ||
| 29 | 30 | ||
| 30 | // 字段描述 | 31 | // 字段描述 |
| 31 | var columns = [ | 32 | var columns = [ |
| 32 | - {name: "personnelName", desc: i18n('txt-3949')}, | ||
| 33 | - {name: "jobCodeori", desc: i18n('txt-3940')}, | ||
| 34 | - {name: "personnelType", desc: i18n('txt-4086')}, | ||
| 35 | - {name: "company", desc: i18n('txt-3096')}, | ||
| 36 | - {name: "brancheCompany", desc: i18n('txt-3777')}, | ||
| 37 | - {name: "posts", desc: i18n('txt-4093')} | 33 | + {name: "personnelName", desc: translate.instant("employeeInfoManage_module_js_line33_txt-3949")}, |
| 34 | + {name: "jobCodeori", desc: translate.instant("employeeInfoManage_module_js_line34_txt-3940")}, | ||
| 35 | + {name: "personnelType", desc: translate.instant("employeeInfoManage_module_js_line35_txt-4086")}, | ||
| 36 | + {name: "company", desc: translate.instant("employeeInfoManage_module_js_line36_txt-3096")}, | ||
| 37 | + {name: "brancheCompany", desc: translate.instant("employeeInfoManage_module_js_line37_txt-3777")}, | ||
| 38 | + {name: "posts", desc: translate.instant("employeeInfoManage_module_js_line38_txt-4093")} | ||
| 38 | ]; | 39 | ]; |
| 39 | // 排序字段 | 40 | // 排序字段 |
| 40 | var orderColumns = { | 41 | var orderColumns = { |
| @@ -135,7 +136,8 @@ angular.module('ScheduleApp').controller( | @@ -135,7 +136,8 @@ angular.module('ScheduleApp').controller( | ||
| 135 | '$uibModal', | 136 | '$uibModal', |
| 136 | 'FileDownload_g', | 137 | 'FileDownload_g', |
| 137 | 'UserInfo', | 138 | 'UserInfo', |
| 138 | - function(employeeInfoManageService, $state, $uibModal, fileDownload, userInfo) { | 139 | + '$translate', |
| 140 | + function(employeeInfoManageService, $state, $uibModal, fileDownload, userInfo, translate) { | ||
| 139 | var self = this; | 141 | var self = this; |
| 140 | 142 | ||
| 141 | self.userInfo = userInfo; | 143 | self.userInfo = userInfo; |
| @@ -177,7 +179,7 @@ angular.module('ScheduleApp').controller( | @@ -177,7 +179,7 @@ angular.module('ScheduleApp').controller( | ||
| 177 | if (p) { | 179 | if (p) { |
| 178 | p.then( | 180 | p.then( |
| 179 | function(result) { | 181 | function(result) { |
| 180 | - fileDownload.downloadFile(result.data, "application/octet-stream", i18n('txt-1614') + ".xls"); | 182 | + fileDownload.downloadFile(result.data, "application/octet-stream", translate.instant("employeeInfoManage_module_js_line182_txt-1614") + ".xls"); |
| 181 | }, | 183 | }, |
| 182 | function(result) { | 184 | function(result) { |
| 183 | console.log("exportData failed:" + result); | 185 | console.log("exportData failed:" + result); |
| @@ -248,7 +250,8 @@ angular.module('ScheduleApp').controller( | @@ -248,7 +250,8 @@ angular.module('ScheduleApp').controller( | ||
| 248 | 'EmployeeInfoManageService', | 250 | 'EmployeeInfoManageService', |
| 249 | '$uibModal', | 251 | '$uibModal', |
| 250 | 'UserInfo', | 252 | 'UserInfo', |
| 251 | - function(service, $uibModal, userInfo) { | 253 | + '$translate', |
| 254 | + function(service, $uibModal, userInfo, translate) { | ||
| 252 | var self = this; | 255 | var self = this; |
| 253 | self.userInfo = userInfo; | 256 | self.userInfo = userInfo; |
| 254 | var Employee = service.getQueryClass(); | 257 | var Employee = service.getQueryClass(); |
| @@ -280,7 +283,7 @@ angular.module('ScheduleApp').controller( | @@ -280,7 +283,7 @@ angular.module('ScheduleApp').controller( | ||
| 280 | self.deleteEmp = function(id) { | 283 | self.deleteEmp = function(id) { |
| 281 | Employee.delete({id: id}, function(result) { | 284 | Employee.delete({id: id}, function(result) { |
| 282 | if (result.msg) { // 暂时这样做,之后全局拦截 | 285 | if (result.msg) { // 暂时这样做,之后全局拦截 |
| 283 | - alert(i18n('txt-3729') + result.msg); | 286 | + alert(translate.instant("employeeInfoManage_module_js_line286_txt-3729") + result.msg); |
| 284 | } else { | 287 | } else { |
| 285 | self.doPage(); | 288 | self.doPage(); |
| 286 | } | 289 | } |
| @@ -394,7 +397,8 @@ angular.module('ScheduleApp').controller( | @@ -394,7 +397,8 @@ angular.module('ScheduleApp').controller( | ||
| 394 | [ | 397 | [ |
| 395 | 'EmployeeInfoManageService', | 398 | 'EmployeeInfoManageService', |
| 396 | '$stateParams', | 399 | '$stateParams', |
| 397 | - function(service, $stateParams) { | 400 | + '$translate', |
| 401 | + function(service, $stateParams, translate) { | ||
| 398 | var self = this; | 402 | var self = this; |
| 399 | var Employee = service.getQueryClass(); | 403 | var Employee = service.getQueryClass(); |
| 400 | var id = $stateParams.id; | 404 | var id = $stateParams.id; |
| @@ -404,9 +408,9 @@ angular.module('ScheduleApp').controller( | @@ -404,9 +408,9 @@ angular.module('ScheduleApp').controller( | ||
| 404 | 408 | ||
| 405 | // 当转向到此页面时,就获取明细信息并绑定 | 409 | // 当转向到此页面时,就获取明细信息并绑定 |
| 406 | self.employeeInfoForDetail = Employee.get({id: id}, function() { | 410 | self.employeeInfoForDetail = Employee.get({id: id}, function() { |
| 407 | - self.title = i18n('txt-4081') + " " + | 411 | + self.title = translate.instant("employeeInfoManage_module_js_line411_txt-4081") + " " + |
| 408 | self.employeeInfoForDetail.personnelName + | 412 | self.employeeInfoForDetail.personnelName + |
| 409 | - " " + i18n('txt-3066'); | 413 | + " " + translate.instant("employeeInfoManage_module_js_line413_txt-3066"); |
| 410 | }); | 414 | }); |
| 411 | 415 | ||
| 412 | } | 416 | } |
src/main/resources/static/pages/scheduleApp/module/basicInfo/employeeInfoManage/orderOptionOpen.html
| @@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
| 2 | <div class="modal-title"> | 2 | <div class="modal-title"> |
| 3 | <h3> | 3 | <h3> |
| 4 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> | 4 | <i class="fa fa-sort-amount-asc" aria-hidden="true"></i> |
| 5 | - <span class="caption-subject bold uppercase">$$$$$${txt-1682}</span> | 5 | + <span class="caption-subject bold uppercase">{{"employeeInfoManage_orderOptionOpen_page_line5_txt-1682" | translate}}</span> |
| 6 | </h3> | 6 | </h3> |
| 7 | </div> | 7 | </div> |
| 8 | </div> | 8 | </div> |
| @@ -14,5 +14,5 @@ | @@ -14,5 +14,5 @@ | ||
| 14 | </sa-Orderoption> | 14 | </sa-Orderoption> |
| 15 | </div> | 15 | </div> |
| 16 | <div class="modal-footer"> | 16 | <div class="modal-footer"> |
| 17 | - <button class="btn btn-primary" ng-click="$ctrl.confirm($ctrl.orderColumns)">$$$$$${txt-4018}</button> | ||
| 18 | -</div> | ||
| 19 | \ No newline at end of file | 17 | \ No newline at end of file |
| 18 | + <button class="btn btn-primary" ng-click="$ctrl.confirm($ctrl.orderColumns)">{{"employeeInfoManage_orderOptionOpen_page_line17_txt-4018" | translate}}</button> | ||
| 19 | +</div> |
src/main/resources/static/pages/scheduleApp/module/common/dts1/select/saSelect5.js
| @@ -15,13 +15,16 @@ | @@ -15,13 +15,16 @@ | ||
| 15 | * | 15 | * |
| 16 | * required(可选):是否需要form的required验证 | 16 | * required(可选):是否需要form的required验证 |
| 17 | * | 17 | * |
| 18 | + * width(可选):内部自动计算select框和删除按钮的宽度,并添加对应的style | ||
| 19 | + * | ||
| 18 | */ | 20 | */ |
| 19 | angular.module('ScheduleApp').directive('saSelect5', [ | 21 | angular.module('ScheduleApp').directive('saSelect5', [ |
| 20 | '$timeout', | 22 | '$timeout', |
| 21 | '$$SearchInfoService_g', | 23 | '$$SearchInfoService_g', |
| 22 | 'UserPrincipal', | 24 | 'UserPrincipal', |
| 23 | 'DataStore', | 25 | 'DataStore', |
| 24 | - function($timeout, $$searchInfoService_g, UserPrincipal, DataStore) { | 26 | + '$translate', |
| 27 | + function($timeout, $$searchInfoService_g, UserPrincipal, DataStore, translate) { | ||
| 25 | return { | 28 | return { |
| 26 | restrict: 'E', | 29 | restrict: 'E', |
| 27 | templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect5Template.html', | 30 | templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect5Template.html', |
| @@ -65,6 +68,8 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -65,6 +68,8 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 65 | 68 | ||
| 66 | var $required_attr = tAttrs["required"]; // 是否需要required验证 | 69 | var $required_attr = tAttrs["required"]; // 是否需要required验证 |
| 67 | 70 | ||
| 71 | + var $width_attr = tAttrs["width"]; // 宽度 | ||
| 72 | + | ||
| 68 | if (!$name_attr) { | 73 | if (!$name_attr) { |
| 69 | throw new Error("name属性必须填写"); | 74 | throw new Error("name属性必须填写"); |
| 70 | } | 75 | } |
| @@ -111,6 +116,17 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -111,6 +116,17 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 111 | // dom,span ng-bind属性设置,TODO:暂时无法用transclude设置,先用属性设置 | 116 | // dom,span ng-bind属性设置,TODO:暂时无法用transclude设置,先用属性设置 |
| 112 | tElem.find("ui-select-choices").html("{{" + $iterobjexp_attr + "}}"); | 117 | tElem.find("ui-select-choices").html("{{" + $iterobjexp_attr + "}}"); |
| 113 | 118 | ||
| 119 | + // 计算宽度 | ||
| 120 | + if ($width_attr) { | ||
| 121 | + var $button_t_b = 6; // 按钮的padding top bottom | ||
| 122 | + var $button_l_r = 6; // 按钮的padding left right | ||
| 123 | + var $select_width = $width_attr - $button_l_r * 2; // select的width | ||
| 124 | + tElem.find("ui-select").attr("style", | ||
| 125 | + "width: " + $select_width + "px!important;" + | ||
| 126 | + "white-space: nowrap; overflow: hidden;"); | ||
| 127 | + tElem.find("button").attr("style", "padding: " + $button_t_b + "px " + $button_l_r + "px;"); | ||
| 128 | + } | ||
| 129 | + | ||
| 114 | 130 | ||
| 115 | // 当前的数据模式,ajax,dic,local | 131 | // 当前的数据模式,ajax,dic,local |
| 116 | var dataModelType = undefined; | 132 | var dataModelType = undefined; |
| @@ -357,7 +373,7 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -357,7 +373,7 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 357 | */ | 373 | */ |
| 358 | scope[ctrlAs].$$internal_dic_data = function(dictype) { | 374 | scope[ctrlAs].$$internal_dic_data = function(dictype) { |
| 359 | if (!dictionaryUtils.getByGroup(dictype)) { | 375 | if (!dictionaryUtils.getByGroup(dictype)) { |
| 360 | - throw new error(i18n('txt-1275', [dictype])); | 376 | + throw new error(translate.instant("saSelect5_js_line375_txt-1275") + dictype); |
| 361 | } | 377 | } |
| 362 | 378 | ||
| 363 | // 重新创建内部保存的数据 | 379 | // 重新创建内部保存的数据 |
| @@ -510,4 +526,4 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -510,4 +526,4 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 510 | } | 526 | } |
| 511 | }; | 527 | }; |
| 512 | } | 528 | } |
| 513 | -]); | ||
| 514 | \ No newline at end of file | 529 | \ No newline at end of file |
| 530 | +]); |
src/main/resources/static/pages/scheduleApp/module/common/dts1/select/saSelect5Template.html
src/main/resources/static/pages/scheduleApp/module/common/dts2/queryOption/saOrderOptionTemplate.html
| @@ -90,8 +90,8 @@ | @@ -90,8 +90,8 @@ | ||
| 90 | </div> | 90 | </div> |
| 91 | <div class="col-md-3 option_dir"> | 91 | <div class="col-md-3 option_dir"> |
| 92 | <select class="form-control aria-invalid="false" ng-model="$option.dir" ng-change="$saOrderOptionCtrl.$$select_dir_change()"> | 92 | <select class="form-control aria-invalid="false" ng-model="$option.dir" ng-change="$saOrderOptionCtrl.$$select_dir_change()"> |
| 93 | - <option value="ASC" ng-selected="$option.dir=='ASC'">$$$$$${txt-4157}</option> | ||
| 94 | - <option value="DESC" ng-selected="$option.dir=='DESC'">$$$$$${txt-4156}</option> | 93 | + <option value="ASC" ng-selected="$option.dir=='ASC'">{{"queryOption_saOrderOptionTemplate_line93_txt-4157" | translate}}</option> |
| 94 | + <option value="DESC" ng-selected="$option.dir=='DESC'">{{"queryOption_saOrderOptionTemplate_line94_txt-4156" | translate}}</option> | ||
| 95 | </select> | 95 | </select> |
| 96 | </div> | 96 | </div> |
| 97 | <div class="col-md-3 btn-group option_opt"> | 97 | <div class="col-md-3 btn-group option_opt"> |
| @@ -107,4 +107,4 @@ | @@ -107,4 +107,4 @@ | ||
| 107 | 107 | ||
| 108 | </div> | 108 | </div> |
| 109 | 109 | ||
| 110 | -</div> | ||
| 111 | \ No newline at end of file | 110 | \ No newline at end of file |
| 111 | +</div> |
src/main/resources/static/pages/scheduleApp/module/common/main.js
| @@ -72,31 +72,32 @@ ScheduleApp.factory('UserPrincipal', [ | @@ -72,31 +72,32 @@ ScheduleApp.factory('UserPrincipal', [ | ||
| 72 | ScheduleApp.factory('DataStore', [ | 72 | ScheduleApp.factory('DataStore', [ |
| 73 | '$http', | 73 | '$http', |
| 74 | '$q', | 74 | '$q', |
| 75 | - function($http, $q) { | 75 | + '$translate', |
| 76 | + function($http, $q, translate) { | ||
| 76 | // 本地数据存储,如车辆数据,人员数据 | 77 | // 本地数据存储,如车辆数据,人员数据 |
| 77 | var dataMap = { | 78 | var dataMap = { |
| 78 | "cl": [], // 车辆信息 | 79 | "cl": [], // 车辆信息 |
| 79 | "ry": [], // 人员信息 | 80 | "ry": [], // 人员信息 |
| 80 | "ddreasons": [ // 调度原因(调度执勤日报里的) | 81 | "ddreasons": [ // 调度原因(调度执勤日报里的) |
| 81 | - {code: "0", name: i18n('txt-3966')}, | ||
| 82 | - {code: "1", name: i18n('txt-3958')}, | ||
| 83 | - {code: "2", name: i18n('txt-3960')}, | ||
| 84 | - {code: "3", name: i18n('txt-3837')}, | ||
| 85 | - {code: "4", name: i18n('txt-3838')}, | ||
| 86 | - {code: "5", name: i18n('txt-3876')}, | ||
| 87 | - {code: "6", name: i18n('txt-4026')}, | ||
| 88 | - {code: "7", name: i18n('txt-3840')}, | ||
| 89 | - {code: "8", name: i18n('txt-3961')}, | ||
| 90 | - {code: "9", name: i18n('txt-3962')}, | ||
| 91 | - {code: "10", name: i18n('txt-3963')}, | ||
| 92 | - {code: "11", name: i18n('txt-4197')}, | ||
| 93 | - {code: "12", name: i18n('txt-4102')}, | ||
| 94 | - {code: "13", name: i18n('txt-3957')}, | ||
| 95 | - {code: "14", name: i18n('txt-3956')} | 82 | + {code: "0", name: translate.instant("main_js_line_82_txt-3966")}, |
| 83 | + {code: "1", name: translate.instant("main_js_line_83_txt-3958")}, | ||
| 84 | + {code: "2", name: translate.instant("main_js_line_84_txt-3960")}, | ||
| 85 | + {code: "3", name: translate.instant("main_js_line_85_txt-3837")}, | ||
| 86 | + {code: "4", name: translate.instant("main_js_line_86_txt-3838")}, | ||
| 87 | + {code: "5", name: translate.instant("main_js_line_87_txt-3876")}, | ||
| 88 | + {code: "6", name: translate.instant("main_js_line_88_txt-4026")}, | ||
| 89 | + {code: "7", name: translate.instant("main_js_line_89_txt-3840")}, | ||
| 90 | + {code: "8", name: translate.instant("main_js_line_90_txt-3961")}, | ||
| 91 | + {code: "9", name: translate.instant("main_js_line_91_txt-3962")}, | ||
| 92 | + {code: "10", name: translate.instant("main_js_line_92_txt-3963")}, | ||
| 93 | + {code: "11", name: translate.instant("main_js_line_93_txt-4197")}, | ||
| 94 | + {code: "12", name: translate.instant("main_js_line_94_txt-4102")}, | ||
| 95 | + {code: "13", name: translate.instant("main_js_line_95_txt-3957")}, | ||
| 96 | + {code: "14", name: translate.instant("main_js_line_96_txt-3956")} | ||
| 96 | ], | 97 | ], |
| 97 | "zdlytype" : [ // 站点路由类型 | 98 | "zdlytype" : [ // 站点路由类型 |
| 98 | - {name: i18n('txt-2790'), value: 1}, | ||
| 99 | - {name: i18n('txt-168'), value: 2} | 99 | + {name: translate.instant("main_js_line_99_txt-2790"), value: 1}, |
| 100 | + {name: translate.instant("main_js_line_100_txt-168"), value: 2} | ||
| 100 | ] | 101 | ] |
| 101 | }; | 102 | }; |
| 102 | 103 | ||
| @@ -280,7 +281,8 @@ ScheduleApp.factory( | @@ -280,7 +281,8 @@ ScheduleApp.factory( | ||
| 280 | [ | 281 | [ |
| 281 | 'requestNotificationChannel', | 282 | 'requestNotificationChannel', |
| 282 | '$q', | 283 | '$q', |
| 283 | - function(requestNotificationChannel, $q) { | 284 | + '$translate', |
| 285 | + function(requestNotificationChannel, $q, translate) { | ||
| 284 | return { | 286 | return { |
| 285 | request: function(config) { | 287 | request: function(config) { |
| 286 | requestNotificationChannel.requestStarted(config); | 288 | requestNotificationChannel.requestStarted(config); |
| @@ -296,13 +298,13 @@ ScheduleApp.factory( | @@ -296,13 +298,13 @@ ScheduleApp.factory( | ||
| 296 | var data = response.data; | 298 | var data = response.data; |
| 297 | var output = []; | 299 | var output = []; |
| 298 | if (data.status == '407') { | 300 | if (data.status == '407') { |
| 299 | - alert(i18n('txt-1805')); | 301 | + alert(translate.instant("main_js_line_301_txt-1805")); |
| 300 | return $q.reject(response); | 302 | return $q.reject(response); |
| 301 | } else if (data.status == '500') { | 303 | } else if (data.status == '500') { |
| 302 | - output.push(i18n('txt-2284') + data.status); | ||
| 303 | - output.push(i18n('txt-2285') + data.path); | ||
| 304 | - output.push(i18n('txt-2286') + data.message); | ||
| 305 | - alert(i18n('txt-1807') + "\n" + output.join("\n")); | 304 | + output.push(translate.instant("main_js_line_304_txt-2284") + data.status); |
| 305 | + output.push(translate.instant("main_js_line_305_txt-2285") + data.path); | ||
| 306 | + output.push(translate.instant("main_js_line_306_txt-2286") + data.message); | ||
| 307 | + alert(translate.instant("main_js_line_307_txt-1807") + "\n" + output.join("\n")); | ||
| 306 | return $q.reject(response); | 308 | return $q.reject(response); |
| 307 | } else { | 309 | } else { |
| 308 | return response; | 310 | return response; |
| @@ -320,22 +322,22 @@ ScheduleApp.factory( | @@ -320,22 +322,22 @@ ScheduleApp.factory( | ||
| 320 | } else if (rejection.status == -1) { | 322 | } else if (rejection.status == -1) { |
| 321 | // 服务器断开了 | 323 | // 服务器断开了 |
| 322 | // alert(i18n('txt-695')); | 324 | // alert(i18n('txt-695')); |
| 323 | - console.log(i18n('txt-695')); | 325 | + console.log(translate.instant("main_js_line_325_txt-695")); |
| 324 | } else { | 326 | } else { |
| 325 | - output.push(i18n('txt-2284') + rejection.status); | 327 | + output.push(translate.instant("main_js_line_327_txt-2284") + rejection.status); |
| 326 | // output.push("错误内容:" + angular.toJson(rejection.data)); | 328 | // output.push("错误内容:" + angular.toJson(rejection.data)); |
| 327 | if (rejection.data) { | 329 | if (rejection.data) { |
| 328 | - output.push(i18n('txt-2325') + rejection.data.message); | 330 | + output.push(translate.instant("main_js_line_330_txt-2325") + rejection.data.message); |
| 329 | } else { | 331 | } else { |
| 330 | - output.push(i18n('txt-2325') + rejection.message); | 332 | + output.push(translate.instant("main_js_line_332_txt-2325") + rejection.message); |
| 331 | } | 333 | } |
| 332 | 334 | ||
| 333 | if (rejection.status == 500) { | 335 | if (rejection.status == 500) { |
| 334 | - alert(i18n('txt-1807') + "\n" + output.join("\n")); | 336 | + alert(translate.instant("main_js_line_336_txt-1807") + "\n" + output.join("\n")); |
| 335 | } else if (rejection.status == 407) { | 337 | } else if (rejection.status == 407) { |
| 336 | - alert(i18n('txt-1838') + "\n" + output.join("\n")); | 338 | + alert(translate.instant("main_js_line_338_txt-1838") + "\n" + output.join("\n")); |
| 337 | } else { | 339 | } else { |
| 338 | - alert(i18n('txt-2333') + "\n" + output.join("\n")); | 340 | + alert(translate.instant("main_js_line_340_txt-2333") + "\n" + output.join("\n")); |
| 339 | } | 341 | } |
| 340 | } | 342 | } |
| 341 | 343 | ||
| @@ -375,9 +377,10 @@ ScheduleApp.controller('ScheduleAppController', [ | @@ -375,9 +377,10 @@ ScheduleApp.controller('ScheduleAppController', [ | ||
| 375 | '$scope', | 377 | '$scope', |
| 376 | 'UserPrincipal', | 378 | 'UserPrincipal', |
| 377 | 'DataStore', | 379 | 'DataStore', |
| 378 | - function($scope, UserPrincipal, DataStore) { | 380 | + '$translate', |
| 381 | + function($scope, UserPrincipal, DataStore, translate) { | ||
| 379 | $scope.$on('$viewContentLoaded', function(event) { | 382 | $scope.$on('$viewContentLoaded', function(event) { |
| 380 | - console.log(i18n('txt-1149') + event); | 383 | + console.log(translate.instant("main_js_line_383_txt-1149") + event); |
| 381 | }); | 384 | }); |
| 382 | 385 | ||
| 383 | // 获取一次用户身份信息 | 386 | // 获取一次用户身份信息 |
src/main/resources/static/pages/scheduleApp/module/common/prj-common-directive.js
| 1 | -//自定义指令 | ||
| 2 | -/** | ||
| 3 | - * loading载入中指令。 | ||
| 4 | - */ | ||
| 5 | -angular.module('ScheduleApp').directive( | ||
| 6 | - 'loadingWidget', | ||
| 7 | - [ | ||
| 8 | - 'requestNotificationChannel', | ||
| 9 | - function(requestNotificationChannel) { | ||
| 10 | - return { | ||
| 11 | - restrict: 'A', | ||
| 12 | - | ||
| 13 | - compile: function(tElem, tAttrs) { | ||
| 14 | - var loadingCount = 0; | ||
| 15 | - | ||
| 16 | - return { | ||
| 17 | - pre: function(scope, element, attr) { | ||
| 18 | - | ||
| 19 | - }, | ||
| 20 | - post: function(scope, element, attr) { | ||
| 21 | - // 初始隐藏loading界面 | ||
| 22 | - element.hide(); | ||
| 23 | - | ||
| 24 | - // 开始请求通知处理 | ||
| 25 | - requestNotificationChannel.onRequestStarted(scope, function(requestInfo) { | ||
| 26 | - if (loadingCount == 0) { | ||
| 27 | - element.show(); | ||
| 28 | - } | ||
| 29 | - loadingCount ++; | ||
| 30 | - // TODO:以后在载入中显示requestInfo相关信息 | ||
| 31 | - console.log(requestInfo); | ||
| 32 | - console.log(loadingCount); | ||
| 33 | - }); | ||
| 34 | - // 请求结束通知处理 | ||
| 35 | - requestNotificationChannel.onRequestEnded(scope, function() { | ||
| 36 | - loadingCount --; | ||
| 37 | - if (loadingCount == 0) { | ||
| 38 | - element.hide(); | ||
| 39 | - } | ||
| 40 | - | ||
| 41 | - console.log(loadingCount); | ||
| 42 | - }); | ||
| 43 | - } | ||
| 44 | - }; | ||
| 45 | - } | ||
| 46 | - | ||
| 47 | - }; | ||
| 48 | - | ||
| 49 | - } | ||
| 50 | - ] | 1 | +//自定义指令 |
| 2 | +/** | ||
| 3 | + * loading载入中指令。 | ||
| 4 | + */ | ||
| 5 | +angular.module('ScheduleApp').directive( | ||
| 6 | + 'loadingWidget', | ||
| 7 | + [ | ||
| 8 | + 'requestNotificationChannel', | ||
| 9 | + function(requestNotificationChannel) { | ||
| 10 | + return { | ||
| 11 | + restrict: 'A', | ||
| 12 | + | ||
| 13 | + compile: function(tElem, tAttrs) { | ||
| 14 | + var loadingCount = 0; | ||
| 15 | + | ||
| 16 | + return { | ||
| 17 | + pre: function(scope, element, attr) { | ||
| 18 | + | ||
| 19 | + }, | ||
| 20 | + post: function(scope, element, attr) { | ||
| 21 | + // 初始隐藏loading界面 | ||
| 22 | + element.hide(); | ||
| 23 | + | ||
| 24 | + // 开始请求通知处理 | ||
| 25 | + requestNotificationChannel.onRequestStarted(scope, function(requestInfo) { | ||
| 26 | + if (loadingCount == 0) { | ||
| 27 | + element.show(); | ||
| 28 | + } | ||
| 29 | + loadingCount ++; | ||
| 30 | + // TODO:以后在载入中显示requestInfo相关信息 | ||
| 31 | + console.log(requestInfo); | ||
| 32 | + console.log(loadingCount); | ||
| 33 | + }); | ||
| 34 | + // 请求结束通知处理 | ||
| 35 | + requestNotificationChannel.onRequestEnded(scope, function() { | ||
| 36 | + loadingCount --; | ||
| 37 | + if (loadingCount == 0) { | ||
| 38 | + element.hide(); | ||
| 39 | + } | ||
| 40 | + | ||
| 41 | + console.log(loadingCount); | ||
| 42 | + }); | ||
| 43 | + } | ||
| 44 | + }; | ||
| 45 | + } | ||
| 46 | + | ||
| 47 | + }; | ||
| 48 | + | ||
| 49 | + } | ||
| 50 | + ] | ||
| 51 | ); | 51 | ); |
| 52 | /** | 52 | /** |
| 53 | * remoteValidation指令,远程数据验证验证,作为属性放在某个指令上,依赖与指令的ngModel。 | 53 | * remoteValidation指令,远程数据验证验证,作为属性放在某个指令上,依赖与指令的ngModel。 |
| @@ -248,73 +248,73 @@ angular.module('ScheduleApp').directive('remoteValidationt2', [ | @@ -248,73 +248,73 @@ angular.module('ScheduleApp').directive('remoteValidationt2', [ | ||
| 248 | } | 248 | } |
| 249 | ]); | 249 | ]); |
| 250 | 250 | ||
| 251 | -/** | ||
| 252 | - * remoteValidationt3 远程验证指令(监控依赖的model变化) | ||
| 253 | - * 属性如下: | ||
| 254 | - * remotevtype(必须):验证类型(在service中有对应映射),如rvtype="xl" | ||
| 255 | - * remotemodel(必须):关联的model | ||
| 256 | - * remotemodelcol(必须):关联的model属性 | ||
| 257 | - */ | ||
| 258 | -angular.module('ScheduleApp').directive( | ||
| 259 | - 'remoteValidation3', | ||
| 260 | - [ | ||
| 261 | - '$$SearchInfoService_g', | ||
| 262 | - '$q', | ||
| 263 | - function($$SearchInfoService_g, $q) { | ||
| 264 | - return { | ||
| 265 | - restrict: 'A', // 属性 | ||
| 266 | - require: '^ngModel', // 依赖所属指令的ngModel | ||
| 267 | - compile: function(tElem, tAttrs) { | ||
| 268 | - var remotevtype_attr = tAttrs['remotevtype']; | ||
| 269 | - var remotemodel_attr = tAttrs['remotemodel']; | ||
| 270 | - var remotemodelcol_attr = tAttrs['remotemodelcol']; | ||
| 271 | - if (!remotevtype_attr) { | ||
| 272 | - throw new Error("remotevtype属性必须填写"); | ||
| 273 | - } | ||
| 274 | - if (!remotemodel_attr) { | ||
| 275 | - throw new Error("remotemodel属性必须填写"); | ||
| 276 | - } | ||
| 277 | - if (!remotemodelcol_attr) { | ||
| 278 | - throw new Error("remotemodelcol属性必须填写"); | ||
| 279 | - } | ||
| 280 | - | ||
| 281 | - return { | ||
| 282 | - pre: function(scope, element, attr) { | ||
| 283 | - | ||
| 284 | - }, | ||
| 285 | - | ||
| 286 | - post: function(scope, element, attr, ngModelCtrl) { | ||
| 287 | - ngModelCtrl.$asyncValidators.remote = | ||
| 288 | - function(modelValue, viewValue) { | ||
| 289 | - var deferred = $q.defer(); | ||
| 290 | - | ||
| 291 | - // 远端验证service | ||
| 292 | - var param = JSON.parse(attr['remotemodel']); | ||
| 293 | - console.log(param); | ||
| 294 | - param[remotemodelcol_attr] = modelValue; | ||
| 295 | - $$SearchInfoService_g.validate[remotevtype_attr].remote.do( | ||
| 296 | - param, | ||
| 297 | - function(result) { | ||
| 298 | - if (result.status == "SUCCESS") { | ||
| 299 | - deferred.resolve(); | ||
| 300 | - } else { | ||
| 301 | - scope.$remote_msg = result.msg; | ||
| 302 | - deferred.reject(); | ||
| 303 | - } | ||
| 304 | - }, | ||
| 305 | - function(result) { | ||
| 306 | - deferred.reject(); | ||
| 307 | - } | ||
| 308 | - ); | ||
| 309 | - | ||
| 310 | - return deferred.promise; | ||
| 311 | - }; | ||
| 312 | - } | ||
| 313 | - }; | ||
| 314 | - } | ||
| 315 | - } | ||
| 316 | - } | ||
| 317 | - ] | 251 | +/** |
| 252 | + * remoteValidationt3 远程验证指令(监控依赖的model变化) | ||
| 253 | + * 属性如下: | ||
| 254 | + * remotevtype(必须):验证类型(在service中有对应映射),如rvtype="xl" | ||
| 255 | + * remotemodel(必须):关联的model | ||
| 256 | + * remotemodelcol(必须):关联的model属性 | ||
| 257 | + */ | ||
| 258 | +angular.module('ScheduleApp').directive( | ||
| 259 | + 'remoteValidation3', | ||
| 260 | + [ | ||
| 261 | + '$$SearchInfoService_g', | ||
| 262 | + '$q', | ||
| 263 | + function($$SearchInfoService_g, $q) { | ||
| 264 | + return { | ||
| 265 | + restrict: 'A', // 属性 | ||
| 266 | + require: '^ngModel', // 依赖所属指令的ngModel | ||
| 267 | + compile: function(tElem, tAttrs) { | ||
| 268 | + var remotevtype_attr = tAttrs['remotevtype']; | ||
| 269 | + var remotemodel_attr = tAttrs['remotemodel']; | ||
| 270 | + var remotemodelcol_attr = tAttrs['remotemodelcol']; | ||
| 271 | + if (!remotevtype_attr) { | ||
| 272 | + throw new Error("remotevtype属性必须填写"); | ||
| 273 | + } | ||
| 274 | + if (!remotemodel_attr) { | ||
| 275 | + throw new Error("remotemodel属性必须填写"); | ||
| 276 | + } | ||
| 277 | + if (!remotemodelcol_attr) { | ||
| 278 | + throw new Error("remotemodelcol属性必须填写"); | ||
| 279 | + } | ||
| 280 | + | ||
| 281 | + return { | ||
| 282 | + pre: function(scope, element, attr) { | ||
| 283 | + | ||
| 284 | + }, | ||
| 285 | + | ||
| 286 | + post: function(scope, element, attr, ngModelCtrl) { | ||
| 287 | + ngModelCtrl.$asyncValidators.remote = | ||
| 288 | + function(modelValue, viewValue) { | ||
| 289 | + var deferred = $q.defer(); | ||
| 290 | + | ||
| 291 | + // 远端验证service | ||
| 292 | + var param = JSON.parse(attr['remotemodel']); | ||
| 293 | + console.log(param); | ||
| 294 | + param[remotemodelcol_attr] = modelValue; | ||
| 295 | + $$SearchInfoService_g.validate[remotevtype_attr].remote.do( | ||
| 296 | + param, | ||
| 297 | + function(result) { | ||
| 298 | + if (result.status == "SUCCESS") { | ||
| 299 | + deferred.resolve(); | ||
| 300 | + } else { | ||
| 301 | + scope.$remote_msg = result.msg; | ||
| 302 | + deferred.reject(); | ||
| 303 | + } | ||
| 304 | + }, | ||
| 305 | + function(result) { | ||
| 306 | + deferred.reject(); | ||
| 307 | + } | ||
| 308 | + ); | ||
| 309 | + | ||
| 310 | + return deferred.promise; | ||
| 311 | + }; | ||
| 312 | + } | ||
| 313 | + }; | ||
| 314 | + } | ||
| 315 | + } | ||
| 316 | + } | ||
| 317 | + ] | ||
| 318 | ); | 318 | ); |
| 319 | /** | 319 | /** |
| 320 | * remoteWarn指令:远程验证警告,作为属性放在某个指令上。 | 320 | * remoteWarn指令:远程验证警告,作为属性放在某个指令上。 |
| @@ -431,278 +431,278 @@ angular.module('ScheduleApp').directive('remoteWarn', [ | @@ -431,278 +431,278 @@ angular.module('ScheduleApp').directive('remoteWarn', [ | ||
| 431 | }; | 431 | }; |
| 432 | } | 432 | } |
| 433 | ]); | 433 | ]); |
| 434 | - | ||
| 435 | -angular.module('ScheduleApp').directive("saSelect", ['$timeout', function($timeout) { | ||
| 436 | - return { | ||
| 437 | - restrict: 'E', | ||
| 438 | - templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelectTemplate.html', | ||
| 439 | - scope: { | ||
| 440 | - model: "=" | ||
| 441 | - }, | ||
| 442 | - controllerAs: "$saSelectCtrl", | ||
| 443 | - bindToController: true, | ||
| 444 | - controller: function() { | ||
| 445 | - var self = this; | ||
| 446 | - self.datas = []; // 关联的字典数据,内部格式 {code:{值},name:{名字}} | ||
| 447 | - }, | ||
| 448 | - /** | ||
| 449 | - * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 450 | - * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 451 | - * @param tElem | ||
| 452 | - * @param tAttrs | ||
| 453 | - * @returns {{pre: Function, post: Function}} | ||
| 454 | - */ | ||
| 455 | - compile: function(tElem, tAttrs) { | ||
| 456 | - // 确定是否使用angularjs required验证 | ||
| 457 | - // 属性 required | ||
| 458 | - // 如果没有填写,内部不添加验证,如果填写了,并且等于true添加验证,否则不添加 | ||
| 459 | - var required_attr = tAttrs["required"]; | ||
| 460 | - if (required_attr) { | ||
| 461 | - if (required_attr == "true") { | ||
| 462 | - // 添加required属性指令 | ||
| 463 | - tElem.find("ui-select").attr("required", ""); | ||
| 464 | - } else { | ||
| 465 | - // 不等于true,不添加required属性指令 | ||
| 466 | - } | ||
| 467 | - } else { | ||
| 468 | - // 不添加required属性指令 | ||
| 469 | - } | ||
| 470 | - | ||
| 471 | - //console.log("saSelect" + ":compile = >" + tElem.html()); | ||
| 472 | - | ||
| 473 | - return { | ||
| 474 | - pre: function(scope, element, attr) { | ||
| 475 | - // TODO: | ||
| 476 | - }, | ||
| 477 | - /** | ||
| 478 | - * 相当于link函数。 | ||
| 479 | - * | ||
| 480 | - * 重要属性如下: | ||
| 481 | - * model 是绑定外部值。 | ||
| 482 | - * dicgroup 字典组的类型 | ||
| 483 | - * name input name属性值 | ||
| 484 | - */ | ||
| 485 | - post: function(scope, element, attr) { | ||
| 486 | - // 1、获取属性 | ||
| 487 | - var dicgroup_attr = attr['dicgroup']; // 字典组的类型 | ||
| 488 | - var name_attr = attr['name']; // input name属性值 | ||
| 489 | - var dicname_attr = attr['dicname']; // model关联的字典名字段 | ||
| 490 | - var codename_attr = attr['codename']; // model关联的字典值字段 | ||
| 491 | - var placeholder_attr = attr['placeholder']; // select placeholder提示 | ||
| 492 | - | ||
| 493 | - // 系统的字典对象,使用dictionaryUtils类获取 | ||
| 494 | - var origin_dicgroup; | ||
| 495 | - var dic_key; // 字典key | ||
| 496 | - | ||
| 497 | - if (dicgroup_attr) { // 赋值指定的字典数据 | ||
| 498 | - origin_dicgroup = dictionaryUtils.getByGroup(dicgroup_attr); | ||
| 499 | - for (dic_key in origin_dicgroup) { | ||
| 500 | - var data = {}; // 重新组合的字典元素对象 | ||
| 501 | - if (dic_key == "true") | ||
| 502 | - data.code = true; | ||
| 503 | - else | ||
| 504 | - data.code = dic_key; | ||
| 505 | - data.name = origin_dicgroup[dic_key]; | ||
| 506 | - scope["$saSelectCtrl"].datas.push(data); | ||
| 507 | - } | ||
| 508 | - } | ||
| 509 | - | ||
| 510 | - if (name_attr) { | ||
| 511 | - scope["$saSelectCtrl"].nv = name_attr; | ||
| 512 | - } | ||
| 513 | - if (placeholder_attr) { | ||
| 514 | - scope["$saSelectCtrl"].ph = placeholder_attr; | ||
| 515 | - } | ||
| 516 | - | ||
| 517 | - scope["$saSelectCtrl"].select = function($item) { | ||
| 518 | - if (codename_attr) { | ||
| 519 | - scope["$saSelectCtrl"].model[codename_attr] = $item.code; | ||
| 520 | - } | ||
| 521 | - if (dicname_attr) { | ||
| 522 | - scope["$saSelectCtrl"].model[dicname_attr] = $item.name; | ||
| 523 | - } | ||
| 524 | - }; | ||
| 525 | - | ||
| 526 | - scope["$saSelectCtrl"].remove = function() { | ||
| 527 | - if (codename_attr) { | ||
| 528 | - scope["$saSelectCtrl"].model[codename_attr] = null; | ||
| 529 | - } | ||
| 530 | - if (dicname_attr) { | ||
| 531 | - scope["$saSelectCtrl"].model[dicname_attr] = null; | ||
| 532 | - } | ||
| 533 | - scope["$saSelectCtrl"].cmodel = null; | ||
| 534 | - }; | ||
| 535 | - | ||
| 536 | - $timeout(function() { | ||
| 537 | - // 创建内部使用的绑定对象 | ||
| 538 | - var model_code = scope["$saSelectCtrl"].model[codename_attr]; | ||
| 539 | - scope["$saSelectCtrl"].cmodel = model_code; | ||
| 540 | - }, 0); | ||
| 541 | - } | ||
| 542 | - } | ||
| 543 | - } | ||
| 544 | - }; | ||
| 545 | -}]); | ||
| 546 | - | ||
| 547 | - | ||
| 548 | - | ||
| 549 | -angular.module('ScheduleApp').directive("saSelect2", [ | ||
| 550 | - '$timeout', '$$SearchInfoService_g', | ||
| 551 | - function($timeout, $$searchInfoService_g) { | ||
| 552 | - return { | ||
| 553 | - restrict: 'E', | ||
| 554 | - templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect2Template.html', | ||
| 555 | - scope: { | ||
| 556 | - model: "=" // 独立作用域,关联外部的模型对象 | ||
| 557 | - }, | ||
| 558 | - controllerAs: "$saSelectCtrl", | ||
| 559 | - bindToController: true, | ||
| 560 | - controller: function($scope) { | ||
| 561 | - var self = this; | ||
| 562 | - self.$$data = []; // 内部关联的数据 | ||
| 563 | - }, | ||
| 564 | - /** | ||
| 565 | - * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 566 | - * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 567 | - * @param tElem | ||
| 568 | - * @param tAttrs | ||
| 569 | - * @returns {{pre: Function, post: Function}} | ||
| 570 | - */ | ||
| 571 | - compile: function(tElem, tAttrs) { | ||
| 572 | - // 1、获取此阶段使用的属性 | ||
| 573 | - var $required_attr = tAttrs["required"]; // 用于和表单验证连接,指定成required="true"才有效。 | ||
| 574 | - | ||
| 575 | - // 2、处理属性 | ||
| 576 | - | ||
| 577 | - // 确定是否使用angularjs required验证 | ||
| 578 | - // 属性 required | ||
| 579 | - // 如果没有填写,内部不添加验证,如果填写了,并且等于true添加验证,否则不添加 | ||
| 580 | - if ($required_attr) { | ||
| 581 | - if ($required_attr == "true") { | ||
| 582 | - // 添加required属性指令 | ||
| 583 | - tElem.find("ui-select").attr("required", ""); | ||
| 584 | - } else { | ||
| 585 | - // 不等于true,不添加required属性指令 | ||
| 586 | - } | ||
| 587 | - } else { | ||
| 588 | - // 不添加required属性指令 | ||
| 589 | - } | ||
| 590 | - | ||
| 591 | - //console.log("saSelect" + ":compile = >" + tElem.html()); | ||
| 592 | - | ||
| 593 | - return { | ||
| 594 | - pre: function(scope, element, attr) { | ||
| 595 | - // TODO: | ||
| 596 | - }, | ||
| 597 | - /** | ||
| 598 | - * 相当于link函数。 | ||
| 599 | - * | ||
| 600 | - * 重要属性如下: | ||
| 601 | - * model 是绑定外部值。 | ||
| 602 | - * dicgroup 字典组的类型 | ||
| 603 | - * name input name属性值 | ||
| 604 | - */ | ||
| 605 | - post: function(scope, element, attr) { | ||
| 606 | - // 1、获取此阶段使用的属性 | ||
| 607 | - var $name_attr = attr["name"]; // 表单验证时需要的名字 | ||
| 608 | - var $type_attr = attr["type"]; // 关联的那种数据值(xl/cl/ry)-> 对应线路信息/车辆信息/人员信息,后面有的继续加 | ||
| 609 | - var $modelcolname1_attr = attr["modelcolname1"]; // 关联的模型字段名字1(一般应该是编码字段) | ||
| 610 | - var $modelcolname2_attr = attr["modelcolname2"]; // 关联的模型字段名字2(一般应该是名字字段) | ||
| 611 | - var $datacolname1_attr = attr["datacolname1"]; // 内部数据对应的字段名字1(与模型字段1对应) | ||
| 612 | - var $datacolname2_attr = attr["datacolname2"]; // 内部数据对应的字段名字2(与模型字段2对应) | ||
| 613 | - var $showcolname_attr = attr["showcolname"]; // 下拉框显示的内部数据字段名 | ||
| 614 | - var $placeholder_attr = attr["placeholder"]; // select placeholder字符串描述 | ||
| 615 | - | ||
| 616 | - // 2、处理属性、转换成$saSelectCtrl内部使用的属性 | ||
| 617 | - if ($name_attr) { | ||
| 618 | - scope["$saSelectCtrl"].$name_attr = $name_attr; | ||
| 619 | - } | ||
| 620 | - if ($placeholder_attr) { | ||
| 621 | - scope["$saSelectCtrl"].$placeholder_attr = $placeholder_attr; | ||
| 622 | - } | ||
| 623 | - if ($showcolname_attr) { | ||
| 624 | - scope["$saSelectCtrl"].$showcolname_attr = $showcolname_attr; | ||
| 625 | - } | ||
| 626 | - | ||
| 627 | - // 2-1、添加内部方法,根据type值,改变$$data的值 | ||
| 628 | - scope["$saSelectCtrl"].$$internal_data_change_fn = function() { | ||
| 629 | - // 根据type属性动态载入数据 | ||
| 630 | - if ($type_attr) { | ||
| 631 | - $$searchInfoService_g[$type_attr].list( | ||
| 632 | - {type: "all"}, | ||
| 633 | - function(result) { | ||
| 634 | - scope["$saSelectCtrl"].$$data = []; | ||
| 635 | - for (var i = 0; i < result.length; i ++) { | ||
| 636 | - var data = {}; // data是result的一部分属性集合,根据配置来确定 | ||
| 637 | - if ($datacolname1_attr) { | ||
| 638 | - data[$datacolname1_attr] = result[i][$datacolname1_attr]; | ||
| 639 | - } | ||
| 640 | - if ($datacolname2_attr) { | ||
| 641 | - data[$datacolname2_attr] = result[i][$datacolname2_attr]; | ||
| 642 | - } | ||
| 643 | - if ($showcolname_attr) { | ||
| 644 | - // 动态添加基于名字的拼音 | ||
| 645 | - data[$showcolname_attr] = result[i][$showcolname_attr]; | ||
| 646 | - if (data[$showcolname_attr]) { | ||
| 647 | - data["fullChars"] = pinyin.getFullChars(result[i][$showcolname_attr]).toUpperCase(); // 全拼 | ||
| 648 | - data["camelChars"] = pinyin.getCamelChars(result[i][$showcolname_attr]); // 简拼 | ||
| 649 | - } | ||
| 650 | - } | ||
| 651 | - if (data["fullChars"]) | ||
| 652 | - scope["$saSelectCtrl"].$$data.push(data); | ||
| 653 | - } | ||
| 654 | - }, | ||
| 655 | - function(result) { | ||
| 656 | - | ||
| 657 | - } | ||
| 658 | - ); | ||
| 659 | - } | ||
| 660 | - }; | ||
| 661 | - | ||
| 662 | - // 3、选择、删除事件映射模型和内部数据对应的字段 | ||
| 663 | - scope["$saSelectCtrl"].$select_fn_attr = function($item) { | ||
| 664 | - if ($modelcolname1_attr && $datacolname1_attr) { | ||
| 665 | - scope["$saSelectCtrl"].model[$modelcolname1_attr] = $item[$datacolname1_attr]; | ||
| 666 | - } | ||
| 667 | - if ($modelcolname2_attr && $datacolname2_attr) { | ||
| 668 | - scope["$saSelectCtrl"].model[$modelcolname2_attr] = $item[$datacolname2_attr]; | ||
| 669 | - } | ||
| 670 | - }; | ||
| 671 | - scope["$saSelectCtrl"].$remove_fn_attr = function() { | ||
| 672 | - if ($modelcolname1_attr) { | ||
| 673 | - scope["$saSelectCtrl"].model[$modelcolname1_attr] = null; | ||
| 674 | - } | ||
| 675 | - if ($modelcolname2_attr) { | ||
| 676 | - scope["$saSelectCtrl"].model[$modelcolname2_attr] = null; | ||
| 677 | - } | ||
| 678 | - scope["$saSelectCtrl"].$$cmodel = null; // 内部模型清空 | ||
| 679 | - | ||
| 680 | - scope["$saSelectCtrl"].$$internal_data_change_fn(); | ||
| 681 | - }; | ||
| 682 | - | ||
| 683 | - // 4、搜索事件 | ||
| 684 | - scope["$saSelectCtrl"].$refreshdata_fn_attr = function($search) { | ||
| 685 | - //var fullChars = pinyin.getFullChars($search).toUpperCase(); | ||
| 686 | - //var camelChars = pinyin.getCamelChars($search); | ||
| 687 | - // | ||
| 688 | - //console.log(fullChars + " " + camelChars); | ||
| 689 | - // TODO:事件暂时没用,放着以后再说 | ||
| 690 | - }; | ||
| 691 | - | ||
| 692 | - // 5、全部载入后,输入的 | ||
| 693 | - $timeout(function() { | ||
| 694 | - // 创建内部使用的绑定对象,用于确认选中那个值 | ||
| 695 | - scope["$saSelectCtrl"].$$cmodel = scope["$saSelectCtrl"].model[$modelcolname1_attr]; | ||
| 696 | - | ||
| 697 | - scope["$saSelectCtrl"].$$internal_data_change_fn(); | ||
| 698 | - }, 0); | ||
| 699 | - } | ||
| 700 | - } | ||
| 701 | - } | ||
| 702 | - }; | ||
| 703 | - } | ||
| 704 | -]); | ||
| 705 | - | 434 | + |
| 435 | +angular.module('ScheduleApp').directive("saSelect", ['$timeout', function($timeout) { | ||
| 436 | + return { | ||
| 437 | + restrict: 'E', | ||
| 438 | + templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelectTemplate.html', | ||
| 439 | + scope: { | ||
| 440 | + model: "=" | ||
| 441 | + }, | ||
| 442 | + controllerAs: "$saSelectCtrl", | ||
| 443 | + bindToController: true, | ||
| 444 | + controller: function() { | ||
| 445 | + var self = this; | ||
| 446 | + self.datas = []; // 关联的字典数据,内部格式 {code:{值},name:{名字}} | ||
| 447 | + }, | ||
| 448 | + /** | ||
| 449 | + * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 450 | + * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 451 | + * @param tElem | ||
| 452 | + * @param tAttrs | ||
| 453 | + * @returns {{pre: Function, post: Function}} | ||
| 454 | + */ | ||
| 455 | + compile: function(tElem, tAttrs) { | ||
| 456 | + // 确定是否使用angularjs required验证 | ||
| 457 | + // 属性 required | ||
| 458 | + // 如果没有填写,内部不添加验证,如果填写了,并且等于true添加验证,否则不添加 | ||
| 459 | + var required_attr = tAttrs["required"]; | ||
| 460 | + if (required_attr) { | ||
| 461 | + if (required_attr == "true") { | ||
| 462 | + // 添加required属性指令 | ||
| 463 | + tElem.find("ui-select").attr("required", ""); | ||
| 464 | + } else { | ||
| 465 | + // 不等于true,不添加required属性指令 | ||
| 466 | + } | ||
| 467 | + } else { | ||
| 468 | + // 不添加required属性指令 | ||
| 469 | + } | ||
| 470 | + | ||
| 471 | + //console.log("saSelect" + ":compile = >" + tElem.html()); | ||
| 472 | + | ||
| 473 | + return { | ||
| 474 | + pre: function(scope, element, attr) { | ||
| 475 | + // TODO: | ||
| 476 | + }, | ||
| 477 | + /** | ||
| 478 | + * 相当于link函数。 | ||
| 479 | + * | ||
| 480 | + * 重要属性如下: | ||
| 481 | + * model 是绑定外部值。 | ||
| 482 | + * dicgroup 字典组的类型 | ||
| 483 | + * name input name属性值 | ||
| 484 | + */ | ||
| 485 | + post: function(scope, element, attr) { | ||
| 486 | + // 1、获取属性 | ||
| 487 | + var dicgroup_attr = attr['dicgroup']; // 字典组的类型 | ||
| 488 | + var name_attr = attr['name']; // input name属性值 | ||
| 489 | + var dicname_attr = attr['dicname']; // model关联的字典名字段 | ||
| 490 | + var codename_attr = attr['codename']; // model关联的字典值字段 | ||
| 491 | + var placeholder_attr = attr['placeholder']; // select placeholder提示 | ||
| 492 | + | ||
| 493 | + // 系统的字典对象,使用dictionaryUtils类获取 | ||
| 494 | + var origin_dicgroup; | ||
| 495 | + var dic_key; // 字典key | ||
| 496 | + | ||
| 497 | + if (dicgroup_attr) { // 赋值指定的字典数据 | ||
| 498 | + origin_dicgroup = dictionaryUtils.getByGroup(dicgroup_attr); | ||
| 499 | + for (dic_key in origin_dicgroup) { | ||
| 500 | + var data = {}; // 重新组合的字典元素对象 | ||
| 501 | + if (dic_key == "true") | ||
| 502 | + data.code = true; | ||
| 503 | + else | ||
| 504 | + data.code = dic_key; | ||
| 505 | + data.name = origin_dicgroup[dic_key]; | ||
| 506 | + scope["$saSelectCtrl"].datas.push(data); | ||
| 507 | + } | ||
| 508 | + } | ||
| 509 | + | ||
| 510 | + if (name_attr) { | ||
| 511 | + scope["$saSelectCtrl"].nv = name_attr; | ||
| 512 | + } | ||
| 513 | + if (placeholder_attr) { | ||
| 514 | + scope["$saSelectCtrl"].ph = placeholder_attr; | ||
| 515 | + } | ||
| 516 | + | ||
| 517 | + scope["$saSelectCtrl"].select = function($item) { | ||
| 518 | + if (codename_attr) { | ||
| 519 | + scope["$saSelectCtrl"].model[codename_attr] = $item.code; | ||
| 520 | + } | ||
| 521 | + if (dicname_attr) { | ||
| 522 | + scope["$saSelectCtrl"].model[dicname_attr] = $item.name; | ||
| 523 | + } | ||
| 524 | + }; | ||
| 525 | + | ||
| 526 | + scope["$saSelectCtrl"].remove = function() { | ||
| 527 | + if (codename_attr) { | ||
| 528 | + scope["$saSelectCtrl"].model[codename_attr] = null; | ||
| 529 | + } | ||
| 530 | + if (dicname_attr) { | ||
| 531 | + scope["$saSelectCtrl"].model[dicname_attr] = null; | ||
| 532 | + } | ||
| 533 | + scope["$saSelectCtrl"].cmodel = null; | ||
| 534 | + }; | ||
| 535 | + | ||
| 536 | + $timeout(function() { | ||
| 537 | + // 创建内部使用的绑定对象 | ||
| 538 | + var model_code = scope["$saSelectCtrl"].model[codename_attr]; | ||
| 539 | + scope["$saSelectCtrl"].cmodel = model_code; | ||
| 540 | + }, 0); | ||
| 541 | + } | ||
| 542 | + } | ||
| 543 | + } | ||
| 544 | + }; | ||
| 545 | +}]); | ||
| 546 | + | ||
| 547 | + | ||
| 548 | + | ||
| 549 | +angular.module('ScheduleApp').directive("saSelect2", [ | ||
| 550 | + '$timeout', '$$SearchInfoService_g', | ||
| 551 | + function($timeout, $$searchInfoService_g) { | ||
| 552 | + return { | ||
| 553 | + restrict: 'E', | ||
| 554 | + templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect2Template.html', | ||
| 555 | + scope: { | ||
| 556 | + model: "=" // 独立作用域,关联外部的模型对象 | ||
| 557 | + }, | ||
| 558 | + controllerAs: "$saSelectCtrl", | ||
| 559 | + bindToController: true, | ||
| 560 | + controller: function($scope) { | ||
| 561 | + var self = this; | ||
| 562 | + self.$$data = []; // 内部关联的数据 | ||
| 563 | + }, | ||
| 564 | + /** | ||
| 565 | + * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 566 | + * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 567 | + * @param tElem | ||
| 568 | + * @param tAttrs | ||
| 569 | + * @returns {{pre: Function, post: Function}} | ||
| 570 | + */ | ||
| 571 | + compile: function(tElem, tAttrs) { | ||
| 572 | + // 1、获取此阶段使用的属性 | ||
| 573 | + var $required_attr = tAttrs["required"]; // 用于和表单验证连接,指定成required="true"才有效。 | ||
| 574 | + | ||
| 575 | + // 2、处理属性 | ||
| 576 | + | ||
| 577 | + // 确定是否使用angularjs required验证 | ||
| 578 | + // 属性 required | ||
| 579 | + // 如果没有填写,内部不添加验证,如果填写了,并且等于true添加验证,否则不添加 | ||
| 580 | + if ($required_attr) { | ||
| 581 | + if ($required_attr == "true") { | ||
| 582 | + // 添加required属性指令 | ||
| 583 | + tElem.find("ui-select").attr("required", ""); | ||
| 584 | + } else { | ||
| 585 | + // 不等于true,不添加required属性指令 | ||
| 586 | + } | ||
| 587 | + } else { | ||
| 588 | + // 不添加required属性指令 | ||
| 589 | + } | ||
| 590 | + | ||
| 591 | + //console.log("saSelect" + ":compile = >" + tElem.html()); | ||
| 592 | + | ||
| 593 | + return { | ||
| 594 | + pre: function(scope, element, attr) { | ||
| 595 | + // TODO: | ||
| 596 | + }, | ||
| 597 | + /** | ||
| 598 | + * 相当于link函数。 | ||
| 599 | + * | ||
| 600 | + * 重要属性如下: | ||
| 601 | + * model 是绑定外部值。 | ||
| 602 | + * dicgroup 字典组的类型 | ||
| 603 | + * name input name属性值 | ||
| 604 | + */ | ||
| 605 | + post: function(scope, element, attr) { | ||
| 606 | + // 1、获取此阶段使用的属性 | ||
| 607 | + var $name_attr = attr["name"]; // 表单验证时需要的名字 | ||
| 608 | + var $type_attr = attr["type"]; // 关联的那种数据值(xl/cl/ry)-> 对应线路信息/车辆信息/人员信息,后面有的继续加 | ||
| 609 | + var $modelcolname1_attr = attr["modelcolname1"]; // 关联的模型字段名字1(一般应该是编码字段) | ||
| 610 | + var $modelcolname2_attr = attr["modelcolname2"]; // 关联的模型字段名字2(一般应该是名字字段) | ||
| 611 | + var $datacolname1_attr = attr["datacolname1"]; // 内部数据对应的字段名字1(与模型字段1对应) | ||
| 612 | + var $datacolname2_attr = attr["datacolname2"]; // 内部数据对应的字段名字2(与模型字段2对应) | ||
| 613 | + var $showcolname_attr = attr["showcolname"]; // 下拉框显示的内部数据字段名 | ||
| 614 | + var $placeholder_attr = attr["placeholder"]; // select placeholder字符串描述 | ||
| 615 | + | ||
| 616 | + // 2、处理属性、转换成$saSelectCtrl内部使用的属性 | ||
| 617 | + if ($name_attr) { | ||
| 618 | + scope["$saSelectCtrl"].$name_attr = $name_attr; | ||
| 619 | + } | ||
| 620 | + if ($placeholder_attr) { | ||
| 621 | + scope["$saSelectCtrl"].$placeholder_attr = $placeholder_attr; | ||
| 622 | + } | ||
| 623 | + if ($showcolname_attr) { | ||
| 624 | + scope["$saSelectCtrl"].$showcolname_attr = $showcolname_attr; | ||
| 625 | + } | ||
| 626 | + | ||
| 627 | + // 2-1、添加内部方法,根据type值,改变$$data的值 | ||
| 628 | + scope["$saSelectCtrl"].$$internal_data_change_fn = function() { | ||
| 629 | + // 根据type属性动态载入数据 | ||
| 630 | + if ($type_attr) { | ||
| 631 | + $$searchInfoService_g[$type_attr].list( | ||
| 632 | + {type: "all"}, | ||
| 633 | + function(result) { | ||
| 634 | + scope["$saSelectCtrl"].$$data = []; | ||
| 635 | + for (var i = 0; i < result.length; i ++) { | ||
| 636 | + var data = {}; // data是result的一部分属性集合,根据配置来确定 | ||
| 637 | + if ($datacolname1_attr) { | ||
| 638 | + data[$datacolname1_attr] = result[i][$datacolname1_attr]; | ||
| 639 | + } | ||
| 640 | + if ($datacolname2_attr) { | ||
| 641 | + data[$datacolname2_attr] = result[i][$datacolname2_attr]; | ||
| 642 | + } | ||
| 643 | + if ($showcolname_attr) { | ||
| 644 | + // 动态添加基于名字的拼音 | ||
| 645 | + data[$showcolname_attr] = result[i][$showcolname_attr]; | ||
| 646 | + if (data[$showcolname_attr]) { | ||
| 647 | + data["fullChars"] = pinyin.getFullChars(result[i][$showcolname_attr]).toUpperCase(); // 全拼 | ||
| 648 | + data["camelChars"] = pinyin.getCamelChars(result[i][$showcolname_attr]); // 简拼 | ||
| 649 | + } | ||
| 650 | + } | ||
| 651 | + if (data["fullChars"]) | ||
| 652 | + scope["$saSelectCtrl"].$$data.push(data); | ||
| 653 | + } | ||
| 654 | + }, | ||
| 655 | + function(result) { | ||
| 656 | + | ||
| 657 | + } | ||
| 658 | + ); | ||
| 659 | + } | ||
| 660 | + }; | ||
| 661 | + | ||
| 662 | + // 3、选择、删除事件映射模型和内部数据对应的字段 | ||
| 663 | + scope["$saSelectCtrl"].$select_fn_attr = function($item) { | ||
| 664 | + if ($modelcolname1_attr && $datacolname1_attr) { | ||
| 665 | + scope["$saSelectCtrl"].model[$modelcolname1_attr] = $item[$datacolname1_attr]; | ||
| 666 | + } | ||
| 667 | + if ($modelcolname2_attr && $datacolname2_attr) { | ||
| 668 | + scope["$saSelectCtrl"].model[$modelcolname2_attr] = $item[$datacolname2_attr]; | ||
| 669 | + } | ||
| 670 | + }; | ||
| 671 | + scope["$saSelectCtrl"].$remove_fn_attr = function() { | ||
| 672 | + if ($modelcolname1_attr) { | ||
| 673 | + scope["$saSelectCtrl"].model[$modelcolname1_attr] = null; | ||
| 674 | + } | ||
| 675 | + if ($modelcolname2_attr) { | ||
| 676 | + scope["$saSelectCtrl"].model[$modelcolname2_attr] = null; | ||
| 677 | + } | ||
| 678 | + scope["$saSelectCtrl"].$$cmodel = null; // 内部模型清空 | ||
| 679 | + | ||
| 680 | + scope["$saSelectCtrl"].$$internal_data_change_fn(); | ||
| 681 | + }; | ||
| 682 | + | ||
| 683 | + // 4、搜索事件 | ||
| 684 | + scope["$saSelectCtrl"].$refreshdata_fn_attr = function($search) { | ||
| 685 | + //var fullChars = pinyin.getFullChars($search).toUpperCase(); | ||
| 686 | + //var camelChars = pinyin.getCamelChars($search); | ||
| 687 | + // | ||
| 688 | + //console.log(fullChars + " " + camelChars); | ||
| 689 | + // TODO:事件暂时没用,放着以后再说 | ||
| 690 | + }; | ||
| 691 | + | ||
| 692 | + // 5、全部载入后,输入的 | ||
| 693 | + $timeout(function() { | ||
| 694 | + // 创建内部使用的绑定对象,用于确认选中那个值 | ||
| 695 | + scope["$saSelectCtrl"].$$cmodel = scope["$saSelectCtrl"].model[$modelcolname1_attr]; | ||
| 696 | + | ||
| 697 | + scope["$saSelectCtrl"].$$internal_data_change_fn(); | ||
| 698 | + }, 0); | ||
| 699 | + } | ||
| 700 | + } | ||
| 701 | + } | ||
| 702 | + }; | ||
| 703 | + } | ||
| 704 | +]); | ||
| 705 | + | ||
| 706 | 706 | ||
| 707 | 707 | ||
| 708 | 708 | ||
| @@ -1435,13 +1435,16 @@ angular.module('ScheduleApp').directive('saSelect4', [ | @@ -1435,13 +1435,16 @@ angular.module('ScheduleApp').directive('saSelect4', [ | ||
| 1435 | * | 1435 | * |
| 1436 | * required(可选):是否需要form的required验证 | 1436 | * required(可选):是否需要form的required验证 |
| 1437 | * | 1437 | * |
| 1438 | + * width(可选):内部自动计算select框和删除按钮的宽度,并添加对应的style | ||
| 1439 | + * | ||
| 1438 | */ | 1440 | */ |
| 1439 | angular.module('ScheduleApp').directive('saSelect5', [ | 1441 | angular.module('ScheduleApp').directive('saSelect5', [ |
| 1440 | '$timeout', | 1442 | '$timeout', |
| 1441 | '$$SearchInfoService_g', | 1443 | '$$SearchInfoService_g', |
| 1442 | 'UserPrincipal', | 1444 | 'UserPrincipal', |
| 1443 | 'DataStore', | 1445 | 'DataStore', |
| 1444 | - function($timeout, $$searchInfoService_g, UserPrincipal, DataStore) { | 1446 | + '$translate', |
| 1447 | + function($timeout, $$searchInfoService_g, UserPrincipal, DataStore, translate) { | ||
| 1445 | return { | 1448 | return { |
| 1446 | restrict: 'E', | 1449 | restrict: 'E', |
| 1447 | templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect5Template.html', | 1450 | templateUrl: '/pages/scheduleApp/module/common/dts1/select/saSelect5Template.html', |
| @@ -1485,6 +1488,8 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -1485,6 +1488,8 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 1485 | 1488 | ||
| 1486 | var $required_attr = tAttrs["required"]; // 是否需要required验证 | 1489 | var $required_attr = tAttrs["required"]; // 是否需要required验证 |
| 1487 | 1490 | ||
| 1491 | + var $width_attr = tAttrs["width"]; // 宽度 | ||
| 1492 | + | ||
| 1488 | if (!$name_attr) { | 1493 | if (!$name_attr) { |
| 1489 | throw new Error("name属性必须填写"); | 1494 | throw new Error("name属性必须填写"); |
| 1490 | } | 1495 | } |
| @@ -1531,6 +1536,17 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -1531,6 +1536,17 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 1531 | // dom,span ng-bind属性设置,TODO:暂时无法用transclude设置,先用属性设置 | 1536 | // dom,span ng-bind属性设置,TODO:暂时无法用transclude设置,先用属性设置 |
| 1532 | tElem.find("ui-select-choices").html("{{" + $iterobjexp_attr + "}}"); | 1537 | tElem.find("ui-select-choices").html("{{" + $iterobjexp_attr + "}}"); |
| 1533 | 1538 | ||
| 1539 | + // 计算宽度 | ||
| 1540 | + if ($width_attr) { | ||
| 1541 | + var $button_t_b = 6; // 按钮的padding top bottom | ||
| 1542 | + var $button_l_r = 6; // 按钮的padding left right | ||
| 1543 | + var $select_width = $width_attr - $button_l_r * 2; // select的width | ||
| 1544 | + tElem.find("ui-select").attr("style", | ||
| 1545 | + "width: " + $select_width + "px!important;" + | ||
| 1546 | + "white-space: nowrap; overflow: hidden;"); | ||
| 1547 | + tElem.find("button").attr("style", "padding: " + $button_t_b + "px " + $button_l_r + "px;"); | ||
| 1548 | + } | ||
| 1549 | + | ||
| 1534 | 1550 | ||
| 1535 | // 当前的数据模式,ajax,dic,local | 1551 | // 当前的数据模式,ajax,dic,local |
| 1536 | var dataModelType = undefined; | 1552 | var dataModelType = undefined; |
| @@ -1777,7 +1793,7 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -1777,7 +1793,7 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 1777 | */ | 1793 | */ |
| 1778 | scope[ctrlAs].$$internal_dic_data = function(dictype) { | 1794 | scope[ctrlAs].$$internal_dic_data = function(dictype) { |
| 1779 | if (!dictionaryUtils.getByGroup(dictype)) { | 1795 | if (!dictionaryUtils.getByGroup(dictype)) { |
| 1780 | - throw new error(i18n('txt-1275', [dictype])); | 1796 | + throw new error(translate.instant("saSelect5_js_line375_txt-1275") + dictype); |
| 1781 | } | 1797 | } |
| 1782 | 1798 | ||
| 1783 | // 重新创建内部保存的数据 | 1799 | // 重新创建内部保存的数据 |
| @@ -1931,149 +1947,150 @@ angular.module('ScheduleApp').directive('saSelect5', [ | @@ -1931,149 +1947,150 @@ angular.module('ScheduleApp').directive('saSelect5', [ | ||
| 1931 | }; | 1947 | }; |
| 1932 | } | 1948 | } |
| 1933 | ]); | 1949 | ]); |
| 1934 | -/** | ||
| 1935 | - * mySelect指令,封装uiselect指令,封装内部数据获取,只支持单选 | ||
| 1936 | - * cm(必须):绑定外部对象,因为关联的字段不只一个,单独使用ngModel不够 | ||
| 1937 | - * cmoptions(必须):描述绑定的逻辑配置对象,格式如下: | ||
| 1938 | - * | ||
| 1939 | - * // TODO: | ||
| 1940 | - */ | ||
| 1941 | -angular.module('ScheduleApp').directive('mySelect', [ | ||
| 1942 | - function() { | ||
| 1943 | - return { | ||
| 1944 | - restrict: 'E', | ||
| 1945 | - template: '<div>bioxuxuan</div>', | ||
| 1946 | - require: 'ngModel', | ||
| 1947 | - compile: function(tElem, tAttrs) { | ||
| 1948 | - return { | ||
| 1949 | - pre: function(scope, element, attr) { | ||
| 1950 | 1950 | ||
| 1951 | - }, | ||
| 1952 | - post: function(scope, element, attr, ngModelCtr) { | ||
| 1953 | - // model -> view | ||
| 1954 | - ngModelCtr.$formatters.push(function(modelValue) { | ||
| 1955 | - // 监控model的变化 | ||
| 1956 | - if (typeof modelValue != "undefined") { | ||
| 1957 | - console.log(modelValue); | ||
| 1958 | - | ||
| 1959 | - return modelValue; | ||
| 1960 | - } | ||
| 1961 | - }); | ||
| 1962 | - | ||
| 1963 | - ngModelCtr.$render = function() { | ||
| 1964 | - if (typeof scope.ctrl.say != "undefined") { | ||
| 1965 | - element.find('div').css('color', 'red'); | ||
| 1966 | - } | ||
| 1967 | - }; | ||
| 1968 | - | ||
| 1969 | - ngModelCtr.$setViewValue("init value"); | ||
| 1970 | - | ||
| 1971 | - | ||
| 1972 | - } | ||
| 1973 | - } | ||
| 1974 | - } | ||
| 1975 | - } | ||
| 1976 | - } | 1951 | +/** |
| 1952 | + * mySelect指令,封装uiselect指令,封装内部数据获取,只支持单选 | ||
| 1953 | + * cm(必须):绑定外部对象,因为关联的字段不只一个,单独使用ngModel不够 | ||
| 1954 | + * cmoptions(必须):描述绑定的逻辑配置对象,格式如下: | ||
| 1955 | + * | ||
| 1956 | + * // TODO: | ||
| 1957 | + */ | ||
| 1958 | +angular.module('ScheduleApp').directive('mySelect', [ | ||
| 1959 | + function() { | ||
| 1960 | + return { | ||
| 1961 | + restrict: 'E', | ||
| 1962 | + template: '<div>bioxuxuan</div>', | ||
| 1963 | + require: 'ngModel', | ||
| 1964 | + compile: function(tElem, tAttrs) { | ||
| 1965 | + return { | ||
| 1966 | + pre: function(scope, element, attr) { | ||
| 1967 | + | ||
| 1968 | + }, | ||
| 1969 | + post: function(scope, element, attr, ngModelCtr) { | ||
| 1970 | + // model -> view | ||
| 1971 | + ngModelCtr.$formatters.push(function(modelValue) { | ||
| 1972 | + // 监控model的变化 | ||
| 1973 | + if (typeof modelValue != "undefined") { | ||
| 1974 | + console.log(modelValue); | ||
| 1975 | + | ||
| 1976 | + return modelValue; | ||
| 1977 | + } | ||
| 1978 | + }); | ||
| 1979 | + | ||
| 1980 | + ngModelCtr.$render = function() { | ||
| 1981 | + if (typeof scope.ctrl.say != "undefined") { | ||
| 1982 | + element.find('div').css('color', 'red'); | ||
| 1983 | + } | ||
| 1984 | + }; | ||
| 1985 | + | ||
| 1986 | + ngModelCtr.$setViewValue("init value"); | ||
| 1987 | + | ||
| 1988 | + | ||
| 1989 | + } | ||
| 1990 | + } | ||
| 1991 | + } | ||
| 1992 | + } | ||
| 1993 | + } | ||
| 1977 | ]); | 1994 | ]); |
| 1978 | - | ||
| 1979 | -/** | ||
| 1980 | - * saRadiogroup指令 | ||
| 1981 | - * 属性如下: | ||
| 1982 | - * model(必须):独立作用域,外部绑定的一个值,如:ctrl.timeTableManageForForm.isEnableDisTemplate | ||
| 1983 | - * dicgroup(必须):关联的字典数据type(TODO:以后增加其他数据源) | ||
| 1984 | - * name(必须):控件的名字 | ||
| 1985 | - * required(可选):是否要用required验证 | ||
| 1986 | - * disabled(可选):标示单选框是否可选 | ||
| 1987 | - * | ||
| 1988 | - */ | ||
| 1989 | -angular.module('ScheduleApp').directive("saRadiogroup", [function() { | ||
| 1990 | - /** | ||
| 1991 | - * 使用字典数据的单选按钮组的指令。 | ||
| 1992 | - * 指令名称:truefalse-Dic | ||
| 1993 | - */ | ||
| 1994 | - return { | ||
| 1995 | - restrict: 'E', | ||
| 1996 | - templateUrl: '/pages/scheduleApp/module/common/dts1/radioButton/saRadiogroupTemplate.html', | ||
| 1997 | - scope: { | ||
| 1998 | - model: "=" | ||
| 1999 | - }, | ||
| 2000 | - controllerAs: "$saRadiogroupCtrl", | ||
| 2001 | - bindToController: true, | ||
| 2002 | - controller: function($scope) { | ||
| 2003 | - //$scope["model"] = {selectedOption: null}; | ||
| 2004 | - //console.log("controller"); | ||
| 2005 | - //console.log("controller:" + $scope["model"]); | ||
| 2006 | - | ||
| 2007 | - var self = this; | ||
| 2008 | - self.$$data = null; // 内部数据 | ||
| 2009 | - }, | ||
| 2010 | - | ||
| 2011 | - /** | ||
| 2012 | - * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2013 | - * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2014 | - * @param tElem | ||
| 2015 | - * @param tAttrs | ||
| 2016 | - * @returns {{pre: Function, post: Function}} | ||
| 2017 | - */ | ||
| 2018 | - compile: function(tElem, tAttrs) { | ||
| 2019 | - // 获取属性 | ||
| 2020 | - var $dicgroup_attr = tAttrs["dicgroup"]; // 关联的字典数据type | ||
| 2021 | - var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2022 | - var $required_attr = tAttrs["required"]; // 是否要用required验证 | ||
| 2023 | - var $disabled_attr = tAttrs["disabled"]; // 标示单选框是否可选 | ||
| 2024 | - | ||
| 2025 | - // controlAs名字 | ||
| 2026 | - var ctrlAs = "$saRadiogroupCtrl"; | ||
| 2027 | - | ||
| 2028 | - // 如果有required属性,添加angularjs required验证 | ||
| 2029 | - if ($required_attr != undefined) { | ||
| 2030 | - tElem.find("input").attr("required", ""); | ||
| 2031 | - } | ||
| 2032 | - | ||
| 2033 | - return { | ||
| 2034 | - pre: function(scope, element, attr) { | ||
| 2035 | - | ||
| 2036 | - }, | ||
| 2037 | - | ||
| 2038 | - /** | ||
| 2039 | - * 相当于link函数。 | ||
| 2040 | - * @param scope | ||
| 2041 | - * @param element | ||
| 2042 | - * @param attr | ||
| 2043 | - */ | ||
| 2044 | - post: function(scope, element, attr) { | ||
| 2045 | - //console.log("link"); | ||
| 2046 | - //console.log("link:" + scope.model); | ||
| 2047 | - //scope["model"] = {selectedOption: null}; | ||
| 2048 | - | ||
| 2049 | - if ($name_attr) { | ||
| 2050 | - scope[ctrlAs].nv = $name_attr; | ||
| 2051 | - } | ||
| 2052 | - | ||
| 2053 | - if ($disabled_attr) { | ||
| 2054 | - scope[ctrlAs].disabled = true; | ||
| 2055 | - } | ||
| 2056 | - if ($dicgroup_attr) { | ||
| 2057 | - var obj = dictionaryUtils.getByGroup($dicgroup_attr); | ||
| 2058 | - scope[ctrlAs].$$data = obj; | ||
| 2059 | - // 处理 scope["dic"] key值 | ||
| 2060 | - scope[ctrlAs].dicvalueCalcu = function(value) { | ||
| 2061 | - if (value == "true") { | ||
| 2062 | - //console.log(value); | ||
| 2063 | - return true; | ||
| 2064 | - } else if (value == "false") { | ||
| 2065 | - //console.log(value); | ||
| 2066 | - return false; | ||
| 2067 | - } else { | ||
| 2068 | - return value; | ||
| 2069 | - } | ||
| 2070 | - }; | ||
| 2071 | - } | ||
| 2072 | - } | ||
| 2073 | - }; | ||
| 2074 | - } | ||
| 2075 | - }; | ||
| 2076 | -}]); | 1995 | + |
| 1996 | +/** | ||
| 1997 | + * saRadiogroup指令 | ||
| 1998 | + * 属性如下: | ||
| 1999 | + * model(必须):独立作用域,外部绑定的一个值,如:ctrl.timeTableManageForForm.isEnableDisTemplate | ||
| 2000 | + * dicgroup(必须):关联的字典数据type(TODO:以后增加其他数据源) | ||
| 2001 | + * name(必须):控件的名字 | ||
| 2002 | + * required(可选):是否要用required验证 | ||
| 2003 | + * disabled(可选):标示单选框是否可选 | ||
| 2004 | + * | ||
| 2005 | + */ | ||
| 2006 | +angular.module('ScheduleApp').directive("saRadiogroup", [function() { | ||
| 2007 | + /** | ||
| 2008 | + * 使用字典数据的单选按钮组的指令。 | ||
| 2009 | + * 指令名称:truefalse-Dic | ||
| 2010 | + */ | ||
| 2011 | + return { | ||
| 2012 | + restrict: 'E', | ||
| 2013 | + templateUrl: '/pages/scheduleApp/module/common/dts1/radioButton/saRadiogroupTemplate.html', | ||
| 2014 | + scope: { | ||
| 2015 | + model: "=" | ||
| 2016 | + }, | ||
| 2017 | + controllerAs: "$saRadiogroupCtrl", | ||
| 2018 | + bindToController: true, | ||
| 2019 | + controller: function($scope) { | ||
| 2020 | + //$scope["model"] = {selectedOption: null}; | ||
| 2021 | + //console.log("controller"); | ||
| 2022 | + //console.log("controller:" + $scope["model"]); | ||
| 2023 | + | ||
| 2024 | + var self = this; | ||
| 2025 | + self.$$data = null; // 内部数据 | ||
| 2026 | + }, | ||
| 2027 | + | ||
| 2028 | + /** | ||
| 2029 | + * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2030 | + * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2031 | + * @param tElem | ||
| 2032 | + * @param tAttrs | ||
| 2033 | + * @returns {{pre: Function, post: Function}} | ||
| 2034 | + */ | ||
| 2035 | + compile: function(tElem, tAttrs) { | ||
| 2036 | + // 获取属性 | ||
| 2037 | + var $dicgroup_attr = tAttrs["dicgroup"]; // 关联的字典数据type | ||
| 2038 | + var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2039 | + var $required_attr = tAttrs["required"]; // 是否要用required验证 | ||
| 2040 | + var $disabled_attr = tAttrs["disabled"]; // 标示单选框是否可选 | ||
| 2041 | + | ||
| 2042 | + // controlAs名字 | ||
| 2043 | + var ctrlAs = "$saRadiogroupCtrl"; | ||
| 2044 | + | ||
| 2045 | + // 如果有required属性,添加angularjs required验证 | ||
| 2046 | + if ($required_attr != undefined) { | ||
| 2047 | + tElem.find("input").attr("required", ""); | ||
| 2048 | + } | ||
| 2049 | + | ||
| 2050 | + return { | ||
| 2051 | + pre: function(scope, element, attr) { | ||
| 2052 | + | ||
| 2053 | + }, | ||
| 2054 | + | ||
| 2055 | + /** | ||
| 2056 | + * 相当于link函数。 | ||
| 2057 | + * @param scope | ||
| 2058 | + * @param element | ||
| 2059 | + * @param attr | ||
| 2060 | + */ | ||
| 2061 | + post: function(scope, element, attr) { | ||
| 2062 | + //console.log("link"); | ||
| 2063 | + //console.log("link:" + scope.model); | ||
| 2064 | + //scope["model"] = {selectedOption: null}; | ||
| 2065 | + | ||
| 2066 | + if ($name_attr) { | ||
| 2067 | + scope[ctrlAs].nv = $name_attr; | ||
| 2068 | + } | ||
| 2069 | + | ||
| 2070 | + if ($disabled_attr) { | ||
| 2071 | + scope[ctrlAs].disabled = true; | ||
| 2072 | + } | ||
| 2073 | + if ($dicgroup_attr) { | ||
| 2074 | + var obj = dictionaryUtils.getByGroup($dicgroup_attr); | ||
| 2075 | + scope[ctrlAs].$$data = obj; | ||
| 2076 | + // 处理 scope["dic"] key值 | ||
| 2077 | + scope[ctrlAs].dicvalueCalcu = function(value) { | ||
| 2078 | + if (value == "true") { | ||
| 2079 | + //console.log(value); | ||
| 2080 | + return true; | ||
| 2081 | + } else if (value == "false") { | ||
| 2082 | + //console.log(value); | ||
| 2083 | + return false; | ||
| 2084 | + } else { | ||
| 2085 | + return value; | ||
| 2086 | + } | ||
| 2087 | + }; | ||
| 2088 | + } | ||
| 2089 | + } | ||
| 2090 | + }; | ||
| 2091 | + } | ||
| 2092 | + }; | ||
| 2093 | +}]); | ||
| 2077 | 2094 | ||
| 2078 | 2095 | ||
| 2079 | 2096 | ||
| @@ -2236,387 +2253,387 @@ angular.module('ScheduleApp').directive('saCheckboxgroup', [ | @@ -2236,387 +2253,387 @@ angular.module('ScheduleApp').directive('saCheckboxgroup', [ | ||
| 2236 | ]); | 2253 | ]); |
| 2237 | 2254 | ||
| 2238 | 2255 | ||
| 2256 | + | ||
| 2257 | + | ||
| 2258 | +/** | ||
| 2259 | + * saDategroup指令 | ||
| 2260 | + * 属性如下: | ||
| 2261 | + * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2262 | + * dcvalue(必须):绑定的model字段值,如:dcvalue={{ctrl.employeeInfoForSave.xl.id}} | ||
| 2263 | + * dcname(必须):绑定的model字段名,如:dcname=xl.id | ||
| 2264 | + * name(必须):控件的名字 | ||
| 2265 | + * required(可选):是否要用required验证 | ||
| 2266 | + * disabled(可选):标示框是否可选 | ||
| 2267 | + * | ||
| 2268 | + */ | ||
| 2269 | +angular.module('ScheduleApp').directive('saDategroup', [ | ||
| 2270 | + '$filter', | ||
| 2271 | + function($filter) { | ||
| 2272 | + return { | ||
| 2273 | + restrict: 'E', | ||
| 2274 | + templateUrl: '/pages/scheduleApp/module/common/dts2/dateGroup/saDategroupTemplate.html', | ||
| 2275 | + scope: { | ||
| 2276 | + model: "=" // 独立作用域,关联外部的模型object | ||
| 2277 | + }, | ||
| 2278 | + controllerAs: "$saDategroupCtrl", | ||
| 2279 | + bindToController: true, | ||
| 2280 | + controller: function($scope) { | ||
| 2281 | + var self = this; | ||
| 2282 | + self.$$data = []; // 内部的数据 | ||
| 2283 | + self.$$date_select; // 内部选中的日期 | ||
| 2284 | + | ||
| 2285 | + //// 测试数据 | ||
| 2286 | + //self.$$data = [ | ||
| 2287 | + // {datestr: '2011-01-01', ischecked: true}, | ||
| 2288 | + // {datestr: '2011-01-01', ischecked: true}, | ||
| 2289 | + // {datestr: '2011-01-01', ischecked: true} | ||
| 2290 | + //]; | ||
| 2291 | + }, | ||
| 2292 | + | ||
| 2293 | + /** | ||
| 2294 | + * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2295 | + * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2296 | + * @param tElem | ||
| 2297 | + * @param tAttrs | ||
| 2298 | + * @returns {{pre: Function, post: Function}} | ||
| 2299 | + */ | ||
| 2300 | + compile: function(tElem, tAttrs) { | ||
| 2301 | + // 获取所有的属性 | ||
| 2302 | + var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2303 | + var $required_attr = tAttrs["required"]; // 是否需要required验证 | ||
| 2304 | + var $disabled_attr = tAttrs["disabled"]; // 是否禁用 | ||
| 2305 | + var $dcname_attr = tAttrs["dcname"]; // 绑定的model字段名 | ||
| 2306 | + | ||
| 2307 | + // controlAs名字 | ||
| 2308 | + var ctrlAs = '$saDategroupCtrl'; | ||
| 2309 | + | ||
| 2310 | + // 如果有required属性,添加angularjs required验证 | ||
| 2311 | + if ($required_attr != undefined) { | ||
| 2312 | + //console.log(tElem.html()); | ||
| 2313 | + tElem.find("div").attr("required", ""); | ||
| 2314 | + } | ||
| 2315 | + // 如果有disabled属性,添加禁用标志 | ||
| 2316 | + if ($disabled_attr != undefined) { | ||
| 2317 | + tElem.find("input").attr("ng-disabled", "true"); | ||
| 2318 | + tElem.find("div").attr("ng-disabled", "true"); | ||
| 2319 | + } | ||
| 2320 | + | ||
| 2321 | + return { | ||
| 2322 | + pre: function (scope, element, attr) { | ||
| 2323 | + // TODO: | ||
| 2324 | + }, | ||
| 2325 | + /** | ||
| 2326 | + * 相当于link函数。 | ||
| 2327 | + * @param scope | ||
| 2328 | + * @param element | ||
| 2329 | + * @param attr | ||
| 2330 | + */ | ||
| 2331 | + post: function (scope, element, attr) { | ||
| 2332 | + // name属性 | ||
| 2333 | + if ($name_attr) { | ||
| 2334 | + scope[ctrlAs]["$name_attr"] = $name_attr; | ||
| 2335 | + } | ||
| 2336 | + | ||
| 2337 | + | ||
| 2338 | + // 日期open属性,及方法 | ||
| 2339 | + scope[ctrlAs].$$specialDateOpen = false; | ||
| 2340 | + scope[ctrlAs].$$specialDate_open = function() { | ||
| 2341 | + scope[ctrlAs].$$specialDateOpen = true; | ||
| 2342 | + }; | ||
| 2343 | + | ||
| 2344 | + // 监控选择的日期 | ||
| 2345 | + scope.$watch( | ||
| 2346 | + function() { | ||
| 2347 | + return scope[ctrlAs]['$$date_select']; | ||
| 2348 | + }, | ||
| 2349 | + function(newValue, oldValue) { | ||
| 2350 | + if (newValue) { | ||
| 2351 | + //console.log("saDategroup--->selectdate:" + newValue); | ||
| 2352 | + // 调用内置filter,转换日期到yyyy-MM-dd格式 | ||
| 2353 | + var text = $filter('date')(newValue, 'yyyy-MM-dd'); | ||
| 2354 | + var i; | ||
| 2355 | + var isexist = false; // 日期是否已经选择标识 | ||
| 2356 | + for (i = 0; i < scope[ctrlAs]["$$data"].length; i++) { | ||
| 2357 | + if (scope[ctrlAs]["$$data"][i].datestr == text) { | ||
| 2358 | + isexist = true; | ||
| 2359 | + break; | ||
| 2360 | + } | ||
| 2361 | + } | ||
| 2362 | + if (!isexist) { | ||
| 2363 | + scope[ctrlAs]["$$data"].push( | ||
| 2364 | + { | ||
| 2365 | + datestr: text, | ||
| 2366 | + ischecked: true | ||
| 2367 | + } | ||
| 2368 | + ); | ||
| 2369 | + } | ||
| 2370 | + | ||
| 2371 | + } | ||
| 2372 | + | ||
| 2373 | + } | ||
| 2374 | + ); | ||
| 2375 | + | ||
| 2376 | + /** | ||
| 2377 | + * 日期点击事件处理函数。 | ||
| 2378 | + * @param $index 索引 | ||
| 2379 | + */ | ||
| 2380 | + scope[ctrlAs].$$internal_datestr_click = function($index) { | ||
| 2381 | + scope[ctrlAs].$$data.splice($index, 1); | ||
| 2382 | + }; | ||
| 2383 | + | ||
| 2384 | + // 测试使用watch监控$$data的变化 | ||
| 2385 | + scope.$watch( | ||
| 2386 | + function() { | ||
| 2387 | + return scope[ctrlAs]['$$data']; | ||
| 2388 | + }, | ||
| 2389 | + function(newValue, oldValue) { | ||
| 2390 | + // 根据$$data生成对应的数据 | ||
| 2391 | + var special_days_arr = []; | ||
| 2392 | + var i; | ||
| 2393 | + for (i = 0; i < scope[ctrlAs]["$$data"].length; i++) { | ||
| 2394 | + special_days_arr.push(scope[ctrlAs]["$$data"][i].datestr); | ||
| 2395 | + } | ||
| 2396 | + | ||
| 2397 | + scope[ctrlAs].$$internalmodel = special_days_arr.join(","); | ||
| 2398 | + console.log("bbbbbbbb--->" + scope[ctrlAs].$$internalmodel); | ||
| 2399 | + | ||
| 2400 | + // 更新model | ||
| 2401 | + if ($dcname_attr) { | ||
| 2402 | + eval("scope[ctrlAs].model" + "." + $dcname_attr + " = special_days_arr.join(',');"); | ||
| 2403 | + } | ||
| 2404 | + }, | ||
| 2405 | + true | ||
| 2406 | + ); | ||
| 2407 | + | ||
| 2408 | + // 监控dcvalue model值变换 | ||
| 2409 | + attr.$observe("dcvalue", function(value) { | ||
| 2410 | + console.log("saDategroup 监控dc1 model值变换:" + value); | ||
| 2411 | + if (value) { | ||
| 2412 | + // 根据value值,修改$$data里的值 | ||
| 2413 | + var date_array = value.split(","); | ||
| 2414 | + var i; | ||
| 2415 | + scope[ctrlAs]["$$data"] = []; | ||
| 2416 | + for (i = 0; i < date_array.length; i++) { | ||
| 2417 | + scope[ctrlAs]["$$data"].push( | ||
| 2418 | + { | ||
| 2419 | + datestr: date_array[i], | ||
| 2420 | + ischecked: true | ||
| 2421 | + } | ||
| 2422 | + ); | ||
| 2423 | + } | ||
| 2424 | + | ||
| 2425 | + | ||
| 2426 | + | ||
| 2427 | + | ||
| 2428 | + | ||
| 2429 | + | ||
| 2430 | + | ||
| 2431 | + | ||
| 2432 | + | ||
| 2433 | + } | ||
| 2434 | + }); | ||
| 2435 | + | ||
| 2436 | + } | ||
| 2437 | + | ||
| 2438 | + }; | ||
| 2439 | + } | ||
| 2440 | + } | ||
| 2441 | + } | ||
| 2442 | +]); | ||
| 2443 | + | ||
| 2444 | + | ||
| 2445 | +/** | ||
| 2446 | + * saFbgsgroup指令 | ||
| 2447 | + * 属性如下: | ||
| 2448 | + * name(必须):控件的名字 | ||
| 2449 | + * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2450 | + * fbgsvalue(必须):绑定的model翻班格式值,如:fbgsvalue={{ctrl.employeeInfoForSave.fbgs}} | ||
| 2451 | + * fbgsname(必须):绑定的model翻班格式字段名,如:fbgsname=fbgs | ||
| 2452 | + * | ||
| 2453 | + * required(可选):是否要用required验证 | ||
| 2454 | + * | ||
| 2455 | + */ | ||
| 2456 | +angular.module('ScheduleApp').directive( | ||
| 2457 | + 'saFbgsgroup', | ||
| 2458 | + [ | ||
| 2459 | + function() { | ||
| 2460 | + return { | ||
| 2461 | + restrict: 'E', | ||
| 2462 | + templateUrl: '/pages/scheduleApp/module/common/dts2/fbgsGroup/saFbgsgroupTemplate.html', | ||
| 2463 | + scope: { | ||
| 2464 | + model: "=" // 独立作用域,关联外部的模型object | ||
| 2465 | + }, | ||
| 2466 | + controllerAs: '$saFbgsgroupCtrl', | ||
| 2467 | + bindToController: true, | ||
| 2468 | + controller: function() { | ||
| 2469 | + var self = this; | ||
| 2470 | + | ||
| 2471 | + self.$$dataSelected = []; // 选中的路牌列表 | ||
| 2472 | + | ||
| 2473 | + // saFbgsgroup组件的ng-model,用于外部绑定等操作 | ||
| 2474 | + self.$$internalmodel = undefined; | ||
| 2475 | + }, | ||
| 2476 | + | ||
| 2477 | + /** | ||
| 2478 | + * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2479 | + * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2480 | + * @param tElem | ||
| 2481 | + * @param tAttrs | ||
| 2482 | + * @returns {{pre: Function, post: Function}} | ||
| 2483 | + */ | ||
| 2484 | + compile: function(tElem, tAttrs) { | ||
| 2485 | + // 获取所有属性 | ||
| 2486 | + var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2487 | + var $required_attr = tAttrs["required"]; // 是否需要required验证 | ||
| 2488 | + var $fbgsname_attr = tAttrs["fbgsname"]; // 绑定的model翻班格式字段名 | ||
| 2489 | + | ||
| 2490 | + // controlAs名字 | ||
| 2491 | + var ctrlAs = '$saFbgsgroupCtrl'; | ||
| 2492 | + | ||
| 2493 | + // 如果有required属性,添加angularjs required验证 | ||
| 2494 | + if ($required_attr != undefined) { | ||
| 2495 | + //console.log(tElem.html()); | ||
| 2496 | + tElem.find("div").attr("required", ""); | ||
| 2497 | + } | ||
| 2498 | + | ||
| 2499 | + return { | ||
| 2500 | + pre: function(scope, element, attr) { | ||
| 2501 | + | ||
| 2502 | + }, | ||
| 2503 | + | ||
| 2504 | + /** | ||
| 2505 | + * 相当于link函数。 | ||
| 2506 | + * @param scope | ||
| 2507 | + * @param element | ||
| 2508 | + * @param attr | ||
| 2509 | + */ | ||
| 2510 | + post: function(scope, element, attr) { | ||
| 2511 | + // name属性 | ||
| 2512 | + if ($name_attr) { | ||
| 2513 | + scope[ctrlAs]["$name_attr"] = $name_attr; | ||
| 2514 | + } | ||
| 2515 | + | ||
| 2516 | + /** | ||
| 2517 | + * 路牌列表点击(路牌列表中选中路牌) | ||
| 2518 | + * @param fbcode | ||
| 2519 | + */ | ||
| 2520 | + scope[ctrlAs].$$internal_fb_click = function(fbcode) { | ||
| 2521 | + scope[ctrlAs].$$dataSelected.push(fbcode); | ||
| 2522 | + }; | ||
| 2523 | + | ||
| 2524 | + /** | ||
| 2525 | + * 选中的路牌双击(删除选中的路牌) | ||
| 2526 | + * @param $index | ||
| 2527 | + */ | ||
| 2528 | + scope[ctrlAs].$$internal_sellplist_dbclick = function($index) { | ||
| 2529 | + scope[ctrlAs].$$dataSelected.splice($index, 1); | ||
| 2530 | + }; | ||
| 2531 | + | ||
| 2532 | + /** | ||
| 2533 | + * 验证内部数据,更新外部model | ||
| 2534 | + */ | ||
| 2535 | + scope[ctrlAs].$$internal_validate_model = function() { | ||
| 2536 | + var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2537 | + | ||
| 2538 | + if (data_temp && | ||
| 2539 | + data_temp.length > 0) { | ||
| 2540 | + | ||
| 2541 | + // 更新内部model,用于外部验证 | ||
| 2542 | + // 内部model的值暂时随意,以后再改 | ||
| 2543 | + scope[ctrlAs].$$internalmodel = {desc: "ok"}; | ||
| 2544 | + | ||
| 2545 | + // 更新外部model字段 | ||
| 2546 | + if ($fbgsname_attr) { | ||
| 2547 | + console.log("$fbgsname=" + data_temp.join(',')); | ||
| 2548 | + eval("scope[ctrlAs].model" + "." + $fbgsname_attr + " = data_temp.join(',');"); | ||
| 2549 | + } | ||
| 2550 | + | ||
| 2551 | + } else { | ||
| 2552 | + scope[ctrlAs].$$internalmodel = undefined; | ||
| 2553 | + } | ||
| 2554 | + }; | ||
| 2555 | + | ||
| 2556 | + // 监控内部数据,$$data_selected 变化 | ||
| 2557 | + scope.$watch( | ||
| 2558 | + function() { | ||
| 2559 | + return scope[ctrlAs].$$dataSelected; | ||
| 2560 | + }, | ||
| 2561 | + function(newValue, oldValue) { | ||
| 2562 | + scope[ctrlAs].$$internal_validate_model(); | ||
| 2563 | + }, | ||
| 2564 | + true | ||
| 2565 | + ); | ||
| 2566 | + | ||
| 2567 | + // 监控路牌名称范围值的变化,处理初始化赋值 | ||
| 2568 | + attr.$observe("fbgsvalue", function(value) { | ||
| 2569 | + var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2570 | + | ||
| 2571 | + if (value && value != "" && data_temp && data_temp.length == 0) { // 初始创建 | ||
| 2572 | + var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2573 | + var fbgses = []; | ||
| 2574 | + var i = 0; | ||
| 2575 | + | ||
| 2576 | + // 分隔翻班格式 | ||
| 2577 | + if (value.indexOf(",") >= 0) { // 以逗号分隔,如 1,1,0,1 | ||
| 2578 | + fbgses = value.split(","); | ||
| 2579 | + } else { | ||
| 2580 | + for (i = 0; i < value.length; i++) { // 字符串形式,如 1101 | ||
| 2581 | + fbgses.push(value.substr(i, 1)); | ||
| 2582 | + } | ||
| 2583 | + } | ||
| 2584 | + | ||
| 2585 | + for (i = 0; i < fbgses.length; i++) { | ||
| 2586 | + if (fbgses[i] == "1" || fbgses[i] == "0") { | ||
| 2587 | + data_temp.push(fbgses[i]); | ||
| 2588 | + } | ||
| 2589 | + } | ||
| 2590 | + } | ||
| 2591 | + }); | ||
| 2592 | + } | ||
| 2593 | + }; | ||
| 2594 | + } | ||
| 2595 | + } | ||
| 2596 | + } | ||
| 2597 | + ]); | ||
| 2239 | 2598 | ||
| 2240 | 2599 | ||
| 2241 | /** | 2600 | /** |
| 2242 | - * saDategroup指令 | 2601 | + * saGuideboardgroup指令 |
| 2243 | * 属性如下: | 2602 | * 属性如下: |
| 2244 | - * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2245 | - * dcvalue(必须):绑定的model字段值,如:dcvalue={{ctrl.employeeInfoForSave.xl.id}} | ||
| 2246 | - * dcname(必须):绑定的model字段名,如:dcname=xl.id | ||
| 2247 | * name(必须):控件的名字 | 2603 | * name(必须):控件的名字 |
| 2604 | + * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2605 | + * xlidvalue(必须):绑定的model线路id值,如:xlidvalue={{ctrl.employeeInfoForSave.xl.id}} | ||
| 2606 | + * lprangevalue(必须):绑定的model路牌名字范围值,如:lprangevalue={{ctrl.employeeInfoForSave.lprange}} | ||
| 2607 | + * lprangename(必须):绑定的model路牌名字范围字段名,如:lprangename=lprange | ||
| 2608 | + * lpidrangevalue(必须):绑定的model路牌id范围值,如:lprangevalue={{ctrl.employeeInfoForSave.lprange}} | ||
| 2609 | + * lpidrangename(必须):绑定的model路牌id范围字段名,如:lprangename=lprange | ||
| 2610 | + * lpstartvalue(必须):绑定的model起始路牌值,如:lpstartvalue={{ctrl.employeeInfoForSave.lpstart}} | ||
| 2611 | + * lpstartname(必须):绑定的model起始路牌字段名,如:lpstartname=lpstart | ||
| 2612 | + * | ||
| 2248 | * required(可选):是否要用required验证 | 2613 | * required(可选):是否要用required验证 |
| 2249 | - * disabled(可选):标示框是否可选 | ||
| 2250 | * | 2614 | * |
| 2251 | */ | 2615 | */ |
| 2252 | -angular.module('ScheduleApp').directive('saDategroup', [ | ||
| 2253 | - '$filter', | ||
| 2254 | - function($filter) { | 2616 | +angular.module('ScheduleApp').directive('saGuideboardgroup', [ |
| 2617 | + 'GuideboardManageService_g', | ||
| 2618 | + function(guideboardManageService_g) { | ||
| 2255 | return { | 2619 | return { |
| 2256 | restrict: 'E', | 2620 | restrict: 'E', |
| 2257 | - templateUrl: '/pages/scheduleApp/module/common/dts2/dateGroup/saDategroupTemplate.html', | 2621 | + templateUrl: '/pages/scheduleApp/module/common/dts2/guideboardGroup/saGuideboardgroupTemplate.html', |
| 2258 | scope: { | 2622 | scope: { |
| 2259 | model: "=" // 独立作用域,关联外部的模型object | 2623 | model: "=" // 独立作用域,关联外部的模型object |
| 2260 | }, | 2624 | }, |
| 2261 | - controllerAs: "$saDategroupCtrl", | 2625 | + controllerAs: '$saGuideboardgroupCtrl', |
| 2262 | bindToController: true, | 2626 | bindToController: true, |
| 2263 | controller: function($scope) { | 2627 | controller: function($scope) { |
| 2264 | var self = this; | 2628 | var self = this; |
| 2265 | - self.$$data = []; // 内部的数据 | ||
| 2266 | - self.$$date_select; // 内部选中的日期 | 2629 | + self.$$dataReal = []; // 选择线路后,该线路的路牌数据 |
| 2630 | + self.$$data = []; // 页面最多显示10条,可以通过$$searchText筛选 | ||
| 2267 | 2631 | ||
| 2268 | - //// 测试数据 | 2632 | + // 测试数据 |
| 2269 | //self.$$data = [ | 2633 | //self.$$data = [ |
| 2270 | - // {datestr: '2011-01-01', ischecked: true}, | ||
| 2271 | - // {datestr: '2011-01-01', ischecked: true}, | ||
| 2272 | - // {datestr: '2011-01-01', ischecked: true} | ||
| 2273 | - //]; | ||
| 2274 | - }, | ||
| 2275 | - | ||
| 2276 | - /** | ||
| 2277 | - * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2278 | - * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2279 | - * @param tElem | ||
| 2280 | - * @param tAttrs | ||
| 2281 | - * @returns {{pre: Function, post: Function}} | ||
| 2282 | - */ | ||
| 2283 | - compile: function(tElem, tAttrs) { | ||
| 2284 | - // 获取所有的属性 | ||
| 2285 | - var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2286 | - var $required_attr = tAttrs["required"]; // 是否需要required验证 | ||
| 2287 | - var $disabled_attr = tAttrs["disabled"]; // 是否禁用 | ||
| 2288 | - var $dcname_attr = tAttrs["dcname"]; // 绑定的model字段名 | ||
| 2289 | - | ||
| 2290 | - // controlAs名字 | ||
| 2291 | - var ctrlAs = '$saDategroupCtrl'; | ||
| 2292 | - | ||
| 2293 | - // 如果有required属性,添加angularjs required验证 | ||
| 2294 | - if ($required_attr != undefined) { | ||
| 2295 | - //console.log(tElem.html()); | ||
| 2296 | - tElem.find("div").attr("required", ""); | ||
| 2297 | - } | ||
| 2298 | - // 如果有disabled属性,添加禁用标志 | ||
| 2299 | - if ($disabled_attr != undefined) { | ||
| 2300 | - tElem.find("input").attr("ng-disabled", "true"); | ||
| 2301 | - tElem.find("div").attr("ng-disabled", "true"); | ||
| 2302 | - } | ||
| 2303 | - | ||
| 2304 | - return { | ||
| 2305 | - pre: function (scope, element, attr) { | ||
| 2306 | - // TODO: | ||
| 2307 | - }, | ||
| 2308 | - /** | ||
| 2309 | - * 相当于link函数。 | ||
| 2310 | - * @param scope | ||
| 2311 | - * @param element | ||
| 2312 | - * @param attr | ||
| 2313 | - */ | ||
| 2314 | - post: function (scope, element, attr) { | ||
| 2315 | - // name属性 | ||
| 2316 | - if ($name_attr) { | ||
| 2317 | - scope[ctrlAs]["$name_attr"] = $name_attr; | ||
| 2318 | - } | ||
| 2319 | - | ||
| 2320 | - | ||
| 2321 | - // 日期open属性,及方法 | ||
| 2322 | - scope[ctrlAs].$$specialDateOpen = false; | ||
| 2323 | - scope[ctrlAs].$$specialDate_open = function() { | ||
| 2324 | - scope[ctrlAs].$$specialDateOpen = true; | ||
| 2325 | - }; | ||
| 2326 | - | ||
| 2327 | - // 监控选择的日期 | ||
| 2328 | - scope.$watch( | ||
| 2329 | - function() { | ||
| 2330 | - return scope[ctrlAs]['$$date_select']; | ||
| 2331 | - }, | ||
| 2332 | - function(newValue, oldValue) { | ||
| 2333 | - if (newValue) { | ||
| 2334 | - //console.log("saDategroup--->selectdate:" + newValue); | ||
| 2335 | - // 调用内置filter,转换日期到yyyy-MM-dd格式 | ||
| 2336 | - var text = $filter('date')(newValue, 'yyyy-MM-dd'); | ||
| 2337 | - var i; | ||
| 2338 | - var isexist = false; // 日期是否已经选择标识 | ||
| 2339 | - for (i = 0; i < scope[ctrlAs]["$$data"].length; i++) { | ||
| 2340 | - if (scope[ctrlAs]["$$data"][i].datestr == text) { | ||
| 2341 | - isexist = true; | ||
| 2342 | - break; | ||
| 2343 | - } | ||
| 2344 | - } | ||
| 2345 | - if (!isexist) { | ||
| 2346 | - scope[ctrlAs]["$$data"].push( | ||
| 2347 | - { | ||
| 2348 | - datestr: text, | ||
| 2349 | - ischecked: true | ||
| 2350 | - } | ||
| 2351 | - ); | ||
| 2352 | - } | ||
| 2353 | - | ||
| 2354 | - } | ||
| 2355 | - | ||
| 2356 | - } | ||
| 2357 | - ); | ||
| 2358 | - | ||
| 2359 | - /** | ||
| 2360 | - * 日期点击事件处理函数。 | ||
| 2361 | - * @param $index 索引 | ||
| 2362 | - */ | ||
| 2363 | - scope[ctrlAs].$$internal_datestr_click = function($index) { | ||
| 2364 | - scope[ctrlAs].$$data.splice($index, 1); | ||
| 2365 | - }; | ||
| 2366 | - | ||
| 2367 | - // 测试使用watch监控$$data的变化 | ||
| 2368 | - scope.$watch( | ||
| 2369 | - function() { | ||
| 2370 | - return scope[ctrlAs]['$$data']; | ||
| 2371 | - }, | ||
| 2372 | - function(newValue, oldValue) { | ||
| 2373 | - // 根据$$data生成对应的数据 | ||
| 2374 | - var special_days_arr = []; | ||
| 2375 | - var i; | ||
| 2376 | - for (i = 0; i < scope[ctrlAs]["$$data"].length; i++) { | ||
| 2377 | - special_days_arr.push(scope[ctrlAs]["$$data"][i].datestr); | ||
| 2378 | - } | ||
| 2379 | - | ||
| 2380 | - scope[ctrlAs].$$internalmodel = special_days_arr.join(","); | ||
| 2381 | - console.log("bbbbbbbb--->" + scope[ctrlAs].$$internalmodel); | ||
| 2382 | - | ||
| 2383 | - // 更新model | ||
| 2384 | - if ($dcname_attr) { | ||
| 2385 | - eval("scope[ctrlAs].model" + "." + $dcname_attr + " = special_days_arr.join(',');"); | ||
| 2386 | - } | ||
| 2387 | - }, | ||
| 2388 | - true | ||
| 2389 | - ); | ||
| 2390 | - | ||
| 2391 | - // 监控dcvalue model值变换 | ||
| 2392 | - attr.$observe("dcvalue", function(value) { | ||
| 2393 | - console.log("saDategroup 监控dc1 model值变换:" + value); | ||
| 2394 | - if (value) { | ||
| 2395 | - // 根据value值,修改$$data里的值 | ||
| 2396 | - var date_array = value.split(","); | ||
| 2397 | - var i; | ||
| 2398 | - scope[ctrlAs]["$$data"] = []; | ||
| 2399 | - for (i = 0; i < date_array.length; i++) { | ||
| 2400 | - scope[ctrlAs]["$$data"].push( | ||
| 2401 | - { | ||
| 2402 | - datestr: date_array[i], | ||
| 2403 | - ischecked: true | ||
| 2404 | - } | ||
| 2405 | - ); | ||
| 2406 | - } | ||
| 2407 | - | ||
| 2408 | - | ||
| 2409 | - | ||
| 2410 | - | ||
| 2411 | - | ||
| 2412 | - | ||
| 2413 | - | ||
| 2414 | - | ||
| 2415 | - | ||
| 2416 | - } | ||
| 2417 | - }); | ||
| 2418 | - | ||
| 2419 | - } | ||
| 2420 | - | ||
| 2421 | - }; | ||
| 2422 | - } | ||
| 2423 | - } | ||
| 2424 | - } | ||
| 2425 | -]); | ||
| 2426 | - | ||
| 2427 | - | ||
| 2428 | -/** | ||
| 2429 | - * saFbgsgroup指令 | ||
| 2430 | - * 属性如下: | ||
| 2431 | - * name(必须):控件的名字 | ||
| 2432 | - * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2433 | - * fbgsvalue(必须):绑定的model翻班格式值,如:fbgsvalue={{ctrl.employeeInfoForSave.fbgs}} | ||
| 2434 | - * fbgsname(必须):绑定的model翻班格式字段名,如:fbgsname=fbgs | ||
| 2435 | - * | ||
| 2436 | - * required(可选):是否要用required验证 | ||
| 2437 | - * | ||
| 2438 | - */ | ||
| 2439 | -angular.module('ScheduleApp').directive( | ||
| 2440 | - 'saFbgsgroup', | ||
| 2441 | - [ | ||
| 2442 | - function() { | ||
| 2443 | - return { | ||
| 2444 | - restrict: 'E', | ||
| 2445 | - templateUrl: '/pages/scheduleApp/module/common/dts2/fbgsGroup/saFbgsgroupTemplate.html', | ||
| 2446 | - scope: { | ||
| 2447 | - model: "=" // 独立作用域,关联外部的模型object | ||
| 2448 | - }, | ||
| 2449 | - controllerAs: '$saFbgsgroupCtrl', | ||
| 2450 | - bindToController: true, | ||
| 2451 | - controller: function() { | ||
| 2452 | - var self = this; | ||
| 2453 | - | ||
| 2454 | - self.$$dataSelected = []; // 选中的路牌列表 | ||
| 2455 | - | ||
| 2456 | - // saFbgsgroup组件的ng-model,用于外部绑定等操作 | ||
| 2457 | - self.$$internalmodel = undefined; | ||
| 2458 | - }, | ||
| 2459 | - | ||
| 2460 | - /** | ||
| 2461 | - * 此阶段可以改dom结构,此时angular还没扫描指令, | ||
| 2462 | - * 这里就可以动态添加其他angularjs的指令字符串,如required指令字符串。 | ||
| 2463 | - * @param tElem | ||
| 2464 | - * @param tAttrs | ||
| 2465 | - * @returns {{pre: Function, post: Function}} | ||
| 2466 | - */ | ||
| 2467 | - compile: function(tElem, tAttrs) { | ||
| 2468 | - // 获取所有属性 | ||
| 2469 | - var $name_attr = tAttrs["name"]; // 控件的名字 | ||
| 2470 | - var $required_attr = tAttrs["required"]; // 是否需要required验证 | ||
| 2471 | - var $fbgsname_attr = tAttrs["fbgsname"]; // 绑定的model翻班格式字段名 | ||
| 2472 | - | ||
| 2473 | - // controlAs名字 | ||
| 2474 | - var ctrlAs = '$saFbgsgroupCtrl'; | ||
| 2475 | - | ||
| 2476 | - // 如果有required属性,添加angularjs required验证 | ||
| 2477 | - if ($required_attr != undefined) { | ||
| 2478 | - //console.log(tElem.html()); | ||
| 2479 | - tElem.find("div").attr("required", ""); | ||
| 2480 | - } | ||
| 2481 | - | ||
| 2482 | - return { | ||
| 2483 | - pre: function(scope, element, attr) { | ||
| 2484 | - | ||
| 2485 | - }, | ||
| 2486 | - | ||
| 2487 | - /** | ||
| 2488 | - * 相当于link函数。 | ||
| 2489 | - * @param scope | ||
| 2490 | - * @param element | ||
| 2491 | - * @param attr | ||
| 2492 | - */ | ||
| 2493 | - post: function(scope, element, attr) { | ||
| 2494 | - // name属性 | ||
| 2495 | - if ($name_attr) { | ||
| 2496 | - scope[ctrlAs]["$name_attr"] = $name_attr; | ||
| 2497 | - } | ||
| 2498 | - | ||
| 2499 | - /** | ||
| 2500 | - * 路牌列表点击(路牌列表中选中路牌) | ||
| 2501 | - * @param fbcode | ||
| 2502 | - */ | ||
| 2503 | - scope[ctrlAs].$$internal_fb_click = function(fbcode) { | ||
| 2504 | - scope[ctrlAs].$$dataSelected.push(fbcode); | ||
| 2505 | - }; | ||
| 2506 | - | ||
| 2507 | - /** | ||
| 2508 | - * 选中的路牌双击(删除选中的路牌) | ||
| 2509 | - * @param $index | ||
| 2510 | - */ | ||
| 2511 | - scope[ctrlAs].$$internal_sellplist_dbclick = function($index) { | ||
| 2512 | - scope[ctrlAs].$$dataSelected.splice($index, 1); | ||
| 2513 | - }; | ||
| 2514 | - | ||
| 2515 | - /** | ||
| 2516 | - * 验证内部数据,更新外部model | ||
| 2517 | - */ | ||
| 2518 | - scope[ctrlAs].$$internal_validate_model = function() { | ||
| 2519 | - var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2520 | - | ||
| 2521 | - if (data_temp && | ||
| 2522 | - data_temp.length > 0) { | ||
| 2523 | - | ||
| 2524 | - // 更新内部model,用于外部验证 | ||
| 2525 | - // 内部model的值暂时随意,以后再改 | ||
| 2526 | - scope[ctrlAs].$$internalmodel = {desc: "ok"}; | ||
| 2527 | - | ||
| 2528 | - // 更新外部model字段 | ||
| 2529 | - if ($fbgsname_attr) { | ||
| 2530 | - console.log("$fbgsname=" + data_temp.join(',')); | ||
| 2531 | - eval("scope[ctrlAs].model" + "." + $fbgsname_attr + " = data_temp.join(',');"); | ||
| 2532 | - } | ||
| 2533 | - | ||
| 2534 | - } else { | ||
| 2535 | - scope[ctrlAs].$$internalmodel = undefined; | ||
| 2536 | - } | ||
| 2537 | - }; | ||
| 2538 | - | ||
| 2539 | - // 监控内部数据,$$data_selected 变化 | ||
| 2540 | - scope.$watch( | ||
| 2541 | - function() { | ||
| 2542 | - return scope[ctrlAs].$$dataSelected; | ||
| 2543 | - }, | ||
| 2544 | - function(newValue, oldValue) { | ||
| 2545 | - scope[ctrlAs].$$internal_validate_model(); | ||
| 2546 | - }, | ||
| 2547 | - true | ||
| 2548 | - ); | ||
| 2549 | - | ||
| 2550 | - // 监控路牌名称范围值的变化,处理初始化赋值 | ||
| 2551 | - attr.$observe("fbgsvalue", function(value) { | ||
| 2552 | - var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2553 | - | ||
| 2554 | - if (value && value != "" && data_temp && data_temp.length == 0) { // 初始创建 | ||
| 2555 | - var data_temp = scope[ctrlAs].$$dataSelected; | ||
| 2556 | - var fbgses = []; | ||
| 2557 | - var i = 0; | ||
| 2558 | - | ||
| 2559 | - // 分隔翻班格式 | ||
| 2560 | - if (value.indexOf(",") >= 0) { // 以逗号分隔,如 1,1,0,1 | ||
| 2561 | - fbgses = value.split(","); | ||
| 2562 | - } else { | ||
| 2563 | - for (i = 0; i < value.length; i++) { // 字符串形式,如 1101 | ||
| 2564 | - fbgses.push(value.substr(i, 1)); | ||
| 2565 | - } | ||
| 2566 | - } | ||
| 2567 | - | ||
| 2568 | - for (i = 0; i < fbgses.length; i++) { | ||
| 2569 | - if (fbgses[i] == "1" || fbgses[i] == "0") { | ||
| 2570 | - data_temp.push(fbgses[i]); | ||
| 2571 | - } | ||
| 2572 | - } | ||
| 2573 | - } | ||
| 2574 | - }); | ||
| 2575 | - } | ||
| 2576 | - }; | ||
| 2577 | - } | ||
| 2578 | - } | ||
| 2579 | - } | ||
| 2580 | - ]); | ||
| 2581 | - | ||
| 2582 | - | ||
| 2583 | -/** | ||
| 2584 | - * saGuideboardgroup指令 | ||
| 2585 | - * 属性如下: | ||
| 2586 | - * name(必须):控件的名字 | ||
| 2587 | - * model(必须):指定一个外部object,独立作用域,如:model=ctrl.employeeInfoForSave | ||
| 2588 | - * xlidvalue(必须):绑定的model线路id值,如:xlidvalue={{ctrl.employeeInfoForSave.xl.id}} | ||
| 2589 | - * lprangevalue(必须):绑定的model路牌名字范围值,如:lprangevalue={{ctrl.employeeInfoForSave.lprange}} | ||
| 2590 | - * lprangename(必须):绑定的model路牌名字范围字段名,如:lprangename=lprange | ||
| 2591 | - * lpidrangevalue(必须):绑定的model路牌id范围值,如:lprangevalue={{ctrl.employeeInfoForSave.lprange}} | ||
| 2592 | - * lpidrangename(必须):绑定的model路牌id范围字段名,如:lprangename=lprange | ||
| 2593 | - * lpstartvalue(必须):绑定的model起始路牌值,如:lpstartvalue={{ctrl.employeeInfoForSave.lpstart}} | ||
| 2594 | - * lpstartname(必须):绑定的model起始路牌字段名,如:lpstartname=lpstart | ||
| 2595 | - * | ||
| 2596 | - * required(可选):是否要用required验证 | ||
| 2597 | - * | ||
| 2598 | - */ | ||
| 2599 | -angular.module('ScheduleApp').directive('saGuideboardgroup', [ | ||
| 2600 | - 'GuideboardManageService_g', | ||
| 2601 | - function(guideboardManageService_g) { | ||
| 2602 | - return { | ||
| 2603 | - restrict: 'E', | ||
| 2604 | - templateUrl: '/pages/scheduleApp/module/common/dts2/guideboardGroup/saGuideboardgroupTemplate.html', | ||
| 2605 | - scope: { | ||
| 2606 | - model: "=" // 独立作用域,关联外部的模型object | ||
| 2607 | - }, | ||
| 2608 | - controllerAs: '$saGuideboardgroupCtrl', | ||
| 2609 | - bindToController: true, | ||
| 2610 | - controller: function($scope) { | ||
| 2611 | - var self = this; | ||
| 2612 | - self.$$dataReal = []; // 选择线路后,该线路的路牌数据 | ||
| 2613 | - self.$$data = []; // 页面最多显示10条,可以通过$$searchText筛选 | ||
| 2614 | - | ||
| 2615 | - // 测试数据 | ||
| 2616 | - //self.$$data = [ | ||
| 2617 | - // {lpid: 1, lpname: '路1', isstart: false}, | ||
| 2618 | - // {lpid: 2, lpname: '路2', isstart: true}, | ||
| 2619 | - // {lpid: 3, lpname: '路3', isstart: false} | 2634 | + // {lpid: 1, lpname: '路1', isstart: false}, |
| 2635 | + // {lpid: 2, lpname: '路2', isstart: true}, | ||
| 2636 | + // {lpid: 3, lpname: '路3', isstart: false} | ||
| 2620 | //]; | 2637 | //]; |
| 2621 | 2638 | ||
| 2622 | self.$$searchText = undefined; // 搜索值 | 2639 | self.$$searchText = undefined; // 搜索值 |
| @@ -4434,441 +4451,441 @@ angular.module('ScheduleApp').directive( | @@ -4434,441 +4451,441 @@ angular.module('ScheduleApp').directive( | ||
| 4434 | ] | 4451 | ] |
| 4435 | ); | 4452 | ); |
| 4436 | 4453 | ||
| 4454 | +/** | ||
| 4455 | + * saTimetablePreview指令,时刻表预览模式视图。 | ||
| 4456 | + */ | ||
| 4457 | +angular.module("ScheduleApp").directive( | ||
| 4458 | + "saTimetable2", | ||
| 4459 | + [ | ||
| 4460 | + '$timeout', | ||
| 4461 | + function($timeout) { | ||
| 4462 | + return { | ||
| 4463 | + restrict : 'E', | ||
| 4464 | + templateUrl : '/pages/scheduleApp/module/common/dts2/ttinfotable/saTimeTablePreViewTemplate.html', | ||
| 4465 | + scope : { // 独立作用域 | ||
| 4466 | + // 使用外部数据源,内部重新组合显示 | ||
| 4467 | + ds : "=ngModel" | ||
| 4468 | + }, | ||
| 4469 | + controllerAs : "$saTimeTablePreviewCtrl", | ||
| 4470 | + bindToController: true, | ||
| 4471 | + controller : function() { | ||
| 4472 | + var self = this; | ||
| 4473 | + | ||
| 4474 | + // 内部班次时刻模型 | ||
| 4475 | + self.internalBcModel = { | ||
| 4476 | + up_qdz_name : "", // 上行起点站名字 | ||
| 4477 | + down_qdz_name : "", // 下行起点站名字 | ||
| 4478 | + up_bc_list_asc : [], // 上行班次列表(按照发车时间升序) | ||
| 4479 | + down_bc_list_asc : [] // 下行班次列表(按照发车时间升序) | ||
| 4480 | + }; | ||
| 4481 | + | ||
| 4482 | + // 内部各个路牌block车次链模型 | ||
| 4483 | + self.internalLpBlockModel = { | ||
| 4484 | + // key:路牌名字 | ||
| 4485 | + // value: 数组(按照发车时间排序) | ||
| 4486 | + // value 数据内对象 {fcsj:发车时间,isUp:是否上行,fcno:发车顺序号,index:对应的班次列表索引} | ||
| 4487 | + }; | ||
| 4488 | + | ||
| 4489 | + // TODO: | ||
| 4490 | + }, | ||
| 4491 | + | ||
| 4492 | + /**, | ||
| 4493 | + * compile阶段,angular还没有编译模版,根据需要可以修改模版dom | ||
| 4494 | + * @param tElem | ||
| 4495 | + * @param tAttrs | ||
| 4496 | + * @returns {{pre: Function, post: Function}} | ||
| 4497 | + */ | ||
| 4498 | + compile : function(tElem, tAttrs) { | ||
| 4499 | + // 获取属性 | ||
| 4500 | + var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 4501 | + if (!$attr_name) { | ||
| 4502 | + throw new Error("saTimeTablePreview指令 name属性required"); | ||
| 4503 | + } | ||
| 4504 | + | ||
| 4505 | + // 内部controlAs名字 | ||
| 4506 | + var ctrlAs = "$saTimeTablePreviewCtrl"; | ||
| 4507 | + | ||
| 4508 | + // TODO: | ||
| 4509 | + | ||
| 4510 | + //------------------ 内部方法 --------------------// | ||
| 4511 | + var date_wrap_prefix = "2000-01-01 "; // 包装日期的前缀 | ||
| 4512 | + var date_wrap_format = "YYYY-MM-DD HH:mm"; // 日期格式 | ||
| 4513 | + /** | ||
| 4514 | + * 将时间包装成日期,方便计算。 | ||
| 4515 | + * @param timeStr 时间格式,如 06:30 | ||
| 4516 | + * @returns moment对象 | ||
| 4517 | + */ | ||
| 4518 | + var _fun_WrapTime = function(timeStr) { | ||
| 4519 | + return moment( | ||
| 4520 | + date_wrap_prefix + timeStr, | ||
| 4521 | + date_wrap_format | ||
| 4522 | + ); | ||
| 4523 | + }; | ||
| 4524 | + | ||
| 4525 | + /** | ||
| 4526 | + * 点击班次html元素(dl),触发班次移动,如下: | ||
| 4527 | + * 1、点击上行班次,下一个下行班次在下行班次列表中移到中间位置 | ||
| 4528 | + * 2、点击下行班次,下一个上行班次在上行班次列表中移到中间位置 | ||
| 4529 | + * @param ctrl 内部控制器 | ||
| 4530 | + * @param index 班次索引 | ||
| 4531 | + * @param isUp 是否上行 | ||
| 4532 | + * @private | ||
| 4533 | + */ | ||
| 4534 | + var _fun_bcDDViewMove = function(ctrl, index, isUp) { | ||
| 4535 | + // 获取当前点击班次对象 | ||
| 4536 | + var oBc; | ||
| 4537 | + if (isUp) { | ||
| 4538 | + oBc = ctrl.internalBcModel.up_bc_list_asc[index]; | ||
| 4539 | + } else { | ||
| 4540 | + oBc = ctrl.internalBcModel.down_bc_list_asc[index]; | ||
| 4541 | + } | ||
| 4542 | + | ||
| 4543 | + // 找出车次链中的下一个班次索引,没有就undefined | ||
| 4544 | + var nextIndex = undefined; | ||
| 4545 | + var nextBlockBc = undefined; | ||
| 4546 | + var currentBlockBcIndex = undefined; | ||
| 4547 | + angular.forEach(ctrl.internalLpBlockModel[oBc.lpName], function(data, i) { | ||
| 4548 | + if (data.fcsj == oBc.fcsj) { | ||
| 4549 | + currentBlockBcIndex = i; | ||
| 4550 | + } | ||
| 4551 | + }); | ||
| 4552 | + if (currentBlockBcIndex != undefined && | ||
| 4553 | + currentBlockBcIndex < (ctrl.internalLpBlockModel[oBc.lpName].length - 1)) { | ||
| 4554 | + nextBlockBc = ctrl.internalLpBlockModel[oBc.lpName][currentBlockBcIndex + 1]; | ||
| 4555 | + nextIndex = nextBlockBc.index; | ||
| 4556 | + } | ||
| 4557 | + // 先删除click标记,再添加 | ||
| 4558 | + angular.forEach(ctrl.internalBcModel.up_bc_list_asc, function(data) { | ||
| 4559 | + delete data["isClick"]; | ||
| 4560 | + }); | ||
| 4561 | + angular.forEach(ctrl.internalBcModel.down_bc_list_asc, function(data) { | ||
| 4562 | + delete data["isClick"]; | ||
| 4563 | + }); | ||
| 4564 | + oBc.isClick = true; | ||
| 4565 | + if (nextIndex) { | ||
| 4566 | + if (nextBlockBc.isUp) { | ||
| 4567 | + ctrl.internalBcModel.up_bc_list_asc[nextIndex].isClick = true; | ||
| 4568 | + } else { | ||
| 4569 | + ctrl.internalBcModel.down_bc_list_asc[nextIndex].isClick = true; | ||
| 4570 | + } | ||
| 4571 | + } | ||
| 4572 | + | ||
| 4573 | + // 移动,同方向不移动 | ||
| 4574 | + var clientHeight = angular.element("#temp").height() - 34; | ||
| 4575 | + if (nextBlockBc && isUp != nextBlockBc.isUp) { | ||
| 4576 | + if (isUp) { // 移动下行 | ||
| 4577 | + angular.element(".ttpv_table_scrollbar:eq(1)").animate( | ||
| 4578 | + {scrollTop : nextIndex * 30 - clientHeight / 2}, 400); | ||
| 4579 | + } else { // 移动上行 | ||
| 4580 | + angular.element(".ttpv_table_scrollbar:eq(0)").animate( | ||
| 4581 | + {scrollTop : nextIndex * 30 - clientHeight / 2}, 400); | ||
| 4582 | + } | ||
| 4583 | + } | ||
| 4584 | + | ||
| 4585 | + }; | ||
| 4586 | + | ||
| 4587 | + /** | ||
| 4588 | + * 刷新内部数据。 | ||
| 4589 | + * @param ctrl 内部控制器对象($saTimeTablePreviewCtrl) | ||
| 4590 | + * @private | ||
| 4591 | + */ | ||
| 4592 | + var _fun_refreshInternalModel = function(ctrl) { | ||
| 4593 | + // 初始化内部数据 | ||
| 4594 | + ctrl.internalBcModel = { | ||
| 4595 | + up_qdz_name : "", // 上行起点站名字 | ||
| 4596 | + up_zdz_name : "", // 上行终点站名字 | ||
| 4597 | + down_qdz_name : "", // 下行起点站名字 | ||
| 4598 | + down_zdz_name : "", // 下行终点站名字 | ||
| 4599 | + up_bc_list_asc : [], // 上行班次列表(按照发车时间升序) | ||
| 4600 | + down_bc_list_asc : [] // 下行班次列表(按照发车时间升序) | ||
| 4601 | + }; | ||
| 4602 | + ctrl.internalLpBlockModel = { | ||
| 4603 | + | ||
| 4604 | + }; | ||
| 4605 | + | ||
| 4606 | + // ngModel传入的数据 | ||
| 4607 | + var dataSource = ctrl.ds.bcList; | ||
| 4608 | + | ||
| 4609 | + // 构造上下行班次列表,并确定上下行的首发站点 | ||
| 4610 | + angular.forEach(dataSource, function(bcObj) { | ||
| 4611 | + var _internalBcObj = {}; | ||
| 4612 | + // 构造内部班次对象 | ||
| 4613 | + _internalBcObj.lpName = bcObj.lp.lpName; // 路牌 | ||
| 4614 | + _internalBcObj.fcsj = bcObj.fcsj; // 发车时间 | ||
| 4615 | + _internalBcObj.ddsj = _fun_WrapTime(bcObj.fcsj).add(bcObj.bcsj, "m").format("HH:mm"); | ||
| 4616 | + _internalBcObj.qdzName = bcObj.qdzName; // 起点站名字 | ||
| 4617 | + _internalBcObj.zdzName = bcObj.zdzName; // 终点站名字 | ||
| 4618 | + _internalBcObj.bcType = bcObj.bcType; // 班次类型 | ||
| 4619 | + _internalBcObj.isTs = bcObj.isTS; // 是否停驶 | ||
| 4620 | + _internalBcObj.isFb = bcObj.isFB; // 是否分班 | ||
| 4621 | + _internalBcObj.remark = bcObj.remark; // 备注 | ||
| 4622 | + _internalBcObj._fcno = bcObj.fcno; // 发车顺序号 | ||
| 4623 | + | ||
| 4624 | + if (bcObj.xlDir == "0") { // 上行 | ||
| 4625 | + ctrl.internalBcModel.up_bc_list_asc.push(_internalBcObj); | ||
| 4626 | + // 确定起点站 | ||
| 4627 | + if (ctrl.internalBcModel.up_qdz_name == "") { | ||
| 4628 | + if (bcObj.bcType == "normal") { | ||
| 4629 | + ctrl.internalBcModel.up_qdz_name = bcObj.qdzName; | ||
| 4630 | + } | ||
| 4631 | + } | ||
| 4632 | + // 确定终点站 | ||
| 4633 | + if (ctrl.internalBcModel.up_zdz_name == "") { | ||
| 4634 | + if (bcObj.bcType == "normal") { | ||
| 4635 | + ctrl.internalBcModel.up_zdz_name = bcObj.zdzName; | ||
| 4636 | + } | ||
| 4637 | + } | ||
| 4638 | + } | ||
| 4639 | + if (bcObj.xlDir == "1") { // 下行 | ||
| 4640 | + ctrl.internalBcModel.down_bc_list_asc.push(_internalBcObj); | ||
| 4641 | + // 确定起点站 | ||
| 4642 | + if (ctrl.internalBcModel.down_qdz_name == "") { | ||
| 4643 | + if (bcObj.bcType == "normal") { | ||
| 4644 | + ctrl.internalBcModel.down_qdz_name = bcObj.qdzName; | ||
| 4645 | + } | ||
| 4646 | + } | ||
| 4647 | + // 确定终点站 | ||
| 4648 | + if (ctrl.internalBcModel.down_zdz_name == "") { | ||
| 4649 | + if (bcObj.bcType == "normal") { | ||
| 4650 | + ctrl.internalBcModel.down_zdz_name = bcObj.zdzName; | ||
| 4651 | + } | ||
| 4652 | + } | ||
| 4653 | + } | ||
| 4654 | + | ||
| 4655 | + }); | ||
| 4656 | + | ||
| 4657 | + // 发车时间升序排序上行班次 | ||
| 4658 | + ctrl.internalBcModel.up_bc_list_asc.sort(function(a, b) { | ||
| 4659 | + var a_wrapTime = _fun_WrapTime(a.fcsj); | ||
| 4660 | + var b_wrapTime = _fun_WrapTime(b.fcsj); | ||
| 4661 | + | ||
| 4662 | + // 判定如果发车时间是以00,01,02,03开头的,说明是下一天凌晨的班次,需要加1天判定 | ||
| 4663 | + // TODO:以后要配合首班车的发车时间判定 | ||
| 4664 | + if (a.fcsj.indexOf("00:") == 0 || | ||
| 4665 | + a.fcsj.indexOf("01:") == 0 || | ||
| 4666 | + a.fcsj.indexOf("02:") == 0) { | ||
| 4667 | + a_wrapTime.add(1, "day"); | ||
| 4668 | + } | ||
| 4669 | + if (b.fcsj.indexOf("00:") == 0 || | ||
| 4670 | + b.fcsj.indexOf("01:") == 0 || | ||
| 4671 | + b.fcsj.indexOf("02:") == 0) { | ||
| 4672 | + b_wrapTime.add(1, "day"); | ||
| 4673 | + } | ||
| 4674 | + | ||
| 4675 | + if (a_wrapTime.isBefore(b_wrapTime)) { | ||
| 4676 | + return -1; | ||
| 4677 | + } else if (a_wrapTime.isAfter(b_wrapTime)) { | ||
| 4678 | + return 1; | ||
| 4679 | + } else { | ||
| 4680 | + return 0; | ||
| 4681 | + } | ||
| 4682 | + | ||
| 4683 | + }); | ||
| 4684 | + // 发车时间升序排序下行班次 | ||
| 4685 | + ctrl.internalBcModel.down_bc_list_asc.sort(function(a, b) { | ||
| 4686 | + var a_wrapTime = _fun_WrapTime(a.fcsj); | ||
| 4687 | + var b_wrapTime = _fun_WrapTime(b.fcsj); | ||
| 4688 | + | ||
| 4689 | + // 判定如果发车时间是以00,01,02,03开头的,说明是下一天凌晨的班次,需要加1天判定 | ||
| 4690 | + // TODO:以后要配合首班车的发车时间判定 | ||
| 4691 | + if (a.fcsj.indexOf("00:") == 0 || | ||
| 4692 | + a.fcsj.indexOf("01:") == 0 || | ||
| 4693 | + a.fcsj.indexOf("02:") == 0) { | ||
| 4694 | + a_wrapTime.add(1, "day"); | ||
| 4695 | + } | ||
| 4696 | + if (b.fcsj.indexOf("00:") == 0 || | ||
| 4697 | + b.fcsj.indexOf("01:") == 0 || | ||
| 4698 | + b.fcsj.indexOf("02:") == 0) { | ||
| 4699 | + b_wrapTime.add(1, "day"); | ||
| 4700 | + } | ||
| 4701 | + | ||
| 4702 | + if (a_wrapTime.isBefore(b_wrapTime)) { | ||
| 4703 | + return -1; | ||
| 4704 | + } else if (a_wrapTime.isAfter(b_wrapTime)) { | ||
| 4705 | + return 1; | ||
| 4706 | + } else { | ||
| 4707 | + return 0; | ||
| 4708 | + } | ||
| 4709 | + }); | ||
| 4710 | + | ||
| 4711 | + // 构造路牌block车次链,按照发车顺序排序 | ||
| 4712 | + angular.forEach(ctrl.internalBcModel.up_bc_list_asc, function(data, index) { | ||
| 4713 | + if (!ctrl.internalLpBlockModel[data.lpName]) { | ||
| 4714 | + ctrl.internalLpBlockModel[data.lpName] = []; | ||
| 4715 | + } | ||
| 4716 | + ctrl.internalLpBlockModel[data.lpName].push({ | ||
| 4717 | + fcsj : data.fcsj, | ||
| 4718 | + isUp : true, | ||
| 4719 | + fcno : data._fcno, | ||
| 4720 | + index : index | ||
| 4721 | + }); | ||
| 4722 | + }); | ||
| 4723 | + angular.forEach(ctrl.internalBcModel.down_bc_list_asc, function(data, index) { | ||
| 4724 | + if (!ctrl.internalLpBlockModel[data.lpName]) { | ||
| 4725 | + ctrl.internalLpBlockModel[data.lpName] = []; | ||
| 4726 | + } | ||
| 4727 | + ctrl.internalLpBlockModel[data.lpName].push({ | ||
| 4728 | + fcsj : data.fcsj, | ||
| 4729 | + isUp : false, | ||
| 4730 | + fcno : data._fcno, | ||
| 4731 | + index : index | ||
| 4732 | + }); | ||
| 4733 | + }); | ||
| 4734 | + angular.forEach(ctrl.internalLpBlockModel, function(value, key) { | ||
| 4735 | + value.sort(function (a, b) { | ||
| 4736 | + if (a.fcno < b.fcno) { | ||
| 4737 | + return -1; | ||
| 4738 | + } else if (a.fcno > b.fcno) { | ||
| 4739 | + return 1; | ||
| 4740 | + } else { | ||
| 4741 | + return 0; | ||
| 4742 | + } | ||
| 4743 | + }); | ||
| 4744 | + }); | ||
| 4745 | + | ||
| 4746 | + | ||
| 4747 | + }; | ||
| 4748 | + | ||
| 4749 | + return { | ||
| 4750 | + pre : function(scope, element, attr) { | ||
| 4751 | + // TODO: | ||
| 4752 | + }, | ||
| 4753 | + post : function(scope, element, attr) { | ||
| 4754 | + // 班次html点击事件 | ||
| 4755 | + scope[ctrlAs].$$bcDD_Click = function(index, xlDir) { | ||
| 4756 | + _fun_bcDDViewMove(scope[ctrlAs], index, xlDir); | ||
| 4757 | + }; | ||
| 4758 | + | ||
| 4759 | + // 监控ngModel绑定的外部数据源的刷新状态变化 | ||
| 4760 | + scope.$watch( | ||
| 4761 | + function() { | ||
| 4762 | + return scope[ctrlAs].ds.refreshInfos; | ||
| 4763 | + }, | ||
| 4764 | + function(newValue, oldValue) { | ||
| 4765 | + if (newValue === undefined && oldValue === undefined) { | ||
| 4766 | + return; | ||
| 4767 | + } | ||
| 4768 | + console.log("saTimetable2 refresh"); | ||
| 4769 | + _fun_refreshInternalModel(scope[ctrlAs]); | ||
| 4770 | + }, | ||
| 4771 | + true | ||
| 4772 | + ); | ||
| 4773 | + } | ||
| 4774 | + }; | ||
| 4775 | + } | ||
| 4776 | + }; | ||
| 4777 | + } | ||
| 4778 | + ] | ||
| 4779 | +); | ||
| 4780 | +/** | ||
| 4781 | + * 滚动事件控制指令。 | ||
| 4782 | + */ | ||
| 4783 | +angular.module('ScheduleApp').directive( | ||
| 4784 | + 'saTscrolly1', | ||
| 4785 | + [ | ||
| 4786 | + function() { | ||
| 4787 | + return { | ||
| 4788 | + restrict: 'A', | ||
| 4789 | + | ||
| 4790 | + compile: function(tElem, tAttrs) { | ||
| 4791 | + | ||
| 4792 | + return { | ||
| 4793 | + pre: function(scope, element, attr) { | ||
| 4794 | + // TODO: | ||
| 4795 | + //alert(element.find("#tooltipTest").html()); | ||
| 4796 | + //$compile(element.find("#tooltipTest"))(scope); | ||
| 4797 | + | ||
| 4798 | + }, | ||
| 4799 | + | ||
| 4800 | + post: function(scope, element, attr) { | ||
| 4801 | + //var head = element[0]; | ||
| 4802 | + | ||
| 4803 | + //console.log("llllllllload"); | ||
| 4804 | + //console.log(element.name); | ||
| 4805 | + | ||
| 4806 | + element.bind('scroll', function() { | ||
| 4807 | + //console.log("top=", angular.element(".tt_table_head").css("top")); | ||
| 4808 | + //console.log("left=", angular.element(".tt_table_head").css("left")); | ||
| 4809 | + //console.log("s top=" + element.scrollTop()); | ||
| 4810 | + | ||
| 4811 | + angular.element(".tt_table_head").css("top", element.scrollTop()); | ||
| 4812 | + angular.element(".tt_table_head:eq(0)").css("left", element.scrollLeft()); | ||
| 4813 | + angular.element(".tt_table_body:eq(0)").css("left", element.scrollLeft()); | ||
| 4814 | + | ||
| 4815 | + }); | ||
| 4816 | + } | ||
| 4817 | + | ||
| 4818 | + }; | ||
| 4819 | + } | ||
| 4820 | + } | ||
| 4821 | + } | ||
| 4822 | + ] | ||
| 4823 | +); | ||
| 4824 | +/** | ||
| 4825 | + * 滚动事件控制指令。 | ||
| 4826 | + */ | ||
| 4827 | +angular.module('ScheduleApp').directive( | ||
| 4828 | + 'saTscrolly2', | ||
| 4829 | + [ | ||
| 4830 | + function() { | ||
| 4831 | + return { | ||
| 4832 | + restrict: 'A', | ||
| 4833 | + | ||
| 4834 | + compile: function(tElem, tAttrs) { | ||
| 4835 | + | ||
| 4836 | + return { | ||
| 4837 | + pre: function(scope, element, attr) { | ||
| 4838 | + // TODO: | ||
| 4839 | + //alert(element.find("#tooltipTest").html()); | ||
| 4840 | + //$compile(element.find("#tooltipTest"))(scope); | ||
| 4841 | + | ||
| 4842 | + }, | ||
| 4843 | + | ||
| 4844 | + post: function(scope, element, attr) { | ||
| 4845 | + //var head = element[0]; | ||
| 4846 | + | ||
| 4847 | + //console.log("llllllllload"); | ||
| 4848 | + //console.log(element.name); | ||
| 4849 | + | ||
| 4850 | + element.bind('scroll', function() { | ||
| 4851 | + //console.log("top=", angular.element(".tt_table_head").css("top")); | ||
| 4852 | + //console.log("left=", angular.element(".tt_table_head").css("left")); | ||
| 4853 | + //console.log("s top=" + element.scrollTop()); | ||
| 4854 | + | ||
| 4855 | + angular.element(attr.scrclass).css("top", element.scrollTop()); | ||
| 4856 | + // angular.element(".tt_table_head:eq(0)").css("left", element.scrollLeft()); | ||
| 4857 | + // angular.element(".tt_table_body:eq(0)").css("left", element.scrollLeft()); | ||
| 4858 | + | ||
| 4859 | + }); | ||
| 4860 | + } | ||
| 4861 | + | ||
| 4862 | + }; | ||
| 4863 | + } | ||
| 4864 | + } | ||
| 4865 | + } | ||
| 4866 | + ] | ||
| 4867 | +); | ||
| 4437 | /** | 4868 | /** |
| 4438 | - * saTimetablePreview指令,时刻表预览模式视图。 | 4869 | + * saOrderoption指令,搜索时的排序选项(在搜索时可以使用,通用的) |
| 4870 | + * 属性如下: | ||
| 4871 | + * name(必须):控件的名字 | ||
| 4872 | + * columns(必须,独立作用域):字段名字列表,格式:[{name:[字段名],desc:[字段描述]}...] | ||
| 4873 | + * ordercolumns(必须,独立作用域):字段排序列表,格式:{order: '字段1,字段2',direction: 'ASC,DESC'} | ||
| 4439 | */ | 4874 | */ |
| 4440 | -angular.module("ScheduleApp").directive( | ||
| 4441 | - "saTimetable2", | 4875 | +angular.module('ScheduleApp').directive( |
| 4876 | + 'saOrderoption', | ||
| 4442 | [ | 4877 | [ |
| 4443 | - '$timeout', | ||
| 4444 | - function($timeout) { | 4878 | + function() { |
| 4445 | return { | 4879 | return { |
| 4446 | - restrict : 'E', | ||
| 4447 | - templateUrl : '/pages/scheduleApp/module/common/dts2/ttinfotable/saTimeTablePreViewTemplate.html', | ||
| 4448 | - scope : { // 独立作用域 | ||
| 4449 | - // 使用外部数据源,内部重新组合显示 | ||
| 4450 | - ds : "=ngModel" | 4880 | + restrict: 'E', |
| 4881 | + templateUrl: '/pages/scheduleApp/module/common/dts2/queryOption/saOrderOptionTemplate.html', | ||
| 4882 | + scope: { | ||
| 4883 | + columns: '=', | ||
| 4884 | + ordercolumns: '=' | ||
| 4451 | }, | 4885 | }, |
| 4452 | - controllerAs : "$saTimeTablePreviewCtrl", | 4886 | + controllerAs: '$saOrderOptionCtrl', |
| 4453 | bindToController: true, | 4887 | bindToController: true, |
| 4454 | - controller : function() { | ||
| 4455 | - var self = this; | ||
| 4456 | - | ||
| 4457 | - // 内部班次时刻模型 | ||
| 4458 | - self.internalBcModel = { | ||
| 4459 | - up_qdz_name : "", // 上行起点站名字 | ||
| 4460 | - down_qdz_name : "", // 下行起点站名字 | ||
| 4461 | - up_bc_list_asc : [], // 上行班次列表(按照发车时间升序) | ||
| 4462 | - down_bc_list_asc : [] // 下行班次列表(按照发车时间升序) | ||
| 4463 | - }; | ||
| 4464 | - | ||
| 4465 | - // 内部各个路牌block车次链模型 | ||
| 4466 | - self.internalLpBlockModel = { | ||
| 4467 | - // key:路牌名字 | ||
| 4468 | - // value: 数组(按照发车时间排序) | ||
| 4469 | - // value 数据内对象 {fcsj:发车时间,isUp:是否上行,fcno:发车顺序号,index:对应的班次列表索引} | ||
| 4470 | - }; | ||
| 4471 | - | ||
| 4472 | - // TODO: | ||
| 4473 | - }, | ||
| 4474 | - | ||
| 4475 | - /**, | ||
| 4476 | - * compile阶段,angular还没有编译模版,根据需要可以修改模版dom | ||
| 4477 | - * @param tElem | ||
| 4478 | - * @param tAttrs | ||
| 4479 | - * @returns {{pre: Function, post: Function}} | ||
| 4480 | - */ | ||
| 4481 | - compile : function(tElem, tAttrs) { | ||
| 4482 | - // 获取属性 | ||
| 4483 | - var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 4484 | - if (!$attr_name) { | ||
| 4485 | - throw new Error("saTimeTablePreview指令 name属性required"); | ||
| 4486 | - } | ||
| 4487 | - | ||
| 4488 | - // 内部controlAs名字 | ||
| 4489 | - var ctrlAs = "$saTimeTablePreviewCtrl"; | ||
| 4490 | - | ||
| 4491 | - // TODO: | ||
| 4492 | - | ||
| 4493 | - //------------------ 内部方法 --------------------// | ||
| 4494 | - var date_wrap_prefix = "2000-01-01 "; // 包装日期的前缀 | ||
| 4495 | - var date_wrap_format = "YYYY-MM-DD HH:mm"; // 日期格式 | ||
| 4496 | - /** | ||
| 4497 | - * 将时间包装成日期,方便计算。 | ||
| 4498 | - * @param timeStr 时间格式,如 06:30 | ||
| 4499 | - * @returns moment对象 | ||
| 4500 | - */ | ||
| 4501 | - var _fun_WrapTime = function(timeStr) { | ||
| 4502 | - return moment( | ||
| 4503 | - date_wrap_prefix + timeStr, | ||
| 4504 | - date_wrap_format | ||
| 4505 | - ); | ||
| 4506 | - }; | ||
| 4507 | - | ||
| 4508 | - /** | ||
| 4509 | - * 点击班次html元素(dl),触发班次移动,如下: | ||
| 4510 | - * 1、点击上行班次,下一个下行班次在下行班次列表中移到中间位置 | ||
| 4511 | - * 2、点击下行班次,下一个上行班次在上行班次列表中移到中间位置 | ||
| 4512 | - * @param ctrl 内部控制器 | ||
| 4513 | - * @param index 班次索引 | ||
| 4514 | - * @param isUp 是否上行 | ||
| 4515 | - * @private | ||
| 4516 | - */ | ||
| 4517 | - var _fun_bcDDViewMove = function(ctrl, index, isUp) { | ||
| 4518 | - // 获取当前点击班次对象 | ||
| 4519 | - var oBc; | ||
| 4520 | - if (isUp) { | ||
| 4521 | - oBc = ctrl.internalBcModel.up_bc_list_asc[index]; | ||
| 4522 | - } else { | ||
| 4523 | - oBc = ctrl.internalBcModel.down_bc_list_asc[index]; | ||
| 4524 | - } | ||
| 4525 | - | ||
| 4526 | - // 找出车次链中的下一个班次索引,没有就undefined | ||
| 4527 | - var nextIndex = undefined; | ||
| 4528 | - var nextBlockBc = undefined; | ||
| 4529 | - var currentBlockBcIndex = undefined; | ||
| 4530 | - angular.forEach(ctrl.internalLpBlockModel[oBc.lpName], function(data, i) { | ||
| 4531 | - if (data.fcsj == oBc.fcsj) { | ||
| 4532 | - currentBlockBcIndex = i; | ||
| 4533 | - } | ||
| 4534 | - }); | ||
| 4535 | - if (currentBlockBcIndex != undefined && | ||
| 4536 | - currentBlockBcIndex < (ctrl.internalLpBlockModel[oBc.lpName].length - 1)) { | ||
| 4537 | - nextBlockBc = ctrl.internalLpBlockModel[oBc.lpName][currentBlockBcIndex + 1]; | ||
| 4538 | - nextIndex = nextBlockBc.index; | ||
| 4539 | - } | ||
| 4540 | - // 先删除click标记,再添加 | ||
| 4541 | - angular.forEach(ctrl.internalBcModel.up_bc_list_asc, function(data) { | ||
| 4542 | - delete data["isClick"]; | ||
| 4543 | - }); | ||
| 4544 | - angular.forEach(ctrl.internalBcModel.down_bc_list_asc, function(data) { | ||
| 4545 | - delete data["isClick"]; | ||
| 4546 | - }); | ||
| 4547 | - oBc.isClick = true; | ||
| 4548 | - if (nextIndex) { | ||
| 4549 | - if (nextBlockBc.isUp) { | ||
| 4550 | - ctrl.internalBcModel.up_bc_list_asc[nextIndex].isClick = true; | ||
| 4551 | - } else { | ||
| 4552 | - ctrl.internalBcModel.down_bc_list_asc[nextIndex].isClick = true; | ||
| 4553 | - } | ||
| 4554 | - } | ||
| 4555 | - | ||
| 4556 | - // 移动,同方向不移动 | ||
| 4557 | - var clientHeight = angular.element("#temp").height() - 34; | ||
| 4558 | - if (nextBlockBc && isUp != nextBlockBc.isUp) { | ||
| 4559 | - if (isUp) { // 移动下行 | ||
| 4560 | - angular.element(".ttpv_table_scrollbar:eq(1)").animate( | ||
| 4561 | - {scrollTop : nextIndex * 30 - clientHeight / 2}, 400); | ||
| 4562 | - } else { // 移动上行 | ||
| 4563 | - angular.element(".ttpv_table_scrollbar:eq(0)").animate( | ||
| 4564 | - {scrollTop : nextIndex * 30 - clientHeight / 2}, 400); | ||
| 4565 | - } | ||
| 4566 | - } | ||
| 4567 | - | ||
| 4568 | - }; | ||
| 4569 | - | ||
| 4570 | - /** | ||
| 4571 | - * 刷新内部数据。 | ||
| 4572 | - * @param ctrl 内部控制器对象($saTimeTablePreviewCtrl) | ||
| 4573 | - * @private | ||
| 4574 | - */ | ||
| 4575 | - var _fun_refreshInternalModel = function(ctrl) { | ||
| 4576 | - // 初始化内部数据 | ||
| 4577 | - ctrl.internalBcModel = { | ||
| 4578 | - up_qdz_name : "", // 上行起点站名字 | ||
| 4579 | - up_zdz_name : "", // 上行终点站名字 | ||
| 4580 | - down_qdz_name : "", // 下行起点站名字 | ||
| 4581 | - down_zdz_name : "", // 下行终点站名字 | ||
| 4582 | - up_bc_list_asc : [], // 上行班次列表(按照发车时间升序) | ||
| 4583 | - down_bc_list_asc : [] // 下行班次列表(按照发车时间升序) | ||
| 4584 | - }; | ||
| 4585 | - ctrl.internalLpBlockModel = { | ||
| 4586 | - | ||
| 4587 | - }; | ||
| 4588 | - | ||
| 4589 | - // ngModel传入的数据 | ||
| 4590 | - var dataSource = ctrl.ds.bcList; | ||
| 4591 | - | ||
| 4592 | - // 构造上下行班次列表,并确定上下行的首发站点 | ||
| 4593 | - angular.forEach(dataSource, function(bcObj) { | ||
| 4594 | - var _internalBcObj = {}; | ||
| 4595 | - // 构造内部班次对象 | ||
| 4596 | - _internalBcObj.lpName = bcObj.lp.lpName; // 路牌 | ||
| 4597 | - _internalBcObj.fcsj = bcObj.fcsj; // 发车时间 | ||
| 4598 | - _internalBcObj.ddsj = _fun_WrapTime(bcObj.fcsj).add(bcObj.bcsj, "m").format("HH:mm"); | ||
| 4599 | - _internalBcObj.qdzName = bcObj.qdzName; // 起点站名字 | ||
| 4600 | - _internalBcObj.zdzName = bcObj.zdzName; // 终点站名字 | ||
| 4601 | - _internalBcObj.bcType = bcObj.bcType; // 班次类型 | ||
| 4602 | - _internalBcObj.isTs = bcObj.isTS; // 是否停驶 | ||
| 4603 | - _internalBcObj.isFb = bcObj.isFB; // 是否分班 | ||
| 4604 | - _internalBcObj.remark = bcObj.remark; // 备注 | ||
| 4605 | - _internalBcObj._fcno = bcObj.fcno; // 发车顺序号 | ||
| 4606 | - | ||
| 4607 | - if (bcObj.xlDir == "0") { // 上行 | ||
| 4608 | - ctrl.internalBcModel.up_bc_list_asc.push(_internalBcObj); | ||
| 4609 | - // 确定起点站 | ||
| 4610 | - if (ctrl.internalBcModel.up_qdz_name == "") { | ||
| 4611 | - if (bcObj.bcType == "normal") { | ||
| 4612 | - ctrl.internalBcModel.up_qdz_name = bcObj.qdzName; | ||
| 4613 | - } | ||
| 4614 | - } | ||
| 4615 | - // 确定终点站 | ||
| 4616 | - if (ctrl.internalBcModel.up_zdz_name == "") { | ||
| 4617 | - if (bcObj.bcType == "normal") { | ||
| 4618 | - ctrl.internalBcModel.up_zdz_name = bcObj.zdzName; | ||
| 4619 | - } | ||
| 4620 | - } | ||
| 4621 | - } | ||
| 4622 | - if (bcObj.xlDir == "1") { // 下行 | ||
| 4623 | - ctrl.internalBcModel.down_bc_list_asc.push(_internalBcObj); | ||
| 4624 | - // 确定起点站 | ||
| 4625 | - if (ctrl.internalBcModel.down_qdz_name == "") { | ||
| 4626 | - if (bcObj.bcType == "normal") { | ||
| 4627 | - ctrl.internalBcModel.down_qdz_name = bcObj.qdzName; | ||
| 4628 | - } | ||
| 4629 | - } | ||
| 4630 | - // 确定终点站 | ||
| 4631 | - if (ctrl.internalBcModel.down_zdz_name == "") { | ||
| 4632 | - if (bcObj.bcType == "normal") { | ||
| 4633 | - ctrl.internalBcModel.down_zdz_name = bcObj.zdzName; | ||
| 4634 | - } | ||
| 4635 | - } | ||
| 4636 | - } | ||
| 4637 | - | ||
| 4638 | - }); | ||
| 4639 | - | ||
| 4640 | - // 发车时间升序排序上行班次 | ||
| 4641 | - ctrl.internalBcModel.up_bc_list_asc.sort(function(a, b) { | ||
| 4642 | - var a_wrapTime = _fun_WrapTime(a.fcsj); | ||
| 4643 | - var b_wrapTime = _fun_WrapTime(b.fcsj); | ||
| 4644 | - | ||
| 4645 | - // 判定如果发车时间是以00,01,02,03开头的,说明是下一天凌晨的班次,需要加1天判定 | ||
| 4646 | - // TODO:以后要配合首班车的发车时间判定 | ||
| 4647 | - if (a.fcsj.indexOf("00:") == 0 || | ||
| 4648 | - a.fcsj.indexOf("01:") == 0 || | ||
| 4649 | - a.fcsj.indexOf("02:") == 0) { | ||
| 4650 | - a_wrapTime.add(1, "day"); | ||
| 4651 | - } | ||
| 4652 | - if (b.fcsj.indexOf("00:") == 0 || | ||
| 4653 | - b.fcsj.indexOf("01:") == 0 || | ||
| 4654 | - b.fcsj.indexOf("02:") == 0) { | ||
| 4655 | - b_wrapTime.add(1, "day"); | ||
| 4656 | - } | ||
| 4657 | - | ||
| 4658 | - if (a_wrapTime.isBefore(b_wrapTime)) { | ||
| 4659 | - return -1; | ||
| 4660 | - } else if (a_wrapTime.isAfter(b_wrapTime)) { | ||
| 4661 | - return 1; | ||
| 4662 | - } else { | ||
| 4663 | - return 0; | ||
| 4664 | - } | ||
| 4665 | - | ||
| 4666 | - }); | ||
| 4667 | - // 发车时间升序排序下行班次 | ||
| 4668 | - ctrl.internalBcModel.down_bc_list_asc.sort(function(a, b) { | ||
| 4669 | - var a_wrapTime = _fun_WrapTime(a.fcsj); | ||
| 4670 | - var b_wrapTime = _fun_WrapTime(b.fcsj); | ||
| 4671 | - | ||
| 4672 | - // 判定如果发车时间是以00,01,02,03开头的,说明是下一天凌晨的班次,需要加1天判定 | ||
| 4673 | - // TODO:以后要配合首班车的发车时间判定 | ||
| 4674 | - if (a.fcsj.indexOf("00:") == 0 || | ||
| 4675 | - a.fcsj.indexOf("01:") == 0 || | ||
| 4676 | - a.fcsj.indexOf("02:") == 0) { | ||
| 4677 | - a_wrapTime.add(1, "day"); | ||
| 4678 | - } | ||
| 4679 | - if (b.fcsj.indexOf("00:") == 0 || | ||
| 4680 | - b.fcsj.indexOf("01:") == 0 || | ||
| 4681 | - b.fcsj.indexOf("02:") == 0) { | ||
| 4682 | - b_wrapTime.add(1, "day"); | ||
| 4683 | - } | ||
| 4684 | - | ||
| 4685 | - if (a_wrapTime.isBefore(b_wrapTime)) { | ||
| 4686 | - return -1; | ||
| 4687 | - } else if (a_wrapTime.isAfter(b_wrapTime)) { | ||
| 4688 | - return 1; | ||
| 4689 | - } else { | ||
| 4690 | - return 0; | ||
| 4691 | - } | ||
| 4692 | - }); | ||
| 4693 | - | ||
| 4694 | - // 构造路牌block车次链,按照发车顺序排序 | ||
| 4695 | - angular.forEach(ctrl.internalBcModel.up_bc_list_asc, function(data, index) { | ||
| 4696 | - if (!ctrl.internalLpBlockModel[data.lpName]) { | ||
| 4697 | - ctrl.internalLpBlockModel[data.lpName] = []; | ||
| 4698 | - } | ||
| 4699 | - ctrl.internalLpBlockModel[data.lpName].push({ | ||
| 4700 | - fcsj : data.fcsj, | ||
| 4701 | - isUp : true, | ||
| 4702 | - fcno : data._fcno, | ||
| 4703 | - index : index | ||
| 4704 | - }); | ||
| 4705 | - }); | ||
| 4706 | - angular.forEach(ctrl.internalBcModel.down_bc_list_asc, function(data, index) { | ||
| 4707 | - if (!ctrl.internalLpBlockModel[data.lpName]) { | ||
| 4708 | - ctrl.internalLpBlockModel[data.lpName] = []; | ||
| 4709 | - } | ||
| 4710 | - ctrl.internalLpBlockModel[data.lpName].push({ | ||
| 4711 | - fcsj : data.fcsj, | ||
| 4712 | - isUp : false, | ||
| 4713 | - fcno : data._fcno, | ||
| 4714 | - index : index | ||
| 4715 | - }); | ||
| 4716 | - }); | ||
| 4717 | - angular.forEach(ctrl.internalLpBlockModel, function(value, key) { | ||
| 4718 | - value.sort(function (a, b) { | ||
| 4719 | - if (a.fcno < b.fcno) { | ||
| 4720 | - return -1; | ||
| 4721 | - } else if (a.fcno > b.fcno) { | ||
| 4722 | - return 1; | ||
| 4723 | - } else { | ||
| 4724 | - return 0; | ||
| 4725 | - } | ||
| 4726 | - }); | ||
| 4727 | - }); | ||
| 4728 | - | ||
| 4729 | - | ||
| 4730 | - }; | ||
| 4731 | - | ||
| 4732 | - return { | ||
| 4733 | - pre : function(scope, element, attr) { | ||
| 4734 | - // TODO: | ||
| 4735 | - }, | ||
| 4736 | - post : function(scope, element, attr) { | ||
| 4737 | - // 班次html点击事件 | ||
| 4738 | - scope[ctrlAs].$$bcDD_Click = function(index, xlDir) { | ||
| 4739 | - _fun_bcDDViewMove(scope[ctrlAs], index, xlDir); | ||
| 4740 | - }; | ||
| 4741 | - | ||
| 4742 | - // 监控ngModel绑定的外部数据源的刷新状态变化 | ||
| 4743 | - scope.$watch( | ||
| 4744 | - function() { | ||
| 4745 | - return scope[ctrlAs].ds.refreshInfos; | ||
| 4746 | - }, | ||
| 4747 | - function(newValue, oldValue) { | ||
| 4748 | - if (newValue === undefined && oldValue === undefined) { | ||
| 4749 | - return; | ||
| 4750 | - } | ||
| 4751 | - console.log("saTimetable2 refresh"); | ||
| 4752 | - _fun_refreshInternalModel(scope[ctrlAs]); | ||
| 4753 | - }, | ||
| 4754 | - true | ||
| 4755 | - ); | ||
| 4756 | - } | ||
| 4757 | - }; | ||
| 4758 | - } | ||
| 4759 | - }; | ||
| 4760 | - } | ||
| 4761 | - ] | ||
| 4762 | -); | ||
| 4763 | -/** | ||
| 4764 | - * 滚动事件控制指令。 | ||
| 4765 | - */ | ||
| 4766 | -angular.module('ScheduleApp').directive( | ||
| 4767 | - 'saTscrolly1', | ||
| 4768 | - [ | ||
| 4769 | - function() { | ||
| 4770 | - return { | ||
| 4771 | - restrict: 'A', | ||
| 4772 | - | ||
| 4773 | - compile: function(tElem, tAttrs) { | ||
| 4774 | - | ||
| 4775 | - return { | ||
| 4776 | - pre: function(scope, element, attr) { | ||
| 4777 | - // TODO: | ||
| 4778 | - //alert(element.find("#tooltipTest").html()); | ||
| 4779 | - //$compile(element.find("#tooltipTest"))(scope); | ||
| 4780 | - | ||
| 4781 | - }, | ||
| 4782 | - | ||
| 4783 | - post: function(scope, element, attr) { | ||
| 4784 | - //var head = element[0]; | ||
| 4785 | - | ||
| 4786 | - //console.log("llllllllload"); | ||
| 4787 | - //console.log(element.name); | ||
| 4788 | - | ||
| 4789 | - element.bind('scroll', function() { | ||
| 4790 | - //console.log("top=", angular.element(".tt_table_head").css("top")); | ||
| 4791 | - //console.log("left=", angular.element(".tt_table_head").css("left")); | ||
| 4792 | - //console.log("s top=" + element.scrollTop()); | ||
| 4793 | - | ||
| 4794 | - angular.element(".tt_table_head").css("top", element.scrollTop()); | ||
| 4795 | - angular.element(".tt_table_head:eq(0)").css("left", element.scrollLeft()); | ||
| 4796 | - angular.element(".tt_table_body:eq(0)").css("left", element.scrollLeft()); | ||
| 4797 | - | ||
| 4798 | - }); | ||
| 4799 | - } | ||
| 4800 | - | ||
| 4801 | - }; | ||
| 4802 | - } | ||
| 4803 | - } | ||
| 4804 | - } | ||
| 4805 | - ] | ||
| 4806 | -); | ||
| 4807 | -/** | ||
| 4808 | - * 滚动事件控制指令。 | ||
| 4809 | - */ | ||
| 4810 | -angular.module('ScheduleApp').directive( | ||
| 4811 | - 'saTscrolly2', | ||
| 4812 | - [ | ||
| 4813 | - function() { | ||
| 4814 | - return { | ||
| 4815 | - restrict: 'A', | ||
| 4816 | - | ||
| 4817 | - compile: function(tElem, tAttrs) { | ||
| 4818 | - | ||
| 4819 | - return { | ||
| 4820 | - pre: function(scope, element, attr) { | ||
| 4821 | - // TODO: | ||
| 4822 | - //alert(element.find("#tooltipTest").html()); | ||
| 4823 | - //$compile(element.find("#tooltipTest"))(scope); | ||
| 4824 | - | ||
| 4825 | - }, | ||
| 4826 | - | ||
| 4827 | - post: function(scope, element, attr) { | ||
| 4828 | - //var head = element[0]; | ||
| 4829 | - | ||
| 4830 | - //console.log("llllllllload"); | ||
| 4831 | - //console.log(element.name); | ||
| 4832 | - | ||
| 4833 | - element.bind('scroll', function() { | ||
| 4834 | - //console.log("top=", angular.element(".tt_table_head").css("top")); | ||
| 4835 | - //console.log("left=", angular.element(".tt_table_head").css("left")); | ||
| 4836 | - //console.log("s top=" + element.scrollTop()); | ||
| 4837 | - | ||
| 4838 | - angular.element(attr.scrclass).css("top", element.scrollTop()); | ||
| 4839 | - // angular.element(".tt_table_head:eq(0)").css("left", element.scrollLeft()); | ||
| 4840 | - // angular.element(".tt_table_body:eq(0)").css("left", element.scrollLeft()); | ||
| 4841 | - | ||
| 4842 | - }); | ||
| 4843 | - } | ||
| 4844 | - | ||
| 4845 | - }; | ||
| 4846 | - } | ||
| 4847 | - } | ||
| 4848 | - } | ||
| 4849 | - ] | ||
| 4850 | -); | ||
| 4851 | -/** | ||
| 4852 | - * saOrderoption指令,搜索时的排序选项(在搜索时可以使用,通用的) | ||
| 4853 | - * 属性如下: | ||
| 4854 | - * name(必须):控件的名字 | ||
| 4855 | - * columns(必须,独立作用域):字段名字列表,格式:[{name:[字段名],desc:[字段描述]}...] | ||
| 4856 | - * ordercolumns(必须,独立作用域):字段排序列表,格式:{order: '字段1,字段2',direction: 'ASC,DESC'} | ||
| 4857 | - */ | ||
| 4858 | -angular.module('ScheduleApp').directive( | ||
| 4859 | - 'saOrderoption', | ||
| 4860 | - [ | ||
| 4861 | - function() { | ||
| 4862 | - return { | ||
| 4863 | - restrict: 'E', | ||
| 4864 | - templateUrl: '/pages/scheduleApp/module/common/dts2/queryOption/saOrderOptionTemplate.html', | ||
| 4865 | - scope: { | ||
| 4866 | - columns: '=', | ||
| 4867 | - ordercolumns: '=' | ||
| 4868 | - }, | ||
| 4869 | - controllerAs: '$saOrderOptionCtrl', | ||
| 4870 | - bindToController: true, | ||
| 4871 | - controller: function() { | 4888 | + controller: function() { |
| 4872 | var self = this; | 4889 | var self = this; |
| 4873 | 4890 | ||
| 4874 | // 字段列表是否预载入 | 4891 | // 字段列表是否预载入 |
| @@ -5448,1163 +5465,1163 @@ angular.module('ScheduleApp').directive( | @@ -5448,1163 +5465,1163 @@ angular.module('ScheduleApp').directive( | ||
| 5448 | } | 5465 | } |
| 5449 | ] | 5466 | ] |
| 5450 | ); | 5467 | ); |
| 5451 | -/** | ||
| 5452 | - * saPlaninfoedit指令,排班明细编辑控件,用在调度执勤日报的修改功能 | ||
| 5453 | - * name(必须),控件的名字 | ||
| 5454 | - * ds,外部数据源 | ||
| 5455 | - * cl1,车辆1属性 | ||
| 5456 | - * cl2,车辆2属性 | ||
| 5457 | - * j1,驾驶员1属性 | ||
| 5458 | - * j2,驾驶员2属性 | ||
| 5459 | - * s1,售票员1属性 | ||
| 5460 | - * s2,售票员2属性 | ||
| 5461 | - */ | ||
| 5462 | -angular.module('ScheduleApp').directive( | ||
| 5463 | - 'saPlaninfoedit', | ||
| 5464 | - [ | ||
| 5465 | - function() { | ||
| 5466 | - return { | ||
| 5467 | - restrict: 'E', | ||
| 5468 | - templateUrl: '/pages/scheduleApp/module/common/dts2/scheduleplan/saPlaninfoeditTemplate.html', | ||
| 5469 | - scope: { // 独立作用域 | ||
| 5470 | - ds: '=ngModel' | ||
| 5471 | - }, | ||
| 5472 | - controllerAs: '$saPlanInfoEditCtrl', | ||
| 5473 | - bindToController: true, | ||
| 5474 | - controller: function() { | ||
| 5475 | - //var self = this; | ||
| 5476 | - | ||
| 5477 | - }, | ||
| 5478 | - | ||
| 5479 | - compile: function(tElem, tAttrs) { | ||
| 5480 | - // 获取属性 | ||
| 5481 | - var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 5482 | - if (!$attr_name) { | ||
| 5483 | - throw {msg: "saPlaninfoedit指令name属性不能为空"}; | ||
| 5484 | - } | ||
| 5485 | - | ||
| 5486 | - // 内部controlAs名字 | ||
| 5487 | - var ctrlAs = '$saPlanInfoEditCtrl'; | ||
| 5488 | - | ||
| 5489 | - | ||
| 5490 | - // 内部变量,原始车辆,人员数据 | ||
| 5491 | - var old_cl = {}; // key:{车辆id_车辆自编号},value:所在list下标数组 | ||
| 5492 | - var old_j = {}; // key:{驾驶员id_姓名_工号}, value:所在list下标数组 | ||
| 5493 | - var old_s = {}; // key:{售票员id_姓名_工号}, value:所在list下标数组 | ||
| 5494 | - var old_isfb = false; // 是否有分班 | ||
| 5495 | - var old_isfb_index = 0; // 分班开始索引 | ||
| 5496 | - var old_hasJCBC = false; // 是否有进场班次 | ||
| 5497 | - var old_max_fcno = 0; // 最大发车顺序号 | ||
| 5498 | - var old_firstJCBCFcno = 0; // 第一个进场班次发车顺序号 | ||
| 5499 | - var old_half_bcs = 0; // 一般的班次数量 | ||
| 5500 | - | ||
| 5501 | - // 内部变量,变更的车辆,变更的人员 | ||
| 5502 | - var new_cl1 = undefined; // 新的车辆1(车辆id_车辆自编号) | ||
| 5503 | - var new_cl2 = undefined; // 新的车辆2(车辆id_车辆自编号) | ||
| 5504 | - var new_j1 = undefined; // 新的驾驶员1(驾驶员id_姓名_工号) | ||
| 5505 | - var new_j2 = undefined; // 新的驾驶员2(驾驶员id_姓名_工号) | ||
| 5506 | - var new_s1 = undefined; // 新的售票员1(售票员id_姓名_工号) | ||
| 5507 | - var new_s2 = undefined; // 新的售票员2(售票员id_姓名_工号) | ||
| 5508 | - | ||
| 5509 | - return { | ||
| 5510 | - pre: function(scope, element, attr) { | ||
| 5511 | - | ||
| 5512 | - }, | ||
| 5513 | - post: function(scope, element, attr) { | ||
| 5514 | - | ||
| 5515 | - /** | ||
| 5516 | - * 刷新车辆数据。 | ||
| 5517 | - */ | ||
| 5518 | - scope[ctrlAs].$$internal_refresh_dsdata_cl = function() { | ||
| 5519 | - if (new_cl1) { | ||
| 5520 | - var new_cl1_id = new_cl1.split("_")[0]; | ||
| 5521 | - var new_cl1_zbh = new_cl1.split("_")[1]; | ||
| 5522 | - | ||
| 5523 | - if (new_cl2) { | ||
| 5524 | - var new_cl2_id = new_cl2.split("_")[0]; | ||
| 5525 | - var new_cl2_zbh = new_cl2.split("_")[1]; | ||
| 5526 | - | ||
| 5527 | - if (old_isfb) { // 使用分班判定 | ||
| 5528 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5529 | - if (index < old_isfb_index) { | ||
| 5530 | - obj.cl = new_cl1_id; | ||
| 5531 | - obj.clZbh = new_cl1_zbh; | ||
| 5532 | - } else { | ||
| 5533 | - obj.cl = new_cl2_id; | ||
| 5534 | - obj.clZbh = new_cl2_zbh; | ||
| 5535 | - } | ||
| 5536 | - }); | ||
| 5537 | - | ||
| 5538 | - } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5539 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5540 | - if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5541 | - obj.cl = new_cl1_id; | ||
| 5542 | - obj.clZbh = new_cl1_zbh; | ||
| 5543 | - } else { | ||
| 5544 | - obj.cl = new_cl2_id; | ||
| 5545 | - obj.clZbh = new_cl2_zbh; | ||
| 5546 | - } | ||
| 5547 | - }); | ||
| 5548 | - } else { // 使用一半一半班次判定 | ||
| 5549 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5550 | - if (index < old_half_bcs) { | ||
| 5551 | - obj.cl = new_cl1_id; | ||
| 5552 | - obj.clZbh = new_cl1_zbh; | ||
| 5553 | - } else { | ||
| 5554 | - obj.cl = new_cl2_id; | ||
| 5555 | - obj.clZbh = new_cl2_zbh; | ||
| 5556 | - } | ||
| 5557 | - }); | ||
| 5558 | - } | ||
| 5559 | - | ||
| 5560 | - } else { | ||
| 5561 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5562 | - obj.cl = new_cl1_id; | ||
| 5563 | - obj.clZbh = new_cl1_zbh; | ||
| 5564 | - }); | ||
| 5565 | - } | ||
| 5566 | - | ||
| 5567 | - } else { | ||
| 5568 | - // 使用旧的 | ||
| 5569 | - angular.forEach(old_cl, function(value, key) { | ||
| 5570 | - angular.forEach(value, function(i) { | ||
| 5571 | - scope[ctrlAs].ds[i].cl = key.split("_")[0]; | ||
| 5572 | - scope[ctrlAs].ds[i].clZbh = key.split("_")[1]; | ||
| 5573 | - }); | ||
| 5574 | - }); | ||
| 5575 | - } | ||
| 5576 | - }; | ||
| 5577 | - | ||
| 5578 | - /** | ||
| 5579 | - * 刷新驾驶员数据。 | ||
| 5580 | - */ | ||
| 5581 | - scope[ctrlAs].$$internal_refresh_dsdata_j = function() { | ||
| 5582 | - if (new_j1) { | ||
| 5583 | - var new_j1_id = new_j1.split("_")[0]; | ||
| 5584 | - var new_j1_name = new_j1.split("_")[1]; | ||
| 5585 | - var new_j1_gh = new_j1.split("_")[2]; | ||
| 5586 | - if (new_j1_gh && new_j1_gh.indexOf("-") > 0) { | ||
| 5587 | - new_j1_gh = new_j1_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 5588 | - } | ||
| 5589 | - | ||
| 5590 | - if (new_j2) { | ||
| 5591 | - var new_j2_id = new_j2.split("_")[0]; | ||
| 5592 | - var new_j2_name = new_j2.split("_")[1]; | ||
| 5593 | - var new_j2_gh = new_j2.split("_")[2]; | ||
| 5594 | - if (new_j2_gh && new_j2_gh.indexOf("-") > 0) { | ||
| 5595 | - new_j2_gh = new_j2_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 5596 | - } | ||
| 5597 | - | ||
| 5598 | - if (old_isfb) { // 使用分班判定 | ||
| 5599 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5600 | - if (index < old_isfb_index) { | ||
| 5601 | - obj.j = new_j1_id; | ||
| 5602 | - obj.jGh = new_j1_gh; | ||
| 5603 | - obj.jName = new_j1_name; | ||
| 5604 | - } else { | ||
| 5605 | - obj.j = new_j2_id; | ||
| 5606 | - obj.jGh = new_j2_gh; | ||
| 5607 | - obj.jName = new_j2_name; | ||
| 5608 | - } | ||
| 5609 | - }); | ||
| 5610 | - | ||
| 5611 | - } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5612 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5613 | - if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5614 | - obj.j = new_j1_id; | ||
| 5615 | - obj.jGh = new_j1_gh; | ||
| 5616 | - obj.jName = new_j1_name; | ||
| 5617 | - } else { | ||
| 5618 | - obj.j = new_j2_id; | ||
| 5619 | - obj.jGh = new_j2_gh; | ||
| 5620 | - obj.jName = new_j2_name; | ||
| 5621 | - } | ||
| 5622 | - }); | ||
| 5623 | - } else { // 使用一半一半班次判定 | ||
| 5624 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5625 | - if (index < old_half_bcs) { | ||
| 5626 | - obj.j = new_j1_id; | ||
| 5627 | - obj.jGh = new_j1_gh; | ||
| 5628 | - obj.jName = new_j1_name; | ||
| 5629 | - } else { | ||
| 5630 | - obj.j = new_j2_id; | ||
| 5631 | - obj.jGh = new_j2_gh; | ||
| 5632 | - obj.jName = new_j2_name; | ||
| 5633 | - } | ||
| 5634 | - }); | ||
| 5635 | - } | ||
| 5636 | - | ||
| 5637 | - } else { | ||
| 5638 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5639 | - obj.j = new_j1_id; | ||
| 5640 | - obj.jGh = new_j1_gh; | ||
| 5641 | - obj.jName = new_j1_name; | ||
| 5642 | - }); | ||
| 5643 | - } | ||
| 5644 | - | ||
| 5645 | - } else { | ||
| 5646 | - // 使用旧的 | ||
| 5647 | - angular.forEach(old_j, function(value, key) { | ||
| 5648 | - angular.forEach(value, function(i) { | ||
| 5649 | - scope[ctrlAs].ds[i].j = key.split("_")[0]; | ||
| 5650 | - scope[ctrlAs].ds[i].jName = key.split("_")[1]; | ||
| 5651 | - scope[ctrlAs].ds[i].jGh = key.split("_")[2]; | ||
| 5652 | - }); | ||
| 5653 | - }); | ||
| 5654 | - } | ||
| 5655 | - }; | ||
| 5656 | - /** | ||
| 5657 | - * 刷新售票员数据。 | ||
| 5658 | - */ | ||
| 5659 | - scope[ctrlAs].$$internal_refresh_dsdata_s = function() { | ||
| 5660 | - if (new_s1) { | ||
| 5661 | - var new_s1_id = new_s1.split("_")[0]; | ||
| 5662 | - var new_s1_name = new_s1.split("_")[1]; | ||
| 5663 | - var new_s1_gh = new_s1.split("_")[2]; | ||
| 5664 | - if (new_s1_gh && new_s1_gh.indexOf("-") > 0) { // 修正工号,吧 55- 这种前缀去掉 | ||
| 5665 | - new_s1_gh = new_s1_gh.substr(3); | ||
| 5666 | - } | ||
| 5667 | - | ||
| 5668 | - if (new_s2) { | ||
| 5669 | - var new_s2_id = new_s2.split("_")[0]; | ||
| 5670 | - var new_s2_name = new_s2.split("_")[1]; | ||
| 5671 | - var new_s2_gh = new_s2.split("_")[2]; | ||
| 5672 | - if (new_s2_gh && new_s2_gh.indexOf("-") > 0) { // 修正工号,吧 55- 这种前缀去掉 | ||
| 5673 | - new_s2_gh = new_s2_gh.substr(3); | ||
| 5674 | - } | ||
| 5675 | - | ||
| 5676 | - if (old_isfb) { // 使用分班判定 | ||
| 5677 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5678 | - if (index < old_isfb_index) { | ||
| 5679 | - obj.s = new_s1_id; | ||
| 5680 | - | ||
| 5681 | - obj.sGh = new_s1_gh; | ||
| 5682 | - obj.sName = new_s1_name; | ||
| 5683 | - } else { | ||
| 5684 | - obj.s = new_s2_id; | ||
| 5685 | - obj.sGh = new_s2_gh; | ||
| 5686 | - obj.sName = new_s2_name; | ||
| 5687 | - } | ||
| 5688 | - }); | ||
| 5689 | - | ||
| 5690 | - } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5691 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5692 | - if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5693 | - obj.s = new_s1_id; | ||
| 5694 | - obj.sGh = new_s1_gh; | ||
| 5695 | - obj.sName = new_s1_name; | ||
| 5696 | - } else { | ||
| 5697 | - obj.s = new_s2_id; | ||
| 5698 | - obj.sGh = new_s2_gh; | ||
| 5699 | - obj.sName = new_s2_name; | ||
| 5700 | - } | ||
| 5701 | - }); | ||
| 5702 | - } else { // 使用一半一半班次判定 | ||
| 5703 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5704 | - if (index < old_half_bcs) { | ||
| 5705 | - obj.s = new_s1_id; | ||
| 5706 | - obj.sGh = new_s1_gh; | ||
| 5707 | - obj.sName = new_s1_name; | ||
| 5708 | - } else { | ||
| 5709 | - obj.s = new_s2_id; | ||
| 5710 | - obj.sGh = new_s2_gh; | ||
| 5711 | - obj.sName = new_s2_name; | ||
| 5712 | - } | ||
| 5713 | - }); | ||
| 5714 | - } | ||
| 5715 | - | ||
| 5716 | - } else { | ||
| 5717 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5718 | - obj.s = new_s1_id; | ||
| 5719 | - obj.sGh = new_s1_gh; | ||
| 5720 | - obj.sName = new_s1_name; | ||
| 5721 | - }); | ||
| 5722 | - } | ||
| 5723 | - | ||
| 5724 | - } else { | ||
| 5725 | - // 先清空 | ||
| 5726 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5727 | - obj.s = undefined; | ||
| 5728 | - obj.sGh = undefined; | ||
| 5729 | - obj.sName = undefined; | ||
| 5730 | - }); | ||
| 5731 | - | ||
| 5732 | - // 使用旧的 | ||
| 5733 | - angular.forEach(old_s, function(value, key) { | ||
| 5734 | - angular.forEach(value, function(i) { | ||
| 5735 | - scope[ctrlAs].ds[i].s = key.split("_")[0]; | ||
| 5736 | - scope[ctrlAs].ds[i].sName = key.split("_")[1]; | ||
| 5737 | - scope[ctrlAs].ds[i].sGh = key.split("_")[2]; | ||
| 5738 | - }); | ||
| 5739 | - }); | ||
| 5740 | - } | ||
| 5741 | - }; | ||
| 5742 | - | ||
| 5743 | - /** | ||
| 5744 | - * 刷新内部数据。 | ||
| 5745 | - */ | ||
| 5746 | - scope[ctrlAs].$$internal_refresh_dsdata = function() { | ||
| 5747 | - // 更新车辆 | ||
| 5748 | - scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 5749 | - | ||
| 5750 | - // 更新驾驶员 | ||
| 5751 | - scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 5752 | - | ||
| 5753 | - // 更新售票员 | ||
| 5754 | - scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 5755 | - }; | ||
| 5756 | - | ||
| 5757 | - // -------------- 监控function ---------------// | ||
| 5758 | - attr.$observe('cl1', function(value) { | ||
| 5759 | - if (value && value != "") { | ||
| 5760 | - var obj = JSON.parse(value); | ||
| 5761 | - if (obj.id && obj.zbh) { | ||
| 5762 | - new_cl1 = obj.id + "_" + obj.zbh; | ||
| 5763 | - } else { | ||
| 5764 | - new_cl1 = undefined; | ||
| 5765 | - } | ||
| 5766 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5767 | - } | ||
| 5768 | - }); | ||
| 5769 | - | ||
| 5770 | - attr.$observe('cl2', function(value) { | ||
| 5771 | - if (value && value != "") { | ||
| 5772 | - var obj = JSON.parse(value); | ||
| 5773 | - if (obj.id && obj.zbh) { | ||
| 5774 | - new_cl2 = obj.id + "_" + obj.zbh; | ||
| 5775 | - } else { | ||
| 5776 | - new_cl2 = undefined; | ||
| 5777 | - } | ||
| 5778 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5779 | - } | ||
| 5780 | - }); | ||
| 5781 | - | ||
| 5782 | - attr.$observe('j1', function(value) { | ||
| 5783 | - if (value && value != "") { | ||
| 5784 | - var obj = JSON.parse(value); | ||
| 5785 | - if (obj.id && obj.name && obj.jobCode) { | ||
| 5786 | - new_j1 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5787 | - } else { | ||
| 5788 | - new_j1 = undefined; | ||
| 5789 | - } | ||
| 5790 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5791 | - } | ||
| 5792 | - }); | ||
| 5793 | - | ||
| 5794 | - attr.$observe('j2', function(value) { | ||
| 5795 | - if (value && value != "") { | ||
| 5796 | - var obj = JSON.parse(value); | ||
| 5797 | - if (obj.id && obj.name && obj.jobCode) { | ||
| 5798 | - new_j2 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5799 | - } else { | ||
| 5800 | - new_j2 = undefined; | ||
| 5801 | - } | ||
| 5802 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5803 | - } | ||
| 5804 | - }); | ||
| 5805 | - | ||
| 5806 | - attr.$observe('s1', function(value) { | ||
| 5807 | - if (value && value != "") { | ||
| 5808 | - var obj = JSON.parse(value); | ||
| 5809 | - if (obj.id && obj.name && obj.jobCode) { | ||
| 5810 | - new_s1 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5811 | - } else { | ||
| 5812 | - new_s1 = undefined; | ||
| 5813 | - } | ||
| 5814 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5815 | - } | ||
| 5816 | - }); | ||
| 5817 | - | ||
| 5818 | - attr.$observe('s2', function(value) { | ||
| 5819 | - if (value && value != "") { | ||
| 5820 | - var obj = JSON.parse(value); | ||
| 5821 | - if (obj.id && obj.name && obj.jobCode) { | ||
| 5822 | - new_s2 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5823 | - } else { | ||
| 5824 | - new_s2 = undefined; | ||
| 5825 | - } | ||
| 5826 | - scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5827 | - } | ||
| 5828 | - }); | ||
| 5829 | - | ||
| 5830 | - scope.$watch( | ||
| 5831 | - function() { | ||
| 5832 | - return scope[ctrlAs].ds; | ||
| 5833 | - }, | ||
| 5834 | - function(newValue, oldValue) { | ||
| 5835 | - if (newValue && newValue.length > 0) { | ||
| 5836 | - | ||
| 5837 | - var j1 = newValue[0].j; | ||
| 5838 | - | ||
| 5839 | - angular.forEach(newValue, function(obj, index) { | ||
| 5840 | - var k1 = obj.cl + "_" + obj.clZbh; | ||
| 5841 | - var k2 = !obj.j? undefined: obj.j + "_" + obj.jName + "_" + obj.jGh; | ||
| 5842 | - var k3 = !obj.s? undefined: obj.s + "_" + obj.sName + "_" + obj.sGh; | ||
| 5843 | - | ||
| 5844 | - if (!old_cl[k1]) { | ||
| 5845 | - old_cl[k1] = []; | ||
| 5846 | - } | ||
| 5847 | - if (!old_j[k2] && k2) { | ||
| 5848 | - old_j[k2] = []; | ||
| 5849 | - } | ||
| 5850 | - if (!old_s[k3] && k3) { | ||
| 5851 | - old_s[k3] = []; | ||
| 5852 | - } | ||
| 5853 | - | ||
| 5854 | - // 闭包 | ||
| 5855 | - (function(i) { | ||
| 5856 | - old_cl[k1].push(i); | ||
| 5857 | - if (k2) { | ||
| 5858 | - old_j[k2].push(i); | ||
| 5859 | - } | ||
| 5860 | - if (k3) { | ||
| 5861 | - old_s[k3].push(i); | ||
| 5862 | - } | ||
| 5863 | - })(index); | ||
| 5864 | - | ||
| 5865 | - // 判断是否分班 | ||
| 5866 | - if (j1 != obj.j && !old_isfb) { | ||
| 5867 | - old_isfb = true; | ||
| 5868 | - old_isfb_index = index; | ||
| 5869 | - } | ||
| 5870 | - | ||
| 5871 | - // 判断进出场 | ||
| 5872 | - if (obj.bcType == 'in' && !old_hasJCBC) { | ||
| 5873 | - old_hasJCBC = true; | ||
| 5874 | - old_firstJCBCFcno = obj.fcno; | ||
| 5875 | - } | ||
| 5876 | - }); | ||
| 5877 | - | ||
| 5878 | - old_max_fcno = newValue[newValue.length - 1].fcno; | ||
| 5879 | - old_half_bcs = newValue.length / 2; | ||
| 5880 | - | ||
| 5881 | - // 可以用resource封装一下 | ||
| 5882 | - // TODO: | ||
| 5883 | - } | ||
| 5884 | - } | ||
| 5885 | - ); | ||
| 5886 | - } | ||
| 5887 | - } | ||
| 5888 | - } | ||
| 5889 | - }; | ||
| 5890 | - } | ||
| 5891 | - ] | 5468 | +/** |
| 5469 | + * saPlaninfoedit指令,排班明细编辑控件,用在调度执勤日报的修改功能 | ||
| 5470 | + * name(必须),控件的名字 | ||
| 5471 | + * ds,外部数据源 | ||
| 5472 | + * cl1,车辆1属性 | ||
| 5473 | + * cl2,车辆2属性 | ||
| 5474 | + * j1,驾驶员1属性 | ||
| 5475 | + * j2,驾驶员2属性 | ||
| 5476 | + * s1,售票员1属性 | ||
| 5477 | + * s2,售票员2属性 | ||
| 5478 | + */ | ||
| 5479 | +angular.module('ScheduleApp').directive( | ||
| 5480 | + 'saPlaninfoedit', | ||
| 5481 | + [ | ||
| 5482 | + function() { | ||
| 5483 | + return { | ||
| 5484 | + restrict: 'E', | ||
| 5485 | + templateUrl: '/pages/scheduleApp/module/common/dts2/scheduleplan/saPlaninfoeditTemplate.html', | ||
| 5486 | + scope: { // 独立作用域 | ||
| 5487 | + ds: '=ngModel' | ||
| 5488 | + }, | ||
| 5489 | + controllerAs: '$saPlanInfoEditCtrl', | ||
| 5490 | + bindToController: true, | ||
| 5491 | + controller: function() { | ||
| 5492 | + //var self = this; | ||
| 5493 | + | ||
| 5494 | + }, | ||
| 5495 | + | ||
| 5496 | + compile: function(tElem, tAttrs) { | ||
| 5497 | + // 获取属性 | ||
| 5498 | + var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 5499 | + if (!$attr_name) { | ||
| 5500 | + throw {msg: "saPlaninfoedit指令name属性不能为空"}; | ||
| 5501 | + } | ||
| 5502 | + | ||
| 5503 | + // 内部controlAs名字 | ||
| 5504 | + var ctrlAs = '$saPlanInfoEditCtrl'; | ||
| 5505 | + | ||
| 5506 | + | ||
| 5507 | + // 内部变量,原始车辆,人员数据 | ||
| 5508 | + var old_cl = {}; // key:{车辆id_车辆自编号},value:所在list下标数组 | ||
| 5509 | + var old_j = {}; // key:{驾驶员id_姓名_工号}, value:所在list下标数组 | ||
| 5510 | + var old_s = {}; // key:{售票员id_姓名_工号}, value:所在list下标数组 | ||
| 5511 | + var old_isfb = false; // 是否有分班 | ||
| 5512 | + var old_isfb_index = 0; // 分班开始索引 | ||
| 5513 | + var old_hasJCBC = false; // 是否有进场班次 | ||
| 5514 | + var old_max_fcno = 0; // 最大发车顺序号 | ||
| 5515 | + var old_firstJCBCFcno = 0; // 第一个进场班次发车顺序号 | ||
| 5516 | + var old_half_bcs = 0; // 一般的班次数量 | ||
| 5517 | + | ||
| 5518 | + // 内部变量,变更的车辆,变更的人员 | ||
| 5519 | + var new_cl1 = undefined; // 新的车辆1(车辆id_车辆自编号) | ||
| 5520 | + var new_cl2 = undefined; // 新的车辆2(车辆id_车辆自编号) | ||
| 5521 | + var new_j1 = undefined; // 新的驾驶员1(驾驶员id_姓名_工号) | ||
| 5522 | + var new_j2 = undefined; // 新的驾驶员2(驾驶员id_姓名_工号) | ||
| 5523 | + var new_s1 = undefined; // 新的售票员1(售票员id_姓名_工号) | ||
| 5524 | + var new_s2 = undefined; // 新的售票员2(售票员id_姓名_工号) | ||
| 5525 | + | ||
| 5526 | + return { | ||
| 5527 | + pre: function(scope, element, attr) { | ||
| 5528 | + | ||
| 5529 | + }, | ||
| 5530 | + post: function(scope, element, attr) { | ||
| 5531 | + | ||
| 5532 | + /** | ||
| 5533 | + * 刷新车辆数据。 | ||
| 5534 | + */ | ||
| 5535 | + scope[ctrlAs].$$internal_refresh_dsdata_cl = function() { | ||
| 5536 | + if (new_cl1) { | ||
| 5537 | + var new_cl1_id = new_cl1.split("_")[0]; | ||
| 5538 | + var new_cl1_zbh = new_cl1.split("_")[1]; | ||
| 5539 | + | ||
| 5540 | + if (new_cl2) { | ||
| 5541 | + var new_cl2_id = new_cl2.split("_")[0]; | ||
| 5542 | + var new_cl2_zbh = new_cl2.split("_")[1]; | ||
| 5543 | + | ||
| 5544 | + if (old_isfb) { // 使用分班判定 | ||
| 5545 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5546 | + if (index < old_isfb_index) { | ||
| 5547 | + obj.cl = new_cl1_id; | ||
| 5548 | + obj.clZbh = new_cl1_zbh; | ||
| 5549 | + } else { | ||
| 5550 | + obj.cl = new_cl2_id; | ||
| 5551 | + obj.clZbh = new_cl2_zbh; | ||
| 5552 | + } | ||
| 5553 | + }); | ||
| 5554 | + | ||
| 5555 | + } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5556 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5557 | + if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5558 | + obj.cl = new_cl1_id; | ||
| 5559 | + obj.clZbh = new_cl1_zbh; | ||
| 5560 | + } else { | ||
| 5561 | + obj.cl = new_cl2_id; | ||
| 5562 | + obj.clZbh = new_cl2_zbh; | ||
| 5563 | + } | ||
| 5564 | + }); | ||
| 5565 | + } else { // 使用一半一半班次判定 | ||
| 5566 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5567 | + if (index < old_half_bcs) { | ||
| 5568 | + obj.cl = new_cl1_id; | ||
| 5569 | + obj.clZbh = new_cl1_zbh; | ||
| 5570 | + } else { | ||
| 5571 | + obj.cl = new_cl2_id; | ||
| 5572 | + obj.clZbh = new_cl2_zbh; | ||
| 5573 | + } | ||
| 5574 | + }); | ||
| 5575 | + } | ||
| 5576 | + | ||
| 5577 | + } else { | ||
| 5578 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5579 | + obj.cl = new_cl1_id; | ||
| 5580 | + obj.clZbh = new_cl1_zbh; | ||
| 5581 | + }); | ||
| 5582 | + } | ||
| 5583 | + | ||
| 5584 | + } else { | ||
| 5585 | + // 使用旧的 | ||
| 5586 | + angular.forEach(old_cl, function(value, key) { | ||
| 5587 | + angular.forEach(value, function(i) { | ||
| 5588 | + scope[ctrlAs].ds[i].cl = key.split("_")[0]; | ||
| 5589 | + scope[ctrlAs].ds[i].clZbh = key.split("_")[1]; | ||
| 5590 | + }); | ||
| 5591 | + }); | ||
| 5592 | + } | ||
| 5593 | + }; | ||
| 5594 | + | ||
| 5595 | + /** | ||
| 5596 | + * 刷新驾驶员数据。 | ||
| 5597 | + */ | ||
| 5598 | + scope[ctrlAs].$$internal_refresh_dsdata_j = function() { | ||
| 5599 | + if (new_j1) { | ||
| 5600 | + var new_j1_id = new_j1.split("_")[0]; | ||
| 5601 | + var new_j1_name = new_j1.split("_")[1]; | ||
| 5602 | + var new_j1_gh = new_j1.split("_")[2]; | ||
| 5603 | + if (new_j1_gh && new_j1_gh.indexOf("-") > 0) { | ||
| 5604 | + new_j1_gh = new_j1_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 5605 | + } | ||
| 5606 | + | ||
| 5607 | + if (new_j2) { | ||
| 5608 | + var new_j2_id = new_j2.split("_")[0]; | ||
| 5609 | + var new_j2_name = new_j2.split("_")[1]; | ||
| 5610 | + var new_j2_gh = new_j2.split("_")[2]; | ||
| 5611 | + if (new_j2_gh && new_j2_gh.indexOf("-") > 0) { | ||
| 5612 | + new_j2_gh = new_j2_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 5613 | + } | ||
| 5614 | + | ||
| 5615 | + if (old_isfb) { // 使用分班判定 | ||
| 5616 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5617 | + if (index < old_isfb_index) { | ||
| 5618 | + obj.j = new_j1_id; | ||
| 5619 | + obj.jGh = new_j1_gh; | ||
| 5620 | + obj.jName = new_j1_name; | ||
| 5621 | + } else { | ||
| 5622 | + obj.j = new_j2_id; | ||
| 5623 | + obj.jGh = new_j2_gh; | ||
| 5624 | + obj.jName = new_j2_name; | ||
| 5625 | + } | ||
| 5626 | + }); | ||
| 5627 | + | ||
| 5628 | + } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5629 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5630 | + if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5631 | + obj.j = new_j1_id; | ||
| 5632 | + obj.jGh = new_j1_gh; | ||
| 5633 | + obj.jName = new_j1_name; | ||
| 5634 | + } else { | ||
| 5635 | + obj.j = new_j2_id; | ||
| 5636 | + obj.jGh = new_j2_gh; | ||
| 5637 | + obj.jName = new_j2_name; | ||
| 5638 | + } | ||
| 5639 | + }); | ||
| 5640 | + } else { // 使用一半一半班次判定 | ||
| 5641 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5642 | + if (index < old_half_bcs) { | ||
| 5643 | + obj.j = new_j1_id; | ||
| 5644 | + obj.jGh = new_j1_gh; | ||
| 5645 | + obj.jName = new_j1_name; | ||
| 5646 | + } else { | ||
| 5647 | + obj.j = new_j2_id; | ||
| 5648 | + obj.jGh = new_j2_gh; | ||
| 5649 | + obj.jName = new_j2_name; | ||
| 5650 | + } | ||
| 5651 | + }); | ||
| 5652 | + } | ||
| 5653 | + | ||
| 5654 | + } else { | ||
| 5655 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5656 | + obj.j = new_j1_id; | ||
| 5657 | + obj.jGh = new_j1_gh; | ||
| 5658 | + obj.jName = new_j1_name; | ||
| 5659 | + }); | ||
| 5660 | + } | ||
| 5661 | + | ||
| 5662 | + } else { | ||
| 5663 | + // 使用旧的 | ||
| 5664 | + angular.forEach(old_j, function(value, key) { | ||
| 5665 | + angular.forEach(value, function(i) { | ||
| 5666 | + scope[ctrlAs].ds[i].j = key.split("_")[0]; | ||
| 5667 | + scope[ctrlAs].ds[i].jName = key.split("_")[1]; | ||
| 5668 | + scope[ctrlAs].ds[i].jGh = key.split("_")[2]; | ||
| 5669 | + }); | ||
| 5670 | + }); | ||
| 5671 | + } | ||
| 5672 | + }; | ||
| 5673 | + /** | ||
| 5674 | + * 刷新售票员数据。 | ||
| 5675 | + */ | ||
| 5676 | + scope[ctrlAs].$$internal_refresh_dsdata_s = function() { | ||
| 5677 | + if (new_s1) { | ||
| 5678 | + var new_s1_id = new_s1.split("_")[0]; | ||
| 5679 | + var new_s1_name = new_s1.split("_")[1]; | ||
| 5680 | + var new_s1_gh = new_s1.split("_")[2]; | ||
| 5681 | + if (new_s1_gh && new_s1_gh.indexOf("-") > 0) { // 修正工号,吧 55- 这种前缀去掉 | ||
| 5682 | + new_s1_gh = new_s1_gh.substr(3); | ||
| 5683 | + } | ||
| 5684 | + | ||
| 5685 | + if (new_s2) { | ||
| 5686 | + var new_s2_id = new_s2.split("_")[0]; | ||
| 5687 | + var new_s2_name = new_s2.split("_")[1]; | ||
| 5688 | + var new_s2_gh = new_s2.split("_")[2]; | ||
| 5689 | + if (new_s2_gh && new_s2_gh.indexOf("-") > 0) { // 修正工号,吧 55- 这种前缀去掉 | ||
| 5690 | + new_s2_gh = new_s2_gh.substr(3); | ||
| 5691 | + } | ||
| 5692 | + | ||
| 5693 | + if (old_isfb) { // 使用分班判定 | ||
| 5694 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5695 | + if (index < old_isfb_index) { | ||
| 5696 | + obj.s = new_s1_id; | ||
| 5697 | + | ||
| 5698 | + obj.sGh = new_s1_gh; | ||
| 5699 | + obj.sName = new_s1_name; | ||
| 5700 | + } else { | ||
| 5701 | + obj.s = new_s2_id; | ||
| 5702 | + obj.sGh = new_s2_gh; | ||
| 5703 | + obj.sName = new_s2_name; | ||
| 5704 | + } | ||
| 5705 | + }); | ||
| 5706 | + | ||
| 5707 | + } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 5708 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5709 | + if (obj.fcno <= old_firstJCBCFcno) { | ||
| 5710 | + obj.s = new_s1_id; | ||
| 5711 | + obj.sGh = new_s1_gh; | ||
| 5712 | + obj.sName = new_s1_name; | ||
| 5713 | + } else { | ||
| 5714 | + obj.s = new_s2_id; | ||
| 5715 | + obj.sGh = new_s2_gh; | ||
| 5716 | + obj.sName = new_s2_name; | ||
| 5717 | + } | ||
| 5718 | + }); | ||
| 5719 | + } else { // 使用一半一半班次判定 | ||
| 5720 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5721 | + if (index < old_half_bcs) { | ||
| 5722 | + obj.s = new_s1_id; | ||
| 5723 | + obj.sGh = new_s1_gh; | ||
| 5724 | + obj.sName = new_s1_name; | ||
| 5725 | + } else { | ||
| 5726 | + obj.s = new_s2_id; | ||
| 5727 | + obj.sGh = new_s2_gh; | ||
| 5728 | + obj.sName = new_s2_name; | ||
| 5729 | + } | ||
| 5730 | + }); | ||
| 5731 | + } | ||
| 5732 | + | ||
| 5733 | + } else { | ||
| 5734 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 5735 | + obj.s = new_s1_id; | ||
| 5736 | + obj.sGh = new_s1_gh; | ||
| 5737 | + obj.sName = new_s1_name; | ||
| 5738 | + }); | ||
| 5739 | + } | ||
| 5740 | + | ||
| 5741 | + } else { | ||
| 5742 | + // 先清空 | ||
| 5743 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5744 | + obj.s = undefined; | ||
| 5745 | + obj.sGh = undefined; | ||
| 5746 | + obj.sName = undefined; | ||
| 5747 | + }); | ||
| 5748 | + | ||
| 5749 | + // 使用旧的 | ||
| 5750 | + angular.forEach(old_s, function(value, key) { | ||
| 5751 | + angular.forEach(value, function(i) { | ||
| 5752 | + scope[ctrlAs].ds[i].s = key.split("_")[0]; | ||
| 5753 | + scope[ctrlAs].ds[i].sName = key.split("_")[1]; | ||
| 5754 | + scope[ctrlAs].ds[i].sGh = key.split("_")[2]; | ||
| 5755 | + }); | ||
| 5756 | + }); | ||
| 5757 | + } | ||
| 5758 | + }; | ||
| 5759 | + | ||
| 5760 | + /** | ||
| 5761 | + * 刷新内部数据。 | ||
| 5762 | + */ | ||
| 5763 | + scope[ctrlAs].$$internal_refresh_dsdata = function() { | ||
| 5764 | + // 更新车辆 | ||
| 5765 | + scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 5766 | + | ||
| 5767 | + // 更新驾驶员 | ||
| 5768 | + scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 5769 | + | ||
| 5770 | + // 更新售票员 | ||
| 5771 | + scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 5772 | + }; | ||
| 5773 | + | ||
| 5774 | + // -------------- 监控function ---------------// | ||
| 5775 | + attr.$observe('cl1', function(value) { | ||
| 5776 | + if (value && value != "") { | ||
| 5777 | + var obj = JSON.parse(value); | ||
| 5778 | + if (obj.id && obj.zbh) { | ||
| 5779 | + new_cl1 = obj.id + "_" + obj.zbh; | ||
| 5780 | + } else { | ||
| 5781 | + new_cl1 = undefined; | ||
| 5782 | + } | ||
| 5783 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5784 | + } | ||
| 5785 | + }); | ||
| 5786 | + | ||
| 5787 | + attr.$observe('cl2', function(value) { | ||
| 5788 | + if (value && value != "") { | ||
| 5789 | + var obj = JSON.parse(value); | ||
| 5790 | + if (obj.id && obj.zbh) { | ||
| 5791 | + new_cl2 = obj.id + "_" + obj.zbh; | ||
| 5792 | + } else { | ||
| 5793 | + new_cl2 = undefined; | ||
| 5794 | + } | ||
| 5795 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5796 | + } | ||
| 5797 | + }); | ||
| 5798 | + | ||
| 5799 | + attr.$observe('j1', function(value) { | ||
| 5800 | + if (value && value != "") { | ||
| 5801 | + var obj = JSON.parse(value); | ||
| 5802 | + if (obj.id && obj.name && obj.jobCode) { | ||
| 5803 | + new_j1 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5804 | + } else { | ||
| 5805 | + new_j1 = undefined; | ||
| 5806 | + } | ||
| 5807 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5808 | + } | ||
| 5809 | + }); | ||
| 5810 | + | ||
| 5811 | + attr.$observe('j2', function(value) { | ||
| 5812 | + if (value && value != "") { | ||
| 5813 | + var obj = JSON.parse(value); | ||
| 5814 | + if (obj.id && obj.name && obj.jobCode) { | ||
| 5815 | + new_j2 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5816 | + } else { | ||
| 5817 | + new_j2 = undefined; | ||
| 5818 | + } | ||
| 5819 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5820 | + } | ||
| 5821 | + }); | ||
| 5822 | + | ||
| 5823 | + attr.$observe('s1', function(value) { | ||
| 5824 | + if (value && value != "") { | ||
| 5825 | + var obj = JSON.parse(value); | ||
| 5826 | + if (obj.id && obj.name && obj.jobCode) { | ||
| 5827 | + new_s1 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5828 | + } else { | ||
| 5829 | + new_s1 = undefined; | ||
| 5830 | + } | ||
| 5831 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5832 | + } | ||
| 5833 | + }); | ||
| 5834 | + | ||
| 5835 | + attr.$observe('s2', function(value) { | ||
| 5836 | + if (value && value != "") { | ||
| 5837 | + var obj = JSON.parse(value); | ||
| 5838 | + if (obj.id && obj.name && obj.jobCode) { | ||
| 5839 | + new_s2 = obj.id + "_" + obj.name + "_" + obj.jobCode; | ||
| 5840 | + } else { | ||
| 5841 | + new_s2 = undefined; | ||
| 5842 | + } | ||
| 5843 | + scope[ctrlAs].$$internal_refresh_dsdata(); | ||
| 5844 | + } | ||
| 5845 | + }); | ||
| 5846 | + | ||
| 5847 | + scope.$watch( | ||
| 5848 | + function() { | ||
| 5849 | + return scope[ctrlAs].ds; | ||
| 5850 | + }, | ||
| 5851 | + function(newValue, oldValue) { | ||
| 5852 | + if (newValue && newValue.length > 0) { | ||
| 5853 | + | ||
| 5854 | + var j1 = newValue[0].j; | ||
| 5855 | + | ||
| 5856 | + angular.forEach(newValue, function(obj, index) { | ||
| 5857 | + var k1 = obj.cl + "_" + obj.clZbh; | ||
| 5858 | + var k2 = !obj.j? undefined: obj.j + "_" + obj.jName + "_" + obj.jGh; | ||
| 5859 | + var k3 = !obj.s? undefined: obj.s + "_" + obj.sName + "_" + obj.sGh; | ||
| 5860 | + | ||
| 5861 | + if (!old_cl[k1]) { | ||
| 5862 | + old_cl[k1] = []; | ||
| 5863 | + } | ||
| 5864 | + if (!old_j[k2] && k2) { | ||
| 5865 | + old_j[k2] = []; | ||
| 5866 | + } | ||
| 5867 | + if (!old_s[k3] && k3) { | ||
| 5868 | + old_s[k3] = []; | ||
| 5869 | + } | ||
| 5870 | + | ||
| 5871 | + // 闭包 | ||
| 5872 | + (function(i) { | ||
| 5873 | + old_cl[k1].push(i); | ||
| 5874 | + if (k2) { | ||
| 5875 | + old_j[k2].push(i); | ||
| 5876 | + } | ||
| 5877 | + if (k3) { | ||
| 5878 | + old_s[k3].push(i); | ||
| 5879 | + } | ||
| 5880 | + })(index); | ||
| 5881 | + | ||
| 5882 | + // 判断是否分班 | ||
| 5883 | + if (j1 != obj.j && !old_isfb) { | ||
| 5884 | + old_isfb = true; | ||
| 5885 | + old_isfb_index = index; | ||
| 5886 | + } | ||
| 5887 | + | ||
| 5888 | + // 判断进出场 | ||
| 5889 | + if (obj.bcType == 'in' && !old_hasJCBC) { | ||
| 5890 | + old_hasJCBC = true; | ||
| 5891 | + old_firstJCBCFcno = obj.fcno; | ||
| 5892 | + } | ||
| 5893 | + }); | ||
| 5894 | + | ||
| 5895 | + old_max_fcno = newValue[newValue.length - 1].fcno; | ||
| 5896 | + old_half_bcs = newValue.length / 2; | ||
| 5897 | + | ||
| 5898 | + // 可以用resource封装一下 | ||
| 5899 | + // TODO: | ||
| 5900 | + } | ||
| 5901 | + } | ||
| 5902 | + ); | ||
| 5903 | + } | ||
| 5904 | + } | ||
| 5905 | + } | ||
| 5906 | + }; | ||
| 5907 | + } | ||
| 5908 | + ] | ||
| 5892 | ); | 5909 | ); |
| 5893 | -/** | ||
| 5894 | - * saPlaninfoedit2指令,排班明细编辑控件,用在调度执勤日报的修改功能 | ||
| 5895 | - * name(必须),控件的名字 | ||
| 5896 | - * ds,外部数据源 | ||
| 5897 | - * fd, 表单数据源 | ||
| 5898 | - */ | ||
| 5899 | -angular.module('ScheduleApp').directive( | ||
| 5900 | - 'saPlaninfoedit2', | ||
| 5901 | - [ | ||
| 5902 | - function() { | ||
| 5903 | - return { | ||
| 5904 | - restrict: 'E', | ||
| 5905 | - templateUrl: '/pages/scheduleApp/module/common/dts2/scheduleplan/saPlaninfoeditTemplate.html', | ||
| 5906 | - scope: { // 独立作用域 | ||
| 5907 | - ds: '=ngModel', // 时刻明细数据源头 | ||
| 5908 | - fd: '=formData' // 表单数据源(车辆、驾驶员、售票员信息) | ||
| 5909 | - }, | ||
| 5910 | - controllerAs: '$saPlanInfoEditCtrl', | ||
| 5911 | - bindToController: true, | ||
| 5912 | - controller: function() { | ||
| 5913 | - //var self = this; | ||
| 5914 | - | ||
| 5915 | - }, | ||
| 5916 | - | ||
| 5917 | - compile: function(tElem, tAttrs) { | ||
| 5918 | - // 获取属性 | ||
| 5919 | - var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 5920 | - if (!$attr_name) { | ||
| 5921 | - throw {msg: "saPlaninfoedit2指令name属性不能为空"}; | ||
| 5922 | - } | ||
| 5923 | - | ||
| 5924 | - // 内部controlAs名字 | ||
| 5925 | - var ctrlAs = '$saPlanInfoEditCtrl'; | ||
| 5926 | - | ||
| 5927 | - | ||
| 5928 | - // 内部变量,原始车辆,人员数据 | ||
| 5929 | - var old_cl = {}; // key:{车辆id_车辆自编号},value:所在list下标数组 | ||
| 5930 | - var old_j = {}; // key:{驾驶员id_姓名_工号}, value:所在list下标数组 | ||
| 5931 | - var old_s = {}; // key:{售票员id_姓名_工号}, value:所在list下标数组 | ||
| 5932 | - var old_isfb = false; // 是否有分班 | ||
| 5933 | - var old_isfb_index = 0; // 分班开始索引 | ||
| 5934 | - var old_hasJCBC = false; // 是否有进场班次 | ||
| 5935 | - var old_max_fcno = 0; // 最大发车顺序号 | ||
| 5936 | - var old_firstJCBCFcno = 0; // 第一个进场班次发车顺序号 | ||
| 5937 | - var old_half_bcs = 0; // 一般的班次数量 | ||
| 5938 | - var old_ddreason = {}; // key:{调度原因}, value:所在list下标数组 | ||
| 5939 | - var old_dddesc = {}; // key:{调度描述}, value:所在list下标数组 | ||
| 5940 | - | ||
| 5941 | - // 内部变量,变更的车辆,变更的人员 | ||
| 5942 | - var new_cl1 = undefined; // 新的车辆1(车辆id_车辆自编号) | ||
| 5943 | - var new_cl2 = undefined; // 新的车辆2(车辆id_车辆自编号) | ||
| 5944 | - var new_j1 = undefined; // 新的驾驶员1(驾驶员id_姓名_工号) | ||
| 5945 | - var new_j2 = undefined; // 新的驾驶员2(驾驶员id_姓名_工号) | ||
| 5946 | - var new_s1 = undefined; // 新的售票员1(售票员id_姓名_工号) | ||
| 5947 | - var new_s2 = undefined; // 新的售票员2(售票员id_姓名_工号) | ||
| 5948 | - var new_ddreason = undefined; // 调度原因 | ||
| 5949 | - var new_dddesc = undefined; // 调度描述 | ||
| 5950 | - | ||
| 5951 | - // 表单值,被赋值的次数 | ||
| 5952 | - var form_data_assign_count = { // 大于1表示已经初始化过了 | ||
| 5953 | - cl1 : -1, | ||
| 5954 | - cl2 : -1, | ||
| 5955 | - j1 : -1, | ||
| 5956 | - j2 : -1, | ||
| 5957 | - j3 : -1, | ||
| 5958 | - s1 : -1, | ||
| 5959 | - s2 : -1, | ||
| 5960 | - s3 : -1 | ||
| 5961 | - }; | ||
| 5962 | - | ||
| 5963 | - return { | ||
| 5964 | - pre: function(scope, element, attr) { | ||
| 5965 | - | ||
| 5966 | - }, | ||
| 5967 | - post: function(scope, element, attr) { | ||
| 5968 | - | ||
| 5969 | - /** | ||
| 5970 | - * 刷新调度原因数据。 | ||
| 5971 | - */ | ||
| 5972 | - scope[ctrlAs].$$internal_refresh_dsdata_ddreason = function() { | ||
| 5973 | - if (new_ddreason) { | ||
| 5974 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5975 | - obj.modifyReason = new_ddreason; | ||
| 5976 | - }); | ||
| 5977 | - } else { | ||
| 5978 | - // 清空,不使用旧的 | ||
| 5979 | - angular.forEach(old_ddreason, function(value, key) { | ||
| 5980 | - angular.forEach(value, function(i) { | ||
| 5981 | - scope[ctrlAs].ds[i].modifyReason = undefined; | ||
| 5982 | - }); | ||
| 5983 | - }); | ||
| 5984 | - } | ||
| 5985 | - }; | ||
| 5986 | - | ||
| 5987 | - /** | ||
| 5988 | - * 刷新调度描述数据。 | ||
| 5989 | - */ | ||
| 5990 | - scope[ctrlAs].$$internal_refresh_dsdata_dddesc = function() { | ||
| 5991 | - if (new_dddesc) { | ||
| 5992 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5993 | - obj.modifyRemark = new_dddesc; | ||
| 5994 | - }); | ||
| 5995 | - } else { | ||
| 5996 | - // 清空,不使用旧的 | ||
| 5997 | - angular.forEach(old_dddesc, function(value, key) { | ||
| 5998 | - angular.forEach(value, function(i) { | ||
| 5999 | - scope[ctrlAs].ds[i].modifyRemark = undefined; | ||
| 6000 | - }); | ||
| 6001 | - }); | ||
| 6002 | - } | ||
| 6003 | - }; | ||
| 6004 | - | ||
| 6005 | - /** | ||
| 6006 | - * 刷新车辆数据。 | ||
| 6007 | - */ | ||
| 6008 | - scope[ctrlAs].$$internal_refresh_dsdata_cl = function() { | ||
| 6009 | - if (new_cl1) { | ||
| 6010 | - var new_cl1_id = new_cl1.split("_")[0]; | ||
| 6011 | - var new_cl1_zbh = new_cl1.split("_")[1]; | ||
| 6012 | - | ||
| 6013 | - if (new_cl2) { | ||
| 6014 | - var new_cl2_id = new_cl2.split("_")[0]; | ||
| 6015 | - var new_cl2_zbh = new_cl2.split("_")[1]; | ||
| 6016 | - | ||
| 6017 | - if (old_isfb) { // 使用分班判定 | ||
| 6018 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6019 | - if (index < old_isfb_index) { | ||
| 6020 | - obj.cl = new_cl1_id; | ||
| 6021 | - obj.clZbh = new_cl1_zbh; | ||
| 6022 | - } else { | ||
| 6023 | - obj.cl = new_cl2_id; | ||
| 6024 | - obj.clZbh = new_cl2_zbh; | ||
| 6025 | - } | ||
| 6026 | - }); | ||
| 6027 | - | ||
| 6028 | - } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 6029 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 6030 | - if (obj.fcno <= old_firstJCBCFcno) { | ||
| 6031 | - obj.cl = new_cl1_id; | ||
| 6032 | - obj.clZbh = new_cl1_zbh; | ||
| 6033 | - } else { | ||
| 6034 | - obj.cl = new_cl2_id; | ||
| 6035 | - obj.clZbh = new_cl2_zbh; | ||
| 6036 | - } | ||
| 6037 | - }); | ||
| 6038 | - } else { // 使用一半一半班次判定 | ||
| 6039 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6040 | - if (index < old_half_bcs) { | ||
| 6041 | - obj.cl = new_cl1_id; | ||
| 6042 | - obj.clZbh = new_cl1_zbh; | ||
| 6043 | - } else { | ||
| 6044 | - obj.cl = new_cl2_id; | ||
| 6045 | - obj.clZbh = new_cl2_zbh; | ||
| 6046 | - } | ||
| 6047 | - }); | ||
| 6048 | - } | ||
| 6049 | - | ||
| 6050 | - } else { | ||
| 6051 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6052 | - obj.cl = new_cl1_id; | ||
| 6053 | - obj.clZbh = new_cl1_zbh; | ||
| 6054 | - }); | ||
| 6055 | - } | ||
| 6056 | - | ||
| 6057 | - } else { | ||
| 6058 | - // 清空,不使用旧的 | ||
| 6059 | - angular.forEach(old_cl, function(value, key) { | ||
| 6060 | - angular.forEach(value, function(i) { | ||
| 6061 | - //scope[ctrlAs].ds[i].cl = key.split("_")[0]; | ||
| 6062 | - //scope[ctrlAs].ds[i].clZbh = key.split("_")[1]; | ||
| 6063 | - scope[ctrlAs].ds[i].cl = undefined; | ||
| 6064 | - scope[ctrlAs].ds[i].clZbh = undefined; | ||
| 6065 | - }); | ||
| 6066 | - }); | ||
| 6067 | - } | ||
| 6068 | - }; | ||
| 6069 | - | ||
| 6070 | - /** | ||
| 6071 | - * 刷新驾驶员数据。 | ||
| 6072 | - */ | ||
| 6073 | - scope[ctrlAs].$$internal_refresh_dsdata_j = function() { | ||
| 6074 | - if (new_j1) { | ||
| 6075 | - var new_j1_id = new_j1.split("_")[0]; | ||
| 6076 | - var new_j1_name = new_j1.split("_")[1]; | ||
| 6077 | - var new_j1_gh = new_j1.split("_")[2]; | ||
| 6078 | - if (new_j1_gh && new_j1_gh.indexOf("-") > 0) { | ||
| 6079 | - new_j1_gh = new_j1_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 6080 | - } | ||
| 6081 | - | ||
| 6082 | - if (new_j2) { | ||
| 6083 | - var new_j2_id = new_j2.split("_")[0]; | ||
| 6084 | - var new_j2_name = new_j2.split("_")[1]; | ||
| 6085 | - var new_j2_gh = new_j2.split("_")[2]; | ||
| 6086 | - if (new_j2_gh && new_j2_gh.indexOf("-") > 0) { | ||
| 6087 | - new_j2_gh = new_j2_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 6088 | - } | ||
| 6089 | - | ||
| 6090 | - if (old_isfb) { // 使用分班判定 | ||
| 6091 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6092 | - if (index < old_isfb_index) { | ||
| 6093 | - obj.j = new_j1_id; | ||
| 6094 | - obj.jGh = new_j1_gh; | ||
| 6095 | - obj.jName = new_j1_name; | ||
| 6096 | - } else { | ||
| 6097 | - obj.j = new_j2_id; | ||
| 6098 | - obj.jGh = new_j2_gh; | ||
| 6099 | - obj.jName = new_j2_name; | ||
| 6100 | - } | ||
| 6101 | - }); | ||
| 6102 | - | ||
| 6103 | - } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 6104 | - angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 6105 | - if (obj.fcno <= old_firstJCBCFcno) { | ||
| 6106 | - obj.j = new_j1_id; | ||
| 6107 | - obj.jGh = new_j1_gh; | ||
| 6108 | - obj.jName = new_j1_name; | ||
| 6109 | - } else { | ||
| 6110 | - obj.j = new_j2_id; | ||
| 6111 | - obj.jGh = new_j2_gh; | ||
| 6112 | - obj.jName = new_j2_name; | ||
| 6113 | - } | ||
| 6114 | - }); | ||
| 6115 | - } else { // 使用一半一半班次判定 | ||
| 6116 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6117 | - if (index < old_half_bcs) { | ||
| 6118 | - obj.j = new_j1_id; | ||
| 6119 | - obj.jGh = new_j1_gh; | ||
| 6120 | - obj.jName = new_j1_name; | ||
| 6121 | - } else { | ||
| 6122 | - obj.j = new_j2_id; | ||
| 6123 | - obj.jGh = new_j2_gh; | ||
| 6124 | - obj.jName = new_j2_name; | ||
| 6125 | - } | ||
| 6126 | - }); | ||
| 6127 | - } | ||
| 6128 | - | ||
| 6129 | - } else { | ||
| 6130 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6131 | - obj.j = new_j1_id; | ||
| 6132 | - obj.jGh = new_j1_gh; | ||
| 6133 | - obj.jName = new_j1_name; | ||
| 6134 | - }); | ||
| 6135 | - } | ||
| 6136 | - | ||
| 6137 | - } else { | ||
| 6138 | - // 清空,不使用使用旧的 | ||
| 6139 | - angular.forEach(old_j, function(value, key) { | ||
| 6140 | - angular.forEach(value, function(i) { | ||
| 6141 | - //scope[ctrlAs].ds[i].j = key.split("_")[0]; | ||
| 6142 | - //scope[ctrlAs].ds[i].jName = key.split("_")[1]; | ||
| 6143 | - //scope[ctrlAs].ds[i].jGh = key.split("_")[2]; | ||
| 6144 | - scope[ctrlAs].ds[i].j = undefined; | ||
| 6145 | - scope[ctrlAs].ds[i].jName = undefined; | ||
| 6146 | - scope[ctrlAs].ds[i].jGh = undefined; | ||
| 6147 | - }); | ||
| 6148 | - }); | ||
| 6149 | - } | ||
| 6150 | - }; | ||
| 6151 | - | ||
| 6152 | - /** | ||
| 6153 | - * 刷新售票员数据(和驾驶员配对的,有驾驶员,才有售票员)。 | ||
| 6154 | - */ | ||
| 6155 | - scope[ctrlAs].$$internal_refresh_dsdata_s = function() { | ||
| 6156 | - var j_id = undefined; | ||
| 6157 | - var s_id = undefined; | ||
| 6158 | - var s_gh = undefined; | ||
| 6159 | - var s_name = undefined; | ||
| 6160 | - | ||
| 6161 | - if (new_j1) { | ||
| 6162 | - j_id = new_j1.split("_")[0]; | ||
| 6163 | - if (new_s1) { | ||
| 6164 | - s_id = new_s1.split("_")[0]; | ||
| 6165 | - s_name = new_s1.split("_")[1]; | ||
| 6166 | - s_gh = new_s1.split("_")[2]; | ||
| 6167 | - if (s_gh && s_gh.indexOf("-") > 0) { // 修正工号,把 55- 这种前缀去掉 | ||
| 6168 | - s_gh = s_gh.substr(3); | ||
| 6169 | - } | ||
| 6170 | - } else { | ||
| 6171 | - s_id = undefined; | ||
| 6172 | - s_gh = undefined; | ||
| 6173 | - s_name = undefined | ||
| 6174 | - } | ||
| 6175 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6176 | - if (obj.j == j_id) { | ||
| 6177 | - obj.s = s_id; | ||
| 6178 | - obj.sGh = s_gh; | ||
| 6179 | - obj.sName = s_name; | ||
| 6180 | - } | ||
| 6181 | - }); | ||
| 6182 | - } | ||
| 6183 | - if (new_j2) { | ||
| 6184 | - j_id = new_j2.split("_")[0]; | ||
| 6185 | - if (new_s2) { | ||
| 6186 | - s_id = new_s2.split("_")[0]; | ||
| 6187 | - s_name = new_s2.split("_")[1]; | ||
| 6188 | - s_gh = new_s2.split("_")[2]; | ||
| 6189 | - if (s_gh && s_gh.indexOf("-") > 0) { // 修正工号,把 55- 这种前缀去掉 | ||
| 6190 | - s_gh = s_gh.substr(3); | ||
| 6191 | - } | ||
| 6192 | - } else { | ||
| 6193 | - s_id = undefined; | ||
| 6194 | - s_gh = undefined; | ||
| 6195 | - s_name = undefined | ||
| 6196 | - } | ||
| 6197 | - | ||
| 6198 | - angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6199 | - if (obj.j == j_id) { | ||
| 6200 | - obj.s = s_id; | ||
| 6201 | - obj.sGh = s_gh; | ||
| 6202 | - obj.sName = s_name; | ||
| 6203 | - } | ||
| 6204 | - }); | ||
| 6205 | - } | ||
| 6206 | - }; | ||
| 6207 | - | ||
| 6208 | - //-------------- 监控调度原因的变化 ----------------// | ||
| 6209 | - scope.$watch( | ||
| 6210 | - function() { | ||
| 6211 | - return scope[ctrlAs].fd.ddr; | ||
| 6212 | - }, | ||
| 6213 | - function(newValue, oldValue) { | ||
| 6214 | - if (newValue || newValue == 0) { | ||
| 6215 | - new_ddreason = newValue; | ||
| 6216 | - } | ||
| 6217 | - scope[ctrlAs].$$internal_refresh_dsdata_ddreason(); | ||
| 6218 | - }, | ||
| 6219 | - true | ||
| 6220 | - ); | ||
| 6221 | - | ||
| 6222 | - //-------------- 监控调度描述的变化 ----------------// | ||
| 6223 | - scope.$watch( | ||
| 6224 | - function() { | ||
| 6225 | - return scope[ctrlAs].fd.ddrdesc; | ||
| 6226 | - }, | ||
| 6227 | - function(newValue, oldValue) { | ||
| 6228 | - if (newValue || newValue == 0) { | ||
| 6229 | - new_dddesc = newValue; | ||
| 6230 | - } | ||
| 6231 | - scope[ctrlAs].$$internal_refresh_dsdata_dddesc(); | ||
| 6232 | - }, | ||
| 6233 | - true | ||
| 6234 | - ); | ||
| 6235 | - | ||
| 6236 | - | ||
| 6237 | - //-------------- 监控表单车辆1的变化 ----------------// | ||
| 6238 | - scope.$watch( | ||
| 6239 | - function() { | ||
| 6240 | - return scope[ctrlAs].fd.cl1; | ||
| 6241 | - }, | ||
| 6242 | - function(newValue, oldValue) { | ||
| 6243 | - if (form_data_assign_count.cl1 > 2) { | ||
| 6244 | - if (newValue.id) { | ||
| 6245 | - if (newValue.id && newValue.zbh) { | ||
| 6246 | - new_cl1 = newValue.id + "_" + newValue.zbh; | ||
| 6247 | - } else { | ||
| 6248 | - new_cl1 = undefined; | ||
| 6249 | - } | ||
| 6250 | - } else { | ||
| 6251 | - new_cl1 = undefined; | ||
| 6252 | - } | ||
| 6253 | - scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 6254 | - } | ||
| 6255 | - | ||
| 6256 | - form_data_assign_count.cl1 ++; | ||
| 6257 | - }, | ||
| 6258 | - true | ||
| 6259 | - ); | ||
| 6260 | - | ||
| 6261 | - //-------------- 监控表单车辆2的变化 ----------------// | ||
| 6262 | - scope.$watch( | ||
| 6263 | - function() { | ||
| 6264 | - return scope[ctrlAs].fd.cl2; | ||
| 6265 | - }, | ||
| 6266 | - function(newValue, oldValue) { | ||
| 6267 | - if (form_data_assign_count.cl2 > 2) { | ||
| 6268 | - if (newValue.id) { | ||
| 6269 | - if (newValue.id && newValue.zbh) { | ||
| 6270 | - new_cl2 = newValue.id + "_" + newValue.zbh; | ||
| 6271 | - } else { | ||
| 6272 | - new_cl2 = undefined; | ||
| 6273 | - } | ||
| 6274 | - } else { | ||
| 6275 | - new_cl2 = undefined; | ||
| 6276 | - } | ||
| 6277 | - scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 6278 | - } | ||
| 6279 | - | ||
| 6280 | - form_data_assign_count.cl2 ++; | ||
| 6281 | - }, | ||
| 6282 | - true | ||
| 6283 | - ); | ||
| 6284 | - | ||
| 6285 | - //-------------- 监控表单驾驶员1的变化 ----------------// | ||
| 6286 | - scope.$watch( | ||
| 6287 | - function() { | ||
| 6288 | - return scope[ctrlAs].fd.j1; | ||
| 6289 | - }, | ||
| 6290 | - function(newValue, oldValue) { | ||
| 6291 | - if (form_data_assign_count.j1 > 2) { | ||
| 6292 | - if (newValue.id) { | ||
| 6293 | - if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6294 | - new_j1 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6295 | - } else { | ||
| 6296 | - new_j1 = undefined; | ||
| 6297 | - } | ||
| 6298 | - } else { | ||
| 6299 | - new_j1 = undefined; | ||
| 6300 | - } | ||
| 6301 | - | ||
| 6302 | - scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6303 | - scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6304 | - } | ||
| 6305 | - | ||
| 6306 | - form_data_assign_count.j1 ++; | ||
| 6307 | - }, | ||
| 6308 | - true | ||
| 6309 | - ); | ||
| 6310 | - | ||
| 6311 | - //-------------- 监控表单售票员1的变化 ----------------// | ||
| 6312 | - scope.$watch( | ||
| 6313 | - function() { | ||
| 6314 | - return scope[ctrlAs].fd.s1; | ||
| 6315 | - }, | ||
| 6316 | - function(newValue, oldValue) { | ||
| 6317 | - if (form_data_assign_count.s1 > 2) { | ||
| 6318 | - if (newValue.id) { | ||
| 6319 | - if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6320 | - new_s1 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6321 | - } else { | ||
| 6322 | - new_s1 = undefined; | ||
| 6323 | - } | ||
| 6324 | - } else { | ||
| 6325 | - new_s1 = undefined; | ||
| 6326 | - } | ||
| 6327 | - | ||
| 6328 | - scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6329 | - scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6330 | - } | ||
| 6331 | - | ||
| 6332 | - form_data_assign_count.s1 ++; | ||
| 6333 | - }, | ||
| 6334 | - true | ||
| 6335 | - ); | ||
| 6336 | - | ||
| 6337 | - //-------------- 监控表单驾驶员2的变化 ----------------// | ||
| 6338 | - scope.$watch( | ||
| 6339 | - function() { | ||
| 6340 | - return scope[ctrlAs].fd.j2; | ||
| 6341 | - }, | ||
| 6342 | - function(newValue, oldValue) { | ||
| 6343 | - if (form_data_assign_count.j2 > 2) { | ||
| 6344 | - if (newValue.id) { | ||
| 6345 | - if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6346 | - new_j2 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6347 | - } else { | ||
| 6348 | - new_j2 = undefined; | ||
| 6349 | - } | ||
| 6350 | - } else { | ||
| 6351 | - new_j2 = undefined; | ||
| 6352 | - } | ||
| 6353 | - | ||
| 6354 | - scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6355 | - scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6356 | - } | ||
| 6357 | - | ||
| 6358 | - form_data_assign_count.j2 ++; | ||
| 6359 | - }, | ||
| 6360 | - true | ||
| 6361 | - ); | ||
| 6362 | - | ||
| 6363 | - //-------------- 监控表单售票员2的变化 ----------------// | ||
| 6364 | - scope.$watch( | ||
| 6365 | - function() { | ||
| 6366 | - return scope[ctrlAs].fd.s2; | ||
| 6367 | - }, | ||
| 6368 | - function(newValue, oldValue) { | ||
| 6369 | - if (form_data_assign_count.s2 > 2) { | ||
| 6370 | - if (newValue && newValue.id) { | ||
| 6371 | - if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6372 | - new_s2 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6373 | - } else { | ||
| 6374 | - new_s2 = undefined; | ||
| 6375 | - } | ||
| 6376 | - } else { | ||
| 6377 | - new_s2 = undefined; | ||
| 6378 | - } | ||
| 6379 | - | ||
| 6380 | - scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6381 | - scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6382 | - } | ||
| 6383 | - | ||
| 6384 | - form_data_assign_count.s2 ++; | ||
| 6385 | - }, | ||
| 6386 | - true | ||
| 6387 | - ); | ||
| 6388 | - | ||
| 6389 | - //-------------------- 监控ds的变化,更新数据源,初始化formdata的数据 ---------------// | ||
| 6390 | - scope.$watch( | ||
| 6391 | - function() { | ||
| 6392 | - return scope[ctrlAs].ds; | ||
| 6393 | - }, | ||
| 6394 | - function(newValue, oldValue) { | ||
| 6395 | - if (newValue && newValue.length > 0) { | ||
| 6396 | - var j1 = newValue[0].j; | ||
| 6397 | - | ||
| 6398 | - var cl_idFlags = []; // 车辆idFlags数组(有顺序) | ||
| 6399 | - var j_s_idFlags = []; // 驾驶员idFlags,售票员idFlags,[{j:idFlag,s:idFlag},...](有顺序) | ||
| 6400 | - var addreason = []; // 营运调度的原因 | ||
| 6401 | - var adddesc = []; // 营运导读的备注 | ||
| 6402 | - var isRepeat = false; | ||
| 6403 | - var i = 0; | ||
| 6404 | - | ||
| 6405 | - angular.forEach(newValue, function(obj, index) { | ||
| 6406 | - var k1 = obj.cl + "_" + obj.clZbh; | ||
| 6407 | - var k2 = !obj.j? undefined: obj.j + "_" + obj.jName + "_" + obj.jGh; | ||
| 6408 | - var k3 = !obj.s? undefined: obj.s + "_" + obj.sName + "_" + obj.sGh; | ||
| 6409 | - | ||
| 6410 | - if (!old_cl[k1]) { | ||
| 6411 | - old_cl[k1] = []; | ||
| 6412 | - } | ||
| 6413 | - if (!old_j[k2] && k2) { | ||
| 6414 | - old_j[k2] = []; | ||
| 6415 | - } | ||
| 6416 | - if (!old_s[k3] && k3) { | ||
| 6417 | - old_s[k3] = []; | ||
| 6418 | - } | ||
| 6419 | - | ||
| 6420 | - var dd4 = obj.modifyReason == null || obj.modifyReason == undefined ? undefined : | ||
| 6421 | - obj.modifyReason; | ||
| 6422 | - var dd5 = obj.modifyRemark == null || obj.modifyRemark == undefined ? undefined : | ||
| 6423 | - obj.modifyRemark; | ||
| 6424 | - | ||
| 6425 | - if (!old_ddreason[dd4] && dd4) { | ||
| 6426 | - old_ddreason[dd4] = []; | ||
| 6427 | - } | ||
| 6428 | - if (!old_dddesc[dd5] && dd5) { | ||
| 6429 | - old_dddesc[dd5] = []; | ||
| 6430 | - } | ||
| 6431 | - | ||
| 6432 | - // 闭包 | ||
| 6433 | - (function(i) { | ||
| 6434 | - old_cl[k1].push(i); | ||
| 6435 | - if (k2) { | ||
| 6436 | - old_j[k2].push(i); | ||
| 6437 | - } | ||
| 6438 | - if (k3) { | ||
| 6439 | - old_s[k3].push(i); | ||
| 6440 | - } | ||
| 6441 | - if (dd4) { | ||
| 6442 | - old_ddreason[dd4].push(i); | ||
| 6443 | - } | ||
| 6444 | - if (dd5) { | ||
| 6445 | - old_dddesc[dd5].push(i); | ||
| 6446 | - } | ||
| 6447 | - })(index); | ||
| 6448 | - | ||
| 6449 | - // 判断是否分班 | ||
| 6450 | - if (j1 != obj.j && !old_isfb) { | ||
| 6451 | - old_isfb = true; | ||
| 6452 | - old_isfb_index = index; | ||
| 6453 | - } | ||
| 6454 | - | ||
| 6455 | - // 判断进出场 | ||
| 6456 | - if (obj.bcType == 'in' && !old_hasJCBC) { | ||
| 6457 | - old_hasJCBC = true; | ||
| 6458 | - old_firstJCBCFcno = obj.fcno; | ||
| 6459 | - } | ||
| 6460 | - | ||
| 6461 | - //-------------- formdata用数据处理 -------------// | ||
| 6462 | - // 车辆处理 | ||
| 6463 | - isRepeat = false; | ||
| 6464 | - if (obj.cl) { | ||
| 6465 | - for (i = 0; i < cl_idFlags.length; i++) { | ||
| 6466 | - if (cl_idFlags[i] == (obj.cl + "_" + obj.clZbh)) { | ||
| 6467 | - isRepeat = true; | ||
| 6468 | - break; | ||
| 6469 | - } | ||
| 6470 | - } | ||
| 6471 | - if (!isRepeat) { | ||
| 6472 | - cl_idFlags.push(obj.cl + "_" + obj.clZbh); | ||
| 6473 | - } | ||
| 6474 | - } | ||
| 6475 | - | ||
| 6476 | - // 人员处理(以驾驶员id为主,没有的话,售票员不管了) | ||
| 6477 | - isRepeat = false; | ||
| 6478 | - if (obj.j) { | ||
| 6479 | - for (i = 0; i < j_s_idFlags.length; i++) { | ||
| 6480 | - if (j_s_idFlags[i].j == (obj.j + "_" + obj.jName + "_" + obj.jGh)) { | ||
| 6481 | - isRepeat = true; | ||
| 6482 | - break; | ||
| 6483 | - } | ||
| 6484 | - } | ||
| 6485 | - if (!isRepeat) { | ||
| 6486 | - j_s_idFlags.push({ | ||
| 6487 | - j: obj.j + "_" + obj.jName + "_" + obj.jGh, | ||
| 6488 | - s: !obj.s? undefined: (obj.s + "_" + obj.sName + "_" + obj.sGh) | ||
| 6489 | - }); | ||
| 6490 | - } | ||
| 6491 | - } | ||
| 6492 | - | ||
| 6493 | - // 调度原因处理 | ||
| 6494 | - isRepeat = false; | ||
| 6495 | - if (obj.modifyReason || obj.modifyReason == 0) { | ||
| 6496 | - for (i = 0; i < addreason.length; i++) { | ||
| 6497 | - if (addreason[i] == obj.modifyReason) { | ||
| 6498 | - isRepeat = true; | ||
| 6499 | - break; | ||
| 6500 | - } | ||
| 6501 | - } | ||
| 6502 | - if (!isRepeat) { | ||
| 6503 | - addreason.push(obj.modifyReason); | ||
| 6504 | - } | ||
| 6505 | - } | ||
| 6506 | - | ||
| 6507 | - // 调整备注处理 | ||
| 6508 | - isRepeat = false; | ||
| 6509 | - if (obj.modifyRemark && obj.modifyRemark != "") { | ||
| 6510 | - for (i = 0; i < adddesc.length; i++) { | ||
| 6511 | - if (adddesc[i] == obj.modifyRemark) { | ||
| 6512 | - isRepeat = true; | ||
| 6513 | - break; | ||
| 6514 | - } | ||
| 6515 | - } | ||
| 6516 | - if (!isRepeat) { | ||
| 6517 | - adddesc.push(obj.modifyRemark); | ||
| 6518 | - } | ||
| 6519 | - } | ||
| 6520 | - | ||
| 6521 | - }); | ||
| 6522 | - | ||
| 6523 | - old_max_fcno = newValue[newValue.length - 1].fcno; | ||
| 6524 | - old_half_bcs = newValue.length / 2; | ||
| 6525 | - | ||
| 6526 | - // 更新formdata | ||
| 6527 | - for (i = 0; i < cl_idFlags.length; i++) { // 车辆更新前两辆 | ||
| 6528 | - if (i == 0) { // 第一组车 | ||
| 6529 | - scope[ctrlAs].fd["cl1"].id = cl_idFlags[i].split("_")[0]; | ||
| 6530 | - new_cl1 = cl_idFlags[i]; | ||
| 6531 | - } else if (i == 1) { // 第二组车 | ||
| 6532 | - scope[ctrlAs].fd["cl2"].id = cl_idFlags[i].split("_")[0]; | ||
| 6533 | - new_cl2 = cl_idFlags[i]; | ||
| 6534 | - } else { // 第三组及以上车全部忽略 | ||
| 6535 | - break; | ||
| 6536 | - } | ||
| 6537 | - } | ||
| 6538 | - for (i = 0; i < j_s_idFlags.length; i++) { // 人员更新 | ||
| 6539 | - if (i == 0) { // 第一组人员 | ||
| 6540 | - scope[ctrlAs].fd["j1"].id = j_s_idFlags[i].j.split("_")[0]; | ||
| 6541 | - scope[ctrlAs].fd["s1"].id = j_s_idFlags[i].s && j_s_idFlags[i].s.split("_")[0]; | ||
| 6542 | - new_j1 = j_s_idFlags[i].j; | ||
| 6543 | - new_s1 = j_s_idFlags[i].s; | ||
| 6544 | - | ||
| 6545 | - } else if (i == 1) { // 第二组人员 | ||
| 6546 | - scope[ctrlAs].fd["j2"].id = j_s_idFlags[i].j.split("_")[0]; | ||
| 6547 | - scope[ctrlAs].fd["s2"].id = j_s_idFlags[i].s && j_s_idFlags[i].s.split("_")[0]; | ||
| 6548 | - new_j2 = j_s_idFlags[i].j; | ||
| 6549 | - new_s2 = j_s_idFlags[i].s; | ||
| 6550 | - } else { // 第三组及以上全部忽律 | ||
| 6551 | - break; | ||
| 6552 | - } | ||
| 6553 | - } | ||
| 6554 | - // 更新form_data_assign_count,有值设置成2,没值设置成3,表示已经从ds处初始化完毕 | ||
| 6555 | - if (new_cl1) { | ||
| 6556 | - form_data_assign_count["cl1"] = 2; | ||
| 6557 | - } else { | ||
| 6558 | - form_data_assign_count["cl1"] = 3; | ||
| 6559 | - } | ||
| 6560 | - if (new_cl2) { | ||
| 6561 | - form_data_assign_count["cl2"] = 2; | ||
| 6562 | - } else { | ||
| 6563 | - form_data_assign_count["cl2"] = 3; | ||
| 6564 | - } | ||
| 6565 | - if (new_j1) { | ||
| 6566 | - form_data_assign_count["j1"] = 2; | ||
| 6567 | - } else { | ||
| 6568 | - form_data_assign_count["j1"] = 3; | ||
| 6569 | - } | ||
| 6570 | - if (new_j2) { | ||
| 6571 | - form_data_assign_count["j2"] = 2; | ||
| 6572 | - } else { | ||
| 6573 | - form_data_assign_count["j2"] = 3; | ||
| 6574 | - } | ||
| 6575 | - if (new_s1) { | ||
| 6576 | - form_data_assign_count["s1"] = 2; | ||
| 6577 | - } else { | ||
| 6578 | - form_data_assign_count["s1"] = 3; | ||
| 6579 | - } | ||
| 6580 | - if (new_s2) { | ||
| 6581 | - form_data_assign_count["s2"] = 2; | ||
| 6582 | - } else { | ||
| 6583 | - form_data_assign_count["s2"] = 3; | ||
| 6584 | - } | ||
| 6585 | - | ||
| 6586 | - | ||
| 6587 | - for (i = 0; i < addreason.length; i++) { // 调度原因更新 | ||
| 6588 | - if (i > 1) { // 有多个,只更新第一个 | ||
| 6589 | - break; | ||
| 6590 | - } else { | ||
| 6591 | - scope[ctrlAs].fd.ddr = addreason[i]; | ||
| 6592 | - } | ||
| 6593 | - } | ||
| 6594 | - for (i = 0; i < adddesc.length; i++) { | ||
| 6595 | - if (i > 1) { // 有多个,只更新第一个 | ||
| 6596 | - break; | ||
| 6597 | - } else { | ||
| 6598 | - scope[ctrlAs].fd.ddrdesc = adddesc[i]; | ||
| 6599 | - } | ||
| 6600 | - } | ||
| 6601 | - } | ||
| 6602 | - } | ||
| 6603 | - ); | ||
| 6604 | - } | ||
| 6605 | - } | ||
| 6606 | - } | ||
| 6607 | - }; | ||
| 6608 | - } | ||
| 6609 | - ] | 5910 | +/** |
| 5911 | + * saPlaninfoedit2指令,排班明细编辑控件,用在调度执勤日报的修改功能 | ||
| 5912 | + * name(必须),控件的名字 | ||
| 5913 | + * ds,外部数据源 | ||
| 5914 | + * fd, 表单数据源 | ||
| 5915 | + */ | ||
| 5916 | +angular.module('ScheduleApp').directive( | ||
| 5917 | + 'saPlaninfoedit2', | ||
| 5918 | + [ | ||
| 5919 | + function() { | ||
| 5920 | + return { | ||
| 5921 | + restrict: 'E', | ||
| 5922 | + templateUrl: '/pages/scheduleApp/module/common/dts2/scheduleplan/saPlaninfoeditTemplate.html', | ||
| 5923 | + scope: { // 独立作用域 | ||
| 5924 | + ds: '=ngModel', // 时刻明细数据源头 | ||
| 5925 | + fd: '=formData' // 表单数据源(车辆、驾驶员、售票员信息) | ||
| 5926 | + }, | ||
| 5927 | + controllerAs: '$saPlanInfoEditCtrl', | ||
| 5928 | + bindToController: true, | ||
| 5929 | + controller: function() { | ||
| 5930 | + //var self = this; | ||
| 5931 | + | ||
| 5932 | + }, | ||
| 5933 | + | ||
| 5934 | + compile: function(tElem, tAttrs) { | ||
| 5935 | + // 获取属性 | ||
| 5936 | + var $attr_name = tAttrs["name"]; // 控件的名字 | ||
| 5937 | + if (!$attr_name) { | ||
| 5938 | + throw {msg: "saPlaninfoedit2指令name属性不能为空"}; | ||
| 5939 | + } | ||
| 5940 | + | ||
| 5941 | + // 内部controlAs名字 | ||
| 5942 | + var ctrlAs = '$saPlanInfoEditCtrl'; | ||
| 5943 | + | ||
| 5944 | + | ||
| 5945 | + // 内部变量,原始车辆,人员数据 | ||
| 5946 | + var old_cl = {}; // key:{车辆id_车辆自编号},value:所在list下标数组 | ||
| 5947 | + var old_j = {}; // key:{驾驶员id_姓名_工号}, value:所在list下标数组 | ||
| 5948 | + var old_s = {}; // key:{售票员id_姓名_工号}, value:所在list下标数组 | ||
| 5949 | + var old_isfb = false; // 是否有分班 | ||
| 5950 | + var old_isfb_index = 0; // 分班开始索引 | ||
| 5951 | + var old_hasJCBC = false; // 是否有进场班次 | ||
| 5952 | + var old_max_fcno = 0; // 最大发车顺序号 | ||
| 5953 | + var old_firstJCBCFcno = 0; // 第一个进场班次发车顺序号 | ||
| 5954 | + var old_half_bcs = 0; // 一般的班次数量 | ||
| 5955 | + var old_ddreason = {}; // key:{调度原因}, value:所在list下标数组 | ||
| 5956 | + var old_dddesc = {}; // key:{调度描述}, value:所在list下标数组 | ||
| 5957 | + | ||
| 5958 | + // 内部变量,变更的车辆,变更的人员 | ||
| 5959 | + var new_cl1 = undefined; // 新的车辆1(车辆id_车辆自编号) | ||
| 5960 | + var new_cl2 = undefined; // 新的车辆2(车辆id_车辆自编号) | ||
| 5961 | + var new_j1 = undefined; // 新的驾驶员1(驾驶员id_姓名_工号) | ||
| 5962 | + var new_j2 = undefined; // 新的驾驶员2(驾驶员id_姓名_工号) | ||
| 5963 | + var new_s1 = undefined; // 新的售票员1(售票员id_姓名_工号) | ||
| 5964 | + var new_s2 = undefined; // 新的售票员2(售票员id_姓名_工号) | ||
| 5965 | + var new_ddreason = undefined; // 调度原因 | ||
| 5966 | + var new_dddesc = undefined; // 调度描述 | ||
| 5967 | + | ||
| 5968 | + // 表单值,被赋值的次数 | ||
| 5969 | + var form_data_assign_count = { // 大于1表示已经初始化过了 | ||
| 5970 | + cl1 : -1, | ||
| 5971 | + cl2 : -1, | ||
| 5972 | + j1 : -1, | ||
| 5973 | + j2 : -1, | ||
| 5974 | + j3 : -1, | ||
| 5975 | + s1 : -1, | ||
| 5976 | + s2 : -1, | ||
| 5977 | + s3 : -1 | ||
| 5978 | + }; | ||
| 5979 | + | ||
| 5980 | + return { | ||
| 5981 | + pre: function(scope, element, attr) { | ||
| 5982 | + | ||
| 5983 | + }, | ||
| 5984 | + post: function(scope, element, attr) { | ||
| 5985 | + | ||
| 5986 | + /** | ||
| 5987 | + * 刷新调度原因数据。 | ||
| 5988 | + */ | ||
| 5989 | + scope[ctrlAs].$$internal_refresh_dsdata_ddreason = function() { | ||
| 5990 | + if (new_ddreason) { | ||
| 5991 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 5992 | + obj.modifyReason = new_ddreason; | ||
| 5993 | + }); | ||
| 5994 | + } else { | ||
| 5995 | + // 清空,不使用旧的 | ||
| 5996 | + angular.forEach(old_ddreason, function(value, key) { | ||
| 5997 | + angular.forEach(value, function(i) { | ||
| 5998 | + scope[ctrlAs].ds[i].modifyReason = undefined; | ||
| 5999 | + }); | ||
| 6000 | + }); | ||
| 6001 | + } | ||
| 6002 | + }; | ||
| 6003 | + | ||
| 6004 | + /** | ||
| 6005 | + * 刷新调度描述数据。 | ||
| 6006 | + */ | ||
| 6007 | + scope[ctrlAs].$$internal_refresh_dsdata_dddesc = function() { | ||
| 6008 | + if (new_dddesc) { | ||
| 6009 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 6010 | + obj.modifyRemark = new_dddesc; | ||
| 6011 | + }); | ||
| 6012 | + } else { | ||
| 6013 | + // 清空,不使用旧的 | ||
| 6014 | + angular.forEach(old_dddesc, function(value, key) { | ||
| 6015 | + angular.forEach(value, function(i) { | ||
| 6016 | + scope[ctrlAs].ds[i].modifyRemark = undefined; | ||
| 6017 | + }); | ||
| 6018 | + }); | ||
| 6019 | + } | ||
| 6020 | + }; | ||
| 6021 | + | ||
| 6022 | + /** | ||
| 6023 | + * 刷新车辆数据。 | ||
| 6024 | + */ | ||
| 6025 | + scope[ctrlAs].$$internal_refresh_dsdata_cl = function() { | ||
| 6026 | + if (new_cl1) { | ||
| 6027 | + var new_cl1_id = new_cl1.split("_")[0]; | ||
| 6028 | + var new_cl1_zbh = new_cl1.split("_")[1]; | ||
| 6029 | + | ||
| 6030 | + if (new_cl2) { | ||
| 6031 | + var new_cl2_id = new_cl2.split("_")[0]; | ||
| 6032 | + var new_cl2_zbh = new_cl2.split("_")[1]; | ||
| 6033 | + | ||
| 6034 | + if (old_isfb) { // 使用分班判定 | ||
| 6035 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6036 | + if (index < old_isfb_index) { | ||
| 6037 | + obj.cl = new_cl1_id; | ||
| 6038 | + obj.clZbh = new_cl1_zbh; | ||
| 6039 | + } else { | ||
| 6040 | + obj.cl = new_cl2_id; | ||
| 6041 | + obj.clZbh = new_cl2_zbh; | ||
| 6042 | + } | ||
| 6043 | + }); | ||
| 6044 | + | ||
| 6045 | + } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 6046 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 6047 | + if (obj.fcno <= old_firstJCBCFcno) { | ||
| 6048 | + obj.cl = new_cl1_id; | ||
| 6049 | + obj.clZbh = new_cl1_zbh; | ||
| 6050 | + } else { | ||
| 6051 | + obj.cl = new_cl2_id; | ||
| 6052 | + obj.clZbh = new_cl2_zbh; | ||
| 6053 | + } | ||
| 6054 | + }); | ||
| 6055 | + } else { // 使用一半一半班次判定 | ||
| 6056 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6057 | + if (index < old_half_bcs) { | ||
| 6058 | + obj.cl = new_cl1_id; | ||
| 6059 | + obj.clZbh = new_cl1_zbh; | ||
| 6060 | + } else { | ||
| 6061 | + obj.cl = new_cl2_id; | ||
| 6062 | + obj.clZbh = new_cl2_zbh; | ||
| 6063 | + } | ||
| 6064 | + }); | ||
| 6065 | + } | ||
| 6066 | + | ||
| 6067 | + } else { | ||
| 6068 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6069 | + obj.cl = new_cl1_id; | ||
| 6070 | + obj.clZbh = new_cl1_zbh; | ||
| 6071 | + }); | ||
| 6072 | + } | ||
| 6073 | + | ||
| 6074 | + } else { | ||
| 6075 | + // 清空,不使用旧的 | ||
| 6076 | + angular.forEach(old_cl, function(value, key) { | ||
| 6077 | + angular.forEach(value, function(i) { | ||
| 6078 | + //scope[ctrlAs].ds[i].cl = key.split("_")[0]; | ||
| 6079 | + //scope[ctrlAs].ds[i].clZbh = key.split("_")[1]; | ||
| 6080 | + scope[ctrlAs].ds[i].cl = undefined; | ||
| 6081 | + scope[ctrlAs].ds[i].clZbh = undefined; | ||
| 6082 | + }); | ||
| 6083 | + }); | ||
| 6084 | + } | ||
| 6085 | + }; | ||
| 6086 | + | ||
| 6087 | + /** | ||
| 6088 | + * 刷新驾驶员数据。 | ||
| 6089 | + */ | ||
| 6090 | + scope[ctrlAs].$$internal_refresh_dsdata_j = function() { | ||
| 6091 | + if (new_j1) { | ||
| 6092 | + var new_j1_id = new_j1.split("_")[0]; | ||
| 6093 | + var new_j1_name = new_j1.split("_")[1]; | ||
| 6094 | + var new_j1_gh = new_j1.split("_")[2]; | ||
| 6095 | + if (new_j1_gh && new_j1_gh.indexOf("-") > 0) { | ||
| 6096 | + new_j1_gh = new_j1_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 6097 | + } | ||
| 6098 | + | ||
| 6099 | + if (new_j2) { | ||
| 6100 | + var new_j2_id = new_j2.split("_")[0]; | ||
| 6101 | + var new_j2_name = new_j2.split("_")[1]; | ||
| 6102 | + var new_j2_gh = new_j2.split("_")[2]; | ||
| 6103 | + if (new_j2_gh && new_j2_gh.indexOf("-") > 0) { | ||
| 6104 | + new_j2_gh = new_j2_gh.substr(3); // 修正工号,把 55- 这种前缀去掉 | ||
| 6105 | + } | ||
| 6106 | + | ||
| 6107 | + if (old_isfb) { // 使用分班判定 | ||
| 6108 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6109 | + if (index < old_isfb_index) { | ||
| 6110 | + obj.j = new_j1_id; | ||
| 6111 | + obj.jGh = new_j1_gh; | ||
| 6112 | + obj.jName = new_j1_name; | ||
| 6113 | + } else { | ||
| 6114 | + obj.j = new_j2_id; | ||
| 6115 | + obj.jGh = new_j2_gh; | ||
| 6116 | + obj.jName = new_j2_name; | ||
| 6117 | + } | ||
| 6118 | + }); | ||
| 6119 | + | ||
| 6120 | + } else if (old_hasJCBC && old_firstJCBCFcno < old_max_fcno) { // 使用进出场判定 | ||
| 6121 | + angular.forEach(scope[ctrlAs].ds, function(obj) { | ||
| 6122 | + if (obj.fcno <= old_firstJCBCFcno) { | ||
| 6123 | + obj.j = new_j1_id; | ||
| 6124 | + obj.jGh = new_j1_gh; | ||
| 6125 | + obj.jName = new_j1_name; | ||
| 6126 | + } else { | ||
| 6127 | + obj.j = new_j2_id; | ||
| 6128 | + obj.jGh = new_j2_gh; | ||
| 6129 | + obj.jName = new_j2_name; | ||
| 6130 | + } | ||
| 6131 | + }); | ||
| 6132 | + } else { // 使用一半一半班次判定 | ||
| 6133 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6134 | + if (index < old_half_bcs) { | ||
| 6135 | + obj.j = new_j1_id; | ||
| 6136 | + obj.jGh = new_j1_gh; | ||
| 6137 | + obj.jName = new_j1_name; | ||
| 6138 | + } else { | ||
| 6139 | + obj.j = new_j2_id; | ||
| 6140 | + obj.jGh = new_j2_gh; | ||
| 6141 | + obj.jName = new_j2_name; | ||
| 6142 | + } | ||
| 6143 | + }); | ||
| 6144 | + } | ||
| 6145 | + | ||
| 6146 | + } else { | ||
| 6147 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6148 | + obj.j = new_j1_id; | ||
| 6149 | + obj.jGh = new_j1_gh; | ||
| 6150 | + obj.jName = new_j1_name; | ||
| 6151 | + }); | ||
| 6152 | + } | ||
| 6153 | + | ||
| 6154 | + } else { | ||
| 6155 | + // 清空,不使用使用旧的 | ||
| 6156 | + angular.forEach(old_j, function(value, key) { | ||
| 6157 | + angular.forEach(value, function(i) { | ||
| 6158 | + //scope[ctrlAs].ds[i].j = key.split("_")[0]; | ||
| 6159 | + //scope[ctrlAs].ds[i].jName = key.split("_")[1]; | ||
| 6160 | + //scope[ctrlAs].ds[i].jGh = key.split("_")[2]; | ||
| 6161 | + scope[ctrlAs].ds[i].j = undefined; | ||
| 6162 | + scope[ctrlAs].ds[i].jName = undefined; | ||
| 6163 | + scope[ctrlAs].ds[i].jGh = undefined; | ||
| 6164 | + }); | ||
| 6165 | + }); | ||
| 6166 | + } | ||
| 6167 | + }; | ||
| 6168 | + | ||
| 6169 | + /** | ||
| 6170 | + * 刷新售票员数据(和驾驶员配对的,有驾驶员,才有售票员)。 | ||
| 6171 | + */ | ||
| 6172 | + scope[ctrlAs].$$internal_refresh_dsdata_s = function() { | ||
| 6173 | + var j_id = undefined; | ||
| 6174 | + var s_id = undefined; | ||
| 6175 | + var s_gh = undefined; | ||
| 6176 | + var s_name = undefined; | ||
| 6177 | + | ||
| 6178 | + if (new_j1) { | ||
| 6179 | + j_id = new_j1.split("_")[0]; | ||
| 6180 | + if (new_s1) { | ||
| 6181 | + s_id = new_s1.split("_")[0]; | ||
| 6182 | + s_name = new_s1.split("_")[1]; | ||
| 6183 | + s_gh = new_s1.split("_")[2]; | ||
| 6184 | + if (s_gh && s_gh.indexOf("-") > 0) { // 修正工号,把 55- 这种前缀去掉 | ||
| 6185 | + s_gh = s_gh.substr(3); | ||
| 6186 | + } | ||
| 6187 | + } else { | ||
| 6188 | + s_id = undefined; | ||
| 6189 | + s_gh = undefined; | ||
| 6190 | + s_name = undefined | ||
| 6191 | + } | ||
| 6192 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6193 | + if (obj.j == j_id) { | ||
| 6194 | + obj.s = s_id; | ||
| 6195 | + obj.sGh = s_gh; | ||
| 6196 | + obj.sName = s_name; | ||
| 6197 | + } | ||
| 6198 | + }); | ||
| 6199 | + } | ||
| 6200 | + if (new_j2) { | ||
| 6201 | + j_id = new_j2.split("_")[0]; | ||
| 6202 | + if (new_s2) { | ||
| 6203 | + s_id = new_s2.split("_")[0]; | ||
| 6204 | + s_name = new_s2.split("_")[1]; | ||
| 6205 | + s_gh = new_s2.split("_")[2]; | ||
| 6206 | + if (s_gh && s_gh.indexOf("-") > 0) { // 修正工号,把 55- 这种前缀去掉 | ||
| 6207 | + s_gh = s_gh.substr(3); | ||
| 6208 | + } | ||
| 6209 | + } else { | ||
| 6210 | + s_id = undefined; | ||
| 6211 | + s_gh = undefined; | ||
| 6212 | + s_name = undefined | ||
| 6213 | + } | ||
| 6214 | + | ||
| 6215 | + angular.forEach(scope[ctrlAs].ds, function(obj, index) { | ||
| 6216 | + if (obj.j == j_id) { | ||
| 6217 | + obj.s = s_id; | ||
| 6218 | + obj.sGh = s_gh; | ||
| 6219 | + obj.sName = s_name; | ||
| 6220 | + } | ||
| 6221 | + }); | ||
| 6222 | + } | ||
| 6223 | + }; | ||
| 6224 | + | ||
| 6225 | + //-------------- 监控调度原因的变化 ----------------// | ||
| 6226 | + scope.$watch( | ||
| 6227 | + function() { | ||
| 6228 | + return scope[ctrlAs].fd.ddr; | ||
| 6229 | + }, | ||
| 6230 | + function(newValue, oldValue) { | ||
| 6231 | + if (newValue || newValue == 0) { | ||
| 6232 | + new_ddreason = newValue; | ||
| 6233 | + } | ||
| 6234 | + scope[ctrlAs].$$internal_refresh_dsdata_ddreason(); | ||
| 6235 | + }, | ||
| 6236 | + true | ||
| 6237 | + ); | ||
| 6238 | + | ||
| 6239 | + //-------------- 监控调度描述的变化 ----------------// | ||
| 6240 | + scope.$watch( | ||
| 6241 | + function() { | ||
| 6242 | + return scope[ctrlAs].fd.ddrdesc; | ||
| 6243 | + }, | ||
| 6244 | + function(newValue, oldValue) { | ||
| 6245 | + if (newValue || newValue == 0) { | ||
| 6246 | + new_dddesc = newValue; | ||
| 6247 | + } | ||
| 6248 | + scope[ctrlAs].$$internal_refresh_dsdata_dddesc(); | ||
| 6249 | + }, | ||
| 6250 | + true | ||
| 6251 | + ); | ||
| 6252 | + | ||
| 6253 | + | ||
| 6254 | + //-------------- 监控表单车辆1的变化 ----------------// | ||
| 6255 | + scope.$watch( | ||
| 6256 | + function() { | ||
| 6257 | + return scope[ctrlAs].fd.cl1; | ||
| 6258 | + }, | ||
| 6259 | + function(newValue, oldValue) { | ||
| 6260 | + if (form_data_assign_count.cl1 > 2) { | ||
| 6261 | + if (newValue.id) { | ||
| 6262 | + if (newValue.id && newValue.zbh) { | ||
| 6263 | + new_cl1 = newValue.id + "_" + newValue.zbh; | ||
| 6264 | + } else { | ||
| 6265 | + new_cl1 = undefined; | ||
| 6266 | + } | ||
| 6267 | + } else { | ||
| 6268 | + new_cl1 = undefined; | ||
| 6269 | + } | ||
| 6270 | + scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 6271 | + } | ||
| 6272 | + | ||
| 6273 | + form_data_assign_count.cl1 ++; | ||
| 6274 | + }, | ||
| 6275 | + true | ||
| 6276 | + ); | ||
| 6277 | + | ||
| 6278 | + //-------------- 监控表单车辆2的变化 ----------------// | ||
| 6279 | + scope.$watch( | ||
| 6280 | + function() { | ||
| 6281 | + return scope[ctrlAs].fd.cl2; | ||
| 6282 | + }, | ||
| 6283 | + function(newValue, oldValue) { | ||
| 6284 | + if (form_data_assign_count.cl2 > 2) { | ||
| 6285 | + if (newValue.id) { | ||
| 6286 | + if (newValue.id && newValue.zbh) { | ||
| 6287 | + new_cl2 = newValue.id + "_" + newValue.zbh; | ||
| 6288 | + } else { | ||
| 6289 | + new_cl2 = undefined; | ||
| 6290 | + } | ||
| 6291 | + } else { | ||
| 6292 | + new_cl2 = undefined; | ||
| 6293 | + } | ||
| 6294 | + scope[ctrlAs].$$internal_refresh_dsdata_cl(); | ||
| 6295 | + } | ||
| 6296 | + | ||
| 6297 | + form_data_assign_count.cl2 ++; | ||
| 6298 | + }, | ||
| 6299 | + true | ||
| 6300 | + ); | ||
| 6301 | + | ||
| 6302 | + //-------------- 监控表单驾驶员1的变化 ----------------// | ||
| 6303 | + scope.$watch( | ||
| 6304 | + function() { | ||
| 6305 | + return scope[ctrlAs].fd.j1; | ||
| 6306 | + }, | ||
| 6307 | + function(newValue, oldValue) { | ||
| 6308 | + if (form_data_assign_count.j1 > 2) { | ||
| 6309 | + if (newValue.id) { | ||
| 6310 | + if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6311 | + new_j1 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6312 | + } else { | ||
| 6313 | + new_j1 = undefined; | ||
| 6314 | + } | ||
| 6315 | + } else { | ||
| 6316 | + new_j1 = undefined; | ||
| 6317 | + } | ||
| 6318 | + | ||
| 6319 | + scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6320 | + scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6321 | + } | ||
| 6322 | + | ||
| 6323 | + form_data_assign_count.j1 ++; | ||
| 6324 | + }, | ||
| 6325 | + true | ||
| 6326 | + ); | ||
| 6327 | + | ||
| 6328 | + //-------------- 监控表单售票员1的变化 ----------------// | ||
| 6329 | + scope.$watch( | ||
| 6330 | + function() { | ||
| 6331 | + return scope[ctrlAs].fd.s1; | ||
| 6332 | + }, | ||
| 6333 | + function(newValue, oldValue) { | ||
| 6334 | + if (form_data_assign_count.s1 > 2) { | ||
| 6335 | + if (newValue.id) { | ||
| 6336 | + if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6337 | + new_s1 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6338 | + } else { | ||
| 6339 | + new_s1 = undefined; | ||
| 6340 | + } | ||
| 6341 | + } else { | ||
| 6342 | + new_s1 = undefined; | ||
| 6343 | + } | ||
| 6344 | + | ||
| 6345 | + scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6346 | + scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6347 | + } | ||
| 6348 | + | ||
| 6349 | + form_data_assign_count.s1 ++; | ||
| 6350 | + }, | ||
| 6351 | + true | ||
| 6352 | + ); | ||
| 6353 | + | ||
| 6354 | + //-------------- 监控表单驾驶员2的变化 ----------------// | ||
| 6355 | + scope.$watch( | ||
| 6356 | + function() { | ||
| 6357 | + return scope[ctrlAs].fd.j2; | ||
| 6358 | + }, | ||
| 6359 | + function(newValue, oldValue) { | ||
| 6360 | + if (form_data_assign_count.j2 > 2) { | ||
| 6361 | + if (newValue.id) { | ||
| 6362 | + if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6363 | + new_j2 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6364 | + } else { | ||
| 6365 | + new_j2 = undefined; | ||
| 6366 | + } | ||
| 6367 | + } else { | ||
| 6368 | + new_j2 = undefined; | ||
| 6369 | + } | ||
| 6370 | + | ||
| 6371 | + scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6372 | + scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6373 | + } | ||
| 6374 | + | ||
| 6375 | + form_data_assign_count.j2 ++; | ||
| 6376 | + }, | ||
| 6377 | + true | ||
| 6378 | + ); | ||
| 6379 | + | ||
| 6380 | + //-------------- 监控表单售票员2的变化 ----------------// | ||
| 6381 | + scope.$watch( | ||
| 6382 | + function() { | ||
| 6383 | + return scope[ctrlAs].fd.s2; | ||
| 6384 | + }, | ||
| 6385 | + function(newValue, oldValue) { | ||
| 6386 | + if (form_data_assign_count.s2 > 2) { | ||
| 6387 | + if (newValue && newValue.id) { | ||
| 6388 | + if (newValue.id && newValue.name && newValue.jobCode) { | ||
| 6389 | + new_s2 = newValue.id + "_" + newValue.name + "_" + newValue.jobCode; | ||
| 6390 | + } else { | ||
| 6391 | + new_s2 = undefined; | ||
| 6392 | + } | ||
| 6393 | + } else { | ||
| 6394 | + new_s2 = undefined; | ||
| 6395 | + } | ||
| 6396 | + | ||
| 6397 | + scope[ctrlAs].$$internal_refresh_dsdata_j(); | ||
| 6398 | + scope[ctrlAs].$$internal_refresh_dsdata_s(); | ||
| 6399 | + } | ||
| 6400 | + | ||
| 6401 | + form_data_assign_count.s2 ++; | ||
| 6402 | + }, | ||
| 6403 | + true | ||
| 6404 | + ); | ||
| 6405 | + | ||
| 6406 | + //-------------------- 监控ds的变化,更新数据源,初始化formdata的数据 ---------------// | ||
| 6407 | + scope.$watch( | ||
| 6408 | + function() { | ||
| 6409 | + return scope[ctrlAs].ds; | ||
| 6410 | + }, | ||
| 6411 | + function(newValue, oldValue) { | ||
| 6412 | + if (newValue && newValue.length > 0) { | ||
| 6413 | + var j1 = newValue[0].j; | ||
| 6414 | + | ||
| 6415 | + var cl_idFlags = []; // 车辆idFlags数组(有顺序) | ||
| 6416 | + var j_s_idFlags = []; // 驾驶员idFlags,售票员idFlags,[{j:idFlag,s:idFlag},...](有顺序) | ||
| 6417 | + var addreason = []; // 营运调度的原因 | ||
| 6418 | + var adddesc = []; // 营运导读的备注 | ||
| 6419 | + var isRepeat = false; | ||
| 6420 | + var i = 0; | ||
| 6421 | + | ||
| 6422 | + angular.forEach(newValue, function(obj, index) { | ||
| 6423 | + var k1 = obj.cl + "_" + obj.clZbh; | ||
| 6424 | + var k2 = !obj.j? undefined: obj.j + "_" + obj.jName + "_" + obj.jGh; | ||
| 6425 | + var k3 = !obj.s? undefined: obj.s + "_" + obj.sName + "_" + obj.sGh; | ||
| 6426 | + | ||
| 6427 | + if (!old_cl[k1]) { | ||
| 6428 | + old_cl[k1] = []; | ||
| 6429 | + } | ||
| 6430 | + if (!old_j[k2] && k2) { | ||
| 6431 | + old_j[k2] = []; | ||
| 6432 | + } | ||
| 6433 | + if (!old_s[k3] && k3) { | ||
| 6434 | + old_s[k3] = []; | ||
| 6435 | + } | ||
| 6436 | + | ||
| 6437 | + var dd4 = obj.modifyReason == null || obj.modifyReason == undefined ? undefined : | ||
| 6438 | + obj.modifyReason; | ||
| 6439 | + var dd5 = obj.modifyRemark == null || obj.modifyRemark == undefined ? undefined : | ||
| 6440 | + obj.modifyRemark; | ||
| 6441 | + | ||
| 6442 | + if (!old_ddreason[dd4] && dd4) { | ||
| 6443 | + old_ddreason[dd4] = []; | ||
| 6444 | + } | ||
| 6445 | + if (!old_dddesc[dd5] && dd5) { | ||
| 6446 | + old_dddesc[dd5] = []; | ||
| 6447 | + } | ||
| 6448 | + | ||
| 6449 | + // 闭包 | ||
| 6450 | + (function(i) { | ||
| 6451 | + old_cl[k1].push(i); | ||
| 6452 | + if (k2) { | ||
| 6453 | + old_j[k2].push(i); | ||
| 6454 | + } | ||
| 6455 | + if (k3) { | ||
| 6456 | + old_s[k3].push(i); | ||
| 6457 | + } | ||
| 6458 | + if (dd4) { | ||
| 6459 | + old_ddreason[dd4].push(i); | ||
| 6460 | + } | ||
| 6461 | + if (dd5) { | ||
| 6462 | + old_dddesc[dd5].push(i); | ||
| 6463 | + } | ||
| 6464 | + })(index); | ||
| 6465 | + | ||
| 6466 | + // 判断是否分班 | ||
| 6467 | + if (j1 != obj.j && !old_isfb) { | ||
| 6468 | + old_isfb = true; | ||
| 6469 | + old_isfb_index = index; | ||
| 6470 | + } | ||
| 6471 | + | ||
| 6472 | + // 判断进出场 | ||
| 6473 | + if (obj.bcType == 'in' && !old_hasJCBC) { | ||
| 6474 | + old_hasJCBC = true; | ||
| 6475 | + old_firstJCBCFcno = obj.fcno; | ||
| 6476 | + } | ||
| 6477 | + | ||
| 6478 | + //-------------- formdata用数据处理 -------------// | ||
| 6479 | + // 车辆处理 | ||
| 6480 | + isRepeat = false; | ||
| 6481 | + if (obj.cl) { | ||
| 6482 | + for (i = 0; i < cl_idFlags.length; i++) { | ||
| 6483 | + if (cl_idFlags[i] == (obj.cl + "_" + obj.clZbh)) { | ||
| 6484 | + isRepeat = true; | ||
| 6485 | + break; | ||
| 6486 | + } | ||
| 6487 | + } | ||
| 6488 | + if (!isRepeat) { | ||
| 6489 | + cl_idFlags.push(obj.cl + "_" + obj.clZbh); | ||
| 6490 | + } | ||
| 6491 | + } | ||
| 6492 | + | ||
| 6493 | + // 人员处理(以驾驶员id为主,没有的话,售票员不管了) | ||
| 6494 | + isRepeat = false; | ||
| 6495 | + if (obj.j) { | ||
| 6496 | + for (i = 0; i < j_s_idFlags.length; i++) { | ||
| 6497 | + if (j_s_idFlags[i].j == (obj.j + "_" + obj.jName + "_" + obj.jGh)) { | ||
| 6498 | + isRepeat = true; | ||
| 6499 | + break; | ||
| 6500 | + } | ||
| 6501 | + } | ||
| 6502 | + if (!isRepeat) { | ||
| 6503 | + j_s_idFlags.push({ | ||
| 6504 | + j: obj.j + "_" + obj.jName + "_" + obj.jGh, | ||
| 6505 | + s: !obj.s? undefined: (obj.s + "_" + obj.sName + "_" + obj.sGh) | ||
| 6506 | + }); | ||
| 6507 | + } | ||
| 6508 | + } | ||
| 6509 | + | ||
| 6510 | + // 调度原因处理 | ||
| 6511 | + isRepeat = false; | ||
| 6512 | + if (obj.modifyReason || obj.modifyReason == 0) { | ||
| 6513 | + for (i = 0; i < addreason.length; i++) { | ||
| 6514 | + if (addreason[i] == obj.modifyReason) { | ||
| 6515 | + isRepeat = true; | ||
| 6516 | + break; | ||
| 6517 | + } | ||
| 6518 | + } | ||
| 6519 | + if (!isRepeat) { | ||
| 6520 | + addreason.push(obj.modifyReason); | ||
| 6521 | + } | ||
| 6522 | + } | ||
| 6523 | + | ||
| 6524 | + // 调整备注处理 | ||
| 6525 | + isRepeat = false; | ||
| 6526 | + if (obj.modifyRemark && obj.modifyRemark != "") { | ||
| 6527 | + for (i = 0; i < adddesc.length; i++) { | ||
| 6528 | + if (adddesc[i] == obj.modifyRemark) { | ||
| 6529 | + isRepeat = true; | ||
| 6530 | + break; | ||
| 6531 | + } | ||
| 6532 | + } | ||
| 6533 | + if (!isRepeat) { | ||
| 6534 | + adddesc.push(obj.modifyRemark); | ||
| 6535 | + } | ||
| 6536 | + } | ||
| 6537 | + | ||
| 6538 | + }); | ||
| 6539 | + | ||
| 6540 | + old_max_fcno = newValue[newValue.length - 1].fcno; | ||
| 6541 | + old_half_bcs = newValue.length / 2; | ||
| 6542 | + | ||
| 6543 | + // 更新formdata | ||
| 6544 | + for (i = 0; i < cl_idFlags.length; i++) { // 车辆更新前两辆 | ||
| 6545 | + if (i == 0) { // 第一组车 | ||
| 6546 | + scope[ctrlAs].fd["cl1"].id = cl_idFlags[i].split("_")[0]; | ||
| 6547 | + new_cl1 = cl_idFlags[i]; | ||
| 6548 | + } else if (i == 1) { // 第二组车 | ||
| 6549 | + scope[ctrlAs].fd["cl2"].id = cl_idFlags[i].split("_")[0]; | ||
| 6550 | + new_cl2 = cl_idFlags[i]; | ||
| 6551 | + } else { // 第三组及以上车全部忽略 | ||
| 6552 | + break; | ||
| 6553 | + } | ||
| 6554 | + } | ||
| 6555 | + for (i = 0; i < j_s_idFlags.length; i++) { // 人员更新 | ||
| 6556 | + if (i == 0) { // 第一组人员 | ||
| 6557 | + scope[ctrlAs].fd["j1"].id = j_s_idFlags[i].j.split("_")[0]; | ||
| 6558 | + scope[ctrlAs].fd["s1"].id = j_s_idFlags[i].s && j_s_idFlags[i].s.split("_")[0]; | ||
| 6559 | + new_j1 = j_s_idFlags[i].j; | ||
| 6560 | + new_s1 = j_s_idFlags[i].s; | ||
| 6561 | + | ||
| 6562 | + } else if (i == 1) { // 第二组人员 | ||
| 6563 | + scope[ctrlAs].fd["j2"].id = j_s_idFlags[i].j.split("_")[0]; | ||
| 6564 | + scope[ctrlAs].fd["s2"].id = j_s_idFlags[i].s && j_s_idFlags[i].s.split("_")[0]; | ||
| 6565 | + new_j2 = j_s_idFlags[i].j; | ||
| 6566 | + new_s2 = j_s_idFlags[i].s; | ||
| 6567 | + } else { // 第三组及以上全部忽律 | ||
| 6568 | + break; | ||
| 6569 | + } | ||
| 6570 | + } | ||
| 6571 | + // 更新form_data_assign_count,有值设置成2,没值设置成3,表示已经从ds处初始化完毕 | ||
| 6572 | + if (new_cl1) { | ||
| 6573 | + form_data_assign_count["cl1"] = 2; | ||
| 6574 | + } else { | ||
| 6575 | + form_data_assign_count["cl1"] = 3; | ||
| 6576 | + } | ||
| 6577 | + if (new_cl2) { | ||
| 6578 | + form_data_assign_count["cl2"] = 2; | ||
| 6579 | + } else { | ||
| 6580 | + form_data_assign_count["cl2"] = 3; | ||
| 6581 | + } | ||
| 6582 | + if (new_j1) { | ||
| 6583 | + form_data_assign_count["j1"] = 2; | ||
| 6584 | + } else { | ||
| 6585 | + form_data_assign_count["j1"] = 3; | ||
| 6586 | + } | ||
| 6587 | + if (new_j2) { | ||
| 6588 | + form_data_assign_count["j2"] = 2; | ||
| 6589 | + } else { | ||
| 6590 | + form_data_assign_count["j2"] = 3; | ||
| 6591 | + } | ||
| 6592 | + if (new_s1) { | ||
| 6593 | + form_data_assign_count["s1"] = 2; | ||
| 6594 | + } else { | ||
| 6595 | + form_data_assign_count["s1"] = 3; | ||
| 6596 | + } | ||
| 6597 | + if (new_s2) { | ||
| 6598 | + form_data_assign_count["s2"] = 2; | ||
| 6599 | + } else { | ||
| 6600 | + form_data_assign_count["s2"] = 3; | ||
| 6601 | + } | ||
| 6602 | + | ||
| 6603 | + | ||
| 6604 | + for (i = 0; i < addreason.length; i++) { // 调度原因更新 | ||
| 6605 | + if (i > 1) { // 有多个,只更新第一个 | ||
| 6606 | + break; | ||
| 6607 | + } else { | ||
| 6608 | + scope[ctrlAs].fd.ddr = addreason[i]; | ||
| 6609 | + } | ||
| 6610 | + } | ||
| 6611 | + for (i = 0; i < adddesc.length; i++) { | ||
| 6612 | + if (i > 1) { // 有多个,只更新第一个 | ||
| 6613 | + break; | ||
| 6614 | + } else { | ||
| 6615 | + scope[ctrlAs].fd.ddrdesc = adddesc[i]; | ||
| 6616 | + } | ||
| 6617 | + } | ||
| 6618 | + } | ||
| 6619 | + } | ||
| 6620 | + ); | ||
| 6621 | + } | ||
| 6622 | + } | ||
| 6623 | + } | ||
| 6624 | + }; | ||
| 6625 | + } | ||
| 6626 | + ] | ||
| 6610 | ); | 6627 | ); |
| 6611 | \ No newline at end of file | 6628 | \ No newline at end of file |
src/main/resources/static/pages/scheduleApp/module/common/prj-common-globalservice.js
| @@ -184,96 +184,6 @@ angular.module('ScheduleApp').factory( | @@ -184,96 +184,6 @@ angular.module('ScheduleApp').factory( | ||
| 184 | ] | 184 | ] |
| 185 | ); | 185 | ); |
| 186 | 186 | ||
| 187 | -// 车辆信息同步service | ||
| 188 | -angular.module('ScheduleApp').factory( | ||
| 189 | - 'VehicleDataSyncManageService_g', | ||
| 190 | - [ | ||
| 191 | - '$resource', | ||
| 192 | - function($resource) { | ||
| 193 | - return { | ||
| 194 | - rest: $resource( | ||
| 195 | - '/dataSync/vehicle/:id', | ||
| 196 | - {order: 'startDate', direction: 'DESC', id: '@id'}, | ||
| 197 | - { | ||
| 198 | - list: { | ||
| 199 | - method: 'GET', | ||
| 200 | - params: { | ||
| 201 | - page: 0 | ||
| 202 | - }, | ||
| 203 | - transformResponse: function(rs) { | ||
| 204 | - var dst = angular.fromJson(rs); | ||
| 205 | - if (dst.status == 'SUCCESS') { | ||
| 206 | - return dst.data; | ||
| 207 | - } else { | ||
| 208 | - return dst; // 业务错误留给控制器处理 | ||
| 209 | - } | ||
| 210 | - } | ||
| 211 | - }, | ||
| 212 | - get: { | ||
| 213 | - method: 'GET', | ||
| 214 | - transformResponse: function(rs) { | ||
| 215 | - var dst = angular.fromJson(rs); | ||
| 216 | - if (dst.status == 'SUCCESS') { | ||
| 217 | - return dst.data; | ||
| 218 | - } else { | ||
| 219 | - return dst; | ||
| 220 | - } | ||
| 221 | - } | ||
| 222 | - } | ||
| 223 | - } | ||
| 224 | - ), | ||
| 225 | - logFileExport: $resource( | ||
| 226 | - '/dataSync/vehicle/logfile/:id/:type', | ||
| 227 | - {id: '@id'}, | ||
| 228 | - { | ||
| 229 | - getLog: { | ||
| 230 | - method: 'GET', | ||
| 231 | - responseType: "arraybuffer", | ||
| 232 | - transformResponse: function(data, headers, status){ | ||
| 233 | - if (status != 200) { | ||
| 234 | - return data; | ||
| 235 | - } | ||
| 236 | - | ||
| 237 | - // console.log(headers("Content-Disposition")); | ||
| 238 | - // 获取文件名,后台根据是否还有中文名字,返回filename=ascii编码的文件名 或 filename*=unicode编码的文件名 | ||
| 239 | - var fileName = headers("Content-Disposition").split(";")[1].split("filename=")[1]; | ||
| 240 | - var fileNameUnicode = headers("Content-Disposition").split("filename*=")[1]; | ||
| 241 | - if (fileNameUnicode) {//当存在 filename* 时,取filename* 并进行解码(为了解决中文乱码问题) | ||
| 242 | - fileName = decodeURIComponent(fileNameUnicode); | ||
| 243 | - } | ||
| 244 | - | ||
| 245 | - return {fileData : data, fileName: fileName}; | ||
| 246 | - } | ||
| 247 | - } | ||
| 248 | - } | ||
| 249 | - ), | ||
| 250 | - addTask: $resource( | ||
| 251 | - '/dataSync/vehicle/addTask', | ||
| 252 | - {}, | ||
| 253 | - { | ||
| 254 | - save: { | ||
| 255 | - method: 'POST' | ||
| 256 | - } | ||
| 257 | - } | ||
| 258 | - ), | ||
| 259 | - refreshBuffer: $resource( | ||
| 260 | - '/dataSync/vehicle/refreshBuffer', | ||
| 261 | - {}, | ||
| 262 | - { | ||
| 263 | - refresh: { | ||
| 264 | - method: 'GET', | ||
| 265 | - transformResponse: function(rs) { | ||
| 266 | - var dst = angular.fromJson(rs); | ||
| 267 | - return dst; | ||
| 268 | - } | ||
| 269 | - } | ||
| 270 | - } | ||
| 271 | - ) | ||
| 272 | - }; | ||
| 273 | - } | ||
| 274 | - ] | ||
| 275 | -); | ||
| 276 | - | ||
| 277 | // 车辆配置service | 187 | // 车辆配置service |
| 278 | angular.module('ScheduleApp').factory('BusConfigService_g', ['$resource', 'UserPrincipal', function($resource, UserPrincipal) { | 188 | angular.module('ScheduleApp').factory('BusConfigService_g', ['$resource', 'UserPrincipal', function($resource, UserPrincipal) { |
| 279 | return { | 189 | return { |
src/main/resources/static/pages/scheduleApp/module/common/prj-common-ui-route-state.js
| @@ -280,63 +280,6 @@ ScheduleApp.config([ | @@ -280,63 +280,6 @@ ScheduleApp.config([ | ||
| 280 | }) | 280 | }) |
| 281 | 281 | ||
| 282 | }]); | 282 | }]); |
| 283 | -// ui route 配置 | ||
| 284 | - | ||
| 285 | -/** 车辆信息同步模块route */ | ||
| 286 | -ScheduleApp.config([ | ||
| 287 | - '$stateProvider', | ||
| 288 | - '$urlRouterProvider', | ||
| 289 | - function($stateProvider, $urlRouterProvider) { | ||
| 290 | - $stateProvider | ||
| 291 | - .state("vehicleDataSyncManage", { // index页面 | ||
| 292 | - url: '/vehicleDataSyncManage', | ||
| 293 | - views: { | ||
| 294 | - "": { | ||
| 295 | - templateUrl: 'pages/scheduleApp/module/basicInfo/vehicleDataSyncManage/index.html' | ||
| 296 | - }, | ||
| 297 | - "vehicleDataSyncManage_list@vehicleDataSyncManage": { | ||
| 298 | - templateUrl: 'pages/scheduleApp/module/basicInfo/vehicleDataSyncManage/list.html' | ||
| 299 | - } | ||
| 300 | - }, | ||
| 301 | - resolve: { | ||
| 302 | - deps: ['$ocLazyLoad', function($ocLazyLoad) { | ||
| 303 | - return $ocLazyLoad.load({ | ||
| 304 | - name: 'vehicleDataSyncManage_module', | ||
| 305 | - insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | ||
| 306 | - files: [ | ||
| 307 | - "assets/bower_components/angular-ui-select/dist/select.min.css", | ||
| 308 | - "assets/bower_components/angular-ui-select/dist/select.min.js", | ||
| 309 | - "assets/bower_components/angular-file-upload/dist/angular-file-upload.min.js", | ||
| 310 | - "pages/scheduleApp/module/basicInfo/vehicleDataSyncManage/module.js" | ||
| 311 | - ] | ||
| 312 | - }); | ||
| 313 | - }] | ||
| 314 | - } | ||
| 315 | - }) | ||
| 316 | - .state("vehicleDataSyncManage_form", { // 添加车辆form | ||
| 317 | - url: '/vehicleDataSyncManage_form', | ||
| 318 | - views: { | ||
| 319 | - "": {templateUrl: 'pages/scheduleApp/module/basicInfo/vehicleDataSyncManage/form.html'} | ||
| 320 | - }, | ||
| 321 | - resolve: { | ||
| 322 | - deps: ['$ocLazyLoad', function($ocLazyLoad) { | ||
| 323 | - return $ocLazyLoad.load({ | ||
| 324 | - name: 'vehicleDataSyncManage_form_module', | ||
| 325 | - insertBefore: '#ng_load_plugins_before', // 动态载入模块时放置的位置 | ||
| 326 | - files: [ | ||
| 327 | - "assets/bower_components/angular-ui-select/dist/select.min.css", | ||
| 328 | - "assets/bower_components/angular-ui-select/dist/select.min.js", | ||
| 329 | - "pages/scheduleApp/module/basicInfo/vehicleDataSyncManage/module.js" | ||
| 330 | - ] | ||
| 331 | - }); | ||
| 332 | - }] | ||
| 333 | - } | ||
| 334 | - }) | ||
| 335 | - | ||
| 336 | - } | ||
| 337 | -]); | ||
| 338 | - | ||
| 339 | - | ||
| 340 | // ui route 配置 | 283 | // ui route 配置 |
| 341 | 284 | ||
| 342 | /** 车辆配置模块页面route */ | 285 | /** 车辆配置模块页面route */ |