manage-client 3.1.53 → 3.1.54

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 (37) hide show
  1. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  2. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  3. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  4. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  5. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  6. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  7. package/.gradle/{6.1 → configuration-cache}/gc.properties +0 -0
  8. package/build/dev-server.js +6 -6
  9. package/package.json +1 -1
  10. package/src/components/SellReport/OperatorCheckoutReport.vue +237 -237
  11. package/src/components/SellReport/OperatorCheckoutTwo.vue +237 -237
  12. package/src/components/SellReport/ReportItems.vue +241 -241
  13. package/src/components/sale/businessquery/FillGasQuery.vue +491 -491
  14. package/src/components/sale/filesquery/DeviceQuery.vue +524 -524
  15. package/src/filiale/jingwei/ChargeQuery.vue +1241 -1241
  16. package/src/filiale/liaoyuan/ChargeQuery.vue +1284 -1284
  17. package/src/filiale/liaoyuan/exportConfig.js +718 -718
  18. package/src/filiale/meihekou/CardHandplanQuery.vue +541 -541
  19. package/src/filiale/meihekou/config/exportConfig.js +804 -804
  20. package/src/filiale/shaoguan/ChargeQuery.vue +1034 -1034
  21. package/src/filiale/shaoguan/OtherChargeQuery.vue +596 -596
  22. package/src/filiale/shaoguan/sale/businessquery/oldList.vue +41 -41
  23. package/src/filiale/shaoguan/sale/businessquery/oldMeterList.vue +290 -290
  24. package/src/filiale/shaoguan/sale.js +35 -35
  25. package/src/main.js +66 -66
  26. package/src/reportManage.js +478 -478
  27. package/.gradle/4.4/fileChanges/last-build.bin +0 -0
  28. package/.gradle/4.4/fileHashes/fileHashes.bin +0 -0
  29. package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
  30. package/.gradle/6.1/executionHistory/executionHistory.bin +0 -0
  31. package/.gradle/6.1/executionHistory/executionHistory.lock +0 -0
  32. package/.gradle/6.1/fileChanges/last-build.bin +0 -0
  33. package/.gradle/6.1/fileHashes/fileHashes.bin +0 -0
  34. package/.gradle/6.1/fileHashes/fileHashes.lock +0 -0
  35. package/.gradle/6.1.1/fileContent/fileContent.lock +0 -0
  36. package/build/libs/ManageClient-3.1.0-17.jar +0 -0
  37. package/build/tmp/jar/MANIFEST.MF +0 -2
