apply-clients 3.1.33 → 3.1.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/package.json +112 -112
  2. package/src/App.vue +20 -20
  3. package/src/apply.js +3 -0
  4. package/src/components/product/ApplyCharge/ApplyChargeList.vue +266 -247
  5. package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +30 -232
  6. package/src/components/product/Function/InstallFunction.vue +2 -2
  7. package/src/components/product/Function/InstallInfoSelect.vue +44 -5
  8. package/src/components/product/Function/Service/FunctionServiceControl.vue +58 -1
  9. package/src/components/product/Function/functions/ChargeManagement.vue +397 -30
  10. package/src/components/product/Function/functions/ContractNo.vue +354 -354
  11. package/src/components/product/Function/functions/DispatchList.vue +490 -490
  12. package/src/components/product/Function/functions/InstallFeeInfo.vue +43 -43
  13. package/src/components/product/Order/OrderApply.vue +467 -467
  14. package/src/components/product/Order/OrderApplyList.vue +301 -301
  15. package/src/components/product/Process/ExplorationSelect.vue +326 -287
  16. package/src/components/product/Process/ExplorationUser.vue +168 -140
  17. package/src/components/product/Process/Service/ServiceControl.vue +16 -15
  18. package/src/components/product/ReportForm/ApplyUpload.vue +261 -261
  19. package/src/components/product/ReportForm/CustomerRecordMessage.vue +1587 -1409
  20. package/src/components/product/ServiceView.vue +6 -1
  21. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +169 -153
  22. package/src/components/product/Supervisory/SupervisoryControl.vue +132 -132
  23. package/src/components/product/Supervisory/SupervisoryControl2.vue +132 -0
  24. package/src/components/product/Supervisory/SupervisoryList.vue +76 -10
  25. package/src/components/product/Supervisory/SupervisoryList2.vue +285 -0
  26. package/src/components/product/Supervisory/SupervisoryhCart.vue +105 -104
