telephone-clients 3.0.103-84 → 3.0.103-85

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.
@@ -1,1419 +1,1411 @@
1
- <template>
2
- <!--<div class="app-botton" @click="back()">-->
3
- <!--返回<span class="glyphicon glyphicon-menu-right"></span>-->
4
- <!--</div>-->
5
- <div class="no-close row android-repair-order" style="background-color: #f9f9f9">
6
- <div class="col-sm-12 col-xs-12" >
7
- <ul class="nav nav-tabs" style="background:#ffffff;">
8
- <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
9
- v-if="$index < number+1 && $index < faultshow.number" >
10
- <a href="javascript:void(0)" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
11
- <span class="spanboder">{{row.header}}</span>
12
- <img class="butt2" :src="imgback(row.complete === componentName)"></a>
13
- <p></p>
14
- </li>
15
- <div class="col-sm-12 col-xs-12 repair-bg" v-show="routeShow">
16
- <route name='repair' :reuse="false"></route>
17
- </div>
18
- <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
19
- v-if="$index > number && $index < faultshow.number ">
20
- <a href="javascript:void(0)" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
21
- <span class="spanboder">{{row.header}}</span>
22
- <img class="butt2" :src="imgback(row.complete === componentName)"></a>
23
- <p></p>
24
- </li>
25
- <div class="col-sm-12 col-xs-12 repair-bg">
26
- <route name='upload' :reuse="false"></route>
27
- </div>
28
- </ul>
29
- </div>
30
- </div>
31
- </template>
32
-
33
- <script>
34
- // 户内维修
35
- import Vue from 'vue'
36
- // import DoorService from './DoorService'
37
- import RepairInfo from './RepairInfo'
38
- import RepairDetails from '../../../components/workorder/RepairDetails'
39
- import RepairUserInfo from '../../../components/workorder/RepairUserInfo'
40
- import ChangeMeterPage from '../../../components/workorder/ChangeMeterPage'
41
- // import Pipeline from './Pipeline'
42
- // import DeviceService from './DeviceService'
43
- // import TroubleRemoval from './TroubleRemoval'
44
- // import FirstGasCheck from './FirstGasCheck'
45
- // import RepairMatterInfo from './RepairMatterInfo'
46
- // import TelChangeMatter from './TelChangeMatter'
47
- import Outlay from '../../../components/workorder/Outlay'
48
- import FaultAll from '../../../components/workorder/FaultAll'
49
- import { HttpResetClass } from 'vue-client'
50
- import co from 'co'
51
- let loadParamGem = async function (self) {
52
- await self.$LoadParams.loadParam()
53
- }
54
-
55
- export default {
56
- title: '维修单',
57
- props: {
58
- worktype:{
59
- type: String,
60
- default: '报修单'
61
- },
62
- //分辨平板还是pc
63
- system: '',
64
- // 要处理的工单
65
- row: {
66
- type: Object
67
- },
68
- // 要显示的维修单
69
- repair: {
70
- type: Object
71
- },
72
- // 是否是显示
73
- show: {
74
- type: Boolean,
75
- default: false
76
- },
77
- issee:''
78
- },
79
-
80
- data() {
81
- return {
82
- // 维修项
83
- repairdetails:{},
84
- // userinfo: '',
85
- routeShow:true,
86
- number:0,
87
- shupingshow:false,
88
- pipeline: {},
89
- model: {
90
- serviceacitivity: [{
91
- baseuserinfo: {
92
- f_credentials:'身份证'
93
- },
94
- basemeterinfo: {},
95
- matterinfo: {},
96
- servicerepair: [],
97
- // 照片
98
- imgs: [],
99
- // 签名照片名字
100
- // 照片
101
- material: [], //维修的一批材料
102
- f_date: '',
103
- f_date_come: '',
104
- f_date_leave: '',
105
- f_is_userfilesadd:'未上传',
106
- f_workorder_type:this.worktype ? this.worktype : '报修单'
107
- }]
108
- },
109
- details: [],
110
- ids: '',
111
- savevalid: {
112
- uservalid: false,
113
- doorvalid: true,
114
- changetable: false
115
- },
116
- doordetails: {},
117
- devicedetails: {},
118
- cookdetails: {},
119
- componentName: 'repair-info',
120
- tabs: [
121
- // 参数全部设置成空,在ready时,等model处理好了,再添加
122
- {
123
- header: '客户工单信息', complete: 'repair-info', class: 'repair-info-class', props: null
124
- },
125
- // {
126
- // header: '换表', complete: 'change-meter-page', class: 'change-meter-page-class', props: null
127
- //
128
- // },
129
- // {
130
- // header: '客户基本信息',complete:'repair-user-info', class: 'repair-user-info-class', props: null
131
- // },
132
- // 'door-service': {
133
- // header: '户内维修', class: 'door-service-class', props: null
134
- // },
135
- // 'tel-change-matter': {
136
- // header: '换表', class: 'cooking-utensils-class', props: null
137
- // },
138
- // 'pipeline': {
139
- // header: '管道', class: 'pipeline-class', props: null
140
- // },
141
- // 'device-service': {
142
- // header: '设备维修', class: 'device-service-class', props: null
143
- // },
144
- // 'first-gas-check': {
145
- // header: '置换通气', class: 'cooking-utensils-class', props: null
146
- // },
147
- {
148
- header: '拍照及签名',complete:'outlay', class: 'outlay-class', props: null
149
- }
150
- // {
151
- // header: '上传工单',complete:'fault-all', class: 'fault-all-class', props: null
152
- // }
153
- ],
154
- faultshow:{
155
- number : 8
156
- } // 控制 故障汇总 在 菜单里显示与否
157
- }
158
- },
159
- methods: {
160
- imgback(val){
161
- if(val && this.routeShow){
162
- return require('../../../assets/xiangxia1.png')
163
- }else{
164
- return require('../../../assets/xiangyou1.png')
165
- }
166
- },
167
- // 选择tab
168
- tabSelect (item,number) {
169
- // 处理关闭/显示 内容
170
- if(this.number == number && !this.routeShow ){
171
- this.routeShow = true
172
- }else if(this.number == number && this.routeShow){
173
-
174
- this.routeShow = false
175
- }else if(this.number != item.complete){
176
- this.routeShow = true
177
- }
178
- this.number = number
179
- this.componentName = item.complete
180
- if(item.complete == 'repair-details'){
181
- if (this.row.f_workorder_type == '置换通气单') {
182
- // 根据置换单的用户类型,查询气价信息给下拉框赋值
183
- new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/queryGaspriceGroupByFilaleid`,
184
- {data: {f_filialeid:Vue.user.orgid,f_gasproperties:this.row.f_gasproperties}},
185
- {resolveMsg: null, rejectMsg: null}).then((rese)=>{
186
- //tag)
187
- let pricelist = []
188
- if (rese.data) {
189
- rese.data.forEach(item => pricelist.push({label: item.f_price_name, value: item.f_price_name}))
190
- }
191
- this.pricelists = pricelist;
192
- //tag)
193
- let itemprops = {
194
- model: this.model.serviceacitivity[0],
195
- service: this.model,
196
- show: this.show,
197
- repairitem: item,
198
- faultshow :this.faultshow,
199
- shutype:'shu',
200
- tabs:this.tabs,
201
- repairdetails:this.repairdetails,
202
- issee:this.issee,
203
- pricelists: this.pricelists //根据置换单下派的用气性质和公司查询的气价信息
204
- }
205
- //tag
206
- //tag)
207
- this.$goto(item.complete, itemprops, 'repair')
208
- })
209
- } else {
210
- let itemprops = {
211
- model: this.model.serviceacitivity[0],
212
- service: this.model,
213
- show: this.show,
214
- repairitem: item,
215
- faultshow :this.faultshow,
216
- shutype:'shu',
217
- tabs:this.tabs,
218
- repairdetails:this.repairdetails,
219
- issee:this.issee,
220
- pricelists: [{label:"无",value:"无"}]
221
- }
222
- //tag
223
- //tag)
224
- this.$goto(item.complete, itemprops, 'repair')
225
- }
226
- }else{
227
- //tag
228
- // //tag)
229
- // //tag)
230
- if(this.routeShow) {
231
- //tag)
232
- // //tag)
233
- this.$goto(item.complete, this.tabs[number].props, 'repair')
234
- }
235
- }
236
- this.shupingshow = true
237
- },
238
- // 给组件添加参数
239
- getImgPath() {
240
- for (var i = 0; i < this.model.serviceacitivity[0].imgs.length; i++) {
241
- this.ids += this.model.serviceacitivity[0].imgs[i].imgid + ','
242
- }
243
- this.ids = this.ids.substring(0, this.ids.length - 1)
244
- if(this.ids){
245
- this.getImgGen();
246
- }
247
- },
248
- getImgGen(){
249
- let http = new HttpResetClass()
250
- http.load('POST','rs/sql/tel_singleTable_OrderBy', {data: {
251
- items: '*',
252
- tablename: 't_files',
253
- condition: `id in (${this.ids})`,
254
- orderitem: 'id'
255
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
256
- for (let i = 0; i < res.data.length; i++) {
257
- for (let j = 0; j < this.model.serviceacitivity[0].imgs.length; j++) {
258
- //tag)
259
- //tag
260
- if (res.data[i].id.toString() === this.model.serviceacitivity[0].imgs[j].imgid) {
261
- this.model.serviceacitivity[0].imgs[j] = Object.assign({}, res.data[i], this.model.serviceacitivity[0].imgs[j])
262
- }
263
- }
264
-
265
- }
266
- })
267
- },
268
- setProps() {
269
- // 给各自组件添加参数
270
- for(var i =0;i<this.tabs.length;i++ ){
271
- if(this.tabs[i].complete == 'repair-info'){
272
- this.tabs[i].props = {
273
- service: this.row,
274
- model: this.model.serviceacitivity[0].baseuserinfo,
275
- data: this.model.serviceacitivity[0],
276
- savevalid: this.savevalid,
277
- repair: this.row,
278
- show: this.show,
279
- // userinfo: this.userinfo
280
- shutype:'shu',
281
- worktype:this.worktype,
282
- issee:this.issee
283
- }
284
- }else if (this.tabs[i].complete == 'repair-user-info'){
285
- this.tabs[i].props = {
286
- model: this.model.serviceacitivity[0].baseuserinfo,
287
- data: this.model.serviceacitivity[0],
288
- savevalid: this.savevalid,
289
- repair: this.row,
290
- show: this.show,
291
- // userinfo: this.userinfo
292
- shutype:'shu',
293
- worktype:this.worktype,
294
- issee:this.issee
295
- }
296
- } else if (this.tabs[i].complete == 'outlay'){
297
- this.tabs[i].props = {
298
- model: this.model.serviceacitivity[0],
299
- service: this.model,
300
- show: this.show,
301
- system: this.system,
302
- f_single_man: this.model.f_single_man,
303
- shutype: 'shu',
304
- issee:this.issee
305
- }
306
- }else if (this.tabs[i].complete == 'fault-all'){
307
- this.tabs[i].props = {
308
- msg: this.model, model: this.model.serviceacitivity[0],
309
- service: this.model, system: this.system, show: this.show,
310
- savevalid: this.savevalid,
311
- issee: this.issee
312
- }
313
- }else if (this.tabs[i].complete == 'change-meter-page') {
314
- //tag
315
- //tag)
316
- this.tabs[i].props = {
317
- service: this.row,
318
- model: this.model.serviceacitivity[0].basemeterinfo,
319
- data: this.model.serviceacitivity[0],
320
- savevalid: this.savevalid,
321
- repair: this.row,
322
- show: this.show,
323
- // userinfo: this.userinfo
324
- shutype: 'shu',
325
- worktype: this.worktype,
326
- issee: this.issee
327
- }
328
- }
329
- }
330
-
331
- // this.tabs['repair-info'].props = {service: this.row,shutype:'shu'}
332
- // if (this.model.serviceacitivity[0]) {
333
- // this.tabs['repair-user-info'].props = {
334
- // model: this.model.serviceacitivity[0].baseuserinfo,
335
- // data: this.model.serviceacitivity[0],
336
- // savevalid: this.savevalid,
337
- // repair: this.row,
338
- // show: this.show,
339
- // // userinfo: this.userinfo
340
- // shutype:'shu'
341
- // }
342
- // }
343
- // this.tabs['door-service'].props =
344
- // {
345
- // model: this.model.serviceacitivity[0],
346
- // savevalid: this.savevalid,
347
- // changetable: this.changetable,
348
- // service: this.model, show: this.show,
349
- // details: this.doordetails.details,
350
- // shutype:'shu'
351
- // }
352
- // this.tabs['tel-change-matter'].props =
353
- // {
354
- // model: this.model.serviceacitivity[0],
355
- // service: this.model,
356
- // show: this.show,
357
- // shutype:'shu'
358
- // }
359
- // this.tabs['pipeline'].props =
360
- // {
361
- // model: this.model.serviceacitivity[0],
362
- // service: this.model,
363
- // show: this.show,
364
- // shutype:'shu'
365
- // }
366
- // this.tabs['device-service'].props = {
367
- // model: this.model.serviceacitivity[0],
368
- // service: this.model,
369
- // show: this.show,
370
- // details: this.devicedetails.details,
371
- // shutype:'shu'
372
- // }
373
- // this.tabs['outlay'].props = {
374
- // model: this.model.serviceacitivity[0],
375
- // service: this.model,
376
- // show: this.show,
377
- // system: this.system,
378
- // f_single_man: this.model.f_single_man,
379
- // shutype: 'shu'
380
- // }
381
- // this.tabs['fault-all'].props =
382
- // {
383
- // msg: this.model, model: this.model.serviceacitivity[0],
384
- // service: this.model, system: this.system, show: this.show,
385
- // savevalid: this.savevalid
386
- // }
387
-
388
- // 参数设置成功,在转向第一个页签
389
- this.$goto('repair-info', this.tabs[0].props, 'repair')
390
- if(!this.issee){
391
- this.gotoUpload()
392
- }
393
- },
394
-
395
- getRepair() {
396
- if (Vue.android) {
397
- //tag
398
- if (this.$androidUtil.isTest) {
399
- //tag
400
- this.$androidUtil.path({'alias': 'serviceWork', 'data': {id: this.row.serviceacitivity[0].id}}).then((ret) => {
401
- this.model.serviceacitivity = ret.data
402
- this.getDetails()
403
- })
404
- } else {
405
- //tag
406
- let result = this.$androidUtil.path({'alias': 'serviceWork', 'data': {id: this.row.serviceacitivity[0].id}})
407
- //tag
408
- if (result.code === 200) {
409
- // this.show = true
410
- this.model.serviceacitivity = result.data
411
- this.getDetails()
412
- }
413
- }
414
- } else {
415
- //tag
416
- this.getService();
417
- }
418
- },
419
- getService(){
420
- let http = new HttpResetClass()
421
- http.load('POST','rs/path/serviceWork', {data: {id: this.repair.id}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
422
- this.model.serviceacitivity = [res.data[0]]
423
- this.getDetails()
424
- })
425
- },
426
- sortDetails(){
427
- for (let i = 0; i < this.details.length; i++) {
428
- if (this.details[i].details.length) {
429
- for (let j = 0; j < this.details[i].details.length; j++) {
430
- if (this.details[i].details[j].f_type === 'a') {
431
- this.doordetails = {details: this.details[i].details}
432
- break
433
- }
434
- if (this.details[i].details[j].f_type === 'b') {
435
- this.devicedetails = {details: this.details[i].details}
436
- break
437
- }
438
- if (this.details[i].details[j].f_type === 'c') {
439
- this.cookdetails = {details: this.details[i].details}
440
- break
441
- }
442
- }
443
- }
444
- }
445
- },
446
- getDetails() {
447
- if (Vue.android) {
448
- //tag
449
- if (this.$androidUtil.isTest) {
450
- //tag
451
- this.$androidUtil.path({'alias': 'getDetails', 'data': {id: this.row.serviceacitivity[0].id}}).then((ret) => {
452
- this.details = ret.data
453
- this.sortDetails()
454
- if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
455
- this.getImgPath()
456
- }
457
- this.setProps()
458
- })
459
- } else {
460
- //tag
461
- //tag
462
- let result = this.$androidUtil.path({'alias': 'getDetails', 'data': {id:this.row.serviceacitivity[0].id}})
463
- //tag
464
- if (result.code === 200) {
465
- this.details = result.data
466
- this.sortDetails()
467
- if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
468
- this.getImgPath()
469
- }
470
- this.setProps()
471
- }
472
- }
473
- } else {
474
- //tag
475
- this.getDetailsGen();
476
- }
477
- },
478
- getDetailsGen(){
479
- let http = new HttpResetClass()
480
- http.load('POST','rs/path/getDetails', {data: {id: this.repair.id}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
481
- this.details = res.data
482
- // this.sortDetails()
483
- if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
484
- this.getImgPath()
485
- }
486
- this.setProps()
487
- })
488
- },
489
- // 获取维修数据
490
- getRepairInfo(){
491
- if (this.$androidUtil.isTest) {
492
- // android模拟
493
- this.$androidUtil.path({'alias': 'telgetRepairWorkMsg', 'data': {id: this.row.id}}).then((ret) => {
494
- this.model.serviceacitivity = ret.data[0].serviceacitivity
495
- this.setProps()
496
- })
497
- } else {
498
- let result = this.$androidUtil.path({'alias': 'telgetRepairWorkMsg', 'data': {id: this.row.id}})
499
- if (result.code == 200) {
500
- //tag)
501
- //tag)
502
- this.model.serviceacitivity = result.data[0].serviceacitivity
503
- this.setProps()
504
- }
505
- }
506
- },
507
- // 复制数据
508
- copy() {
509
- if (this.row) {
510
- //tag
511
- this.model = Object.assign({}, this.model, this.row)
512
- //tag
513
- //tag)
514
- // 获取维修数据
515
- if(Vue.android){
516
- if(this.row.f_orderstatus == '本地保存'){
517
- this.getRepairInfo()
518
- }
519
- }
520
- }
521
- // 指定了维修单,获取维修单数据,给工单
522
- if (this.repair) {
523
- this.getRepair()
524
- } else {
525
- //tag
526
- this.setProps()
527
- }
528
- },
529
- back () {
530
- let _this = this
531
- if(this.issee){
532
- _this.$back()
533
- return
534
- }
535
- this.$showMessage('所填写内容将不可恢复!', ['confirm', 'cancel']).then((res) => {
536
- if (res === 'confirm') {
537
- _this.$back()
538
- }
539
- })
540
- },
541
- confirm(){
542
- this.$dispatch('confirm')
543
- },
544
- mute() {
545
- HostApp.mute()
546
- },
547
- // 维修项赋给维修单的维修集合内
548
- getRepairDetails() {
549
- if (this.repairdetails.length > 0) {
550
- let repairlist = []
551
- for (let j = 0;j< this.repairdetails.length;j++) {
552
- let repairitem = []
553
- for (var i = 0;i< this.repairdetails[j].details.length;i++) {
554
- if(this.row.f_source == '安检'){
555
- repairitem.push({f_project:this.repairdetails[j].details[i].f_project,type:this.repairdetails[j].details[i].type,f_defect_id:this.repairdetails[j].details[i].f_defect_id,f_status:'',f_content:''})
556
- }else{
557
- repairitem.push({f_project:this.repairdetails[j].details[i].f_project,type:this.repairdetails[j].details[i].type,f_status:'',f_content:'',f_is_must:this.repairdetails[j].details[i].f_is_must ? 'true':'false'})
558
- }
559
- }
560
- repairlist.push({f_type: this.repairdetails[j].f_type, details: repairitem,imgs:[],f_remarks:this.repairdetails[j].f_remarks})
561
- }
562
- this.model.serviceacitivity[0].servicerepair = Object.assign([], repairlist)
563
- }
564
- //tag)
565
- },
566
- gotoUpload(){
567
- this.$goto('fault-all', {
568
- msg: this.model, model: this.model.serviceacitivity[0],
569
- service: this.model, system: this.system, show: this.show,
570
- savevalid: this.savevalid,
571
- issee:this.issee
572
- }, 'upload')
573
- }
574
- },
575
- watch: {
576
- 'row' () {
577
- //tag
578
- this.copy()
579
- }
580
- },
581
- ready () {
582
- // 1.先判断是否是安检转来的
583
- // 2.判断工单类型 报修单/置换通气单
584
- // 3.判断用户类型 民用及非民用
585
- // Vue.config = {
586
- // telephone:{
587
- // SubstitConfigCivil:{}
588
- // }
589
- // }
590
- // Vue.config.telephone.SubstitConfigCivil = {
591
- // 'data':[
592
- // {
593
- // 'f_type': '用气设备信息',
594
- // 'f_remarks':'设备',
595
- // 'details': [
596
- // {
597
- // 'f_project':'客户用气设备名称',
598
- // 'type': 'string',
599
- // 'f_is_must':true
600
- // },
601
- // {
602
- // 'f_project':'负荷(锅炉/功率)',
603
- // 'type': 'string',
604
- // 'f_is_must':true
605
- // }
606
- // ]
607
- // },
608
- // {
609
- // 'f_type': '控制器信息',
610
- // 'f_remarks':'设备',
611
- // 'details': [
612
- // {
613
- // 'f_project':'有无控制器',
614
- // 'type': 'checkbox'
615
- // },
616
- // {
617
- // 'f_project':'设备名称',
618
- // 'type': 'selector',
619
- // 'f_is_must':true,
620
- // 'options': [
621
- // {
622
- // 'data': '控制器'
623
- // },
624
- // {
625
- // 'data': 'IC卡表'
626
- // },
627
- // {
628
- // 'data': '远传物联网表'
629
- // }
630
- // ]
631
- // },
632
- // {
633
- // 'f_project':'型号',
634
- // 'f_is_must':true,
635
- // 'type': 'string'
636
- // },
637
- // {
638
- // 'f_project':'生产厂家',
639
- // 'f_is_must':true,
640
- // 'type': 'string'
641
- // },
642
- // {
643
- // 'f_project':'铅封号',
644
- // 'type': 'string'
645
- // },
646
- // {
647
- // 'f_project':'备注',
648
- // 'type': 'string'
649
- // }
650
- // ]
651
- // },
652
- // {
653
- // 'f_type': '表具信息',
654
- // 'f_remarks':'设备',
655
- // 'details': [
656
- // {
657
- // 'f_project':'气表品牌',
658
- // 'f_is_must':true,
659
- // 'type': 'selector',
660
- // 'options':[
661
- // {'data':'中元新'},
662
- // {'data':'三龙'},
663
- // {'data':'鸿鹄'},
664
- // {'data':'秦川'},
665
- // {'data':'新奥新'},
666
- // {'data':'中元老'},
667
- // {'data':'新奥老'},
668
- // {'data':'福禄克'},
669
- // {'data':'苍南老CPU'},
670
- // {'data':'振达'},
671
- // {'data':'航宇星民用'},
672
- // {'data':'航宇星民用双模'},
673
- // {'data':'德力西1.0'},
674
- // {'data':'宁波鹏盛'},
675
- // {'data':'德力西2.0'},
676
- // {'data':'建安民用'},
677
- // {'data':'金卡民用'},
678
- // {'data':'其他'}
679
- // ]
680
- // },
681
- // {
682
- // 'f_project':'表具类型',
683
- // 'f_is_must':true,
684
- // 'type': 'selector',
685
- // 'options':[
686
- // {'data':'腰轮流量计'},
687
- // {'data':'涡轮流量计'},
688
- // {'data':'超声流量计'},
689
- // {'data':'热式质量流量计'},
690
- // {'data':'机械表'},
691
- // {'data':'普通卡表'},
692
- // {'data':'带温压补偿的卡表'},
693
- // {'data':'带温压补偿的远传物联网表'},
694
- // {'data':'远传物联网表'},
695
- // {'data':'其他'}
696
- // ]
697
- // },
698
- // {
699
- // 'f_project':'型号',
700
- // 'f_is_must':true,
701
- // 'type': 'string'
702
- // },
703
- // {
704
- // 'f_project':'计量方式',
705
- // 'type': 'selector',
706
- // 'f_is_must':true,
707
- // 'options':[
708
- // {'data':'次高压计量'},
709
- // {'data':'中压计量'},
710
- // {'data':'低压计量'}
711
- // ]
712
- // },
713
- // {
714
- // 'f_project':'流量范围(m³/h)',
715
- // 'f_is_must':true,
716
- // 'type': 'string'
717
- // },
718
- // {
719
- // 'f_project':'口径(mm)',
720
- // 'type': 'string'
721
- // },
722
- // {
723
- // 'f_project':'准确度',
724
- // 'f_is_must':true,
725
- // 'type': 'string'
726
- // },
727
- // {
728
- // 'f_project':'表基数',
729
- // 'f_is_must':true,
730
- // 'type': 'string'
731
- // },
732
- // {
733
- // 'f_project':'加铅封号',
734
- // 'type': 'string'
735
- // },
736
- // {
737
- // 'f_project':'备注',
738
- // 'type': 'string'
739
- // }
740
- // ]
741
- // },
742
- // {
743
- // 'f_type': '置换作业',
744
- // 'details':[
745
- // {
746
- // 'f_project':'户内外燃气设施完整,外观无明显异常',
747
- // 'type': 'radio',
748
- // 'f_is_must':true,
749
- // 'options': [
750
- // {
751
- // 'data': '是',
752
- // 'f_status':'true'
753
- // },
754
- // {
755
- // 'data': '否',
756
- // 'f_status':'false'
757
- // }
758
- // ]
759
- // },
760
- // {
761
- // 'f_project':'是否喷涂警示色',
762
- // 'type': 'radio',
763
- // 'f_is_must':true,
764
- // 'options': [
765
- // {
766
- // 'data': '是',
767
- // 'f_status':'true'
768
- // },
769
- // {
770
- // 'data': '',
771
- // 'f_status':'false'
772
- // }
773
- // ]
774
- // },
775
- // {
776
- // 'f_project':'燃气管道支撑稳固',
777
- // 'f_is_must':true,
778
- // 'type':'radio',
779
- // 'options': [
780
- // {
781
- // 'data': '是',
782
- // 'f_status':'true'
783
- // },
784
- // {
785
- // 'data': '',
786
- // 'f_status':'false'
787
- // }
788
- // ]
789
- // },
790
- // {
791
- // 'f_project':'燃气管道连接牢固',
792
- // 'f_is_must':true,
793
- // 'type':'radio',
794
- // 'options': [
795
- // {
796
- // 'data': '是',
797
- // 'f_status':'true'
798
- // },
799
- // {
800
- // 'data': '',
801
- // 'f_status':'false'
802
- // }
803
- // ]
804
- // },
805
- // {
806
- // 'f_project':'穿墙燃气管道是否加装套管、打密封胶',
807
- // 'f_is_must':true,
808
- // 'type':'radio',
809
- // 'options': [
810
- // {
811
- // 'data': '是',
812
- // 'f_status':'true'
813
- // },
814
- // {
815
- // 'data': '',
816
- // 'f_status':'false'
817
- // }
818
- // ]
819
- // },
820
- // {
821
- // 'f_project':'进行户内燃气设施严密性试验,试验压力为<>kPa',
822
- // 'f_is_must':true,
823
- // 'type': 'string'
824
- // },
825
- // {
826
- // 'f_project':'严密性试验时间为<>分钟,无压降',
827
- // 'f_is_must':true,
828
- // 'type': 'string'
829
- // },
830
- // {
831
- // 'f_project':'供气压力(单位:kPa)',
832
- // 'f_is_must':true,
833
- // 'type':'string'
834
- // },
835
- // {
836
- // 'f_project':'切断压力(单位:kPa)',
837
- // 'f_is_must':true,
838
- // 'type':'string'
839
- // },
840
- // {
841
- // 'f_project':'放散压力(单位:kPa)',
842
- // 'type':'string'
843
- // }
844
- // ]
845
- // }
846
- // ]
847
- // }
848
- // Vue.config.telephone.SubstitConfigCivil = {
849
- // 'data':[
850
- // {
851
- // 'f_type': '灶具信息',
852
- // 'details': [
853
- // {
854
- // 'f_project':'有无灶具设备',
855
- // 'type': 'checkbox'
856
- // },
857
- // {
858
- // 'f_project':'灶具品牌',
859
- // 'type': 'string',
860
- // 'f_is_must':true
861
- // },
862
- // {
863
- // 'f_project':'灶具型号',
864
- // 'type': 'string',
865
- // 'f_is_must':true
866
- // },
867
- // {
868
- // 'f_project':'购买日期',
869
- // 'type': 'date',
870
- // 'f_is_must':true
871
- // },
872
- // {
873
- // 'f_project':'合格证',
874
- // 'type': 'selector',
875
- // 'options': [
876
- // {'data':'有'},
877
- // {'data':'无'}
878
- // ],
879
- // 'f_is_must':true
880
- // },
881
- // {
882
- // "f_project":"壁挂炉照片",
883
- // "type": "picture",
884
- // 'f_is_must':true
885
- // }
886
- // ]
887
- // },
888
- // {
889
- // 'f_type': '壁挂炉信息',
890
- // 'details': [
891
- // {
892
- // 'f_project':'有无壁挂炉设备',
893
- // 'type': 'checkbox'
894
- // },
895
- // {
896
- // 'f_project':'壁挂炉品牌',
897
- // 'type': 'string',
898
- // 'f_is_must':true
899
- // },
900
- // {
901
- // 'f_project':'壁挂炉型号',
902
- // 'type': 'string',
903
- // 'f_is_must':true
904
- // },
905
- // {
906
- // 'f_project':'购买日期',
907
- // 'type': 'date',
908
- // 'f_is_must':true
909
- // },
910
- // {
911
- // 'f_project':'合格证',
912
- // 'type': 'selector',
913
- // 'options': [
914
- // {
915
- // 'data': '有'
916
- // },
917
- // {
918
- // 'data': '无'
919
- // }
920
- // ],
921
- // 'f_is_must':true
922
- // },
923
- // {
924
- // "f_project":"壁挂炉照片",
925
- // "type": "picture",
926
- // 'f_is_must':true
927
- // }
928
- // ]
929
- // },
930
- // {
931
- // 'f_type': '热水器信息',
932
- // 'details': [
933
- // {
934
- // 'f_project':'有无热水器设备',
935
- // 'type': 'checkbox'
936
- // },
937
- // {
938
- // 'f_project':'热水器品牌',
939
- // 'type': 'string',
940
- // 'f_is_must':true
941
- // },
942
- // {
943
- // 'f_project':'热水器型号',
944
- // 'type': 'string',
945
- // 'f_is_must':true
946
- // },
947
- // {
948
- // 'f_project':'购买日期',
949
- // 'type': 'date',
950
- // 'f_is_must':true
951
- // },
952
- // {
953
- // 'f_project':'合格证',
954
- // 'type': 'selector',
955
- // 'options': [
956
- // {
957
- // 'data': '有'
958
- // },
959
- // {
960
- // 'data': ''
961
- // }
962
- // ],
963
- // 'f_is_must':true
964
- // }
965
- // ]
966
- // },
967
- // {
968
- // 'f_type': '表具信息',
969
- // 'details':[
970
- // {
971
- // 'f_project':'表号',
972
- // 'type':'string',
973
- // 'f_is_must':true
974
- // },
975
- // {
976
- // 'f_project':'表型号',
977
- // 'type':'string',
978
- // 'f_is_must':true
979
- // },
980
- // {
981
- // 'f_project':'表具厂家',
982
- // 'type':'selector',
983
- // 'f_is_must':true,
984
- // 'options':[
985
- // {'data':'中元新'},
986
- // {'data':'三龙'},
987
- // {'data':'鸿鹄'},
988
- // {'data':'秦川'},
989
- // {'data':'新奥新'},
990
- // {'data':'中元老'},
991
- // {'data':'新奥老'},
992
- // {'data':'福禄克'},
993
- // {'data':'苍南老CPU'},
994
- // {'data':'振达'},
995
- // {'data':'航宇星民用'},
996
- // {'data':'航宇星民用双模'},
997
- // {'data':'德力西1.0'},
998
- // {'data':'宁波鹏盛'},
999
- // {'data':'德力西2.0'},
1000
- // {'data':'建安民用'},
1001
- // {'data':'金卡民用'},
1002
- // {'data':'其他'}
1003
- // ]
1004
- // },
1005
- // {
1006
- // 'f_project':'表类型',
1007
- // 'type':'selector',
1008
- // 'options':[
1009
- // {'data':'气量卡表'},
1010
- // {'data':'金额卡表'},
1011
- // {'data':'机表'},
1012
- // {'data':'物联网表'}
1013
- // ],
1014
- // 'f_is_must':true
1015
- // },
1016
- // {
1017
- // 'f_project':'表向',
1018
- // 'type':'selector',
1019
- // 'options':[
1020
- // {'data':'左表'},
1021
- // {'data':'右表'}
1022
- // ]
1023
- // },
1024
- // {
1025
- // 'f_project':'表基数',
1026
- // 'type':'string'
1027
- // },
1028
- // {
1029
- // 'f_project':'备注',
1030
- // 'type':'string'
1031
- // }
1032
- // ]
1033
- // },
1034
- // {
1035
- // 'f_type': '置换作业',
1036
- // 'details':[
1037
- // {
1038
- // 'f_project':'用户是否为超期(半年)重新检测',
1039
- // 'type': 'radio',
1040
- // 'options': [
1041
- // {
1042
- // 'data': '是',
1043
- // 'f_status':'true'
1044
- // },
1045
- // {
1046
- // 'data': '否',
1047
- // 'f_status':'false'
1048
- // }
1049
- // ]
1050
- // },
1051
- // {
1052
- // 'f_project':'户内燃气设施外观完好,无损坏',
1053
- // 'type': 'radio',
1054
- // 'options': [
1055
- // {
1056
- // 'data': '是',
1057
- // 'f_status':'true'
1058
- // },
1059
- // {
1060
- // 'data': '否',
1061
- // 'f_status':'false'
1062
- // }
1063
- // ]
1064
- // },
1065
- // {
1066
- // 'f_project':'经过测试后,管道是否有压降',
1067
- // 'type':'radio',
1068
- // 'options': [
1069
- // {
1070
- // 'data': '是',
1071
- // 'f_status':'false'
1072
- // },
1073
- // {
1074
- // 'data': '否',
1075
- // 'f_status':'true'
1076
- // }
1077
- // ]
1078
- // },
1079
- // {
1080
- // 'f_project':'换作业区内无明火,按标准置换',
1081
- // 'type': 'radio',
1082
- // 'options': [
1083
- // {
1084
- // 'data': '是',
1085
- // 'f_status':'true'
1086
- // },
1087
- // {
1088
- // 'data': '否',
1089
- // 'f_status':'false'
1090
- // }
1091
- // ]
1092
- // },
1093
- // {
1094
- // 'f_project':'确认用户的燃气炉具、热水器符合安全规范,胶管两端已连接并且管卡牢固',
1095
- // 'type': 'radio',
1096
- // 'options': [
1097
- // {
1098
- // 'data': '是',
1099
- // 'f_status':'true'
1100
- // },
1101
- // {
1102
- // 'data': '否',
1103
- // 'f_status':'false'
1104
- // }
1105
- // ]
1106
- // },
1107
- // {
1108
- // 'f_project':'已告知用户公司营业厅地址及需要携带的材料',
1109
- // 'type': 'radio',
1110
- // 'options': [
1111
- // {
1112
- // 'data': '是',
1113
- // 'f_status':'true'
1114
- // },
1115
- // {
1116
- // 'data': '否',
1117
- // 'f_status':'false'
1118
- // }
1119
- // ]
1120
- // },
1121
- // {
1122
- // 'f_project':'已向用户宣传安全用气常识、操作规范,并告知24小时客服电话',
1123
- // 'type': 'radio',
1124
- // 'options': [
1125
- // {
1126
- // 'data': '是',
1127
- // 'f_status':'true'
1128
- // },
1129
- // {
1130
- // 'data': '否',
1131
- // 'f_status':'false'
1132
- // }
1133
- // ]
1134
- // },
1135
- // {
1136
- // 'f_project':'严格按照作业标准及步骤进行操作',
1137
- // 'type': 'radio',
1138
- // 'options': [
1139
- // {
1140
- // 'data': '是',
1141
- // 'f_status':'true'
1142
- // },
1143
- // {
1144
- // 'data': '否',
1145
- // 'f_status':'false'
1146
- // }
1147
- // ]
1148
- // },
1149
- // {
1150
- // 'f_project':'严密性供气压力(单位:kPa)',
1151
- // 'type':'string',
1152
- // 'f_is_must':true
1153
- // },
1154
- // {
1155
- // 'f_project':'严密性试验压力(单位:kPa)',
1156
- // 'type':'string',
1157
- // 'f_is_must':true
1158
- // },
1159
- // {
1160
- // 'f_project':'严密性试验时间为<>分钟',
1161
- // 'type':'string',
1162
- // 'f_is_must':true
1163
- // }
1164
- // ]
1165
- // }
1166
- // ]}
1167
- if(this.row.f_source == '安检'){
1168
- //tag)
1169
- this.repairdetails = JSON.parse(this.row.f_repairitems).data
1170
- if(Vue.config.telephone.RepairsConfig.data != undefined){
1171
- //tag
1172
- //tag)
1173
- this.repairdetails.push(JSON.parse(JSON.stringify(Vue.config.telephone.RepairsConfig.data))[0])
1174
- }
1175
- //tag}`)
1176
- }else{
1177
- //tag
1178
- if(this.row.f_workorder_type == '报修单'){
1179
- if(Vue.config.telephone.RepairsConfig.data != undefined){
1180
- //tag
1181
- //tag)
1182
- this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.RepairsConfig.data)))
1183
- }else{
1184
- this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1185
- }
1186
- }else if(this.row.f_workorder_type == '置换通气单'){
1187
- //tag
1188
- // 判断用户类型 民用/非民用
1189
- if(this.row.f_user_type == '民用'){
1190
- //tag
1191
- if(Vue.config.telephone.SubstitConfigCivil.data != undefined){
1192
- //tag
1193
- //tag)
1194
- this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.SubstitConfigCivil.data)))
1195
- }else {
1196
- this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1197
- }
1198
- }else{
1199
- //tag
1200
- if(Vue.config.telephone.SubstitConfigBusiness.data != undefined){
1201
- //tag
1202
- //tag)
1203
- this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.SubstitConfigBusiness.data)))
1204
- }else{
1205
- this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1206
- }
1207
- }
1208
- }else{
1209
- //tag
1210
- // 判断用户类型 民用/非民用
1211
- if(this.row.f_user_type == '民用'){
1212
- //tag
1213
- if(Vue.config.telephone.InstallConfigCivil.data != undefined){
1214
- //tag
1215
- //tag)
1216
- this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.InstallConfigCivil.data)))
1217
- }else {
1218
- this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1219
- }
1220
- }else{
1221
- //tag
1222
- if(Vue.config.telephone.InstallConfigBusiness.data != undefined){
1223
- //tag
1224
- //tag)
1225
- this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.InstallConfigBusiness.data)))
1226
- }else{
1227
- this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1228
- }
1229
- }
1230
-
1231
-
1232
- }
1233
- }
1234
- // this.repairdetails = [{"f_type": "换表","details": [{"f_project":"换表类型","type": "selector","options": [{"data": "换计费器"},{"data": "换新表"},{"data": "气表清零"}]},{"f_project":"换表原因","type": "selector","options": [{"data": "换新表"}]},{"f_project":"旧表底数","type": "string"}]},{"f_type": "改管","details": [{"f_project":"换表原因","type": "selector","options": [{"data": "换新表"}]},{"f_project":"旧表底数","type": "string"}]}]
1235
- // 维修项传到维修单中
1236
- this.getRepairDetails()
1237
- loadParamGem(this)
1238
- //tag
1239
- this.copy()
1240
- //tag
1241
- // tbs合并数组
1242
- if( this.model.serviceacitivity[0].servicerepair.length > 0){
1243
- for(let i = 0;i < this.model.serviceacitivity[0].servicerepair.length;i++ ){
1244
- this.tabs.splice(1 + i, 0, {header:this.model.serviceacitivity[0].servicerepair[i].f_type,complete:'repair-details',items:this.model.serviceacitivity[0].servicerepair[i].details,class:'repair-details-class',number:i,details:Object.assign({}, JSON.parse(JSON.stringify(this.model.serviceacitivity[0].servicerepair[i])))})
1245
- }
1246
- }
1247
- //tag
1248
- this.faultshow.number = this.tabs.length
1249
- if (this.show || this.repair) {
1250
- this.faultshow.number = this.tabs.length
1251
- }
1252
- },
1253
- components: {
1254
- // 'door-service': DoorService,
1255
- 'repair-info': RepairInfo,
1256
- 'repair-user-info': RepairUserInfo,
1257
- 'outlay': Outlay,
1258
- 'fault-all': FaultAll,
1259
- 'repair-details':RepairDetails
1260
- // 'change-meter-page': ChangeMeterPage
1261
- // 'pipeline': Pipeline,
1262
- // 'device-service': DeviceService,
1263
- // 'trouble-removal': TroubleRemoval,
1264
- // 'cooking-utensils': CookingUtensils,
1265
- // 'repair-matter-info': RepairMatterInfo,
1266
- // 'first-gas-check': FirstGasCheck,
1267
- // 'tel-change-matter': TelChangeMatter/
1268
- },
1269
- events: {
1270
- 'tijiao': function () {
1271
- // 事件回调内的 `this` 自动绑定到注册它的实例上
1272
- this.confirm()
1273
- }
1274
- }
1275
- }
1276
- </script>
1277
- <style lang="less">
1278
- @import "../../../../src/bootstrap/less/variables.less";
1279
- //@import "../../../node_modules/system-clients/src/styles/less/variables.less";
1280
- .tab-befor-img (@url) {
1281
- content: '';
1282
- background-image: url("@{url}");
1283
- background-size: 20px;
1284
- display: inline-block;
1285
- margin-right: 8px;
1286
- margin-top: 0.3em;
1287
- height: 1.3em;
1288
- width: 1.3em;
1289
- vertical-align: -35%;
1290
- }
1291
-
1292
- @media screen and (min-width: 768px) {
1293
- .android-repair-order > div > ul a {
1294
- font-size: @font-size-h2;
1295
- margin: 0.3em 0;
1296
- }
1297
- }
1298
- .repair-details-class{
1299
- &::before {
1300
- .tab-befor-img("../../../assets/huneiweixiu1.png");
1301
- }
1302
- }
1303
- .repair-info-class {
1304
- &::before {
1305
- .tab-befor-img("../../../assets/baoxiuxinxi1.png");
1306
- }
1307
- }
1308
- /* .change-meter-page-class {
1309
- &::before {
1310
- .tab-befor-img("../../assets/baoxiuxinxi1.png");
1311
- }
1312
- }*/
1313
- .repair-user-info-class {
1314
- &::before {
1315
- .tab-befor-img("../../../assets/jibenxinxi1.png")
1316
- }
1317
- }
1318
-
1319
- .door-service-class {
1320
- &::before {
1321
- .tab-befor-img("../../../assets/huneiweixiu1.png")
1322
- }
1323
- }
1324
-
1325
- .pipeline-class {
1326
- &::before {
1327
- .tab-befor-img("../../../assets/guandao1.png")
1328
- }
1329
- }
1330
-
1331
- .device-service-class {
1332
- &::before {
1333
- .tab-befor-img("../../../assets/shebeiweixiu1.png")
1334
- }
1335
- }
1336
-
1337
- .trouble-removal-class {
1338
- &::before {
1339
- .tab-befor-img("../../../assets/shiguchuli.png")
1340
- }
1341
- }
1342
-
1343
- .cooking-utensils-class {
1344
- &::before {
1345
- .tab-befor-img("../../../assets/zaoju1.png")
1346
- }
1347
- }
1348
-
1349
- .outlay-class {
1350
- &::before {
1351
- .tab-befor-img("../../../assets/feiyong1.png")
1352
- }
1353
- }
1354
-
1355
- .fault-all-class {
1356
- &::before {
1357
- .tab-befor-img("../../../assets/guzhanghuizong1.png")
1358
- }
1359
- }
1360
- .photo-write-class {
1361
- &::before {
1362
- .tab-befor-img("../../../assets/zaoju.png")
1363
- }
1364
- }
1365
- .delay-apply-class {
1366
- &::before {
1367
- .tab-befor-img("../../../assets/yonghubaoxiu.png")
1368
- }
1369
- }
1370
-
1371
- .repair-back-class {
1372
- &::before {
1373
- .tab-befor-img("../../../assets/fanhui.png")
1374
- }
1375
- }
1376
- .butt2 {
1377
- display: inline;
1378
- float: right;
1379
- width: 10px;
1380
- text-align: center;
1381
- align-items:center;
1382
- position: absolute;
1383
- top:50%;
1384
-
1385
- left:90%;
1386
- transform: translate(-50%,-50%);
1387
- }
1388
- .linesty{
1389
- display: inline-block;
1390
- height:1px;
1391
- width:100%;
1392
- background:#d0d0d0;
1393
- overflow:hidden;
1394
- vertical-align: middle;
1395
- }
1396
- .spanboder{
1397
- border-bottom:2px solid #499edf;
1398
- padding-bottom: 8px
1399
- }
1400
- .app-botton {
1401
- position:fixed;
1402
- background: #87b2dd;
1403
- right:8px;
1404
- color: #FFF;
1405
- padding: 8px;
1406
- text-align: center;
1407
- font-size: 1.2em;
1408
- z-index: 10;
1409
- opacity:0.5;
1410
- bottom: 50px;
1411
- margin-top: -10px;
1412
- height: 40px;
1413
- }
1414
- .android-repair-order > div > ul a {
1415
- font-size: 12px;
1416
- color: #333333;
1417
- padding: 13px 16px;
1418
- }
1419
- </style>
1
+ <template>
2
+ <!--<div class="app-botton" @click="back()">-->
3
+ <!--返回<span class="glyphicon glyphicon-menu-right"></span>-->
4
+ <!--</div>-->
5
+ <div class="no-close row android-repair-order" style="background-color: #f9f9f9">
6
+ <div class="col-sm-12 col-xs-12" >
7
+ <ul class="nav nav-tabs" style="background:#ffffff;">
8
+ <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
9
+ v-if="$index < number+1 && $index < faultshow.number" >
10
+ <a href="javascript:void(0)" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
11
+ <span class="spanboder">{{row.header}}</span>
12
+ <img class="butt2" :src="imgback(row.complete === componentName)"></a>
13
+ <p></p>
14
+ </li>
15
+ <div class="col-sm-12 col-xs-12 repair-bg" v-show="routeShow">
16
+ <route name='repair' :reuse="false"></route>
17
+ </div>
18
+ <li v-for="row in tabs" @click="tabSelect(row,$index)" :class="{active1: row.complete === componentName}"
19
+ v-if="$index > number && $index < faultshow.number ">
20
+ <a href="javascript:void(0)" style="background-color: #ffffff;color: #666666;font-size: 16px;font-family:SimSun" :class="row.class">
21
+ <span class="spanboder">{{row.header}}</span>
22
+ <img class="butt2" :src="imgback(row.complete === componentName)"></a>
23
+ <p></p>
24
+ </li>
25
+ <div class="col-sm-12 col-xs-12 repair-bg">
26
+ <route name='upload' :reuse="false"></route>
27
+ </div>
28
+ </ul>
29
+ </div>
30
+ </div>
31
+ </template>
32
+
33
+ <script>
34
+ // 户内维修
35
+ import Vue from 'vue'
36
+ import RepairInfo from './RepairInfo'
37
+ import RepairDetails from '../../../components/workorder/RepairDetails'
38
+ import RepairUserInfo from './RepairUserInfo'
39
+ import Outlay from '../../../components/workorder/Outlay'
40
+ import FaultAll from '../../../components/workorder/FaultAll'
41
+ import { HttpResetClass } from 'vue-client'
42
+ import co from 'co'
43
+ let loadParamGem = async function (self) {
44
+ await self.$LoadParams.loadParam()
45
+ }
46
+
47
+ export default {
48
+ title: '维修单',
49
+ props: {
50
+ worktype:{
51
+ type: String,
52
+ default: '报修单'
53
+ },
54
+ //分辨平板还是pc
55
+ system: '',
56
+ // 要处理的工单
57
+ row: {
58
+ type: Object
59
+ },
60
+ // 要显示的维修单
61
+ repair: {
62
+ type: Object
63
+ },
64
+ // 是否是显示
65
+ show: {
66
+ type: Boolean,
67
+ default: false
68
+ },
69
+ issee:''
70
+ },
71
+
72
+ data() {
73
+ return {
74
+ // 维修项
75
+ repairdetails:{},
76
+ // userinfo: '',
77
+ routeShow:true,
78
+ number:0,
79
+ shupingshow:false,
80
+ pipeline: {},
81
+ model: {
82
+ serviceacitivity: [{
83
+ baseuserinfo: {
84
+ f_credentials:'身份证'
85
+ },
86
+ basemeterinfo: {},
87
+ matterinfo: {},
88
+ servicerepair: [],
89
+ // 照片
90
+ imgs: [],
91
+ // 签名照片名字
92
+ // 照片
93
+ material: [], //维修的一批材料
94
+ f_date: '',
95
+ f_date_come: '',
96
+ f_date_leave: '',
97
+ f_is_userfilesadd:'未上传',
98
+ f_workorder_type:this.worktype ? this.worktype : '报修单'
99
+ }]
100
+ },
101
+ details: [],
102
+ ids: '',
103
+ savevalid: {
104
+ uservalid: false,
105
+ doorvalid: true,
106
+ changetable: false
107
+ },
108
+ doordetails: {},
109
+ devicedetails: {},
110
+ cookdetails: {},
111
+ componentName: 'repair-info',
112
+ tabs: [
113
+ // 参数全部设置成空,在ready时,等model处理好了,再添加
114
+ {
115
+ header: '客户工单信息', complete: 'repair-info', class: 'repair-info-class', props: null
116
+ },
117
+ // {
118
+ // header: '换表', complete: 'change-meter-page', class: 'change-meter-page-class', props: null
119
+ //
120
+ // },
121
+ // {
122
+ // header: '客户基本信息',complete:'repair-user-info', class: 'repair-user-info-class', props: null
123
+ // },
124
+ // 'door-service': {
125
+ // header: '户内维修', class: 'door-service-class', props: null
126
+ // },
127
+ // 'tel-change-matter': {
128
+ // header: '换表', class: 'cooking-utensils-class', props: null
129
+ // },
130
+ // 'pipeline': {
131
+ // header: '管道', class: 'pipeline-class', props: null
132
+ // },
133
+ // 'device-service': {
134
+ // header: '设备维修', class: 'device-service-class', props: null
135
+ // },
136
+ // 'first-gas-check': {
137
+ // header: '置换通气', class: 'cooking-utensils-class', props: null
138
+ // },
139
+ {
140
+ header: '拍照及签名',complete:'outlay', class: 'outlay-class', props: null
141
+ }
142
+ // {
143
+ // header: '上传工单',complete:'fault-all', class: 'fault-all-class', props: null
144
+ // }
145
+ ],
146
+ faultshow:{
147
+ number : 8
148
+ } // 控制 故障汇总 菜单里显示与否
149
+ }
150
+ },
151
+ methods: {
152
+ imgback(val){
153
+ if(val && this.routeShow){
154
+ return require('../../../assets/xiangxia1.png')
155
+ }else{
156
+ return require('../../../assets/xiangyou1.png')
157
+ }
158
+ },
159
+ // 选择tab
160
+ tabSelect (item,number) {
161
+ // 处理关闭/显示 内容
162
+ if(this.number == number && !this.routeShow ){
163
+ this.routeShow = true
164
+ }else if(this.number == number && this.routeShow){
165
+
166
+ this.routeShow = false
167
+ }else if(this.number != item.complete){
168
+ this.routeShow = true
169
+ }
170
+ this.number = number
171
+ this.componentName = item.complete
172
+ if(item.complete == 'repair-details'){
173
+ if (this.row.f_workorder_type == '置换通气单') {
174
+ // 根据置换单的用户类型,查询气价信息给下拉框赋值
175
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/queryGaspriceGroupByFilaleid`,
176
+ {data: {f_filialeid:Vue.user.orgid,f_gasproperties:this.row.f_gasproperties}},
177
+ {resolveMsg: null, rejectMsg: null}).then((rese)=>{
178
+ //tag)
179
+ let pricelist = []
180
+ if (rese.data) {
181
+ rese.data.forEach(item => pricelist.push({label: item.f_price_name, value: item.f_price_name}))
182
+ }
183
+ this.pricelists = pricelist;
184
+ //tag)
185
+ let itemprops = {
186
+ model: this.model.serviceacitivity[0],
187
+ service: this.model,
188
+ show: this.show,
189
+ repairitem: item,
190
+ faultshow :this.faultshow,
191
+ shutype:'shu',
192
+ tabs:this.tabs,
193
+ repairdetails:this.repairdetails,
194
+ issee:this.issee,
195
+ pricelists: this.pricelists //根据置换单下派的用气性质和公司查询的气价信息
196
+ }
197
+ //tag
198
+ //tag)
199
+ this.$goto(item.complete, itemprops, 'repair')
200
+ })
201
+ } else {
202
+ let itemprops = {
203
+ model: this.model.serviceacitivity[0],
204
+ service: this.model,
205
+ show: this.show,
206
+ repairitem: item,
207
+ faultshow :this.faultshow,
208
+ shutype:'shu',
209
+ tabs:this.tabs,
210
+ repairdetails:this.repairdetails,
211
+ issee:this.issee,
212
+ pricelists: [{label:"无",value:"无"}]
213
+ }
214
+ //tag
215
+ //tag)
216
+ this.$goto(item.complete, itemprops, 'repair')
217
+ }
218
+ }else{
219
+ //tag
220
+ // //tag)
221
+ // //tag)
222
+ if(this.routeShow) {
223
+ //tag)
224
+ // //tag)
225
+ this.$goto(item.complete, this.tabs[number].props, 'repair')
226
+ }
227
+ }
228
+ this.shupingshow = true
229
+ },
230
+ // 给组件添加参数
231
+ getImgPath() {
232
+ for (var i = 0; i < this.model.serviceacitivity[0].imgs.length; i++) {
233
+ this.ids += this.model.serviceacitivity[0].imgs[i].imgid + ','
234
+ }
235
+ this.ids = this.ids.substring(0, this.ids.length - 1)
236
+ if(this.ids){
237
+ this.getImgGen();
238
+ }
239
+ },
240
+ getImgGen(){
241
+ let http = new HttpResetClass()
242
+ http.load('POST','rs/sql/tel_singleTable_OrderBy', {data: {
243
+ items: '*',
244
+ tablename: 't_files',
245
+ condition: `id in (${this.ids})`,
246
+ orderitem: 'id'
247
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
248
+ for (let i = 0; i < res.data.length; i++) {
249
+ for (let j = 0; j < this.model.serviceacitivity[0].imgs.length; j++) {
250
+ //tag)
251
+ //tag
252
+ if (res.data[i].id.toString() === this.model.serviceacitivity[0].imgs[j].imgid) {
253
+ this.model.serviceacitivity[0].imgs[j] = Object.assign({}, res.data[i], this.model.serviceacitivity[0].imgs[j])
254
+ }
255
+ }
256
+
257
+ }
258
+ })
259
+ },
260
+ setProps() {
261
+ // 给各自组件添加参数
262
+ for(var i =0;i<this.tabs.length;i++ ){
263
+ if(this.tabs[i].complete == 'repair-info'){
264
+ this.tabs[i].props = {
265
+ service: this.row,
266
+ model: this.model.serviceacitivity[0].baseuserinfo,
267
+ data: this.model.serviceacitivity[0],
268
+ savevalid: this.savevalid,
269
+ repair: this.row,
270
+ show: this.show,
271
+ // userinfo: this.userinfo
272
+ shutype:'shu',
273
+ worktype:this.worktype,
274
+ issee:this.issee
275
+ }
276
+ }else if (this.tabs[i].complete == 'repair-user-info'){
277
+ this.tabs[i].props = {
278
+ model: this.model.serviceacitivity[0].baseuserinfo,
279
+ data: this.model.serviceacitivity[0],
280
+ savevalid: this.savevalid,
281
+ repair: this.row,
282
+ show: this.show,
283
+ // userinfo: this.userinfo
284
+ shutype:'shu',
285
+ worktype:this.worktype,
286
+ issee:this.issee
287
+ }
288
+ } else if (this.tabs[i].complete == 'outlay'){
289
+ this.tabs[i].props = {
290
+ model: this.model.serviceacitivity[0],
291
+ service: this.model,
292
+ show: this.show,
293
+ system: this.system,
294
+ f_single_man: this.model.f_single_man,
295
+ shutype: 'shu',
296
+ issee:this.issee
297
+ }
298
+ }else if (this.tabs[i].complete == 'fault-all'){
299
+ this.tabs[i].props = {
300
+ msg: this.model, model: this.model.serviceacitivity[0],
301
+ service: this.model, system: this.system, show: this.show,
302
+ savevalid: this.savevalid,
303
+ issee: this.issee
304
+ }
305
+ }else if (this.tabs[i].complete == 'change-meter-page') {
306
+ //tag
307
+ //tag)
308
+ this.tabs[i].props = {
309
+ service: this.row,
310
+ model: this.model.serviceacitivity[0].basemeterinfo,
311
+ data: this.model.serviceacitivity[0],
312
+ savevalid: this.savevalid,
313
+ repair: this.row,
314
+ show: this.show,
315
+ // userinfo: this.userinfo
316
+ shutype: 'shu',
317
+ worktype: this.worktype,
318
+ issee: this.issee
319
+ }
320
+ }
321
+ }
322
+
323
+ // this.tabs['repair-info'].props = {service: this.row,shutype:'shu'}
324
+ // if (this.model.serviceacitivity[0]) {
325
+ // this.tabs['repair-user-info'].props = {
326
+ // model: this.model.serviceacitivity[0].baseuserinfo,
327
+ // data: this.model.serviceacitivity[0],
328
+ // savevalid: this.savevalid,
329
+ // repair: this.row,
330
+ // show: this.show,
331
+ // // userinfo: this.userinfo
332
+ // shutype:'shu'
333
+ // }
334
+ // }
335
+ // this.tabs['door-service'].props =
336
+ // {
337
+ // model: this.model.serviceacitivity[0],
338
+ // savevalid: this.savevalid,
339
+ // changetable: this.changetable,
340
+ // service: this.model, show: this.show,
341
+ // details: this.doordetails.details,
342
+ // shutype:'shu'
343
+ // }
344
+ // this.tabs['tel-change-matter'].props =
345
+ // {
346
+ // model: this.model.serviceacitivity[0],
347
+ // service: this.model,
348
+ // show: this.show,
349
+ // shutype:'shu'
350
+ // }
351
+ // this.tabs['pipeline'].props =
352
+ // {
353
+ // model: this.model.serviceacitivity[0],
354
+ // service: this.model,
355
+ // show: this.show,
356
+ // shutype:'shu'
357
+ // }
358
+ // this.tabs['device-service'].props = {
359
+ // model: this.model.serviceacitivity[0],
360
+ // service: this.model,
361
+ // show: this.show,
362
+ // details: this.devicedetails.details,
363
+ // shutype:'shu'
364
+ // }
365
+ // this.tabs['outlay'].props = {
366
+ // model: this.model.serviceacitivity[0],
367
+ // service: this.model,
368
+ // show: this.show,
369
+ // system: this.system,
370
+ // f_single_man: this.model.f_single_man,
371
+ // shutype: 'shu'
372
+ // }
373
+ // this.tabs['fault-all'].props =
374
+ // {
375
+ // msg: this.model, model: this.model.serviceacitivity[0],
376
+ // service: this.model, system: this.system, show: this.show,
377
+ // savevalid: this.savevalid
378
+ // }
379
+
380
+ // 参数设置成功,在转向第一个页签
381
+ this.$goto('repair-info', this.tabs[0].props, 'repair')
382
+ if(!this.issee){
383
+ this.gotoUpload()
384
+ }
385
+ },
386
+
387
+ getRepair() {
388
+ if (Vue.android) {
389
+ //tag
390
+ if (this.$androidUtil.isTest) {
391
+ //tag
392
+ this.$androidUtil.path({'alias': 'serviceWork', 'data': {id: this.row.serviceacitivity[0].id}}).then((ret) => {
393
+ this.model.serviceacitivity = ret.data
394
+ this.getDetails()
395
+ })
396
+ } else {
397
+ //tag
398
+ let result = this.$androidUtil.path({'alias': 'serviceWork', 'data': {id: this.row.serviceacitivity[0].id}})
399
+ //tag
400
+ if (result.code === 200) {
401
+ // this.show = true
402
+ this.model.serviceacitivity = result.data
403
+ this.getDetails()
404
+ }
405
+ }
406
+ } else {
407
+ //tag
408
+ this.getService();
409
+ }
410
+ },
411
+ getService(){
412
+ let http = new HttpResetClass()
413
+ http.load('POST','rs/path/serviceWork', {data: {id: this.repair.id}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
414
+ this.model.serviceacitivity = [res.data[0]]
415
+ this.getDetails()
416
+ })
417
+ },
418
+ sortDetails(){
419
+ for (let i = 0; i < this.details.length; i++) {
420
+ if (this.details[i].details.length) {
421
+ for (let j = 0; j < this.details[i].details.length; j++) {
422
+ if (this.details[i].details[j].f_type === 'a') {
423
+ this.doordetails = {details: this.details[i].details}
424
+ break
425
+ }
426
+ if (this.details[i].details[j].f_type === 'b') {
427
+ this.devicedetails = {details: this.details[i].details}
428
+ break
429
+ }
430
+ if (this.details[i].details[j].f_type === 'c') {
431
+ this.cookdetails = {details: this.details[i].details}
432
+ break
433
+ }
434
+ }
435
+ }
436
+ }
437
+ },
438
+ getDetails() {
439
+ if (Vue.android) {
440
+ //tag
441
+ if (this.$androidUtil.isTest) {
442
+ //tag
443
+ this.$androidUtil.path({'alias': 'getDetails', 'data': {id: this.row.serviceacitivity[0].id}}).then((ret) => {
444
+ this.details = ret.data
445
+ this.sortDetails()
446
+ if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
447
+ this.getImgPath()
448
+ }
449
+ this.setProps()
450
+ })
451
+ } else {
452
+ //tag
453
+ //tag
454
+ let result = this.$androidUtil.path({'alias': 'getDetails', 'data': {id:this.row.serviceacitivity[0].id}})
455
+ //tag
456
+ if (result.code === 200) {
457
+ this.details = result.data
458
+ this.sortDetails()
459
+ if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
460
+ this.getImgPath()
461
+ }
462
+ this.setProps()
463
+ }
464
+ }
465
+ } else {
466
+ //tag
467
+ this.getDetailsGen();
468
+ }
469
+ },
470
+ getDetailsGen(){
471
+ let http = new HttpResetClass()
472
+ http.load('POST','rs/path/getDetails', {data: {id: this.repair.id}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
473
+ this.details = res.data
474
+ // this.sortDetails()
475
+ if (this.model.serviceacitivity[0] && this.model.serviceacitivity[0].imgs) {
476
+ this.getImgPath()
477
+ }
478
+ this.setProps()
479
+ })
480
+ },
481
+ // 获取维修数据
482
+ getRepairInfo(){
483
+ if (this.$androidUtil.isTest) {
484
+ // android模拟
485
+ this.$androidUtil.path({'alias': 'telgetRepairWorkMsg', 'data': {id: this.row.id}}).then((ret) => {
486
+ this.model.serviceacitivity = ret.data[0].serviceacitivity
487
+ this.setProps()
488
+ })
489
+ } else {
490
+ let result = this.$androidUtil.path({'alias': 'telgetRepairWorkMsg', 'data': {id: this.row.id}})
491
+ if (result.code == 200) {
492
+ //tag)
493
+ //tag)
494
+ this.model.serviceacitivity = result.data[0].serviceacitivity
495
+ this.setProps()
496
+ }
497
+ }
498
+ },
499
+ // 复制数据
500
+ copy() {
501
+ if (this.row) {
502
+ //tag
503
+ this.model = Object.assign({}, this.model, this.row)
504
+ //tag
505
+ //tag)
506
+ // 获取维修数据
507
+ if(Vue.android){
508
+ if(this.row.f_orderstatus == '本地保存'){
509
+ this.getRepairInfo()
510
+ }
511
+ }
512
+ }
513
+ // 指定了维修单,获取维修单数据,给工单
514
+ if (this.repair) {
515
+ this.getRepair()
516
+ } else {
517
+ //tag
518
+ this.setProps()
519
+ }
520
+ },
521
+ back () {
522
+ let _this = this
523
+ if(this.issee){
524
+ _this.$back()
525
+ return
526
+ }
527
+ this.$showMessage('所填写内容将不可恢复!', ['confirm', 'cancel']).then((res) => {
528
+ if (res === 'confirm') {
529
+ _this.$back()
530
+ }
531
+ })
532
+ },
533
+ confirm(){
534
+ this.$dispatch('confirm')
535
+ },
536
+ mute() {
537
+ HostApp.mute()
538
+ },
539
+ // 维修项赋给维修单的维修集合内
540
+ getRepairDetails() {
541
+ if (this.repairdetails.length > 0) {
542
+ let repairlist = []
543
+ for (let j = 0;j< this.repairdetails.length;j++) {
544
+ let repairitem = []
545
+ for (var i = 0;i< this.repairdetails[j].details.length;i++) {
546
+ if(this.row.f_source == '安检'){
547
+ repairitem.push({f_project:this.repairdetails[j].details[i].f_project,type:this.repairdetails[j].details[i].type,f_defect_id:this.repairdetails[j].details[i].f_defect_id,f_status:'',f_content:''})
548
+ }else{
549
+ repairitem.push({f_project:this.repairdetails[j].details[i].f_project,type:this.repairdetails[j].details[i].type,f_status:'',f_content:'',f_is_must:this.repairdetails[j].details[i].f_is_must ? 'true':'false'})
550
+ }
551
+ }
552
+ repairlist.push({f_type: this.repairdetails[j].f_type, details: repairitem,imgs:[],f_remarks:this.repairdetails[j].f_remarks})
553
+ }
554
+ this.model.serviceacitivity[0].servicerepair = Object.assign([], repairlist)
555
+ }
556
+ //tag)
557
+ },
558
+ gotoUpload(){
559
+ this.$goto('fault-all', {
560
+ msg: this.model, model: this.model.serviceacitivity[0],
561
+ service: this.model, system: this.system, show: this.show,
562
+ savevalid: this.savevalid,
563
+ issee:this.issee
564
+ }, 'upload')
565
+ }
566
+ },
567
+ watch: {
568
+ 'row' () {
569
+ //tag
570
+ this.copy()
571
+ }
572
+ },
573
+ ready () {
574
+ // 1.先判断是否是安检转来的
575
+ // 2.判断工单类型 报修单/置换通气单
576
+ // 3.判断用户类型 民用及非民用
577
+ // Vue.config = {
578
+ // telephone:{
579
+ // SubstitConfigCivil:{}
580
+ // }
581
+ // }
582
+ // Vue.config.telephone.SubstitConfigCivil = {
583
+ // 'data':[
584
+ // {
585
+ // 'f_type': '用气设备信息',
586
+ // 'f_remarks':'设备',
587
+ // 'details': [
588
+ // {
589
+ // 'f_project':'客户用气设备名称',
590
+ // 'type': 'string',
591
+ // 'f_is_must':true
592
+ // },
593
+ // {
594
+ // 'f_project':'负荷(锅炉/功率)',
595
+ // 'type': 'string',
596
+ // 'f_is_must':true
597
+ // }
598
+ // ]
599
+ // },
600
+ // {
601
+ // 'f_type': '控制器信息',
602
+ // 'f_remarks':'设备',
603
+ // 'details': [
604
+ // {
605
+ // 'f_project':'有无控制器',
606
+ // 'type': 'checkbox'
607
+ // },
608
+ // {
609
+ // 'f_project':'设备名称',
610
+ // 'type': 'selector',
611
+ // 'f_is_must':true,
612
+ // 'options': [
613
+ // {
614
+ // 'data': '控制器'
615
+ // },
616
+ // {
617
+ // 'data': 'IC卡表'
618
+ // },
619
+ // {
620
+ // 'data': '远传物联网表'
621
+ // }
622
+ // ]
623
+ // },
624
+ // {
625
+ // 'f_project':'型号',
626
+ // 'f_is_must':true,
627
+ // 'type': 'string'
628
+ // },
629
+ // {
630
+ // 'f_project':'生产厂家',
631
+ // 'f_is_must':true,
632
+ // 'type': 'string'
633
+ // },
634
+ // {
635
+ // 'f_project':'铅封号',
636
+ // 'type': 'string'
637
+ // },
638
+ // {
639
+ // 'f_project':'备注',
640
+ // 'type': 'string'
641
+ // }
642
+ // ]
643
+ // },
644
+ // {
645
+ // 'f_type': '表具信息',
646
+ // 'f_remarks':'设备',
647
+ // 'details': [
648
+ // {
649
+ // 'f_project':'气表品牌',
650
+ // 'f_is_must':true,
651
+ // 'type': 'selector',
652
+ // 'options':[
653
+ // {'data':'中元新'},
654
+ // {'data':'三龙'},
655
+ // {'data':'鸿鹄'},
656
+ // {'data':'秦川'},
657
+ // {'data':'新奥新'},
658
+ // {'data':'中元老'},
659
+ // {'data':'新奥老'},
660
+ // {'data':'福禄克'},
661
+ // {'data':'苍南老CPU'},
662
+ // {'data':'振达'},
663
+ // {'data':'航宇星民用'},
664
+ // {'data':'航宇星民用双模'},
665
+ // {'data':'德力西1.0'},
666
+ // {'data':'宁波鹏盛'},
667
+ // {'data':'德力西2.0'},
668
+ // {'data':'建安民用'},
669
+ // {'data':'金卡民用'},
670
+ // {'data':'其他'}
671
+ // ]
672
+ // },
673
+ // {
674
+ // 'f_project':'表具类型',
675
+ // 'f_is_must':true,
676
+ // 'type': 'selector',
677
+ // 'options':[
678
+ // {'data':'腰轮流量计'},
679
+ // {'data':'涡轮流量计'},
680
+ // {'data':'超声流量计'},
681
+ // {'data':'热式质量流量计'},
682
+ // {'data':'机械表'},
683
+ // {'data':'普通卡表'},
684
+ // {'data':'带温压补偿的卡表'},
685
+ // {'data':'带温压补偿的远传物联网表'},
686
+ // {'data':'远传物联网表'},
687
+ // {'data':'其他'}
688
+ // ]
689
+ // },
690
+ // {
691
+ // 'f_project':'型号',
692
+ // 'f_is_must':true,
693
+ // 'type': 'string'
694
+ // },
695
+ // {
696
+ // 'f_project':'计量方式',
697
+ // 'type': 'selector',
698
+ // 'f_is_must':true,
699
+ // 'options':[
700
+ // {'data':'次高压计量'},
701
+ // {'data':'中压计量'},
702
+ // {'data':'低压计量'}
703
+ // ]
704
+ // },
705
+ // {
706
+ // 'f_project':'流量范围(m³/h)',
707
+ // 'f_is_must':true,
708
+ // 'type': 'string'
709
+ // },
710
+ // {
711
+ // 'f_project':'口径(mm)',
712
+ // 'type': 'string'
713
+ // },
714
+ // {
715
+ // 'f_project':'准确度',
716
+ // 'f_is_must':true,
717
+ // 'type': 'string'
718
+ // },
719
+ // {
720
+ // 'f_project':'表基数',
721
+ // 'f_is_must':true,
722
+ // 'type': 'string'
723
+ // },
724
+ // {
725
+ // 'f_project':'加铅封号',
726
+ // 'type': 'string'
727
+ // },
728
+ // {
729
+ // 'f_project':'备注',
730
+ // 'type': 'string'
731
+ // }
732
+ // ]
733
+ // },
734
+ // {
735
+ // 'f_type': '置换作业',
736
+ // 'details':[
737
+ // {
738
+ // 'f_project':'户内外燃气设施完整,外观无明显异常',
739
+ // 'type': 'radio',
740
+ // 'f_is_must':true,
741
+ // 'options': [
742
+ // {
743
+ // 'data': '',
744
+ // 'f_status':'true'
745
+ // },
746
+ // {
747
+ // 'data': '',
748
+ // 'f_status':'false'
749
+ // }
750
+ // ]
751
+ // },
752
+ // {
753
+ // 'f_project':'是否喷涂警示色',
754
+ // 'type': 'radio',
755
+ // 'f_is_must':true,
756
+ // 'options': [
757
+ // {
758
+ // 'data': '是',
759
+ // 'f_status':'true'
760
+ // },
761
+ // {
762
+ // 'data': '',
763
+ // 'f_status':'false'
764
+ // }
765
+ // ]
766
+ // },
767
+ // {
768
+ // 'f_project':'燃气管道支撑稳固',
769
+ // 'f_is_must':true,
770
+ // 'type':'radio',
771
+ // 'options': [
772
+ // {
773
+ // 'data': '是',
774
+ // 'f_status':'true'
775
+ // },
776
+ // {
777
+ // 'data': '否',
778
+ // 'f_status':'false'
779
+ // }
780
+ // ]
781
+ // },
782
+ // {
783
+ // 'f_project':'燃气管道连接牢固',
784
+ // 'f_is_must':true,
785
+ // 'type':'radio',
786
+ // 'options': [
787
+ // {
788
+ // 'data': '是',
789
+ // 'f_status':'true'
790
+ // },
791
+ // {
792
+ // 'data': '否',
793
+ // 'f_status':'false'
794
+ // }
795
+ // ]
796
+ // },
797
+ // {
798
+ // 'f_project':'穿墙燃气管道是否加装套管、打密封胶',
799
+ // 'f_is_must':true,
800
+ // 'type':'radio',
801
+ // 'options': [
802
+ // {
803
+ // 'data': '是',
804
+ // 'f_status':'true'
805
+ // },
806
+ // {
807
+ // 'data': '否',
808
+ // 'f_status':'false'
809
+ // }
810
+ // ]
811
+ // },
812
+ // {
813
+ // 'f_project':'进行户内燃气设施严密性试验,试验压力为<>kPa',
814
+ // 'f_is_must':true,
815
+ // 'type': 'string'
816
+ // },
817
+ // {
818
+ // 'f_project':'严密性试验时间为<>分钟,无压降',
819
+ // 'f_is_must':true,
820
+ // 'type': 'string'
821
+ // },
822
+ // {
823
+ // 'f_project':'供气压力(单位:kPa)',
824
+ // 'f_is_must':true,
825
+ // 'type':'string'
826
+ // },
827
+ // {
828
+ // 'f_project':'切断压力(单位:kPa)',
829
+ // 'f_is_must':true,
830
+ // 'type':'string'
831
+ // },
832
+ // {
833
+ // 'f_project':'放散压力(单位:kPa)',
834
+ // 'type':'string'
835
+ // }
836
+ // ]
837
+ // }
838
+ // ]
839
+ // }
840
+ // Vue.config.telephone.SubstitConfigCivil = {
841
+ // 'data':[
842
+ // {
843
+ // 'f_type': '灶具信息',
844
+ // 'details': [
845
+ // {
846
+ // 'f_project':'有无灶具设备',
847
+ // 'type': 'checkbox'
848
+ // },
849
+ // {
850
+ // 'f_project':'灶具品牌',
851
+ // 'type': 'string',
852
+ // 'f_is_must':true
853
+ // },
854
+ // {
855
+ // 'f_project':'灶具型号',
856
+ // 'type': 'string',
857
+ // 'f_is_must':true
858
+ // },
859
+ // {
860
+ // 'f_project':'购买日期',
861
+ // 'type': 'date',
862
+ // 'f_is_must':true
863
+ // },
864
+ // {
865
+ // 'f_project':'合格证',
866
+ // 'type': 'selector',
867
+ // 'options': [
868
+ // {'data':''},
869
+ // {'data':''}
870
+ // ],
871
+ // 'f_is_must':true
872
+ // },
873
+ // {
874
+ // "f_project":"壁挂炉照片",
875
+ // "type": "picture",
876
+ // 'f_is_must':true
877
+ // }
878
+ // ]
879
+ // },
880
+ // {
881
+ // 'f_type': '壁挂炉信息',
882
+ // 'details': [
883
+ // {
884
+ // 'f_project':'有无壁挂炉设备',
885
+ // 'type': 'checkbox'
886
+ // },
887
+ // {
888
+ // 'f_project':'壁挂炉品牌',
889
+ // 'type': 'string',
890
+ // 'f_is_must':true
891
+ // },
892
+ // {
893
+ // 'f_project':'壁挂炉型号',
894
+ // 'type': 'string',
895
+ // 'f_is_must':true
896
+ // },
897
+ // {
898
+ // 'f_project':'购买日期',
899
+ // 'type': 'date',
900
+ // 'f_is_must':true
901
+ // },
902
+ // {
903
+ // 'f_project':'合格证',
904
+ // 'type': 'selector',
905
+ // 'options': [
906
+ // {
907
+ // 'data': ''
908
+ // },
909
+ // {
910
+ // 'data': '无'
911
+ // }
912
+ // ],
913
+ // 'f_is_must':true
914
+ // },
915
+ // {
916
+ // "f_project":"壁挂炉照片",
917
+ // "type": "picture",
918
+ // 'f_is_must':true
919
+ // }
920
+ // ]
921
+ // },
922
+ // {
923
+ // 'f_type': '热水器信息',
924
+ // 'details': [
925
+ // {
926
+ // 'f_project':'有无热水器设备',
927
+ // 'type': 'checkbox'
928
+ // },
929
+ // {
930
+ // 'f_project':'热水器品牌',
931
+ // 'type': 'string',
932
+ // 'f_is_must':true
933
+ // },
934
+ // {
935
+ // 'f_project':'热水器型号',
936
+ // 'type': 'string',
937
+ // 'f_is_must':true
938
+ // },
939
+ // {
940
+ // 'f_project':'购买日期',
941
+ // 'type': 'date',
942
+ // 'f_is_must':true
943
+ // },
944
+ // {
945
+ // 'f_project':'合格证',
946
+ // 'type': 'selector',
947
+ // 'options': [
948
+ // {
949
+ // 'data': ''
950
+ // },
951
+ // {
952
+ // 'data': '无'
953
+ // }
954
+ // ],
955
+ // 'f_is_must':true
956
+ // }
957
+ // ]
958
+ // },
959
+ // {
960
+ // 'f_type': '表具信息',
961
+ // 'details':[
962
+ // {
963
+ // 'f_project':'表号',
964
+ // 'type':'string',
965
+ // 'f_is_must':true
966
+ // },
967
+ // {
968
+ // 'f_project':'表型号',
969
+ // 'type':'string',
970
+ // 'f_is_must':true
971
+ // },
972
+ // {
973
+ // 'f_project':'表具厂家',
974
+ // 'type':'selector',
975
+ // 'f_is_must':true,
976
+ // 'options':[
977
+ // {'data':'中元新'},
978
+ // {'data':'三龙'},
979
+ // {'data':'鸿鹄'},
980
+ // {'data':'秦川'},
981
+ // {'data':'新奥新'},
982
+ // {'data':'中元老'},
983
+ // {'data':'新奥老'},
984
+ // {'data':'福禄克'},
985
+ // {'data':'苍南老CPU'},
986
+ // {'data':'振达'},
987
+ // {'data':'航宇星民用'},
988
+ // {'data':'航宇星民用双模'},
989
+ // {'data':'德力西1.0'},
990
+ // {'data':'宁波鹏盛'},
991
+ // {'data':'德力西2.0'},
992
+ // {'data':'建安民用'},
993
+ // {'data':'金卡民用'},
994
+ // {'data':'其他'}
995
+ // ]
996
+ // },
997
+ // {
998
+ // 'f_project':'表类型',
999
+ // 'type':'selector',
1000
+ // 'options':[
1001
+ // {'data':'气量卡表'},
1002
+ // {'data':'金额卡表'},
1003
+ // {'data':'机表'},
1004
+ // {'data':'物联网表'}
1005
+ // ],
1006
+ // 'f_is_must':true
1007
+ // },
1008
+ // {
1009
+ // 'f_project':'表向',
1010
+ // 'type':'selector',
1011
+ // 'options':[
1012
+ // {'data':'左表'},
1013
+ // {'data':'右表'}
1014
+ // ]
1015
+ // },
1016
+ // {
1017
+ // 'f_project':'表基数',
1018
+ // 'type':'string'
1019
+ // },
1020
+ // {
1021
+ // 'f_project':'备注',
1022
+ // 'type':'string'
1023
+ // }
1024
+ // ]
1025
+ // },
1026
+ // {
1027
+ // 'f_type': '置换作业',
1028
+ // 'details':[
1029
+ // {
1030
+ // 'f_project':'用户是否为超期(半年)重新检测',
1031
+ // 'type': 'radio',
1032
+ // 'options': [
1033
+ // {
1034
+ // 'data': '是',
1035
+ // 'f_status':'true'
1036
+ // },
1037
+ // {
1038
+ // 'data': '',
1039
+ // 'f_status':'false'
1040
+ // }
1041
+ // ]
1042
+ // },
1043
+ // {
1044
+ // 'f_project':'户内燃气设施外观完好,无损坏',
1045
+ // 'type': 'radio',
1046
+ // 'options': [
1047
+ // {
1048
+ // 'data': '是',
1049
+ // 'f_status':'true'
1050
+ // },
1051
+ // {
1052
+ // 'data': '',
1053
+ // 'f_status':'false'
1054
+ // }
1055
+ // ]
1056
+ // },
1057
+ // {
1058
+ // 'f_project':'经过测试后,管道是否有压降',
1059
+ // 'type':'radio',
1060
+ // 'options': [
1061
+ // {
1062
+ // 'data': '是',
1063
+ // 'f_status':'false'
1064
+ // },
1065
+ // {
1066
+ // 'data': '',
1067
+ // 'f_status':'true'
1068
+ // }
1069
+ // ]
1070
+ // },
1071
+ // {
1072
+ // 'f_project':'换作业区内无明火,按标准置换',
1073
+ // 'type': 'radio',
1074
+ // 'options': [
1075
+ // {
1076
+ // 'data': '是',
1077
+ // 'f_status':'true'
1078
+ // },
1079
+ // {
1080
+ // 'data': '',
1081
+ // 'f_status':'false'
1082
+ // }
1083
+ // ]
1084
+ // },
1085
+ // {
1086
+ // 'f_project':'确认用户的燃气炉具、热水器符合安全规范,胶管两端已连接并且管卡牢固',
1087
+ // 'type': 'radio',
1088
+ // 'options': [
1089
+ // {
1090
+ // 'data': '是',
1091
+ // 'f_status':'true'
1092
+ // },
1093
+ // {
1094
+ // 'data': '',
1095
+ // 'f_status':'false'
1096
+ // }
1097
+ // ]
1098
+ // },
1099
+ // {
1100
+ // 'f_project':'已告知用户公司营业厅地址及需要携带的材料',
1101
+ // 'type': 'radio',
1102
+ // 'options': [
1103
+ // {
1104
+ // 'data': '是',
1105
+ // 'f_status':'true'
1106
+ // },
1107
+ // {
1108
+ // 'data': '',
1109
+ // 'f_status':'false'
1110
+ // }
1111
+ // ]
1112
+ // },
1113
+ // {
1114
+ // 'f_project':'已向用户宣传安全用气常识、操作规范,并告知24小时客服电话',
1115
+ // 'type': 'radio',
1116
+ // 'options': [
1117
+ // {
1118
+ // 'data': '是',
1119
+ // 'f_status':'true'
1120
+ // },
1121
+ // {
1122
+ // 'data': '',
1123
+ // 'f_status':'false'
1124
+ // }
1125
+ // ]
1126
+ // },
1127
+ // {
1128
+ // 'f_project':'严格按照作业标准及步骤进行操作',
1129
+ // 'type': 'radio',
1130
+ // 'options': [
1131
+ // {
1132
+ // 'data': '是',
1133
+ // 'f_status':'true'
1134
+ // },
1135
+ // {
1136
+ // 'data': '',
1137
+ // 'f_status':'false'
1138
+ // }
1139
+ // ]
1140
+ // },
1141
+ // {
1142
+ // 'f_project':'严密性供气压力(单位:kPa)',
1143
+ // 'type':'string',
1144
+ // 'f_is_must':true
1145
+ // },
1146
+ // {
1147
+ // 'f_project':'严密性试验压力(单位:kPa)',
1148
+ // 'type':'string',
1149
+ // 'f_is_must':true
1150
+ // },
1151
+ // {
1152
+ // 'f_project':'严密性试验时间为<>分钟',
1153
+ // 'type':'string',
1154
+ // 'f_is_must':true
1155
+ // }
1156
+ // ]
1157
+ // }
1158
+ // ]}
1159
+ if(this.row.f_source == '安检'){
1160
+ //tag)
1161
+ this.repairdetails = JSON.parse(this.row.f_repairitems).data
1162
+ if(Vue.config.telephone.RepairsConfig.data != undefined){
1163
+ //tag
1164
+ //tag)
1165
+ this.repairdetails.push(JSON.parse(JSON.stringify(Vue.config.telephone.RepairsConfig.data))[0])
1166
+ }
1167
+ //tag}`)
1168
+ }else{
1169
+ //tag
1170
+ if(this.row.f_workorder_type == '报修单'){
1171
+ if(Vue.config.telephone.RepairsConfig.data != undefined){
1172
+ //tag
1173
+ //tag)
1174
+ this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.RepairsConfig.data)))
1175
+ }else{
1176
+ this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1177
+ }
1178
+ }else if(this.row.f_workorder_type == '置换通气单'){
1179
+ //tag
1180
+ // 判断用户类型 民用/非民用
1181
+ if(this.row.f_user_type == '民用'){
1182
+ //tag
1183
+ if(Vue.config.telephone.SubstitConfigCivil.data != undefined){
1184
+ //tag
1185
+ //tag)
1186
+ this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.SubstitConfigCivil.data)))
1187
+ }else {
1188
+ this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1189
+ }
1190
+ }else{
1191
+ //tag
1192
+ if(Vue.config.telephone.SubstitConfigBusiness.data != undefined){
1193
+ //tag
1194
+ //tag)
1195
+ this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.SubstitConfigBusiness.data)))
1196
+ }else{
1197
+ this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1198
+ }
1199
+ }
1200
+ }else{
1201
+ //tag
1202
+ // 判断用户类型 民用/非民用
1203
+ if(this.row.f_user_type == '民用'){
1204
+ //tag
1205
+ if(Vue.config.telephone.InstallConfigCivil.data != undefined){
1206
+ //tag
1207
+ //tag)
1208
+ this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.InstallConfigCivil.data)))
1209
+ }else {
1210
+ this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1211
+ }
1212
+ }else{
1213
+ //tag
1214
+ if(Vue.config.telephone.InstallConfigBusiness.data != undefined){
1215
+ //tag
1216
+ //tag)
1217
+ this.repairdetails = Object.assign([], JSON.parse(JSON.stringify(Vue.config.telephone.InstallConfigBusiness.data)))
1218
+ }else{
1219
+ this.$showMessage('网络异常,请重新登陆系统!', ['confirm'])
1220
+ }
1221
+ }
1222
+
1223
+
1224
+ }
1225
+ }
1226
+ // this.repairdetails = [{"f_type": "换表","details": [{"f_project":"换表类型","type": "selector","options": [{"data": "换计费器"},{"data": "换新表"},{"data": "气表清零"}]},{"f_project":"换表原因","type": "selector","options": [{"data": "换新表"}]},{"f_project":"旧表底数","type": "string"}]},{"f_type": "改管","details": [{"f_project":"换表原因","type": "selector","options": [{"data": "换新表"}]},{"f_project":"旧表底数","type": "string"}]}]
1227
+ // 维修项传到维修单中
1228
+ this.getRepairDetails()
1229
+ loadParamGem(this)
1230
+ //tag
1231
+ this.copy()
1232
+ //tag
1233
+ // tbs合并数组
1234
+ if( this.model.serviceacitivity[0].servicerepair.length > 0){
1235
+ for(let i = 0;i < this.model.serviceacitivity[0].servicerepair.length;i++ ){
1236
+ this.tabs.splice(1 + i, 0, {header:this.model.serviceacitivity[0].servicerepair[i].f_type,complete:'repair-details',items:this.model.serviceacitivity[0].servicerepair[i].details,class:'repair-details-class',number:i,details:Object.assign({}, JSON.parse(JSON.stringify(this.model.serviceacitivity[0].servicerepair[i])))})
1237
+ }
1238
+ }
1239
+ //tag
1240
+ this.faultshow.number = this.tabs.length
1241
+ if (this.show || this.repair) {
1242
+ this.faultshow.number = this.tabs.length
1243
+ }
1244
+ },
1245
+ components: {
1246
+ // 'door-service': DoorService,
1247
+ 'repair-info': RepairInfo,
1248
+ 'repair-user-info': RepairUserInfo,
1249
+ 'outlay': Outlay,
1250
+ 'fault-all': FaultAll,
1251
+ 'repair-details':RepairDetails
1252
+ // 'change-meter-page': ChangeMeterPage
1253
+ // 'pipeline': Pipeline,
1254
+ // 'device-service': DeviceService,
1255
+ // 'trouble-removal': TroubleRemoval,
1256
+ // 'cooking-utensils': CookingUtensils,
1257
+ // 'repair-matter-info': RepairMatterInfo,
1258
+ // 'first-gas-check': FirstGasCheck,
1259
+ // 'tel-change-matter': TelChangeMatter/
1260
+ },
1261
+ events: {
1262
+ 'tijiao': function () {
1263
+ // 事件回调内的 `this` 自动绑定到注册它的实例上
1264
+ this.confirm()
1265
+ }
1266
+ }
1267
+ }
1268
+ </script>
1269
+ <style lang="less">
1270
+ @import "../../../../src/bootstrap/less/variables.less";
1271
+ //@import "../../../node_modules/system-clients/src/styles/less/variables.less";
1272
+ .tab-befor-img (@url) {
1273
+ content: '';
1274
+ background-image: url("@{url}");
1275
+ background-size: 20px;
1276
+ display: inline-block;
1277
+ margin-right: 8px;
1278
+ margin-top: 0.3em;
1279
+ height: 1.3em;
1280
+ width: 1.3em;
1281
+ vertical-align: -35%;
1282
+ }
1283
+
1284
+ @media screen and (min-width: 768px) {
1285
+ .android-repair-order > div > ul a {
1286
+ font-size: @font-size-h2;
1287
+ margin: 0.3em 0;
1288
+ }
1289
+ }
1290
+ .repair-details-class{
1291
+ &::before {
1292
+ .tab-befor-img("../../../assets/huneiweixiu1.png");
1293
+ }
1294
+ }
1295
+ .repair-info-class {
1296
+ &::before {
1297
+ .tab-befor-img("../../../assets/baoxiuxinxi1.png");
1298
+ }
1299
+ }
1300
+ /* .change-meter-page-class {
1301
+ &::before {
1302
+ .tab-befor-img("../../assets/baoxiuxinxi1.png");
1303
+ }
1304
+ }*/
1305
+ .repair-user-info-class {
1306
+ &::before {
1307
+ .tab-befor-img("../../../assets/jibenxinxi1.png")
1308
+ }
1309
+ }
1310
+
1311
+ .door-service-class {
1312
+ &::before {
1313
+ .tab-befor-img("../../../assets/huneiweixiu1.png")
1314
+ }
1315
+ }
1316
+
1317
+ .pipeline-class {
1318
+ &::before {
1319
+ .tab-befor-img("../../../assets/guandao1.png")
1320
+ }
1321
+ }
1322
+
1323
+ .device-service-class {
1324
+ &::before {
1325
+ .tab-befor-img("../../../assets/shebeiweixiu1.png")
1326
+ }
1327
+ }
1328
+
1329
+ .trouble-removal-class {
1330
+ &::before {
1331
+ .tab-befor-img("../../../assets/shiguchuli.png")
1332
+ }
1333
+ }
1334
+
1335
+ .cooking-utensils-class {
1336
+ &::before {
1337
+ .tab-befor-img("../../../assets/zaoju1.png")
1338
+ }
1339
+ }
1340
+
1341
+ .outlay-class {
1342
+ &::before {
1343
+ .tab-befor-img("../../../assets/feiyong1.png")
1344
+ }
1345
+ }
1346
+
1347
+ .fault-all-class {
1348
+ &::before {
1349
+ .tab-befor-img("../../../assets/guzhanghuizong1.png")
1350
+ }
1351
+ }
1352
+ .photo-write-class {
1353
+ &::before {
1354
+ .tab-befor-img("../../../assets/zaoju.png")
1355
+ }
1356
+ }
1357
+ .delay-apply-class {
1358
+ &::before {
1359
+ .tab-befor-img("../../../assets/yonghubaoxiu.png")
1360
+ }
1361
+ }
1362
+
1363
+ .repair-back-class {
1364
+ &::before {
1365
+ .tab-befor-img("../../../assets/fanhui.png")
1366
+ }
1367
+ }
1368
+ .butt2 {
1369
+ display: inline;
1370
+ float: right;
1371
+ width: 10px;
1372
+ text-align: center;
1373
+ align-items:center;
1374
+ position: absolute;
1375
+ top:50%;
1376
+
1377
+ left:90%;
1378
+ transform: translate(-50%,-50%);
1379
+ }
1380
+ .linesty{
1381
+ display: inline-block;
1382
+ height:1px;
1383
+ width:100%;
1384
+ background:#d0d0d0;
1385
+ overflow:hidden;
1386
+ vertical-align: middle;
1387
+ }
1388
+ .spanboder{
1389
+ border-bottom:2px solid #499edf;
1390
+ padding-bottom: 8px
1391
+ }
1392
+ .app-botton {
1393
+ position:fixed;
1394
+ background: #87b2dd;
1395
+ right:8px;
1396
+ color: #FFF;
1397
+ padding: 8px;
1398
+ text-align: center;
1399
+ font-size: 1.2em;
1400
+ z-index: 10;
1401
+ opacity:0.5;
1402
+ bottom: 50px;
1403
+ margin-top: -10px;
1404
+ height: 40px;
1405
+ }
1406
+ .android-repair-order > div > ul a {
1407
+ font-size: 12px;
1408
+ color: #333333;
1409
+ padding: 13px 16px;
1410
+ }
1411
+ </style>