apply-clients 3.3.222 → 3.4.2-FuGu-4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/build/css-loaders.js +34 -0
  2. package/build/dev-android.js +101 -0
  3. package/build/dev-client.js +8 -0
  4. package/build/dev-server-app.js +76 -0
  5. package/build/dev-server.js +119 -0
  6. package/build/example-server.js +80 -0
  7. package/build/release.sh +28 -0
  8. package/build/utils.js +80 -0
  9. package/build/webpack.base.conf.js +85 -0
  10. package/build/webpack.baseandroid.conf.js +84 -0
  11. package/build/webpack.dev.conf.js +51 -0
  12. package/build/webpack.devandroid.conf.js +34 -0
  13. package/build/webpack.example.conf.js +49 -0
  14. package/build/webpack.prod.conf.js +60 -0
  15. package/build/webpack.prodandroid.conf.js +60 -0
  16. package/build/webpack.test.conf.js +31 -0
  17. package/dingding.html +23 -0
  18. package/index.html +1 -1
  19. package/package.json +4 -3
  20. package/src/AndroidApp.vue +18 -13
  21. package/src/App.vue +20 -20
  22. package/src/DingDingApp.vue +51 -0
  23. package/src/android.js +1 -1
  24. package/src/apply.js +75 -91
  25. package/src/applyAndroid.js +25 -54
  26. package/src/applyDingDing.js +12 -0
  27. package/src/components/android/AppOnetomany.vue +37 -21
  28. package/src/components/android/AppServiceView.vue +3 -7
  29. package/src/components/android/AppSign.vue +3 -3
  30. package/src/components/android/AppTakePic.vue +12 -13
  31. package/src/components/android/Process/AppExplorationUser.vue +88 -38
  32. package/src/components/android/Process/AppServiceControl.vue +87 -16
  33. package/src/components/android/Process/Processes/AppInstallationDetails.vue +90 -100
  34. package/src/components/android/ProgressReport/ProgressReportDetail.vue +64 -0
  35. package/src/components/android/ProgressReport/ProgressReportList.vue +209 -0
  36. package/src/components/android/Supervisory/AppProcessSupervisory.vue +73 -152
  37. package/src/components/android/Supervisory/AppSupervisoryCart.vue +29 -23
  38. package/src/components/android/TaskGraph.vue +125 -0
  39. package/src/components/build/Install/ExplorationUser.vue +304 -0
  40. package/src/components/build/Install/Process/zhongran/ZR_Design.vue +537 -0
  41. package/src/components/product/ApplyCharge/ApplyChargeList.vue +36 -50
  42. package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +3 -3
  43. package/src/components/product/ApplyCharge/printCharge.vue +142 -0
  44. package/src/components/product/Function/InstallFunction.vue +11 -2
  45. package/src/components/product/Function/InstallInfoSelect.vue +29 -47
  46. package/src/components/product/Function/Service/FunctionServiceControl.vue +172 -6
  47. package/src/components/product/Onetomany.vue +105 -24
  48. package/src/components/product/Order/OrderApply.vue +30 -30
  49. package/src/components/product/Order/OrderApplyList.vue +78 -67
  50. package/src/components/product/Order/OrderMessage.vue +11 -88
  51. package/src/components/product/Process/ExplorationSelect.vue +176 -149
  52. package/src/components/product/Process/ExplorationUser.vue +95 -85
  53. package/src/components/product/Process/Processes/InstallationDetails.vue +440 -352
  54. package/src/components/product/Process/Processes/addressAndUserinfoManagement.vue +35 -9
  55. package/src/components/product/Process/Processes/chargeManagement.vue +634 -638
  56. package/src/components/product/Process/Processes/devicesManagement.vue +22 -2
  57. package/src/components/product/Process/Processes/selectApply.vue +1 -1
  58. package/src/components/product/Process/Service/ServiceControl.vue +1241 -883
  59. package/src/components/product/Process/Service/ShowBackReason.vue +33 -0
  60. package/src/components/product/ServiceView.vue +313 -423
  61. package/src/components/product/Stop/StopApply.vue +27 -25
  62. package/src/components/product/Stop/StopApplyList.vue +26 -11
  63. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +18 -349
  64. package/src/components/product/Supervisory/SupervisoryControl.vue +0 -8
  65. package/src/components/product/Supervisory/SupervisoryList.vue +27 -47
  66. package/src/components/product/Supervisory/SupervisoryhCart.vue +32 -54
  67. package/src/components/product/VueUtils/ApplyUpload.vue +273 -264
  68. package/src/components/product/VueUtils/HighMeter.vue +208 -0
  69. package/src/dingding.js +20 -0
  70. package/src/expandcssAndroid.less +879 -362
  71. package/src/main.js +1 -1
  72. package/src/components/android/Function/AppFunctionServiceControl.vue +0 -329
  73. package/src/components/android/Function/AppInstallFunction.vue +0 -330
  74. package/src/components/android/Order/ApplyOrder.vue +0 -141
  75. package/src/components/android/Process/Processes/AppBuildSign.vue +0 -47
  76. package/src/components/android/Process/Processes/AppChargeManagement.vue +0 -468
  77. package/src/components/android/Process/Processes/AppDevicesManagement.vue +0 -490
  78. package/src/components/android/Process/Processes/AppSupplementalAgreement.vue +0 -297
  79. package/src/components/android/Process/Processes/AppjiaSign.vue +0 -47
  80. package/src/components/android/Process/Processes/AppjiafangSign.vue +0 -47
  81. package/src/components/android/Process/Processes/ApptechnologySign.vue +0 -47
  82. package/src/components/image/danwei.png +0 -0
  83. package/src/components/image/dizhi.png +0 -0
  84. package/src/components/image/dwg.jpg +0 -0
  85. package/src/components/image/name.png +0 -0
  86. package/src/components/image/phone.png +0 -0
  87. package/src/components/image/type.png +0 -0
  88. package/src/components/image/yasuobao.jpg +0 -0
  89. package/src/components/image/zaixiantousu1.png +0 -0
  90. package/src/components/image/zizhukaitong.png +0 -0
  91. package/src/components/image//346/210/221/347/232/204.png +0 -0
  92. package/src/components/product/Function/Inform.vue +0 -73
  93. package/src/components/product/Function/MarketSurvey.vue +0 -81
  94. package/src/components/product/Process/Processes/printCharge.vue +0 -121
  95. package/src/components/product/Process/ShowBackReason.vue +0 -33
  96. package/src/components/product/Supervisory/Service/printChargeNode.vue +0 -873
  97. package/src/components/product/VueUtils/GaoPaiYi/HighMeter.vue +0 -1090
  98. package/src/components/product/VueUtils/ToolsPage.vue +0 -51
  99. package/src/components/product/VueUtils/Tree.vue +0 -330
  100. package/src/filiale/wuan/android.js +0 -0
  101. package/src/filiale/wuan/pc.js +0 -4
  102. package/src/filiale/yuchuan/android/AppServiceView.vue +0 -599
  103. package/src/filiale/yuchuan/android/Process/AppServiceControl.vue +0 -414
  104. package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetails.vue +0 -456
  105. package/src/filiale/yuchuan/android/Reserve/ApplyReserve.vue +0 -200
  106. package/src/filiale/yuchuan/android/SiteSurvey/TaskGraph.vue +0 -137
  107. package/src/filiale/yuchuan/android.js +0 -8
  108. package/src/filiale/yuchuan/pc/Order/OrderApply.vue +0 -517
  109. package/src/filiale/yuchuan/pc/Order/OrderApplyList.vue +0 -343
  110. package/src/filiale/yuchuan/pc/Process/ExplorationSelect.vue +0 -356
  111. package/src/filiale/yuchuan/pc/Process/ExplorationUser.vue +0 -131
  112. package/src/filiale/yuchuan/pc/Process/Processes/MapCom.vue +0 -51
  113. package/src/filiale/yuchuan/pc/Process/Service/ServiceControl.vue +0 -517
  114. package/src/filiale/yuchuan/pc.js +0 -13
