manage-client 3.3.255 → 3.3.257

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.
@@ -0,0 +1,819 @@
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search" v-if="!show">
4
+ <div class="flex">
5
+
6
+ <criteria-paged :model="model" @sort="sort" v-ref:paged>
7
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
+ <div class="row">
10
+ <div class="col-sm-2">
11
+ <label class="font_normal_body">组织机构</label>
12
+ <res-select :initresid="$parent.$parent.org"
13
+ style="width:60%"
14
+ @res-select="$parent.$parent.getorg"
15
+ :is-mul=false
16
+ restype='organization'>
17
+ </res-select>
18
+ </div>
19
+ <div class="col-sm-2 form-group">
20
+ <label class="font_normal_body">客户编号</label>
21
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
22
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
23
+ </div>
24
+ <div class="col-sm-2 form-group">
25
+ <label class="font_normal_body">客户名称</label>
26
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
27
+ condition="f_user_name = '{}'" placeholder="客户名称">
28
+ </div>
29
+ <div class="span" style="float:right;">
30
+ <button class="button_search button_spacing" @click="search()">查询</button>
31
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
32
+ <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
33
+ :field="$parent.$parent.getfield" :header="$parent.$parent.other"
34
+ sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="GetWebhandMonthGas" template-name='物联用户月度结算查询导出'
35
+ :choose-col="true"></export-excel>
36
+ <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
37
+ :defaultfield="$parent.$parent.defaultfield" print-name="物联用户月度结算查询打印"
38
+ titletable="物联用户月度结算查询"
39
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
40
+
41
+ <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>
42
+ </div>
43
+ </div>
44
+ <div class="row" v-show="$parent.$parent.criteriaShow">
45
+ <!-- <res-select-group :initres="$parent.$parent.initres" :show-component="$parent.$parent.showComponent" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>-->
46
+
47
+ <div class="col-sm-2 form-group">
48
+ <label for="startDate" class="font_normal_body">抄表日期</label>
49
+ <datepicker id="handStartDate" placeholder="开始日期" style="width:60%"
50
+ v-model="model.handStartDate"
51
+ :value.sync="model.handStartDate"
52
+ :format="'yyyy-MM-dd 00:00:00'"
53
+ :show-reset-button="true"
54
+ >
55
+ </datepicker>
56
+ </div>
57
+ <div class="col-sm-2 form-group">
58
+ <label for="endDate" class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
59
+ <datepicker id="handEndDate" placeholder="结束日期" style="width:60%"
60
+ v-model="model.handEndDate"
61
+ :value.sync="model.handEndDate"
62
+ :format="'yyyy-MM-dd 23:59:59'"
63
+ :show-reset-button="true"
64
+ >
65
+ </datepicker>
66
+ </div>
67
+ <!-- <div class="col-sm-2 form-group">-->
68
+ <!-- <label class="font_normal_body">抄表状态</label>-->
69
+ <!-- <v-select :value.sync="model.f_meter_state"-->
70
+ <!-- v-model="model.f_meter_state"-->
71
+ <!-- :options='$parent.$parent.meterstate' placeholder='请选择'-->
72
+ <!-- condition="f_meter_state = '{}'"-->
73
+ <!-- close-on-select></v-select>-->
74
+ <!-- </div>-->
75
+ <!-- <div class="col-sm-2 form-group">-->
76
+ <!-- <label class="font_normal_body">表单状态</label>-->
77
+ <!-- <v-select :value.sync="model.f_hand_state"-->
78
+ <!-- v-model="model.f_hand_state"-->
79
+ <!-- :options='$parent.$parent.handstate' placeholder='请选择'-->
80
+ <!-- condition="f_hand_state = '{}'"-->
81
+ <!-- close-on-select></v-select>-->
82
+ <!-- </div>-->
83
+ <!-- <div class="col-sm-2 form-group">-->
84
+ <!-- <label for="startDate" class="font_normal_body">录入日期</label>-->
85
+ <!-- <datepicker id="startDate" placeholder="开始日期" style="width:60%"-->
86
+ <!-- v-model="model.startDate"-->
87
+ <!-- :value.sync="model.startDate"-->
88
+ <!-- :format="'yyyy-MM-dd HH:mm:ss'"-->
89
+ <!-- :show-reset-button="true"-->
90
+ <!-- condition="f_input_date >= '{}'">-->
91
+ <!-- </datepicker>-->
92
+ <!-- </div>-->
93
+ <!-- <div class="col-sm-2 form-group">-->
94
+ <!-- <label for="endDate" class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;&ensp;</label>-->
95
+ <!-- <datepicker id="endDate" placeholder="结束日期" style="width:60%"-->
96
+ <!-- v-model="model.endDate"-->
97
+ <!-- :value.sync="model.endDate"-->
98
+ <!-- :format="'yyyy-MM-dd HH:mm:ss'"-->
99
+ <!-- :show-reset-button="true"-->
100
+ <!-- condition="f_input_date <= '{}'">-->
101
+ <!-- </datepicker>-->
102
+ <!-- </div>-->
103
+
104
+
105
+ <!-- <div class="col-sm-2 form-group">-->
106
+ <!-- <label class="font_normal_body">小区名称</label>-->
107
+ <!-- <v-select :value.sync="model.f_residential_area"-->
108
+ <!-- class="select_list select"-->
109
+ <!-- enter-push-->
110
+ <!-- multiple = "true"-->
111
+ <!-- v-model="model.f_residential_area"-->
112
+ <!-- style="width: 60%"-->
113
+ <!-- :options='$parent.$parent.residentialArea' placeholder='选择小区'-->
114
+ <!-- close-on-select>-->
115
+
116
+ <!-- </v-select>-->
117
+ <!-- </div>-->
118
+ <!-- <div class="col-sm-2 form-group">-->
119
+ <!-- <label class="font_normal_body">客户地址</label>-->
120
+ <!-- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"-->
121
+ <!-- condition="f_address like '%{}%'" placeholder='客户地址'>-->
122
+ <!-- </div>-->
123
+ <!-- <div class="col-sm-2 form-group">-->
124
+ <!-- <label class="font_normal_body">录入人员</label>-->
125
+ <!-- <input type="text" style="width:60%" class="input_search" v-model="model.f_input_person"-->
126
+ <!-- condition="f_input_person like '%{}%'" placeholder='录入人员'>-->
127
+ <!-- </div>-->
128
+
129
+ <div class="col-sm-2 form-group">
130
+ <label class="font_normal_body">客户类型</label>
131
+ <v-select :value.sync="model.f_user_type"
132
+ @change="$parent.$parent.userTypeChange()"
133
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
134
+ condition="f_user_type = '{}'"
135
+ close-on-select></v-select>
136
+ </div>
137
+ <div class="col-sm-2 form-group">
138
+ <label class="font_normal_body">用气性质</label>
139
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
140
+ :options='$parent.$parent.gasproperties' placeholder='请选择'
141
+ condition="f_gasproperties = '{}'"
142
+ close-on-select></v-select>
143
+ </div>
144
+ <!-- <div class="col-sm-2 form-group">-->
145
+ <!-- <label class="font_normal_body">气价类型</label>-->
146
+ <!-- <v-select :value.sync="model.pricetype" v-model="model.pricetype"-->
147
+ <!-- placeholder='气价类型' :options="$parent.$parent.pricetypes"-->
148
+ <!-- close-on-select v-ref:type>-->
149
+ <!-- </v-select>-->
150
+ <!-- </div>-->
151
+ <!-- <div class="col-sm-2 form-group">-->
152
+ <!-- <label class="font_normal_body">气价名称</label>-->
153
+ <!-- <v-select :value.sync="model.f_price_name"-->
154
+ <!-- v-model="model.f_price_name"-->
155
+ <!-- :options="$parent.$parent.getPricenames"-->
156
+ <!-- condition="f_price_name = '{}'"-->
157
+ <!-- close-on-select></v-select>-->
158
+ <!-- </div>-->
159
+ <div class="col-sm-2 form-group">
160
+ <label class="font_normal_body">用&ensp;气&ensp;量</label>
161
+ <input type="text" style="width:30%" class="input_search" title="大于等于"
162
+ v-model="model.f_oughtamount_big" condition="f_oughtamount >= {}" placeholder='大于等于'>
163
+ <input type="text" style="width:30%" class="input_search" title="小于等于"
164
+ v-model="model.f_oughtamount_small" condition="f_oughtamount <= {}" placeholder='小于等于'>
165
+ </div>
166
+ <div class="col-sm-2 form-group">
167
+ <label class="font_normal_body">&ensp;表&ensp;号&ensp;&ensp;</label>
168
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
169
+ condition="f_meternumber = '{}' " placeholder="表号">
170
+ </div>
171
+ <!-- <div class="col-sm-2 form-group">-->
172
+ <!-- <label class="font_normal_body">气表品牌</label>-->
173
+ <!-- <v-select :value.sync="model.f_meter_brand" multiple-->
174
+ <!-- v-model="model.f_meter_brand"-->
175
+ <!-- :options='$parent.$parent.meterbrands' placeholder='请选择'-->
176
+ <!-- condition="f_meter_brand in {}"-->
177
+ <!-- close-on-select></v-select>-->
178
+ <!-- </div>-->
179
+
180
+
181
+ </div>
182
+ </div>
183
+ </criteria>
184
+
185
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid :classname="$parent.classname">
186
+ <template partial='head'>
187
+ <tr>
188
+ <th><nobr>客户编号</nobr></th>
189
+ <th><nobr>客户名称</nobr></th>
190
+ <th><nobr>客户电话</nobr></th>
191
+ <th><nobr>客户状态</nobr></th>
192
+ <th><nobr>气表类型</nobr></th>
193
+ <th><nobr>表号</nobr></th>
194
+ <th><nobr>客户类型</nobr></th>
195
+ <th><nobr>用气性质</nobr></th>
196
+ <th><nobr>气表状态</nobr></th>
197
+ <th><nobr>所属月份</nobr></th>
198
+ <th><nobr>期初上报时间</nobr></th>
199
+ <th><nobr>期末上报时间</nobr></th>
200
+ <th><nobr>期初余额</nobr></th>
201
+ <th><nobr>上期底数</nobr></th>
202
+ <th><nobr>本期底数</nobr></th>
203
+ <th><nobr>用气量</nobr></th>
204
+ <th><nobr>用气金额</nobr></th>
205
+ <th><nobr>期间实收金额</nobr></th>
206
+ <th><nobr>期末余额</nobr></th>
207
+ <th><nobr>公司</nobr></th>
208
+ </tr>
209
+ </template>
210
+ <template partial='body'>
211
+ <td style="text-align: center;">
212
+ <nobr>
213
+ <span>{{row.f_userinfo_code}}</span></nobr>
214
+ </td>
215
+ <td style="text-align: center;"><nobr>{{row.f_user_name}}</nobr></td>
216
+ <td style="text-align: center;"><nobr>{{row.f_user_phone}}</nobr></td>
217
+ <td style="text-align: center;"><nobr>{{row.f_user_state}}</nobr></td>
218
+ <td style="text-align: center;">
219
+ <nobr>{{row.f_meter_classify}}</nobr>
220
+ </td>
221
+ <td style="text-align: center;">
222
+ <nobr>{{row.f_meternumber}}</nobr>
223
+ </td>
224
+ <td style="text-align: center;">
225
+ <nobr>{{row.f_user_type}}</nobr>
226
+ </td>
227
+ <td style="text-align: center;">
228
+ <nobr>{{row.f_gasproperties}}</nobr>
229
+ </td>
230
+ <td style="text-align: center;">
231
+ <nobr>{{row.f_table_state}}</nobr>
232
+ </td>
233
+ <td style="text-align: center;">
234
+ <nobr>{{row.f_hand_date}}</nobr>
235
+ </td>
236
+ <td style="text-align: center;">
237
+ <nobr>{{row.f_start_date}}</nobr>
238
+ </td>
239
+ <td style="text-align: center;">
240
+ <nobr>{{row.f_end_date}}</nobr>
241
+ </td>
242
+ <td style="text-align: center;">
243
+ <nobr>{{row.f_balance}}</nobr>
244
+ </td>
245
+ <td style="text-align: center;">
246
+ <nobr>{{row.f_last_tablebase}}</nobr>
247
+ </td>
248
+ <td style="text-align: center;">
249
+ <nobr>{{row.f_tablebase}}</nobr>
250
+ </td>
251
+ <td style="text-align: center;">
252
+ <nobr>{{row.f_oughtamount}}</nobr>
253
+ </td>
254
+ <td style="text-align: center;">
255
+ <nobr>{{row.f_oughtfee}}</nobr>
256
+ </td>
257
+ <td style="text-align: center;">
258
+ <nobr>{{row.f_collection}}</nobr>
259
+ </td>
260
+ <td>
261
+ <nobr>{{row.f_curbalance}}</nobr>
262
+ </td>
263
+ <td style="text-align: center;">
264
+ <nobr>{{row.f_orgname}}</nobr>
265
+ </td>
266
+ </template>
267
+ <template partial='foot'></template>
268
+ </data-grid>
269
+ </criteria-paged>
270
+
271
+ <table class="table-hover">
272
+ <tr style="position: relative;margin-top: -16px;" class="table-bordered">
273
+ <td
274
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
275
+ 汇总信息
276
+ </td>
277
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
278
+ 用气量合计:&emsp;{{sumsmodel.f_oughtamount}}
279
+ </td>
280
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
281
+ 气费合计:&emsp;{{sumsmodel.f_oughtfee}}
282
+ </td>
283
+ </tr>
284
+ </table>
285
+ </div>
286
+ </div>
287
+ <div class="flex" v-if="show">
288
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
289
+ </div>
290
+
291
+ <work-busy :is-busy="iswork" v-show="iswork"></work-busy>
292
+ </div>
293
+ </template>
294
+
295
+ <script>
296
+ import {PagedList, HttpResetClass} from 'vue-client'
297
+ import defaultPrint from '../../components/sale/config/DefaultPrint'
298
+ import exportConfig from '../../components/sale/config/exportConfig'
299
+ import axios from 'axios'
300
+ import plugins from '../../plugins/GetLoginInfoService'
301
+
302
+ let readySomething = async function (self) {
303
+ //加载抄表册
304
+ // self.$MagGetSaleParam.initinputtor();
305
+ // self.getinputtores();
306
+ // self.initmeterbook();
307
+ self.$refs.paged.$refs.cri.model.handStartDate = self.$login.toStandardDateString() + ' 00:00:00'
308
+ self.$refs.paged.$refs.cri.model.handEndDate = self.$login.toStandardDateString() + ' 23:59:59'
309
+
310
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
311
+ await self.$MagLoadParams.loadParam()
312
+ await self.initParams()
313
+ // await self.$getConfig(self, 'WebHandplanMonthQuery')
314
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
315
+ }
316
+ export default {
317
+ props:['data'],
318
+ title: '物联用户月度结算查询',
319
+ data() {
320
+ return {
321
+ iswork:false,
322
+ other:[],
323
+ footer:[],
324
+ data: {},
325
+ model: new PagedList('api/af-revenue/sql/GetWebhandMonthGas', 20, {
326
+ startDate: 'this.model.handStartDate',
327
+ endDate: 'this.model.handEndDate'
328
+ }, {
329
+ f_oughtamount: 0,
330
+ f_oughtfee: 0
331
+ }),
332
+ org:[this.$login.f.orgid],
333
+ orgcondition: ' and f_orgid = ' + this.$login.f.orgid,
334
+ // initres: {
335
+ // org:[this.$login.f.orgid],
336
+ // dep:[],
337
+ // user:[]
338
+ // },
339
+ orderFields: {
340
+ f_input_date: 'no'
341
+ },
342
+ show:false,
343
+ showComponent: ['company'],
344
+ rowdata:{},
345
+ criteriaShow: false,
346
+ residentialArea: [],
347
+ modelval: [],
348
+ gasproperties:[],
349
+ inputtouPerson: [],
350
+ meterbrands: [],
351
+ printshow: false,
352
+ f_filialeid: this.$login.f.f_orgid,
353
+ all: false,
354
+ fields: {},
355
+ thead: '',
356
+ tfoot: '',
357
+ selected:{},
358
+
359
+ // 下拉框
360
+
361
+ //合计数据
362
+ sumsmodel: {},
363
+ defaultfield: [],
364
+ config: {
365
+ defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_meternumber', 'f_hand_date', 'f_oughtamount', 'f_oughtfee']
366
+ },
367
+ prices: [],
368
+ bgl:[{label: '全部', value: ''},{label: '有', value: '1'},{label: '无', value: '0'}],
369
+ meterbooks:[{label: '全部',value: ''}], //抄表册
370
+ tempfalg :false,
371
+ lastorgstr:'',
372
+ allorgid:[],
373
+ inputtores:[{label: '全部',value: ''}], //抄表员
374
+ //表册片区
375
+ bookSlice:[{label: '全部',value: ''}],
376
+ imgfilename:'',
377
+ percent:0,
378
+ uuida:'',
379
+ timer:'',
380
+ }
381
+ },
382
+ ready() {
383
+ // this.$refs.paged.$refs.cri.model.f_meter_state=['已抄表']
384
+ // this.getaddress()
385
+ readySomething(this).then(() => {
386
+ this.$emit('ready')
387
+ }).catch((error) => {
388
+ this.$emit('error', error)
389
+ })
390
+ },
391
+ methods: {
392
+ sort (field, rule) {
393
+ // 将所有排序方式设为不排序,实现相互排斥
394
+ for (let key in this.orderFields) {
395
+ if (key === field) {
396
+ this.orderFields[key] = rule
397
+ } else {
398
+ this.orderFields[key] = 'no'
399
+ }
400
+ }
401
+ // 如果新规则不排序,还原为默认排序
402
+ if (rule === 'no') {
403
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
404
+ } else {
405
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
406
+ }
407
+ this.search()
408
+ },
409
+ getorg(obj) {
410
+ if(plugins.convertToIn(obj)!==null&&plugins.convertToIn(obj)!==''){
411
+ this.orgcondition = " and f_orgid in " + plugins.convertToIn(obj)
412
+ }else{
413
+ this.orgcondition = " and f_orgid = " + this.$login.f.orgid
414
+ }
415
+ },
416
+ // //初始化片区
417
+ // async initSlice (val) {
418
+ // if (val) {
419
+ // let getAllArea = await this.$resetpost('/rs/search', {
420
+ // source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
421
+ // userid: this.$login.f.id
422
+ // }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
423
+ // let arr = getAllArea.data.filter((res) => {
424
+ // return res.parentid == val
425
+ // })
426
+ // this.bookSlice = []
427
+ // arr.forEach((res) => {
428
+ // this.bookSlice.push({label: res.name, value: res.name})
429
+ // })
430
+ // }
431
+ // },
432
+ //表册片区和抄表册关联
433
+ // async inputtorchange(){
434
+ // this.$set('$refs.paged.$refs.cri.model.f_meter_book',[]);
435
+ // /*let val1=this.$refs.paged.$refs.cri.model.f_meter_book*/
436
+ // let val2=this.$refs.paged.$refs.cri.model.f_book_slice_area
437
+ // if((val2.length>0)){
438
+ // let condition = ` 1=1 and f_orgid ='${this.f_filialeid}' and f_book_state='有效' `
439
+ // let aaa = '('
440
+ // val2.forEach((item) => {
441
+ // aaa = aaa + `'${item}',`
442
+ // })
443
+ // aaa = aaa + `'')`
444
+ // condition = condition + ` and f_book_slice_area in ${aaa} `
445
+ // let param={
446
+ // items:'*',
447
+ // tablename:'t_meter_book',
448
+ // condition:condition,
449
+ // orderitem:'id'
450
+ // }
451
+ // let getMeterBooks = await this.$resetpost('api/af-revenue/sql/singleTable_OrderBy', {data: param}, {resolveMsg: null, rejectMsg: '获取营收参数出错!!!'})
452
+ // if (getMeterBooks.data) {
453
+ // if(getMeterBooks.data.length >0){
454
+ // let rs = [];
455
+ // getMeterBooks.data.forEach((item)=>{
456
+ // let temp = {
457
+ // label:item.f_book_name,
458
+ // value:item.id
459
+ // };
460
+ // rs.push(temp);
461
+ //
462
+ // })
463
+ // this.meterbooks = [{label: '全部',value: ''}, ...rs];
464
+ // }else{
465
+ // this.meterbooks = [{label: '全部',value: ''}];
466
+ // }
467
+ // }
468
+ // }else{
469
+ // this.meterbooks = [{label: '全部',value: ''}];
470
+ // this.initmeterbook();
471
+ // }
472
+ // },
473
+ // async initmeterbook(orgstr){
474
+ // if(orgstr == null ){
475
+ // orgstr = this.f_filialeid;
476
+ // }
477
+ // //获取新的抄表册,先去清理所有的抄表册
478
+ // this.$GetSaleParam.meterbooks = [];
479
+ // //开始加载新的抄表册
480
+ // await this.$LoadParams.loadMeterBook(orgstr)
481
+ // this.meterbooks = [{label: '全部', value: ''}, ...this.$GetSaleParam.getMeterBooks()]
482
+ // },
483
+
484
+ // async getinputtores () {
485
+ // // 获取抄表员
486
+ // let rs = []
487
+ // if (this.$login.f.f_gasman.length > 0) {
488
+ // for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
489
+ // let temp = {
490
+ // label: this.$login.f.f_gasman[i].name,
491
+ // value: this.$login.f.f_gasman[i].name
492
+ // }
493
+ // rs.push(temp)
494
+ // }
495
+ // }
496
+ // this.inputtores = [{label: '全部', value: ''}, ...rs]
497
+ // this.inputtores.push({label: "微信公众号", value: "微信公众号"})
498
+ // },
499
+ async updateParams() {
500
+ await this.$MagLoadParams.loadParam(this.f_filialeid)
501
+ this.inputtores = [];
502
+ this.inputtores.push({label: "全部", value: ""})
503
+ this.initSlice(this.f_filialeid)
504
+ if(this.allorgid!=null){
505
+ this.allorgid.forEach((res)=>{
506
+ this.inputtores = this.inputtores.concat(this.$MagGetSaleParam.getresinputtor(res));
507
+ })
508
+ }
509
+ this.initParams()
510
+ },
511
+
512
+ async initParams() {
513
+ // 初始化气表品牌
514
+ let brandArr = []
515
+ await this.$MagGetSaleParam.getGasbrand().forEach((item) => {
516
+ if (item.value.f_meter_type === '物联网表'){
517
+ let temp = {}
518
+ temp.label = item.label
519
+ temp.value = item.value.f_meter_brand
520
+ brandArr.push(temp)
521
+ }
522
+ })
523
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
524
+ //初始化气价
525
+ let result = []
526
+ await this.$MagGetSaleParam.prices.forEach((item) => {
527
+ if (item.f_state === '有效' && this.$login.f.orgid == item.f_filialeid) {
528
+ let value = {
529
+ label: item.f_price_name,
530
+ value: item.f_price_name
531
+ }
532
+ result.push(value)
533
+ }
534
+ })
535
+ let hash = {}
536
+ result = result.reduce((item, next) => {
537
+ hash[next.label] ? '' : hash[next.label] = true && item.push(next)
538
+ return item
539
+ }, [])
540
+ this.prices = Array.from(new Set(result))
541
+ },
542
+ getotherfooter(){
543
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
544
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
545
+ this.other=[];
546
+ this.footer=[];
547
+ let exportdata = this.getCondition;
548
+ let otherInData=[];
549
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
550
+ let secondLine = [
551
+ `开始时间(抄表日期): ${this.$refs.paged.$refs.cri.model.handStartDate}`,
552
+ `结束时间: ${this.$refs.paged.$refs.cri.model.handEndDate}`
553
+ ];
554
+ let footerData=[],exportfield=this.getfield;
555
+ footerData.push("合计");
556
+ let self = this;
557
+ for(var field in self.sumsmodel){
558
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
559
+ }
560
+ this.footer.push(footerData);
561
+ this.other.push(otherInData);
562
+ this.other.push(secondLine);
563
+
564
+ },
565
+ // async getaddress(){
566
+ // let HttpReset = new HttpResetClass()
567
+ // var data = await HttpReset.load('POST', 'api/af-revenue/sql/manage_getarealist', {
568
+ // data: {
569
+ // condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
570
+ // }
571
+ // }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
572
+ // console.log('小区',data)
573
+ // let house = [{label: '全部', value: ''}]
574
+ // for (let row of data.data){
575
+ // house.push({label: row.f_residential_area, value: row.f_residential_area})
576
+ // }
577
+ // this.residentialArea = house
578
+ // },
579
+ search(){
580
+ this.$refs.paged.$refs.cri.search()
581
+ },
582
+ cancel() {
583
+ this.show = false
584
+ },
585
+ selfSearch(args) {
586
+
587
+ if (this.$refs.paged.$refs.cri.model.handStartDate == '' || this.$refs.paged.$refs.cri.model.handEndDate == '') {
588
+ this.$showMessage('请选择【抄表时间】!')
589
+ return
590
+ }
591
+ // this.area = this.$refs.paged.$refs.cri.model.f_residential_area
592
+ // if(this.area.length !== 0){
593
+ // let str = JSON.stringify(this.area)
594
+ // str = str.replace(/"/g,`'`)
595
+ // str = str.replace(/\[/g,``)
596
+ // str = str.replace(/\]/g,``)
597
+ // //查询多个小区时条件
598
+ // args.condition += ` and f_residential_area in ( ${str} )`
599
+ // }
600
+ //抄表员查询条件
601
+ // this.inputtouPerson = this.$refs.paged.$refs.cri.model.f_inputtor
602
+ // if(this.inputtouPerson.length !== 0){
603
+ // let str = JSON.stringify(this.inputtouPerson)
604
+ // str = str.replace(/"/g,`'`)
605
+ // str = str.replace(/\[/g,``)
606
+ // str = str.replace(/\]/g,``)
607
+ // //查询多个抄表员时条件
608
+ // args.condition += ` and f_inputtor in ( ${str} )`
609
+ // }
610
+
611
+ args.condition = `${args.condition} ` + this.orgcondition
612
+ this.model.search(args.condition, args.model)
613
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
614
+ },
615
+ clear() {
616
+ //清空部门和人员
617
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
618
+ //部门和人员变为全选
619
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
620
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
621
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
622
+ this.$refs.paged.$refs.cri.model[key] = []
623
+ })
624
+ },
625
+ show() {
626
+ this.criteriaShow = true
627
+ },
628
+ hidden() {
629
+ this.criteriaShow = !this.criteriaShow
630
+ },
631
+ async getRes(condition,obj) {
632
+ this.orgCondtionStr = condition
633
+
634
+ },
635
+ stamp() {
636
+ this.all = false
637
+ //默认选择要打印的列
638
+ this.modelval = defaultPrint.config
639
+ this.fields = this.getfield
640
+ this.printshow = true
641
+ this.put()
642
+ },
643
+ put() {
644
+ // 对Modelval进行排序
645
+ this.sortModelval()
646
+ this.thead = `<tr><th colspan=${this.modelval.length}>物联用户月度结算查询</th></tr><tr>`
647
+ for (let key of this.modelval) {
648
+ this.thead += '<th>' + this.fields[key] + '</th>'
649
+ }
650
+ this.thead += '</tr>'
651
+ },
652
+ print() {
653
+ this.$refs.print.PrintAsFile()
654
+ this.printshow = false
655
+ },
656
+ dealmsg(val) {
657
+ this.rowdata=val
658
+ this.show=true
659
+ val.model = this.model.model
660
+ this.$dispatch('deal-msg', val)
661
+ },
662
+ close() {
663
+ this.printshow = false
664
+ this.all = false
665
+ },
666
+
667
+ userTypeChange () {
668
+ this.gasproperties=[]
669
+ if(this.$refs.paged.$refs.cri.model !==null) {
670
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
671
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
672
+ }
673
+ else{
674
+ this.gasproperties =[{label: '全部', value: ''}]
675
+ }
676
+ },
677
+ // 对选择的列进行排序
678
+ sortModelval() {
679
+ let sortModel = []
680
+ Object.keys(this.fields).forEach((key) => {
681
+ if (this.modelval.includes(key)) {
682
+ sortModel.push(key)
683
+ }
684
+ })
685
+ this.modelval = sortModel
686
+ }
687
+ },
688
+ watch: {
689
+ 'model.rows'(val) {
690
+ if(val.length === 0){
691
+ this.sumsmodel = {}
692
+ }
693
+ },
694
+ // async 'orgCondtionStr'(val) {
695
+ // this.$refs.paged.$refs.cri.model.f_inputtor=[]
696
+ // this.$refs.paged.$refs.cri.model.f_book_slice_area=[]
697
+ // this.$refs.paged.$refs.cri.model.f_meter_book = []
698
+ // this.meterbooks = [{label: '全部',value: ''}];
699
+ // if(this.lastorgstr != val){
700
+ // this.tempfalg = true;
701
+ // this.lastorgstr = val;
702
+ // }
703
+ // if(this.tempfalg && val != null && val!='' && val.indexOf("(")>-1){
704
+ // this.tempfalg = false;
705
+ // let a = val.substring(val.indexOf("(")+2)
706
+ // await this.initmeterbook(a.substring(0,a.indexOf(")")-1));
707
+ // }
708
+ // let res = val.match(/'(.*?)'/)
709
+ // console.log('正则提取:',res && res[1])
710
+ // if (res) {
711
+ // this.f_filialeid = res[1]
712
+ // if(res.input !=null){
713
+ // let resorgid = res.input.substring(res.input.indexOf("'"));
714
+ // if(resorgid!= null && resorgid!=''){
715
+ // resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
716
+ // // resorgid = resorgid.replaceAll("'","");
717
+ // resorgid = resorgid.replace(/'/g,"");
718
+ // this.allorgid = resorgid.split(",")
719
+ // }
720
+ // }
721
+ // this.updateParams()
722
+ // }
723
+ // },
724
+ 'all'(val) {
725
+ if (val) {
726
+ this.modelval = this.bodyData
727
+ } else {
728
+ this.modelval = defaultPrint.config
729
+ this.put()
730
+ }
731
+ },
732
+ 'modelval.length'() {
733
+ this.put()
734
+ },
735
+ sumsmodel:{
736
+ handler: function(val) {
737
+ this.getotherfooter();
738
+ },
739
+ deep: true
740
+ }
741
+ },
742
+ computed: {
743
+
744
+ getCondition() {
745
+ return {
746
+ startDate: this.$refs.paged.$refs.cri.model.handStartDate,
747
+ endDate: this.$refs.paged.$refs.cri.model.handEndDate,
748
+ condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgcondition
749
+ }
750
+ },
751
+ getfield() {
752
+ return exportConfig.webhandplanMonthConfig
753
+ },
754
+ // getBankfield(){
755
+ // return exportConfig.batchBankConfig2
756
+ // },
757
+ usertypes() {
758
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
759
+ },
760
+ // meterstate() {
761
+ // return [{label: '全部', value: ''}, ...this.$appdata.getParam('抄表状态')]
762
+ // },
763
+ // handstate() {
764
+ // return [{label: '全部', value: ''}, ...this.$appdata.getParam('表单状态')]
765
+ // },
766
+ // pricetypes() {
767
+ // return [{label: '全部', value: ''}, ...this.$appdata.getParam('气价类型')]
768
+ // },
769
+ getPricenames() {
770
+ let f_user_type = this.$refs.paged.$refs.cri.model.f_user_type;
771
+ let f_gasproperties = this.$refs.paged.$refs.cri.model.f_gasproperties;
772
+ let pricetype = this.$refs.paged.$refs.cri.model.pricetype;
773
+ console.log("打印一下:",f_user_type,f_gasproperties,pricetype,this.f_filialeid,this.prices)
774
+ if(this.$refs.paged.$refs.cri.model !==null) {
775
+ let rs = []
776
+ let priceArr = []
777
+ if ( pricetype.length >0) {
778
+ let params = {
779
+ f_price_type: pricetype[0],
780
+ filter: this.f_filialeid,
781
+ prices: this.prices
782
+ }
783
+ this.$MagGetSaleParam.getPrice(params).forEach((item) => {
784
+ let temp = {}
785
+ temp.label = item.label
786
+ temp.value = item.value.f_price_name
787
+ priceArr.push(temp)
788
+ })
789
+ rs = [{label: '全部', value: ''}, ...priceArr]
790
+ }
791
+ if (rs.length === 0) {
792
+ console.log('rs读出来是空')
793
+ this.$refs.paged.$refs.cri.model.f_price_name = ''
794
+ }
795
+ return rs
796
+ }
797
+ },
798
+ // inputtor () {
799
+ // // 获取抄表员
800
+ // console.log('获取抄表员', this.$login.f)
801
+ // let rs = []
802
+ // if (this.$login.f.f_gasman.length > 0) {
803
+ // for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
804
+ // let temp = {
805
+ // label: this.$login.f.f_gasman[i].name,
806
+ // value: this.$login.f.f_gasman[i].name
807
+ // }
808
+ // rs.push(temp)
809
+ // }
810
+ // }
811
+ //
812
+ // return [{label: '全部', value: ''}, ...rs]
813
+ // },
814
+
815
+ },
816
+ events:{
817
+ }
818
+ }
819
+ </script>