manage-client 3.3.2 → 3.3.5

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 (63) hide show
  1. package/build/dev-server.js +180 -180
  2. package/package.json +1 -1
  3. package/src/components/sale/businessquery/GroupChargeQuery.vue +481 -481
  4. package/src/components/sale/businessquery/NewAreaGeneralQuery.vue +633 -633
  5. package/src/components/webmeter/recharge/RechargeList.vue +346 -346
  6. package/src/filiale/gehua/GroupChargeQuery.vue +486 -486
  7. package/src/filiale/huayin/ChargeQuery.vue +1305 -1305
  8. package/src/filiale/macheng/config/exportConfig.js +1 -1
  9. package/src/filiale/rongcheng/AreaBuildingDetailInfo.vue +281 -281
  10. package/src/filiale/rongcheng/AreaBuildingInfoSummary.vue +301 -301
  11. package/src/filiale/rongcheng/exportConfig.js +536 -536
  12. package/src/filiale/rongcheng/sale.js +22 -22
  13. package/src/filiale/shanxian/CancellationQuery.vue +426 -0
  14. package/src/filiale/shanxian/ChangeUserQuery.vue +395 -0
  15. package/src/filiale/shanxian/DeviceQuery.vue +586 -0
  16. package/src/filiale/shanxian/DisableQuery.vue +528 -0
  17. package/src/filiale/shanxian/EnableQuery.vue +461 -0
  18. package/src/filiale/shanxian/FMYGasQuery.vue +731 -0
  19. package/src/filiale/shanxian/FillCardQuery.vue +569 -569
  20. package/src/filiale/shanxian/FillGasQuery.vue +588 -588
  21. package/src/filiale/shanxian/FmyGasDeviceQuery.vue +68 -33
  22. package/src/filiale/shanxian/InspectListUserNew.vue +18 -16
  23. package/src/filiale/shanxian/LostContactAnalysisList.vue +633 -632
  24. package/src/filiale/shanxian/MeterQuery.vue +968 -0
  25. package/src/filiale/shanxian/MonthGasQuery.vue +481 -0
  26. package/src/filiale/shanxian/NewQueryInstruct.vue +457 -0
  27. package/src/filiale/shanxian/OtherChargeQuery.vue +684 -684
  28. package/src/filiale/shanxian/ReverseQuery.vue +454 -0
  29. package/src/filiale/shanxian/TransferQuery.vue +469 -0
  30. package/src/filiale/shanxian/UserGasAll.vue +15 -14
  31. package/src/filiale/shanxian/UserLostContactAnalysis.vue +584 -583
  32. package/src/filiale/shanxian/UserQuery.vue +960 -959
  33. package/src/filiale/shanxian/config/exportConfig.js +100 -100
  34. package/src/filiale/shanxian/newwebmeter/TotalExceptionByMeter.vue +608 -0
  35. package/src/filiale/shanxian/sale.js +46 -26
  36. package/src/filiale/shanxian/webmeterManage.js +4 -0
  37. package/src/filiale/wenxi/ChangeMeterQuery.vue +704 -704
  38. package/src/filiale/wenxi/ChangeUserQuery.vue +371 -371
  39. package/src/filiale/wenxi/ChargeQuery.vue +1260 -1260
  40. package/src/filiale/wenxi/FmyGasDeviceQuery.vue +944 -944
  41. package/src/filiale/wenxi/GasDeviceQuery.vue +1041 -1041
  42. package/src/filiale/wenxi/GasStatistics.vue +515 -515
  43. package/src/filiale/wenxi/GetNoMetereadData.vue +374 -374
  44. package/src/filiale/wenxi/HandplanQuery.vue +1370 -1370
  45. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  46. package/src/filiale/wenxi/MeterQuery.vue +937 -964
  47. package/src/filiale/wenxi/NewGasStatistics.vue +522 -522
  48. package/src/filiale/wenxi/RecordInfoQuery.vue +1213 -1213
  49. package/src/filiale/wenxi/WebHandQuery.vue +475 -475
  50. package/src/filiale/wenxi/config/exportConfig.js +916 -916
  51. package/src/filiale/wenxi/sale.js +24 -24
  52. package/src/filiale/wenxi/webmeterManage.js +13 -13
  53. package/src/filiale/xinkang/EchartsBox.vue +139 -139
  54. package/src/filiale/xinkang/ManageBrandHouseCount.vue +347 -347
  55. package/src/filiale/xinkang/NewGasStatistics.vue +526 -526
  56. package/src/filiale/xinkang/exportConfig.js +1998 -1998
  57. package/src/filiale/xinkang/meterFaultChangeSummary.vue +196 -196
  58. package/src/filiale/xinkang/reportManage.js +15 -15
  59. package/src/filiale/xinkang/sale.js +13 -13
  60. package/src/filiale/xinkang/webmeterManage.js +9 -9
  61. package/src/filiale/zhongyi/GasStatistics.vue +521 -521
  62. package/src/main.js +66 -72
  63. package/lib/package_2022-12-01-14-30-50.json +0 -109