@@ -1,5 +1,4 @@
1
1
  <template>
2
-
3
2
  <div class="select-overspread" style="background-color: #ffffff;padding: 20px;overflow: scroll">
4
3
  <form class="form-horizontal">
5
4
  <div class="form-group">
@@ -56,19 +55,19 @@
56
55
  :class="item.label_bootstraped ? item.label_bootstraped + ' control-label-justify control-label' : 'control-label-justify control-label col-sm-3'">{{item.label}}</label>
57
56
  <div :style="item.value_style ? item.value_style:''"
58
57
  :class="item.value_bootstraped ? item.value_bootstraped : 'col-sm-10'">
59
- <textarea
60
- :readonly="item.readonly"
61
- :disabled="item.disabled"
62
- class="form-control input_view"
63
- style="width: 100%;height: 100%"
64
- :rows="item.rows"
65
- v-model="data.fields[index].value"
66
- :value="data.fields[index].value"
67
- @change="onchange(index)"
68
- @blur="onblur(index)"
69
- @input="oninput(index)"
70
- >
71
- </textarea>
58
+ <textarea
59
+ :readonly="item.readonly"
60
+ :disabled="item.disabled"
61
+ class="form-control input_view"
62
+ style="width: 100%;height: 100%"
63
+ :rows="item.rows"
64
+ v-model="data.fields[index].value"
65
+ :value="data.fields[index].value"
66
+ @change="onchange(index)"
67
+ @blur="onblur(index)"
68
+ @input="oninput(index)"
69
+ >
70
+ </textarea>
72
71
  </div>
