apply-clients 3.5.1 → 3.5.2

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 (44) hide show
  1. package/build/dev-server.js +142 -133
  2. package/package.json +118 -118
  3. package/src/App.vue +26 -21
  4. package/src/applyAndroid.js +58 -58
  5. package/src/components/android/AppSign.vue +152 -152
  6. package/src/components/android/AppTakePic.vue +181 -181
  7. package/src/components/android/Process/AppChargeList.vue +224 -224
  8. package/src/components/android/Process/AppExplorationUser.vue +508 -508
  9. package/src/components/product/Install/ContractCharge.vue +210 -210
  10. package/src/filiale/fugou/android/AppChargeManagement.vue +625 -625
  11. package/src/filiale/hongda/pc/FunctionServiceControl.vue +526 -525
  12. package/src/filiale/qianneng/android/AppExplorationUser.vue +441 -441
  13. package/src/filiale/qianneng/android/AppServiceControl.vue +1608 -1608
  14. package/src/filiale/qianneng/pc/Applybatchdispatch.vue +685 -685
  15. package/src/filiale/qianneng/pc/ExplorationSelect.vue +492 -492
  16. package/src/filiale/qianneng/pc/FunctionServiceControl.vue +521 -521
  17. package/src/filiale/qianneng/pc/InstallInfoSelect.vue +392 -392
  18. package/src/filiale/qianneng/pc/InstallationDetails.vue +561 -561
  19. package/src/filiale/qianneng/pc/ServiceControl.vue +1351 -1340
  20. package/src/filiale/qianneng/pc/SupervisoryList.vue +344 -344
  21. package/src/filiale/qianneng/pc/SupervisoryServiceControl.vue +871 -871
  22. package/src/filiale/qianneng/pc/chargeManagement.vue +656 -656
  23. package/src/filiale/qianneng/pc/printactivatecard.vue +295 -295
  24. package/src/filiale/qianneng/pc/supplementalAgreement.vue +344 -344
  25. package/src/filiale/yangchunboneng/android/AppAddMaterialScience.vue +390 -390
  26. package/src/filiale/yangchunboneng/android/AppChargeManagement.vue +120 -120
  27. package/src/filiale/yangchunboneng/android/AppDevicesManagement.vue +552 -552
  28. package/src/filiale/yangchunboneng/android/AppExplorationUser.vue +507 -507
  29. package/src/filiale/yangchunboneng/android/AppInstallationDetails.vue +492 -492
  30. package/src/filiale/yangchunboneng/android/AppOtherChargeManagement.vue +116 -116
  31. package/src/filiale/yangchunboneng/android/AppServiceControl.vue +1552 -1552
  32. package/src/filiale/yangchunboneng/android/AppTakePic.vue +181 -181
  33. package/src/filiale/yangchunboneng/android/chargesList.vue +170 -170
  34. package/src/filiale/yangchunboneng/android.js +16 -16
  35. package/src/filiale/yangchunboneng/pc/ExplorationSelect.vue +496 -496
  36. package/src/filiale/yangchunboneng/pc/InstallationDetails.vue +609 -609
  37. package/src/filiale/yangchunboneng/pc/ServiceControl.vue +1782 -1782
  38. package/src/filiale/yangchunboneng/pc/ServiceView.vue +1005 -1005
  39. package/src/filiale/yangchunboneng/pc/addMaterialScience.vue +374 -374
  40. package/src/filiale/yangchunboneng/pc/chargeManagement.vue +960 -960
  41. package/src/filiale/yangchunboneng/pc/devicesManagement.vue +511 -511
  42. package/src/filiale/yangchunboneng/pc/otherchargeManagement.vue +214 -214
  43. package/src/filiale/yangchunboneng/pc.js +17 -17
  44. package/src/main.js +23 -23
