apply-clients 3.3.71-4 → 3.3.73

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,1330 +1,876 @@
1
- <template>
2
- <div class="col-sm-12 col-xs-12 p-10">
3
- <accordion one-at-a-time="true">
4
- <panel :header="selectdata.defname" :is-open="true" type="primary">
5
- <app-service-view v-ref:serviceview :data="show_data" v-if="showview"></app-service-view>
6
- </panel>
7
- <panel header="拍照" :is-open="false" type="primary" v-if="selectdata.f_process_id">
8
- <app-take-pic :blobid="selectdata.f_process_id" :defname="selectdata.defname" :isdelete="true" :istakepic="true" :istype="true"></app-take-pic>
9
- </panel>
10
- <panel header="签字" :is-open="false" type="primary" v-if="selectdata.f_process_id">
11
- <app-sign @sign-success="signSuccess" :file-path="selectdata.f_process_id" @sign-clean="signClean"></app-sign>
12
- </panel>
13
- </accordion>
14
- </div>
15
- </template>
16
- <script>
17
- import Vue from 'vue'
18
- import {HttpResetClass} from 'vue-client'
19
- import {isEmpty} from "../../Util";
20
- // Date格式化
21
- Date.prototype.Format = function (fmt) {
22
- var o = {
23
- 'M+': this.getMonth() + 1, // 月份
24
- 'd+': this.getDate(), // 日
25
- 'H+': this.getHours(), // 小时
26
- 'm+': this.getMinutes(), // 分
27
- 's+': this.getSeconds(), // 秒
28
- 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
29
- 'S': this.getMilliseconds() // 毫秒
30
- }
31
- if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
32
- for (var k in o) {
33
- if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
34
- }
35
- return fmt
36
- }
37
- export default {
38
- title: '报建流程业务控制层',
39
- props: ['selectdata'],
40
- data () {
41
- return {
42
- json_datas: null,
43
- data: null,
44
- show_data: null,
45
- showview: false,
46
- config: {}
47
- }
48
- },
49
- ready () {
50
- this.refurbish()
51
- },
52
- methods: {
53
- async refurbish() {
54
- let data = {
55
- workname: this.selectdata.processname
56
- }
57
-
58
- let res = await this.$resetpost(
59
- `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyGetConfigs`,
60
- {data: data},
61
- {resolveMsg: null, rejectMsg: '配置数据获取失败!!!'}
62
- )
63
-
64
- this.json_datas = res.data
65
-
66
- let sum = 0
67
- let jsonData = {}
68
- if (!this.json_datas || !this.json_datas.activitys || this.json_datas.activitys.length === 0) {
69
- this.$showMessage("网络故障,请刷新页面")
70
- return
71
- }
72
- this.json_datas.activitys.forEach(item => {
73
- if (this.selectdata.defname === item.title) {
74
- jsonData = item // 拿到当前节点的json配置信息
75
- sum++ // 节点名一样的个数
76
- }
77
- return this.selectdata.defname === item.title // 拿到当前节点的json配置信息
78
- })
79
-
80
- if (sum === 0) {
81
- this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
82
- return
83
- }
84
- if (sum > 1) {
85
- this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
86
- return
87
- }
88
-
89
- this.selectdata = Object.assign({}, this.selectdata, jsonData)
90
-
91
- // fields 字段填充值
92
- for (const item of this.selectdata.fields) {
93
- if (!item.value) {
94
- item.value = null
95
- }
96
-
97
- if (!item.value && (item.default || item.default === 0) && item.type !== 'datepicker') {
98
- if (item.eval) {
99
- let user = Vue.user
100
- // 将PC用户信息 替换成 APP的
101
- item.value = eval(item.default.replace('this.$login.f', 'user'))
102
- } else {
103
- item.value = item.default
104
- }
105
- }
106
-
107
- if (this.selectdata[item.field]) {
108
- // 将json字符串格式化赋值给value
109
- if (String(this.selectdata[item.field]).startsWith("{")) {
110
- item.value = JSON.parse(this.selectdata[item.field])
111
- } else {
112
- item.value = this.selectdata[item.field]
113
- }
114
- }
115
- if (this.selectdata[item.field] === 0) {
116
- item.value = 0
117
- }
118
-
119
- // datepicker
120
- if (item.type === 'datepicker' && !item.value && item.default) {
121
- item.value = new Date().Format(`${item.format ? item.format : 'yyyy-MM-dd HH:mm:ss'}`)
122
- }
123
-
124
- // 如果配置类型为select,优先从参数列表获取options
125
- if (item.type === 'select' || item.type === 'checkbox') {
126
- if (item.param) {
127
- let temp = this.$appdata.getParam(item.label)
128
-
129
- if (temp && temp.length > 0) {
130
- item.options = temp
131
- }
132
-
133
- if (item.paramLabel) {
134
- temp = this.$appdata.getParam(item.paramLabel)
135
- if (temp && temp.length > 0) {
136
- item.options = temp
137
- }
138
- }
139
- }
140
- console.log("item.ready"+item.ready)
141
- if (item.ready) {
142
- item.options = await this[item.ready]()
143
- }
144
- }
145
-
146
-
147
- if (item.type === 'checkbox') {
148
- if (this.selectdata[item.field]) {
149
- item.value = JSON.parse(this.selectdata[item.field])
150
- } else {
151
- item.value = []
152
- }
153
- }
154
- }
155
-
156
- // 控制组件
157
- if (this.selectdata.components) {
158
- this.selectdata.components.forEach(item => {
159
- if (!item.mark) {
160
- item.mark = 0
161
- }
162
- })
163
- }
164
-
165
- // 初始化onetomany
166
- if (this.selectdata.onetomany) {
167
- for (const item of this.selectdata.onetomany) {
168
- let res = null
169
- if (item.queryEvent) {
170
- res = this[item.queryEvent]()
171
- } else {
172
- let http = new HttpResetClass()
173
- let data = {
174
- tablename: item.tables[0],
175
- condition: `f_process_id='${this.selectdata.f_process_id}'`
176
- }
177
- res = await http.load(
178
- 'POST',
179
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
180
- // `rs/sql/singleTable`,
181
- {data: data},
182
- {resolveMsg: null, rejectMsg: 'onetomany查询失败'}
183
- )
184
- }
185
-
186
- item.rows = res.data
187
-
188
- // 初始化onetomany中的fields
189
- for (const field of item.fields) {
190
- if (!field.value) {
191
- if (field.value !== 0) {
192
- field.value = null
193
- }
194
- }
195
-
196
- if (field.default || field.default === 0) {
197
- field.value = field.default
198
- }
199
-
200
- // datepicker
201
- if (field.type === 'datepicker' && !field.value && field.default) {
202
- field.value = new Date().Format(`${field.format ? field.format : 'yyyy-MM-dd HH:mm:ss'}`)
203
- }
204
-
205
- if (field.type === 'select') {
206
-
207
- if (field.param) {
208
- let temp = this.$appdata.getParam(field.label)
209
-
210
- if (temp && temp.length > 0) {
211
- field.options = temp
212
- }
213
-
214
- if (field.paramLabel) {
215
- temp = this.$appdata.getParam(field.paramLabel)
216
- if (temp && temp.length > 0) {
217
- item.options = temp
218
- }
219
- }
220
- }
221
-
222
- }
223
- }
224
- }
225
- }
226
-
227
- // 初始化 buttons_fields
228
- for (const item of this.selectdata.buttons) {
229
- if (item.button_name === '下发') {
230
- let data = {
231
- source: item.source,
232
- userid: Vue.user.id
233
- // userid: '51953'
234
- }
235
- if (item.sourceMethod) {
236
- data.source = this[item.sourceMethod]()
237
- }
238
- if (!data.source) {
239
- this.$showMessage("请配置获取人员表达式")
240
- return
241
- }
242
- let res = await this.$resetpost(
243
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
244
- // `rs/search`,
245
- {data: data},
246
- {resolveMsg: null, rejectMsg: '下发人员查询失败!!!'}
247
- )
248
-
249
- let options = res.data.map(source => {
250
- return {
251
- "label": source.name,
252
- "value": source.id
253
- }
254
- })
255
-
256
- if (item.button_fields.length !== 1) {
257
- this.$showMessage("下发有且只能有一个字段!!!")
258
- return
259
- }
260
-
261
- item.button_fields[0].options = options
262
- }
263
- if (item.button_fields) {
264
- item.button_fields.forEach(x => {
265
- // 如果配置类型为select,优先从参数列表获取options
266
- if (x.type === 'select') {
267
-
268
- if (x.param) {
269
- let temp = this.$appdata.getParam(x.label)
270
-
271
- if (temp && temp.length > 0) {
272
- x.options = temp
273
- }
274
-
275
- if (x.paramLabel) {
276
- temp = this.$appdata.getParam(x.paramLabel)
277
- if (temp && temp.length > 0) {
278
- x.options = temp
279
- }
280
- }
281
- }
282
-
283
- }
284
- })
285
- }
286
- }
287
-
288
- // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
289
- let temp = JSON.parse(JSON.stringify(this.selectdata))
290
-
291
- this.show_data = temp
292
- this.$nextTick(() => {
293
- this.showview = true
294
- })
295
- },
296
- signClean () {
297
- this.selectdata.f_construction_sign = null
298
- },
299
- signSuccess (fileUrl) {
300
- console.log('==============签字回调==================')
301
- console.log(fileUrl)
302
- this.selectdata.f_construction_sign = fileUrl
303
- },
304
- // 金额转大写
305
- smalltoBIG(n) {
306
- let fraction = ['角', '分'];
307
- let digit = ['', '', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
308
- let unit = [['', '', '亿'], ['', '', '', '']];
309
- let head = n < 0 ? '' : '';
310
- n = Math.abs(n);
311
-
312
- let s = '';
313
-
314
- for (var i = 0; i < fraction.length; i++) {
315
- s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
316
- }
317
- s = s || '整';
318
- n = Math.floor(n);
319
-
320
- for (var i = 0; i < unit[0].length && n > 0; i++) {
321
- let p = '';
322
- for (var j = 0; j < unit[1].length && n > 0; j++) {
323
- p = digit[n % 10] + unit[1][j] + p;
324
- n = Math.floor(n / 10);
325
- }
326
- s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
327
- }
328
- return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整')
329
- },
330
- getLableValue(label) {
331
- for (const item of this.show_data.fields) {
332
- if (item.label === label && item.type !== 'number') {
333
- return item.value || ''
334
- }
335
- if (item.label === label && item.type === 'number') {
336
- return item.value || 0
337
- }
338
- }
339
- },
340
- getLableOptions(label) {
341
- for (const item of this.show_data.fields) {
342
- if (item.label === label) {
343
- return item.options
344
- }
345
- }
346
- },
347
- setLabelValue(label, value) {
348
- for (const item of this.show_data.fields) {
349
- if (item.label === label) {
350
- item.value = value
351
- this.show_data[item.field] = value
352
- }
353
- }
354
- },
355
- setLabelOptions(label, options) {
356
- for (const item of this.show_data.fields) {
357
- if (item.label === label) {
358
- item.options = options
359
- }
360
- }
361
- },
362
- disabledButtons(...buttons) {
363
- for (const item of this.show_data.buttons) {
364
- if (buttons.includes(item.button_name)) {
365
- item.disabled = true
366
- }
367
- }
368
- },
369
- enableButtons(...buttons) {
370
- for (const item of this.show_data.buttons) {
371
- if (buttons.includes(item.button_name)) {
372
- item.disabled = false
373
- }
374
- }
375
- },
376
- showButtons(...buttons) {
377
- for (const item of this.show_data.buttons) {
378
- if (buttons.includes(item.button_name)) {
379
- item.hidden = false
380
- }
381
- }
382
- },
383
- hideButtons(...buttons) {
384
- for (const item of this.show_data.buttons) {
385
- if (buttons.includes(item.button_name)) {
386
- item.hidden = true
387
- }
388
- }
389
- },
390
- async streetChange () {
391
- if (isEmpty(this.show_data.f_street)) {
392
- return
393
- }
394
-
395
- let data = {
396
- tablename: 't_area',
397
- condition: `f_filialeid = '${this.$login.f.orgid}' and f_street = '${this.show_data.f_street}'`
398
- }
399
- let http = new HttpResetClass()
400
- let res = await http.load(
401
- 'POST',
402
- `rs/sql/singleTable`,
403
- {data: data},
404
- {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
405
- )
406
-
407
- this.setLabelOptions('集收单位', res.data.map(item => {
408
- return {
409
- label: item.f_residential_area,
410
- value: item.f_residential_area
411
- }
412
- }))
413
- },
414
- async pcdChange () {
415
- if (isEmpty(this.show_data.f_pcd)) {
416
- return
417
- }
418
-
419
- let data = {
420
- tablename: 't_street',
421
- condition: `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}'`
422
- }
423
- let f_address_type = this.getLableValue('地址类型')
424
-
425
- if (f_address_type === '民用市区') {
426
- data.condition = `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '市区'`
427
- }
428
- if (f_address_type === '民用乡镇') {
429
- data.condition = `f_filialeid = '${this.$login.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '乡镇'`
430
- }
431
-
432
- let http = new HttpResetClass()
433
- let res = await http.load(
434
- 'POST',
435
- `rs/sql/singleTable`,
436
- {data: data},
437
- {resolveMsg: null, rejectMsg: '街道/乡镇查询失败!!!'}
438
- )
439
-
440
- this.setLabelOptions('街道/乡镇', res.data.map(item => {
441
- return {
442
- label: item.f_street,
443
- value: item.f_street
444
- }
445
- }))
446
- },
447
- async addressInitialization () {
448
- //this.$getConfig(this, 'UserAddress')
449
- //获取地址配置文件
450
- try {
451
- let res = await new HttpResetClass().load('get',`${this.$androidUtil.getProxyUrl()}/rs/vue/UserAddress.json`,{resolveMsg: null, rejectMsg: null})
452
- Object.assign(this.config, res.data)
453
- } catch (error) {
454
- // 忽略704,文件找不到异常
455
- if (error.status !== 704) {
456
- throw error
457
- }
458
- }
459
-
460
- let f_address_type = this.show_data.f_address_type
461
-
462
- for (const item of this.show_data.fields) {
463
- if (f_address_type === '民用市区') {
464
- if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
465
- item.hidden = false
466
- item.required = true
467
- }
468
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
469
- item.hidden = false
470
- item.required = false
471
- }
472
- if (item.label === '地址') {
473
- item.readonly = true
474
- }
475
- }
476
- if (f_address_type === '民用乡镇') {
477
- if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
478
- item.hidden = false
479
- item.required = true
480
- }
481
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
482
- item.hidden = false
483
- item.required = false
484
- }
485
- if (item.label === '楼层') {
486
- item.hidden = true
487
- item.required = false
488
- }
489
- if (item.label === '地址') {
490
- item.readonly = true
491
- }
492
- }
493
- if (f_address_type === '特殊地址') {
494
- if (item.label === '区/县' || item.label === '街道/乡镇') {
495
- item.hidden = false
496
- item.required = true
497
- }
498
- if (item.label === '集收单位') {
499
- item.hidden = false
500
- item.required = false
501
- }
502
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层' || item.label === '门牌号') {
503
- item.hidden = true
504
- item.required = false
505
- }
506
- if (item.label === '地址') {
507
- item.readonly = false
508
- }
509
- }
510
-
511
- if (this.show_data.f_apply_source === '线下发起' && item.label === '预约地址') {
512
- item.hidden = true
513
- }
514
- }
515
- },
516
-
517
- async checkDuplicate(index) {
518
- let http = new HttpResetClass()
519
- let data = {
520
- tablename: 't_apply',
521
- condition: `${this.show_data.fields[index].field} = '${this.show_data.fields[index].value}'`
522
- }
523
- let res = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data: data}, {
524
- resolveMsg: null,
525
- rejectMsg: `${this.show_data.fields[index].label}查询失败`
526
- })
527
- if (res.data.length > 0) {
528
- this.show_data.fields[index].value = null
529
- this.$showAlert(`${this.show_data.fields[index].label}已存在!!!`, 'warning', 3000)
530
- }
531
- },
532
- async breakControl () {
533
- if (this.show_data.id) {
534
- let data = {
535
- condition: `u.id = ${this.show_data.id}`,
536
- data: {
537
- id: Vue.user.id,
538
- orgid: Vue.user.orgid
539
- // id: '51953',
540
- // orgid: '10101'
541
- }
542
- }
543
- let res = await this.$resetpost(
544
- `${this.$androidUtil.getProxyUrl()}/rs/sql/checkuser`,
545
- // `rs/sql/checkuser`,
546
- {data: data},
547
- {resolveMsg: null, rejectMsg: '数据更新失败,请手查询更新!!!'}
548
- )
549
-
550
- this.selectdata = res.data[0]
551
- } else {
552
- this.selectdata = servicedata
553
- }
554
-
555
- this.refurbish()
556
- },
557
- // 缴费前置
558
- chargeBefore () {
559
- if (Number(this.show_data.f_due_money) > Number(this.show_data.f_cumulative_payment_money) || Number(this.show_data.f_surplus_money) > 0) {
560
- this.$showAlert('费用未结清!!!', 'warning', 3000)
561
- throw null
562
- }
563
- },
564
- // 施工前置
565
- async constructionBefore () {
566
- let http = new HttpResetClass()
567
- let data = {
568
- condition: `ui.f_process_id = '${this.show_data.f_process_id}' and uf.f_table_state = '待开通'`
569
- }
570
- let res = await http.load(
571
- 'POST',
572
- `${this.$androidUtil.getProxyUrl()}/rs/sql/countApplyUserinfo`,
573
- {data: data},
574
- {
575
- resolveMsg: null,
576
- rejectMsg: '安装明细查询失败!!!'
577
- })
578
- if (res.data[0].num > 0) {
579
- this.$showAlert(`还有${res.data[0].num}户未安装,无法提交`, 'warning', 3000)
580
- throw `还有${res.data[0].num}户未安装,无法提交`
581
- }
582
- },
583
- changePipeBuild () {
584
- if (this.selectdata.f_process_dep === '工程部') {
585
- return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
586
- }
587
- if (this.selectdata.f_process_dep === '运营部') {
588
- return 'this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()'
589
- }
590
- return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
591
- },
592
- async getPrice (f_price_id) {
593
- console.log('=======================')
594
- console.log(f_price_id)
595
-
596
- let data = {
597
- condition: `sp.f_filialeid = '${Vue.user.orgid}'`
598
- }
599
-
600
- if (!isEmpty(f_price_id)) {
601
- data.condition = `sp.f_filialeid = '${Vue.user.orgid}' and sp.f_price_id = ${f_price_id}`
602
- }
603
- let http = new HttpResetClass()
604
- let res = await http.load(
605
- 'POST',
606
- `${this.$androidUtil.getProxyUrl()}/rs/sql/applyGetPrice`,
607
- {data: data},
608
- {resolveMsg: null, rejectMsg: '气价查询失败!!!'}
609
- )
610
-
611
- return res.data.map(item => {
612
- return {
613
- label: item.f_price_name,
614
- value: item
615
- }
616
- })
617
- },
618
- async getDesignerPeople () {
619
- let data = {
620
- source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
621
- userid: Vue.user.id
622
- }
623
-
624
- let http = new HttpResetClass()
625
- let res = await http.load(
626
- 'POST',
627
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
628
- {data: data},
629
- {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
630
- )
631
-
632
- return res.data.map(item => {
633
- return {
634
- label: item.name,
635
- value: item.id
636
- }
637
- })
638
- },
639
- async surveyStopApply () {
640
- console.log('终止报建!!!!!')
641
-
642
- this.show_data.f_stop_reason = '现场勘察不符合报装条件'
643
-
644
- let data = {
645
- data: this.show_data,
646
- user: Vue.user
647
- }
648
-
649
- let res = await this.$resetpost(
650
- `${this.$androidUtil.getProxyUrl()}/rs/logic/surveyStopApply`,
651
- {data: data},
652
- {resolveMsg: null, rejectMsg: '终止报建失败!!!'}
653
- )
654
-
655
- this.$dispatch('loadPage')
656
-
657
- throw '终止报建!!!'
658
- },
659
- async getDevInfo () {
660
- let data = {
661
- tablename: 't_dev_info',
662
- condition: `f_orgid = '${Vue.user.orgid}'`
663
- }
664
- let http = new HttpResetClass()
665
- let res = await http.load(
666
- 'POST',
667
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
668
- {data: data},
669
- {resolveMsg: null, rejectMsg: '公司查询失败!!!'}
670
- )
671
-
672
- return res.data.map(item => {
673
- return {
674
- label: item.f_dev_name,
675
- value: item.f_dev_name
676
- }
677
- })
678
- },
679
- async getDesignerPeople () {
680
- let data = {
681
- source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
682
- userid: Vue.user.id
683
- }
684
-
685
- let http = new HttpResetClass()
686
- let res = await http.load(
687
- 'POST',
688
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
689
- {data: data},
690
- {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
691
- )
692
-
693
- return res.data.map(item => {
694
- return {
695
- label: item.name,
696
- value: item.id
697
- }
698
- })
699
- },
700
- // 获取片区
701
- async getSliceArea () {
702
- let data = {
703
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
704
- userid: Vue.user.id
705
- }
706
-
707
- let http = new HttpResetClass()
708
- let res = await http.load(
709
- 'POST',
710
- `${this.$androidUtil.getProxyUrl()}/rs/search`,
711
- {data: data},
712
- {resolveMsg: null, rejectMsg: '片区查询失败!!!'}
713
- )
714
-
715
- return res.data.map(item => {
716
- return {
717
- label: item.name,
718
- value: item.name
719
- }
720
- })
721
- },
722
- // 获取区县
723
- async getPcd () {
724
- let data = {
725
- tablename: 't_pcd',
726
- condition: `f_filialeid = '${Vue.user.orgid}'`
727
- }
728
- let http = new HttpResetClass()
729
- let res = await http.load(
730
- 'POST',
731
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
732
- {data: data},
733
- {resolveMsg: null, rejectMsg: '区县查询失败!!!'}
734
- )
735
-
736
- return res.data.map(item => {
737
- return {
738
- label: item.f_pcd,
739
- value: item.f_pcd
740
- }
741
- })
742
- }
743
-
744
- },
745
- events: {
746
- 'complyInstallation' (index) {
747
- if (this.show_data.f_is_have === '否') {
748
- this.hideButtons('提交', '出图', '缴费')
749
- this.showButtons('终止')
750
- }
751
- if (this.show_data.f_is_have === '是') {
752
- this.hideButtons('终止')
753
- this.showButtons('提交', '出图', '缴费')
754
- }
755
- },
756
- async 'igniteDispatchReadyEvent' () {
757
- let data = {
758
- tablename: 'activityins',
759
- condition: `processid = '${this.show_data.f_process_id}' and defname = '工程施工' and state = '结束'`
760
- }
761
- let http = new HttpResetClass()
762
- let res = await http.load(
763
- 'POST',
764
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
765
- {data: data},
766
- {resolveMsg: null, rejectMsg: '查询失败!!!'}
767
- )
768
- if (res.data.length <= 0) {
769
- console.log('+++++++++++++++++++++++++++++')
770
- console.log('没有施工,不能退回')
771
- this.hideButtons('退回')
772
- }
773
- },
774
- 'breakControl' () {
775
- this.breakControl()
776
- },
777
- // 检查重复
778
- 'checkRepeat' (index) {
779
- this.checkDuplicate(index)
780
- },
781
- 'buildReadyEvent' () {
782
- this.setLabelValue('施工单位', Vue.user.name)
783
- this.setLabelValue('施工安装时间', new Date().Format('yyyy-MM-dd HH:mm:ss'))
784
- },
785
- // 选择材料
786
- async materialNameChenge (index, fieldIndex) {
787
- let material = this.show_data.onetomany[index].fields[fieldIndex].value
788
-
789
- this.show_data.onetomany[index].fields.forEach(item => {
790
- if (material[item.field]) {
791
- item.value = material[item.field]
792
- }
793
- })
794
- },
795
- // 打开模态框获取材料
796
- async 'getMaterialName' (index) {
797
- let data = {
798
- condition: `1=1`
799
- }
800
- let http = new HttpResetClass()
801
- let res = await http.load(
802
- 'POST',
803
- `${this.$androidUtil.getProxyUrl()}/rs/sql/getStockMaterial`,
804
- {data: data},
805
- {resolveMsg: null, rejectMsg: '材料查询失败!!!'}
806
- )
807
-
808
- this.show_data.onetomany[index].fields.forEach(field => {
809
- if (field.label === '选择材料') {
810
- field.options = res.data.map(item => {
811
- return {
812
- 'label': `${item.f_material_name}--${item.f_material_style}--${item.f_material_unit}`,
813
- 'value': item
814
- }
815
- })
816
- }
817
- })
818
- },
819
- // 选择气价
820
- 'priceChange' (index) {
821
- if (isEmpty(this.show_data.stairPrice)) {
822
- return
823
- }
824
-
825
- let stairPrice = this.getLableValue('气价名称')
826
-
827
- this.setLabelValue('气价类型', stairPrice.f_price_type)
828
- this.setLabelValue('用气性质', stairPrice.f_gasproperties)
829
- this.setLabelValue('价格', stairPrice.f_price)
830
- this.setLabelValue('客户类型', stairPrice.f_user_type)
831
-
832
- this.show_data.f_price_id = stairPrice.f_price_id
833
- this.show_data.f_price_name = stairPrice.f_price_name
834
- },
835
- // 是否购买保险
836
- isInsureChange (index) {
837
- let f_is_insure = this.getLableValue('是否购买保险')
838
- for (const item of this.show_data.fields) {
839
- if (f_is_insure === '') {
840
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
841
- item.hidden = false
842
- item.required = true
843
- }
844
- if (item.label === '保险备注') {
845
- item.hidden = false
846
- }
847
- } else {
848
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
849
- item.hidden = true
850
- item.required = false
851
- }
852
- }
853
- }
854
- },
855
- // 通气点火初始化
856
- async 'gasReadyEvent' () {
857
- console.log('----通气点火初始化----')
858
- if (!isEmpty(this.show_data.f_price_id)) {
859
- let priceList = await this.getPrice(this.show_data.f_price_id)
860
- this.setLabelValue('气价名称', priceList[0].value)
861
- }
862
-
863
- let data = {
864
- tablename: 't_userfees',
865
- condition: `f_orgid = '${Vue.user.orgid}' and f_userinfo_id = '${this.show_data.f_userinfo_id}' and f_state = '待执行'`
866
- }
867
-
868
- console.log('---------查询是否有待执行保险-----------')
869
- let http = new HttpResetClass()
870
- let res = await http.load(
871
- 'POST',
872
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
873
- {data: data},
874
- {resolveMsg: null, rejectMsg: '保险查询失败!!!'}
875
- )
876
- if (res.data.length > 0) {
877
- console.log('----------具有待执行保险------------')
878
- this.setLabelValue('待执行保险', '是')
879
- for (const item of this.show_data.fields) {
880
- if (item.label === '保费开始日期' || item.label === '是否购买保险' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
881
- item.hidden = true
882
- item.required = false
883
- item.value = null
884
- }
885
- }
886
- console.log('----------具有待执行保险------------')
887
- } else {
888
- console.log('----------不有待执行保险------------')
889
- this.setLabelValue('待执行保险', '否')
890
- for (const item of this.show_data.fields) {
891
- if (item.label === '是否购买保险' || item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
892
- item.hidden = false
893
- item.required = true
894
- }
895
- }
896
- console.log('----------具有待执行保险------------')
897
- }
898
-
899
- // 初始化显示内容
900
- let f_is_insure = this.getLableValue('是否购买保险')
901
- for (const item of this.show_data.fields) {
902
- if (f_is_insure === '是') {
903
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
904
- item.hidden = false
905
- item.required = true
906
- }
907
- if (item.label === '保险备注') {
908
- item.hidden = false
909
- }
910
- // 本期保费到期时间默认一年
911
- if (isEmpty(this.selectdata.f_ins_expiration_date)) {
912
- let f_ins_expiration_date = new Date().setFullYear(new Date().getFullYear() + 1)
913
- this.setLabelValue("保费结束日期", new Date(f_ins_expiration_date).Format('yyyy-MM-dd'))
914
- }
915
- }
916
- if (f_is_insure === '否') {
917
- if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
918
- item.hidden = true
919
- item.required = false
920
- }
921
- }
922
- }
923
- },
924
- // 合同金额失去焦点
925
- async 'contractMoneyChange' (index) {
926
- let data = {
927
- operator: '+',
928
- num1: this.show_data.f_contract_money || 0,
929
- num2: this.getLableValue('追加金额') || 0
930
- }
931
- let res = await this.$resetpost(
932
- `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
933
- {data: data},
934
- {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
935
- )
936
-
937
- this.setLabelValue('应交金额', res.data)
938
- },
939
- // ===========================================
940
- async 'button'() {
941
- if (this.show_data.button.before) {
942
- await this[this.show_data.button.before]()
943
- }
944
- // 点击重置按钮就重置数据
945
- if (this.show_data.button.button_name === '重置') {
946
- this.$dispatch('breakControl', this.selectdata)
947
- return
948
- }
949
-
950
- this.show_data.user = Vue.user
951
- // this.show_data.user = {"f_show_department_name":"","parentname":"市场部","functions":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"客服系统","icon":"/images/lefticon/档案管理.png","hasright":false,"resourcetype":"function","parentid":"27","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"city-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"231","name":"街道管理","templatename":"functionedit","id":"230","position":"1","fullname":"资源管理.功能模块.客服系统.档案管理.街道管理","fullid":"3.21.27.212.230","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"area-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"219","name":"小区管理","templatename":"functionedit","id":"218","position":"3","fullname":"资源管理.功能模块.客服系统.档案管理.小区管理","fullid":"3.21.27.212.218","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"address-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"33664","name":"地址管理","templatename":"functionedit","id":"33663","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.地址管理","fullid":"3.21.27.212.33663","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"file-user-files","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"237","name":"用户档案","templatename":"functionedit","id":"236","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.用户档案","fullid":"3.21.27.212.236","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"档案管理","link":"file-user-files-new","hasright":true,"resourcetype":"function","parentid":"212","f_parentname":"档案管理","children":[],"selfid":"39450","name":"预备户管理","templatename":"functionedit","id":"39449","position":"6","fullname":"资源管理.功能模块.客服系统.档案管理.预备户管理","fullid":"3.21.27.212.39449","tablename":"t_function"}],"selfid":"213","name":"档案管理","templatename":"functionedit","id":"212","position":"2","fullname":"资源管理.功能模块.客服系统.档案管理","fullid":"3.21.27.212","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"客服系统","icon":"/images/lefticon/报建系统.png","hasright":true,"resourcetype":"function","parentid":"27","f_parentname":"客服系统","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"install-function","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34680","name":"功能业务","templatename":"functionedit","id":"34679","position":"1","fullname":"资源管理.功能模块.客服系统.报建业务.功能业务","fullid":"3.21.27.34673.34679","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"exploration-user","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34686","name":"流程业务","templatename":"functionedit","id":"34685","position":"2","fullname":"资源管理.功能模块.客服系统.报建业务.流程业务","fullid":"3.21.27.34673.34685","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"supervisory-control","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34692","name":"流程监控","templatename":"functionedit","id":"34691","position":"3","fullname":"资源管理.功能模块.客服系统.报建业务.流程监控","fullid":"3.21.27.34673.34691","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"apply-charge-search","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34698","name":"收费明细","templatename":"functionedit","id":"34697","position":"4","fullname":"资源管理.功能模块.客服系统.报建业务.收费明细","fullid":"3.21.27.34673.34697","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"order-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34704","name":"预约申请","templatename":"functionedit","id":"34703","position":"5","fullname":"资源管理.功能模块.客服系统.报建业务.预约申请","fullid":"3.21.27.34673.34703","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"stop-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34710","name":"终止报建","templatename":"functionedit","id":"34709","position":"6","fullname":"资源管理.功能模块.客服系统.报建业务.终止报建","fullid":"3.21.27.34673.34709","tablename":"t_function"}],"selfid":"34674","name":"报建业务","templatename":"functionedit","id":"34673","position":"12","fullname":"资源管理.功能模块.客服系统.报建业务","fullid":"3.21.27.34673","tablename":"t_function"}],"qrcode":"/rs/user/getQRcode?QRCODE=12b2-1631604191812-03447","rolesnames":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","roles":"51383,51485,51707,51767,51833,51905,52289","f_sex":"男","f_icon":"tree_user","fullnames":"河南亿星集团实业有限公司.周口市天然气有限公司.市场部.报建测试","dir":"ZhouKou","userid":"12b2-1631604191812-03447","accesstime":"1632214307117","parentid":"46545","f_show_rolestr":"","fullids":"30463.10101.46545.51953.","number":"10101","f_dep_id":"1010101201","f_idnumber":null,"selfid":"51954","templatename":"useredit","logindate":"2021-09-14 18:46:54","id":"51953","state":"在职","tablename":"t_user","deptype":"部门","depids":"46545","loginid":"15","imgid":null,"f_user_telephone":null,"rolestr":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","deps":"市场部","loginnum":"0","f_age":null,"resourcetype":"user","orgid":"10101","f_department_name":"周口市场部","ename":"bjcs","deleted":"false","entitytype":"t_user","f_description":null,"loginip":"192.168.66.37","name":"报建测试","position":"1","orgs":"周口市天然气有限公司","haslicense":true,"f_role_name":"营业厅报装 市场部报装 设计部报装 工程部报装 运营部报装 财务部报装 角色监控 ","f_allArea":[],"f_gasman":[{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294978548","rolestr":"抄表员","resourcetype":"user","userid":"100814","parentid":"46581","f_department_name":"周口客服部","ename":"100814","password":"1","deleted":"false","entitytype":"t_user","selfid":"100814","name":"高雪荣","templatename":"useredit","id":"100814","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"qrcode":"/rs/user/getQRcode?QRCODE=004","roles":"51959","f_sex":"男","f_icon":"tree_user","userid":"004","accesstime":"1631765198067","parentid":"46581","password":"1","selfid":"59044","templatename":"useredit","id":"59043","state":"在职","tablename":"t_user","loginid":"15","rolestr":"抄表员","resourcetype":"user","f_department_name":"周口客服部","ename":"cbcs","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","name":"抄表测试","position":"23","haslicense":"true","f_role_name":"抄表员 "},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602709","rolestr":"抄表员","resourcetype":"user","userid":"100462","parentid":"46581","f_department_name":"周口客服部","ename":"100462","password":"1","deleted":"false","entitytype":"t_user","selfid":"100462","name":"刘林静","templatename":"useredit","id":"100462","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409830","rolestr":"抄表员","resourcetype":"user","userid":"100528","parentid":"46581","f_department_name":"周口客服部","ename":"100528","password":"1","deleted":"false","entitytype":"t_user","selfid":"100528","name":"秦春梅","templatename":"useredit","id":"100528","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13243376616","rolestr":"抄表员","resourcetype":"user","userid":"102935","parentid":"46581","f_department_name":"周口客服部","ename":"102935","password":"1","deleted":"false","entitytype":"t_user","selfid":"102935","name":"石磊","templatename":"useredit","id":"102935","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602706","rolestr":"抄表员","resourcetype":"user","userid":"100818","parentid":"46581","f_department_name":"周口客服部","ename":"100818","password":"1","deleted":"false","entitytype":"t_user","selfid":"100818","name":"白静","templatename":"useredit","id":"100818","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294991670","rolestr":"抄表员","resourcetype":"user","userid":"102934","parentid":"46581","f_department_name":"周口客服部","ename":"102934","password":"1","deleted":"false","entitytype":"t_user","selfid":"102934","name":"郭新胜","templatename":"useredit","id":"102934","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15036438918","rolestr":"抄表员","resourcetype":"user","userid":"103392","accesstime":"1631757950369","parentid":"46581","f_department_name":"周口客服部","ename":"103392","password":"1","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","selfid":"103392","name":"牛永胜","templatename":"useredit","id":"103392","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13592232789","rolestr":"抄表员","resourcetype":"user","userid":"100337","parentid":"46581","f_department_name":"周口客服部","ename":"100337","password":"1","deleted":"false","entitytype":"t_user","selfid":"100337","name":"王雪丽","templatename":"useredit","id":"100337","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"17796528119","rolestr":"抄表员","resourcetype":"user","userid":"101021","parentid":"46581","f_department_name":"周口客服部","ename":"101021","password":"1","deleted":"false","entitytype":"t_user","selfid":"101021","name":"张书荣","templatename":"useredit","id":"101021","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409832","rolestr":"抄表员","resourcetype":"user","userid":"100330","parentid":"46581","f_department_name":"周口客服部","ename":"100330","password":"1","deleted":"false","entitytype":"t_user","selfid":"100330","name":"武文平","templatename":"useredit","id":"100330","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13839441227","rolestr":"抄表员","resourcetype":"user","userid":"100871","parentid":"46581","f_department_name":"周口客服部","ename":"100871","password":"1","deleted":"false","entitytype":"t_user","selfid":"100871","name":"李明磊","templatename":"useredit","id":"100871","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"}],"lics":[]}
952
- this.show_data.start_activity = this.json_datas.start_activity
953
- this.show_data.xmlfilename = this.json_datas.workflow_xmlfilename
954
-
955
- let res = await this.$resetpost(
956
- // `rs/logic/ApplyProductService`,
957
- `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyProductService`,
958
- {data: this.show_data},
959
- {resolveMsg: null, rejectMsg: '数据保存失败'}
960
- )
961
-
962
- if (this.show_data.button.after) {
963
- this[this.show_data.button.after]()
964
- }
965
- // 返回上层
966
- this.$dispatch('confirm')
967
- },
968
- // 失去焦点出触发事件
969
- 'onchange' (index) {
970
- if (this.show_data.defname === '报装申请') {
971
- if (
972
- this.show_data.fields[index].label === '区/县' ||
973
- this.show_data.fields[index].label === '街道/乡镇' ||
974
- this.show_data.fields[index].label === '集收单位' ||
975
- this.show_data.fields[index].label === '楼号/组' ||
976
- this.show_data.fields[index].label === '单元/排' ||
977
- this.show_data.fields[index].label === '楼层' ||
978
- this.show_data.fields[index].label === '门牌号'
979
- ) {
980
-
981
- let f_pcd = this.getLableValue('区/县') || ''
982
- let f_street = this.getLableValue('街道/乡镇') || ''
983
- let f_residential_area = this.getLableValue('集收单位') || ''
984
- let f_building = this.getLableValue('楼号/组') || ''
985
- let f_building_suffix = f_building ? this.config.f_building_suffix : ''
986
- let f_unit = this.getLableValue('单元/排') || ''
987
- let f_unit_suffix = f_unit ? this.config.f_unit_suffix : ''
988
- let f_floor = this.getLableValue('楼层') || ''
989
- let f_floor_suffix = f_floor ? this.config.f_floor_suffix : ''
990
- let f_room = this.getLableValue('门牌号') || ''
991
- let f_room_suffix = f_room ? this.config.f_room_suffix : ''
992
-
993
- let f_address = null
994
-
995
- let f_address_type = this.show_data.f_address_type
996
- f_address = f_pcd + f_street + f_residential_area + f_building + f_building_suffix + f_unit + f_unit_suffix + f_floor + f_floor_suffix + f_room + f_room_suffix
997
- /*if (f_address_type === '民用城区') {
998
- f_address = f_street + f_residential_area + f_building + f_building_suffix + f_unit + f_unit_suffix + f_floor + f_floor_suffix + f_room + f_room_suffix
999
- }
1000
- if (f_address_type === '民用农村') {
1001
- f_address = f_building + f_unit + f_floor + f_room
1002
- }
1003
- if (f_address_type === '特殊城区') {
1004
- f_address = f_street + f_residential_area
1005
- }*/
1006
- this.setLabelValue("地址", f_address)
1007
- }
1008
- }
1009
- },
1010
- async getDesignerPeople () {
1011
- let data = {
1012
- source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
1013
- userid: this.$login.f.id
1014
- }
1015
-
1016
- let http = new HttpResetClass()
1017
- let res = await http.load(
1018
- 'POST',
1019
- `rs/search`,
1020
- {data: data},
1021
- {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
1022
- )
1023
-
1024
- return res.data.map(item => {
1025
- return {
1026
- label: item.name,
1027
- value: item.id
1028
- }
1029
- })
1030
- },
1031
- // 申请节点初始化
1032
- 'applyReadyEvent' () {
1033
- this.addressInitialization()
1034
-
1035
- this.pcdChange()
1036
- this.streetChange()
1037
- },
1038
- // 合同金额失去焦点
1039
- async 'contractMoneyChange' (index) {
1040
- let data = {
1041
- operator: '+',
1042
- num1: this.show_data.f_contract_money || 0,
1043
- num2: this.getLableValue('追加金额') || 0
1044
- }
1045
- let res = await this.$resetpost(
1046
- `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
1047
- {data: data},
1048
- {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
1049
- )
1050
-
1051
- this.setLabelValue('应交金额', res.data)
1052
- },
1053
- // 街道失去焦点
1054
- async 'streetChange' (index) {
1055
- if (isEmpty(this.show_data.f_street)) {
1056
- return
1057
- }
1058
-
1059
- this.setLabelValue('集收单位', null)
1060
-
1061
- let data = {
1062
- tablename: 't_area',
1063
- condition: `f_filialeid = '${Vue.user.orgid}' and f_street = '${this.show_data.f_street}'`
1064
- }
1065
- let http = new HttpResetClass()
1066
- let res = await http.load(
1067
- 'POST',
1068
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1069
- {data: data},
1070
- {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
1071
- )
1072
-
1073
- this.setLabelOptions('集收单位', res.data.map(item => {
1074
- return {
1075
- label: item.f_residential_area,
1076
- value: item.f_residential_area
1077
- }
1078
- }))
1079
- },
1080
- // 选择报建项目
1081
- 'selectApply' (row) {
1082
- this.setLabelValue('工程名称', row.f_entry_name)
1083
- this.setLabelValue('工程编号', row.f_apply_num)
1084
- this.setLabelValue('报建类型', row.f_apply_type)
1085
- this.setLabelValue('用户名称', row.f_user_name)
1086
- this.setLabelValue('用户电话', row.f_phone)
1087
- this.setLabelValue('证件类型', row.f_credentials)
1088
- this.setLabelValue('证件号码', row.f_idnumber)
1089
- this.setLabelValue('地址', row.f_address)
1090
- this.setLabelValue('累计缴费金额', row.f_cumulative_payment_money)
1091
-
1092
- this.show_data.parentApply = JSON.parse(JSON.stringify(row))
1093
-
1094
- delete row.id
1095
- delete row.actid
1096
- delete row.defid
1097
- delete row.defname
1098
- delete row.version
1099
- delete row.f_apply_num
1100
- delete row.f_sub_state
1101
- delete row.f_apply_type
1102
- delete row.f_process_id
1103
-
1104
- this.show_data = Object.assign({}, this.show_data, row)
1105
-
1106
- this.show_data.f_parent_process_id = this.show_data.parentApply.f_process_id
1107
- },
1108
- // 区县失去焦点
1109
- async 'pcdChange' (index) {
1110
- if (isEmpty(this.show_data.f_pcd)) {
1111
- return
1112
- }
1113
-
1114
- this.setLabelValue('街道/乡镇', null)
1115
- this.setLabelValue('集收单位', null)
1116
-
1117
-
1118
-
1119
- let data = {
1120
- tablename: 't_street',
1121
- condition: `f_filialeid = '${Vue.user.orgid}' and f_pcd = '${this.show_data.f_pcd}'`
1122
- }
1123
- let f_address_type = this.getLableValue('地址类型')
1124
-
1125
- if (f_address_type === '民用市区') {
1126
- data.condition = `f_filialeid = '${Vue.user.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '市区'`
1127
- }
1128
- if (f_address_type === '民用乡镇') {
1129
- data.condition = `f_filialeid = '${Vue.user.f.orgid}' and f_pcd = '${this.show_data.f_pcd}' and f_iscity = '乡镇'`
1130
- }
1131
-
1132
- let http = new HttpResetClass()
1133
- let res = await http.load(
1134
- 'POST',
1135
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1136
- {data: data},
1137
- {resolveMsg: null, rejectMsg: '街道/乡镇查询失败!!!'}
1138
- )
1139
-
1140
- this.setLabelOptions('街道/乡镇', res.data.map(item => {
1141
- return {
1142
- label: item.f_street,
1143
- value: item.f_street
1144
- }
1145
- }))
1146
- },
1147
- // 选择用户档案信息
1148
- 'selectUserinfo' (row) {
1149
- this.setLabelValue('用户编号', row.f_userinfo_code)
1150
- this.setLabelValue('用户名称', row.f_user_name)
1151
- this.setLabelValue('用户电话', row.f_user_phone)
1152
- this.setLabelValue('证件类型', row.f_credentials)
1153
- this.setLabelValue('证件号码', row.f_idnumber)
1154
- this.setLabelValue('地址', row.f_address)
1155
-
1156
- this.show_data.f_userinfo_id = row.f_userinfo_id
1157
- this.show_data.f_userinfo_code = row.f_userinfo_code
1158
- },
1159
- // 地址类型失去焦点
1160
- 'addressTypeChange' (index) {
1161
- this.setLabelValue('街道/乡镇', null)
1162
- this.setLabelValue('集收单位', null)
1163
- let f_address_type = this.show_data.fields[index].value
1164
- for (const item of this.show_data.fields) {
1165
- if (f_address_type === '民用市区') {
1166
- if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
1167
- item.hidden = false
1168
- item.required = true
1169
- item.value = null
1170
- }
1171
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
1172
- item.hidden = false
1173
- item.required = false
1174
- item.value = null
1175
- }
1176
- if (item.label === '地址') {
1177
- item.readonly = true
1178
- item.value = null
1179
- }
1180
- }
1181
- if (f_address_type === '民用乡镇') {
1182
- if (item.label === '区/县' || item.label === '街道/乡镇' || item.label === '集收单位' || item.label === '门牌号') {
1183
- item.hidden = false
1184
- item.required = true
1185
- item.value = null
1186
- }
1187
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层') {
1188
- item.hidden = false
1189
- item.required = false
1190
- item.value = null
1191
- }
1192
- if (item.label === '楼层') {
1193
- item.hidden = true
1194
- item.required = false
1195
- item.value = null
1196
- }
1197
- if (item.label === '地址') {
1198
- item.readonly = true
1199
- item.value = null
1200
- }
1201
- }
1202
- if (f_address_type === '特殊地址') {
1203
- if (item.label === '区/县' || item.label === '街道/乡镇') {
1204
- item.hidden = false
1205
- item.required = true
1206
- item.value = null
1207
- }
1208
- if (item.label === '集收单位') {
1209
- item.hidden = false
1210
- item.required = false
1211
- item.value = null
1212
- }
1213
- if (item.label === '楼号/组' || item.label === '单元/排' || item.label === '楼层' || item.label === '门牌号') {
1214
- item.hidden = true
1215
- item.required = false
1216
- item.value = null
1217
- }
1218
- if (item.label === '地址') {
1219
- item.readonly = false
1220
- item.value = null
1221
- }
1222
- }
1223
- }
1224
- },
1225
- // 搜索小区
1226
- async 'searchArea' (area, index) {
1227
- let data = {
1228
- tablename: 't_area',
1229
- condition: `f_filialeid = '${Vue.user.orgid}' and f_street = '${this.show_data.f_street}' and f_residential_area like '%${area}%'`
1230
- }
1231
- let http = new HttpResetClass()
1232
- let res = await http.load(
1233
- 'POST',
1234
- `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
1235
- {data: data},
1236
- {resolveMsg: null, rejectMsg: '集收单位查询失败!!!'}
1237
- )
1238
-
1239
- if (res.data.length === 0) {
1240
- return
1241
- }
1242
-
1243
- this.setLabelOptions('集收单位', res.data.map(item => {
1244
- return {
1245
- label: item.f_residential_area,
1246
- value: item.f_residential_area
1247
- }
1248
- }))
1249
- },
1250
- 'onblur' (index) {},
1251
- 'oninput' (index) {},
1252
- 'initializtionView' () {},
1253
- async 'onchangeModal' (index, fieldIndex) {
1254
- },
1255
- async 'onblurModal' (index, fieldIndex) {
1256
-
1257
- },
1258
- async 'oninputModal' (index, fieldIndex) {
1259
-
1260
- },
1261
- async 'onetomanydelete' (index, rowIndex) {
1262
-
1263
- let http = new HttpResetClass()
1264
-
1265
- let res = await http.load(
1266
- 'DELETE',
1267
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}/${this.show_data.onetomany[index].rows[rowIndex].id}`,
1268
- null,
1269
- {resolveMsg: null, rejectMsg: '删除失败!!!'}
1270
- )
1271
- res = await this.$resetpost(
1272
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
1273
- this.show_data
1274
- )
1275
- this.breakControl()
1276
- },
1277
- async 'onetomanyupdate' (index, rowIndex) {
1278
- let data = this.show_data.onetomany[index].rows[rowIndex]
1279
-
1280
- this.show_data.onetomany[index].fields.forEach(item => {
1281
- data[item.field] = item.value
1282
- })
1283
- let res = await this.$resetpost(
1284
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
1285
- data
1286
- )
1287
- res = await this.$resetpost(
1288
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
1289
- this.show_data
1290
- )
1291
- this.breakControl()
1292
- },
1293
- async 'onetomanyadd' (index) {
1294
- let data = {
1295
- f_process_id : this.show_data.f_process_id,
1296
- f_operator_id: Vue.user.id,
1297
- f_operator: Vue.user.name,
1298
- f_operation_date: new Date().Format('yyyy-MM-dd HH:mm:ss'),
1299
- f_orgid: Vue.user.orgid,
1300
- f_orgname: Vue.user.orgs
1301
- }
1302
- this.show_data.onetomany[index].fields.forEach(item => {
1303
- data[item.field] = item.value
1304
- })
1305
- let res = await this.$resetpost(
1306
- `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
1307
- data
1308
- )
1309
- res = await this.$resetpost(
1310
- `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
1311
- this.show_data
1312
- )
1313
- this.breakControl()
1314
- },
1315
- 'onbutchange' (index) {
1316
-
1317
- },
1318
- 'onbutblur' (index) {
1319
-
1320
- },
1321
- 'onbutinput' (index) {
1322
-
1323
- }
1324
- },
1325
- watch: {
1326
- }
1327
- }
1328
- </script>
1329
- <style scoped>
1330
- </style>
1
+ <template>
2
+ <div class="col-sm-12 col-xs-12 p-10">
3
+ <accordion one-at-a-time="true">
4
+ <panel :header="selectdata.defname" :is-open="true" type="primary">
5
+ <app-service-view v-ref:serviceview :data="show_data" v-if="showview"></app-service-view>
6
+ </panel>
7
+ <panel header="拍照" :is-open="false" type="primary" v-if="selectdata.f_process_id">
8
+ <app-take-pic :blobid="selectdata.f_process_id" :defname="selectdata.defname" :isdelete="true" :istakepic="true" :istype="true"></app-take-pic>
9
+ </panel>
10
+ <panel header="签字" :is-open="false" type="primary" v-if="selectdata.f_process_id">
11
+ <app-sign @sign-success="signSuccess" :file-path="selectdata.f_process_id" @sign-clean="signClean"></app-sign>
12
+ </panel>
13
+ </accordion>
14
+ </div>
15
+ </template>
16
+ <script>
17
+ import Vue from 'vue'
18
+ import {HttpResetClass} from 'vue-client'
19
+ import {isEmpty} from "../../Util";
20
+ // Date格式化
21
+ Date.prototype.Format = function (fmt) {
22
+ var o = {
23
+ 'M+': this.getMonth() + 1, // 月份
24
+ 'd+': this.getDate(), // 日
25
+ 'H+': this.getHours(), // 小时
26
+ 'm+': this.getMinutes(), // 分
27
+ 's+': this.getSeconds(), // 秒
28
+ 'q+': Math.floor((this.getMonth() + 3) / 3), // 季度
29
+ 'S': this.getMilliseconds() // 毫秒
30
+ }
31
+ if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
32
+ for (var k in o) {
33
+ if (new RegExp('(' + k + ')').test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
34
+ }
35
+ return fmt
36
+ }
37
+ export default {
38
+ title: '报建流程业务控制层',
39
+ props: ['selectdata'],
40
+ data () {
41
+ return {
42
+ json_datas: null,
43
+ data: null,
44
+ show_data: null,
45
+ showview: false,
46
+ config: {}
47
+ }
48
+ },
49
+ ready () {
50
+ this.refurbish()
51
+ },
52
+ methods: {
53
+ async refurbish() {
54
+ let data = {
55
+ workname: this.selectdata.processname
56
+ }
57
+
58
+ let res = await this.$resetpost(
59
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyGetConfigs`,
60
+ {data: data},
61
+ {resolveMsg: null, rejectMsg: '配置数据获取失败!!!'}
62
+ )
63
+
64
+ this.json_datas = res.data
65
+ // this.json_datas = {"start_activity":"报装申请","workflow_xmlfilename":"散户报建流程","activitys":[{"title":"报装申请","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":false,"disabled":false,"required":true},{"label":"报建类型","type":"select","field":"f_apply_type","readonly":true,"required":true,"disabled":true,"placeholder":"请选择","param":true,"options":[]},{"label":"用户名称","type":"input","field":"f_user_name","readonly":false,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":false,"disabled":false,"required":true},{"label":"证件类型","type":"select","field":"f_credentials","readonly":false,"required":true,"disabled":false,"placeholder":"请选择","param":true,"options":[{"label":"身份证","value":"身份证"},{"label":"营业执照","value":"营业执照"}]},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":false,"required":true,"disabled":false},{"label":"片区","type":"select","field":"f_slice_area","readonly":false,"required":true,"disabled":false,"ready":"getSliceArea","options":[]},{"label":"地址类型","type":"select","field":"f_address_type","readonly":false,"required":true,"disabled":false,"onchange":"addressTypeChange","options":[{"label":"民用城区","value":"民用城区"},{"label":"民用农村","value":"民用农村"},{"label":"特殊城区","value":"特殊城区"},{"label":"特殊农村","value":"特殊农村"}]},{"label":"区/县","type":"select","field":"f_pcd","hidden":true,"readonly":false,"required":true,"disabled":false,"ready":"getPcd","onchange":"pcdChange","options":[]},{"label":"街道","type":"select","field":"f_street","hidden":true,"readonly":false,"required":true,"disabled":false,"onchange":"streetChange","options":[]},{"label":"小区","type":"select","field":"f_residential_area","hidden":true,"readonly":false,"required":true,"disabled":false,"options":[]},{"label":"楼号(乡/镇)","type":"input","field":"f_building","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"单元(村)","type":"input","field":"f_unit","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"楼层(组)","type":"input","field":"f_floor","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"门牌号(号)","type":"input","field":"f_room","hidden":true,"readonly":false,"required":false,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":false,"required":true,"disabled":false},{"label":"预约地址","type":"textarea","field":"f_order_address","rows":1,"readonly":true,"required":false,"disabled":false},{"label":"备注","type":"textarea","field":"f_apply_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"勘察","disabled":true},{"button_name":"合同","disabled":true}],"readyEvent":"applyReadyEvent"},{"title":"勘察派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($市场部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"现场勘察","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"勘查结果","type":"textarea","field":"f_prospecting_result","rows":2,"readonly":false,"required":true,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"合同签订","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","prefix":"","suffix":null,"placeholder":"请输入","readonly":true,"required":true,"default":"this.selectdata.f_apply_num","eval":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"0.00","readonly":false,"required":true,"onchange":"contractMoneyChange"},{"label":"追加金额","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":true,"default":0},{"label":"合同签订时间","type":"datepicker","field":"f_contract_date","placeholder":"请选择","readonly":false,"required":true}],"components":[{"title":"补充协议","device":"pc","name":"supplemental-agreement"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}]},{"title":"报装缴费","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"合同编号","type":"input","field":"f_contract_number","placeholder":"","readonly":true,"required":true},{"label":"合同金额","type":"number","field":"f_contract_money","placeholder":"请输入","readonly":true,"required":true},{"label":"追加款","type":"number","field":"f_add_contract_money","placeholder":"请输入","readonly":true,"required":false},{"label":"应交金额","type":"number","field":"f_due_money","placeholder":"请输入","readonly":true,"required":false},{"label":"累计缴费金额","type":"number","field":"f_cumulative_payment_money","placeholder":"请输入","readonly":true,"required":false},{"label":"未结总金额","type":"number","field":"f_surplus_money","placeholder":"请输入","readonly":true,"required":false},{"label":"付款比例","type":"input","field":"f_payment_ratio","placeholder":"请输入","readonly":true,"required":false},{"label":"累计退款金额","type":"number","field":"f_cumulative_retreat_money","placeholder":"请输入","readonly":true,"required":false,"default":0}],"components":[{"title":"缴费明细","device":"pc","name":"apply-charge-management"},{"title":"补充协议","device":"pc","name":"supplemental-agreement","mark":1},{"title":"缴费明细","device":"app","name":"app-charge-management"},{"title":"补充协议","device":"app","name":"app-supplemental-agreement","mark":1}],"buttons":[{"button_name":"保存"},{"before":"chargeBefore","button_name":"提交","disabled":true}]},{"title":"工程派工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false}],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"工程施工","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":false,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":false,"required":true,"disabled":false},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":false,"required":true,"disabled":false,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":false,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":false,"required":false,"disabled":false}],"onetomany":[{"title":"材料明细","hidden":false,"tables":["t_material_list"],"hiddenOperate":false,"modalSize":"large","addHidden":false,"addStyle":null,"deleteHidden":false,"deleteText":"删除","deleteMessage":null,"updateHidden":false,"updateText":"修改","fields":[{"label":"材料名称","type":"input","field":"f_material_name","placeholder":"请输入","readonly":false,"required":true},{"label":"材料型号","type":"input","field":"f_material_style","placeholder":"请输入","readonly":false,"required":true},{"label":"材料价格","type":"number","field":"f_material_price","placeholder":"请输入","readonly":false,"required":true},{"label":"材料单位","type":"input","field":"f_material_unit","placeholder":"请输入","readonly":false,"required":true},{"label":"材料数量","type":"number","field":"f_material_number","placeholder":"请输入","readonly":false,"required":true},{"label":"材料备注","type":"input","field":"f_material_remarks","placeholder":"请输入","readonly":false,"required":false}]}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"before":"constructionBefore","button_name":"提交","disabled":true}]},{"title":"点火派单","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":false,"options":[{"label":"入户","value":"入户"},{"label":"热水器","value":"热水器"},{"label":"壁挂炉","value":"壁挂炉"}]},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false}],"components":[],"buttons":[{"button_name":"保存"},{"button_name":"下发","source":"this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()","button_fields":[{"label":"下发给","type":"select","field":"f_issue_man","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[]}],"disabled":true}]},{"title":"通气点火","tables":["t_apply"],"fields":[{"label":"工程名称","type":"input","field":"f_entry_name","readonly":true,"disabled":false,"required":true},{"label":"工程编号","type":"input","field":"f_apply_num","readonly":true,"disabled":false,"required":true},{"label":"报建类型","type":"input","field":"f_apply_type","readonly":true,"required":true,"disabled":false},{"label":"用户编号","type":"input","field":"f_userinfo_code","readonly":true,"disabled":false,"required":true},{"label":"用户名称","type":"input","field":"f_user_name","readonly":true,"disabled":false,"required":true},{"label":"用户电话","type":"tel","field":"f_phone","readonly":true,"disabled":false,"required":true},{"label":"证件类型","type":"input","field":"f_credentials","readonly":true,"required":true,"disabled":false},{"label":"证件号码","type":"input","field":"f_idnumber","readonly":true,"required":true,"disabled":false},{"label":"地址","type":"textarea","field":"f_address","rows":1,"readonly":true,"required":true,"disabled":false},{"label":"施工单位","type":"input","field":"f_construction_unit","readonly":true,"required":true,"disabled":false},{"label":"施工安装时间","type":"datepicker","field":"f_construction_date","readonly":true,"required":true,"disabled":true},{"bootstraped":"col-sm-12 col-xs-12","label":"安装项目","type":"checkbox","field":"f_install_project","readonly":true,"required":true,"disabled":true,"param":true},{"label":"施工安装情况","type":"textarea","field":"f_install_situation","rows":2,"readonly":true,"required":true,"disabled":false},{"label":"施工备注","type":"textarea","field":"f_construction_remarks","rows":2,"readonly":true,"required":false,"disabled":false},{"label":"点火人","type":"input","field":"f_igniter_people","readonly":true,"required":true,"disabled":false,"default":"this.$login.f.name","eval":true},{"label":"通气时间","type":"datepicker","field":"f_ventilate_date","readonly":true,"required":true,"disabled":true,"default":true},{"label":"通气情况","type":"textarea","field":"f_gas_result","readonly":false,"required":true,"disabled":true,"rows":"7","default":"客户如认可以下内容请签字,如有不认可之处请说明情况\n1、气密性检测合格,已对各接口处进行查漏无泄漏\n2、燃气表运转正常并告知用户。灶具点火测试正常。使用金属波纹管\n3、已向用户讲解安全常识及注意事项。发放《用户使用手册》并张贴提示标签\n4、灶具品牌 油烟机品牌\n5、热水器品牌 壁挂炉品牌\n6、金属波纹品牌。"},{"label":"通气备注","type":"textarea","field":"f_gas_result","readonly":false,"required":false,"disabled":false},{"label":"是否购买保险","type":"select","field":"f_is_insure","placeholder":"请输入","readonly":false,"disabled":false,"required":true,"options":[{"label":"是","value":"是"},{"label":"否","value":"否"}],"default":"是","onchange":"isInsureChange"},{"label":"保费开始日期","type":"datepicker","field":"f_ins_start_date","readonly":false,"required":true,"disabled":false,"default":true,"format":"yyyy-MM-dd","hidden":true},{"label":"保费结束日期","type":"datepicker","field":"f_ins_expiration_date","readonly":false,"required":true,"disabled":false,"hidden":true},{"label":"险种","type":"select","field":"f_insurance_type","readonly":false,"disabled":false,"required":true,"options":[],"param":true,"hidden":true},{"label":"保费金额","type":"number","field":"f_insurance_money","placeholder":"请输入","readonly":false,"required":true,"hidden":true},{"label":"保险备注","type":"textarea","field":"f_ins_comments","rows":2,"readonly":false,"required":false,"disabled":false,"hidden":true}],"components":[{"title":"安装明细","device":"pc","name":"installation-details"},{"title":"安装明细","device":"app","name":"app-installation-details"},{"title":"用气设备","device":"pc","name":"apply-devices-management"},{"title":"用气设备","device":"app","name":"app-apply-devices-management"}],"buttons":[{"button_name":"保存"},{"button_name":"提交","disabled":true}],"readyEvent":"gasReadyEvent"},{"title":"完工","tables":["t_apply"],"fields":[{"label":"完工","type":"input","field":"f_successful","disabled":true,"value":"---success---"}]}]}
66
+
67
+ let sum = 0
68
+ let jsonData = {}
69
+ if (!this.json_datas || !this.json_datas.activitys || this.json_datas.activitys.length === 0) {
70
+ this.$showMessage("网络故障,请刷新页面")
71
+ return
72
+ }
73
+ this.json_datas.activitys.forEach(item => {
74
+ if (this.selectdata.defname === item.title) {
75
+ jsonData = item // 拿到当前节点的json配置信息
76
+ sum++ // 节点名一样的个数
77
+ }
78
+ return this.selectdata.defname === item.title // 拿到当前节点的json配置信息
79
+ })
80
+
81
+ if (sum === 0) {
82
+ this.$showMessage(`没有在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置`)
83
+ return
84
+ }
85
+ if (sum > 1) {
86
+ this.$showMessage(`在JSON配置文件中找到活动名为:(${this.selectdata.defname})的节点配置:${sum}个`)
87
+ return
88
+ }
89
+
90
+ this.selectdata = Object.assign({}, this.selectdata, jsonData)
91
+
92
+ // fields 字段填充值
93
+ for (const item of this.selectdata.fields) {
94
+ if (!item.value) {
95
+ item.value = null
96
+ }
97
+
98
+ if (!item.value && (item.default || item.default === 0) && item.type !== 'datepicker') {
99
+ if (item.eval) {
100
+ let user = Vue.user
101
+ // 将PC用户信息 替换成 APP的
102
+ item.value = eval(item.default.replace('this.$login.f', 'user'))
103
+ } else {
104
+ item.value = item.default
105
+ }
106
+ }
107
+
108
+ if (this.selectdata[item.field]) {
109
+ // 将json字符串格式化赋值给value
110
+ if (String(this.selectdata[item.field]).startsWith("{")) {
111
+ item.value = JSON.parse(this.selectdata[item.field])
112
+ } else {
113
+ item.value = this.selectdata[item.field]
114
+ }
115
+ }
116
+ if (this.selectdata[item.field] === 0) {
117
+ item.value = 0
118
+ }
119
+
120
+ // datepicker
121
+ if (item.type === 'datepicker' && !item.value && item.default) {
122
+ item.value = new Date().Format(`${item.format ? item.format : 'yyyy-MM-dd HH:mm:ss'}`)
123
+ }
124
+
125
+ // 如果配置类型为select,优先从参数列表获取options
126
+ if (item.type === 'select' || item.type === 'checkbox') {
127
+ if (item.param) {
128
+ let temp = this.$appdata.getParam(item.label)
129
+
130
+ if (temp && temp.length > 0) {
131
+ item.options = temp
132
+ }
133
+
134
+ if (item.paramLabel) {
135
+ temp = this.$appdata.getParam(item.paramLabel)
136
+ if (temp && temp.length > 0) {
137
+ item.options = temp
138
+ }
139
+ }
140
+ }
141
+
142
+ if (item.ready) {
143
+ item.options = await this[item.ready]()
144
+ }
145
+ }
146
+
147
+
148
+ if (item.type === 'checkbox') {
149
+ if (this.selectdata[item.field]) {
150
+ item.value = JSON.parse(this.selectdata[item.field])
151
+ } else {
152
+ item.value = []
153
+ }
154
+ }
155
+ }
156
+
157
+ // 控制组件
158
+ if (this.selectdata.components) {
159
+ this.selectdata.components.forEach(item => {
160
+ if (!item.mark) {
161
+ item.mark = 0
162
+ }
163
+ })
164
+ }
165
+
166
+ // 初始化onetomany
167
+ if (this.selectdata.onetomany) {
168
+ for (const item of this.selectdata.onetomany) {
169
+ let res = null
170
+ if (item.queryEvent) {
171
+ res = this[item.queryEvent]()
172
+ } else {
173
+ let http = new HttpResetClass()
174
+ let data = {
175
+ tablename: item.tables[0],
176
+ condition: `f_process_id='${this.selectdata.f_process_id}'`
177
+ }
178
+ res = await http.load(
179
+ 'POST',
180
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
181
+ // `rs/sql/singleTable`,
182
+ {data: data},
183
+ {resolveMsg: null, rejectMsg: 'onetomany查询失败'}
184
+ )
185
+ }
186
+
187
+ item.rows = res.data
188
+
189
+ // 初始化onetomany中的fields
190
+ for (const field of item.fields) {
191
+ if (!field.value) {
192
+ if (field.value !== 0) {
193
+ field.value = null
194
+ }
195
+ }
196
+
197
+ if (field.default || field.default === 0) {
198
+ field.value = field.default
199
+ }
200
+
201
+ // datepicker
202
+ if (field.type === 'datepicker' && !field.value && field.default) {
203
+ field.value = new Date().Format(`${field.format ? field.format : 'yyyy-MM-dd HH:mm:ss'}`)
204
+ }
205
+
206
+ if (field.type === 'select') {
207
+
208
+ if (field.param) {
209
+ let temp = this.$appdata.getParam(field.label)
210
+
211
+ if (temp && temp.length > 0) {
212
+ field.options = temp
213
+ }
214
+
215
+ if (field.paramLabel) {
216
+ temp = this.$appdata.getParam(field.paramLabel)
217
+ if (temp && temp.length > 0) {
218
+ item.options = temp
219
+ }
220
+ }
221
+ }
222
+
223
+ }
224
+ }
225
+ }
226
+ }
227
+
228
+ // 初始化 buttons_fields
229
+ for (const item of this.selectdata.buttons) {
230
+ if (item.button_name === '下发') {
231
+ let data = {
232
+ source: item.source,
233
+ userid: Vue.user.id
234
+ // userid: '51953'
235
+ }
236
+ if (item.sourceMethod) {
237
+ data.source = this[item.sourceMethod]()
238
+ }
239
+ if (!data.source) {
240
+ this.$showMessage("请配置获取人员表达式")
241
+ return
242
+ }
243
+ let res = await this.$resetpost(
244
+ `${this.$androidUtil.getProxyUrl()}/rs/search`,
245
+ // `rs/search`,
246
+ {data: data},
247
+ {resolveMsg: null, rejectMsg: '下发人员查询失败!!!'}
248
+ )
249
+
250
+ let options = res.data.map(source => {
251
+ return {
252
+ "label": source.name,
253
+ "value": source.id
254
+ }
255
+ })
256
+
257
+ if (item.button_fields.length !== 1) {
258
+ this.$showMessage("下发有且只能有一个字段!!!")
259
+ return
260
+ }
261
+
262
+ item.button_fields[0].options = options
263
+ }
264
+ if (item.button_fields) {
265
+ item.button_fields.forEach(x => {
266
+ // 如果配置类型为select,优先从参数列表获取options
267
+ if (x.type === 'select') {
268
+
269
+ if (x.param) {
270
+ let temp = this.$appdata.getParam(x.label)
271
+
272
+ if (temp && temp.length > 0) {
273
+ x.options = temp
274
+ }
275
+
276
+ if (x.paramLabel) {
277
+ temp = this.$appdata.getParam(x.paramLabel)
278
+ if (temp && temp.length > 0) {
279
+ x.options = temp
280
+ }
281
+ }
282
+ }
283
+
284
+ }
285
+ })
286
+ }
287
+ }
288
+
289
+ // 消除双向绑定,避免子组件(显示层)数据更改,父组件(控制层)也更改
290
+ let temp = JSON.parse(JSON.stringify(this.selectdata))
291
+
292
+ this.show_data = temp
293
+ this.$nextTick(() => {
294
+ this.showview = true
295
+ })
296
+ },
297
+ signClean () {
298
+ this.selectdata.f_construction_sign = null
299
+ },
300
+ signSuccess (fileUrl) {
301
+ console.log('==============签字回调==================')
302
+ console.log(fileUrl)
303
+ this.selectdata.f_construction_sign = fileUrl
304
+ },
305
+ // 金额转大写
306
+ smalltoBIG(n) {
307
+ let fraction = ['', ''];
308
+ let digit = ['', '', '', '', '', '', '', '柒', '捌', '玖'];
309
+ let unit = [['元', '万', '亿'], ['', '', '佰', '']];
310
+ let head = n < 0 ? '欠' : '';
311
+ n = Math.abs(n);
312
+
313
+ let s = '';
314
+
315
+ for (var i = 0; i < fraction.length; i++) {
316
+ s += (digit[Math.floor(n * 10 * Math.pow(10, i)) % 10] + fraction[i]).replace(/零./, '');
317
+ }
318
+ s = s || '整';
319
+ n = Math.floor(n);
320
+
321
+ for (var i = 0; i < unit[0].length && n > 0; i++) {
322
+ let p = '';
323
+ for (var j = 0; j < unit[1].length && n > 0; j++) {
324
+ p = digit[n % 10] + unit[1][j] + p;
325
+ n = Math.floor(n / 10);
326
+ }
327
+ s = p.replace(/(零.)*零$/, '').replace(/^$/, '零') + unit[0][i] + s;
328
+ }
329
+ return head + s.replace(/(零.)*零元/, '元').replace(/(零.)+/g, '零').replace(/^整$/, '零元整')
330
+ },
331
+ getLableValue(label) {
332
+ for (const item of this.show_data.fields) {
333
+ if (item.label === label && item.type !== 'number') {
334
+ return item.value || ''
335
+ }
336
+ if (item.label === label && item.type === 'number') {
337
+ return item.value || 0
338
+ }
339
+ }
340
+ },
341
+ getLableOptions(label) {
342
+ for (const item of this.show_data.fields) {
343
+ if (item.label === label) {
344
+ return item.options
345
+ }
346
+ }
347
+ },
348
+ setLabelValue(label, value) {
349
+ for (const item of this.show_data.fields) {
350
+ if (item.label === label) {
351
+ item.value = value
352
+ this.show_data[item.field] = value
353
+ }
354
+ }
355
+ },
356
+ setLabelOptions(label, options) {
357
+ for (const item of this.show_data.fields) {
358
+ if (item.label === label) {
359
+ item.options = options
360
+ }
361
+ }
362
+ },
363
+ disabledButtons(...buttons) {
364
+ for (const item of this.show_data.buttons) {
365
+ if (buttons.includes(item.button_name)) {
366
+ item.disabled = true
367
+ }
368
+ }
369
+ },
370
+ enableButtons(...buttons) {
371
+ for (const item of this.show_data.buttons) {
372
+ if (buttons.includes(item.button_name)) {
373
+ item.disabled = false
374
+ }
375
+ }
376
+ },
377
+ showButtons(...buttons) {
378
+ for (const item of this.show_data.buttons) {
379
+ if (buttons.includes(item.button_name)) {
380
+ item.hidden = false
381
+ }
382
+ }
383
+ },
384
+ hideButtons(...buttons) {
385
+ for (const item of this.show_data.buttons) {
386
+ if (buttons.includes(item.button_name)) {
387
+ item.hidden = true
388
+ }
389
+ }
390
+ },
391
+ async checkDuplicate(index) {
392
+ let http = new HttpResetClass()
393
+ let data = {
394
+ tablename: 't_apply',
395
+ condition: `${this.show_data.fields[index].field} = '${this.show_data.fields[index].value}'`
396
+ }
397
+ let res = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data: data}, {
398
+ resolveMsg: null,
399
+ rejectMsg: `${this.show_data.fields[index].label}查询失败`
400
+ })
401
+ if (res.data.length > 0) {
402
+ this.show_data.fields[index].value = null
403
+ this.$showAlert(`${this.show_data.fields[index].label}已存在!!!`, 'warning', 3000)
404
+ }
405
+ },
406
+ async breakControl () {
407
+ if (this.show_data.id) {
408
+ let data = {
409
+ condition: `u.id = ${this.show_data.id}`,
410
+ data: {
411
+ id: Vue.user.id,
412
+ orgid: Vue.user.orgid
413
+ // id: '51953',
414
+ // orgid: '10101'
415
+ }
416
+ }
417
+ let res = await this.$resetpost(
418
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/checkuser`,
419
+ // `rs/sql/checkuser`,
420
+ {data: data},
421
+ {resolveMsg: null, rejectMsg: '数据更新失败,请手查询更新!!!'}
422
+ )
423
+
424
+ this.selectdata = res.data[0]
425
+ } else {
426
+ this.selectdata = servicedata
427
+ }
428
+
429
+ this.refurbish()
430
+ },
431
+ // 缴费前置
432
+ chargeBefore () {
433
+ if (Number(this.show_data.f_due_money) > Number(this.show_data.f_cumulative_payment_money) || Number(this.show_data.f_surplus_money) > 0) {
434
+ this.$showAlert('费用未结清!!!', 'warning', 3000)
435
+ throw null
436
+ }
437
+ },
438
+ // 施工前置
439
+ async constructionBefore () {
440
+ let http = new HttpResetClass()
441
+ let data = {
442
+ condition: `ui.f_process_id = '${this.show_data.f_process_id}' and uf.f_table_state = '待开通'`
443
+ }
444
+ let res = await http.load(
445
+ 'POST',
446
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/countApplyUserinfo`,
447
+ {data: data},
448
+ {
449
+ resolveMsg: null,
450
+ rejectMsg: '安装明细查询失败!!!'
451
+ })
452
+ if (res.data[0].num > 0) {
453
+ this.$showAlert(`还有${res.data[0].num}户未安装,无法提交`, 'warning', 3000)
454
+ throw `还有${res.data[0].num}户未安装,无法提交`
455
+ }
456
+ },
457
+ changePipeBuild () {
458
+ if (this.selectdata.f_process_dep === '工程部') {
459
+ return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
460
+ }
461
+ if (this.selectdata.f_process_dep === '运营部') {
462
+ return 'this.getParentByType($organization$).getChildByName($运营部报装$).getChildren()'
463
+ }
464
+ return 'this.getParentByType($organization$).getChildByName($工程部报装$).getChildren()'
465
+ },
466
+ async getPrice (f_price_id) {
467
+ console.log('=======================')
468
+ console.log(f_price_id)
469
+
470
+ let data = {
471
+ condition: `sp.f_filialeid = '${Vue.user.orgid}'`
472
+ }
473
+
474
+ if (!isEmpty(f_price_id)) {
475
+ data.condition = `sp.f_filialeid = '${Vue.user.orgid}' and sp.f_price_id = ${f_price_id}`
476
+ }
477
+ let http = new HttpResetClass()
478
+ let res = await http.load(
479
+ 'POST',
480
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/applyGetPrice`,
481
+ {data: data},
482
+ {resolveMsg: null, rejectMsg: '气价查询失败!!!'}
483
+ )
484
+
485
+ return res.data.map(item => {
486
+ return {
487
+ label: item.f_price_name,
488
+ value: item
489
+ }
490
+ })
491
+ },
492
+ async getDesignerPeople () {
493
+ let data = {
494
+ source: 'this.getParentByType($organization$).getChildByName($设计部报装$).getChildren()',
495
+ userid: Vue.user.id
496
+ }
497
+
498
+ let http = new HttpResetClass()
499
+ let res = await http.load(
500
+ 'POST',
501
+ `${this.$androidUtil.getProxyUrl()}/rs/search`,
502
+ {data: data},
503
+ {resolveMsg: null, rejectMsg: '设计人员查询失败!!!'}
504
+ )
505
+
506
+ return res.data.map(item => {
507
+ return {
508
+ label: item.name,
509
+ value: item.id
510
+ }
511
+ })
512
+ },
513
+ async surveyStopApply () {
514
+ console.log('终止报建!!!!!')
515
+
516
+ this.show_data.f_stop_reason = '现场勘察不符合报装条件'
517
+
518
+ let data = {
519
+ data: this.show_data,
520
+ user: Vue.user
521
+ }
522
+
523
+ let res = await this.$resetpost(
524
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/surveyStopApply`,
525
+ {data: data},
526
+ {resolveMsg: null, rejectMsg: '终止报建失败!!!'}
527
+ )
528
+
529
+ this.$dispatch('loadPage')
530
+
531
+ throw '终止报建!!!'
532
+ }
533
+ },
534
+ events: {
535
+ 'complyInstallation' (index) {
536
+ if (this.show_data.f_is_have === '否') {
537
+ this.hideButtons('提交', '出图', '缴费')
538
+ this.showButtons('终止')
539
+ }
540
+ if (this.show_data.f_is_have === '') {
541
+ this.hideButtons('终止')
542
+ this.showButtons('提交', '出图', '缴费')
543
+ }
544
+ },
545
+ async 'igniteDispatchReadyEvent' () {
546
+ let data = {
547
+ tablename: 'activityins',
548
+ condition: `processid = '${this.show_data.f_process_id}' and defname = '工程施工' and state = '结束'`
549
+ }
550
+ let http = new HttpResetClass()
551
+ let res = await http.load(
552
+ 'POST',
553
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
554
+ {data: data},
555
+ {resolveMsg: null, rejectMsg: '查询失败!!!'}
556
+ )
557
+ if (res.data.length <= 0) {
558
+ console.log('+++++++++++++++++++++++++++++')
559
+ console.log('没有施工,不能退回')
560
+ this.hideButtons('退回')
561
+ }
562
+ },
563
+ 'breakControl' () {
564
+ this.breakControl()
565
+ },
566
+ // 检查重复
567
+ 'checkRepeat' (index) {
568
+ this.checkDuplicate(index)
569
+ },
570
+ 'buildReadyEvent' () {
571
+ this.setLabelValue('施工单位', Vue.user.name)
572
+ this.setLabelValue('施工安装时间', new Date().Format('yyyy-MM-dd HH:mm:ss'))
573
+ },
574
+ // 选择材料
575
+ async materialNameChenge (index, fieldIndex) {
576
+ let material = this.show_data.onetomany[index].fields[fieldIndex].value
577
+
578
+ this.show_data.onetomany[index].fields.forEach(item => {
579
+ if (material[item.field]) {
580
+ item.value = material[item.field]
581
+ }
582
+ })
583
+ },
584
+ // 打开模态框获取材料
585
+ async 'getMaterialName' (index) {
586
+ let data = {
587
+ condition: `1=1`
588
+ }
589
+ let http = new HttpResetClass()
590
+ let res = await http.load(
591
+ 'POST',
592
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/getStockMaterial`,
593
+ {data: data},
594
+ {resolveMsg: null, rejectMsg: '材料查询失败!!!'}
595
+ )
596
+
597
+ this.show_data.onetomany[index].fields.forEach(field => {
598
+ if (field.label === '选择材料') {
599
+ field.options = res.data.map(item => {
600
+ return {
601
+ 'label': `${item.f_material_name}--${item.f_material_style}--${item.f_material_unit}`,
602
+ 'value': item
603
+ }
604
+ })
605
+ }
606
+ })
607
+ },
608
+ // 选择气价
609
+ 'priceChange' (index) {
610
+ if (isEmpty(this.show_data.stairPrice)) {
611
+ return
612
+ }
613
+
614
+ let stairPrice = this.getLableValue('气价名称')
615
+
616
+ this.setLabelValue('气价类型', stairPrice.f_price_type)
617
+ this.setLabelValue('用气性质', stairPrice.f_gasproperties)
618
+ this.setLabelValue('价格', stairPrice.f_price)
619
+ this.setLabelValue('客户类型', stairPrice.f_user_type)
620
+
621
+ this.show_data.f_price_id = stairPrice.f_price_id
622
+ this.show_data.f_price_name = stairPrice.f_price_name
623
+ },
624
+ // 是否购买保险
625
+ isInsureChange (index) {
626
+ let f_is_insure = this.getLableValue('是否购买保险')
627
+ for (const item of this.show_data.fields) {
628
+ if (f_is_insure === '是') {
629
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
630
+ item.hidden = false
631
+ item.required = true
632
+ }
633
+ if (item.label === '保险备注') {
634
+ item.hidden = false
635
+ }
636
+ } else {
637
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
638
+ item.hidden = true
639
+ item.required = false
640
+ }
641
+ }
642
+ }
643
+ },
644
+ // 通气点火初始化
645
+ async 'gasReadyEvent' () {
646
+ console.log('----通气点火初始化----')
647
+ if (!isEmpty(this.show_data.f_price_id)) {
648
+ let priceList = await this.getPrice(this.show_data.f_price_id)
649
+ this.setLabelValue('气价名称', priceList[0].value)
650
+ }
651
+
652
+ let data = {
653
+ tablename: 't_userfees',
654
+ condition: `f_orgid = '${Vue.user.orgid}' and f_userinfo_id = '${this.show_data.f_userinfo_id}' and f_state = '待执行'`
655
+ }
656
+
657
+ console.log('---------查询是否有待执行保险-----------')
658
+ let http = new HttpResetClass()
659
+ let res = await http.load(
660
+ 'POST',
661
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`,
662
+ {data: data},
663
+ {resolveMsg: null, rejectMsg: '保险查询失败!!!'}
664
+ )
665
+ if (res.data.length > 0) {
666
+ console.log('----------具有待执行保险------------')
667
+ this.setLabelValue('待执行保险', '是')
668
+ for (const item of this.show_data.fields) {
669
+ if (item.label === '保费开始日期' || item.label === '是否购买保险' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
670
+ item.hidden = true
671
+ item.required = false
672
+ item.value = null
673
+ }
674
+ }
675
+ console.log('----------具有待执行保险------------')
676
+ } else {
677
+ console.log('----------不有待执行保险------------')
678
+ this.setLabelValue('待执行保险', '否')
679
+ for (const item of this.show_data.fields) {
680
+ if (item.label === '是否购买保险' || item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
681
+ item.hidden = false
682
+ item.required = true
683
+ }
684
+ }
685
+ console.log('----------具有待执行保险------------')
686
+ }
687
+
688
+ // 初始化显示内容
689
+ let f_is_insure = this.getLableValue('是否购买保险')
690
+ for (const item of this.show_data.fields) {
691
+ if (f_is_insure === '是') {
692
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额') {
693
+ item.hidden = false
694
+ item.required = true
695
+ }
696
+ if (item.label === '保险备注') {
697
+ item.hidden = false
698
+ }
699
+ // 本期保费到期时间默认一年
700
+ if (isEmpty(this.selectdata.f_ins_expiration_date)) {
701
+ let f_ins_expiration_date = new Date().setFullYear(new Date().getFullYear() + 1)
702
+ this.setLabelValue("保费结束日期", new Date(f_ins_expiration_date).Format('yyyy-MM-dd'))
703
+ }
704
+ }
705
+ if (f_is_insure === '否') {
706
+ if (item.label === '保费开始日期' || item.label === '保费结束日期' || item.label === '险种' || item.label === '保费金额' || item.label === '保险备注') {
707
+ item.hidden = true
708
+ item.required = false
709
+ }
710
+ }
711
+ }
712
+ },
713
+ // 合同金额失去焦点
714
+ async 'contractMoneyChange' (index) {
715
+ let data = {
716
+ operator: '+',
717
+ num1: this.show_data.f_contract_money || 0,
718
+ num2: this.getLableValue('追加金额') || 0
719
+ }
720
+ let res = await this.$resetpost(
721
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/compute`,
722
+ {data: data},
723
+ {resolveMsg: null, rejectMsg: '金额计算失败!!!'}
724
+ )
725
+
726
+ this.setLabelValue('应交金额', res.data)
727
+ },
728
+ // ===========================================
729
+ async 'button'() {
730
+ if (this.show_data.button.before) {
731
+ await this[this.show_data.button.before]()
732
+ }
733
+ // 点击重置按钮就重置数据
734
+ if (this.show_data.button.button_name === '重置') {
735
+ this.$dispatch('breakControl', this.selectdata)
736
+ return
737
+ }
738
+
739
+ this.show_data.user = Vue.user
740
+ // this.show_data.user = {"f_show_department_name":"","parentname":"市场部","functions":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"客服系统","icon":"/images/lefticon/档案管理.png","hasright":false,"resourcetype":"function","parentid":"27","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"city-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"231","name":"街道管理","templatename":"functionedit","id":"230","position":"1","fullname":"资源管理.功能模块.客服系统.档案管理.街道管理","fullid":"3.21.27.212.230","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"area-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"219","name":"小区管理","templatename":"functionedit","id":"218","position":"3","fullname":"资源管理.功能模块.客服系统.档案管理.小区管理","fullid":"3.21.27.212.218","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"address-manage","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"33664","name":"地址管理","templatename":"functionedit","id":"33663","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.地址管理","fullid":"3.21.27.212.33663","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","parentname":"档案管理","link":"file-user-files","hasright":true,"resourcetype":"function","parentid":"212","children":[],"selfid":"237","name":"用户档案","templatename":"functionedit","id":"236","position":"5","fullname":"资源管理.功能模块.客服系统.档案管理.用户档案","fullid":"3.21.27.212.236","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"档案管理","link":"file-user-files-new","hasright":true,"resourcetype":"function","parentid":"212","f_parentname":"档案管理","children":[],"selfid":"39450","name":"预备户管理","templatename":"functionedit","id":"39449","position":"6","fullname":"资源管理.功能模块.客服系统.档案管理.预备户管理","fullid":"3.21.27.212.39449","tablename":"t_function"}],"selfid":"213","name":"档案管理","templatename":"functionedit","id":"212","position":"2","fullname":"资源管理.功能模块.客服系统.档案管理","fullid":"3.21.27.212","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"客服系统","icon":"/images/lefticon/报建系统.png","hasright":true,"resourcetype":"function","parentid":"27","f_parentname":"客服系统","children":[{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"install-function","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34680","name":"功能业务","templatename":"functionedit","id":"34679","position":"1","fullname":"资源管理.功能模块.客服系统.报建业务.功能业务","fullid":"3.21.27.34673.34679","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"exploration-user","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34686","name":"流程业务","templatename":"functionedit","id":"34685","position":"2","fullname":"资源管理.功能模块.客服系统.报建业务.流程业务","fullid":"3.21.27.34673.34685","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"supervisory-control","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34692","name":"流程监控","templatename":"functionedit","id":"34691","position":"3","fullname":"资源管理.功能模块.客服系统.报建业务.流程监控","fullid":"3.21.27.34673.34691","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"apply-charge-search","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34698","name":"收费明细","templatename":"functionedit","id":"34697","position":"4","fullname":"资源管理.功能模块.客服系统.报建业务.收费明细","fullid":"3.21.27.34673.34697","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"order-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34704","name":"预约申请","templatename":"functionedit","id":"34703","position":"5","fullname":"资源管理.功能模块.客服系统.报建业务.预约申请","fullid":"3.21.27.34673.34703","tablename":"t_function"},{"pagenames":"公共通讯录维护模板","processnames":"发邮件流程","loginid":"15","parentname":"报建业务","link":"stop-apply","hasright":true,"resourcetype":"function","parentid":"34673","f_parentname":"报建业务","children":[],"selfid":"34710","name":"终止报建","templatename":"functionedit","id":"34709","position":"6","fullname":"资源管理.功能模块.客服系统.报建业务.终止报建","fullid":"3.21.27.34673.34709","tablename":"t_function"}],"selfid":"34674","name":"报建业务","templatename":"functionedit","id":"34673","position":"12","fullname":"资源管理.功能模块.客服系统.报建业务","fullid":"3.21.27.34673","tablename":"t_function"}],"qrcode":"/rs/user/getQRcode?QRCODE=12b2-1631604191812-03447","rolesnames":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","roles":"51383,51485,51707,51767,51833,51905,52289","f_sex":"男","f_icon":"tree_user","fullnames":"河南亿星集团实业有限公司.周口市天然气有限公司.市场部.报建测试","dir":"ZhouKou","userid":"12b2-1631604191812-03447","accesstime":"1632214307117","parentid":"46545","f_show_rolestr":"","fullids":"30463.10101.46545.51953.","number":"10101","f_dep_id":"1010101201","f_idnumber":null,"selfid":"51954","templatename":"useredit","logindate":"2021-09-14 18:46:54","id":"51953","state":"在职","tablename":"t_user","deptype":"部门","depids":"46545","loginid":"15","imgid":null,"f_user_telephone":null,"rolestr":"营业厅报装,市场部报装,设计部报装,工程部报装,运营部报装,财务部报装,角色监控","deps":"市场部","loginnum":"0","f_age":null,"resourcetype":"user","orgid":"10101","f_department_name":"周口市场部","ename":"bjcs","deleted":"false","entitytype":"t_user","f_description":null,"loginip":"192.168.66.37","name":"报建测试","position":"1","orgs":"周口市天然气有限公司","haslicense":true,"f_role_name":"营业厅报装 市场部报装 设计部报装 工程部报装 运营部报装 财务部报装 角色监控 ","f_allArea":[],"f_gasman":[{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294978548","rolestr":"抄表员","resourcetype":"user","userid":"100814","parentid":"46581","f_department_name":"周口客服部","ename":"100814","password":"1","deleted":"false","entitytype":"t_user","selfid":"100814","name":"高雪荣","templatename":"useredit","id":"100814","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"qrcode":"/rs/user/getQRcode?QRCODE=004","roles":"51959","f_sex":"男","f_icon":"tree_user","userid":"004","accesstime":"1631765198067","parentid":"46581","password":"1","selfid":"59044","templatename":"useredit","id":"59043","state":"在职","tablename":"t_user","loginid":"15","rolestr":"抄表员","resourcetype":"user","f_department_name":"周口客服部","ename":"cbcs","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","name":"抄表测试","position":"23","haslicense":"true","f_role_name":"抄表员 "},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602709","rolestr":"抄表员","resourcetype":"user","userid":"100462","parentid":"46581","f_department_name":"周口客服部","ename":"100462","password":"1","deleted":"false","entitytype":"t_user","selfid":"100462","name":"刘林静","templatename":"useredit","id":"100462","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409830","rolestr":"抄表员","resourcetype":"user","userid":"100528","parentid":"46581","f_department_name":"周口客服部","ename":"100528","password":"1","deleted":"false","entitytype":"t_user","selfid":"100528","name":"秦春梅","templatename":"useredit","id":"100528","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13243376616","rolestr":"抄表员","resourcetype":"user","userid":"102935","parentid":"46581","f_department_name":"周口客服部","ename":"102935","password":"1","deleted":"false","entitytype":"t_user","selfid":"102935","name":"石磊","templatename":"useredit","id":"102935","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18538602706","rolestr":"抄表员","resourcetype":"user","userid":"100818","parentid":"46581","f_department_name":"周口客服部","ename":"100818","password":"1","deleted":"false","entitytype":"t_user","selfid":"100818","name":"白静","templatename":"useredit","id":"100818","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15294991670","rolestr":"抄表员","resourcetype":"user","userid":"102934","parentid":"46581","f_department_name":"周口客服部","ename":"102934","password":"1","deleted":"false","entitytype":"t_user","selfid":"102934","name":"郭新胜","templatename":"useredit","id":"102934","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"15036438918","rolestr":"抄表员","resourcetype":"user","userid":"103392","accesstime":"1631757950369","parentid":"46581","f_department_name":"周口客服部","ename":"103392","password":"1","deleted":"false","entitytype":"t_user","loginip":"10.10.10.1","selfid":"103392","name":"牛永胜","templatename":"useredit","id":"103392","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13592232789","rolestr":"抄表员","resourcetype":"user","userid":"100337","parentid":"46581","f_department_name":"周口客服部","ename":"100337","password":"1","deleted":"false","entitytype":"t_user","selfid":"100337","name":"王雪丽","templatename":"useredit","id":"100337","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"17796528119","rolestr":"抄表员","resourcetype":"user","userid":"101021","parentid":"46581","f_department_name":"周口客服部","ename":"101021","password":"1","deleted":"false","entitytype":"t_user","selfid":"101021","name":"张书荣","templatename":"useredit","id":"101021","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"18839409832","rolestr":"抄表员","resourcetype":"user","userid":"100330","parentid":"46581","f_department_name":"周口客服部","ename":"100330","password":"1","deleted":"false","entitytype":"t_user","selfid":"100330","name":"武文平","templatename":"useredit","id":"100330","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"},{"loginid":"1","roles":"51959","f_icon":"tree_user","f_user_telephone":"13839441227","rolestr":"抄表员","resourcetype":"user","userid":"100871","parentid":"46581","f_department_name":"周口客服部","ename":"100871","password":"1","deleted":"false","entitytype":"t_user","selfid":"100871","name":"李明磊","templatename":"useredit","id":"100871","position":"23","state":"在职","tablename":"t_user","f_role_name":"抄表员"}],"lics":[]}
741
+ this.show_data.start_activity = this.json_datas.start_activity
742
+ this.show_data.xmlfilename = this.json_datas.workflow_xmlfilename
743
+
744
+ let res = await this.$resetpost(
745
+ // `rs/logic/ApplyProductService`,
746
+ `${this.$androidUtil.getProxyUrl()}/rs/logic/ApplyProductService`,
747
+ {data: this.show_data},
748
+ {resolveMsg: null, rejectMsg: '数据保存失败'}
749
+ )
750
+
751
+ if (this.show_data.button.after) {
752
+ this[this.show_data.button.after]()
753
+ }
754
+ // 返回上层
755
+ this.$dispatch('confirm')
756
+ },
757
+ // 失去焦点出触发事件
758
+ 'onchange' (index) {
759
+ if (this.show_data.defname === '报装申请') {
760
+ if (
761
+ this.show_data.fields[index].label === '街道' ||
762
+ this.show_data.fields[index].label === '小区' ||
763
+ this.show_data.fields[index].label === '楼号(乡/镇)' ||
764
+ this.show_data.fields[index].label === '单元()' ||
765
+ this.show_data.fields[index].label === '楼层(组)' ||
766
+ this.show_data.fields[index].label === '门牌号(号)'
767
+ ) {
768
+
769
+ let f_street = this.getLableValue('街道')
770
+ let f_residential_area = this.getLableValue('小区')
771
+ let f_building = this.getLableValue('楼号(乡/镇)')
772
+ let f_building_suffix = f_building ? this.config.f_building_suffix : ''
773
+ let f_unit = this.getLableValue('单元(村)')
774
+ let f_unit_suffix = f_unit ? this.config.f_unit_suffix : ''
775
+ let f_floor = this.getLableValue('楼层(组)')
776
+ let f_floor_suffix = f_floor ? this.config.f_floor_suffix : ''
777
+ let f_room = this.getLableValue('门牌号(号)')
778
+ let f_room_suffix = f_room ? this.config.f_room_suffix : ''
779
+
780
+ let f_address = null
781
+
782
+ let f_address_type = this.show_data.f_address_type
783
+ if (f_address_type === '民用城区') {
784
+ f_address = f_street + f_residential_area + f_building + f_building_suffix + f_unit + f_unit_suffix + f_floor + f_floor_suffix + f_room + f_room_suffix
785
+ }
786
+ if (f_address_type === '民用农村') {
787
+ f_address = f_building + f_unit + f_floor + f_room
788
+ }
789
+ if (f_address_type === '特殊城区') {
790
+ f_address = f_street + f_residential_area
791
+ }
792
+ this.setLabelValue("地址", f_address)
793
+ }
794
+ }
795
+ },
796
+ 'onblur' (index) {},
797
+ 'oninput' (index) {},
798
+ 'initializtionView' () {},
799
+ async 'onchangeModal' (index, fieldIndex) {
800
+ },
801
+ async 'onblurModal' (index, fieldIndex) {
802
+
803
+ },
804
+ async 'oninputModal' (index, fieldIndex) {
805
+
806
+ },
807
+ async 'onetomanydelete' (index, rowIndex) {
808
+
809
+ let http = new HttpResetClass()
810
+
811
+ let res = await http.load(
812
+ 'DELETE',
813
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}/${this.show_data.onetomany[index].rows[rowIndex].id}`,
814
+ null,
815
+ {resolveMsg: null, rejectMsg: '删除失败!!!'}
816
+ )
817
+ res = await this.$resetpost(
818
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
819
+ this.show_data
820
+ )
821
+ this.breakControl()
822
+ },
823
+ async 'onetomanyupdate' (index, rowIndex) {
824
+ let data = this.show_data.onetomany[index].rows[rowIndex]
825
+
826
+ this.show_data.onetomany[index].fields.forEach(item => {
827
+ data[item.field] = item.value
828
+ })
829
+ let res = await this.$resetpost(
830
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
831
+ data
832
+ )
833
+ res = await this.$resetpost(
834
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
835
+ this.show_data
836
+ )
837
+ this.breakControl()
838
+ },
839
+ async 'onetomanyadd' (index) {
840
+ let data = {
841
+ f_process_id : this.show_data.f_process_id,
842
+ f_operator_id: Vue.user.id,
843
+ f_operator: Vue.user.name,
844
+ f_operation_date: new Date().Format('yyyy-MM-dd HH:mm:ss'),
845
+ f_orgid: Vue.user.orgid,
846
+ f_orgname: Vue.user.orgs
847
+ }
848
+ this.show_data.onetomany[index].fields.forEach(item => {
849
+ data[item.field] = item.value
850
+ })
851
+ let res = await this.$resetpost(
852
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/${this.show_data.onetomany[index].tables[0]}`,
853
+ data
854
+ )
855
+ res = await this.$resetpost(
856
+ `${this.$androidUtil.getProxyUrl()}/rs/entity/t_apply`,
857
+ this.show_data
858
+ )
859
+ this.breakControl()
860
+ },
861
+ 'onbutchange' (index) {
862
+
863
+ },
864
+ 'onbutblur' (index) {
865
+
866
+ },
867
+ 'onbutinput' (index) {
868
+
869
+ }
870
+ },
871
+ watch: {
872
+ }
873
+ }
874
+ </script>
875
+ <style scoped>
876
+ </style>