73
72
  </div>
74
73
 
@@ -84,6 +83,7 @@
84
83
  class="select select_list"
85
84
  @blur="onblur(index)"
86
85
  @change="onchange(index)"
86
+ @select-search="selectSearch($arguments,index)"
87
87
  :readonly="item.readonly"
88
88
  :disable="item.disabled"
89
89
  :value.sync="data.fields[index].value"
@@ -118,7 +118,7 @@
118
118
 
119
119
  <!-- onetomany -->
120
120
  <div class="" v-for="(index,item) in data.onetomany">
121
- <onetomany :onetomany="item" :index="index" v-if="item.device === 'pc' || !item.device"></onetomany>
121
+ <onetomany :selectdata="data" :onetomany="item" :index="index" v-if="item.device === 'pc' || !item.device"></onetomany>
122
122
  </div>
123
123
 
124
124
  <div v-for="(i,item) in data.components">
@@ -273,469 +273,359 @@
273
273
  </modal>
274
274
  </form>
275
275
  </div>
276
-
277
276
  </template>
278
277
  <script>
279
- import Vue from 'vue'
280
- import {isEmpty} from '../Util'
281
- // Date格式化
282
- Date.prototype.Format = function (fmt) {
283
- var o = {
284
- 'M+': this.getMonth() + 1, // 月份
285
- 'd+': this.getDate(), // 日
286
- 'H+': this.getHours(), // 小时
287
- 'm+': this.getMinutes(), // 分
288
- 's+': this.getSeconds(), // 秒
289
- 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
290
- 'S': this.getMilliseconds() // 毫秒
278
+ import Vue from 'vue'
279
+ import {isEmpty} from '../Util'
280
+ // Date格式化
281
+ Date.prototype.Format = function (fmt) {
282
+ var o = {
283
+ 'M+': this.getMonth() + 1, // 月份
284
+ 'd+': this.getDate(), // 日
285
+ 'H+': this.getHours(), // 小时
286
+ 'm+': this.getMinutes(), // 分
287
+ 's+': this.getSeconds(), // 秒
288
+ 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
289
+ 'S': this.getMilliseconds() // 毫秒
290
+ }
291
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
292
+ for (var k in o) {
293
+ if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
294
+ }
295
+ return fmt
296
+ }
297
+
298
+ export default {
299
+ title: '报建业务通用组件',
300
+ props: {
301
+ data: {
302
+ type: Object
291
303
  }
292
- if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
293
- for (var k in o) {
294
- if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
304
+ },
305
+ data () {
306
+ return {
307
+ model: {}, // 公司等属性
308
+ disable_button: true, // 控制按钮禁用
309
+ disable_modal_button: true, // 控制按钮禁用
310
+ showButModal: false
295
311
  }
296
- return fmt
297
- }
312
+ },
313
+ watch: {
314
+ deep: true
315
+ },
316
+ computed: {
317
+
318
+ },
319
+ created () {
320
+ // 初始化数据
321
+ this.initializtion()
322
+ if (this.data.readyEvent) {
323
+ this.$dispatch(this.data.readyEvent)
324
+ }
325
+ this.$dispatch('initializtionView')
326
+ },
327
+ methods: {
328
+ // 初始化数据
329
+ initializtion () {
330
+ for (const item of this.data.fields) {
331
+ this.data[item.field] = item.value
332
+ }
333
+
334
+ // 是否禁用按钮
335
+ this.disableButton()
298
336
 
299
- export default {
300
- title: '报建业务通用组件',
301
- props: {
302
- data: {
303
- type: Object
337
+ // 公司等属性初始化
338
+ if (this.data.orgs) {
339
+ this.model.orgs = this.data.orgs
340
+ } else {
341
+ this.model.orgs = this.$login.f.orgs
304
342
  }
305
- },
306
- data () {
307
- return {
308
- model: {}, // 公司等属性
309
- disable_button: true, // 控制按钮禁用
310
- disable_modal_button: true, // 控制按钮禁用
311
- showButModal: false
343
+ if (this.data.parentname) {
344
+ this.model.parentname = this.data.parentname
345
+ } else {
346
+ this.model.parentname = this.$login.f.f_department_name
312
347
  }
313
- },
314
- watch: {
315
- deep: true
316
- },
317
- computed: {
318
-
319
- },
320
- created () {
321
- // 初始化数据
322
- this.initializtion()
323
- if (this.data.readyEvent) {
324
- this.$dispatch(this.data.readyEvent)
348
+ if (this.data.operate_date) {
349
+ this.model.operate_date = this.data.operate_date
350
+ } else {
351
+ this.model.operate_date = new Date().Format('yyyy-MM-dd')
325
352
  }
326
- this.$dispatch('initializtionView')
327
- },
328
- ready(){
329
- this.diaoguo()
330
- this.diaoguo1()
331
- this.diaoguo2()
332
- },
333
- methods: {
334
- diaoguo(){
335
- if (this.model.parentname == '经理部') {
336
- if(this.data.f_budget_no != '否'){
337
- for (const item of this.data.fields) {
338
- if (item.label === '跳过预算审核结果') {
339
- item.disabled = false
340
- item.readonly = false
341
- item.required = true
342
- }
343
- }
344
- }
353
+ if (this.data.operator) {
354
+ this.model.operator = this.data.operator
355
+ } else {
356
+ this.model.operator = this.$login.f.name
345
357
  }
346
- },
347
- diaoguo1(){
348
- if (this.model.parentname == '经理部') {
349
- if(this.data.f_toll_no != '否'){
350
- for (const item of this.data.fields) {
351
- if ( item.label==='跳过收费审核结果' ) {
352
- item.disabled = false
353
- item.readonly = false
354
- item.required = true
355
- }
356
- }
357
- }
358
- }
359
- },
360
- diaoguo2(){
361
- if (this.model.parentname == '经理部') {
362
- if(this.data.f_drawing_issuance_no != '否'){
363
- for (const item of this.data.fields) {
364
- if ( item.label==='跳过图纸下发审核结果') {
365
- item.disabled = false
366
- item.readonly = false
367
- item.required = true
368
- }
369
- }
370
- }
371
- }
372
- },
373
- // 初始化数据
374
- initializtion () {
375
- for (const item of this.data.fields) {
376
- this.data[item.field] = item.value
377
- }
378
-
379
- // 是否禁用按钮
380
- this.disableButton()
358
+ },
359
+ // 是否禁用按钮
360
+ disableButton () {
361
+ let flag = false
381
362
 
382
- console.log("----------"+this.$login.f)
383
- // 公司等属性初始化
384
- if (this.data.orgs) {
385
- this.model.orgs = this.data.orgs
386
- } else {
387
- this.model.orgs = this.$login.f.orgs
388
- }
389
- if (this.data.parentname) {
390
- this.model.parentname = this.data.parentname
391
- } else {
392
- this.model.parentname = this.$login.f.f_department_name
363
+ for (const field of this.data.fields) {
364
+ if (field.required && !field.value && !field.hidden && field.value !== 0) {
365
+ flag = true
393
366
  }
394
- if (this.data.operate_date) {
395
- this.model.operate_date = this.data.operate_date
396
- } else {
397
- this.model.operate_date = new Date().Format('yyyy-MM-dd')
398
- }
399
- if (this.data.operator) {
400
- this.model.operator = this.data.operator
401
- } else {
402
- this.model.operator = this.$login.f.name
403
- }
404
- },
405
- // 是否禁用按钮
406
- disableButton () {
407
- let flag = false
408
- for (const field of this.data.fields) {
409
- if (field.required && !field.value) {
410
- if (field.value === 0) {
411
- flag = false
412
- } else {
413
- flag = true
414
- }
415
- }
416
- // 任何选择框只要是否都不能提交
417
- if (field.type === 'select' && field.value === '否' && field.value_no_disable) {
418
- flag = true
419
- }
420
367
 
421
- if (field.type === 'checkbox' && field.required && field.value.length === 0) {
422
- flag = true
423
- }
368
+ // 任何选择框只要是否都不能提交
369
+ if (field.type === 'select' && field.value === '否' && field.value_no_disable) {
370
+ flag = true
424
371
  }
425
372
 
426
- if(this.data.defname==='方案确定'){
427
- if( this.data.onetomany && this.data.onetomany[0].rows.length==0 && this.data.onetomany[1].rows.length==0) {
428
- flag = true
429
- }
430
- }
431
- this.disable_button = flag
432
- },
433
- // 失去焦点且值最终发生变化触发
434
- async onchange (index) {
435
- // 是否禁用按钮
436
- this.disableButton()
437
-
438
- if (!isEmpty(this.data.fields[index].value)) {
439
- // 前缀、后缀
440
- if (this.data.fields[index].prefix) {
441
- this.data.fields[index].value = this.data.fields[index].prefix + this.data.fields[index].value
442
- }
443
- if (this.data.fields[index].suffix) {
444
- this.data.fields[index].value = this.data.fields[index].value + this.data.fields[index].suffix
445
- }
373
+ if (field.type === 'checkbox' && field.required && field.value.length === 0) {
374
+ flag = true
446
375
  }
376
+ }
447
377
 
448
- // data赋值
449
- this.data[this.data.fields[index].field] = this.data.fields[index].value
378
+ this.disable_button = flag
379
+ },
380
+ // 失去焦点且值最终发生变化触发
381
+ async onchange (index) {
382
+ // 是否禁用按钮
383
+ this.disableButton()
450
384
 
451
- if (this.data.fields[index].type === 'datepicker') {
452
- this.check_datepicker(index)
385
+ if (!isEmpty(this.data.fields[index].value)) {
386
+ // 前缀、后缀
387
+ if (this.data.fields[index].prefix) {
388
+ this.data.fields[index].value = this.data.fields[index].prefix + this.data.fields[index].value
453
389
  }
454
-
455
- if (this.data.fields[index].onchange) {
456
- this.$dispatch(this.data.fields[index].onchange, index)
390
+ if (this.data.fields[index].suffix) {
391
+ this.data.fields[index].value = this.data.fields[index].value + this.data.fields[index].suffix
457
392
  }
458
- this.$dispatch('onchange', index)
393
+ }
459
394
 
395
+ // data赋值
396
+ this.data[this.data.fields[index].field] = this.data.fields[index].value
460
397
 
461
- },
462
- // 失去焦点触发,无论值是否发生变化
463
- onblur (index) {
464
- this.disableButton()
398
+ if (this.data.fields[index].type === 'datepicker') {
399
+ this.check_datepicker(index)
400
+ }
465
401
 
466
- if (this.data.fields[index].onblur) {
467
- this.$dispatch(this.data.fields[index].onblur, index)
468
- }
402
+ if (this.data.fields[index].onchange) {
403
+ this.$dispatch(this.data.fields[index].onchange, index)
404
+ }
405
+ this.$dispatch('onchange', index)
406
+ },
407
+ // 失去焦点触发,无论值是否发生变化
408
+ onblur (index) {
409
+ this.disableButton()
469
410
 
470
- this.$dispatch('onblur', index)
471
- },
472
- oninput (index) {
473
- // 是否禁用按钮
474
- this.disableButton()
411
+ if (this.data.fields[index].onblur) {
412
+ this.$dispatch(this.data.fields[index].onblur, index)
413
+ }
475
414
 
476
- if (this.data.fields[index].oninput) {
477
- this.$dispatch(this.data.fields[index].oninput, index)
478
- }
479
- this.$dispatch('oninput', index)
480
- },
481
- // 点击按钮组按钮
482
- async click_but (button) {
483
- this.disable_button = true
415
+ this.$dispatch('onblur', index)
416
+ },
417
+ oninput (index) {
418
+ // 是否禁用按钮
419
+ this.disableButton()
484
420
 
485
- this.data.fields.forEach(item => {
486
- this.data[item.field] = item.value
487
- })
421
+ if (this.data.fields[index].oninput) {
422
+ this.$dispatch(this.data.fields[index].oninput, index)
423
+ }
424
+ this.$dispatch('oninput', index)
425
+ },
426
+ selectSearch(event, index) {
427
+ if (this.data.fields[index].selectSearch) {
428
+ this.$dispatch(this.data.fields[index].selectSearch, event[0], index)
429
+ }
430
+ this.$dispatch('selectSearch', event[0], index)
431
+ },
432
+ // 点击按钮组按钮
433
+ async click_but (button) {
434
+ this.disable_button = true
488
435
 
489
- this.data.button = button
436
+ this.data.fields.forEach(item => {
437
+ this.data[item.field] = item.value
438
+ })
490
439
 
491
- if (button.button_fields && button.button_fields.length > 0) {
492
- this.showButModal = true
493
- return
494
- }
440
+ this.data.button = button
495
441
 
496
- if (this.data.button.event) {
497
- this.$dispatch(this.data.button.event)
498
- } else {
499
- this.$dispatch('button')
500
- }
501
- },
502
- confirmModal () {
503
- this.closeModal()
442
+ if (button.button_fields && button.button_fields.length > 0) {
443
+ this.showButModal = true
444
+ return
445
+ }
504
446
 
505
- this.data.button.button_fields.forEach(item => {
506
- this.data.button[item.field] = item.value
507
- })
447
+ if (this.data.button.event) {
448
+ this.$dispatch(this.data.button.event)
449
+ } else {
450
+ this.$dispatch('button')
451
+ }
452
+ },
453
+ confirmModal () {
454
+ this.closeModal()
508
455
 
509
- if (this.data.button.event) {
510
- this.$dispatch(this.data.button.event)
511
- } else {
512
- this.$dispatch('button')
513
- }
514
- },
515
- // 关闭模态框
516
- closeModal () {
517
- this.showButModal = false
518
- this.disable_modal_button = false
519
- },
520
- onbutchange (index) {
521
- // 是否禁用按钮
522
- this.disableModalButton()
523
-
524
- if (this.data.button.button_fields[index].onchange) {
525
- this.$dispatch(this.data.button.button_fields[index].onchange, index)
526
- } else {
527
- this.$dispatch('onbutchange', index)
528
- }
456
+ this.data.button.button_fields.forEach(item => {
457
+ this.data.button[item.field] = item.value
458
+ })
529
459
 
530
- },
531
- onbutblur (index) {
532
- this.disableModalButton()
460
+ if (this.data.button.event) {
461
+ this.$dispatch(this.data.button.event)
462
+ } else {
463
+ this.$dispatch('button')
464
+ }
465
+ },
466
+ // 关闭模态框
467
+ closeModal () {
468
+ this.showButModal = false
469
+ this.disable_modal_button = false
470
+ },
471
+ onbutchange (index) {
472
+ // 是否禁用按钮
473
+ this.disableModalButton()
533
474
 
534
- if (this.data.button.button_fields[index].onblur) {
535
- this.$dispatch(this.data.button.button_fields[index].onblur, index)
536
- } else {
537
- this.$dispatch('onbutblur', index)
538
- }
539
- },
540
- onbutinput (index) {
541
- // 是否禁用按钮
542
- this.disableModalButton()
475
+ if (this.data.button.button_fields[index].onchange) {
476
+ this.$dispatch(this.data.button.button_fields[index].onchange, index)
477
+ } else {
478
+ this.$dispatch('onbutchange', index)
479
+ }
543
480
 
544
- if (this.data.button.button_fields[index].oninput) {
545
- this.$dispatch(this.data.button.button_fields[index].oninput, index)
546
- } else {
547
- this.$dispatch('onbutinput', index)
548
- }
549
- },
550
- disableModalButton () {
551
- let flag = false
481
+ },
482
+ onbutblur (index) {
483
+ this.disableModalButton()
552
484
 
485
+ if (this.data.button.button_fields[index].onblur) {
486
+ this.$dispatch(this.data.button.button_fields[index].onblur, index)
487
+ } else {
488
+ this.$dispatch('onbutblur', index)
489
+ }
490
+ },
491
+ onbutinput (index) {
492
+ // 是否禁用按钮
493
+ this.disableModalButton()
553
494
 
554
- for (const item of this.data.button.button_fields) {
555
- if (item.required && !item.value) {
556
- if (item.value === 0) {
557
- flag = false
558
- } else {
559
- flag = true
560
- }
561
- }
562
- }
495
+ if (this.data.button.button_fields[index].oninput) {
496
+ this.$dispatch(this.data.button.button_fields[index].oninput, index)
497
+ } else {
498
+ this.$dispatch('onbutinput', index)
499
+ }
500
+ },
501
+ disableModalButton () {
502
+ let flag = false
563
503
 
564
- this.disable_modal_button = flag
565
- },
566
- check_datepicker (index) {
567
- // 时间格式检测
568
- if (!isEmpty(this.data.fields[index].value)) {
569
-
570
- let dateReg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/
571
- let timeReg = /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/
572
- let datetimeReg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/
573
- if (this.data.fields[index].format) {
574
- if (this.data.fields[index].format === 'yyyy-MM-dd') {
575
- if (!dateReg.test(this.data.fields[index].value)) {
576
- this.data.fields[index].value = ''
577
- this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01', 'warning', 2000)
578
- }
579
- }
580
- if (this.data.fields[index].format === 'HH:mm:ss') {
581
- if (!timeReg.test(this.data.fields[index].value)) {
582
- this.data.fields[index].value = ''
583
- this.$showAlert(this.data.fields[index].label + '格式错误如:00:00:00', 'warning', 2000)
584
- }
585
- }
586
- if (this.data.fields[index].format === 'yyyy-MM-dd HH:mm:ss') {
587
- if (!datetimeReg.test(this.data.fields[index].value)) {
588
- this.data.fields[index].value = ''
589
- this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01 00:00:00', 'warning', 2000)
590
- }
591
- }
504
+
505
+ for (const item of this.data.button.button_fields) {
506
+ if (item.required && !item.value) {
507
+ if (item.value === 0) {
508
+ flag = false
592
509
  } else {
593
- if (!dateReg.test(this.data.fields[index].value)) {
594
- this.data.fields[index].value = ''
595
- this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01', 'warning', 2000)
596
- }
510
+ flag = true
597
511
  }
598
512
  }
599
513
  }
514
+
515
+ this.disable_modal_button = flag
600
516
  },
601
- events: {
602
- 'jumpover'(index){
603
- if(this.data.f_budget_no == '否') {
604
- for (const item of this.data.fields) {
605
- if (item.label === '跳过预算审核结果') {
606
- item.disabled = false
607
- item.readonly = false
608
- item.required = false
609
- }
610
- }
611
- }
612
- if(this.data.f_budget_no == '是') {
613
- for (const item of this.data.fields) {
614
- if (item.label === '跳过预算审核结果') {
615
- item.disabled = true
616
- item.readonly = true
617
- item.required = true
618
- }
619
- }
620
- }
621
- this.diaoguo()
622
- },
623
- 'jumpover2'(index){
624
- if(this.data.f_toll_no == '否') {
625
- for (const item of this.data.fields) {
626
- if (item.label === '跳过收费审核结果') {
627
- item.disabled = false
628
- item.readonly = false
629
- item.required = false
517
+ check_datepicker (index) {
518
+ // 时间格式检测
519
+ if (!isEmpty(this.data.fields[index].value)) {
520
+
521
+ let dateReg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/
522
+ let timeReg = /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/
523
+ let datetimeReg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/
524
+ if (this.data.fields[index].format) {
525
+ if (this.data.fields[index].format === 'yyyy-MM-dd') {
526
+ if (!dateReg.test(this.data.fields[index].value)) {
527
+ this.data.fields[index].value = ''
528
+ this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01', 'warning', 2000)
630
529
  }
631
530
  }
632
- }else{
633
- for (const item of this.data.fields) {
634
- if ( item.label=== '跳过收费审核结果') {
635
- item.disabled = true
636
- item.readonly = true
637
- item.required = true
531
+ if (this.data.fields[index].format === 'HH:mm:ss') {
532
+ if (!timeReg.test(this.data.fields[index].value)) {
533
+ this.data.fields[index].value = ''
534
+ this.$showAlert(this.data.fields[index].label + '格式错误如:00:00:00', 'warning', 2000)
638
535
  }
639
536
  }
640
- }
641
- this.diaoguo1()
642
- },
643
- 'jumpover3'(index){
644
- if(this.data.f_drawing_issuance_no == '否') {
645
- for (const item of this.data.fields) {
646
- if ( item.label === '跳过图纸下发审核结果') {
647
- item.disabled = false
648
- item.readonly = false
649
- item.required = false
537
+ if (this.data.fields[index].format === 'yyyy-MM-dd HH:mm:ss') {
538
+ if (!datetimeReg.test(this.data.fields[index].value)) {
539
+ this.data.fields[index].value = ''
540
+ this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01 00:00:00', 'warning', 2000)
650
541
  }
651
542
  }
652
- }else{
653
- for (const item of this.data.fields) {
654
- if (item.label==='跳过图纸下发审核结果') {
655
- item.disabled = true
656
- item.readonly = true
657
- item.required = true
658
- }
543
+ } else {
544
+ if (!dateReg.test(this.data.fields[index].value)) {
545
+ this.data.fields[index].value = ''
546
+ this.$showAlert(this.data.fields[index].label + '格式错误如:2021-01-01', 'warning', 2000)
659
547
  }
660
548
  }
661
- this.diaoguo2()
662
549
  }
663
-
664
550
  }
551
+ },
552
+ events: {
553
+
665
554
  }
555
+ }
666
556
  </script>
667
557
  <style>
668
- .datepicker{
669
- width: 100%!important;
670
- }
671
- .datepicker-input{
672
- background-color: #ffffff!important;
673
- width: 100%!important;
674
- }
675
- .datepicker-input:disabled{
676
- border: 1px solid #DDD!important;
677
- color: #ACA899!important;
678
- width: 100%!important;
679
- }
558
+ .datepicker{
559
+ width: 100%!important;
560
+ }
561
+ .datepicker-input{
562
+ background-color: #ffffff!important;
563
+ width: 100%!important;
564
+ }
565
+ .datepicker-input:disabled{
566
+ border: 1px solid #DDD!important;
567
+ color: #ACA899!important;
568
+ width: 100%!important;
569
+ }
680
570
  </style>
681
571
  <style scoped>
682
- th{
683
- font-size: 15px !important;
684
- text-align: center !important;
685
- background-color: #dfedfb!important;
686
- color: #666666 !important;
687
- font-family: PINGFANG-BOLD !important;
688
- font-weight: normal!important;
689
- }
690
- /*清除model中的浮动*/
691
- .clearfix:after,.clearfix:before{
692
- display: table;
693
- }
694
- .clearfix:after{
695
- clear: both;
696
- }
697
-
698
- .input_view{
699
- padding: 8px;
700
- background-color: #ffffff;
701
- border-radius: 2px;
702
- border: solid 1px #c7c7c7!important;
703
- color: #333333!important;
704
- font-size: 15px!important;
705
- }
706
-
707
- .input_view[readonly]{
708
- border: 1px solid #DDD!important;
709
- color:#ACA899!important;
710
- }
711
- .input_view:disabled{
712
- border: 1px solid #DDD!important;
713
- color:#ACA899!important;
714
- }
715
-
716
- .control-label-justify {
717
- display: inline-block;
718
- vertical-align: top;
719
- width: 110px;
720
- text-align: justify;
721
- font-family: PingFang-SC-Bold;
722
- }
723
-
724
- .control-label-justify::after {
725
- content: "";
726
- display: inline-block;
727
- width: 100%;
728
- overflow: hidden;
729
- height: 0;
730
- }
731
-
732
- input::-webkit-outer-spin-button,
733
- input::-webkit-inner-spin-button {
734
- -webkit-appearance: none;
735
- }
736
-
737
- input[type="number"] {
738
- -moz-appearance: textfield;
739
- }
572
+ th{
573
+ font-size: 15px !important;
574
+ text-align: center !important;
575
+ background-color: #dfedfb!important;
576
+ color: #666666 !important;
577
+ font-family: PINGFANG-BOLD !important;
578
+ font-weight: normal!important;
579
+ }
580
+ /*清除model中的浮动*/
581
+ .clearfix:after,.clearfix:before{
582
+ display: table;
583
+ }
584
+ .clearfix:after{
585
+ clear: both;
586
+ }
587
+
588
+ .input_view{
589
+ padding: 8px;
590
+ background-color: #ffffff;
591
+ border-radius: 2px;
592
+ border: solid 1px #c7c7c7!important;
593
+ color: #333333!important;
594
+ font-size: 15px!important;
595
+ }
596
+
597
+ .input_view[readonly]{
598
+ border: 1px solid #DDD!important;
599
+ color:#ACA899!important;
600
+ }
601
+ .input_view:disabled{
602
+ border: 1px solid #DDD!important;
603
+ color:#ACA899!important;
604
+ }
605
+
606
+ .control-label-justify {
607
+ display: inline-block;
608
+ vertical-align: top;
609
+ width: 110px;
610
+ text-align: justify;
611
+ font-family: PingFang-SC-Bold;
612
+ }
613
+
614
+ .control-label-justify::after {
615
+ content: "";
616
+ display: inline-block;
617
+ width: 100%;
618
+ overflow: hidden;
619
+ height: 0;
620
+ }
621
+
622
+ input::-webkit-outer-spin-button,
623
+ input::-webkit-inner-spin-button {
624
+ -webkit-appearance: none;
625
+ }
626
+
627
+ input[type="number"] {
628
+ -moz-appearance: textfield;
629
+ }
740
630
 
741
631
  </style>