manage-client-xy 3.2.28 → 3.2.30

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 (31) hide show
  1. package/build/dev-server.js +2 -2
  2. package/package.json +1 -1
  3. package/src/components/SellReport/FinancialStatement.vue +30 -0
  4. package/src/components/SellReport/ManageBusSummary.vue +241 -241
  5. package/src/components/SellReport/SmartKitchenSummary.vue +275 -275
  6. package/src/components/SellReport/UserNumber.vue +30 -0
  7. package/src/components/SellReport/XianYangNewCharge.vue +355 -355
  8. package/src/components/sale/businessquery/AreaGeneralQuery.vue +715 -700
  9. package/src/components/sale/businessquery/CMHGasQuery.vue +441 -411
  10. package/src/components/sale/businessquery/ChangeMeterQuery.vue +659 -630
  11. package/src/components/sale/businessquery/ChangeUserQuery.vue +403 -373
  12. package/src/components/sale/businessquery/ChargeQuery.vue +1027 -997
  13. package/src/components/sale/businessquery/DisableQuery.vue +433 -403
  14. package/src/components/sale/businessquery/EnableQuery.vue +422 -392
  15. package/src/components/sale/businessquery/FMYGasQuery.vue +440 -410
  16. package/src/components/sale/businessquery/FillCardQuery.vue +522 -492
  17. package/src/components/sale/businessquery/FillGasQuery.vue +506 -476
  18. package/src/components/sale/businessquery/HandplanQuery.vue +728 -698
  19. package/src/components/sale/businessquery/LogQuery.vue +301 -269
  20. package/src/components/sale/businessquery/NewAccountQuery.vue +518 -488
  21. package/src/components/sale/businessquery/OtherChargeQuery.vue +432 -402
  22. package/src/components/sale/businessquery/RecordQuery.vue +399 -369
  23. package/src/components/sale/businessquery/ResidentialQuery.vue +417 -387
  24. package/src/components/sale/businessquery/ReverseQuery.vue +459 -429
  25. package/src/components/sale/businessquery/SellingHand.vue +408 -378
  26. package/src/components/sale/businessquery/TransferQuery.vue +589 -559
  27. package/src/components/sale/businessquery/cancelAccountQuery.vue +518 -488
  28. package/src/components/sale/filesquery/DeviceQuery.vue +30 -0
  29. package/src/components/sale/filesquery/MeterQuery.vue +30 -0
  30. package/src/components/sale/filesquery/UserQuery.vue +796 -764
  31. package/src/components/webmeter/DrillData/UserGasAll.vue +30 -1