@@ -1,467 +1,467 @@
1
- <template>
2
- <div class="flex-row">
3
- <div class="basic-main">
4
- <div :class="showData ? 'top' : 'auto'">
5
- <order-apply-list v-ref:query :show-data="showData"></order-apply-list>
6
- </div>
7
- <div v-if="showtotal" style="height: 89%">
8
- </div>
9
- </div>
10
- </div>
11
-
12
- <validator name="cv">
13
- <modal
14
- v-if="showCheck"
15
- :show.sync="showCheck"
16
- backdrop="false"
17
- >
18
- <header slot="modal-header" class="modal-header">
19
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
20
- <h4 class="modal-title">检查审核</h4>
21
- </header>
22
- <article slot="modal-body" class="modal-body clearfix">
23
- <div class="form-group col-sm-12" :class="[$cv.check.required ? 'has-error' : '']">
24
- <label class="col-sm-3 control-label" style="line-height: 35px">是否合格:</label>
25
- <div class="col-sm-9">
26
- <input type="text" v-show="false" v-validate:check = "['required']" v-model="check">
27
- <v-select
28
- v-model="check"
29
- :value.sync="check"
30
- :options='checkOptions'
31
- :value-single="true"
32
- class="select select_list"
33
- :search="false"
34
- width="75%"
35
- close-on-select ></v-select>
36
- </div>
37
- </div>
38
- <!-- <div class="form-group col-sm-12" :class="[$cv.remark.required ? 'has-error' : '']">-->
39
- <!-- <label class="col-sm-3 control-label" style="line-height: 60px">审核备注:</label>-->
40
- <!-- <div class="col-sm-9">-->
41
- <!-- <textarea-->
42
- <!-- class="form-control input_view" style="width: 75%;height: 100%"-->
43
- <!-- rows="2" v-validate:remark = "['required']" placeholder="审核不合格内容将通知用户"-->
44
- <!-- v-model="checkRemark" :value="checkRemark"-->
45
- <!-- >-->
46
- <!-- </textarea>-->
47
- <!-- </div>-->
48
- <!-- </div>-->
49
- </article>
50
- <footer slot="modal-footer" class="modal-footer">
51
- <button type="button" class="btn btn-primary" v-if="check == '是'" @click="checkOrder()" :disabled='!$cv.valid'>确认</button>
52
- </footer>
53
- </modal>
54
- </validator>
55
-
56
- <validator name="tv">
57
- <modal
58
- v-if="showType"
59
- :show.sync="showType"
60
- backdrop="false"
61
- >
62
- <header slot="modal-header" class="modal-header">
63
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
64
- <h4 class="modal-title">报建类型</h4>
65
- </header>
66
- <article slot="modal-body" class="modal-body clearfix">
67
- <div class="form-group col-sm-12" :class="[$tv.type.required ? 'has-error' : '']">
68
- <label class="col-sm-3 control-label" style="line-height: 35px">报建类型:</label>
69
- <div class="col-sm-9">
70
- <input type="text" v-show="false" v-validate:type = "['required']" v-model="applyType">
71
- <v-select
72
- placeholder='请选择需要发起的工程类型'
73
- v-model="applyType"
74
- :value.sync="applyType"
75
- :options='$appdata.getParam("报建类型")'
76
- :value-single="true"
77
- class="select select_list"
78
- :search="false"
79
- width="75%"
80
- close-on-select ></v-select>
81
- </div>
82
- </div>
83
- </article>
84
- <footer slot="modal-footer" class="modal-footer">
85
- <button type="button" class="btn btn-primary" @click="applyinstall()" :disabled='!$tv.valid'>确认</button>
86
- </footer>
87
- </modal>
88
- </validator>
89
-
90
- <validator name="mv">
91
- <modal
92
- v-if="showModal"
93
- :show.sync="showModal"
94
- backdrop="false"
95
- >
96
- <header slot="modal-header" class="modal-header">
97
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
98
- <h4 class="modal-title">报建发起</h4>
99
- </header>
100
- <article slot="modal-body" class="modal-body clearfix">
101
- <div>是否确定发起报建工程吗?</div>
102
- </article>
103
- <footer slot="modal-footer" class="modal-footer">
104
- <button type="button" class="btn btn-primary" @click="mergeInitiate()" :disabled='!$mv.valid'>确认</button>
105
- </footer>
106
- </modal>
107
- </validator>
108
-
109
- <validator name="av">
110
- <modal
111
- v-if="showApply"
112
- :show.sync="showApply"
113
- backdrop="false"
114
- >
115
- <header slot="modal-header" class="modal-header">
116
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
117
- <h4 class="modal-title">合并工程</h4>
118
- </header>
119
- <article slot="modal-body" class="modal-body clearfix">
120
- <div class="form-group col-sm-12" :class="[$av.apply.required ? 'has-error' : '']">
121
- <label class="col-sm-3 control-label" style="line-height: 35px">选择工程:</label>
122
- <div class="col-sm-9">
123
- <input type="text" v-show="false" v-validate:apply = "['required']" v-model="checkApply.id">
124
- <v-select
125
- placeholder='请选择需要合并的工程'
126
- v-model="checkApply"
127
- :value.sync="checkApply"
128
- :options='applyList'
129
- :value-single="true"
130
- class="select select_list"
131
- :search="false"
132
- width="75%"
133
- close-on-select ></v-select>
134
- </div>
135
- </div>
136
- </article>
137
- <footer slot="modal-footer" class="modal-footer">
138
- <button type="button" class="btn btn-primary" @click="mergeApply()" :disabled='!$av.valid'>确认</button>
139
- </footer>
140
- </modal>
141
- </validator>
142
-
143
- <modal
144
- v-if="showView"
145
- :show.sync="showView"
146
- large backdrop="false"
147
- >
148
- <header slot="modal-header" class="modal-header">
149
- <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
150
- <h4 class="modal-title">详情信息</h4>
151
- </header>
152
- <article slot="modal-body" class="modal-body row clearfix">
153
- <div class="form-group col-sm-4">
154
- <label class="font_normal_body">用户姓名</label>
155
- <input type="text" class="input_search" v-model="order.f_user_name" readonly>
156
- </div>
157
- <div class="form-group col-sm-4">
158
- <label class="font_normal_body">联&ensp;系&ensp;人</label>
159
- <input type="text" class="input_search" v-model="order.f_contact" readonly>
160
- </div>
161
- <div class="form-group col-sm-4">
162
- <label class="font_normal_body">联系电话</label>
163
- <input type="text" class="input_search" v-model="order.f_phone" readonly>
164
- </div>
165
- <div class="form-group col-sm-4">
166
- <label class="font_normal_body">证件类型</label>
167
- <input type="text" class="input_search" v-model="order.f_credentials" readonly>
168
- </div>
169
- <div class="form-group col-sm-8">
170
- <label class="font_normal_body">证件号码</label>
171
- <input type="text" class="input_search" v-model="order.f_idnumber" style="width: 85%" readonly>
172
- </div>
173
- <div class="form-group col-sm-4">
174
- <label class="font_normal_body">用户类型</label>
175
- <input type="text" class="input_search" v-model="order.f_user_type" readonly>
176
- </div>
177
- <div class="form-group col-sm-4">
178
- <label class="font_normal_body">用户性质</label>
179
- <input type="text" class="input_search" v-model="order.f_user_nature" readonly>
180
- </div>
181
- <div class="form-group col-sm-4">
182
- <label class="font_normal_body">户&emsp;&emsp;数</label>
183
- <input type="text" class="input_search" v-model="order.f_apply_count" readonly>
184
- </div>
185
- <div class="form-group col-sm-4">
186
- <label class="font_normal_body">地址类型</label>
187
- <input type="text" class="input_search" v-model="order.f_address_type" readonly>
188
- </div>
189
- <div class="form-group col-sm-8">
190
- <label class="font_normal_body">详细地址</label>
191
- <input type="text" class="input_search" v-model="order.f_address" style="width: 85%" readonly>
192
- </div>
193
- <div class="form-group col-sm-4">
194
- <label class="font_normal_body">处理状态</label>
195
- <input type="text" class="input_search" v-model="order.f_orderstate" readonly>
196
- </div>
197
- <div class="form-group col-sm-4">
198
- <label class="font_normal_body">预约时间</label>
199
- <input type="text" class="input_search" v-model="order.f_orderdate" readonly>
200
- </div>
201
- <div class="form-group col-sm-12">
202
- <label class="font_normal_body">预约备注</label>
203
- <input type="text" class="input_search" style="width: 90%" v-model="order.f_orderremark" readonly>
204
- </div>
205
- <div class="form-group col-sm-4">
206
- <label class="font_normal_body">审&ensp;核&ensp;人</label>
207
- <input type="text" class="input_search" v-model="order.f_check_user" readonly>
208
- </div>
209
- <div class="form-group col-sm-4">
210
- <label class="font_normal_body">审核时间</label>
211
- <input type="text" class="input_search" v-model="order.f_check_date" readonly>
212
- </div>
213
- <div class="form-group col-sm-12">
214
- <label class="font_normal_body">审核备注</label>
215
- <input type="text" class="input_search" style="width: 90%" v-model="order.f_check_remark" readonly>
216
- </div>
217
- <div class="form-group col-sm-4">
218
- <label class="font_normal_body">处&ensp;理&ensp;人</label>
219
- <input type="text" class="input_search" v-model="order.f_process_user" readonly>
220
- </div>
221
- <div class="form-group col-sm-4">
222
- <label class="font_normal_body">处理时间</label>
223
- <input type="text" class="input_search" v-model="order.f_process_date" readonly>
224
- </div>
225
- <div class="form-group col-sm-4">
226
- <label class="font_normal_body">报建编号</label>
227
- <input type="text" class="input_search" v-model="order.f_apply_num" readonly>
228
- </div>
229
-
230
- </article>
231
- <footer slot="modal-footer" class="modal-footer">
232
- </footer>
233
- </modal>
234
- </template>
235
- <script>
236
- import Vue from 'vue'
237
- import {HttpResetClass} from 'vue-client'
238
- export default {
239
- title: '预约报建',
240
- data () {
241
- return {
242
- showtotal: false, // 控制详细信息显示
243
- showData: true,
244
- selectedData: null,
245
- showCheck: false,
246
- checkOptions: [
247
- {
248
- label: '是',
249
- value: '是'
250
- },
251
- {
252
- label: '否',
253
- value: '否'
254
- }
255
- ],
256
- check: null,
257
- checkRemark: null,
258
- showType: false,
259
- applyType: null,
260
- showModal: null,
261
- apply: {},
262
- showApply: false,
263
- applyList: [],
264
- checkApply: null,
265
- order: null,
266
- showView: false
267
- }
268
- },
269
- created () {
270
- },
271
- methods: {
272
- async mergeApply () {
273
- let data = {
274
- selectedData: this.selectedData,
275
- checkApply: this.checkApply,
276
- user: this.$login.f
277
- }
278
-
279
- let res = await this.$resetpost(
280
- `rs/logic/mergeApply`,
281
- data,
282
- {resolveMsg: null,rejectMsg: '合并工程处理失败!!!'}
283
- )
284
-
285
- this.$refs.query.search()
286
-
287
- this.$showMessage(`报建编号:${res.data.f_apply_num}`)
288
- },
289
- async mergeInitiate () {
290
- let data = {
291
- selectedData: this.selectedData,
292
- apply: this.apply,
293
- user: this.$login.f
294
- }
295
-
296
- let res = await this.$resetpost(
297
- `rs/logic/mergeInitiate`,
298
- data,
299
- {resolveMsg: null,rejectMsg: '合并发起处理失败!!!'}
300
- )
301
-
302
- this.$refs.query.search()
303
- console.log("返回的id:" + res.data.actid)
304
- console.log("返回的f_process_id:" + res.data.f_process_id)
305
- let f_process_id = res.data.f_process_id
306
- let id = res.data.actid
307
- if (f_process_id) {
308
- let data = {
309
- id: id,
310
- f_process_id: f_process_id,
311
- actorperson: 'R(销售客服部负责人)',
312
- username: this.$login.f.name,
313
- userid: this.$login.f.id
314
- }
315
- let res = await this.$resetpost(
316
- `rs/logic/addActorperson`,
317
- {data: data},
318
- {resolveMsg: null,rejectMsg: '增加操作人失败!!!'}
319
- )
320
- }
321
- this.$showMessage(`报建编号:${res.data.f_apply_num}`)
322
- },
323
- async applyinstall () {
324
- let data = {
325
- f_apply_type: this.applyType,
326
- selectedData: this.selectedData,
327
- user: this.$login.f
328
- }
329
-
330
- if (this.applyType === '散户报建') {
331
- data.defname = '用户受理'
332
- data.processname = '散户报建流程'
333
- } else if (this.applyType === '工业户报建') {
334
- data.defname = '用户受理'
335
- data.processname = '工商户报建流程'
336
- } else if (this.applyType === '商业户报建') {
337
- data.defname = '用户受理'
338
- data.processname = '工商户报建流程'
339
- } else if (this.applyType === '散户集体报建') {
340
- data.defname = '用户受理'
341
- data.processname = '散户集体报建流程'
342
- } else if (this.applyType === '开发商集体报建') {
343
- data.defname = '用户受理'
344
- data.processname = '开发商集体报建流程'
345
- } else if (this.applyType === '煤改气报建') {
346
- data.defname = '用户受理'
347
- data.processname = '散户集体报建流程'
348
- } else {
349
- this.$showMessage('暂无此类报装')
350
- return
351
- }
352
-
353
- let res = await this.$resetpost(
354
- `rs/logic/initiateOrderApply`,
355
- data,
356
- {resolveMsg: null,rejectMsg: '预约单处理失败!!!'}
357
- )
358
-
359
- this.closeModal()
360
-
361
- this.$showMessage(`共发起${res.data.total}条报建工程\n成功:${res.data.success}\n失败:${res.data.failure}`)
362
- },
363
- async checkOrder () {
364
- let data = {
365
- selectedData: this.selectedData,
366
- check: this.check,
367
- checkRemark: this.checkRemark,
368
- user: this.$login.f,
369
- f_orderstate: "待处理"
370
- }
371
-
372
- let res = await this.$resetpost(
373
- `rs/logic/apply_third_upBidding`,
374
- {data:data},
375
- {resolveMsg: null,rejectMsg: '预约单审核处理失败!!!'}
376
- )
377
-
378
- this.$refs.query.search()
379
-
380
- this.$showMessage(`审核通过!!!`)
381
- },
382
- closeModal () {
383
- this.showCheck = false
384
- this.showType = false
385
- this.showModal = false
386
- this.showApply = false
387
- this.showView = false
388
-
389
-
390
- this.check = null
391
- this.checkRemark = null
392
- this.applyType = null
393
- this.apply = null
394
- this.applyList = []
395
- this.checkApply = []
396
- this.order = []
397
- this.selectedData = null
398
- this.$refs.query.selectedData = []
399
- },
400
- },
401
- events: {
402
- 'viewOrder' (row) {
403
- this.order = row
404
-
405
- this.showView = true
406
- },
407
- async 'handleOrder' (type, selectedData) {
408
- this.selectedData = selectedData
409
-
410
- if (type === '审核') {
411
- this.showCheck = true
412
- }
413
- if (type === '批量发起') {
414
- this.$showMessage('批量发起同一类型报建工程,建议所选预约单为同一类型、性质!!!', ['confirm']).then((res) => {
415
- if (res === 'confirm') {
416
- this.showType = true
417
- }
418
- })
419
- }
420
- if (type === '合并发起') {
421
- this.apply = {
422
- f_contact: this.selectedData[0].f_contact,
423
- f_phone: this.selectedData[0].f_phone,
424
- f_apply_count: this.selectedData.length
425
- }
426
- this.showModal = true
427
- }
428
- if (type === '合并工程') {
429
- let data = {
430
- tablename: 't_apply',
431
- condition: `f_sub_state != '完工' and f_sub_state != '暂停' and f_sub_state != '终止' and f_apply_type = '散户集体报建' and f_orgid = ${this.$login.f.orgid}`
432
- }
433
- let res = await this.$resetpost(
434
- 'rs/sql/singleTable',
435
- {data: data},
436
- {resolveMsg: null, rejectMsg: '工程查询失败!!!'}
437
- )
438
-
439
- res.data.forEach(item => {
440
- this.applyList.push({
441
- 'label': `${item.f_entry_name}`,
442
- 'value': item
443
- })
444
- })
445
-
446
- this.showApply = true
447
- }
448
-
449
- },
450
- 'search' () {
451
- this.closeModal()
452
-
453
- // 关闭详细
454
- this.showtotal = false
455
- // 显示列表数据
456
- this.showData = true
457
- // 显示分页
458
- this.$refs.query.$refs.cp.pager = true
459
- // 调用查询
460
- this.$refs.query.$refs.cp.$refs.cri.search()
461
- }
462
- },
463
-
464
- watch: {
465
- }
466
- }
467
- </script>
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="basic-main">
4
+ <div :class="showData ? 'top' : 'auto'">
5
+ <order-apply-list v-ref:query :show-data="showData"></order-apply-list>
6
+ </div>
7
+ <div v-if="showtotal" style="height: 89%">
8
+ </div>
9
+ </div>
10
+ </div>
11
+
12
+ <validator name="cv">
13
+ <modal
14
+ v-if="showCheck"
15
+ :show.sync="showCheck"
16
+ backdrop="false"
17
+ >
18
+ <header slot="modal-header" class="modal-header">
19
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
20
+ <h4 class="modal-title">检查审核</h4>
21
+ </header>
22
+ <article slot="modal-body" class="modal-body clearfix">
23
+ <div class="form-group col-sm-12" :class="[$cv.check.required ? 'has-error' : '']">
24
+ <label class="col-sm-3 control-label" style="line-height: 35px">是否合格:</label>
25
+ <div class="col-sm-9">
26
+ <input type="text" v-show="false" v-validate:check = "['required']" v-model="check">
27
+ <v-select
28
+ v-model="check"
29
+ :value.sync="check"
30
+ :options='checkOptions'
31
+ :value-single="true"
32
+ class="select select_list"
33
+ :search="false"
34
+ width="75%"
35
+ close-on-select ></v-select>
36
+ </div>
37
+ </div>
38
+ <!-- <div class="form-group col-sm-12" :class="[$cv.remark.required ? 'has-error' : '']">-->
39
+ <!-- <label class="col-sm-3 control-label" style="line-height: 60px">审核备注:</label>-->
40
+ <!-- <div class="col-sm-9">-->
41
+ <!-- <textarea-->
42
+ <!-- class="form-control input_view" style="width: 75%;height: 100%"-->
43
+ <!-- rows="2" v-validate:remark = "['required']" placeholder="审核不合格内容将通知用户"-->
44
+ <!-- v-model="checkRemark" :value="checkRemark"-->
45
+ <!-- >-->
46
+ <!-- </textarea>-->
47
+ <!-- </div>-->
48
+ <!-- </div>-->
49
+ </article>
50
+ <footer slot="modal-footer" class="modal-footer">
51
+ <button type="button" class="btn btn-primary" v-if="check == '是'" @click="checkOrder()" :disabled='!$cv.valid'>确认</button>
52
+ </footer>
53
+ </modal>
54
+ </validator>
55
+
56
+ <validator name="tv">
57
+ <modal
58
+ v-if="showType"
59
+ :show.sync="showType"
60
+ backdrop="false"
61
+ >
62
+ <header slot="modal-header" class="modal-header">
63
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
64
+ <h4 class="modal-title">报建类型</h4>
65
+ </header>
66
+ <article slot="modal-body" class="modal-body clearfix">
67
+ <div class="form-group col-sm-12" :class="[$tv.type.required ? 'has-error' : '']">
68
+ <label class="col-sm-3 control-label" style="line-height: 35px">报建类型:</label>
69
+ <div class="col-sm-9">
70
+ <input type="text" v-show="false" v-validate:type = "['required']" v-model="applyType">
71
+ <v-select
72
+ placeholder='请选择需要发起的工程类型'
73
+ v-model="applyType"
74
+ :value.sync="applyType"
75
+ :options='$appdata.getParam("报建类型")'
76
+ :value-single="true"
77
+ class="select select_list"
78
+ :search="false"
79
+ width="75%"
80
+ close-on-select ></v-select>
81
+ </div>
82
+ </div>
83
+ </article>
84
+ <footer slot="modal-footer" class="modal-footer">
85
+ <button type="button" class="btn btn-primary" @click="applyinstall()" :disabled='!$tv.valid'>确认</button>
86
+ </footer>
87
+ </modal>
88
+ </validator>
89
+
90
+ <validator name="mv">
91
+ <modal
92
+ v-if="showModal"
93
+ :show.sync="showModal"
94
+ backdrop="false"
95
+ >
96
+ <header slot="modal-header" class="modal-header">
97
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
98
+ <h4 class="modal-title">报建发起</h4>
99
+ </header>
100
+ <article slot="modal-body" class="modal-body clearfix">
101
+ <div>是否确定发起报建工程吗?</div>
102
+ </article>
103
+ <footer slot="modal-footer" class="modal-footer">
104
+ <button type="button" class="btn btn-primary" @click="mergeInitiate()" :disabled='!$mv.valid'>确认</button>
105
+ </footer>
106
+ </modal>
107
+ </validator>
108
+
109
+ <validator name="av">
110
+ <modal
111
+ v-if="showApply"
112
+ :show.sync="showApply"
113
+ backdrop="false"
114
+ >
115
+ <header slot="modal-header" class="modal-header">
116
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
117
+ <h4 class="modal-title">合并工程</h4>
118
+ </header>
119
+ <article slot="modal-body" class="modal-body clearfix">
120
+ <div class="form-group col-sm-12" :class="[$av.apply.required ? 'has-error' : '']">
121
+ <label class="col-sm-3 control-label" style="line-height: 35px">选择工程:</label>
122
+ <div class="col-sm-9">
123
+ <input type="text" v-show="false" v-validate:apply = "['required']" v-model="checkApply.id">
124
+ <v-select
125
+ placeholder='请选择需要合并的工程'
126
+ v-model="checkApply"
127
+ :value.sync="checkApply"
128
+ :options='applyList'
129
+ :value-single="true"
130
+ class="select select_list"
131
+ :search="false"
132
+ width="75%"
133
+ close-on-select ></v-select>
134
+ </div>
135
+ </div>
136
+ </article>
137
+ <footer slot="modal-footer" class="modal-footer">
138
+ <button type="button" class="btn btn-primary" @click="mergeApply()" :disabled='!$av.valid'>确认</button>
139
+ </footer>
140
+ </modal>
141
+ </validator>
142
+
143
+ <modal
144
+ v-if="showView"
145
+ :show.sync="showView"
146
+ large backdrop="false"
147
+ >
148
+ <header slot="modal-header" class="modal-header">
149
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
150
+ <h4 class="modal-title">详情信息</h4>
151
+ </header>
152
+ <article slot="modal-body" class="modal-body row clearfix">
153
+ <div class="form-group col-sm-4">
154
+ <label class="font_normal_body">用户姓名</label>
155
+ <input type="text" class="input_search" v-model="order.f_user_name" readonly>
156
+ </div>
157
+ <div class="form-group col-sm-4">
158
+ <label class="font_normal_body">联&ensp;系&ensp;人</label>
159
+ <input type="text" class="input_search" v-model="order.f_contact" readonly>
160
+ </div>
161
+ <div class="form-group col-sm-4">
162
+ <label class="font_normal_body">联系电话</label>
163
+ <input type="text" class="input_search" v-model="order.f_phone" readonly>
164
+ </div>
165
+ <div class="form-group col-sm-4">
166
+ <label class="font_normal_body">证件类型</label>
167
+ <input type="text" class="input_search" v-model="order.f_credentials" readonly>
168
+ </div>
169
+ <div class="form-group col-sm-8">
170
+ <label class="font_normal_body">证件号码</label>
171
+ <input type="text" class="input_search" v-model="order.f_idnumber" style="width: 85%" readonly>
172
+ </div>
173
+ <div class="form-group col-sm-4">
174
+ <label class="font_normal_body">用户类型</label>
175
+ <input type="text" class="input_search" v-model="order.f_user_type" readonly>
176
+ </div>
177
+ <div class="form-group col-sm-4">
178
+ <label class="font_normal_body">用户性质</label>
179
+ <input type="text" class="input_search" v-model="order.f_user_nature" readonly>
180
+ </div>
181
+ <div class="form-group col-sm-4">
182
+ <label class="font_normal_body">户&emsp;&emsp;数</label>
183
+ <input type="text" class="input_search" v-model="order.f_apply_count" readonly>
184
+ </div>
185
+ <div class="form-group col-sm-4">
186
+ <label class="font_normal_body">地址类型</label>
187
+ <input type="text" class="input_search" v-model="order.f_address_type" readonly>
188
+ </div>
189
+ <div class="form-group col-sm-8">
190
+ <label class="font_normal_body">详细地址</label>
191
+ <input type="text" class="input_search" v-model="order.f_address" style="width: 85%" readonly>
192
+ </div>
193
+ <div class="form-group col-sm-4">
194
+ <label class="font_normal_body">处理状态</label>
195
+ <input type="text" class="input_search" v-model="order.f_orderstate" readonly>
196
+ </div>
197
+ <div class="form-group col-sm-4">
198
+ <label class="font_normal_body">预约时间</label>
199
+ <input type="text" class="input_search" v-model="order.f_orderdate" readonly>
200
+ </div>
201
+ <div class="form-group col-sm-12">
202
+ <label class="font_normal_body">预约备注</label>
203
+ <input type="text" class="input_search" style="width: 90%" v-model="order.f_orderremark" readonly>
204
+ </div>
205
+ <div class="form-group col-sm-4">
206
+ <label class="font_normal_body">审&ensp;核&ensp;人</label>
207
+ <input type="text" class="input_search" v-model="order.f_check_user" readonly>
208
+ </div>
209
+ <div class="form-group col-sm-4">
210
+ <label class="font_normal_body">审核时间</label>
211
+ <input type="text" class="input_search" v-model="order.f_check_date" readonly>
212
+ </div>
213
+ <div class="form-group col-sm-12">
214
+ <label class="font_normal_body">审核备注</label>
215
+ <input type="text" class="input_search" style="width: 90%" v-model="order.f_check_remark" readonly>
216
+ </div>
217
+ <div class="form-group col-sm-4">
218
+ <label class="font_normal_body">处&ensp;理&ensp;人</label>
219
+ <input type="text" class="input_search" v-model="order.f_process_user" readonly>
220
+ </div>
221
+ <div class="form-group col-sm-4">
222
+ <label class="font_normal_body">处理时间</label>
223
+ <input type="text" class="input_search" v-model="order.f_process_date" readonly>
224
+ </div>
225
+ <div class="form-group col-sm-4">
226
+ <label class="font_normal_body">报建编号</label>
227
+ <input type="text" class="input_search" v-model="order.f_apply_num" readonly>
228
+ </div>
229
+
230
+ </article>
231
+ <footer slot="modal-footer" class="modal-footer">
232
+ </footer>
233
+ </modal>
234
+ </template>
235
+ <script>
236
+ import Vue from 'vue'
237
+ import {HttpResetClass} from 'vue-client'
238
+ export default {
239
+ title: '预约报建',
240
+ data () {
241
+ return {
242
+ showtotal: false, // 控制详细信息显示
243
+ showData: true,
244
+ selectedData: null,
245
+ showCheck: false,
246
+ checkOptions: [
247
+ {
248
+ label: '是',
249
+ value: '是'
250
+ },
251
+ {
252
+ label: '否',
253
+ value: '否'
254
+ }
255
+ ],
256
+ check: null,
257
+ checkRemark: null,
258
+ showType: false,
259
+ applyType: null,
260
+ showModal: null,
261
+ apply: {},
262
+ showApply: false,
263
+ applyList: [],
264
+ checkApply: null,
265
+ order: null,
266
+ showView: false
267
+ }
268
+ },
269
+ created () {
270
+ },
271
+ methods: {
272
+ async mergeApply () {
273
+ let data = {
274
+ selectedData: this.selectedData,
275
+ checkApply: this.checkApply,
276
+ user: this.$login.f
277
+ }
278
+
279
+ let res = await this.$resetpost(
280
+ `rs/logic/mergeApply`,
281
+ data,
282
+ {resolveMsg: null,rejectMsg: '合并工程处理失败!!!'}
283
+ )
284
+
285
+ this.$refs.query.search()
286
+
287
+ this.$showMessage(`报建编号:${res.data.f_apply_num}`)
288
+ },
289
+ async mergeInitiate () {
290
+ let data = {
291
+ selectedData: this.selectedData,
292
+ apply: this.apply,
293
+ user: this.$login.f
294
+ }
295
+
296
+ let res = await this.$resetpost(
297
+ `rs/logic/mergeInitiate`,
298
+ data,
299
+ {resolveMsg: null,rejectMsg: '合并发起处理失败!!!'}
300
+ )
301
+
302
+ this.$refs.query.search()
303
+ console.log("返回的id:" + res.data.actid)
304
+ console.log("返回的f_process_id:" + res.data.f_process_id)
305
+ let f_process_id = res.data.f_process_id
306
+ let id = res.data.actid
307
+ if (f_process_id) {
308
+ let data = {
309
+ id: id,
310
+ f_process_id: f_process_id,
311
+ actorperson: 'R(销售客服部负责人)',
312
+ username: this.$login.f.name,
313
+ userid: this.$login.f.id
314
+ }
315
+ let res = await this.$resetpost(
316
+ `rs/logic/addActorperson`,
317
+ {data: data},
318
+ {resolveMsg: null,rejectMsg: '增加操作人失败!!!'}
319
+ )
320
+ }
321
+ this.$showMessage(`报建编号:${res.data.f_apply_num}`)
322
+ },
323
+ async applyinstall () {
324
+ let data = {
325
+ f_apply_type: this.applyType,
326
+ selectedData: this.selectedData,
327
+ user: this.$login.f
328
+ }
329
+
330
+ if (this.applyType === '散户报建') {
331
+ data.defname = '用户受理'
332
+ data.processname = '散户报建流程'
333
+ } else if (this.applyType === '工业户报建') {
334
+ data.defname = '用户受理'
335
+ data.processname = '工商户报建流程'
336
+ } else if (this.applyType === '商业户报建') {
337
+ data.defname = '用户受理'
338
+ data.processname = '工商户报建流程'
339
+ } else if (this.applyType === '散户集体报建') {
340
+ data.defname = '用户受理'
341
+ data.processname = '散户集体报建流程'
342
+ } else if (this.applyType === '开发商集体报建') {
343
+ data.defname = '用户受理'
344
+ data.processname = '开发商集体报建流程'
345
+ } else if (this.applyType === '煤改气报建') {
346
+ data.defname = '用户受理'
347
+ data.processname = '散户集体报建流程'
348
+ } else {
349
+ this.$showMessage('暂无此类报装')
350
+ return
351
+ }
352
+
353
+ let res = await this.$resetpost(
354
+ `rs/logic/initiateOrderApply`,
355
+ data,
356
+ {resolveMsg: null,rejectMsg: '预约单处理失败!!!'}
357
+ )
358
+
359
+ this.closeModal()
360
+
361
+ this.$showMessage(`共发起${res.data.total}条报建工程\n成功:${res.data.success}\n失败:${res.data.failure}`)
362
+ },
363
+ async checkOrder () {
364
+ let data = {
365
+ selectedData: this.selectedData,
366
+ check: this.check,
367
+ checkRemark: this.checkRemark,
368
+ user: this.$login.f,
369
+ f_orderstate: "待处理"
370
+ }
371
+
372
+ let res = await this.$resetpost(
373
+ `rs/logic/apply_third_upBidding`,
374
+ {data:data},
375
+ {resolveMsg: null,rejectMsg: '预约单审核处理失败!!!'}
376
+ )
377
+
378
+ this.$refs.query.search()
379
+
380
+ this.$showMessage(`审核通过!!!`)
381
+ },
382
+ closeModal () {
383
+ this.showCheck = false
384
+ this.showType = false
385
+ this.showModal = false
386
+ this.showApply = false
387
+ this.showView = false
388
+
389
+
390
+ this.check = null
391
+ this.checkRemark = null
392
+ this.applyType = null
393
+ this.apply = null
394
+ this.applyList = []
395
+ this.checkApply = []
396
+ this.order = []
397
+ this.selectedData = null
398
+ this.$refs.query.selectedData = []
399
+ },
400
+ },
401
+ events: {
402
+ 'viewOrder' (row) {
403
+ this.order = row
404
+
405
+ this.showView = true
406
+ },
407
+ async 'handleOrder' (type, selectedData) {
408
+ this.selectedData = selectedData
409
+
410
+ if (type === '审核') {
411
+ this.showCheck = true
412
+ }
413
+ if (type === '批量发起') {
414
+ this.$showMessage('批量发起同一类型报建工程,建议所选预约单为同一类型、性质!!!', ['confirm']).then((res) => {
415
+ if (res === 'confirm') {
416
+ this.showType = true
417
+ }
418
+ })
419
+ }
420
+ if (type === '合并发起') {
421
+ this.apply = {
422
+ f_contact: this.selectedData[0].f_contact,
423
+ f_phone: this.selectedData[0].f_phone,
424
+ f_apply_count: this.selectedData.length
425
+ }
426
+ this.showModal = true
427
+ }
428
+ if (type === '合并工程') {
429
+ let data = {
430
+ tablename: 't_apply',
431
+ condition: `f_sub_state != '完工' and f_sub_state != '暂停' and f_sub_state != '终止' and f_apply_type = '散户集体报建' and f_orgid = ${this.$login.f.orgid}`
432
+ }
433
+ let res = await this.$resetpost(
434
+ 'rs/sql/singleTable',
435
+ {data: data},
436
+ {resolveMsg: null, rejectMsg: '工程查询失败!!!'}
437
+ )
438
+
439
+ res.data.forEach(item => {
440
+ this.applyList.push({
441
+ 'label': `${item.f_entry_name}`,
442
+ 'value': item
443
+ })
444
+ })
445
+
446
+ this.showApply = true
447
+ }
448
+
449
+ },
450
+ 'search' () {
451
+ this.closeModal()
452
+
453
+ // 关闭详细
454
+ this.showtotal = false
455
+ // 显示列表数据
456
+ this.showData = true
457
+ // 显示分页
458
+ this.$refs.query.$refs.cp.pager = true
459
+ // 调用查询
460
+ this.$refs.query.$refs.cp.$refs.cri.search()
461
+ }
462
+ },
463
+
464
+ watch: {
465
+ }
466
+ }
467
+ </script>