manage-client 3.2.93 → 3.2.94

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 (32) hide show
  1. package/build/dev-server.js +177 -176
  2. package/package.json +1 -1
  3. package/src/components/SellReport/GasMoneyPublicMoney.vue +1 -1
  4. package/src/components/sale/businessquery/CancellationQuery.vue +418 -418
  5. package/src/components/sale/businessquery/CardHandplanQuery.vue +476 -476
  6. package/src/components/sale/businessquery/ChargeQuery.vue +1297 -1283
  7. package/src/components/sale/businessquery/DisableQuery.vue +493 -493
  8. package/src/components/sale/businessquery/EnableQuery.vue +451 -451
  9. package/src/components/sale/businessquery/FillCardQuery.vue +529 -529
  10. package/src/components/sale/businessquery/FillGasQuery.vue +560 -560
  11. package/src/components/sale/businessquery/HandplanQuery.vue +1372 -1372
  12. package/src/components/sale/businessquery/MoveMeterQuery.vue +397 -397
  13. package/src/components/sale/businessquery/PrivilegeQuery.vue +380 -380
  14. package/src/components/sale/businessquery/ReceiptQuery.vue +834 -834
  15. package/src/components/sale/businessquery/ReverseQuery.vue +444 -444
  16. package/src/components/sale/businessquery/TransferQuery.vue +461 -461
  17. package/src/components/sale/businessquery/overDueQuery.vue +453 -453
  18. package/src/components/sale/config/exportConfig.js +944 -944
  19. package/src/components/sale/filesquery/UserQuery.vue +930 -941
  20. package/src/filiale/qianneng/ManageBusSummary.vue +224 -0
  21. package/src/filiale/qianneng/exportConfig.js +69 -69
  22. package/src/filiale/qianneng/reportManage.js +3 -1
  23. package/src/filiale/qianneng/sale.js +12 -12
  24. package/src/filiale/zhongyi/ManageBusSummaryPeng.vue +241 -0
  25. package/src/filiale/zhongyi/ManageHandSellMoney.vue +247 -0
  26. package/src/filiale/zhongyi/ManageSellType.vue +284 -0
  27. package/src/filiale/zhongyi/reportManage.js +16 -0
  28. package/src/main.js +66 -66
  29. package/.gradle/3.5.1/file-changes/last-build.bin +0 -0
  30. package/.gradle/3.5.1/taskHistory/taskHistory.lock +0 -0
  31. package/.gradle/buildOutputCleanup/built.bin +0 -0
  32. package/.gradle/buildOutputCleanup/cache.properties.lock +0 -1
