apply-clients 3.1.53 → 3.1.56

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apply-clients",
3
- "version": "3.1.53",
3
+ "version": "3.1.56",
4
4
  "description": "报建前端模块",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -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>
@@ -447,7 +447,7 @@
447
447
  this.show_data.fields[i].label === '用气性质'
448
448
  ) {
449
449
  let http = new HttpResetClass()
450
- let condition = "f_orgid = '" + this.$login.f.orgid + "'"
450
+ let condition = "f_filialeid = '" + this.$login.f.orgid + "'"
451
451
  let res = await http.load('POST','rs/sql/applysingleTable',{data:{tablename:'t_stairprice',condition:condition}}, {resolveMsg: null, rejectMsg: null})
452
452
  for (let i = 0; i < this.show_data.fields.length; i++) {
453
453
  if (this.show_data.fields[i].label == '气价名称') {
@@ -482,7 +482,7 @@
482
482
 
483
483
  if (this.show_data.fields[i].label == '气价名称' && this.show_data.fields[i].value.length != 0) {
484
484
  let http2 = new HttpResetClass()
485
- let condition2 = "s.f_orgid = '" + this.$login.f.orgid + "'" + " and s.f_price_name = '" + this.show_data.fields[i].value + "'"
485
+ let condition2 = "s.f_filialeid = '" + this.$login.f.orgid + "'" + " and s.f_price_name = '" + this.show_data.fields[i].value + "'"
486
486
  let res2 = await http2.load('POST','rs/sql/searchGasPrice',{data:{condition:condition2}}, {resolveMsg: null, rejectMsg: null})
487
487
  console.log("气价数据:" + JSON.stringify(res2.data))
488
488
  for (let j = 0; j < this.show_data.fields.length; j++) {
@@ -490,21 +490,26 @@
490
490
  console.log("气价类型:" + res2.data[0])
491
491
  console.log("气价类型1:" + res2.data[0].f_price_type)
492
492
  this.show_data.fields[j].value = res2.data[0].f_price_type
493
+ this.show_data.f_price_type = this.show_data.fields[j].value
493
494
  console.log("气价类型2:" + this.show_data.fields[j].value)
494
495
  }
495
496
  //气价拼接
496
497
  if (this.show_data.fields[j].label == '气价') {
497
- let p = 1
498
- let resultPrice = ''
499
- for(let l = 0; l < res2.data.length; l++){
500
- resultPrice = resultPrice + res2.data[l].price + ' |'
501
- if (p == 3) {
502
- break
498
+ if(this.show_data.f_price_type == '阶梯气价'){
499
+ let p = 1
500
+ let resultPrice = ''
501
+ for(let l = 0; l < res2.data.length; l++){
502
+ resultPrice = resultPrice + res2.data[l].price + ' |'
503
+ if (p == 3) {
504
+ break
505
+ }
506
+ p++
503
507
  }
504
- p++
508
+ console.log("拼接的价格:" + resultPrice)
509
+ this.show_data.fields[j].value = resultPrice
510
+ }else {
511
+ this.show_data.fields[j].value = res2.data[0].price
505
512
  }
506
- console.log("拼接的价格:" + resultPrice)
507
- this.show_data.fields[j].value = resultPrice
508
513
  }
509
514
  if (this.show_data.fields[j].label == '用气性质') {
510
515
  this.show_data.fields[j].value = res2.data[0].f_gasproperties
@@ -684,9 +689,8 @@
684
689
  },
685
690
  // 根据小区名称获取合同编号
686
691
  async getContractNumber() {
687
- console.log("进来了没有1")
688
692
  if (this.selectdata.defname == '申请登记') {
689
-
693
+ console.log("获取合同编号")
690
694
  for (let i = 0; i < this.show_data.fields.length; i++) {
691
695
  // console.log("进来了没有2")
692
696
  // console.log("选择框的名称:" + this.show_data.fields[i].label + "---小区名称的长度:" + this.show_data.fields[i].value.length)
@@ -874,9 +878,111 @@
874
878
 
875
879
  this.$dispatch('selfsearch')
876
880
 
881
+ },
882
+ // 获取片区
883
+ async getPcd () {
884
+ let data = {
885
+ tablename: 't_pcd',
886
+ condition: `f_filialeid = '${this.$login.f.orgid}'`
887
+ }
888
+ let http = new HttpResetClass()
889
+ let res = await http.load(
890
+ 'POST',
891
+ `rs/sql/applysingleTable`,
892
+ {data: data},
893
+ {resolveMsg: null, rejectMsg: '片区查询失败!!!'}
894
+ )
895
+
896
+ let pcd = res.data.map(item => {
897
+ return {
898
+ label: item.f_pcd,
899
+ value: item.f_pcd
900
+ }
901
+ })
902
+ for (const item of this.show_data.fields) {
903
+ if (item.label === '片区') {
904
+ item.options = pcd
905
+ }
906
+ }
907
+ },
908
+ // 获取街道
909
+ async getStreet (){
910
+ let http = new HttpResetClass()
911
+ let condition = "f_filialeid = " + this.$login.f.orgid
912
+ let res = await http.load('POST','rs/logic/apply_queryArea',{data:{condition:condition}}, {resolveMsg: null, rejectMsg: null})
913
+ let street = res.data.queryStreet.map(item=>{
914
+ return {
915
+ label: item.f_street,
916
+ value: item.f_street
917
+ }
918
+ })
919
+ for (const item of this.show_data.fields) {
920
+ if (item.label === '街道') {
921
+ item.options = street
922
+ }
923
+ }
877
924
  }
878
925
  },
879
926
  events: {
927
+ async 'updateArea' (index) {
928
+ if (this.show_data.fields[index].value === '新小区') {
929
+ console.log("测试小区",index)
930
+ for (const item of this.show_data.fields) {
931
+ if (item.label === '小区') {
932
+ item.value = ''
933
+ item.hidden = true
934
+ }
935
+ if (item.label === '小区名称') {
936
+ item.value = ''
937
+ item.hidden = false
938
+ }
939
+ }
940
+ } else {
941
+ for (const item of this.show_data.fields) {
942
+ if (item.label === '小区名称') {
943
+ item.value = ''
944
+ item.hidden = true
945
+ }
946
+ if (item.label === '小区') {
947
+ item.value = ''
948
+ item.hidden = false
949
+ }
950
+ }
951
+ }
952
+ },
953
+ 'confirmBuildFiles'(index){
954
+ if (this.show_data.fields[index].value === '否') {
955
+ for (const item of this.show_data.buttons){
956
+ if (item.button_name === '提交') {
957
+ item.disabled = true
958
+ }
959
+ }
960
+ }
961
+ },
962
+ 'buildArea'(){
963
+ if(this.show_data.f_area_type === '新小区'){
964
+ // this.getPcd()
965
+ this.getStreet()
966
+ for (const item of this.show_data.fields) {
967
+ if (item.label === '县/区') {
968
+ item.required = true
969
+ item.hidden = false
970
+ }
971
+ if (item.label === '街道') {
972
+ item.required = true
973
+ item.hidden = false
974
+ }
975
+ if (item.label === '片区') {
976
+ item.required = true
977
+ item.hidden = false
978
+ }
979
+ if (item.label === '小区名称') {
980
+ item.required = true
981
+ item.hidden = false
982
+ }
983
+ }
984
+ }
985
+ },
880
986
  test(i, j){
881
987
  console.log('删除')
882
988
  console.log(i + '-----' +j)
@@ -981,6 +1087,7 @@
981
1087
  this.$refs.service_show.data.fields[index].label === '县/区' ||
982
1088
  this.$refs.service_show.data.fields[index].label === '街道' ||
983
1089
  this.$refs.service_show.data.fields[index].label === '小区' ||
1090
+ this.$refs.service_show.data.fields[index].label === '小区名称' ||
984
1091
  this.$refs.service_show.data.fields[index].label === '楼号' ||
985
1092
  this.$refs.service_show.data.fields[index].label === '单元号' ||
986
1093
  this.$refs.service_show.data.fields[index].label === '楼层' ||
@@ -998,7 +1105,7 @@
998
1105
  if (this.$refs.service_show.data.fields[i].label === '街道' && this.$refs.service_show.data.fields[i].value) {
999
1106
  address += this.$refs.service_show.data.fields[i].value
1000
1107
  }
1001
- if (this.$refs.service_show.data.fields[i].label === '小区' && this.$refs.service_show.data.fields[i].value) {
1108
+ if ((this.$refs.service_show.data.fields[i].label === '小区名称' || this.$refs.service_show.data.fields[i].label === '小区') && this.$refs.service_show.data.fields[i].value) {
1002
1109
  address += this.$refs.service_show.data.fields[i].value
1003
1110
  }
1004
1111
  if (this.$refs.service_show.data.fields[i].label === '楼号' && this.$refs.service_show.data.fields[i].value) {
@@ -1497,10 +1497,14 @@
1497
1497
  this.load();
1498
1498
  this.closeFile();
1499
1499
  let mm = '';
1500
- for(var i=0;i<res.data.msg.length;i++){
1500
+ for(let i = 0; i < res.data.msg.length; i++){
1501
1501
  mm+= `${res.data.msg[i].msg}`
1502
1502
  }
1503
- let msg = `共导入${res.data.alllength}条,失败${res.data.errorlen}条,失败信息:${mm}`
1503
+ let worry = '';
1504
+ for(let j = 0; j < res.data.worry.length; j++){
1505
+ worry += `${res.data.worry[j].msg}`
1506
+ }
1507
+ let msg = `共导入${res.data.alllength}条,失败${res.data.errorlen}条,失败信息:${mm},提醒:${worry}`
1504
1508
  if (res.data.code == 500) {
1505
1509
  this.iswork=false;
1506
1510
  msg = res.data.msg
@@ -366,6 +366,9 @@
366
366
  created () {
367
367
  // 初始化数据
368
368
  this.initializtion()
369
+ if (this.data.readyEvent) {
370
+ this.$dispatch(this.data.readyEvent)
371
+ }
369
372
  },
370
373
  methods: {
371
374
  // 按钮模态框确定
@@ -483,6 +486,10 @@
483
486
  check (index) {
484
487
  // 是否禁用按钮
485
488
  this.disableButton()
489
+ if (this.data.fields[index].onchange) {
490
+ console.log("当前onchange",this.data.fields[index].onchange)
491
+ this.$dispatch(this.data.fields[index].onchange, index)
492
+ }
486
493
 
487
494
  this.$dispatch('check', index)
488
495
  // 如果有错误信息提示走错误信息判断处理