apply-clients 3.5.6-21 → 3.5.6-23

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 (56) hide show
  1. package/build/dev-server.js +5 -5
  2. package/package.json +1 -1
  3. package/src/components/android/Process/AppServiceControl.vue +1760 -1760
  4. package/src/components/product/Function/Service/FunctionServiceControl.vue +497 -497
  5. package/src/components/product/Install/ContractCharge.vue +210 -210
  6. package/src/filiale/dingcheng/android/AppInstallationDetails.vue +477 -477
  7. package/src/filiale/dingcheng/pc/InstallationDetails.vue +607 -607
  8. package/src/filiale/fugou/android/AppAddMaterialScience.vue +444 -444
  9. package/src/filiale/fugou/android/AppAddReplacement.vue +512 -512
  10. package/src/filiale/fugou/android/AppDevicesManagement.vue +516 -516
  11. package/src/filiale/fugou/android/AppInstallationDetails.vue +541 -541
  12. package/src/filiale/fugou/android/AppZhihuanManagement.vue +242 -242
  13. package/src/filiale/fugou/pc/AddReplacement.vue +511 -511
  14. package/src/filiale/fugou/pc/ApplyChargeList.vue +554 -554
  15. package/src/filiale/fugou/pc/Applybatchdispatch.vue +754 -754
  16. package/src/filiale/fugou/pc/InstallationDetails.vue +646 -646
  17. package/src/filiale/fugou/pc/ServiceControl.vue +1741 -1741
  18. package/src/filiale/fugou/pc/addMaterialScience.vue +481 -481
  19. package/src/filiale/fugou/pc.js +19 -19
  20. package/src/filiale/gongyi/pc/addressAndUserinfoManagement.vue +187 -187
  21. package/src/filiale/gongyi/pc/chargeManagement.vue +765 -765
  22. package/src/filiale/gongyi/pc.js +25 -25
  23. package/src/filiale/hongda/pc/addMaterialScience.vue +723 -723
  24. package/src/filiale/jinhuang/android/AppAddMaterialScience.vue +635 -635
  25. package/src/filiale/jinhuang/android/AppServiceControl.vue +1842 -1842
  26. package/src/filiale/jinhuang/android.js +7 -7
  27. package/src/filiale/jinhuang/pc/Applybatchdispatch.vue +770 -770
  28. package/src/filiale/jinhuang/pc/ContractList.vue +222 -222
  29. package/src/filiale/jinhuang/pc/ExplorationSelect.vue +511 -511
  30. package/src/filiale/jinhuang/pc/ServiceControl.vue +2016 -2016
  31. package/src/filiale/jinhuang/pc/SupervisoryList.vue +478 -478
  32. package/src/filiale/jinhuang/pc/addMaterialScience.vue +638 -638
  33. package/src/filiale/jinhuang/pc.js +13 -13
  34. package/src/filiale/qianneng/pc/Applybatchdispatch.vue +786 -786
  35. package/src/filiale/qianneng/pc/ServiceControl.vue +1387 -1387
  36. package/src/filiale/ruihua/pc/ServiceControl.vue +1973 -1973
  37. package/src/filiale/shexian/android/AppServiceControl.vue +1786 -1786
  38. package/src/filiale/shexian/android/AppSign.vue +152 -152
  39. package/src/filiale/yangchunboneng/android/AppChargeManagement.vue +527 -527
  40. package/src/filiale/yangchunboneng/android/AppContractCharge.vue +222 -222
  41. package/src/filiale/yangchunboneng/android/AppInstallationMaterial.vue +1144 -1144
  42. package/src/filiale/yangchunboneng/android/AppOtherChargeList.vue +281 -281
  43. package/src/filiale/yangchunboneng/android/AppServiceControl.vue +1883 -1883
  44. package/src/filiale/yangchunboneng/android/MaterIialOne.vue +179 -176
  45. package/src/filiale/yangchunboneng/android.js +22 -22
  46. package/src/filiale/yangchunboneng/pc/ApplyUpload.vue +392 -392
  47. package/src/filiale/yangchunboneng/pc/ExplorationSelect.vue +622 -622
  48. package/src/filiale/yangchunboneng/pc/InstallInfoSelect.vue +400 -400
  49. package/src/filiale/yangchunboneng/pc/ServiceControl.vue +2118 -2118
  50. package/src/filiale/yangchunboneng/pc/SupervisoryControl.vue +141 -141
  51. package/src/filiale/yangchunboneng/pc/SupervisoryList.vue +652 -644
  52. package/src/filiale/yangchunboneng/pc/buildOrderList.vue +421 -421
  53. package/src/filiale/yangchunboneng/pc/chargeManagement.vue +1060 -1060
  54. package/src/filiale/yangchunboneng/pc/printBuildOrder.vue +175 -175
  55. package/src/filiale/yangchunboneng/pc.js +29 -29
  56. package/src/main.js +3 -3