@@ -1,569 +1,569 @@
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 @sort="sort">
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 class="font_normal_body">用户地址</label>
22
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
23
- condition="f_address like '%{}%'" placeholder='用户地址'>
24
- </div>
25
- <div class="col-sm-2 form-group">
26
- <label class="font_normal_body" title="旧用户编号">档案编号</label>
27
- <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
28
- condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
29
- </div>
30
-
31
- <div class="span" style="float:right;">
32
- <button class="button_search button_spacing" @click="search()">查询</button>
33
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
34
- <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
35
-
36
- <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
37
- :field="$parent.$parent.getfield" :header="$parent.$parent.other"
38
- sqlurl="rs/logic/exportfile" sql-name="fillCardQuery" template-name='补卡查询导出'
39
- :choose-col="true"></export-excel>
40
- <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
41
- :defaultfield="$parent.$parent.defaultfield"
42
- titletable="补卡记录"
43
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
44
- <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>
45
- </div>
46
- </div>
47
-
48
- <div class="row" v-show="$parent.$parent.criteriaShow">
49
- <div class="col-sm-2 form-group">
50
- <label for="startDate" class="font_normal_body">开始日期</label>
51
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
52
- v-model="model.startDate"
53
- :value.sync="model.startDate"
54
- :format="'yyyy-MM-dd HH:mm:ss'"
55
- :show-reset-button="true"
56
- condition="f_operate_date >= '{}'">
57
- </datepicker>
58
- </div>
59
- <div class="col-sm-2 form-group">
60
- <label for="endDate" class="font_normal_body">结束日期</label>
61
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
62
- v-model="model.endDate"
63
- :value.sync="model.endDate"
64
- :format="'yyyy-MM-dd HH:mm:ss'"
65
- :show-reset-button="true"
66
- condition="f_operate_date <= '{}'">
67
- </datepicker>
68
- </div>
69
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
70
- <div class="col-sm-2 form-group">
71
- <label class="font_normal_body">小&emsp;&emsp;区</label>
72
- <v-select :value.sync="model.f_residential_area"
73
- class="select_list select"
74
- v-model="model.f_residential_area"
75
- style="width: 60%"
76
- multiple
77
- condition="f_residential_area in {}"
78
- :options='$parent.$parent.residentialArea' placeholder='选择小区'
79
- close-on-select>
80
-
81
- </v-select>
82
- </div>
83
- <div class="col-sm-2 form-group">
84
- <label class="font_normal_body">补卡类型</label>
85
- <v-select :value.sync="model.f_type"
86
- v-model="model.f_type"
87
- :value-single="true"
88
- :options='$parent.$parent.fillCardTypes' placeholder='请选择'
89
- condition=" f_type = '{}'"
90
- close-on-select clear-button></v-select>
91
- </div>
92
-
93
- <div class="col-sm-2 form-group">
94
- <label class="font_normal_body">卡&emsp;&emsp;号</label>
95
- <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
96
- condition="f_card_id like '%{}%'" placeholder='卡号'>
97
- </div>
98
- <div class="col-sm-2 form-group">
99
- <label class="font_normal_body">表&emsp;&emsp;号</label>
100
- <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
101
- condition="f_meternumber = '{}'" placeholder='表号'>
102
- </div>
103
- <div class="col-sm-2 form-group">
104
- <label class="font_normal_body">气表品牌</label>
105
- <v-select :value.sync="model.f_meter_brand"
106
- v-model="model.f_meter_brand"
107
- :options='$parent.$parent.meterbrands' placeholder='请选择'
108
- condition="f_meter_brand = '{}'"
109
- close-on-select></v-select>
110
- </div>
111
- <div class="col-sm-2 form-group">
112
- <label class="font_normal_body">补卡状态</label>
113
- <v-select :value.sync="model.f_state"
114
- v-model="model.f_state"
115
- :options='$parent.$parent.chargeState' placeholder='请选择'
116
- condition="f_state = '{}'"
117
- close-on-select></v-select>
118
- </div>
119
- <div class="col-sm-2 form-group">
120
- <label class="font_normal_body">付款方式</label>
121
- <v-select id="f_payment"
122
- v-model="model.f_payment"
123
- placeholder='请选择'
124
- condition="f_payment ='{}'"
125
- :value.sync="model.f_payment"
126
- :options='$parent.$parent.payments'
127
- close-on-select clear-button>
128
- </v-select>
129
- </div>
130
- </div>
131
-
132
- </div>
133
- </criteria>
134
-
135
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
136
- <template partial='head'>
137
- <tr>
138
- <th>
139
- <!-- <nobr>用户编号</nobr>-->
140
- <data-order field="f_userinfo_code" name="用户编号"
141
- :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
142
- </th>
143
- <th>
144
- <nobr>用户名称</nobr>
145
- </th>
146
- <th>
147
- <!-- <nobr>用户地址</nobr>-->
148
- <data-order field="f_address" name="用户地址"
149
- :order.sync="$parent.$parent.$parent.orderFields.f_address"></data-order>
150
- </th>
151
- <th>
152
- <nobr>档案编号</nobr>
153
- </th>
154
- <th>
155
- <nobr>收据票号</nobr>
156
- </th>
157
- <th>
158
- <nobr>表号</nobr>
159
- </th>
160
- <th>
161
- <nobr>小区</nobr>
162
- </th>
163
- <th>
164
- <nobr>卡号</nobr>
165
- </th>
166
- <th>
167
- <nobr>气表品牌</nobr>
168
- </th>
169
- <th>
170
- <nobr>补卡类型</nobr>
171
- </th>
172
- <th>
173
- <nobr>补卡种类</nobr>
174
- </th>
175
- <th>
176
- <nobr>补卡原因</nobr>
177
- </th>
178
- <th>
179
- <nobr>卡费</nobr>
180
- </th>
181
- <th>
182
- <!-- <nobr>补卡日期</nobr>-->
183
- <data-order field="f_operate_date" name="补卡日期"
184
- :order.sync="$parent.$parent.$parent.orderFields.f_operate_date"></data-order>
185
- </th>
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
- <th><nobr>附件</nobr></th>
199
- </tr>
200
- </template>
201
- <template partial='body'>
202
- <td style="text-align: center;">
203
- <nobr>
204
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
205
- </td>
206
- <td style="text-align: center;">
207
- <nobr>{{row.f_user_name}}</nobr>
208
- </td>
209
- <td style="text-align: center;">
210
- <nobr>{{row.f_address}}</nobr>
211
- </td>
212
- <td style="text-align: center;">
213
- <nobr>{{row.f_olduserinfo_code}}</nobr>
214
- </td>
215
- <td style="text-align: center;">
216
- <nobr>{{row.f_bill_number}}</nobr>
217
- </td>
218
- <td style="text-align: center;">
219
- <nobr>{{row.f_meternumber}}</nobr>
220
- </td>
221
- <td style="text-align: center;">
222
- <nobr>{{row.f_residential_area}}</nobr>
223
- </td>
224
- <td style="text-align: center;">
225
- <nobr>{{row.f_card_id}}</nobr>
226
- </td>
227
- <td style="text-align: center;">
228
- <nobr>{{row.f_meter_brand}}</nobr>
229
- </td>
230
- <td style="text-align: center;">
231
- <nobr>{{row. f_type}}</nobr>
232
- </td>
233
- <td style="text-align: center;">
234
- <nobr>{{row. f_fill_type}}</nobr>
235
- </td>
236
- <td style="text-align: center;">
237
- <nobr>{{row.f_comments}}</nobr>
238
- </td>
239
- <td style="text-align: center;">
240
- <nobr>{{row.f_cardfees}}</nobr>
241
- </td>
242
- <td style="text-align: center;">
243
- <nobr>{{row.f_operate_date}}</nobr>
244
- </td>
245
- <td style="text-align: center;">
246
- <nobr>{{row.f_payment}}</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
- <td style="text-align: center;"><nobr>
258
- <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
259
- </nobr></td>
260
- </template>
261
- <template partial='foot'></template>
262
- </data-grid>
263
-
264
- </criteria-paged>
265
-
266
- <table class="table-hover">
267
- <tr style="position: relative" class="table-bordered">
268
- <td
269
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
270
- 汇总信息
271
- </td>
272
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
273
- 卡费合计:&emsp;{{sumsmodel.f_cardfees}}
274
- </td>
275
- </tr>
276
- </table>
277
- </div>
278
- <div class="flex" v-if="show">
279
- <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
280
- </div>
281
- </div>
282
- <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
283
- <article slot="modal-body">
284
- <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="补卡" :isremark="false" style="width:auto" ></upload>
285
- </article>
286
- <footer slot="modal-footer" class="modal-footer">
287
- </footer>
288
- </modal>
289
- </div>
290
- </template>
291
-
292
- <script>
293
- import {HttpResetClass, PagedList} from 'vue-client'
294
- import defaultPrint from './config/DefaultPrint'
295
- import exportConfig from './config/exportConfig'
296
-
297
- let readySomething = async function (self) {
298
-
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
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
305
- await self.$MagLoadParams.loadParam()
306
- self.initParams()
307
-
308
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
309
- }
310
- export default {
311
- props:['data'],
312
- title: '补卡查询',
313
- data() {
314
- return {
315
- data: {},
316
- other:[],
317
- footer:[],
318
- model: new PagedList('rs/sql/fillCardQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_operate_date desc'`}, {f_cardfees: 0}),
319
- criteriaShow: false,
320
- headData: ["用户编号", "用户名称", "用户电话", "身份证号", "地址", "补卡类型", "表编号", "卡号", "气表品牌", "气表状态", "卡费", "补卡日期", "人员", "部门", "公司"],
321
- bodyData: ["f_userinfo_code", "f_user_name", "f_user_phone", "f_idnumber", "address", " f_type", "f_user_id", "f_card_id", "f_meter_brand", "f_table_state", "f_cardfees", "f_operate_date", "f_operator", "f_depname", "f_orgname"],
322
- config: {
323
- defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_idnumber', 'f_card_id', 'f_meter_brand', 'f_operate_date', 'f_cardfees', 'f_operator']
324
- },
325
- //排序
326
- orderitem:'f_operate_date desc',
327
- orderFields: {
328
- f_operate_date: 'no'
329
- },
330
- //默认打印列
331
- defaultfield: [],
332
- orgCondtionStr: '',
333
- initres: {
334
- org:[this.$login.f.orgid],
335
- dep:[],
336
- user:[],
337
- },
338
- modelval: [],
339
- printshow: false,
340
- all: false,
341
- fields: {},
342
- thead: '',
343
- tfoot: '',
344
- showupload:false,
345
- selected:{},
346
- //小区
347
- residentialArea: [],
348
- meterbrands: [],
349
- // tablestate: [{label: '全部', value: ''}, {label: '正常', value: '正常'}, {label: '停用', value: '停用'}],
350
-
351
- show:false,
352
- rowdata:{},
353
- //合计数据
354
- sumsmodel: {}
355
- }
356
- },
357
- ready() {
358
- this.getaddress()
359
- readySomething(this).then(() => {
360
- this.$emit('ready')
361
- }).catch((error) => {
362
- this.$emit('error', error)
363
- })
364
- },
365
- methods: {
366
- view(row){
367
- this.showupload = true
368
- this.selected= row
369
- },
370
- getotherfooter(){
371
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
372
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
373
- this.other=[];
374
- this.footer=[];
375
- let exportdata = this.getCondition;
376
- let otherInData=[];
377
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
378
- let footerData=[],exportfield=this.getfield;
379
- footerData.push("合计");
380
- let self = this;
381
- for(var field in self.sumsmodel){
382
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
383
- }
384
- this.footer.push(footerData);
385
- this.other.push(otherInData);
386
- },
387
- search(){
388
- this.$refs.paged.$refs.cri.search()
389
- },
390
- cancel() {
391
- this.show = false
392
- },
393
- async selfSearch(args) {
394
- console.log("--------------------?")
395
- if (this.data) {
396
- this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
397
- this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
398
- }
399
- args.condition = `${args.condition}` + this.orgCondtionStr
400
- args.condition = args.condition.replace(/f_zones/, "f_slice_area")
401
- await this.model.search(args.condition, args.model)
402
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
403
- },
404
-
405
- initParams() {
406
- // 初始化气表品牌
407
- let brandArr = []
408
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
409
- let temp = {}
410
- temp.label = item.label
411
- temp.value = item.value.f_meter_brand
412
- brandArr.push(temp)
413
- })
414
- this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
415
- },
416
- async getaddress(){
417
- console.log('开始获取小区')
418
- let HttpReset = new HttpResetClass()
419
- var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
420
- data: {
421
- condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
422
- }
423
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
424
- console.log('小区',data)
425
- let house = [{label: '全部', value: ''}]
426
- for (let row of data.data){
427
- console.log('开始保存小区')
428
- house.push({label: row.f_residential_area, value: row.f_residential_area})
429
- }
430
- this.residentialArea = house
431
- },
432
-
433
- clear() {
434
- //清空部门和人员
435
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
436
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].selectres = []
437
- this.$refs.paged.$refs.cri.$refs.sel.slice_area = []
438
- //部门和人员变为全选
439
- // this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
440
- // this.$refs.paged.$refs.cri.$refs.sel.$children[3].$children[0].isSelectAll = false
441
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
442
- this.$refs.paged.$refs.cri.model[key] = []
443
- })
444
- },
445
- show() {
446
- this.criteriaShow = true
447
- },
448
- hidden() {
449
- this.criteriaShow = !this.criteriaShow
450
- },
451
- getRes(condition) {
452
- this.orgCondtionStr = condition
453
- },
454
- dealmsg(val) {
455
- console.log('---------------dealmsg')
456
- this.rowdata=val
457
- this.show=true
458
- val.model = this.model.model
459
- this.$dispatch('deal-msg', val)
460
- },
461
- stamp() {
462
- this.all = false
463
- //默认选择要打印的列
464
- this.modelval = defaultPrint.config
465
- this.fields = this.getfield
466
- console.log('所有打印字段', this.fields)
467
- this.printshow = true
468
- this.put()
469
- },
470
- put() {
471
- // 对Modelval进行排序
472
- this.sortModelval()
473
- this.thead = `<tr><th colspan=${this.modelval.length}>补卡查询统计报表</th></tr><tr>`
474
- for (let key of this.modelval) {
475
- this.thead += '<th>' + this.fields[key] + '</th>'
476
- }
477
- this.thead += '</tr>'
478
- },
479
- print() {
480
- this.$refs.print.PrintAsFile()
481
- this.printshow = false
482
- },
483
- close() {
484
- this.printshow = false
485
- this.all = false
486
- },
487
- // 对选择的列进行排序
488
- sortModelval() {
489
- let sortModel = []
490
- Object.keys(this.fields).forEach((key) => {
491
- if (this.modelval.includes(key)) {
492
- sortModel.push(key)
493
- }
494
- })
495
- this.modelval = sortModel
496
- console.log('选择的打印的字段', this.modelval)
497
- },
498
- sort (field, rule) {
499
- // 将所有排序方式设为不排序,实现相互排斥
500
- for (let key in this.orderFields) {
501
- if (key === field) {
502
- this.orderFields[key] = rule
503
- } else {
504
- this.orderFields[key] = 'no'
505
- }
506
- }
507
- // 如果新规则不排序,还原为默认排序
508
- if (rule === 'no') {
509
- this.model.paramSource.orderitem = `'${this.orderitem}'`
510
- } else {
511
- this.model.paramSource.orderitem = `'${field} ${rule}'`
512
- }
513
-
514
- this.search()
515
- },
516
- async updateParams() {
517
- await this.$MagLoadParams.loadParam(this.f_filialeid)
518
- this.initParams()
519
- },
520
- },
521
- watch: {
522
- 'all'(val) {
523
- if (val) {
524
- this.modelval = this.bodyData
525
- } else {
526
- this.modelval = defaultPrint.config
527
- this.put()
528
- }
529
- },
530
- 'modelval.length'() {
531
- this.put()
532
- },
533
- sumsmodel:{
534
- handler: function(val) {
535
- this.getotherfooter();
536
- },
537
- deep: true
538
- },
539
- 'orgCondtionStr'(val) {
540
- let res = val.match(/'(.*?)'/)
541
- console.log('正则提取:',res && res[1])
542
- if (res) {
543
- this.f_filialeid = res[1]
544
- this.updateParams()
545
- }
546
- }
547
- },
548
- computed: {
549
- getCondition() {
550
- return {
551
- condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr,
552
- orderitem: this.orderitem?`${this.orderitem}`: " f_operate_date desc"
553
- }
554
- },
555
- getfield() {
556
- return exportConfig.fillcardConfig
557
- },
558
- fillCardTypes() {
559
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('补卡类型')]
560
- },
561
- chargeState() {
562
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('补卡状态')]
563
- },
564
- payments() {
565
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('付款方式')]
566
- }
567
- }
568
- }
569
- </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 @sort="sort">
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 class="font_normal_body">用户地址</label>
22
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
23
+ condition="f_address like '%{}%'" placeholder='用户地址'>
24
+ </div>
25
+ <div class="col-sm-2 form-group">
26
+ <label class="font_normal_body" title="旧用户编号">档案编号</label>
27
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
28
+ condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
29
+ </div>
30
+
31
+ <div class="span" style="float:right;">
32
+ <button class="button_search button_spacing" @click="search()">查询</button>
33
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
34
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
35
+
36
+ <export-excel :data="$parent.$parent.getCondition" :footer="$parent.$parent.footer"
37
+ :field="$parent.$parent.getfield" :header="$parent.$parent.other"
38
+ sqlurl="rs/logic/exportfile" sql-name="fillCardQuery" template-name='补卡查询导出'
39
+ :choose-col="true"></export-excel>
40
+ <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
41
+ :defaultfield="$parent.$parent.defaultfield"
42
+ titletable="补卡记录"
43
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
44
+ <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>
45
+ </div>
46
+ </div>
47
+
48
+ <div class="row" v-show="$parent.$parent.criteriaShow">
49
+ <div class="col-sm-2 form-group">
50
+ <label for="startDate" class="font_normal_body">开始日期</label>
51
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
52
+ v-model="model.startDate"
53
+ :value.sync="model.startDate"
54
+ :format="'yyyy-MM-dd HH:mm:ss'"
55
+ :show-reset-button="true"
56
+ condition="f_operate_date >= '{}'">
57
+ </datepicker>
58
+ </div>
59
+ <div class="col-sm-2 form-group">
60
+ <label for="endDate" class="font_normal_body">结束日期</label>
61
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
62
+ v-model="model.endDate"
63
+ :value.sync="model.endDate"
64
+ :format="'yyyy-MM-dd HH:mm:ss'"
65
+ :show-reset-button="true"
66
+ condition="f_operate_date <= '{}'">
67
+ </datepicker>
68
+ </div>
69
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
70
+ <div class="col-sm-2 form-group">
71
+ <label class="font_normal_body">小&emsp;&emsp;区</label>
72
+ <v-select :value.sync="model.f_residential_area"
73
+ class="select_list select"
74
+ v-model="model.f_residential_area"
75
+ style="width: 60%"
76
+ multiple
77
+ condition="f_residential_area in {}"
78
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
79
+ close-on-select>
80
+
81
+ </v-select>
82
+ </div>
83
+ <div class="col-sm-2 form-group">
84
+ <label class="font_normal_body">补卡类型</label>
85
+ <v-select :value.sync="model.f_type"
86
+ v-model="model.f_type"
87
+ :value-single="true"
88
+ :options='$parent.$parent.fillCardTypes' placeholder='请选择'
89
+ condition=" f_type = '{}'"
90
+ close-on-select clear-button></v-select>
91
+ </div>
92
+
93
+ <div class="col-sm-2 form-group">
94
+ <label class="font_normal_body">卡&emsp;&emsp;号</label>
95
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
96
+ condition="f_card_id like '%{}%'" placeholder='卡号'>
97
+ </div>
98
+ <div class="col-sm-2 form-group">
99
+ <label class="font_normal_body">表&emsp;&emsp;号</label>
100
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
101
+ condition="f_meternumber = '{}'" placeholder='表号'>
102
+ </div>
103
+ <div class="col-sm-2 form-group">
104
+ <label class="font_normal_body">气表品牌</label>
105
+ <v-select :value.sync="model.f_meter_brand"
106
+ v-model="model.f_meter_brand"
107
+ :options='$parent.$parent.meterbrands' placeholder='请选择'
108
+ condition="f_meter_brand = '{}'"
109
+ close-on-select></v-select>
110
+ </div>
111
+ <div class="col-sm-2 form-group">
112
+ <label class="font_normal_body">补卡状态</label>
113
+ <v-select :value.sync="model.f_state"
114
+ v-model="model.f_state"
115
+ :options='$parent.$parent.chargeState' placeholder='请选择'
116
+ condition="f_state = '{}'"
117
+ close-on-select></v-select>
118
+ </div>
119
+ <div class="col-sm-2 form-group">
120
+ <label class="font_normal_body">付款方式</label>
121
+ <v-select id="f_payment"
122
+ v-model="model.f_payment"
123
+ placeholder='请选择'
124
+ condition="f_payment ='{}'"
125
+ :value.sync="model.f_payment"
126
+ :options='$parent.$parent.payments'
127
+ close-on-select clear-button>
128
+ </v-select>
129
+ </div>
130
+ </div>
131
+
132
+ </div>
133
+ </criteria>
134
+
135
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
136
+ <template partial='head'>
137
+ <tr>
138
+ <th>
139
+ <!-- <nobr>用户编号</nobr>-->
140
+ <data-order field="f_userinfo_code" name="用户编号"
141
+ :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
142
+ </th>
143
+ <th>
144
+ <nobr>用户名称</nobr>
145
+ </th>
146
+ <th>
147
+ <!-- <nobr>用户地址</nobr>-->
148
+ <data-order field="f_address" name="用户地址"
149
+ :order.sync="$parent.$parent.$parent.orderFields.f_address"></data-order>
150
+ </th>
151
+ <th>
152
+ <nobr>档案编号</nobr>
153
+ </th>
154
+ <th>
155
+ <nobr>收据票号</nobr>
156
+ </th>
157
+ <th>
158
+ <nobr>表号</nobr>
159
+ </th>
160
+ <th>
161
+ <nobr>小区</nobr>
162
+ </th>
163
+ <th>
164
+ <nobr>卡号</nobr>
165
+ </th>
166
+ <th>
167
+ <nobr>气表品牌</nobr>
168
+ </th>
169
+ <th>
170
+ <nobr>补卡类型</nobr>
171
+ </th>
172
+ <th>
173
+ <nobr>补卡种类</nobr>
174
+ </th>
175
+ <th>
176
+ <nobr>补卡原因</nobr>
177
+ </th>
178
+ <th>
179
+ <nobr>卡费</nobr>
180
+ </th>
181
+ <th>
182
+ <!-- <nobr>补卡日期</nobr>-->
183
+ <data-order field="f_operate_date" name="补卡日期"
184
+ :order.sync="$parent.$parent.$parent.orderFields.f_operate_date"></data-order>
185
+ </th>
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
+ <th><nobr>附件</nobr></th>
199
+ </tr>
200
+ </template>
201
+ <template partial='body'>
202
+ <td style="text-align: center;">
203
+ <nobr>
204
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_user_name}}</nobr>
208
+ </td>
209
+ <td style="text-align: center;">
210
+ <nobr>{{row.f_address}}</nobr>
211
+ </td>
212
+ <td style="text-align: center;">
213
+ <nobr>{{row.f_olduserinfo_code}}</nobr>
214
+ </td>
215
+ <td style="text-align: center;">
216
+ <nobr>{{row.f_bill_number}}</nobr>
217
+ </td>
218
+ <td style="text-align: center;">
219
+ <nobr>{{row.f_meternumber}}</nobr>
220
+ </td>
221
+ <td style="text-align: center;">
222
+ <nobr>{{row.f_residential_area}}</nobr>
223
+ </td>
224
+ <td style="text-align: center;">
225
+ <nobr>{{row.f_card_id}}</nobr>
226
+ </td>
227
+ <td style="text-align: center;">
228
+ <nobr>{{row.f_meter_brand}}</nobr>
229
+ </td>
230
+ <td style="text-align: center;">
231
+ <nobr>{{row. f_type}}</nobr>
232
+ </td>
233
+ <td style="text-align: center;">
234
+ <nobr>{{row. f_fill_type}}</nobr>
235
+ </td>
236
+ <td style="text-align: center;">
237
+ <nobr>{{row.f_comments}}</nobr>
238
+ </td>
239
+ <td style="text-align: center;">
240
+ <nobr>{{row.f_cardfees}}</nobr>
241
+ </td>
242
+ <td style="text-align: center;">
243
+ <nobr>{{row.f_operate_date}}</nobr>
244
+ </td>
245
+ <td style="text-align: center;">
246
+ <nobr>{{row.f_payment}}</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
+ <td style="text-align: center;"><nobr>
258
+ <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
259
+ </nobr></td>
260
+ </template>
261
+ <template partial='foot'></template>
262
+ </data-grid>
263
+
264
+ </criteria-paged>
265
+
266
+ <table class="table-hover">
267
+ <tr style="position: relative" class="table-bordered">
268
+ <td
269
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
270
+ 汇总信息
271
+ </td>
272
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
273
+ 卡费合计:&emsp;{{sumsmodel.f_cardfees}}
274
+ </td>
275
+ </tr>
276
+ </table>
277
+ </div>
278
+ <div class="flex" v-if="show">
279
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
280
+ </div>
281
+ </div>
282
+ <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
283
+ <article slot="modal-body">
284
+ <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="补卡" :isremark="false" style="width:auto" ></upload>
285
+ </article>
286
+ <footer slot="modal-footer" class="modal-footer">
287
+ </footer>
288
+ </modal>
289
+ </div>
290
+ </template>
291
+
292
+ <script>
293
+ import {HttpResetClass, PagedList} from 'vue-client'
294
+ import defaultPrint from './config/DefaultPrint'
295
+ import exportConfig from './config/exportConfig'
296
+
297
+ let readySomething = async function (self) {
298
+
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
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
305
+ await self.$MagLoadParams.loadParam()
306
+ self.initParams()
307
+
308
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
309
+ }
310
+ export default {
311
+ props:['data'],
312
+ title: '补卡查询',
313
+ data() {
314
+ return {
315
+ data: {},
316
+ other:[],
317
+ footer:[],
318
+ model: new PagedList('rs/sql/fillCardQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_operate_date desc'`}, {f_cardfees: 0}),
319
+ criteriaShow: false,
320
+ headData: ["用户编号", "用户名称", "用户电话", "身份证号", "地址", "补卡类型", "表编号", "卡号", "气表品牌", "气表状态", "卡费", "补卡日期", "人员", "部门", "公司"],
321
+ bodyData: ["f_userinfo_code", "f_user_name", "f_user_phone", "f_idnumber", "address", " f_type", "f_user_id", "f_card_id", "f_meter_brand", "f_table_state", "f_cardfees", "f_operate_date", "f_operator", "f_depname", "f_orgname"],
322
+ config: {
323
+ defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_idnumber', 'f_card_id', 'f_meter_brand', 'f_operate_date', 'f_cardfees', 'f_operator']
324
+ },
325
+ //排序
326
+ orderitem:'f_operate_date desc',
327
+ orderFields: {
328
+ f_operate_date: 'no'
329
+ },
330
+ //默认打印列
331
+ defaultfield: [],
332
+ orgCondtionStr: '',
333
+ initres: {
334
+ org:[this.$login.f.orgid],
335
+ dep:[],
336
+ user:[],
337
+ },
338
+ modelval: [],
339
+ printshow: false,
340
+ all: false,
341
+ fields: {},
342
+ thead: '',
343
+ tfoot: '',
344
+ showupload:false,
345
+ selected:{},
346
+ //小区
347
+ residentialArea: [],
348
+ meterbrands: [],
349
+ // tablestate: [{label: '全部', value: ''}, {label: '正常', value: '正常'}, {label: '停用', value: '停用'}],
350
+
351
+ show:false,
352
+ rowdata:{},
353
+ //合计数据
354
+ sumsmodel: {}
355
+ }
356
+ },
357
+ ready() {
358
+ this.getaddress()
359
+ readySomething(this).then(() => {
360
+ this.$emit('ready')
361
+ }).catch((error) => {
362
+ this.$emit('error', error)
363
+ })
364
+ },
365
+ methods: {
366
+ view(row){
367
+ this.showupload = true
368
+ this.selected= row
369
+ },
370
+ getotherfooter(){
371
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
372
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
373
+ this.other=[];
374
+ this.footer=[];
375
+ let exportdata = this.getCondition;
376
+ let otherInData=[];
377
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
378
+ let footerData=[],exportfield=this.getfield;
379
+ footerData.push("合计");
380
+ let self = this;
381
+ for(var field in self.sumsmodel){
382
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
383
+ }
384
+ this.footer.push(footerData);
385
+ this.other.push(otherInData);
386
+ },
387
+ search(){
388
+ this.$refs.paged.$refs.cri.search()
389
+ },
390
+ cancel() {
391
+ this.show = false
392
+ },
393
+ async selfSearch(args) {
394
+ console.log("--------------------?")
395
+ if (this.data) {
396
+ this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
397
+ this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
398
+ }
399
+ args.condition = `${args.condition}` + this.orgCondtionStr
400
+ args.condition = args.condition.replace(/f_zones/, "f_slice_area")
401
+ await this.model.search(args.condition, args.model)
402
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
403
+ },
404
+
405
+ initParams() {
406
+ // 初始化气表品牌
407
+ let brandArr = []
408
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
409
+ let temp = {}
410
+ temp.label = item.label
411
+ temp.value = item.value.f_meter_brand
412
+ brandArr.push(temp)
413
+ })
414
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
415
+ },
416
+ async getaddress(){
417
+ console.log('开始获取小区')
418
+ let HttpReset = new HttpResetClass()
419
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
420
+ data: {
421
+ condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
422
+ }
423
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
424
+ console.log('小区',data)
425
+ let house = [{label: '全部', value: ''}]
426
+ for (let row of data.data){
427
+ console.log('开始保存小区')
428
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
429
+ }
430
+ this.residentialArea = house
431
+ },
432
+
433
+ clear() {
434
+ //清空部门和人员
435
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
436
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].selectres = []
437
+ this.$refs.paged.$refs.cri.$refs.sel.slice_area = []
438
+ //部门和人员变为全选
439
+ // this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
440
+ // this.$refs.paged.$refs.cri.$refs.sel.$children[3].$children[0].isSelectAll = false
441
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
442
+ this.$refs.paged.$refs.cri.model[key] = []
443
+ })
444
+ },
445
+ show() {
446
+ this.criteriaShow = true
447
+ },
448
+ hidden() {
449
+ this.criteriaShow = !this.criteriaShow
450
+ },
451
+ getRes(condition) {
452
+ this.orgCondtionStr = condition
453
+ },
454
+ dealmsg(val) {
455
+ console.log('---------------dealmsg')
456
+ this.rowdata=val
457
+ this.show=true
458
+ val.model = this.model.model
459
+ this.$dispatch('deal-msg', val)
460
+ },
461
+ stamp() {
462
+ this.all = false
463
+ //默认选择要打印的列
464
+ this.modelval = defaultPrint.config
465
+ this.fields = this.getfield
466
+ console.log('所有打印字段', this.fields)
467
+ this.printshow = true
468
+ this.put()
469
+ },
470
+ put() {
471
+ // 对Modelval进行排序
472
+ this.sortModelval()
473
+ this.thead = `<tr><th colspan=${this.modelval.length}>补卡查询统计报表</th></tr><tr>`
474
+ for (let key of this.modelval) {
475
+ this.thead += '<th>' + this.fields[key] + '</th>'
476
+ }
477
+ this.thead += '</tr>'
478
+ },
479
+ print() {
480
+ this.$refs.print.PrintAsFile()
481
+ this.printshow = false
482
+ },
483
+ close() {
484
+ this.printshow = false
485
+ this.all = false
486
+ },
487
+ // 对选择的列进行排序
488
+ sortModelval() {
489
+ let sortModel = []
490
+ Object.keys(this.fields).forEach((key) => {
491
+ if (this.modelval.includes(key)) {
492
+ sortModel.push(key)
493
+ }
494
+ })
495
+ this.modelval = sortModel
496
+ console.log('选择的打印的字段', this.modelval)
497
+ },
498
+ sort (field, rule) {
499
+ // 将所有排序方式设为不排序,实现相互排斥
500
+ for (let key in this.orderFields) {
501
+ if (key === field) {
502
+ this.orderFields[key] = rule
503
+ } else {
504
+ this.orderFields[key] = 'no'
505
+ }
506
+ }
507
+ // 如果新规则不排序,还原为默认排序
508
+ if (rule === 'no') {
509
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
510
+ } else {
511
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
512
+ }
513
+
514
+ this.search()
515
+ },
516
+ async updateParams() {
517
+ await this.$MagLoadParams.loadParam(this.f_filialeid)
518
+ this.initParams()
519
+ },
520
+ },
521
+ watch: {
522
+ 'all'(val) {
523
+ if (val) {
524
+ this.modelval = this.bodyData
525
+ } else {
526
+ this.modelval = defaultPrint.config
527
+ this.put()
528
+ }
529
+ },
530
+ 'modelval.length'() {
531
+ this.put()
532
+ },
533
+ sumsmodel:{
534
+ handler: function(val) {
535
+ this.getotherfooter();
536
+ },
537
+ deep: true
538
+ },
539
+ 'orgCondtionStr'(val) {
540
+ let res = val.match(/'(.*?)'/)
541
+ console.log('正则提取:',res && res[1])
542
+ if (res) {
543
+ this.f_filialeid = res[1]
544
+ this.updateParams()
545
+ }
546
+ }
547
+ },
548
+ computed: {
549
+ getCondition() {
550
+ return {
551
+ condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr,
552
+ orderitem: this.orderitem?`${this.orderitem}`: " f_operate_date desc"
553
+ }
554
+ },
555
+ getfield() {
556
+ return exportConfig.fillcardConfig
557
+ },
558
+ fillCardTypes() {
559
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('补卡类型')]
560
+ },
561
+ chargeState() {
562
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('补卡状态')]
563
+ },
564
+ payments() {
565
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('付款方式')]
566
+ }
567
+ }
568
+ }
569
+ </script>