sale-client 4.2.75 → 4.2.76

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 (73) hide show
  1. package/build/dev-server.js +52 -30
  2. package/index.html +7 -2
  3. package/package.json +1 -1
  4. package/src/App.vue +1 -1
  5. package/src/components/charge/business/IOTMeterCenter.vue +3 -2
  6. package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
  7. package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
  8. package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
  9. package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
  10. package/src/filiale/alashan/business/IOTMeterCenter.vue +1 -1
  11. package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
  12. package/src/filiale/bayan/ChargeList.vue +1010 -1010
  13. package/src/filiale/bayan/StockListmain.vue +543 -543
  14. package/src/filiale/bazhong/UserInfoDetailManageNew.vue +245 -245
  15. package/src/filiale/bazhong/ic_detail/ChangeMeterQueryUser.vue +370 -370
  16. package/src/filiale/bazhong/sale.js +8 -8
  17. package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
  18. package/src/filiale/fugou/IOTMeterCenter.vue +904 -0
  19. package/src/filiale/fugou/sale.js +2 -0
  20. package/src/filiale/jiaxian/IOTMeterCenter.vue +1 -1
  21. package/src/filiale/jingyang/charge/IOTMeterCenter.vue +1 -1
  22. package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
  23. package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
  24. package/src/filiale/lixianV3/components/charge/IOTMeterCenter.vue +1 -1
  25. package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
  26. package/src/filiale/qianneng/machine/IOTMeterCenter.vue +1 -1
  27. package/src/filiale/qingtongxia/IOTMeterCenter.vue +1 -1
  28. package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
  29. package/src/filiale/ronghao/CardService.js +2144 -2144
  30. package/src/filiale/ronghao/InsuranceManage.vue +58 -58
  31. package/src/filiale/ronghao/MachineChargeService.js +149 -149
  32. package/src/filiale/ronghao/NoCardMeterCenter.vue +534 -534
  33. package/src/filiale/ronghao/PaymentCode.vue +174 -174
  34. package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
  35. package/src/filiale/ronghao/PriceChangeCompensation/IotCompensation.vue +318 -318
  36. package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
  37. package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
  38. package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
  39. package/src/filiale/ronghao/Upload.vue +654 -654
  40. package/src/filiale/ronghao/cardDown.vue +1141 -1141
  41. package/src/filiale/ronghao/changemeterOperate.vue +315 -315
  42. package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
  43. package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
  44. package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
  45. package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
  46. package/src/filiale/ronghao/machineDown.vue +1176 -1176
  47. package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
  48. package/src/filiale/ronghao/specificInformation.vue +537 -537
  49. package/src/filiale/ruihua/IOTMeterCenter.vue +1 -1
  50. package/src/filiale/shimen/IOTMeterCenter.vue +1 -1
  51. package/src/filiale/shiquan/charge/IOTMeterCenter.vue +1 -1
  52. package/src/filiale/xihu/IOTMeterCenter.vue +1 -1
  53. package/src/filiale/yangchun/ChargeList.vue +954 -954
  54. package/src/filiale/yangchun/IOTMeterCenter.vue +1 -1
  55. package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
  56. package/src/filiale/zhongsheng/BlackListList.vue +293 -293
  57. package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
  58. package/src/main.js +3 -3
  59. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  60. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  61. package/.gradle/5.2.1/gc.properties +0 -0
  62. package/.gradle/8.10/checksums/checksums.lock +0 -0
  63. package/.gradle/8.10/dependencies-accessors/gc.properties +0 -0
  64. package/.gradle/8.10/executionHistory/executionHistory.bin +0 -0
  65. package/.gradle/8.10/executionHistory/executionHistory.lock +0 -0
  66. package/.gradle/8.10/fileChanges/last-build.bin +0 -0
  67. package/.gradle/8.10/fileHashes/fileHashes.bin +0 -0
  68. package/.gradle/8.10/fileHashes/fileHashes.lock +0 -0
  69. package/.gradle/8.10/gc.properties +0 -0
  70. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  71. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  72. package/.gradle/file-system.probe +0 -0
  73. package/.gradle/vcs-1/gc.properties +0 -0