@@ -1,400 +1,400 @@
1
- <template>
2
- <div>
3
- <criteria-paged :model="model" v-ref:cp>
4
- <criteria partial='criteria' @condition-changed='$parent.searchCondition' 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
- <res-select
10
- restype='organization'
11
- :initresid='$parent.$parent.curorgid'
12
- @res-select="$parent.$parent.getorg"
13
- is-mul="false"
14
- ></res-select>
15
- </div>
16
- <div class="form-group col-sm-3">
17
- <label class="font_normal_body">工程编号:</label>
18
- <input type="text" style="width:60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
19
- v-on:keyup.enter="$parent.$parent.search()"
20
- condition="f_apply_num like '%{}%'">
21
- </div>
22
- <div class="form-group col-sm-3">
23
- <label class="font_normal_body">客户名称:</label>
24
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
25
- v-on:keyup.enter="$parent.$parent.search()" condition="f_user_name like '%{}%'" placeholder='客户名称'>
26
- </div>
27
- <div class="form-group col-sm-3 button-range">
28
- <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
29
- <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
30
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
31
- <div
32
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
33
- @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
34
- class="button_spacing"
35
- style="float: right">
36
- </div>
37
- </div>
38
- </div>
39
- <div class="row" v-show="$parent.$parent.criteriaShow">
40
- <div class="form-group col-sm-3">
41
- <label class="font_normal_body">用户编号:</label>
42
- <input type="text" style="width:60%" class="input_search" placeholder='用户编号' v-model="model.f_userinfo_code"
43
- v-on:keyup.enter="$parent.$parent.search()"
44
- condition="f_userinfo_code like '%{}%'">
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_phone"
49
- v-on:keyup.enter="$parent.$parent.search()"
50
- condition="f_phone 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_idnumber"
55
- v-on:keyup.enter="$parent.$parent.search()"
56
- condition="f_idnumber 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_contract_number"
61
- v-on:keyup.enter="$parent.$parent.search()"
62
- condition="f_contract_number = '{}'">
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="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 class="font_normal_body">用户地址:</label>
103
- <input type="text" style="width:60%" class="input_search" placeholder='用户地址' v-model="model.f_address"
104
- v-on:keyup.enter="$parent.$parent.search()"
105
- condition="f_address like '%{}%'">
106
- </div>
107
- <div class="form-group col-sm-3">
108
- <label for="startDate" class="font_normal_body">开始时间:</label>
109
- <datepicker id="startDate" placeholder="开始日期"
110
- style="width: 60%!important;"
111
- v-model="model.startDate"
112
- :value.sync="model.startDate"
113
- :format="'yyyy-MM-dd 00:00:00'"
114
- :show-reset-button="true"
115
- condition="f_apply_date >= '{}'">
116
- </datepicker>
117
- </div>
118
- <div class="form-group col-sm-3">
119
- <label for="endDate" class="font_normal_body">结束时间:</label>
120
- <datepicker id="endDate" placeholder="结束日期"
121
- style="width: 60%!important;"
122
- v-model="model.endDate"
123
- :value.sync="model.endDate"
124
- :format="'yyyy-MM-dd 23:59:59'"
125
- :show-reset-button="true"
126
- condition="f_apply_date <= '{}'">
127
- </datepicker>
128
- </div>
129
- <div class="form-group col-sm-3">
130
- <label for="checkstart" class="font_normal_body">派工时间:</label>
131
- <datepicker id="checkstart" placeholder="开始日期"
132
- style="width: 60%!important;"
133
- v-model="model.paigongstartDate"
134
- :value.sync="model.paigongstartDate"
135
- :format="'yyyy-MM-dd 00:00:00'"
136
- :show-reset-button="true"
137
- condition="actend.finishtime >= '{}'">
138
- </datepicker>
139
- </div>
140
- <div class="form-group col-sm-3">
141
- <label for="checkend" class="font_normal_body">派工时间:</label>
142
- <datepicker id="checkend" placeholder="结束日期"
143
- style="width: 60%!important;"
144
- v-model="model.paigongendDate"
145
- :value.sync="model.paigongendDate"
146
- :format="'yyyy-MM-dd 23:59:59'"
147
- :show-reset-button="true"
148
- condition="actend.finishtime <= '{}'">
149
- </datepicker>
150
- </div>
151
- <div class="form-group col-sm-3">
152
- <label class="font_normal_body">确认收款:</label>
153
- <v-select
154
- v-model="model.confirmtotal"
155
- placeholder='确认收款'
156
- :value.sync="model.confirmtotal"
157
- :options='$parent.$parent.confirmtotals'
158
- class="select select_list"
159
- :value-single="true"
160
- close-on-select ></v-select>
161
- </div>
162
- <div class="form-group col-sm-3">
163
- <label class="font_normal_body">发起人:</label>
164
- <input type="text" style="width:60%" class="input_search" placeholder='发起人' v-model="model.f_operator"
165
- v-on:keyup.enter="$parent.$parent.search()"
166
- condition="u.f_operator like '%{}%'">
167
- </div>
168
- </div>
169
- </div>
170
- </criteria>
171
- <data-grid v-if="$parent.showData" :model="model" partial='list' v-ref:grid class="list_area table_sy">
172
- <template partial='head'>
173
- <tr class="title">
174
- <th style="white-space: nowrap;">操作</th>
175
- <th style="white-space: nowrap;">序号</th>
176
- <th style="white-space: nowrap;">工程编号</th>
177
- <th style="white-space: nowrap;">客户名称</th>
178
- <th style="white-space: nowrap;">合同编号</th>
179
- <th style="white-space: nowrap;">电话</th>
180
- <th style="white-space: nowrap;">地址</th>
181
- <th style="white-space: nowrap;">身份证号</th>
182
- <th style="white-space: nowrap;">报建类型</th>
183
- <th style="white-space: nowrap;">办理环节</th>
184
- <th style="white-space: nowrap;">流程状态</th>
185
- <th style="white-space: nowrap;">报建日期</th>
186
- <th style="white-space: nowrap;">派工时间</th>
187
- <th style="white-space: nowrap;">付款笔数</th>
188
- <th style="white-space: nowrap;">确认付款笔数</th>
189
- <th style="white-space: nowrap;">合同金额</th>
190
- <th style="white-space: nowrap;">缴费金额</th>
191
- <th style="white-space: nowrap;">发起人</th>
192
- </tr>
193
- </template>
194
- <template partial='body'>
195
- <tr>
196
- <td style="text-align: center;">
197
- <dropdown>
198
- <button @click="$parent.$parent.$parent.checkfuncs(row)" type="button" data-toggle="dropdown" style="border: 0px;background: none;">
199
- <span class="glyphicon glyphicon-th-list" style="position: inherit;"></span>
200
- </button>
201
- <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-left">
202
- <li v-for="(index,func) in $parent.$parent.$parent.funcs" v-if="$parent.$parent.$parent.$parent.showFunc(func.personexpression)">
203
- <a href="#" @click="$parent.$parent.$parent.$parent.func(func,row)">{{func.title}}</a>
204
- </li>
205
- </ul>
206
- </dropdown>
207
- </td>
208
- <td style="text-align: center;">
209
- <nobr>{{$index+1}}</nobr>
210
- </td>
211
- <td style="text-align: center;">
212
- <nobr>{{row.f_apply_num}}</nobr>
213
- </td>
214
- <td style="text-align: center;">
215
- <nobr>{{row.f_user_name}}</nobr>
216
- </td>
217
- <td style="text-align: center;">
218
- <nobr>{{row.f_contract_number}}</nobr>
219
- </td>
220
- <td style="text-align: center;">
221
- <nobr>{{row.f_phone}}</nobr>
222
- </td>
223
- <td style="text-align: center;">
224
- <nobr>{{row.f_address}}</nobr>
225
- </td>
226
- <td style="text-align: center;">
227
- <nobr>{{row.f_idnumber}}</nobr>
228
- </td>
229
- <td style="text-align: center;">
230
- <nobr>{{row.f_apply_type}}</nobr>
231
- </td>
232
- <td style="text-align: center;">
233
- <nobr>{{row.defname}}</nobr>
234
- </td>
235
- <td style="text-align: center;">
236
- <nobr>{{row.f_sub_state}}</nobr>
237
- </td>
238
- <td style="text-align: center;">
239
- <nobr>{{row.f_apply_date}}</nobr>
240
- </td>
241
- <td style="text-align: center;">
242
- <nobr>{{row.f_gongcheng_tijiao}}</nobr>
243
- </td>
244
- <td style="text-align: center;">
245
- <nobr>{{row.total}}</nobr>
246
- </td>
247
- <td style="text-align: center;">
248
- <nobr>{{row.confirmtotal}}</nobr>
249
- </td>
250
- <td style="text-align: center;">
251
- <nobr>{{row.f_contract_money}}</nobr>
252
- </td>
253
- <td style="text-align: center;">
254
- <nobr>{{row.f_charge_money}}</nobr>
255
- </td>
256
- <td style="text-align: center;">
257
- <nobr>{{row.f_operator}}</nobr>
258
- </td>
259
- </tr>
260
- </template>
261
- </data-grid>
262
- </criteria-paged>
263
- </div>
264
- </template>
265
- <script>
266
- import {PagedList} from 'vue-client'
267
- import {isEmpty} from '../../../components/Util'
268
- export default {
269
- title: '报建业务信息',
270
- props: ['showData'],
271
- data () {
272
- return {
273
- model: new PagedList('rs/sql/checkuserfunction', 20, {
274
- data: {
275
- orgid: this.$login.f.orgid
276
- }
277
- }),
278
- funcs: [], // 功能列表
279
- curorgid: [this.$login.f.orgid],
280
- applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')],
281
- defnames: [{label: '全部', value: ''}], // 流程节点
282
- confirmtotals: [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}],
283
- applyNatures: [{label: '全部', value: ''}], // 报建性质
284
- criteriaShow: false
285
- }
286
- },
287
- ready () {
288
- // 调用查询
289
- this.search()
290
- },
291
- methods: {
292
- // 查询
293
- search () {
294
- this.$dispatch('search')
295
- },
296
- searchCondition (args) {
297
- if (args.model.confirmtotal){
298
- if (args.model.confirmtotal=='是'){
299
- args.condition += ' and total = confirmtotal'
300
- }else {
301
- args.condition += ' and total > confirmtotal '
302
- }
303
- }
304
- this.model.search(args.condition, args.model)
305
- },
306
- loadPage () {
307
- this.$dispatch('loadPage')
308
- },
309
- // 获取配置
310
- async checkfuncs (row) {
311
-
312
- this.funcs = []
313
- let functions = JSON.parse(JSON.stringify(this.$function_vue.functions))
314
-
315
- for (const item of functions) {
316
- // 显示类型
317
- if (item.showApplyTypes) {
318
- if (item.showApplyTypes.indexOf(row.f_apply_type) === -1) {
319
- continue
320
- }
321
- }
322
- // 显示节点
323
- if (item.showDefnames) {
324
- if (item.showDefnames.indexOf(row.defname) === -1) {
325
- continue
326
- }
327
- }
328
- // 显示设备
329
- if (item.device && item.device !== 'pc') {
330
- continue
331
- }
332
- // if (item.device || item.device !== 'pc') {
333
- // continue
334
- // }
335
- this.funcs.push(item)
336
- }
337
- },
338
- // 点击功能操作
339
- func (func, row) {
340
- this.$dispatch('func', func, row)
341
- },
342
- // 权限控制
343
- showFunc (personexpression) {
344
-
345
- if (isEmpty(personexpression)) {
346
- return true
347
- }
348
-
349
- let mark = personexpression.charAt(0)
350
-
351
- let str = personexpression.substring(2, personexpression.length-1)
352
-
353
- if (mark === 'D' && this.$login.f.f_department_name.includes(str)) {
354
- return true
355
- }
356
- if (mark === 'R' && this.$login.f.f_role_name.includes(str)) {
357
- return true
358
- }
359
- if (mark === 'P' && this.$login.f.id.includes(str)) {
360
- return true
361
- }
362
-
363
- return false
364
- },
365
- async applyTypeChange () {
366
- if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
367
- let res = await this.$resetpost('rs/logic/getDefnameByType',
368
- { f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type },
369
- {resolveMsg: null, rejectMsg: '节点信息获取失败!!!'}
370
- )
371
-
372
- this.defnames = [{label: '全部', value: ''}, ...res.data]
373
-
374
- 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}性质`)]
375
- } else {
376
- this.defnames = [{label: '全部', value: ''}]
377
-
378
- this.applyNatures = [{label: '全部', value: ''}]
379
- }
380
- },
381
- clear () {
382
- Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
383
- this.$refs.cp.$refs.cri.model[key] = null
384
- })
385
- },
386
- getorg (val) {
387
- if (val.length <= 0) {
388
- return
389
- }
390
- this.model.params.data.orgid = val[0]
391
- }
392
- },
393
- computed: {
394
- },
395
- events: {
396
- }
397
- }
398
- </script>
399
- <style scoped>
400
- </style>
1
+ <template>
2
+ <div>
3
+ <criteria-paged :model="model" v-ref:cp>
4
+ <criteria partial='criteria' @condition-changed='$parent.searchCondition' 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
+ <res-select
10
+ restype='organization'
11
+ :initresid='$parent.$parent.curorgid'
12
+ @res-select="$parent.$parent.getorg"
13
+ is-mul="false"
14
+ ></res-select>
15
+ </div>
16
+ <div class="form-group col-sm-3">
17
+ <label class="font_normal_body">工程编号:</label>
18
+ <input type="text" style="width:60%" class="input_search" placeholder='工程编号' v-model="model.f_apply_num"
19
+ v-on:keyup.enter="$parent.$parent.search()"
20
+ condition="f_apply_num like '%{}%'">
21
+ </div>
22
+ <div class="form-group col-sm-3">
23
+ <label class="font_normal_body">客户名称:</label>
24
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
25
+ v-on:keyup.enter="$parent.$parent.search()" condition="f_user_name like '%{}%'" placeholder='客户名称'>
26
+ </div>
27
+ <div class="form-group col-sm-3 button-range">
28
+ <button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
29
+ <button class="button_search button_spacing" @click="$parent.$parent.loadPage()">返回</button>
30
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
31
+ <div
32
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
33
+ @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"
34
+ class="button_spacing"
35
+ style="float: right">
36
+ </div>
37
+ </div>
38
+ </div>
39
+ <div class="row" v-show="$parent.$parent.criteriaShow">
40
+ <div class="form-group col-sm-3">
41
+ <label class="font_normal_body">用户编号:</label>
42
+ <input type="text" style="width:60%" class="input_search" placeholder='用户编号' v-model="model.f_userinfo_code"
43
+ v-on:keyup.enter="$parent.$parent.search()"
44
+ condition="f_userinfo_code like '%{}%'">
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_phone"
49
+ v-on:keyup.enter="$parent.$parent.search()"
50
+ condition="f_phone 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_idnumber"
55
+ v-on:keyup.enter="$parent.$parent.search()"
56
+ condition="f_idnumber 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_contract_number"
61
+ v-on:keyup.enter="$parent.$parent.search()"
62
+ condition="f_contract_number = '{}'">
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="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 class="font_normal_body">用户地址:</label>
103
+ <input type="text" style="width:60%" class="input_search" placeholder='用户地址' v-model="model.f_address"
104
+ v-on:keyup.enter="$parent.$parent.search()"
105
+ condition="f_address like '%{}%'">
106
+ </div>
107
+ <div class="form-group col-sm-3">
108
+ <label for="startDate" class="font_normal_body">开始时间:</label>
109
+ <datepicker id="startDate" placeholder="开始日期"
110
+ style="width: 60%!important;"
111
+ v-model="model.startDate"
112
+ :value.sync="model.startDate"
113
+ :format="'yyyy-MM-dd 00:00:00'"
114
+ :show-reset-button="true"
115
+ condition="f_apply_date >= '{}'">
116
+ </datepicker>
117
+ </div>
118
+ <div class="form-group col-sm-3">
119
+ <label for="endDate" class="font_normal_body">结束时间:</label>
120
+ <datepicker id="endDate" placeholder="结束日期"
121
+ style="width: 60%!important;"
122
+ v-model="model.endDate"
123
+ :value.sync="model.endDate"
124
+ :format="'yyyy-MM-dd 23:59:59'"
125
+ :show-reset-button="true"
126
+ condition="f_apply_date <= '{}'">
127
+ </datepicker>
128
+ </div>
129
+ <div class="form-group col-sm-3">
130
+ <label for="checkstart" class="font_normal_body">派工时间:</label>
131
+ <datepicker id="checkstart" placeholder="开始日期"
132
+ style="width: 60%!important;"
133
+ v-model="model.paigongstartDate"
134
+ :value.sync="model.paigongstartDate"
135
+ :format="'yyyy-MM-dd 00:00:00'"
136
+ :show-reset-button="true"
137
+ condition="actend.finishtime >= '{}'">
138
+ </datepicker>
139
+ </div>
140
+ <div class="form-group col-sm-3">
141
+ <label for="checkend" class="font_normal_body">派工时间:</label>
142
+ <datepicker id="checkend" placeholder="结束日期"
143
+ style="width: 60%!important;"
144
+ v-model="model.paigongendDate"
145
+ :value.sync="model.paigongendDate"
146
+ :format="'yyyy-MM-dd 23:59:59'"
147
+ :show-reset-button="true"
148
+ condition="actend.finishtime <= '{}'">
149
+ </datepicker>
150
+ </div>
151
+ <div class="form-group col-sm-3">
152
+ <label class="font_normal_body">确认收款:</label>
153
+ <v-select
154
+ v-model="model.confirmtotal"
155
+ placeholder='确认收款'
156
+ :value.sync="model.confirmtotal"
157
+ :options='$parent.$parent.confirmtotals'
158
+ class="select select_list"
159
+ :value-single="true"
160
+ close-on-select ></v-select>
161
+ </div>
162
+ <div class="form-group col-sm-3">
163
+ <label class="font_normal_body">发起人:</label>
164
+ <input type="text" style="width:60%" class="input_search" placeholder='发起人' v-model="model.f_operator"
165
+ v-on:keyup.enter="$parent.$parent.search()"
166
+ condition="u.f_operator like '%{}%'">
167
+ </div>
168
+ </div>
169
+ </div>
170
+ </criteria>
171
+ <data-grid v-if="$parent.showData" :model="model" partial='list' v-ref:grid class="list_area table_sy">
172
+ <template partial='head'>
173
+ <tr class="title">
174
+ <th style="white-space: nowrap;">操作</th>
175
+ <th style="white-space: nowrap;">序号</th>
176
+ <th style="white-space: nowrap;">工程编号</th>
177
+ <th style="white-space: nowrap;">客户名称</th>
178
+ <th style="white-space: nowrap;">合同编号</th>
179
+ <th style="white-space: nowrap;">电话</th>
180
+ <th style="white-space: nowrap;">地址</th>
181
+ <th style="white-space: nowrap;">身份证号</th>
182
+ <th style="white-space: nowrap;">报建类型</th>
183
+ <th style="white-space: nowrap;">办理环节</th>
184
+ <th style="white-space: nowrap;">流程状态</th>
185
+ <th style="white-space: nowrap;">报建日期</th>
186
+ <th style="white-space: nowrap;">派工时间</th>
187
+ <th style="white-space: nowrap;">付款笔数</th>
188
+ <th style="white-space: nowrap;">确认付款笔数</th>
189
+ <th style="white-space: nowrap;">合同金额</th>
190
+ <th style="white-space: nowrap;">缴费金额</th>
191
+ <th style="white-space: nowrap;">发起人</th>
192
+ </tr>
193
+ </template>
194
+ <template partial='body'>
195
+ <tr>
196
+ <td style="text-align: center;">
197
+ <dropdown>
198
+ <button @click="$parent.$parent.$parent.checkfuncs(row)" type="button" data-toggle="dropdown" style="border: 0px;background: none;">
199
+ <span class="glyphicon glyphicon-th-list" style="position: inherit;"></span>
200
+ </button>
201
+ <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-left">
202
+ <li v-for="(index,func) in $parent.$parent.$parent.funcs" v-if="$parent.$parent.$parent.$parent.showFunc(func.personexpression)">
203
+ <a href="#" @click="$parent.$parent.$parent.$parent.func(func,row)">{{func.title}}</a>
204
+ </li>
205
+ </ul>
206
+ </dropdown>
207
+ </td>
208
+ <td style="text-align: center;">
209
+ <nobr>{{$index+1}}</nobr>
210
+ </td>
211
+ <td style="text-align: center;">
212
+ <nobr>{{row.f_apply_num}}</nobr>
213
+ </td>
214
+ <td style="text-align: center;">
215
+ <nobr>{{row.f_user_name}}</nobr>
216
+ </td>
217
+ <td style="text-align: center;">
218
+ <nobr>{{row.f_contract_number}}</nobr>
219
+ </td>
220
+ <td style="text-align: center;">
221
+ <nobr>{{row.f_phone}}</nobr>
222
+ </td>
223
+ <td style="text-align: center;">
224
+ <nobr>{{row.f_address}}</nobr>
225
+ </td>
226
+ <td style="text-align: center;">
227
+ <nobr>{{row.f_idnumber}}</nobr>
228
+ </td>
229
+ <td style="text-align: center;">
230
+ <nobr>{{row.f_apply_type}}</nobr>
231
+ </td>
232
+ <td style="text-align: center;">
233
+ <nobr>{{row.defname}}</nobr>
234
+ </td>
235
+ <td style="text-align: center;">
236
+ <nobr>{{row.f_sub_state}}</nobr>
237
+ </td>
238
+ <td style="text-align: center;">
239
+ <nobr>{{row.f_apply_date}}</nobr>
240
+ </td>
241
+ <td style="text-align: center;">
242
+ <nobr>{{row.f_gongcheng_tijiao}}</nobr>
243
+ </td>
244
+ <td style="text-align: center;">
245
+ <nobr>{{row.total}}</nobr>
246
+ </td>
247
+ <td style="text-align: center;">
248
+ <nobr>{{row.confirmtotal}}</nobr>
249
+ </td>
250
+ <td style="text-align: center;">
251
+ <nobr>{{row.f_contract_money}}</nobr>
252
+ </td>
253
+ <td style="text-align: center;">
254
+ <nobr>{{row.f_charge_money}}</nobr>
255
+ </td>
256
+ <td style="text-align: center;">
257
+ <nobr>{{row.f_operator}}</nobr>
258
+ </td>
259
+ </tr>
260
+ </template>
261
+ </data-grid>
262
+ </criteria-paged>
263
+ </div>
264
+ </template>
265
+ <script>
266
+ import {PagedList} from 'vue-client'
267
+ import {isEmpty} from '../../../components/Util'
268
+ export default {
269
+ title: '报建业务信息',
270
+ props: ['showData'],
271
+ data () {
272
+ return {
273
+ model: new PagedList('rs/sql/checkuserfunction', 20, {
274
+ data: {
275
+ orgid: this.$login.f.orgid
276
+ }
277
+ }),
278
+ funcs: [], // 功能列表
279
+ curorgid: [this.$login.f.orgid],
280
+ applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')],
281
+ defnames: [{label: '全部', value: ''}], // 流程节点
282
+ confirmtotals: [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}],
283
+ applyNatures: [{label: '全部', value: ''}], // 报建性质
284
+ criteriaShow: false
285
+ }
286
+ },
287
+ ready () {
288
+ // 调用查询
289
+ this.search()
290
+ },
291
+ methods: {
292
+ // 查询
293
+ search () {
294
+ this.$dispatch('search')
295
+ },
296
+ searchCondition (args) {
297
+ if (args.model.confirmtotal){
298
+ if (args.model.confirmtotal=='是'){
299
+ args.condition += ' and total = confirmtotal'
300
+ }else {
301
+ args.condition += ' and total > confirmtotal '
302
+ }
303
+ }
304
+ this.model.search(args.condition, args.model)
305
+ },
306
+ loadPage () {
307
+ this.$dispatch('loadPage')
308
+ },
309
+ // 获取配置
310
+ async checkfuncs (row) {
311
+
312
+ this.funcs = []
313
+ let functions = JSON.parse(JSON.stringify(this.$function_vue.functions))
314
+
315
+ for (const item of functions) {
316
+ // 显示类型
317
+ if (item.showApplyTypes) {
318
+ if (item.showApplyTypes.indexOf(row.f_apply_type) === -1) {
319
+ continue
320
+ }
321
+ }
322
+ // 显示节点
323
+ if (item.showDefnames) {
324
+ if (item.showDefnames.indexOf(row.defname) === -1) {
325
+ continue
326
+ }
327
+ }
328
+ // 显示设备
329
+ if (item.device && item.device !== 'pc') {
330
+ continue
331
+ }
332
+ // if (item.device || item.device !== 'pc') {
333
+ // continue
334
+ // }
335
+ this.funcs.push(item)
336
+ }
337
+ },
338
+ // 点击功能操作
339
+ func (func, row) {
340
+ this.$dispatch('func', func, row)
341
+ },
342
+ // 权限控制
343
+ showFunc (personexpression) {
344
+
345
+ if (isEmpty(personexpression)) {
346
+ return true
347
+ }
348
+
349
+ let mark = personexpression.charAt(0)
350
+
351
+ let str = personexpression.substring(2, personexpression.length-1)
352
+
353
+ if (mark === 'D' && this.$login.f.f_department_name.includes(str)) {
354
+ return true
355
+ }
356
+ if (mark === 'R' && this.$login.f.f_role_name.includes(str)) {
357
+ return true
358
+ }
359
+ if (mark === 'P' && this.$login.f.id.includes(str)) {
360
+ return true
361
+ }
362
+
363
+ return false
364
+ },
365
+ async applyTypeChange () {
366
+ if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
367
+ let res = await this.$resetpost('rs/logic/getDefnameByType',
368
+ { f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type },
369
+ {resolveMsg: null, rejectMsg: '节点信息获取失败!!!'}
370
+ )
371
+
372
+ this.defnames = [{label: '全部', value: ''}, ...res.data]
373
+
374
+ 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}性质`)]
375
+ } else {
376
+ this.defnames = [{label: '全部', value: ''}]
377
+
378
+ this.applyNatures = [{label: '全部', value: ''}]
379
+ }
380
+ },
381
+ clear () {
382
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
383
+ this.$refs.cp.$refs.cri.model[key] = null
384
+ })
385
+ },
386
+ getorg (val) {
387
+ if (val.length <= 0) {
388
+ return
389
+ }
390
+ this.model.params.data.orgid = val[0]
391
+ }
392
+ },
393
+ computed: {
394
+ },
395
+ events: {
396
+ }
397
+ }
398
+ </script>
399
+ <style scoped>
400
+ </style>