@@ -1,541 +1,541 @@
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>
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
-
35
-
36
- <div class="span" style="float:right;">
37
- <button class="button_search button_spacing" @click="search()">查询</button>
38
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
39
- <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
40
- :field="$parent.$parent.getfield" :header="$parent.$parent.other"
41
- sqlurl="rs/logic/exportfile" sql-name="cardhandplanQuery" template-name='卡表抄表查询导出'
42
- :choose-col="true"></export-excel>
43
- <print-data :model="$parent.model" :field="$parent.$parent.getfield"
44
- :defaultfield="$parent.$parent.defaultfield" print-name="抄表查询打印"
45
-
46
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
47
-
48
- <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>
49
- </div>
50
- </div>
51
- <div class="row" v-show="$parent.$parent.criteriaShow">
52
- <div class="col-sm-2 form-group">
53
- <label class="font_normal_body">客户名称</label>
54
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
55
- condition="f_user_name like '%{}%'" placeholder="客户名称">
56
- </div>
57
- <div class="col-sm-2 form-group">
58
- <label class="font_normal_body">客户地址</label>
59
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
60
- condition="f_address like '%{}%'" placeholder='客户地址'>
61
- </div>
62
- <div class="col-sm-2 form-group">
63
- <label class="font_normal_body">小区名称</label>
64
- <input type="text" style="width:60%" class="input_search" v-model="model.f_residential_area"
65
- condition="f_residential_area like '%{}%'" placeholder="小区">
66
- </div>
67
- <div class="col-sm-2 form-group">
68
- <label class="font_normal_body">楼&emsp;栋&emsp;</label>
69
- <input type="text" style="width:60%" class="input_search" v-model="model.f_building"
70
- condition="f_building = '{}'" placeholder="楼栋">
71
- </div>
72
- <!-- add -->
73
- <div class="col-sm-2 form-group">
74
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;单元&nbsp;&nbsp;&nbsp;</label>
75
- <input type="text" style="width:60%" class="input_search" v-model="model.f_unit"
76
- condition="f_unit = '{}'" placeholder="单元"/>
77
- </div>
78
- <div class="col-sm-2 form-group">
79
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;楼层&nbsp;&nbsp;</label>
80
- <input type="text" style="width:60%" class="input_search" v-model="model.f_floor"
81
- condition="f_floor = '{}'" placeholder="楼层"/>
82
- </div>
83
- <div class="col-sm-2 form-group">
84
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;门牌号</label>
85
- <input type="text" style="width:60%" class="input_search" v-model="model.f_room"
86
- condition="f_room = '{}'" placeholder="门牌号">
87
- </div>
88
- <!-- end-->
89
- <div class="col-sm-2 form-group">
90
- <label class="font_normal_body">抄表状态</label>
91
- <v-select :value.sync="model.f_meter_state"
92
- v-model="model.f_meter_state"
93
- :options='$parent.$parent.meterstate' placeholder='请选择'
94
- condition="f_meter_state = '{}'"
95
- close-on-select></v-select>
96
- </div>
97
- <!--<div class="col-sm-2 form-group">
98
- <label class="font_normal_body">表单状态</label>
99
- <v-select :value.sync="model.f_hand_state"
100
- v-model="model.f_hand_state"
101
- :options='$parent.$parent.handstate' placeholder='请选择'
102
- condition="f_hand_state = '{}'"
103
- close-on-select></v-select>
104
- </div>-->
105
- <div class="col-sm-2 form-group">
106
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;抄表员</label>
107
- <v-select :value.sync="model.f_inputtor"
108
- v-model="model.f_inputtor"
109
- :options='$parent.$parent.inputtor' placeholder='请选择'
110
- multiple = "true"
111
- close-on-select></v-select>
112
- </div>
113
- <div class="col-sm-2 form-group">
114
- <label class="font_normal_body">客户类型</label>
115
- <v-select :value.sync="model.f_user_type"
116
- :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
117
- condition="f_user_type = '{}'"
118
- close-on-select></v-select>
119
- </div>
120
- <div class="col-sm-2 form-group">
121
- <label class="font_normal_body">抄表结果状态</label>
122
- <v-select :value.sync="model.f_result_state"
123
- v-model="model.f_result_state"
124
- :options='$parent.$parent.attimehandstate' placeholder='请选择'
125
- condition="f_result_state = '{}'"
126
- close-on-select></v-select>
127
- </div>
128
- <!--<div class="col-sm-2 form-group">
129
- <label class="font_normal_body">是否缴费</label>
130
- <v-select :value.sync="model.f_whether_pay"
131
- :options='$parent.$parent.accountsState' placeholder='请选择' v-model="model.f_whether_pay"
132
- condition="f_whether_pay = '{}'"
133
- close-on-select></v-select>
134
- </div>-->
135
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
136
- </div>
137
- </div>
138
- </criteria>
139
-
140
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
141
- <template partial='head'>
142
- <tr>
143
- <th>
144
- <nobr>客户编号</nobr>
145
- </th>
146
- <th>
147
- <nobr>客户名称</nobr>
148
- </th>
149
- <th>
150
- <nobr>客户地址</nobr>
151
- </th>
152
- <th>
153
- <nobr>表号</nobr>
154
- </th>
155
- <th>
156
- <nobr>地址</nobr>
157
- </th>
158
- <th>
159
- <nobr>上期底数</nobr>
160
- </th>
161
- <th>
162
- <nobr>本期底数</nobr>
163
- </th>
164
- <th>
165
- <nobr>气量</nobr>
166
- </th>
167
- <th>
168
- <nobr>单价</nobr>
169
- </th>
170
- <th>
171
- <nobr>抄表结果状态</nobr>
172
- </th>
173
- <th>
174
- <nobr>总购气量</nobr>
175
- </th>
176
- <th>
177
- <nobr>余量</nobr>
178
- </th>
179
- <th>
180
- <nobr>录入日期</nobr>
181
- </th>
182
- <th>
183
- <nobr>抄表员</nobr>
184
- </th>
185
-
186
- <th>
187
- <nobr>抄表状态</nobr>
188
- </th>
189
- <th>
190
- <nobr>人员</nobr>
191
- </th>
192
- <th>
193
- <nobr>部门</nobr>
194
- </th>
195
- <!-- <th>-->
196
- <!-- <nobr>公司</nobr>-->
197
- <!-- </th>-->
198
- </tr>
199
- </template>
200
- <template partial='body'>
201
- <td style="text-align: center;">
202
- <nobr>
203
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
204
- </td>
205
- <td style="text-align: center;">
206
- <nobr>{{row.f_user_name}}</nobr>
207
- </td>
208
- <td style="text-align: center;">
209
- <nobr>{{row.f_address}}</nobr>
210
- </td>
211
- <td style="text-align: center;">
212
- <nobr>{{row.f_meternumber}}</nobr>
213
- </td>
214
- <td style="text-align: center;">
215
- <nobr>{{row.f_address}}</nobr>
216
- </td>
217
- <td style="text-align: center;">
218
- <nobr>{{row.f_last_tablebase}}</nobr>
219
- </td>
220
- <td style="text-align: center;">
221
- <nobr>{{row.f_tablebase}}</nobr>
222
- </td>
223
- <td style="text-align: center;">
224
- <nobr>{{row.f_real_amount}}</nobr>
225
- </td>
226
- <td style="text-align: center;">
227
- <nobr>{{row.f_price}}</nobr>
228
- </td>
229
- <td style="text-align: center;">
230
- <nobr>{{row.f_result_state}}</nobr>
231
- </td>
232
- <td style="text-align: center;">
233
- <nobr>{{row.f_total_gas}}</nobr>
234
- </td>
235
- <td style="text-align: center;">
236
- <nobr>{{row.f_unused_gas}}</nobr>
237
- </td>
238
- <td style="text-align: center;">
239
- <nobr>{{row.f_hand_date}}</nobr>
240
- </td>
241
- <td style="text-align: center;">
242
- <nobr>{{row.f_inputtor}}</nobr>
243
- </td>
244
-
245
- <td style="text-align: center;">
246
- <nobr>{{row.f_meter_state}}</nobr>
247
- </td>
248
- <td style="text-align: center;">
249
- <nobr>{{row.f_operator}}</nobr>
250
- </td>
251
- <td style="text-align: center;">
252
- <nobr>{{row.f_depname}}</nobr>
253
- </td>
254
- <!-- <td style="text-align: center;">-->
255
- <!-- <nobr>{{row.f_orgname}}</nobr>-->
256
- <!-- </td>-->
257
- </template>
258
- <template partial='foot'></template>
259
- </data-grid>
260
- </criteria-paged>
261
- <table class="table-hover">
262
- <tr style="position: relative;margin-top: -16px;" class="table-bordered">
263
- <td
264
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
265
- 汇总信息
266
- </td>
267
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
268
- 气量合计:&emsp;{{sumsmodel.f_real_amount}}
269
- </td>
270
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
271
- 总购气量合计:&emsp;{{sumsmodel.f_total_gas}}
272
- </td>
273
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
274
- 余量合计:&emsp;{{sumsmodel.f_yuliang}}
275
- </td>
276
- </tr>
277
- </table>
278
- </div>
279
- <modal :show.sync="batchmoneyShow" width="500px" title="反盘导入" v-ref:modal large backdrop="false">
280
- <article slot="modal-body" class="modal-body">
281
- <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
282
- </article>
283
- <footer slot="modal-footer" class="modal-footer">
284
- </footer>
285
- </modal>
286
- <div class="flex" v-if="show">
287
- <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
288
- </div>
289
- </div>
290
- </div>
291
- </template>
292
-
293
- <script>
294
- import {PagedList, HttpResetClass} from 'vue-client'
295
- import defaultPrint from './config/DefaultPrint'
296
- import exportConfig from './config/exportConfig'
297
-
298
- let readySomething = async function (self) {
299
- self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
300
- self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
301
- // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
302
- // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
303
- // await self.$refs.paged.$refs.cri.search()
304
- await self.$getConfig(self, 'CardHandplanQuery')
305
- console.log('抄表查询获取默认配置', self.config)
306
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
307
- console.log('开始初始化参数', self.defaultfield)
308
- await self.$MagLoadParams.loadParam()
309
- // await self.$MagLoadParams.loadParam()
310
- // self.initParams()
311
- console.log('开始查询')
312
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
313
- }
314
- export default {
315
- props:['data'],
316
- title: '卡表抄表查询',
317
- data() {
318
- return {
319
- other:[],
320
- footer:[],
321
- data: {},
322
- model: new PagedList('rs/sql/cardhandplanQuery', 20, {},{f_real_amount:0,f_total_gas:0,f_yuliang:0}),
323
- initres: {
324
- org:[this.$login.f.orgid],
325
- dep:[],
326
- user:[],
327
- },
328
- show:false,
329
- rowdata:{},
330
- criteriaShow: false,
331
- orgCondtionStr: '',
332
- modelval: [],
333
- inputtouPerson: [],
334
- printshow: false,
335
- all: false,
336
- fields: {},
337
- thead: '',
338
- tfoot: '',
339
-
340
- // 下拉框
341
-
342
- //合计数据
343
- sumsmodel: {},
344
- defaultfield: [],
345
- config: {
346
- defaultPrint: ['f_userinfo_code', 'f_address', 'f_user_name', 'f_meternumber']
347
- },
348
- batchmoneyShow:false
349
- }
350
- },
351
- ready() {
352
- readySomething(this).then(() => {
353
- this.$emit('ready')
354
- }).catch((error) => {
355
- this.$emit('error', error)
356
- })
357
- },
358
- methods: {
359
- getotherfooter(){
360
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
361
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
362
- this.other=[];
363
- this.footer=[];
364
- let exportdata = this.getCondition;
365
- let otherInData=[];
366
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
367
- let footerData=[],exportfield=this.getfield;
368
- footerData.push("合计");
369
- let self = this;
370
- for(var field in self.sumsmodel){
371
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
372
- }
373
- this.footer.push(footerData);
374
- this.other.push(otherInData);
375
- },
376
- Fileinput(){
377
- this.batchmoneyShow=true;
378
- },
379
- search(){
380
- this.$refs.paged.$refs.cri.search()
381
- },
382
- cancel() {
383
- this.show = false
384
- },
385
- selfSearch(args) {
386
- this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
387
- this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
388
- //抄表员查询条件
389
- this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
390
- if(this.inputtouPerson.length !== 0){
391
- let str = JSON.stringify(this.inputtouPerson)
392
- str = str.replace(/"/g,`'`)
393
- str = str.replace(/\[/g,``)
394
- str = str.replace(/\]/g,``)
395
- //查询多个抄表员时条件
396
- args.condition += ` and f_inputtor in ( ${str} )`
397
- }
398
-
399
- args.condition = `${args.condition} ` + this.orgCondtionStr
400
- this.model.search(args.condition, args.model)
401
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
402
- },
403
- clear() {
404
- //清空部门和人员
405
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
406
- //部门和人员变为全选
407
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
408
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
409
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
410
- this.$refs.paged.$refs.cri.model[key] = []
411
- })
412
- },
413
- show() {
414
- this.criteriaShow = true
415
- },
416
- hidden() {
417
- this.criteriaShow = !this.criteriaShow
418
- },
419
- getRes(obj) {
420
- this.orgCondtionStr = obj
421
- },
422
- stamp() {
423
- this.all = false
424
- //默认选择要打印的列
425
- this.modelval = defaultPrint.config
426
- this.fields = this.getfield
427
- console.log('所有打印字段', this.fields)
428
- this.printshow = true
429
- this.put()
430
- },
431
- put() {
432
- // 对Modelval进行排序
433
- this.sortModelval()
434
- this.thead = `<tr><th colspan=${this.modelval.length}>收费查询统计报表</th></tr><tr>`
435
- for (let key of this.modelval) {
436
- this.thead += '<th>' + this.fields[key] + '</th>'
437
- }
438
- this.thead += '</tr>'
439
- },
440
- print() {
441
- this.$refs.print.PrintAsFile()
442
- this.printshow = false
443
- },
444
- dealmsg(val) {
445
- console.log('---------------dealmsg')
446
- this.rowdata=val
447
- this.show=true
448
- val.model = this.model.model
449
- this.$dispatch('deal-msg', val)
450
- },
451
- close() {
452
- this.printshow = false
453
- this.all = false
454
- },
455
- // 对选择的列进行排序
456
- sortModelval() {
457
- let sortModel = []
458
- Object.keys(this.fields).forEach((key) => {
459
- if (this.modelval.includes(key)) {
460
- sortModel.push(key)
461
- }
462
- })
463
- this.modelval = sortModel
464
- console.log('选择的打印的字段', this.modelval)
465
- }
466
- },
467
- watch: {
468
- 'all'(val) {
469
- if (val) {
470
- this.modelval = this.bodyData
471
- } else {
472
- this.modelval = defaultPrint.config
473
- this.put()
474
- }
475
- },
476
- 'modelval.length'() {
477
- this.put()
478
- },
479
- 'model.rows'(val) {
480
- if(val.length === 0){
481
- this.sumsmodel = {}
482
- }
483
- },
484
- sumsmodel:{
485
- handler: function(val) {
486
- this.getotherfooter();
487
- },
488
- deep: true
489
- }
490
- },
491
- computed: {
492
- getCondition() {
493
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
494
- },
495
- getfield() {
496
- return exportConfig.cardhandplanConfig
497
- },
498
- usertypes() {
499
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
500
- },
501
- accountsState() {
502
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('下账状态')]
503
- },
504
- meterstate() {
505
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表状态')]
506
- },
507
- handstate() {
508
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('表单状态')]
509
- },
510
- attimehandstate() {
511
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表结果状态')]
512
- },
513
- inputtor() {
514
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表员')]
515
- },
516
- whetherPay() {
517
- return [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}]
518
- }
519
- },
520
- events:{
521
- 'onFileUpload': function (file, res) {
522
- if (this.batchmoneyShow) {
523
- let param = {
524
- filepath: res.f_downloadpath,
525
- f_operator: this.$login.f.name,
526
- f_operatorid: this.$login.f.id,
527
- f_orgid: this.$login.f.orgid,
528
- f_orgname: this.$login.f.orgs,
529
- f_depid: this.$login.f.depids,
530
- f_depname: this.$login.f.deps
531
- }
532
- let http = new HttpResetClass();
533
- http.load('POST', 'rs/logic/SumSettleFileImport', {data: param}, {
534
- resolveMsg: null,
535
- rejectMsg: '上传失败'
536
- });
537
- }
538
- }
539
- }
540
- }
541
- </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>
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
+
35
+
36
+ <div class="span" style="float:right;">
37
+ <button class="button_search button_spacing" @click="search()">查询</button>
38
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
39
+ <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
40
+ :field="$parent.$parent.getfield" :header="$parent.$parent.other"
41
+ sqlurl="rs/logic/exportfile" sql-name="cardhandplanQuery" template-name='卡表抄表查询导出'
42
+ :choose-col="true"></export-excel>
43
+ <print-data :model="$parent.model" :field="$parent.$parent.getfield"
44
+ :defaultfield="$parent.$parent.defaultfield" print-name="抄表查询打印"
45
+
46
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
47
+
48
+ <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>
49
+ </div>
50
+ </div>
51
+ <div class="row" v-show="$parent.$parent.criteriaShow">
52
+ <div class="col-sm-2 form-group">
53
+ <label class="font_normal_body">客户名称</label>
54
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
55
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
56
+ </div>
57
+ <div class="col-sm-2 form-group">
58
+ <label class="font_normal_body">客户地址</label>
59
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
60
+ condition="f_address like '%{}%'" placeholder='客户地址'>
61
+ </div>
62
+ <div class="col-sm-2 form-group">
63
+ <label class="font_normal_body">小区名称</label>
64
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_residential_area"
65
+ condition="f_residential_area like '%{}%'" placeholder="小区">
66
+ </div>
67
+ <div class="col-sm-2 form-group">
68
+ <label class="font_normal_body">楼&emsp;栋&emsp;</label>
69
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_building"
70
+ condition="f_building = '{}'" placeholder="楼栋">
71
+ </div>
72
+ <!-- add -->
73
+ <div class="col-sm-2 form-group">
74
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;单元&nbsp;&nbsp;&nbsp;</label>
75
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_unit"
76
+ condition="f_unit = '{}'" placeholder="单元"/>
77
+ </div>
78
+ <div class="col-sm-2 form-group">
79
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;楼层&nbsp;&nbsp;</label>
80
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_floor"
81
+ condition="f_floor = '{}'" placeholder="楼层"/>
82
+ </div>
83
+ <div class="col-sm-2 form-group">
84
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;门牌号</label>
85
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_room"
86
+ condition="f_room = '{}'" placeholder="门牌号">
87
+ </div>
88
+ <!-- end-->
89
+ <div class="col-sm-2 form-group">
90
+ <label class="font_normal_body">抄表状态</label>
91
+ <v-select :value.sync="model.f_meter_state"
92
+ v-model="model.f_meter_state"
93
+ :options='$parent.$parent.meterstate' placeholder='请选择'
94
+ condition="f_meter_state = '{}'"
95
+ close-on-select></v-select>
96
+ </div>
97
+ <!--<div class="col-sm-2 form-group">
98
+ <label class="font_normal_body">表单状态</label>
99
+ <v-select :value.sync="model.f_hand_state"
100
+ v-model="model.f_hand_state"
101
+ :options='$parent.$parent.handstate' placeholder='请选择'
102
+ condition="f_hand_state = '{}'"
103
+ close-on-select></v-select>
104
+ </div>-->
105
+ <div class="col-sm-2 form-group">
106
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;抄表员</label>
107
+ <v-select :value.sync="model.f_inputtor"
108
+ v-model="model.f_inputtor"
109
+ :options='$parent.$parent.inputtor' placeholder='请选择'
110
+ multiple = "true"
111
+ close-on-select></v-select>
112
+ </div>
113
+ <div class="col-sm-2 form-group">
114
+ <label class="font_normal_body">客户类型</label>
115
+ <v-select :value.sync="model.f_user_type"
116
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
117
+ condition="f_user_type = '{}'"
118
+ close-on-select></v-select>
119
+ </div>
120
+ <div class="col-sm-2 form-group">
121
+ <label class="font_normal_body">抄表结果状态</label>
122
+ <v-select :value.sync="model.f_result_state"
123
+ v-model="model.f_result_state"
124
+ :options='$parent.$parent.attimehandstate' placeholder='请选择'
125
+ condition="f_result_state = '{}'"
126
+ close-on-select></v-select>
127
+ </div>
128
+ <!--<div class="col-sm-2 form-group">
129
+ <label class="font_normal_body">是否缴费</label>
130
+ <v-select :value.sync="model.f_whether_pay"
131
+ :options='$parent.$parent.accountsState' placeholder='请选择' v-model="model.f_whether_pay"
132
+ condition="f_whether_pay = '{}'"
133
+ close-on-select></v-select>
134
+ </div>-->
135
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
136
+ </div>
137
+ </div>
138
+ </criteria>
139
+
140
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
141
+ <template partial='head'>
142
+ <tr>
143
+ <th>
144
+ <nobr>客户编号</nobr>
145
+ </th>
146
+ <th>
147
+ <nobr>客户名称</nobr>
148
+ </th>
149
+ <th>
150
+ <nobr>客户地址</nobr>
151
+ </th>
152
+ <th>
153
+ <nobr>表号</nobr>
154
+ </th>
155
+ <th>
156
+ <nobr>地址</nobr>
157
+ </th>
158
+ <th>
159
+ <nobr>上期底数</nobr>
160
+ </th>
161
+ <th>
162
+ <nobr>本期底数</nobr>
163
+ </th>
164
+ <th>
165
+ <nobr>气量</nobr>
166
+ </th>
167
+ <th>
168
+ <nobr>单价</nobr>
169
+ </th>
170
+ <th>
171
+ <nobr>抄表结果状态</nobr>
172
+ </th>
173
+ <th>
174
+ <nobr>总购气量</nobr>
175
+ </th>
176
+ <th>
177
+ <nobr>余量</nobr>
178
+ </th>
179
+ <th>
180
+ <nobr>录入日期</nobr>
181
+ </th>
182
+ <th>
183
+ <nobr>抄表员</nobr>
184
+ </th>
185
+
186
+ <th>
187
+ <nobr>抄表状态</nobr>
188
+ </th>
189
+ <th>
190
+ <nobr>人员</nobr>
191
+ </th>
192
+ <th>
193
+ <nobr>部门</nobr>
194
+ </th>
195
+ <!-- <th>-->
196
+ <!-- <nobr>公司</nobr>-->
197
+ <!-- </th>-->
198
+ </tr>
199
+ </template>
200
+ <template partial='body'>
201
+ <td style="text-align: center;">
202
+ <nobr>
203
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
204
+ </td>
205
+ <td style="text-align: center;">
206
+ <nobr>{{row.f_user_name}}</nobr>
207
+ </td>
208
+ <td style="text-align: center;">
209
+ <nobr>{{row.f_address}}</nobr>
210
+ </td>
211
+ <td style="text-align: center;">
212
+ <nobr>{{row.f_meternumber}}</nobr>
213
+ </td>
214
+ <td style="text-align: center;">
215
+ <nobr>{{row.f_address}}</nobr>
216
+ </td>
217
+ <td style="text-align: center;">
218
+ <nobr>{{row.f_last_tablebase}}</nobr>
219
+ </td>
220
+ <td style="text-align: center;">
221
+ <nobr>{{row.f_tablebase}}</nobr>
222
+ </td>
223
+ <td style="text-align: center;">
224
+ <nobr>{{row.f_real_amount}}</nobr>
225
+ </td>
226
+ <td style="text-align: center;">
227
+ <nobr>{{row.f_price}}</nobr>
228
+ </td>
229
+ <td style="text-align: center;">
230
+ <nobr>{{row.f_result_state}}</nobr>
231
+ </td>
232
+ <td style="text-align: center;">
233
+ <nobr>{{row.f_card_total_gas}}</nobr>
234
+ </td>
235
+ <td style="text-align: center;">
236
+ <nobr>{{row.f_unused_gas}}</nobr>
237
+ </td>
238
+ <td style="text-align: center;">
239
+ <nobr>{{row.f_hand_date}}</nobr>
240
+ </td>
241
+ <td style="text-align: center;">
242
+ <nobr>{{row.f_inputtor}}</nobr>
243
+ </td>
244
+
245
+ <td style="text-align: center;">
246
+ <nobr>{{row.f_meter_state}}</nobr>
247
+ </td>
248
+ <td style="text-align: center;">
249
+ <nobr>{{row.f_operator}}</nobr>
250
+ </td>
251
+ <td style="text-align: center;">
252
+ <nobr>{{row.f_depname}}</nobr>
253
+ </td>
254
+ <!-- <td style="text-align: center;">-->
255
+ <!-- <nobr>{{row.f_orgname}}</nobr>-->
256
+ <!-- </td>-->
257
+ </template>
258
+ <template partial='foot'></template>
259
+ </data-grid>
260
+ </criteria-paged>
261
+ <table class="table-hover">
262
+ <tr style="position: relative;margin-top: -16px;" class="table-bordered">
263
+ <td
264
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
265
+ 汇总信息
266
+ </td>
267
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
268
+ 气量合计:&emsp;{{sumsmodel.f_real_amount}}
269
+ </td>
270
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
271
+ 总购气量合计:&emsp;{{sumsmodel.f_card_total_gas}}
272
+ </td>
273
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
274
+ 余量合计:&emsp;{{sumsmodel.f_yuliang}}
275
+ </td>
276
+ </tr>
277
+ </table>
278
+ </div>
279
+ <modal :show.sync="batchmoneyShow" width="500px" title="反盘导入" v-ref:modal large backdrop="false">
280
+ <article slot="modal-body" class="modal-body">
281
+ <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
282
+ </article>
283
+ <footer slot="modal-footer" class="modal-footer">
284
+ </footer>
285
+ </modal>
286
+ <div class="flex" v-if="show">
287
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
288
+ </div>
289
+ </div>
290
+ </div>
291
+ </template>
292
+
293
+ <script>
294
+ import {PagedList, HttpResetClass} from 'vue-client'
295
+ import defaultPrint from './config/DefaultPrint'
296
+ import exportConfig from './config/exportConfig'
297
+
298
+ let readySomething = async function (self) {
299
+ self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
300
+ self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
301
+ // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
302
+ // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
303
+ // await self.$refs.paged.$refs.cri.search()
304
+ await self.$getConfig(self, 'CardHandplanQuery')
305
+ console.log('抄表查询获取默认配置', self.config)
306
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
307
+ console.log('开始初始化参数', self.defaultfield)
308
+ await self.$MagLoadParams.loadParam()
309
+ // await self.$MagLoadParams.loadParam()
310
+ // self.initParams()
311
+ console.log('开始查询')
312
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
313
+ }
314
+ export default {
315
+ props:['data'],
316
+ title: '卡表抄表查询',
317
+ data() {
318
+ return {
319
+ other:[],
320
+ footer:[],
321
+ data: {},
322
+ model: new PagedList('rs/sql/cardhandplanQuery', 20, {},{f_real_amount:0,f_card_total_gas:0,f_yuliang:0}),
323
+ initres: {
324
+ org:[this.$login.f.orgid],
325
+ dep:[],
326
+ user:[],
327
+ },
328
+ show:false,
329
+ rowdata:{},
330
+ criteriaShow: false,
331
+ orgCondtionStr: '',
332
+ modelval: [],
333
+ inputtouPerson: [],
334
+ printshow: false,
335
+ all: false,
336
+ fields: {},
337
+ thead: '',
338
+ tfoot: '',
339
+
340
+ // 下拉框
341
+
342
+ //合计数据
343
+ sumsmodel: {},
344
+ defaultfield: [],
345
+ config: {
346
+ defaultPrint: ['f_userinfo_code', 'f_address', 'f_user_name', 'f_meternumber']
347
+ },
348
+ batchmoneyShow:false
349
+ }
350
+ },
351
+ ready() {
352
+ readySomething(this).then(() => {
353
+ this.$emit('ready')
354
+ }).catch((error) => {
355
+ this.$emit('error', error)
356
+ })
357
+ },
358
+ methods: {
359
+ getotherfooter(){
360
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
361
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
362
+ this.other=[];
363
+ this.footer=[];
364
+ let exportdata = this.getCondition;
365
+ let otherInData=[];
366
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
367
+ let footerData=[],exportfield=this.getfield;
368
+ footerData.push("合计");
369
+ let self = this;
370
+ for(var field in self.sumsmodel){
371
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
372
+ }
373
+ this.footer.push(footerData);
374
+ this.other.push(otherInData);
375
+ },
376
+ Fileinput(){
377
+ this.batchmoneyShow=true;
378
+ },
379
+ search(){
380
+ this.$refs.paged.$refs.cri.search()
381
+ },
382
+ cancel() {
383
+ this.show = false
384
+ },
385
+ selfSearch(args) {
386
+ this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
387
+ this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
388
+ //抄表员查询条件
389
+ this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
390
+ if(this.inputtouPerson.length !== 0){
391
+ let str = JSON.stringify(this.inputtouPerson)
392
+ str = str.replace(/"/g,`'`)
393
+ str = str.replace(/\[/g,``)
394
+ str = str.replace(/\]/g,``)
395
+ //查询多个抄表员时条件
396
+ args.condition += ` and f_inputtor in ( ${str} )`
397
+ }
398
+
399
+ args.condition = `${args.condition} ` + this.orgCondtionStr
400
+ this.model.search(args.condition, args.model)
401
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
402
+ },
403
+ clear() {
404
+ //清空部门和人员
405
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
406
+ //部门和人员变为全选
407
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
408
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
409
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
410
+ this.$refs.paged.$refs.cri.model[key] = []
411
+ })
412
+ },
413
+ show() {
414
+ this.criteriaShow = true
415
+ },
416
+ hidden() {
417
+ this.criteriaShow = !this.criteriaShow
418
+ },
419
+ getRes(obj) {
420
+ this.orgCondtionStr = obj
421
+ },
422
+ stamp() {
423
+ this.all = false
424
+ //默认选择要打印的列
425
+ this.modelval = defaultPrint.config
426
+ this.fields = this.getfield
427
+ console.log('所有打印字段', this.fields)
428
+ this.printshow = true
429
+ this.put()
430
+ },
431
+ put() {
432
+ // 对Modelval进行排序
433
+ this.sortModelval()
434
+ this.thead = `<tr><th colspan=${this.modelval.length}>收费查询统计报表</th></tr><tr>`
435
+ for (let key of this.modelval) {
436
+ this.thead += '<th>' + this.fields[key] + '</th>'
437
+ }
438
+ this.thead += '</tr>'
439
+ },
440
+ print() {
441
+ this.$refs.print.PrintAsFile()
442
+ this.printshow = false
443
+ },
444
+ dealmsg(val) {
445
+ console.log('---------------dealmsg')
446
+ this.rowdata=val
447
+ this.show=true
448
+ val.model = this.model.model
449
+ this.$dispatch('deal-msg', val)
450
+ },
451
+ close() {
452
+ this.printshow = false
453
+ this.all = false
454
+ },
455
+ // 对选择的列进行排序
456
+ sortModelval() {
457
+ let sortModel = []
458
+ Object.keys(this.fields).forEach((key) => {
459
+ if (this.modelval.includes(key)) {
460
+ sortModel.push(key)
461
+ }
462
+ })
463
+ this.modelval = sortModel
464
+ console.log('选择的打印的字段', this.modelval)
465
+ }
466
+ },
467
+ watch: {
468
+ 'all'(val) {
469
+ if (val) {
470
+ this.modelval = this.bodyData
471
+ } else {
472
+ this.modelval = defaultPrint.config
473
+ this.put()
474
+ }
475
+ },
476
+ 'modelval.length'() {
477
+ this.put()
478
+ },
479
+ 'model.rows'(val) {
480
+ if(val.length === 0){
481
+ this.sumsmodel = {}
482
+ }
483
+ },
484
+ sumsmodel:{
485
+ handler: function(val) {
486
+ this.getotherfooter();
487
+ },
488
+ deep: true
489
+ }
490
+ },
491
+ computed: {
492
+ getCondition() {
493
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
494
+ },
495
+ getfield() {
496
+ return exportConfig.cardhandplanConfig
497
+ },
498
+ usertypes() {
499
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
500
+ },
501
+ accountsState() {
502
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('下账状态')]
503
+ },
504
+ meterstate() {
505
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表状态')]
506
+ },
507
+ handstate() {
508
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('表单状态')]
509
+ },
510
+ attimehandstate() {
511
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表结果状态')]
512
+ },
513
+ inputtor() {
514
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表员')]
515
+ },
516
+ whetherPay() {
517
+ return [{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}]
518
+ }
519
+ },
520
+ events:{
521
+ 'onFileUpload': function (file, res) {
522
+ if (this.batchmoneyShow) {
523
+ let param = {
524
+ filepath: res.f_downloadpath,
525
+ f_operator: this.$login.f.name,
526
+ f_operatorid: this.$login.f.id,
527
+ f_orgid: this.$login.f.orgid,
528
+ f_orgname: this.$login.f.orgs,
529
+ f_depid: this.$login.f.depids,
530
+ f_depname: this.$login.f.deps
531
+ }
532
+ let http = new HttpResetClass();
533
+ http.load('POST', 'rs/logic/SumSettleFileImport', {data: param}, {
534
+ resolveMsg: null,
535
+ rejectMsg: '上传失败'
536
+ });
537
+ }
538
+ }
539
+ }
540
+ }
541
+ </script>