@@ -1,504 +1,504 @@
1
- <template>
2
- <div>
3
- <div style="flex: 1.5" class="flex">
4
- <div class="flex">
5
- <criteria-paged :model="model" v-ref:paged @sort="sort">
6
- <criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch"
7
- v-show="$parent.searchshow">
8
- <div novalidate class="form-inline auto" partial>
9
- <!-- <div class="col-sm-2 form-group">-->
10
- <!-- <label class="font_normal_body">组织机构</label>-->
11
- <!-- <res-select :initresid='$parent.$parent.curorgid'-->
12
- <!-- @res-select="$parent.$parent.getorg"-->
13
- <!-- class="select select_list"-->
14
- <!-- restype='organization'-->
15
- <!-- style="width: 60%">-->
16
- <!-- </res-select>-->
17
- <!-- </div>-->
18
- <div class="row">
19
- <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
20
- class="form-group">
21
- <label class="font_normal_body">客户编号</label>
22
- <input type="text" class="input_search" style="width: 60%" v-model="model.f_userinfo_code"
23
- condition="f_userinfo_code = '{}'" placeholder='客户编号'>
24
- </div>
25
- <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
26
- class="form-group">
27
- <label class="font_normal_body">表&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;号</label>
28
- <input type="text" class="input_search" style="width: 60%" v-model="model.f_meternumber"
29
- condition="f_meternumber = '{}'" placeholder='表号'>
30
- </div>
31
- <div class="span" style="float:right;">
32
- <button class="button_search" @click="search()">查 询</button>
33
- <export-excel v-if="$parent.$parent.excelTable"
34
- class="auto"
35
- :data="{condition: $parent.$parent.condition,orderitem: $parent.$parent.orderitem}"
36
- :field="$parent.$parent.getfield"
37
- sqlurl="api/af-revenue/logic/saleExport" progress="saleGetExportProgress" sql-name="changemeterFiles"
38
- template-name='换表记录'
39
- :choose-col="true"></export-excel>
40
- <div
41
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
42
- @click="$parent.$parent.hidden()"
43
- class="button_spacing"
44
- style="float: right"></div>
45
- </div>
46
- </div>
47
- <div class="row" v-if="$parent.$parent.criteriaShow">
48
- <res-select-group :initres="$parent.$parent.initres" :show-component="['company','department']" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
49
- <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
50
- class="form-group">
51
- <label class="font_normal_body">客户姓名</label>
52
- <input type="text" class="input_search" style="width: 60%" v-model="model.f_user_name"
53
- condition="f_user_name = '{}'" placeholder='客户姓名'>
54
- </div>
55
- <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
56
- class="form-group">
57
- <label class="font_normal_body">有无附件</label>
58
- <v-select :disabled=false
59
- :options='$parent.$parent.pj'
60
- :value-single="true"
61
- :value.sync="model.is_has_file"
62
- close-on-select
63
- placeholder='请选择'
64
- v-model="model.is_has_file"
65
- condition="is_has_file = '{}'"
66
- search=fasle
67
- >
68
- </v-select>
69
- </div>
70
- <!-- <div-->
71
- <!-- :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"-->
72
- <!-- class="form-group">-->
73
- <!-- <label class="font_normal_body">换表编号</label>-->
74
- <!-- <input type="text" class="input_search" style="width: 60%" v-model="model.id"-->
75
- <!-- condition="id = '{}'" placeholder='用户编号'>-->
76
- <!-- </div>-->
77
- <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
78
- class="form-group">
79
- <label class="font_normal_body">气表品牌</label>
80
- <v-select id="f_meter_brand"
81
- v-model="model.f_meter_brand"
82
- placeholder='气表品牌'
83
- :value.sync="model.f_meter_brand"
84
- :options='$parent.$parent.meterbrand'
85
- condition="f_meter_brand = '{}'"
86
- close-on-select style="width: 60%"></v-select>
87
- </div>
88
- <div
89
- :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
90
- class="form-group">
91
- <label class="font_normal_body">开始日期</label>
92
- <datepicker placeholder="开始日期" v-model="model.startDate" :value.sync="model.startDate" style="width:60%"
93
- :format="'yyyy-MM-dd 00:00:00'" condition="f_operate_date >= '{}'">
94
- </datepicker>
95
- </div>
96
- <div
97
- :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
98
- class="form-group">
99
- <label class="font_normal_body">结束日期</label>
100
- <datepicker placeholder="结束日期" v-model="model.endDate" :value.sync="model.endDate" style="width:60%"
101
- :format="'yyyy-MM-dd 23:59:59'" condition="f_operate_date <= '{}'">
102
- </datepicker>
103
- </div>
104
- </div>
105
- </div>
106
-
107
- </criteria>
108
- <data-grid :model="model" v-ref:grid class="list_area table_sy" partial='list'>
109
- <template partial='head'>
110
- <tr>
111
- <th>
112
- <nobr>序号</nobr>
113
- </th>
114
- <th>
115
- <nobr>客户编号</nobr>
116
- </th>
117
- <th>
118
- <nobr>客户名称</nobr>
119
- </th>
120
- <th>
121
- <nobr>客户地址</nobr>
122
- </th>
123
- <th>
124
- <nobr>换表类型</nobr>
125
- </th>
126
- <th>
127
- <nobr>换表费</nobr>
128
- </th>
129
- <th>
130
- <nobr>换表单号</nobr>
131
- </th>
132
- <th>
133
- <nobr>旧表号</nobr>
134
- </th>
135
- <th>
136
- <nobr>新表号</nobr>
137
- </th>
138
- <th>
139
- <nobr>旧气表品牌</nobr>
140
- </th>
141
- <th>
142
- <nobr>新气表品牌</nobr>
143
- </th>
144
- <th>
145
- <nobr>旧表剩余补气量</nobr>
146
- </th>
147
- <th>
148
- <nobr>旧表具剩余金额</nobr>
149
- </th>
150
- <th>
151
- <nobr>换表原因</nobr>
152
- </th>
153
- <th>
154
- <nobr>其他备注</nobr>
155
- </th>
156
- <th>
157
- <nobr>换表人</nobr>
158
- </th>
159
- <th>
160
- <nobr>状态</nobr>
161
- </th>
162
- <th>
163
- <data-order field="f_operate_date" name="换表日期"></data-order>
164
- </th>
165
- <th>
166
- <nobr>人员</nobr>
167
- </th>
168
- <th>
169
- <nobr>部门</nobr>
170
- </th>
171
- <th>
172
- <nobr>公司</nobr>
173
- </th>
174
- <th><nobr>附件</nobr></th>
175
- </tr>
176
- </template>
177
- <template partial='body'>
178
- <td style="text-align: center;"><nobr>{{$index + 1}}</nobr></td>
179
- <td style="text-align: center;"><nobr>
180
- {{row.f_userinfo_code}}
181
- </nobr> </td>
182
- <td style="text-align: center;">
183
- <nobr>{{row.f_user_name}}</nobr>
184
- </td>
185
- <td style="text-align: center;">
186
- <nobr>{{row.f_address}}</nobr>
187
- </td>
188
- <td style="text-align: center;">
189
- <nobr>{{row.f_type}}</nobr>
190
- </td>
191
- <td style="text-align: center;">
192
- <nobr>{{row.f_changemeter_fee}}</nobr>
193
- </td>
194
- <td style="text-align: center;">
195
- <nobr>{{row.f_serial_number}}</nobr>
196
- </td>
197
- <td style="text-align: center;">
198
- <nobr>{{row.f_meternumber_old}}</nobr>
199
- </td>
200
- <td style="text-align: center;">
201
- <nobr>{{row.f_meternumber}}</nobr>
202
- </td>
203
- <td style="text-align: center;">
204
- <nobr>{{row.f_meter_brand_old}}</nobr>
205
- </td>
206
- <td style="text-align: center;">
207
- <nobr>{{row.f_meter_brand}}</nobr>
208
- </td>
209
- <td style="text-align: center;">
210
- <nobr>{{row.f_remanent_gas}}</nobr>
211
- </td>
212
- <td style="text-align: center;">
213
- <nobr>{{row.f_remanent_money}}</nobr>
214
- </td>
215
- <td style="text-align: center;">
216
- <nobr>{{row.f_comments}}</nobr>
217
- </td>
218
- <td style="text-align: center;">
219
- <nobr>{{row.f_othereason}}</nobr>
220
- </td>
221
- <td style="text-align: center;">
222
- <nobr>{{row.f_change_operator}}</nobr>
223
- </td>
224
- <td style="text-align: center;">
225
- <nobr>{{row.f_state}}</nobr>
226
- </td>
227
- <td style="text-align: center;">
228
- <nobr>{{row.f_operate_date}}</nobr>
229
- </td>
230
- <td style="text-align: center;">
231
- <nobr>{{row.f_operator}}</nobr>
232
- </td>
233
- <td style="text-align: center;">
234
- <nobr>{{row.f_depname}}</nobr>
235
- </td>
236
- <td style="text-align: center;">
237
- <nobr>{{row.f_orgname}}</nobr>
238
- </td>
239
- <td style="text-align: center;"><nobr>
240
- <button v-if="row.is_has_file=='是'" class="btn btn-link" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
241
- </nobr></td>
242
- </template>
243
- </data-grid>
244
- </criteria-paged>
245
- </div>
246
- </div>
247
- </div>
248
- </template>
249
-
250
- <script>
251
- import {PagedList} from 'vue-client'
252
- const myMap = new Map()
253
- let asyncReadyGen = async function (self) {
254
- await self.initQueryParam()
255
- }
256
- export default {
257
- 'title': '',
258
- data () {
259
- return {
260
- model: new PagedList('api/af-revenue/sql/changemeterFiles', 20, {orderitem: '"f_operate_date DESC"'}),
261
- pj: this.$appdata.getParam('是否有附件') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('是否有附件')] : [],
262
- // 控制查询条件显示
263
- searchshow: true,
264
- curorgid: [this.$login.f.orgid],
265
- criteriaShow: false,
266
- f_orgid: '',
267
- condition: '',
268
- // 排序
269
- orderitem: 'f_operate_date desc',
270
- orderFields: {
271
- f_operate_date: 'no'
272
- },
273
- // 控制样式
274
- editList: false,
275
- excelTable: true,
276
- getfield: {
277
- 'f_userinfo_code': '客户编号',
278
- 'f_user_name': '客户名称',
279
- 'f_address': '客户地址',
280
- 'f_type': '换表类型',
281
- 'f_changemeter_fee': '换表费',
282
- 'f_meternumber_old': '旧表号',
283
- 'f_meternumber': '新表号',
284
- 'f_meter_brand_old': '旧气表品牌',
285
- 'f_meter_brand': '新气表品牌',
286
- 'f_remanent_gas': '旧表剩余补气量',
287
- 'f_remanent_money': '旧表剩余金额',
288
- 'f_comments': '换表原因',
289
- 'f_othereason': '其他备注',
290
- 'f_change_operator': '换表人',
291
- 'f_state': '状态',
292
- 'f_operate_date': '换表日期',
293
- 'f_operator': '人员',
294
- 'f_depname': '所属部门',
295
- 'f_orgname': '所属公司',
296
- 'f_serial_number': '换表单号'
297
- },
298
- meterbrand: [],
299
- initres: {
300
- org: [this.$login.f.orgid],
301
- dep: [],
302
- user: []
303
- },
304
- whetherPay: [{label: '全部', value: ''}, {label: '是', value: '是'}, {label: '否', value: '否'}],
305
- da: {
306
- rows: []
307
- },
308
- f_meternumber: ''
309
- }
310
- },
311
- ready () {
312
- asyncReadyGen(this)
313
- this.search()
314
- // this.getwarehouse()
315
- },
316
- props: ['showMessage'],
317
- methods: {
318
- getorg (val) {
319
- this.f_orgid = this.$login.convertToIn(val)
320
- this.f_filialeid = val[0]
321
- },
322
- async getRes (condition, obj) {
323
- this.orgCondtionStr = condition
324
- this.orgname = obj.orgnames[0]
325
- this.depname = obj.depnames[0]
326
-
327
- },
328
- initQueryParam () {
329
- let arr = []
330
- this.$GetSaleParam.getGasbrand().forEach((item) => {
331
- let temp = {}
332
- temp.label = item.label
333
- temp.value = item.value.f_meter_brand
334
- arr.push(temp)
335
- })
336
- this.meterbrand = [{label: '全部', value: ''}, ...arr]
337
- },
338
- view (row) {
339
- this.$parent.showupload = true
340
- this.$parent.row = row
341
- },
342
- init () {
343
- this.f_meternumber = ''
344
- this.da.rows = []
345
- myMap.clear()
346
- },
347
- cancelSet () {
348
- this.showSetModal = false
349
- this.init()
350
- },
351
-
352
- jump () {
353
- this.joinshow2 = false
354
- this.showSetModal = true
355
- },
356
- async getwarehouse () {
357
-
358
- },
359
- hidden () {
360
- this.criteriaShow = !this.criteriaShow
361
- },
362
- join1 (row) {
363
- this.joinrow = row
364
- this.joinshow = true
365
- },
366
-
367
- joinclose () {
368
- this.joinshow = false
369
- },
370
- joinclose2 () {
371
- this.joinshow2 = false
372
- },
373
-
374
- sort (field, rule) {
375
- // 将所有排序方式设为不排序,实现相互排斥
376
- for (let key in this.orderFields) {
377
- if (key === field) {
378
- this.orderFields[key] = rule
379
- } else {
380
- this.orderFields[key] = 'no'
381
- }
382
- }
383
- // 如果新规则不排序,还原为默认排序
384
- if (rule === 'no') {
385
- this.model.paramSource.orderitem = `'${this.orderitem}'`
386
- } else {
387
- this.model.paramSource.orderitem = `'${field} ${rule}'`
388
- }
389
-
390
- this.search()
391
- },
392
- search () {
393
- this.$refs.paged.$refs.criteria.search()
394
- },
395
- importFile () {
396
- this.show = true
397
- },
398
- selfSearch (args) {
399
- if (!this.f_orgid) {
400
- this.getorg([this.$login.f.orgid])
401
- }
402
- console.log('查询。。。', this.f_orgid)
403
- if (!this.orgCondtionStr) {
404
- args.condition = `${args.condition}` + ' and f_orgid = ' + this.$login.f.orgid
405
- } else {
406
- args.condition = `${args.condition}` + this.orgCondtionStr
407
- }
408
- this.model.search(args.condition, args.model)
409
- this.condition = args.condition
410
- },
411
- mergeRowData (joinrows) {
412
-
413
- },
414
- // 多选框初始化
415
- selectInit () {
416
- this.rowsdata = []
417
- this.all = []
418
- this.radio = []
419
- },
420
- select () {
421
- let index = this.model1.pageIndex - 1
422
- console.log('全选', this.all[index])
423
- if (!this.radio[index]) {
424
- this.radio.$set(index, [])
425
- }
426
- if (this.all[index]) {
427
- // 数据
428
- this.rowsdata[index] = Object.assign([], this.model1.rows)
429
- // 勾选
430
- for (var i = 0; i < this.model1.rows.length; i++) {
431
- this.radio[index].$set(i, true)
432
- }
433
- } else {
434
- // 数据
435
- this.rowsdata[index] = []
436
- // 不勾选
437
- for (var i = 0; i < this.model1.rows.length; i++) {
438
- this.radio[index].$set(i, false)
439
- }
440
- }
441
- },
442
- selectOne (event, row, i) {
443
- console.log('单选', event.target.checked)
444
- let index = this.model1.pageIndex - 1
445
- if (!this.rowsdata[index]) {
446
- this.rowsdata[index] = []
447
- }
448
- if (!this.radio[index]) {
449
- this.radio.$set(index, [])
450
- }
451
- if (event.target.checked) {
452
- // 数据
453
- this.rowsdata[index][i] = row
454
- // 勾选
455
- this.radio[index].$set(i, true)
456
- // 判断是否全部选中
457
- var allState = true
458
- if (this.model1.rows.length != this.radio[index].length) {
459
- allState = false
460
- }
461
- for (var state of this.radio[index]) {
462
- if (!state) {
463
- allState = false
464
- }
465
- }
466
- if (allState) {
467
- this.all.$set(index, true)
468
- } else {
469
- this.all.$set(index, false)
470
- }
471
- } else {
472
- // 数据
473
- this.rowsdata[index][i] = []
474
- // 不勾选
475
- this.radio[index].$set(i, false)
476
- // 任意取消一个则全选状态设为false
477
- this.all.$set(index, false)
478
- }
479
- }
480
- },
481
- computed: {
482
- ischecked () {
483
- return function (index, i) {
484
- // console.log("计算属性")
485
- if (!this.radio[index]) {
486
- return false
487
- }
488
- return this.radio[index][i]
489
- }
490
- },
491
- distributionstate () {
492
- return [{label: '全部', value: ''}, {label: '待分配', value: 'is null'}, {label: '已入库', value: 'is not null'}]
493
- }
494
- }
495
- }
496
- </script>
497
- <style>
498
- .datapanel {
499
- color: #333;
500
- background-color: white;
501
- padding: 10px 20px;
502
- border-radius: 15px;
503
- }
504
- </style>
1
+ <template>
2
+ <div>
3
+ <div style="flex: 1.5" class="flex">
4
+ <div class="flex">
5
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
6
+ <criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch"
7
+ v-show="$parent.searchshow">
8
+ <div novalidate class="form-inline auto" partial>
9
+ <!-- <div class="col-sm-2 form-group">-->
10
+ <!-- <label class="font_normal_body">组织机构</label>-->
11
+ <!-- <res-select :initresid='$parent.$parent.curorgid'-->
12
+ <!-- @res-select="$parent.$parent.getorg"-->
13
+ <!-- class="select select_list"-->
14
+ <!-- restype='organization'-->
15
+ <!-- style="width: 60%">-->
16
+ <!-- </res-select>-->
17
+ <!-- </div>-->
18
+ <div class="row">
19
+ <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
20
+ class="form-group">
21
+ <label class="font_normal_body">客户编号</label>
22
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_userinfo_code"
23
+ condition="f_userinfo_code = '{}'" placeholder='客户编号'>
24
+ </div>
25
+ <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
26
+ class="form-group">
27
+ <label class="font_normal_body">表&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;号</label>
28
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_meternumber"
29
+ condition="f_meternumber = '{}'" placeholder='表号'>
30
+ </div>
31
+ <div class="span" style="float:right;">
32
+ <button class="button_search" @click="search()">查 询</button>
33
+ <export-excel v-if="$parent.$parent.excelTable"
34
+ class="auto"
35
+ :data="{condition: $parent.$parent.condition,orderitem: $parent.$parent.orderitem}"
36
+ :field="$parent.$parent.getfield"
37
+ sqlurl="api/af-revenue/logic/saleExport" progress="saleGetExportProgress" sql-name="changemeterFiles"
38
+ template-name='换表记录'
39
+ :choose-col="true"></export-excel>
40
+ <div
41
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
42
+ @click="$parent.$parent.hidden()"
43
+ class="button_spacing"
44
+ style="float: right"></div>
45
+ </div>
46
+ </div>
47
+ <div class="row" v-if="$parent.$parent.criteriaShow">
48
+ <res-select-group :initres="$parent.$parent.initres" :show-component="['company','department']" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
49
+ <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
50
+ class="form-group">
51
+ <label class="font_normal_body">客户姓名</label>
52
+ <input type="text" class="input_search" style="width: 60%" v-model="model.f_user_name"
53
+ condition="f_user_name = '{}'" placeholder='客户姓名'>
54
+ </div>
55
+ <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
56
+ class="form-group">
57
+ <label class="font_normal_body">有无附件</label>
58
+ <v-select :disabled=false
59
+ :options='$parent.$parent.pj'
60
+ :value-single="true"
61
+ :value.sync="model.is_has_file"
62
+ close-on-select
63
+ placeholder='请选择'
64
+ v-model="model.is_has_file"
65
+ condition="is_has_file = '{}'"
66
+ search=fasle
67
+ >
68
+ </v-select>
69
+ </div>
70
+ <!-- <div-->
71
+ <!-- :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"-->
72
+ <!-- class="form-group">-->
73
+ <!-- <label class="font_normal_body">换表编号</label>-->
74
+ <!-- <input type="text" class="input_search" style="width: 60%" v-model="model.id"-->
75
+ <!-- condition="id = '{}'" placeholder='用户编号'>-->
76
+ <!-- </div>-->
77
+ <div :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
78
+ class="form-group">
79
+ <label class="font_normal_body">气表品牌</label>
80
+ <v-select id="f_meter_brand"
81
+ v-model="model.f_meter_brand"
82
+ placeholder='气表品牌'
83
+ :value.sync="model.f_meter_brand"
84
+ :options='$parent.$parent.meterbrand'
85
+ condition="f_meter_brand = '{}'"
86
+ close-on-select style="width: 60%"></v-select>
87
+ </div>
88
+ <div
89
+ :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
90
+ class="form-group">
91
+ <label class="font_normal_body">开始日期</label>
92
+ <datepicker placeholder="开始日期" v-model="model.startDate" :value.sync="model.startDate" style="width:60%"
93
+ :format="'yyyy-MM-dd 00:00:00'" condition="f_operate_date >= '{}'">
94
+ </datepicker>
95
+ </div>
96
+ <div
97
+ :class="{'col-sm-2':!$parent.$parent.editList,'col-sm-4':$parent.$parent.editList}"
98
+ class="form-group">
99
+ <label class="font_normal_body">结束日期</label>
100
+ <datepicker placeholder="结束日期" v-model="model.endDate" :value.sync="model.endDate" style="width:60%"
101
+ :format="'yyyy-MM-dd 23:59:59'" condition="f_operate_date <= '{}'">
102
+ </datepicker>
103
+ </div>
104
+ </div>
105
+ </div>
106
+
107
+ </criteria>
108
+ <data-grid :model="model" v-ref:grid class="list_area table_sy" partial='list'>
109
+ <template partial='head'>
110
+ <tr>
111
+ <th>
112
+ <nobr>序号</nobr>
113
+ </th>
114
+ <th>
115
+ <nobr>客户编号</nobr>
116
+ </th>
117
+ <th>
118
+ <nobr>客户名称</nobr>
119
+ </th>
120
+ <th>
121
+ <nobr>客户地址</nobr>
122
+ </th>
123
+ <th>
124
+ <nobr>换表类型</nobr>
125
+ </th>
126
+ <th>
127
+ <nobr>换表费</nobr>
128
+ </th>
129
+ <th>
130
+ <nobr>换表单号</nobr>
131
+ </th>
132
+ <th>
133
+ <nobr>旧表号</nobr>
134
+ </th>
135
+ <th>
136
+ <nobr>新表号</nobr>
137
+ </th>
138
+ <th>
139
+ <nobr>旧气表品牌</nobr>
140
+ </th>
141
+ <th>
142
+ <nobr>新气表品牌</nobr>
143
+ </th>
144
+ <th>
145
+ <nobr>旧表剩余补气量</nobr>
146
+ </th>
147
+ <th>
148
+ <nobr>旧表具剩余金额</nobr>
149
+ </th>
150
+ <th>
151
+ <nobr>换表原因</nobr>
152
+ </th>
153
+ <th>
154
+ <nobr>其他备注</nobr>
155
+ </th>
156
+ <th>
157
+ <nobr>换表人</nobr>
158
+ </th>
159
+ <th>
160
+ <nobr>状态</nobr>
161
+ </th>
162
+ <th>
163
+ <data-order field="f_operate_date" name="换表日期"></data-order>
164
+ </th>
165
+ <th>
166
+ <nobr>人员</nobr>
167
+ </th>
168
+ <th>
169
+ <nobr>部门</nobr>
170
+ </th>
171
+ <th>
172
+ <nobr>公司</nobr>
173
+ </th>
174
+ <th><nobr>附件</nobr></th>
175
+ </tr>
176
+ </template>
177
+ <template partial='body'>
178
+ <td style="text-align: center;"><nobr>{{$index + 1}}</nobr></td>
179
+ <td style="text-align: center;"><nobr>
180
+ {{row.f_userinfo_code}}
181
+ </nobr> </td>
182
+ <td style="text-align: center;">
183
+ <nobr>{{row.f_user_name}}</nobr>
184
+ </td>
185
+ <td style="text-align: center;">
186
+ <nobr>{{row.f_address}}</nobr>
187
+ </td>
188
+ <td style="text-align: center;">
189
+ <nobr>{{row.f_type}}</nobr>
190
+ </td>
191
+ <td style="text-align: center;">
192
+ <nobr>{{row.f_changemeter_fee}}</nobr>
193
+ </td>
194
+ <td style="text-align: center;">
195
+ <nobr>{{row.f_serial_number}}</nobr>
196
+ </td>
197
+ <td style="text-align: center;">
198
+ <nobr>{{row.f_meternumber_old}}</nobr>
199
+ </td>
200
+ <td style="text-align: center;">
201
+ <nobr>{{row.f_meternumber}}</nobr>
202
+ </td>
203
+ <td style="text-align: center;">
204
+ <nobr>{{row.f_meter_brand_old}}</nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_meter_brand}}</nobr>
208
+ </td>
209
+ <td style="text-align: center;">
210
+ <nobr>{{row.f_remanent_gas}}</nobr>
211
+ </td>
212
+ <td style="text-align: center;">
213
+ <nobr>{{row.f_remanent_money}}</nobr>
214
+ </td>
215
+ <td style="text-align: center;">
216
+ <nobr>{{row.f_comments}}</nobr>
217
+ </td>
218
+ <td style="text-align: center;">
219
+ <nobr>{{row.f_othereason}}</nobr>
220
+ </td>
221
+ <td style="text-align: center;">
222
+ <nobr>{{row.f_change_operator}}</nobr>
223
+ </td>
224
+ <td style="text-align: center;">
225
+ <nobr>{{row.f_state}}</nobr>
226
+ </td>
227
+ <td style="text-align: center;">
228
+ <nobr>{{row.f_operate_date}}</nobr>
229
+ </td>
230
+ <td style="text-align: center;">
231
+ <nobr>{{row.f_operator}}</nobr>
232
+ </td>
233
+ <td style="text-align: center;">
234
+ <nobr>{{row.f_depname}}</nobr>
235
+ </td>
236
+ <td style="text-align: center;">
237
+ <nobr>{{row.f_orgname}}</nobr>
238
+ </td>
239
+ <td style="text-align: center;"><nobr>
240
+ <button v-if="row.is_has_file=='是'" class="btn btn-link" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
241
+ </nobr></td>
242
+ </template>
243
+ </data-grid>
244
+ </criteria-paged>
245
+ </div>
246
+ </div>
247
+ </div>
248
+ </template>
249
+
250
+ <script>
251
+ import {PagedList} from 'vue-client'
252
+ const myMap = new Map()
253
+ let asyncReadyGen = async function (self) {
254
+ await self.initQueryParam()
255
+ }
256
+ export default {
257
+ 'title': '',
258
+ data () {
259
+ return {
260
+ model: new PagedList('api/af-revenue/sql/changemeterFiles', 20, {orderitem: '"f_operate_date DESC"'}),
261
+ pj: this.$appdata.getParam('是否有附件') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('是否有附件')] : [],
262
+ // 控制查询条件显示
263
+ searchshow: true,
264
+ curorgid: [this.$login.f.orgid],
265
+ criteriaShow: false,
266
+ f_orgid: '',
267
+ condition: '',
268
+ // 排序
269
+ orderitem: 'f_operate_date desc',
270
+ orderFields: {
271
+ f_operate_date: 'no'
272
+ },
273
+ // 控制样式
274
+ editList: false,
275
+ excelTable: true,
276
+ getfield: {
277
+ 'f_userinfo_code': '客户编号',
278
+ 'f_user_name': '客户名称',
279
+ 'f_address': '客户地址',
280
+ 'f_type': '换表类型',
281
+ 'f_changemeter_fee': '换表费',
282
+ 'f_meternumber_old': '旧表号',
283
+ 'f_meternumber': '新表号',
284
+ 'f_meter_brand_old': '旧气表品牌',
285
+ 'f_meter_brand': '新气表品牌',
286
+ 'f_remanent_gas': '旧表剩余补气量',
287
+ 'f_remanent_money': '旧表剩余金额',
288
+ 'f_comments': '换表原因',
289
+ 'f_othereason': '其他备注',
290
+ 'f_change_operator': '换表人',
291
+ 'f_state': '状态',
292
+ 'f_operate_date': '换表日期',
293
+ 'f_operator': '人员',
294
+ 'f_depname': '所属部门',
295
+ 'f_orgname': '所属公司',
296
+ 'f_serial_number': '换表单号'
297
+ },
298
+ meterbrand: [],
299
+ initres: {
300
+ org: [this.$login.f.orgid],
301
+ dep: [],
302
+ user: []
303
+ },
304
+ whetherPay: [{label: '全部', value: ''}, {label: '是', value: '是'}, {label: '否', value: '否'}],
305
+ da: {
306
+ rows: []
307
+ },
308
+ f_meternumber: ''
309
+ }
310
+ },
311
+ ready () {
312
+ asyncReadyGen(this)
313
+ this.search()
314
+ // this.getwarehouse()
315
+ },
316
+ props: ['showMessage'],
317
+ methods: {
318
+ getorg (val) {
319
+ this.f_orgid = this.$login.convertToIn(val)
320
+ this.f_filialeid = val[0]
321
+ },
322
+ async getRes (condition, obj) {
323
+ this.orgCondtionStr = condition
324
+ this.orgname = obj.orgnames[0]
325
+ this.depname = obj.depnames[0]
326
+
327
+ },
328
+ initQueryParam () {
329
+ let arr = []
330
+ this.$GetSaleParam.getGasbrand().forEach((item) => {
331
+ let temp = {}
332
+ temp.label = item.label
333
+ temp.value = item.value.f_meter_brand
334
+ arr.push(temp)
335
+ })
336
+ this.meterbrand = [{label: '全部', value: ''}, ...arr]
337
+ },
338
+ view (row) {
339
+ this.$parent.showupload = true
340
+ this.$parent.row = row
341
+ },
342
+ init () {
343
+ this.f_meternumber = ''
344
+ this.da.rows = []
345
+ myMap.clear()
346
+ },
347
+ cancelSet () {
348
+ this.showSetModal = false
349
+ this.init()
350
+ },
351
+
352
+ jump () {
353
+ this.joinshow2 = false
354
+ this.showSetModal = true
355
+ },
356
+ async getwarehouse () {
357
+
358
+ },
359
+ hidden () {
360
+ this.criteriaShow = !this.criteriaShow
361
+ },
362
+ join1 (row) {
363
+ this.joinrow = row
364
+ this.joinshow = true
365
+ },
366
+
367
+ joinclose () {
368
+ this.joinshow = false
369
+ },
370
+ joinclose2 () {
371
+ this.joinshow2 = false
372
+ },
373
+
374
+ sort (field, rule) {
375
+ // 将所有排序方式设为不排序,实现相互排斥
376
+ for (let key in this.orderFields) {
377
+ if (key === field) {
378
+ this.orderFields[key] = rule
379
+ } else {
380
+ this.orderFields[key] = 'no'
381
+ }
382
+ }
383
+ // 如果新规则不排序,还原为默认排序
384
+ if (rule === 'no') {
385
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
386
+ } else {
387
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
388
+ }
389
+
390
+ this.search()
391
+ },
392
+ search () {
393
+ this.$refs.paged.$refs.criteria.search()
394
+ },
395
+ importFile () {
396
+ this.show = true
397
+ },
398
+ selfSearch (args) {
399
+ if (!this.f_orgid) {
400
+ this.getorg([this.$login.f.orgid])
401
+ }
402
+ console.log('查询。。。', this.f_orgid)
403
+ if (!this.orgCondtionStr) {
404
+ args.condition = `${args.condition}` + ' and f_orgid = ' + this.$login.f.orgid
405
+ } else {
406
+ args.condition = `${args.condition}` + this.orgCondtionStr
407
+ }
408
+ this.model.search(args.condition, args.model)
409
+ this.condition = args.condition
410
+ },
411
+ mergeRowData (joinrows) {
412
+
413
+ },
414
+ // 多选框初始化
415
+ selectInit () {
416
+ this.rowsdata = []
417
+ this.all = []
418
+ this.radio = []
419
+ },
420
+ select () {
421
+ let index = this.model1.pageIndex - 1
422
+ console.log('全选', this.all[index])
423
+ if (!this.radio[index]) {
424
+ this.radio.$set(index, [])
425
+ }
426
+ if (this.all[index]) {
427
+ // 数据
428
+ this.rowsdata[index] = Object.assign([], this.model1.rows)
429
+ // 勾选
430
+ for (var i = 0; i < this.model1.rows.length; i++) {
431
+ this.radio[index].$set(i, true)
432
+ }
433
+ } else {
434
+ // 数据
435
+ this.rowsdata[index] = []
436
+ // 不勾选
437
+ for (var i = 0; i < this.model1.rows.length; i++) {
438
+ this.radio[index].$set(i, false)
439
+ }
440
+ }
441
+ },
442
+ selectOne (event, row, i) {
443
+ console.log('单选', event.target.checked)
444
+ let index = this.model1.pageIndex - 1
445
+ if (!this.rowsdata[index]) {
446
+ this.rowsdata[index] = []
447
+ }
448
+ if (!this.radio[index]) {
449
+ this.radio.$set(index, [])
450
+ }
451
+ if (event.target.checked) {
452
+ // 数据
453
+ this.rowsdata[index][i] = row
454
+ // 勾选
455
+ this.radio[index].$set(i, true)
456
+ // 判断是否全部选中
457
+ var allState = true
458
+ if (this.model1.rows.length != this.radio[index].length) {
459
+ allState = false
460
+ }
461
+ for (var state of this.radio[index]) {
462
+ if (!state) {
463
+ allState = false
464
+ }
465
+ }
466
+ if (allState) {
467
+ this.all.$set(index, true)
468
+ } else {
469
+ this.all.$set(index, false)
470
+ }
471
+ } else {
472
+ // 数据
473
+ this.rowsdata[index][i] = []
474
+ // 不勾选
475
+ this.radio[index].$set(i, false)
476
+ // 任意取消一个则全选状态设为false
477
+ this.all.$set(index, false)
478
+ }
479
+ }
480
+ },
481
+ computed: {
482
+ ischecked () {
483
+ return function (index, i) {
484
+ // console.log("计算属性")
485
+ if (!this.radio[index]) {
486
+ return false
487
+ }
488
+ return this.radio[index][i]
489
+ }
490
+ },
491
+ distributionstate () {
492
+ return [{label: '全部', value: ''}, {label: '待分配', value: 'is null'}, {label: '已入库', value: 'is not null'}]
493
+ }
494
+ }
495
+ }
496
+ </script>
497
+ <style>
498
+ .datapanel {
499
+ color: #333;
500
+ background-color: white;
501
+ padding: 10px 20px;
502
+ border-radius: 15px;
503
+ }
504
+ </style>