@@ -1,476 +1,476 @@
1
- <template>
2
- <div id="unit" class="flex-row">
3
- <div class="basic-main" @keyup.enter="search" >
4
- <div class="flex" v-if="!show">
5
- <criteria-paged :model="model" v-ref:paged @sort="sort">
6
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
8
- <div class="row">
9
- <div class="col-sm-2 form-group">
10
- <label for="startDate" class="font_normal_body">开始日期</label>
11
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
12
- v-model="model.startDate"
13
- :value.sync="model.startDate"
14
- :format="'yyyy-MM-dd HH:mm:ss'"
15
- :show-reset-button="true"
16
- condition="f_hand_date >= '{}'">
17
- </datepicker>
18
- </div>
19
- <div class="col-sm-2 form-group">
20
- <label for="endDate" class="font_normal_body">结束日期</label>
21
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
22
- v-model="model.endDate"
23
- :value.sync="model.endDate"
24
- :format="'yyyy-MM-dd HH:mm:ss'"
25
- :show-reset-button="true"
26
- condition="f_hand_date <= '{}'">
27
- </datepicker>
28
- </div>
29
- <div class="col-sm-2 form-group">
30
- <label class="font_normal_body">客户编号</label>
31
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
32
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
33
- </div>
34
- <div class="col-sm-2 form-group">
35
- <label class="font_normal_body" title="旧客户编号">档案编号</label>
36
- <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
37
- condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
38
- </div>
39
-
40
- <div class="span" style="float:right;">
41
- <button class="button_search button_spacing" @click="search()">查询</button>
42
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
43
- <export-excel :data="$parent.$parent.getCondition"
44
- :field="$parent.$parent.getfield"
45
- sqlurl="rs/logic/exportfile" sql-name="cardhandplanQuery" template-name='卡表抄表查询导出'
46
- :choose-col="true"></export-excel>
47
- <print-data :model="$parent.model" :field="$parent.$parent.getfield"
48
- :defaultfield="$parent.$parent.defaultfield" print-name="抄表查询打印"
49
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
50
-
51
- <div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
52
- </div>
53
- </div>
54
- <div class="row" v-show="$parent.$parent.criteriaShow">
55
- <div class="col-sm-2 form-group">
56
- <label class="font_normal_body">客户名称</label>
57
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
58
- condition="f_user_name like '%{}%'" placeholder="客户名称">
59
- </div>
60
- <div class="col-sm-2 form-group">
61
- <label class="font_normal_body">客户地址</label>
62
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
63
- condition="f_address like '%{}%'" placeholder='客户地址'>
64
- </div>
65
- <div class="col-sm-2 form-group">
66
- <label class="font_normal_body">抄表状态</label>
67
- <v-select :value.sync="model.f_meter_state"
68
- v-model="model.f_meter_state"
69
- :options='$parent.$parent.meterstate' placeholder='请选择'
70
- condition="f_meter_state = '{}'"
71
- close-on-select></v-select>
72
- </div>
73
- <!--<div class="col-sm-2 form-group">
74
- <label class="font_normal_body">表单状态</label>
75
- <v-select :value.sync="model.f_hand_state"
76
- v-model="model.f_hand_state"
77
- :options='$parent.$parent.handstate' placeholder='请选择'
78
- condition="f_hand_state = '{}'"
79
- close-on-select></v-select>
80
- </div>-->
81
- <div class="col-sm-2 form-group">
82
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;抄表员</label>
83
- <v-select :value.sync="model.f_inputtor"
84
- v-model="model.f_inputtor"
85
- :options='$parent.$parent.inputtor' placeholder='请选择'
86
- multiple = "true"
87
- close-on-select></v-select>
88
- </div>
89
- <div class="col-sm-2 form-group">
90
- <label class="font_normal_body">客户类型</label>
91
- <v-select :value.sync="model.f_user_type"
92
- :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
93
- condition="f_user_type = '{}'"
94
- close-on-select></v-select>
95
- </div>
96
- <!--<div class="col-sm-2 form-group">
97
- <label class="font_normal_body">是否缴费</label>
98
- <v-select :value.sync="model.f_whether_pay"
99
- :options='$parent.$parent.accountsState' placeholder='请选择' v-model="model.f_whether_pay"
100
- condition="f_whether_pay = '{}'"
101
- close-on-select></v-select>
102
- </div>-->
103
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
104
-
105
- </div>
106
- </div>
107
- </criteria>
108
-
109
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
110
- <template partial='head'>
111
- <tr>
112
- <th>
113
- <!-- <nobr>客户编号</nobr>-->
114
- <data-order field="f_userinfo_code" name="客户编号"
115
- :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
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
- <data-order field="f_hand_date" name="录入日期"
144
- :order.sync="$parent.$parent.$parent.orderFields.f_hand_date"></data-order>
145
- </th>
146
- <th>
147
- <nobr>抄表员</nobr>
148
- </th>
149
-
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
- </tr>
163
- </template>
164
- <template partial='body'>
165
- <td style="text-align: center;">
166
- <nobr>
167
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
168
- </td>
169
- <td style="text-align: center;">
170
- <nobr>{{row.f_user_name}}</nobr>
171
- </td>
172
- <td style="text-align: center;">
173
- <nobr>{{row.f_olduserinfo_code}}</nobr>
174
- </td>
175
- <td style="text-align: center;">
176
- <nobr>{{row.f_meternumber}}</nobr>
177
- </td>
178
- <td style="text-align: center;">
179
- <nobr>{{row.f_last_tablebase}}</nobr>
180
- </td>
181
- <td style="text-align: center;">
182
- <nobr>{{row.f_tablebase}}</nobr>
183
- </td>
184
- <td style="text-align: center;">
185
- <nobr>{{row.f_real_amount}}</nobr>
186
- </td>
187
- <td style="text-align: center;">
188
- <nobr>{{row.totalgas}}</nobr>
189
- </td>
190
- <td style="text-align: center;">
191
- <nobr>{{row.f_yuliang}}</nobr>
192
- </td>
193
- <td style="text-align: center;">
194
- <nobr>{{row.f_hand_date}}</nobr>
195
- </td>
196
- <td style="text-align: center;">
197
- <nobr>{{row.f_inputtor}}</nobr>
198
- </td>
199
-
200
- <td style="text-align: center;">
201
- <nobr>{{row.f_meter_state}}</nobr>
202
- </td>
203
- <td style="text-align: center;">
204
- <nobr>{{row.f_operator}}</nobr>
205
- </td>
206
- <td style="text-align: center;">
207
- <nobr>{{row.f_depname}}</nobr>
208
- </td>
209
- <!-- <td style="text-align: center;">-->
210
- <!-- <nobr>{{row.f_orgname}}</nobr>-->
211
- <!-- </td>-->
212
- </template>
213
- <template partial='foot'></template>
214
- </data-grid>
215
- </criteria-paged>
216
-
217
- </div>
218
- <modal :show.sync="batchmoneyShow" width="500px" title="反盘导入" v-ref:modal large backdrop="false">
219
- <article slot="modal-body" class="modal-body">
220
- <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
221
- </article>
222
- <footer slot="modal-footer" class="modal-footer">
223
- </footer>
224
- </modal>
225
- <div class="flex" v-if="show">
226
- <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
227
- </div>
228
- </div>
229
- </div>
230
- </template>
231
-
232
- <script>
233
- import {PagedList, HttpResetClass} from 'vue-client'
234
- import defaultPrint from '../config/DefaultPrint'
235
- import exportConfig from '../config/exportConfig'
236
-
237
- let readySomething = async function (self) {
238
- self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
239
- self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
240
- // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
241
- // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
242
- // await self.$refs.paged.$refs.cri.search()
243
- await self.$getConfig(self, 'CardHandplanQuery')
244
- console.log('抄表查询获取默认配置', self.config)
245
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
246
- console.log('开始初始化参数', self.defaultfield)
247
- await self.$MagLoadParams.loadParam()
248
- // await self.$MagLoadParams.loadParam()
249
- // self.initParams()
250
- console.log('开始查询')
251
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
252
- }
253
- export default {
254
- props:['data'],
255
- title: '卡表抄表查询',
256
- data() {
257
- return {
258
- data: {},
259
- //排序
260
- orderitem:'f_input_date desc',
261
- orderFields: {
262
- f_input_date : 'no'
263
- },
264
- model: new PagedList('rs/sql/cardhandplanQuery', 20, {orderitem: this.orderitem?`${this.orderitem}`: " f_input_date desc"}, {
265
- f_real_amount: 0
266
- }),
267
- initres: {
268
- org:[this.$login.f.orgid],
269
- dep:[],
270
- user:[],
271
- },
272
- show:false,
273
- rowdata:{},
274
- criteriaShow: false,
275
- orgCondtionStr: '',
276
- modelval: [],
277
- inputtouPerson: [],
278
- printshow: false,
279
- all: false,
280
- fields: {},
281
- thead: '',
282
- tfoot: '',
283
-
284
- // 下拉框
285
-
286
- //合计数据
287
- sumsmodel: {},
288
- defaultfield: [],
289
- config: {
290
- defaultPrint: ['f_userinfo_code', 'f_address', 'f_user_name', 'f_meternumber']
291
- },
292
- batchmoneyShow:false
293
- }
294
- },
295
- ready() {
296
- readySomething(this).then(() => {
297
- this.$emit('ready')
298
- }).catch((error) => {
299
- this.$emit('error', error)
300
- })
301
- },
302
- methods: {
303
- Fileinput(){
304
- this.batchmoneyShow=true;
305
- },
306
- search(){
307
- this.$refs.paged.$refs.cri.search()
308
- },
309
- cancel() {
310
- this.show = false
311
- },
312
- selfSearch(args) {
313
- this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
314
- this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
315
- //抄表员查询条件
316
- this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
317
- if(this.inputtouPerson.length !== 0){
318
- let str = JSON.stringify(this.inputtouPerson)
319
- str = str.replace(/"/g,`'`)
320
- str = str.replace(/\[/g,``)
321
- str = str.replace(/\]/g,``)
322
- //查询多个抄表员时条件
323
- args.condition += ` and f_inputtor in ( ${str} )`
324
- }
325
-
326
- args.condition = `${args.condition} ` + this.orgCondtionStr
327
- this.model.search(args.condition, args.model)
328
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
329
- },
330
- clear() {
331
- //清空部门和人员
332
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
333
- //部门和人员变为全选
334
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
335
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
336
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
337
- this.$refs.paged.$refs.cri.model[key] = []
338
- })
339
- },
340
- show() {
341
- this.criteriaShow = true
342
- },
343
- hidden() {
344
- this.criteriaShow = !this.criteriaShow
345
- },
346
- getRes(obj) {
347
- this.orgCondtionStr = obj
348
- },
349
- stamp() {
350
- this.all = false
351
- //默认选择要打印的列
352
- this.modelval = defaultPrint.config
353
- this.fields = this.getfield
354
- console.log('所有打印字段', this.fields)
355
- this.printshow = true
356
- this.put()
357
- },
358
- put() {
359
- // 对Modelval进行排序
360
- this.sortModelval()
361
- this.thead = `<tr><th colspan=${this.modelval.length}>收费查询统计报表</th></tr><tr>`
362
- for (let key of this.modelval) {
363
- this.thead += '<th>' + this.fields[key] + '</th>'
364
- }
365
- this.thead += '</tr>'
366
- },
367
- print() {
368
- this.$refs.print.PrintAsFile()
369
- this.printshow = false
370
- },
371
- dealmsg(val) {
372
- console.log('---------------dealmsg')
373
- this.rowdata=val
374
- this.show=true
375
- val.model = this.model.model
376
- this.$dispatch('deal-msg', val)
377
- },
378
- close() {
379
- this.printshow = false
380
- this.all = false
381
- },
382
- // 对选择的列进行排序
383
- sortModelval() {
384
- let sortModel = []
385
- Object.keys(this.fields).forEach((key) => {
386
- if (this.modelval.includes(key)) {
387
- sortModel.push(key)
388
- }
389
- })
390
- this.modelval = sortModel
391
- console.log('选择的打印的字段', this.modelval)
392
- },
393
- sort (field, rule) {
394
- // 将所有排序方式设为不排序,实现相互排斥
395
- for (let key in this.orderFields) {
396
- if (key === field) {
397
- this.orderFields[key] = rule
398
- } else {
399
- this.orderFields[key] = 'no'
400
- }
401
- }
402
- // 如果新规则不排序,还原为默认排序
403
- if (rule === 'no') {
404
- this.model.paramSource.orderitem = `'${this.orderitem}'`
405
- } else {
406
- this.model.paramSource.orderitem = `'${field} ${rule}'`
407
- }
408
-
409
- this.search()
410
- }
411
- },
412
- watch: {
413
- 'all'(val) {
414
- if (val) {
415
- this.modelval = this.bodyData
416
- } else {
417
- this.modelval = defaultPrint.config
418
- this.put()
419
- }
420
- },
421
- 'modelval.length'() {
422
- this.put()
423
- },
424
- },
425
- computed: {
426
- getCondition() {
427
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr,
428
- orderitem: this.orderitem?`${this.orderitem}`: " f_input_date desc "}
429
- },
430
- getfield() {
431
- return exportConfig.cardhandplanConfig
432
- },
433
- getBankfield(){
434
- return exportConfig.batchBankConfig
435
- },
436
- usertypes() {
437
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
438
- },
439
- accountsState() {
440
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('下账状态')]
441
- },
442
- meterstate() {
443
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表状态')]
444
- },
445
- handstate() {
446
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('表单状态')]
447
- },
448
- inputtor() {
449
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表员')]
450
- },
451
- whetherPay() {
452
- return [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}]
453
- }
454
- },
455
- events:{
456
- 'onFileUpload': function (file, res) {
457
- if (this.batchmoneyShow) {
458
- let param = {
459
- filepath: res.f_downloadpath,
460
- f_operator: this.$login.f.name,
461
- f_operatorid: this.$login.f.id,
462
- f_orgid: this.$login.f.orgid,
463
- f_orgname: this.$login.f.orgs,
464
- f_depid: this.$login.f.depids,
465
- f_depname: this.$login.f.deps
466
- }
467
- let http = new HttpResetClass();
468
- http.load('POST', 'rs/logic/SumSettleFileImport', {data: param}, {
469
- resolveMsg: null,
470
- rejectMsg: '上传失败'
471
- });
472
- }
473
- }
474
- }
475
- }
476
- </script>
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search" >
4
+ <div class="flex" v-if="!show">
5
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
6
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
8
+ <div class="row">
9
+ <div class="col-sm-2 form-group">
10
+ <label for="startDate" class="font_normal_body">开始日期</label>
11
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
12
+ v-model="model.startDate"
13
+ :value.sync="model.startDate"
14
+ :format="'yyyy-MM-dd HH:mm:ss'"
15
+ :show-reset-button="true"
16
+ condition="f_hand_date >= '{}'">
17
+ </datepicker>
18
+ </div>
19
+ <div class="col-sm-2 form-group">
20
+ <label for="endDate" class="font_normal_body">结束日期</label>
21
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
22
+ v-model="model.endDate"
23
+ :value.sync="model.endDate"
24
+ :format="'yyyy-MM-dd HH:mm:ss'"
25
+ :show-reset-button="true"
26
+ condition="f_hand_date <= '{}'">
27
+ </datepicker>
28
+ </div>
29
+ <div class="col-sm-2 form-group">
30
+ <label class="font_normal_body">客户编号</label>
31
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
32
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
33
+ </div>
34
+ <div class="col-sm-2 form-group">
35
+ <label class="font_normal_body" title="旧客户编号">档案编号</label>
36
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
37
+ condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
38
+ </div>
39
+
40
+ <div class="span" style="float:right;">
41
+ <button class="button_search button_spacing" @click="search()">查询</button>
42
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
43
+ <export-excel :data="$parent.$parent.getCondition"
44
+ :field="$parent.$parent.getfield"
45
+ sqlurl="rs/logic/exportfile" sql-name="cardhandplanQuery" template-name='卡表抄表查询导出'
46
+ :choose-col="true"></export-excel>
47
+ <print-data :model="$parent.model" :field="$parent.$parent.getfield"
48
+ :defaultfield="$parent.$parent.defaultfield" print-name="抄表查询打印"
49
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
50
+
51
+ <div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
52
+ </div>
53
+ </div>
54
+ <div class="row" v-show="$parent.$parent.criteriaShow">
55
+ <div class="col-sm-2 form-group">
56
+ <label class="font_normal_body">客户名称</label>
57
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
58
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
59
+ </div>
60
+ <div class="col-sm-2 form-group">
61
+ <label class="font_normal_body">客户地址</label>
62
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
63
+ condition="f_address like '%{}%'" placeholder='客户地址'>
64
+ </div>
65
+ <div class="col-sm-2 form-group">
66
+ <label class="font_normal_body">抄表状态</label>
67
+ <v-select :value.sync="model.f_meter_state"
68
+ v-model="model.f_meter_state"
69
+ :options='$parent.$parent.meterstate' placeholder='请选择'
70
+ condition="f_meter_state = '{}'"
71
+ close-on-select></v-select>
72
+ </div>
73
+ <!--<div class="col-sm-2 form-group">
74
+ <label class="font_normal_body">表单状态</label>
75
+ <v-select :value.sync="model.f_hand_state"
76
+ v-model="model.f_hand_state"
77
+ :options='$parent.$parent.handstate' placeholder='请选择'
78
+ condition="f_hand_state = '{}'"
79
+ close-on-select></v-select>
80
+ </div>-->
81
+ <div class="col-sm-2 form-group">
82
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;抄表员</label>
83
+ <v-select :value.sync="model.f_inputtor"
84
+ v-model="model.f_inputtor"
85
+ :options='$parent.$parent.inputtor' placeholder='请选择'
86
+ multiple = "true"
87
+ close-on-select></v-select>
88
+ </div>
89
+ <div class="col-sm-2 form-group">
90
+ <label class="font_normal_body">客户类型</label>
91
+ <v-select :value.sync="model.f_user_type"
92
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
93
+ condition="f_user_type = '{}'"
94
+ close-on-select></v-select>
95
+ </div>
96
+ <!--<div class="col-sm-2 form-group">
97
+ <label class="font_normal_body">是否缴费</label>
98
+ <v-select :value.sync="model.f_whether_pay"
99
+ :options='$parent.$parent.accountsState' placeholder='请选择' v-model="model.f_whether_pay"
100
+ condition="f_whether_pay = '{}'"
101
+ close-on-select></v-select>
102
+ </div>-->
103
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
104
+
105
+ </div>
106
+ </div>
107
+ </criteria>
108
+
109
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
110
+ <template partial='head'>
111
+ <tr>
112
+ <th>
113
+ <!-- <nobr>客户编号</nobr>-->
114
+ <data-order field="f_userinfo_code" name="客户编号"
115
+ :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
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
+ <data-order field="f_hand_date" name="录入日期"
144
+ :order.sync="$parent.$parent.$parent.orderFields.f_hand_date"></data-order>
145
+ </th>
146
+ <th>
147
+ <nobr>抄表员</nobr>
148
+ </th>
149
+
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
+ </tr>
163
+ </template>
164
+ <template partial='body'>
165
+ <td style="text-align: center;">
166
+ <nobr>
167
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
168
+ </td>
169
+ <td style="text-align: center;">
170
+ <nobr>{{row.f_user_name}}</nobr>
171
+ </td>
172
+ <td style="text-align: center;">
173
+ <nobr>{{row.f_olduserinfo_code}}</nobr>
174
+ </td>
175
+ <td style="text-align: center;">
176
+ <nobr>{{row.f_meternumber}}</nobr>
177
+ </td>
178
+ <td style="text-align: center;">
179
+ <nobr>{{row.f_last_tablebase}}</nobr>
180
+ </td>
181
+ <td style="text-align: center;">
182
+ <nobr>{{row.f_tablebase}}</nobr>
183
+ </td>
184
+ <td style="text-align: center;">
185
+ <nobr>{{row.f_real_amount}}</nobr>
186
+ </td>
187
+ <td style="text-align: center;">
188
+ <nobr>{{row.totalgas}}</nobr>
189
+ </td>
190
+ <td style="text-align: center;">
191
+ <nobr>{{row.f_yuliang}}</nobr>
192
+ </td>
193
+ <td style="text-align: center;">
194
+ <nobr>{{row.f_hand_date}}</nobr>
195
+ </td>
196
+ <td style="text-align: center;">
197
+ <nobr>{{row.f_inputtor}}</nobr>
198
+ </td>
199
+
200
+ <td style="text-align: center;">
201
+ <nobr>{{row.f_meter_state}}</nobr>
202
+ </td>
203
+ <td style="text-align: center;">
204
+ <nobr>{{row.f_operator}}</nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_depname}}</nobr>
208
+ </td>
209
+ <!-- <td style="text-align: center;">-->
210
+ <!-- <nobr>{{row.f_orgname}}</nobr>-->
211
+ <!-- </td>-->
212
+ </template>
213
+ <template partial='foot'></template>
214
+ </data-grid>
215
+ </criteria-paged>
216
+
217
+ </div>
218
+ <modal :show.sync="batchmoneyShow" width="500px" title="反盘导入" v-ref:modal large backdrop="false">
219
+ <article slot="modal-body" class="modal-body">
220
+ <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
221
+ </article>
222
+ <footer slot="modal-footer" class="modal-footer">
223
+ </footer>
224
+ </modal>
225
+ <div class="flex" v-if="show">
226
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
227
+ </div>
228
+ </div>
229
+ </div>
230
+ </template>
231
+
232
+ <script>
233
+ import {PagedList, HttpResetClass} from 'vue-client'
234
+ import defaultPrint from '../config/DefaultPrint'
235
+ import exportConfig from '../config/exportConfig'
236
+
237
+ let readySomething = async function (self) {
238
+ self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
239
+ self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
240
+ // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
241
+ // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
242
+ // await self.$refs.paged.$refs.cri.search()
243
+ await self.$getConfig(self, 'CardHandplanQuery')
244
+ console.log('抄表查询获取默认配置', self.config)
245
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
246
+ console.log('开始初始化参数', self.defaultfield)
247
+ await self.$MagLoadParams.loadParam()
248
+ // await self.$MagLoadParams.loadParam()
249
+ // self.initParams()
250
+ console.log('开始查询')
251
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
252
+ }
253
+ export default {
254
+ props:['data'],
255
+ title: '卡表抄表查询',
256
+ data() {
257
+ return {
258
+ data: {},
259
+ //排序
260
+ orderitem:'f_input_date desc',
261
+ orderFields: {
262
+ f_input_date : 'no'
263
+ },
264
+ model: new PagedList('rs/sql/cardhandplanQuery', 20, {orderitem: this.orderitem?`${this.orderitem}`: " f_input_date desc"}, {
265
+ f_real_amount: 0
266
+ }),
267
+ initres: {
268
+ org:[this.$login.f.orgid],
269
+ dep:[],
270
+ user:[],
271
+ },
272
+ show:false,
273
+ rowdata:{},
274
+ criteriaShow: false,
275
+ orgCondtionStr: '',
276
+ modelval: [],
277
+ inputtouPerson: [],
278
+ printshow: false,
279
+ all: false,
280
+ fields: {},
281
+ thead: '',
282
+ tfoot: '',
283
+
284
+ // 下拉框
285
+
286
+ //合计数据
287
+ sumsmodel: {},
288
+ defaultfield: [],
289
+ config: {
290
+ defaultPrint: ['f_userinfo_code', 'f_address', 'f_user_name', 'f_meternumber']
291
+ },
292
+ batchmoneyShow:false
293
+ }
294
+ },
295
+ ready() {
296
+ readySomething(this).then(() => {
297
+ this.$emit('ready')
298
+ }).catch((error) => {
299
+ this.$emit('error', error)
300
+ })
301
+ },
302
+ methods: {
303
+ Fileinput(){
304
+ this.batchmoneyShow=true;
305
+ },
306
+ search(){
307
+ this.$refs.paged.$refs.cri.search()
308
+ },
309
+ cancel() {
310
+ this.show = false
311
+ },
312
+ selfSearch(args) {
313
+ this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
314
+ this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
315
+ //抄表员查询条件
316
+ this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
317
+ if(this.inputtouPerson.length !== 0){
318
+ let str = JSON.stringify(this.inputtouPerson)
319
+ str = str.replace(/"/g,`'`)
320
+ str = str.replace(/\[/g,``)
321
+ str = str.replace(/\]/g,``)
322
+ //查询多个抄表员时条件
323
+ args.condition += ` and f_inputtor in ( ${str} )`
324
+ }
325
+
326
+ args.condition = `${args.condition} ` + this.orgCondtionStr
327
+ this.model.search(args.condition, args.model)
328
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
329
+ },
330
+ clear() {
331
+ //清空部门和人员
332
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
333
+ //部门和人员变为全选
334
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
335
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
336
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
337
+ this.$refs.paged.$refs.cri.model[key] = []
338
+ })
339
+ },
340
+ show() {
341
+ this.criteriaShow = true
342
+ },
343
+ hidden() {
344
+ this.criteriaShow = !this.criteriaShow
345
+ },
346
+ getRes(obj) {
347
+ this.orgCondtionStr = obj
348
+ },
349
+ stamp() {
350
+ this.all = false
351
+ //默认选择要打印的列
352
+ this.modelval = defaultPrint.config
353
+ this.fields = this.getfield
354
+ console.log('所有打印字段', this.fields)
355
+ this.printshow = true
356
+ this.put()
357
+ },
358
+ put() {
359
+ // 对Modelval进行排序
360
+ this.sortModelval()
361
+ this.thead = `<tr><th colspan=${this.modelval.length}>收费查询统计报表</th></tr><tr>`
362
+ for (let key of this.modelval) {
363
+ this.thead += '<th>' + this.fields[key] + '</th>'
364
+ }
365
+ this.thead += '</tr>'
366
+ },
367
+ print() {
368
+ this.$refs.print.PrintAsFile()
369
+ this.printshow = false
370
+ },
371
+ dealmsg(val) {
372
+ console.log('---------------dealmsg')
373
+ this.rowdata=val
374
+ this.show=true
375
+ val.model = this.model.model
376
+ this.$dispatch('deal-msg', val)
377
+ },
378
+ close() {
379
+ this.printshow = false
380
+ this.all = false
381
+ },
382
+ // 对选择的列进行排序
383
+ sortModelval() {
384
+ let sortModel = []
385
+ Object.keys(this.fields).forEach((key) => {
386
+ if (this.modelval.includes(key)) {
387
+ sortModel.push(key)
388
+ }
389
+ })
390
+ this.modelval = sortModel
391
+ console.log('选择的打印的字段', this.modelval)
392
+ },
393
+ sort (field, rule) {
394
+ // 将所有排序方式设为不排序,实现相互排斥
395
+ for (let key in this.orderFields) {
396
+ if (key === field) {
397
+ this.orderFields[key] = rule
398
+ } else {
399
+ this.orderFields[key] = 'no'
400
+ }
401
+ }
402
+ // 如果新规则不排序,还原为默认排序
403
+ if (rule === 'no') {
404
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
405
+ } else {
406
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
407
+ }
408
+
409
+ this.search()
410
+ }
411
+ },
412
+ watch: {
413
+ 'all'(val) {
414
+ if (val) {
415
+ this.modelval = this.bodyData
416
+ } else {
417
+ this.modelval = defaultPrint.config
418
+ this.put()
419
+ }
420
+ },
421
+ 'modelval.length'() {
422
+ this.put()
423
+ },
424
+ },
425
+ computed: {
426
+ getCondition() {
427
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr,
428
+ orderitem: this.orderitem?`${this.orderitem}`: " f_input_date desc "}
429
+ },
430
+ getfield() {
431
+ return exportConfig.cardhandplanConfig
432
+ },
433
+ getBankfield(){
434
+ return exportConfig.batchBankConfig
435
+ },
436
+ usertypes() {
437
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
438
+ },
439
+ accountsState() {
440
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('下账状态')]
441
+ },
442
+ meterstate() {
443
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表状态')]
444
+ },
445
+ handstate() {
446
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('表单状态')]
447
+ },
448
+ inputtor() {
449
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表员')]
450
+ },
451
+ whetherPay() {
452
+ return [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}]
453
+ }
454
+ },
455
+ events:{
456
+ 'onFileUpload': function (file, res) {
457
+ if (this.batchmoneyShow) {
458
+ let param = {
459
+ filepath: res.f_downloadpath,
460
+ f_operator: this.$login.f.name,
461
+ f_operatorid: this.$login.f.id,
462
+ f_orgid: this.$login.f.orgid,
463
+ f_orgname: this.$login.f.orgs,
464
+ f_depid: this.$login.f.depids,
465
+ f_depname: this.$login.f.deps
466
+ }
467
+ let http = new HttpResetClass();
468
+ http.load('POST', 'rs/logic/SumSettleFileImport', {data: param}, {
469
+ resolveMsg: null,
470
+ rejectMsg: '上传失败'
471
+ });
472
+ }
473
+ }
474
+ }
475
+ }
476
+ </script>