@@ -1,392 +1,392 @@
1
- <template>
2
- <div>
3
- <criteria-paged :model="model" v-ref:cp>
4
- <criteria partial='criteria' @condition-changed='search' v-ref:cri>
5
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
- <div class="row">
7
- <div class="form-group col-sm-3">
8
- <label class="font_normal_body">工程编号:</label>
9
- <input type="text" style="width:60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
10
- v-on:keyup.enter="$parent.$parent.search()"
11
- condition="f_apply_num like '%{}%'">
12
- </div>
13
- <div class="form-group col-sm-3">
14
- <label class="font_normal_body">客户名称:</label>
15
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
16
- v-on:keyup.enter="$parent.$parent.search()" condition="f_user_name like '%{}%'" placeholder='客户名称'>
17
- </div>
18
- <div class="form-group col-sm-3">
19
- <label class="font_normal_body">用户地址:</label>
20
- <input type="text" style="width:60%" class="input_search" placeholder='用户地址' v-model="model.f_address"
21
- v-on:keyup.enter="$parent.$parent.search()"
22
- condition="f_address like '%{}%'">
23
- </div>
24
- <div class="form-group col-sm-3 button-range">
25
- <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
26
- <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
27
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
28
- <div
29
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
30
- @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
31
- class="button_spacing"
32
- style="float: right">
33
- </div>
34
- </div>
35
- </div>
36
- <div class="row" v-show="$parent.$parent.criteriaShow">
37
- <div class="form-group col-sm-3">
38
- <label class="font_normal_body">组织机构:</label>
39
- <res-select
40
- restype='organization'
41
- :initresid='$parent.$parent.curorgid'
42
- @res-select="$parent.$parent.getorg"
43
- is-mul="false"
44
- ></res-select>
45
- </div>
46
- <div class="form-group col-sm-3">
47
- <label class="font_normal_body">用户编号:</label>
48
- <input type="text" style="width:60%" class="input_search" placeholder='用户编号' v-model="model.f_userinfo_code"
49
- v-on:keyup.enter="$parent.$parent.search()"
50
- condition="u.f_userinfo_code like '%{}%'">
51
- </div>
52
- <div class="form-group col-sm-3">
53
- <label class="font_normal_body">客户电话:</label>
54
- <input type="text" style="width:60%" class="input_search" placeholder='客户电话' v-model="model.f_phone"
55
- v-on:keyup.enter="$parent.$parent.search()"
56
- condition="u.f_phone like '%{}%'">
57
- </div>
58
- <div class="form-group col-sm-3">
59
- <label class="font_normal_body">入户证号:</label>
60
- <input type="text" style="width:60%" class="input_search" placeholder='入户证号' v-model="model.f_entry_number"
61
- v-on:keyup.enter="$parent.$parent.search()"
62
- condition="u.f_entry_number like '%{}%'">
63
- </div>
64
- <div class="form-group col-sm-3">
65
- <label class="font_normal_body">报建类型:</label>
66
- <v-select
67
- v-model="model.f_apply_type"
68
- placeholder='报建类型'
69
- condition="f_apply_type = '{}'"
70
- :value.sync="model.f_apply_type"
71
- :options='$parent.$parent.applytype'
72
- class="select select_list"
73
- :value-single="true"
74
- @change="$parent.$parent.applyTypeChange()"
75
- close-on-select ></v-select>
76
- </div>
77
- <div class="form-group col-sm-3">
78
- <label class="font_normal_body">办理环节:</label>
79
- <v-select
80
- v-model="model.defname"
81
- placeholder='办理环节'
82
- condition="act.defname = '{}'"
83
- :value.sync="model.defname"
84
- :options='$parent.$parent.defnames'
85
- class="select select_list"
86
- :value-single="true"
87
- close-on-select ></v-select>
88
- </div>
89
- <div class="form-group col-sm-3">
90
- <label class="font_normal_body">报建性质:</label>
91
- <v-select
92
- v-model="model.f_apply_nature"
93
- placeholder='报建性质'
94
- condition="f_apply_nature = '{}'"
95
- :value.sync="model.f_apply_nature"
96
- :options='$parent.$parent.applyNatures'
97
- class="select select_list"
98
- :value-single="true"
99
- close-on-select ></v-select>
100
- </div>
101
- <div class="form-group col-sm-3">
102
- <label for="startDate" class="font_normal_body">开始时间:</label>
103
- <datepicker id="startDate" placeholder="开始日期"
104
- style="width: 60%!important;"
105
- v-model="model.startDate"
106
- :value.sync="model.startDate"
107
- :format="'yyyy-MM-dd 00:00:00'"
108
- :show-reset-button="true"
109
- condition="f_apply_date >= '{}'">
110
- </datepicker>
111
- </div>
112
- <div class="form-group col-sm-3">
113
- <label for="endDate" class="font_normal_body">结束时间:</label>
114
- <datepicker id="endDate" placeholder="结束日期"
115
- style="width: 60%!important;"
116
- v-model="model.endDate"
117
- :value.sync="model.endDate"
118
- :format="'yyyy-MM-dd 23:59:59'"
119
- :show-reset-button="true"
120
- condition="f_apply_date <= '{}'">
121
- </datepicker>
122
- </div>
123
- <div class="form-group col-sm-3">
124
- <label class="font_normal_body">客户类型:</label>
125
- <v-select
126
- v-model="model.f_user_type"
127
- placeholder='客户类型'
128
- condition="f_user_type = '{}'"
129
- :value.sync="model.f_user_type"
130
- :options='$parent.$parent.usertype'
131
- class="select select_list"
132
- :value-single="true"
133
- close-on-select ></v-select>
134
- </div>
135
- <div class="form-group col-sm-3">
136
- <label class="font_normal_body">行业:</label>
137
- <input type="text" style="width:60%" class="input_search" v-model="model.f_industry"
138
- v-on:keyup.enter="$parent.$parent.search()" condition="f_industry like '%{}%'" placeholder='行业'>
139
- </div>
140
- <div class="form-group col-sm-3">
141
- <label class="font_normal_body">用气性质:</label>
142
- <v-select
143
- v-model="model.f_gas_nature"
144
- placeholder='用气性质'
145
- condition="f_gas_nature = '{}'"
146
- :value.sync="model.f_gas_nature"
147
- :options='$parent.$parent.gasNatures'
148
- class="select select_list"
149
- :value-single="true"
150
- close-on-select ></v-select>
151
- </div>
152
- </div>
153
- </div>
154
- </criteria>
155
- <data-grid v-if="$parent.showData" :model="model" partial='list' v-ref:grid class="list_area table_sy">
156
- <template partial='head'>
157
- <tr class="title">
158
- <th style="white-space: nowrap;">序号</th>
159
- <th style="white-space: nowrap;">工程编号</th>
160
- <th style="white-space: nowrap;">客户编号</th>
161
- <th style="white-space: nowrap;">客户名称</th>
162
- <th style="white-space: nowrap;">地址</th>
163
- <th style="white-space: nowrap;">电话</th>
164
- <th style="white-space: nowrap;">入户证号</th>
165
- <th style="white-space: nowrap;">来源</th>
166
- <th style="white-space: nowrap;">报建类型</th>
167
- <th style="white-space: nowrap;">办理环节</th>
168
- <th style="white-space: nowrap;">流程状态</th>
169
- <th style="white-space: nowrap;">报建日期</th>
170
- <th style="white-space: nowrap;">操作</th>
171
- </tr>
172
- </template>
173
- <template partial='body'>
174
- <tr>
175
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
176
- <nobr>{{$index+1}}</nobr>
177
- </td>
178
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
179
- <nobr>{{row.f_apply_num}}</nobr>
180
- </td>
181
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
182
- <nobr>{{row.f_userinfo_code}}</nobr>
183
- </td>
184
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
185
- <nobr>{{row.f_user_name}}</nobr>
186
- </td>
187
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
188
- <nobr>{{row.f_address}}</nobr>
189
- </td>
190
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
191
- <nobr>{{row.f_phone}}</nobr>
192
- </td>
193
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
194
- <nobr>{{row.f_entry_number}}</nobr>
195
- </td>
196
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
197
- <nobr>{{row.f_apply_source}}</nobr>
198
- </td>
199
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
200
- <nobr>{{row.f_apply_type}}</nobr>
201
- </td>
202
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
203
- <nobr>{{row.defname}}</nobr>
204
- </td>
205
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
206
- <nobr>{{row.f_sub_state}}</nobr>
207
- </td>
208
- <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
209
- <nobr>{{row.f_apply_date}}</nobr>
210
- </td>
211
- <td style="text-align: center;">
212
- <dropdown>
213
- <button @click="$parent.$parent.$parent.checkfuncs(row)" type="button" data-toggle="dropdown" style="border: 0px;background: none;">
214
- <span class="glyphicon glyphicon-th-list" style="position: inherit;"></span>
215
- </button>
216
- <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-right">
217
- <li v-for="(index,func) in $parent.$parent.$parent.funcs" v-if="$parent.$parent.$parent.$parent.showFunc(func.personexpression)">
218
- <a href="#" @click="$parent.$parent.$parent.$parent.func(func,row)">{{func.title}}</a>
219
- </li>
220
- <li v-if="row.f_apply_type !='居民团体用户报建'">
221
- <a href="#" @click="$parent.$parent.$parent.showPrintmodel1(row)" >打印派工单</a>
222
- </li>
223
- </ul>
224
- </dropdown>
225
- </td>
226
- </tr>
227
- </template>
228
- </data-grid>
229
- </criteria-paged>
230
- <modal v-if="showPrint" :show.sync="showPrint" v-ref:modal :large="true" :backdrop="false" title="打印预览">
231
- <header slot="modal-header" class="modal-header">
232
- <button type="button" class="close" @click="closePrint"><span>&times;</span></button>
233
- <h4 class="modal-title">打印预览</h4>
234
- </header>
235
- <article slot="modal-body" class="modal-body clearfix">
236
- <!--开通卡-->
237
- <apply-print-activatecard :selectdata="showdatapr" :type="type" v-ref:print></apply-print-activatecard>
238
- </article>
239
- <footer slot="modal-footer" class="modal-footer">
240
- <button type="button" class="btn btn-primary" @click="print()">打印</button>
241
- </footer>
242
- </modal>
243
- </div>
244
- </template>
245
- <script>
246
- import {PagedList} from 'vue-client'
247
- import {isEmpty} from '../../../components/Util'
248
- export default {
249
- title: '报建业务信息',
250
- props: ['showData'],
251
- data () {
252
- return {
253
- model: new PagedList('rs/sql/checkuserfunction', 20, {
254
- data: {
255
- orgid: this.$login.f.orgid
256
- }
257
- }),
258
- funcs: [], // 功能列表
259
- curorgid: [this.$login.f.orgid],
260
- applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')],
261
- defnames: [{label: '全部', value: ''}], // 流程节点
262
- gasNatures: [
263
- {label: '全部',value: ''},
264
- ...this.$appdata.getParam('用气性质')
265
- ],
266
- usertype: [{label: '全部', value: ''},{label: '民用', value: '民用'},{label: '非民用', value: '非民用'}],//客户类型
267
- applyNatures: [{label: '全部', value: ''}], // 报建性质
268
- criteriaShow: false,
269
- showPrint:false,
270
- showdatapr:{},
271
- // 打印格式
272
- type:'PRINT'
273
- }
274
- },
275
- ready () {
276
- // 调用查询
277
- this.search()
278
- },
279
- methods: {
280
- check (val) {
281
- this.$dispatch('apply', val)
282
- },
283
- // 查询
284
- search () {
285
- this.$dispatch('search')
286
- },
287
- loadPage () {
288
- this.$dispatch('loadPage')
289
- },
290
- // 获取配置
291
- async checkfuncs (row) {
292
-
293
- this.funcs = []
294
- let functions = JSON.parse(JSON.stringify(this.$function_vue.functions))
295
-
296
- for (const item of functions) {
297
- // 显示类型
298
- if (item.showApplyTypes) {
299
- if (item.showApplyTypes.indexOf(row.f_apply_type) === -1) {
300
- continue
301
- }
302
- }
303
- // 显示节点
304
- if (item.showDefnames) {
305
- if (item.showDefnames.indexOf(row.defname) === -1) {
306
- continue
307
- }
308
- }
309
- // 显示设备
310
- if (item.device && item.device !== 'pc') {
311
- continue
312
- }
313
- // if (item.device || item.device !== 'pc') {
314
- // continue
315
- // }
316
- this.funcs.push(item)
317
- }
318
- },
319
- // 点击功能操作
320
- func (func, row) {
321
- this.$dispatch('func', func, row)
322
- },
323
- // 权限控制
324
- showFunc (personexpression) {
325
-
326
- if (isEmpty(personexpression)) {
327
- return true
328
- }
329
-
330
- let mark = personexpression.charAt(0)
331
-
332
- let str = personexpression.substring(2, personexpression.length-1)
333
-
334
- if (mark === 'D' && this.$login.f.f_department_name.includes(str)) {
335
- return true
336
- }
337
- if (mark === 'R' && this.$login.f.f_role_name.includes(str)) {
338
- return true
339
- }
340
- if (mark === 'P' && this.$login.f.id.includes(str)) {
341
- return true
342
- }
343
-
344
- return false
345
- },
346
- async applyTypeChange () {
347
- if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
348
- let res = await this.$resetpost('rs/logic/getDefnameByType',
349
- { f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type },
350
- {resolveMsg: null, rejectMsg: '节点信息获取失败!!!'}
351
- )
352
-
353
- this.defnames = [{label: '全部', value: ''}, ...res.data]
354
-
355
- this.applyNatures = isEmpty(this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)) ? [{label: '全部', value: ''}] : [{label: '全部', value: ''}, ...this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)]
356
- } else {
357
- this.defnames = [{label: '全部', value: ''}]
358
-
359
- this.applyNatures = [{label: '全部', value: ''}]
360
- }
361
- },
362
- clear () {
363
- Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
364
- this.$refs.cp.$refs.cri.model[key] = null
365
- })
366
- },
367
- getorg (val) {
368
- if (val.length <= 0) {
369
- return
370
- }
371
- this.model.params.data.orgid = val[0]
372
- },
373
- showPrintmodel1 (row) {
374
- this.showPrint = true
375
- this.showdatapr = row
376
- },
377
- closePrint () {
378
- this.showPrint = false
379
- },
380
- print () {
381
- this.$refs.print.$refs.print.PrintTable()
382
- this.closePrint()
383
- }
384
- },
385
- computed: {
386
- },
387
- events: {
388
- }
389
- }
390
- </script>
391
- <style scoped>
392
- </style>
1
+ <template>
2
+ <div>
3
+ <criteria-paged :model="model" v-ref:cp>
4
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div class="form-group col-sm-3">
8
+ <label class="font_normal_body">工程编号:</label>
9
+ <input type="text" style="width:60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
10
+ v-on:keyup.enter="$parent.$parent.search()"
11
+ condition="f_apply_num like '%{}%'">
12
+ </div>
13
+ <div class="form-group col-sm-3">
14
+ <label class="font_normal_body">客户名称:</label>
15
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
16
+ v-on:keyup.enter="$parent.$parent.search()" condition="f_user_name like '%{}%'" placeholder='客户名称'>
17
+ </div>
18
+ <div class="form-group col-sm-3">
19
+ <label class="font_normal_body">用户地址:</label>
20
+ <input type="text" style="width:60%" class="input_search" placeholder='用户地址' v-model="model.f_address"
21
+ v-on:keyup.enter="$parent.$parent.search()"
22
+ condition="f_address like '%{}%'">
23
+ </div>
24
+ <div class="form-group col-sm-3 button-range">
25
+ <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
26
+ <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
27
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
28
+ <div
29
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
30
+ @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
31
+ class="button_spacing"
32
+ style="float: right">
33
+ </div>
34
+ </div>
35
+ </div>
36
+ <div class="row" v-show="$parent.$parent.criteriaShow">
37
+ <div class="form-group col-sm-3">
38
+ <label class="font_normal_body">组织机构:</label>
39
+ <res-select
40
+ restype='organization'
41
+ :initresid='$parent.$parent.curorgid'
42
+ @res-select="$parent.$parent.getorg"
43
+ is-mul="false"
44
+ ></res-select>
45
+ </div>
46
+ <div class="form-group col-sm-3">
47
+ <label class="font_normal_body">用户编号:</label>
48
+ <input type="text" style="width:60%" class="input_search" placeholder='用户编号' v-model="model.f_userinfo_code"
49
+ v-on:keyup.enter="$parent.$parent.search()"
50
+ condition="u.f_userinfo_code like '%{}%'">
51
+ </div>
52
+ <div class="form-group col-sm-3">
53
+ <label class="font_normal_body">客户电话:</label>
54
+ <input type="text" style="width:60%" class="input_search" placeholder='客户电话' v-model="model.f_phone"
55
+ v-on:keyup.enter="$parent.$parent.search()"
56
+ condition="u.f_phone like '%{}%'">
57
+ </div>
58
+ <div class="form-group col-sm-3">
59
+ <label class="font_normal_body">入户证号:</label>
60
+ <input type="text" style="width:60%" class="input_search" placeholder='入户证号' v-model="model.f_entry_number"
61
+ v-on:keyup.enter="$parent.$parent.search()"
62
+ condition="u.f_entry_number like '%{}%'">
63
+ </div>
64
+ <div class="form-group col-sm-3">
65
+ <label class="font_normal_body">报建类型:</label>
66
+ <v-select
67
+ v-model="model.f_apply_type"
68
+ placeholder='报建类型'
69
+ condition="f_apply_type = '{}'"
70
+ :value.sync="model.f_apply_type"
71
+ :options='$parent.$parent.applytype'
72
+ class="select select_list"
73
+ :value-single="true"
74
+ @change="$parent.$parent.applyTypeChange()"
75
+ close-on-select ></v-select>
76
+ </div>
77
+ <div class="form-group col-sm-3">
78
+ <label class="font_normal_body">办理环节:</label>
79
+ <v-select
80
+ v-model="model.defname"
81
+ placeholder='办理环节'
82
+ condition="act.defname = '{}'"
83
+ :value.sync="model.defname"
84
+ :options='$parent.$parent.defnames'
85
+ class="select select_list"
86
+ :value-single="true"
87
+ close-on-select ></v-select>
88
+ </div>
89
+ <div class="form-group col-sm-3">
90
+ <label class="font_normal_body">报建性质:</label>
91
+ <v-select
92
+ v-model="model.f_apply_nature"
93
+ placeholder='报建性质'
94
+ condition="f_apply_nature = '{}'"
95
+ :value.sync="model.f_apply_nature"
96
+ :options='$parent.$parent.applyNatures'
97
+ class="select select_list"
98
+ :value-single="true"
99
+ close-on-select ></v-select>
100
+ </div>
101
+ <div class="form-group col-sm-3">
102
+ <label for="startDate" class="font_normal_body">开始时间:</label>
103
+ <datepicker id="startDate" placeholder="开始日期"
104
+ style="width: 60%!important;"
105
+ v-model="model.startDate"
106
+ :value.sync="model.startDate"
107
+ :format="'yyyy-MM-dd 00:00:00'"
108
+ :show-reset-button="true"
109
+ condition="f_apply_date >= '{}'">
110
+ </datepicker>
111
+ </div>
112
+ <div class="form-group col-sm-3">
113
+ <label for="endDate" class="font_normal_body">结束时间:</label>
114
+ <datepicker id="endDate" placeholder="结束日期"
115
+ style="width: 60%!important;"
116
+ v-model="model.endDate"
117
+ :value.sync="model.endDate"
118
+ :format="'yyyy-MM-dd 23:59:59'"
119
+ :show-reset-button="true"
120
+ condition="f_apply_date <= '{}'">
121
+ </datepicker>
122
+ </div>
123
+ <div class="form-group col-sm-3">
124
+ <label class="font_normal_body">客户类型:</label>
125
+ <v-select
126
+ v-model="model.f_user_type"
127
+ placeholder='客户类型'
128
+ condition="f_user_type = '{}'"
129
+ :value.sync="model.f_user_type"
130
+ :options='$parent.$parent.usertype'
131
+ class="select select_list"
132
+ :value-single="true"
133
+ close-on-select ></v-select>
134
+ </div>
135
+ <div class="form-group col-sm-3">
136
+ <label class="font_normal_body">行业:</label>
137
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_industry"
138
+ v-on:keyup.enter="$parent.$parent.search()" condition="f_industry like '%{}%'" placeholder='行业'>
139
+ </div>
140
+ <div class="form-group col-sm-3">
141
+ <label class="font_normal_body">用气性质:</label>
142
+ <v-select
143
+ v-model="model.f_gas_nature"
144
+ placeholder='用气性质'
145
+ condition="f_gas_nature = '{}'"
146
+ :value.sync="model.f_gas_nature"
147
+ :options='$parent.$parent.gasNatures'
148
+ class="select select_list"
149
+ :value-single="true"
150
+ close-on-select ></v-select>
151
+ </div>
152
+ </div>
153
+ </div>
154
+ </criteria>
155
+ <data-grid v-if="$parent.showData" :model="model" partial='list' v-ref:grid class="list_area table_sy">
156
+ <template partial='head'>
157
+ <tr class="title">
158
+ <th style="white-space: nowrap;">序号</th>
159
+ <th style="white-space: nowrap;">工程编号</th>
160
+ <th style="white-space: nowrap;">客户编号</th>
161
+ <th style="white-space: nowrap;">客户名称</th>
162
+ <th style="white-space: nowrap;">地址</th>
163
+ <th style="white-space: nowrap;">电话</th>
164
+ <th style="white-space: nowrap;">入户证号</th>
165
+ <th style="white-space: nowrap;">来源</th>
166
+ <th style="white-space: nowrap;">报建类型</th>
167
+ <th style="white-space: nowrap;">办理环节</th>
168
+ <th style="white-space: nowrap;">流程状态</th>
169
+ <th style="white-space: nowrap;">报建日期</th>
170
+ <th style="white-space: nowrap;">操作</th>
171
+ </tr>
172
+ </template>
173
+ <template partial='body'>
174
+ <tr>
175
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
176
+ <nobr>{{$index+1}}</nobr>
177
+ </td>
178
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
179
+ <nobr>{{row.f_apply_num}}</nobr>
180
+ </td>
181
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
182
+ <nobr>{{row.f_userinfo_code}}</nobr>
183
+ </td>
184
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
185
+ <nobr>{{row.f_user_name}}</nobr>
186
+ </td>
187
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
188
+ <nobr>{{row.f_address}}</nobr>
189
+ </td>
190
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
191
+ <nobr>{{row.f_phone}}</nobr>
192
+ </td>
193
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
194
+ <nobr>{{row.f_entry_number}}</nobr>
195
+ </td>
196
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
197
+ <nobr>{{row.f_apply_source}}</nobr>
198
+ </td>
199
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
200
+ <nobr>{{row.f_apply_type}}</nobr>
201
+ </td>
202
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
203
+ <nobr>{{row.defname}}</nobr>
204
+ </td>
205
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
206
+ <nobr>{{row.f_sub_state}}</nobr>
207
+ </td>
208
+ <td @dblclick="$parent.$parent.$parent.check(row)" style="text-align: center;">
209
+ <nobr>{{row.f_apply_date}}</nobr>
210
+ </td>
211
+ <td style="text-align: center;">
212
+ <dropdown>
213
+ <button @click="$parent.$parent.$parent.checkfuncs(row)" type="button" data-toggle="dropdown" style="border: 0px;background: none;">
214
+ <span class="glyphicon glyphicon-th-list" style="position: inherit;"></span>
215
+ </button>
216
+ <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-right">
217
+ <li v-for="(index,func) in $parent.$parent.$parent.funcs" v-if="$parent.$parent.$parent.$parent.showFunc(func.personexpression)">
218
+ <a href="#" @click="$parent.$parent.$parent.$parent.func(func,row)">{{func.title}}</a>
219
+ </li>
220
+ <li v-if="row.f_apply_type !='居民团体用户报建'">
221
+ <a href="#" @click="$parent.$parent.$parent.showPrintmodel1(row)" >打印派工单</a>
222
+ </li>
223
+ </ul>
224
+ </dropdown>
225
+ </td>
226
+ </tr>
227
+ </template>
228
+ </data-grid>
229
+ </criteria-paged>
230
+ <modal v-if="showPrint" :show.sync="showPrint" v-ref:modal :large="true" :backdrop="false" title="打印预览">
231
+ <header slot="modal-header" class="modal-header">
232
+ <button type="button" class="close" @click="closePrint"><span>&times;</span></button>
233
+ <h4 class="modal-title">打印预览</h4>
234
+ </header>
235
+ <article slot="modal-body" class="modal-body clearfix">
236
+ <!--开通卡-->
237
+ <apply-print-activatecard :selectdata="showdatapr" :type="type" v-ref:print></apply-print-activatecard>
238
+ </article>
239
+ <footer slot="modal-footer" class="modal-footer">
240
+ <button type="button" class="btn btn-primary" @click="print()">打印</button>
241
+ </footer>
242
+ </modal>
243
+ </div>
244
+ </template>
245
+ <script>
246
+ import {PagedList} from 'vue-client'
247
+ import {isEmpty} from '../../../components/Util'
248
+ export default {
249
+ title: '报建业务信息',
250
+ props: ['showData'],
251
+ data () {
252
+ return {
253
+ model: new PagedList('rs/sql/checkuserfunction', 20, {
254
+ data: {
255
+ orgid: this.$login.f.orgid
256
+ }
257
+ }),
258
+ funcs: [], // 功能列表
259
+ curorgid: [this.$login.f.orgid],
260
+ applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')],
261
+ defnames: [{label: '全部', value: ''}], // 流程节点
262
+ gasNatures: [
263
+ {label: '全部',value: ''},
264
+ ...this.$appdata.getParam('用气性质')
265
+ ],
266
+ usertype: [{label: '全部', value: ''},{label: '民用', value: '民用'},{label: '非民用', value: '非民用'}],//客户类型
267
+ applyNatures: [{label: '全部', value: ''}], // 报建性质
268
+ criteriaShow: false,
269
+ showPrint:false,
270
+ showdatapr:{},
271
+ // 打印格式
272
+ type:'PRINT'
273
+ }
274
+ },
275
+ ready () {
276
+ // 调用查询
277
+ this.search()
278
+ },
279
+ methods: {
280
+ check (val) {
281
+ this.$dispatch('apply', val)
282
+ },
283
+ // 查询
284
+ search () {
285
+ this.$dispatch('search')
286
+ },
287
+ loadPage () {
288
+ this.$dispatch('loadPage')
289
+ },
290
+ // 获取配置
291
+ async checkfuncs (row) {
292
+
293
+ this.funcs = []
294
+ let functions = JSON.parse(JSON.stringify(this.$function_vue.functions))
295
+
296
+ for (const item of functions) {
297
+ // 显示类型
298
+ if (item.showApplyTypes) {
299
+ if (item.showApplyTypes.indexOf(row.f_apply_type) === -1) {
300
+ continue
301
+ }
302
+ }
303
+ // 显示节点
304
+ if (item.showDefnames) {
305
+ if (item.showDefnames.indexOf(row.defname) === -1) {
306
+ continue
307
+ }
308
+ }
309
+ // 显示设备
310
+ if (item.device && item.device !== 'pc') {
311
+ continue
312
+ }
313
+ // if (item.device || item.device !== 'pc') {
314
+ // continue
315
+ // }
316
+ this.funcs.push(item)
317
+ }
318
+ },
319
+ // 点击功能操作
320
+ func (func, row) {
321
+ this.$dispatch('func', func, row)
322
+ },
323
+ // 权限控制
324
+ showFunc (personexpression) {
325
+
326
+ if (isEmpty(personexpression)) {
327
+ return true
328
+ }
329
+
330
+ let mark = personexpression.charAt(0)
331
+
332
+ let str = personexpression.substring(2, personexpression.length-1)
333
+
334
+ if (mark === 'D' && this.$login.f.f_department_name.includes(str)) {
335
+ return true
336
+ }
337
+ if (mark === 'R' && this.$login.f.f_role_name.includes(str)) {
338
+ return true
339
+ }
340
+ if (mark === 'P' && this.$login.f.id.includes(str)) {
341
+ return true
342
+ }
343
+
344
+ return false
345
+ },
346
+ async applyTypeChange () {
347
+ if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
348
+ let res = await this.$resetpost('rs/logic/getDefnameByType',
349
+ { f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type },
350
+ {resolveMsg: null, rejectMsg: '节点信息获取失败!!!'}
351
+ )
352
+
353
+ this.defnames = [{label: '全部', value: ''}, ...res.data]
354
+
355
+ this.applyNatures = isEmpty(this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)) ? [{label: '全部', value: ''}] : [{label: '全部', value: ''}, ...this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)]
356
+ } else {
357
+ this.defnames = [{label: '全部', value: ''}]
358
+
359
+ this.applyNatures = [{label: '全部', value: ''}]
360
+ }
361
+ },
362
+ clear () {
363
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
364
+ this.$refs.cp.$refs.cri.model[key] = null
365
+ })
366
+ },
367
+ getorg (val) {
368
+ if (val.length <= 0) {
369
+ return
370
+ }
371
+ this.model.params.data.orgid = val[0]
372
+ },
373
+ showPrintmodel1 (row) {
374
+ this.showPrint = true
375
+ this.showdatapr = row
376
+ },
377
+ closePrint () {
378
+ this.showPrint = false
379
+ },
380
+ print () {
381
+ this.$refs.print.$refs.print.PrintTable()
382
+ this.closePrint()
383
+ }
384
+ },
385
+ computed: {
386
+ },
387
+ events: {
388
+ }
389
+ }
390
+ </script>
391
+ <style scoped>
392
+ </style>