@@ -1,429 +1,459 @@
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
-
6
- <criteria-paged :model="model" 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 form-group">
11
- <label class="font_normal_body">客户编号</label>
12
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
- </div>
15
- <div class="col-sm-2 form-group">
16
- <label class="font_normal_body">客户名称</label>
17
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
- condition="f_user_name like '%{}%'" placeholder="客户名称">
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label for="startDate" class="font_normal_body">开始日期</label>
22
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
23
- v-model="model.startDate"
24
- :value.sync="model.startDate"
25
- :format="'yyyy-MM-dd'"
26
- :show-reset-button="true"
27
- condition="f_operate_date >= to_date('{} 00:00:00','yyyy-mm-dd hh24:mi:ss')">
28
- </datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group">
31
- <label for="endDate" class="font_normal_body">结束日期</label>
32
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
33
- v-model="model.endDate"
34
- :value.sync="model.endDate"
35
- :format="'yyyy-MM-dd'"
36
- :show-reset-button="true"
37
- condition="f_operate_date <= to_date('{} 23:59:59','yyyy-mm-dd hh24:mi:ss')">
38
- </datepicker>
39
- </div>
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
- <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
44
- <export-excel :data="$parent.$parent.getCondition"
45
- :field="$parent.$parent.getfield"
46
- sqlurl="rs/logic/exportfile" sql-name="reverseQuery" template-name='冲正查询导出'
47
- v-if ="$parent.$parent.jurisdiction.includes('excel导出')"
48
- :choose-col="true"></export-excel>
49
-
50
- <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>
51
- </div>
52
- </div>
53
- <div class="row">
54
- <res-select-group style="col-sm-2 form-group" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
55
- <div class="col-sm-2 form-group">
56
- <label for="f_area_id" class="font_normal_body">小区编码</label>
57
- <input id="f_area_id" type="text" style="width:60%" class="input_search" v-model="model.f_area_id"
58
- condition="f_area_id = '{}'" placeholder='小区编码'>
59
- </div>
60
- <div class="col-sm-2 form-group">
61
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
62
- <v-select :value.sync="model.f_residential_area"
63
- class="select_list select"
64
- enter-push
65
- multiple = "true"
66
- v-model="model.f_residential_area"
67
- style="width: 60%"
68
- :options='$parent.$parent.residentialArea' placeholder='选择小区'
69
- close-on-select>
70
- </v-select>
71
- </div>
72
- </div>
73
- <div class="row" v-show="$parent.$parent.criteriaShow">
74
- <div class="col-sm-2 form-group">
75
- <label class="font_normal_body">客户地址</label>
76
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
77
- condition="f_address like '%{}%'" placeholder='客户地址'>
78
- </div>
79
- <div class="col-sm-2 form-group">
80
- <label class="font_normal_body">冲正类型</label>
81
- <v-select :value.sync="model.f_type"
82
- v-model="model.f_type"
83
- :options='$parent.$parent.correctTypes' placeholder='请选择'
84
- condition="f_type = '{}'"
85
- close-on-select></v-select>
86
- </div>
87
- <div class="col-sm-2 form-group">
88
- <label class="font_normal_body">用户分类</label>
89
- <v-select :value.sync="model.f_user_type"
90
- @change="$parent.$parent.userTypeChange"
91
- :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
92
- condition="f_user_type = '{}'"
93
- close-on-select></v-select>
94
- </div>
95
- <div class="col-sm-2 form-group">
96
- <label class="font_normal_body">用户类型</label>
97
- <v-select :value.sync="model.f_user_mold"
98
- @change="$parent.$parent.userMoldChange"
99
- :options='$parent.$parent.usermold' placeholder='请选择' v-model="model.f_user_mold"
100
- condition="f_user_mold = '{}'"
101
- close-on-select></v-select>
102
- </div>
103
- <div class="col-sm-2 form-group">
104
- <label class="font_normal_body">用气性质</label>
105
- <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
106
- :options='$parent.$parent.gasproperties' placeholder='请选择'
107
- condition="f_gasproperties = '{}'"
108
- close-on-select></v-select>
109
- </div>
110
- </div>
111
- </div>
112
- </criteria>
113
-
114
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
115
- <template partial='head'>
116
- <tr>
117
- <th>
118
- <nobr>客户编号</nobr>
119
- </th>
120
- <th>
121
- <nobr>客户名称</nobr>
122
- </th>
123
- <th>
124
- <nobr>客户地址</nobr>
125
- </th>
126
- <th>
127
- <nobr>冲正类型</nobr>
128
- </th>
129
- <th>
130
- <nobr>冲正气量</nobr>
131
- </th>
132
- <th>
133
- <nobr>冲正金额</nobr>
134
- </th>
135
- <th>
136
- <nobr>冲正收款</nobr>
137
- </th>
138
- <th>
139
- <nobr>冲正日期</nobr>
140
- </th>
141
- <th>
142
- <nobr>人员</nobr>
143
- </th>
144
- <th>
145
- <nobr>部门</nobr>
146
- </th>
147
- <th>
148
- <nobr>公司</nobr>
149
- </th>
150
- </tr>
151
- </template>
152
- <template partial='body'>
153
- <td style="text-align: center;">
154
- <nobr>
155
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
156
- </td>
157
- <td style="text-align: center;">
158
- <nobr>{{row.f_user_name}}</nobr>
159
- </td>
160
- <td style="text-align: center;">
161
- <nobr>{{row.f_address}}</nobr>
162
- </td>
163
- <td style="text-align: center;">
164
- <nobr>{{row.f_type}}</nobr>
165
- </td>
166
- <td style="text-align: center;">
167
- <nobr>{{row.f_pregas}}</nobr>
168
- </td>
169
- <td style="text-align: center;">
170
- <nobr>{{row.f_preamount}}</nobr>
171
- </td>
172
- <td style="text-align: center;">
173
- <nobr>{{row.f_collection}}</nobr>
174
- </td>
175
- <td style="text-align: center;">
176
- <nobr>{{row.f_operate_date}}</nobr>
177
- </td>
178
- <td style="text-align: center;">
179
- <nobr>{{row.f_operator}}</nobr>
180
- </td>
181
- <td style="text-align: center;">
182
- <nobr>{{row.f_depname}}</nobr>
183
- </td>
184
- <td style="text-align: center;">
185
- <nobr>{{row.f_orgname}}</nobr>
186
- </td>
187
- </template>
188
- <template partial='foot'></template>
189
- </data-grid>
190
-
191
- </criteria-paged>
192
-
193
- <table class="table-hover">
194
- <tr style="position: relative" class="table-bordered">
195
- <td
196
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
197
- 汇总信息
198
- </td>
199
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
200
- 冲正气量合计:&emsp;{{sumsmodel.f_pregas}}
201
- </td>
202
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
203
- 冲正金额合计:&emsp;{{sumsmodel.f_preamount}}
204
- </td>
205
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
206
- 收款合计:&emsp;{{sumsmodel.f_collection}}
207
- </td>
208
- </tr>
209
- </table>
210
-
211
- </div>
212
- <div v-if="show">
213
- <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
214
- </div>
215
- </div>
216
- </div>
217
- </template>
218
-
219
- <script>
220
- import {HttpResetClass, PagedList} from 'vue-client'
221
- import defaultPrint from '../config/DefaultPrint'
222
- import exportConfig from '../config/exportConfig'
223
-
224
- let readySomething = async function (self) {
225
- self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
226
- self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
227
- // await self.$refs.paged.$refs.cri.search()
228
- await self.$MagLoadParams.loadParam()
229
-
230
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
231
- }
232
- export default {
233
- data() {
234
- return {
235
- data: {},
236
- model: new PagedList('rs/sql/reverseQuery', 20, {}, {f_pregas: 0, f_preamount: 0, f_collection: 0}),
237
- criteriaShow: false,
238
- jurisdiction:this.$login.r,
239
- orgCondtionStr: '',
240
- initres: {
241
- org:[this.$login.f.orgid],
242
- dep:[],
243
- user:[],
244
- },
245
- show:false,
246
- residentialArea:[],
247
- area:[],
248
- rowdata:{},
249
- modelval: [],
250
- printshow: false,
251
- all: false,
252
- fields: {},
253
- thead: '',
254
- tfoot: '',
255
- gasproperties:[],
256
- usermold:[],
257
- //合计数据
258
- sumsmodel: {}
259
- }
260
- },
261
- ready() {
262
- this.getaddress()
263
-
264
- readySomething(this).then(() => {
265
- this.$emit('ready')
266
- }).catch((error) => {
267
- this.$emit('error', error)
268
- })
269
- },
270
- methods: {
271
- userTypeChange () {
272
- this.usermold=[]
273
- this.f_gasproperties=[]
274
- if(this.$refs.paged.$refs.cri.model !== null) {
275
- this.$refs.paged.$refs.cri.model.f_gasproperties=''
276
- this.$refs.paged.$refs.cri.model.f_user_mold=''
277
- this.usermold = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
278
- }
279
- else{
280
- this.usermold =[{label: '全部', value: ''}]
281
- }
282
- },
283
- userMoldChange () {
284
- this.gasproperties=[]
285
- if(this.$refs.paged.$refs.cri.model !==null) {
286
- this.$refs.paged.$refs.cri.model.f_gasproperties=''
287
- if (this.$refs.paged.$refs.cri.model.f_user_mold[0] ==='居民'){
288
- this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0] + this.$refs.paged.$refs.cri.model.f_user_mold[0])
289
- return
290
- }
291
- this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_mold[0])
292
- }
293
- else{
294
- this.gasproperties =[{label: '全部', value: ''}]
295
- }
296
- },
297
- async getaddress(){
298
- console.log('开始获取小区')
299
- let HttpReset = new HttpResetClass()
300
- var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
301
- data: {
302
- condition: '1=1'
303
- }
304
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
305
- console.log('小区',data)
306
- let house = []
307
- for (let row of data.data){
308
- console.log('开始保存小区')
309
- house.push({label: row.f_residential_area, value: row.f_residential_area})
310
- }
311
- this.residentialArea = house
312
- },
313
- search(){
314
- this.$refs.paged.$refs.cri.search()
315
- },
316
- cancel() {
317
- this.show = false
318
- },
319
- selfSearch(args) {
320
- //小区查询条件
321
- this.area = this.$refs.paged.$refs.cri.model.f_residential_area
322
- console.log("=====小区model绑定====",this.area)
323
- if(this.area.length !== 0){
324
- let str = JSON.stringify(this.area)
325
- str = str.replace(/"/g,`'`)
326
- str = str.replace(/\[/g,``)
327
- str = str.replace(/\]/g,``)
328
- console.log("=====小区model22222222222绑定====",str)
329
- //查询多个小区时条件
330
- args.condition += ` and f_residential_area in ( ${str} )`
331
- }
332
-
333
- args.condition = `${args.condition}` + this.orgCondtionStr
334
- this.model.search(args.condition, args.model)
335
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
336
- },
337
- clear() {
338
- //清空部门和人员
339
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
340
- //部门和人员变为全选
341
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
342
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
343
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
344
- this.$refs.paged.$refs.cri.model[key] = ''
345
- })
346
- },
347
- show() {
348
- this.criteriaShow = true
349
- },
350
- hidden() {
351
- this.criteriaShow = !this.criteriaShow
352
- },
353
- getRes(obj) {
354
- this.orgCondtionStr = obj
355
- },
356
- stamp() {
357
- this.all = false
358
- //默认选择要打印的列
359
- this.modelval = defaultPrint.config
360
- this.fields = this.getfield
361
- console.log('所有打印字段', this.fields)
362
- this.printshow = true
363
- this.put()
364
- },
365
- dealmsg(val) {
366
- console.log('---------------dealmsg')
367
- this.rowdata=val
368
- this.show=true
369
- val.model = this.model.model
370
- this.$dispatch('deal-msg', val)
371
- },
372
- put() {
373
- // 对Modelval进行排序
374
- this.sortModelval()
375
- this.thead = `<tr><th colspan=${this.modelval.length}>冲正查询统计报表</th></tr><tr>`
376
- for (let key of this.modelval) {
377
- this.thead += '<th>' + this.fields[key] + '</th>'
378
- }
379
- this.thead += '</tr>'
380
- },
381
- print() {
382
- this.$refs.print.PrintAsFile()
383
- this.printshow = false
384
- },
385
- close() {
386
- this.printshow = false
387
- this.all = false
388
- },
389
- // 对选择的列进行排序
390
- sortModelval() {
391
- let sortModel = []
392
- Object.keys(this.fields).forEach((key) => {
393
- if (this.modelval.includes(key)) {
394
- sortModel.push(key)
395
- }
396
- })
397
- this.modelval = sortModel
398
- console.log('选择的打印的字段', this.modelval)
399
- }
400
- },
401
- watch: {
402
- 'all'(val) {
403
- if (val) {
404
- this.modelval = this.bodyData
405
- } else {
406
- this.modelval = defaultPrint.config
407
- this.put()
408
- }
409
- },
410
- 'modelval.length'() {
411
- this.put()
412
- },
413
- },
414
- computed: {
415
- getCondition() {
416
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
417
- },
418
- getfield() {
419
- return exportConfig.reverseConfig
420
- },
421
- usertypes() {
422
- return [...this.$appdata.getParam('用户类型')]
423
- },
424
- correctTypes() {
425
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费类型')]
426
- }
427
- }
428
- }
429
- </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
+
6
+ <criteria-paged :model="model" 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 form-group">
11
+ <label class="font_normal_body">客户编号</label>
12
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
+ </div>
15
+ <div class="col-sm-2 form-group">
16
+ <label class="font_normal_body">客户名称</label>
17
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label for="startDate" class="font_normal_body">开始日期</label>
22
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
23
+ v-model="model.startDate"
24
+ :value.sync="model.startDate"
25
+ :format="'yyyy-MM-dd'"
26
+ :show-reset-button="true"
27
+ condition="f_operate_date >= to_date('{} 00:00:00','yyyy-mm-dd hh24:mi:ss')">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label for="endDate" class="font_normal_body">结束日期</label>
32
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
33
+ v-model="model.endDate"
34
+ :value.sync="model.endDate"
35
+ :format="'yyyy-MM-dd'"
36
+ :show-reset-button="true"
37
+ condition="f_operate_date <= to_date('{} 23:59:59','yyyy-mm-dd hh24:mi:ss')">
38
+ </datepicker>
39
+ </div>
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
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
44
+ <export-excel :data="$parent.$parent.getCondition"
45
+ :field="$parent.$parent.getfield"
46
+ sqlurl="rs/logic/exportfile" sql-name="reverseQuery" template-name='冲正查询导出'
47
+ v-if ="$parent.$parent.jurisdiction.includes('excel导出')"
48
+ :choose-col="true"></export-excel>
49
+
50
+ <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>
51
+ </div>
52
+ </div>
53
+ <div class="row">
54
+ <res-select-group style="col-sm-2 form-group" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
55
+ <div class="col-sm-2 form-group">
56
+ <label for="f_area_id" class="font_normal_body">小区编码</label>
57
+ <input id="f_area_id" type="text" style="width:60%" class="input_search" v-model="model.f_area_id"
58
+ condition="f_area_id = '{}'" placeholder='小区编码'>
59
+ </div>
60
+ <div class="col-sm-2 form-group">
61
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
62
+ <v-select :value.sync="model.f_residential_area"
63
+ class="select_list select"
64
+ enter-push
65
+ multiple = "true"
66
+ v-model="model.f_residential_area"
67
+ style="width: 60%"
68
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
69
+ close-on-select>
70
+ </v-select>
71
+ </div>
72
+ </div>
73
+ <div class="row" v-show="$parent.$parent.criteriaShow">
74
+ <div class="col-sm-2 form-group">
75
+ <label class="font_normal_body">客户地址</label>
76
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
77
+ condition="f_address like '%{}%'" placeholder='客户地址'>
78
+ </div>
79
+ <div class="col-sm-2 form-group">
80
+ <label class="font_normal_body">冲正类型</label>
81
+ <v-select :value.sync="model.f_type"
82
+ v-model="model.f_type"
83
+ :options='$parent.$parent.correctTypes' placeholder='请选择'
84
+ condition="f_type = '{}'"
85
+ close-on-select></v-select>
86
+ </div>
87
+ <div class="col-sm-2 form-group">
88
+ <label class="font_normal_body">用户分类</label>
89
+ <v-select :value.sync="model.f_user_type"
90
+ @change="$parent.$parent.userTypeChange"
91
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
92
+ condition="f_user_type = '{}'"
93
+ close-on-select></v-select>
94
+ </div>
95
+ <div class="col-sm-2 form-group">
96
+ <label class="font_normal_body">用户类型</label>
97
+ <v-select :value.sync="model.f_user_mold"
98
+ @change="$parent.$parent.userMoldChange"
99
+ :options='$parent.$parent.usermold' placeholder='请选择' v-model="model.f_user_mold"
100
+ condition="f_user_mold = '{}'"
101
+ close-on-select></v-select>
102
+ </div>
103
+ <div class="col-sm-2 form-group">
104
+ <label class="font_normal_body">用气性质</label>
105
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
106
+ :options='$parent.$parent.gasproperties' placeholder='请选择'
107
+ condition="f_gasproperties = '{}'"
108
+ close-on-select></v-select>
109
+ </div>
110
+ <div class="col-sm-2 form-group">
111
+ <label class="font_normal_body">房产地址</label>
112
+ <input class="input_search" condition="f_house_address = '{}'"
113
+ placeholder='房产地址'
114
+ style="width:60%" type="text" v-model="model.f_house_address">
115
+ </div>
116
+ <div class="col-sm-2 form-group">
117
+ <label class="font_normal_body">用途</label>
118
+ <input class="input_search" condition="f_property_usage = '{}'"
119
+ placeholder='用途'
120
+ style="width:60%" type="text" v-model="model.f_property_usage">
121
+ </div>
122
+ <div class="col-sm-2 form-group">
123
+ <label class="font_normal_body">房型</label>
124
+ <input class="input_search" condition="f_house_type = '{}'"
125
+ placeholder='房型'
126
+ style="width:60%" type="text" v-model="model.f_house_type">
127
+ </div>
128
+ <div class="col-sm-2 form-group">
129
+ <label class="font_normal_body">是否一户多表</label>
130
+ <input class="input_search" condition="f_is_multi_meter = '{}'"
131
+ placeholder='是否一户多表'
132
+ style="width:60%" type="text" v-model="model.f_is_multi_meter">
133
+ </div>
134
+ <div class="col-sm-2 form-group">
135
+ <label class="font_normal_body">关联ID</label>
136
+ <input class="input_search" condition="f_house_id = '{}'"
137
+ placeholder='关联ID'
138
+ style="width:60%" type="text" v-model="model.f_house_id">
139
+ </div>
140
+ </div>
141
+ </div>
142
+ </criteria>
143
+
144
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
145
+ <template partial='head'>
146
+ <tr>
147
+ <th>
148
+ <nobr>客户编号</nobr>
149
+ </th>
150
+ <th>
151
+ <nobr>客户名称</nobr>
152
+ </th>
153
+ <th>
154
+ <nobr>客户地址</nobr>
155
+ </th>
156
+ <th>
157
+ <nobr>冲正类型</nobr>
158
+ </th>
159
+ <th>
160
+ <nobr>冲正气量</nobr>
161
+ </th>
162
+ <th>
163
+ <nobr>冲正金额</nobr>
164
+ </th>
165
+ <th>
166
+ <nobr>冲正收款</nobr>
167
+ </th>
168
+ <th>
169
+ <nobr>冲正日期</nobr>
170
+ </th>
171
+ <th>
172
+ <nobr>人员</nobr>
173
+ </th>
174
+ <th>
175
+ <nobr>部门</nobr>
176
+ </th>
177
+ <th>
178
+ <nobr>公司</nobr>
179
+ </th>
180
+ </tr>
181
+ </template>
182
+ <template partial='body'>
183
+ <td style="text-align: center;">
184
+ <nobr>
185
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
186
+ </td>
187
+ <td style="text-align: center;">
188
+ <nobr>{{row.f_user_name}}</nobr>
189
+ </td>
190
+ <td style="text-align: center;">
191
+ <nobr>{{row.f_address}}</nobr>
192
+ </td>
193
+ <td style="text-align: center;">
194
+ <nobr>{{row.f_type}}</nobr>
195
+ </td>
196
+ <td style="text-align: center;">
197
+ <nobr>{{row.f_pregas}}</nobr>
198
+ </td>
199
+ <td style="text-align: center;">
200
+ <nobr>{{row.f_preamount}}</nobr>
201
+ </td>
202
+ <td style="text-align: center;">
203
+ <nobr>{{row.f_collection}}</nobr>
204
+ </td>
205
+ <td style="text-align: center;">
206
+ <nobr>{{row.f_operate_date}}</nobr>
207
+ </td>
208
+ <td style="text-align: center;">
209
+ <nobr>{{row.f_operator}}</nobr>
210
+ </td>
211
+ <td style="text-align: center;">
212
+ <nobr>{{row.f_depname}}</nobr>
213
+ </td>
214
+ <td style="text-align: center;">
215
+ <nobr>{{row.f_orgname}}</nobr>
216
+ </td>
217
+ </template>
218
+ <template partial='foot'></template>
219
+ </data-grid>
220
+
221
+ </criteria-paged>
222
+
223
+ <table class="table-hover">
224
+ <tr style="position: relative" class="table-bordered">
225
+ <td
226
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
227
+ 汇总信息
228
+ </td>
229
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
230
+ 冲正气量合计:&emsp;{{sumsmodel.f_pregas}}
231
+ </td>
232
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
233
+ 冲正金额合计:&emsp;{{sumsmodel.f_preamount}}
234
+ </td>
235
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
236
+ 收款合计:&emsp;{{sumsmodel.f_collection}}
237
+ </td>
238
+ </tr>
239
+ </table>
240
+
241
+ </div>
242
+ <div v-if="show">
243
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
244
+ </div>
245
+ </div>
246
+ </div>
247
+ </template>
248
+
249
+ <script>
250
+ import {HttpResetClass, PagedList} from 'vue-client'
251
+ import defaultPrint from '../config/DefaultPrint'
252
+ import exportConfig from '../config/exportConfig'
253
+
254
+ let readySomething = async function (self) {
255
+ self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
256
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
257
+ // await self.$refs.paged.$refs.cri.search()
258
+ await self.$MagLoadParams.loadParam()
259
+
260
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
261
+ }
262
+ export default {
263
+ data() {
264
+ return {
265
+ data: {},
266
+ model: new PagedList('rs/sql/reverseQuery', 20, {}, {f_pregas: 0, f_preamount: 0, f_collection: 0}),
267
+ criteriaShow: false,
268
+ jurisdiction:this.$login.r,
269
+ orgCondtionStr: '',
270
+ initres: {
271
+ org:[this.$login.f.orgid],
272
+ dep:[],
273
+ user:[],
274
+ },
275
+ show:false,
276
+ residentialArea:[],
277
+ area:[],
278
+ rowdata:{},
279
+ modelval: [],
280
+ printshow: false,
281
+ all: false,
282
+ fields: {},
283
+ thead: '',
284
+ tfoot: '',
285
+ gasproperties:[],
286
+ usermold:[],
287
+ //合计数据
288
+ sumsmodel: {}
289
+ }
290
+ },
291
+ ready() {
292
+ this.getaddress()
293
+
294
+ readySomething(this).then(() => {
295
+ this.$emit('ready')
296
+ }).catch((error) => {
297
+ this.$emit('error', error)
298
+ })
299
+ },
300
+ methods: {
301
+ userTypeChange () {
302
+ this.usermold=[]
303
+ this.f_gasproperties=[]
304
+ if(this.$refs.paged.$refs.cri.model !== null) {
305
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
306
+ this.$refs.paged.$refs.cri.model.f_user_mold=''
307
+ this.usermold = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
308
+ }
309
+ else{
310
+ this.usermold =[{label: '全部', value: ''}]
311
+ }
312
+ },
313
+ userMoldChange () {
314
+ this.gasproperties=[]
315
+ if(this.$refs.paged.$refs.cri.model !==null) {
316
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
317
+ if (this.$refs.paged.$refs.cri.model.f_user_mold[0] ==='居民'){
318
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0] + this.$refs.paged.$refs.cri.model.f_user_mold[0])
319
+ return
320
+ }
321
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_mold[0])
322
+ }
323
+ else{
324
+ this.gasproperties =[{label: '全部', value: ''}]
325
+ }
326
+ },
327
+ async getaddress(){
328
+ console.log('开始获取小区')
329
+ let HttpReset = new HttpResetClass()
330
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
331
+ data: {
332
+ condition: '1=1'
333
+ }
334
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
335
+ console.log('小区',data)
336
+ let house = []
337
+ for (let row of data.data){
338
+ console.log('开始保存小区')
339
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
340
+ }
341
+ this.residentialArea = house
342
+ },
343
+ search(){
344
+ this.$refs.paged.$refs.cri.search()
345
+ },
346
+ cancel() {
347
+ this.show = false
348
+ },
349
+ selfSearch(args) {
350
+ //小区查询条件
351
+ this.area = this.$refs.paged.$refs.cri.model.f_residential_area
352
+ console.log("=====小区model绑定====",this.area)
353
+ if(this.area.length !== 0){
354
+ let str = JSON.stringify(this.area)
355
+ str = str.replace(/"/g,`'`)
356
+ str = str.replace(/\[/g,``)
357
+ str = str.replace(/\]/g,``)
358
+ console.log("=====小区model22222222222绑定====",str)
359
+ //查询多个小区时条件
360
+ args.condition += ` and f_residential_area in ( ${str} )`
361
+ }
362
+
363
+ args.condition = `${args.condition}` + this.orgCondtionStr
364
+ this.model.search(args.condition, args.model)
365
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
366
+ },
367
+ clear() {
368
+ //清空部门和人员
369
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
370
+ //部门和人员变为全选
371
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
372
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
373
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
374
+ this.$refs.paged.$refs.cri.model[key] = ''
375
+ })
376
+ },
377
+ show() {
378
+ this.criteriaShow = true
379
+ },
380
+ hidden() {
381
+ this.criteriaShow = !this.criteriaShow
382
+ },
383
+ getRes(obj) {
384
+ this.orgCondtionStr = obj
385
+ },
386
+ stamp() {
387
+ this.all = false
388
+ //默认选择要打印的列
389
+ this.modelval = defaultPrint.config
390
+ this.fields = this.getfield
391
+ console.log('所有打印字段', this.fields)
392
+ this.printshow = true
393
+ this.put()
394
+ },
395
+ dealmsg(val) {
396
+ console.log('---------------dealmsg')
397
+ this.rowdata=val
398
+ this.show=true
399
+ val.model = this.model.model
400
+ this.$dispatch('deal-msg', val)
401
+ },
402
+ put() {
403
+ // 对Modelval进行排序
404
+ this.sortModelval()
405
+ this.thead = `<tr><th colspan=${this.modelval.length}>冲正查询统计报表</th></tr><tr>`
406
+ for (let key of this.modelval) {
407
+ this.thead += '<th>' + this.fields[key] + '</th>'
408
+ }
409
+ this.thead += '</tr>'
410
+ },
411
+ print() {
412
+ this.$refs.print.PrintAsFile()
413
+ this.printshow = false
414
+ },
415
+ close() {
416
+ this.printshow = false
417
+ this.all = false
418
+ },
419
+ // 对选择的列进行排序
420
+ sortModelval() {
421
+ let sortModel = []
422
+ Object.keys(this.fields).forEach((key) => {
423
+ if (this.modelval.includes(key)) {
424
+ sortModel.push(key)
425
+ }
426
+ })
427
+ this.modelval = sortModel
428
+ console.log('选择的打印的字段', this.modelval)
429
+ }
430
+ },
431
+ watch: {
432
+ 'all'(val) {
433
+ if (val) {
434
+ this.modelval = this.bodyData
435
+ } else {
436
+ this.modelval = defaultPrint.config
437
+ this.put()
438
+ }
439
+ },
440
+ 'modelval.length'() {
441
+ this.put()
442
+ },
443
+ },
444
+ computed: {
445
+ getCondition() {
446
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
447
+ },
448
+ getfield() {
449
+ return exportConfig.reverseConfig
450
+ },
451
+ usertypes() {
452
+ return [...this.$appdata.getParam('用户类型')]
453
+ },
454
+ correctTypes() {
455
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费类型')]
456
+ }
457
+ }
458
+ }
459
+ </script>