manage-client 3.2.215 → 3.2.217

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/.gradle/4.4/fileHashes/fileHashes.bin +0 -0
  2. package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
  3. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  4. package/.gradle/7.1/dependencies-accessors/gc.properties +0 -0
  5. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  6. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  7. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  8. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  9. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  10. package/.gradle/7.1/gc.properties +0 -0
  11. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  12. package/build/dev-server.js +193 -191
  13. package/package.json +1 -1
  14. package/src/components/sale/filesquery/MeterQuery.vue +607 -627
  15. package/src/filiale/WEINAN/CancellationQuery.vue +526 -526
  16. package/src/filiale/WEINAN/ChargeQuery.vue +800 -800
  17. package/src/filiale/WEINAN/EnableQuery.vue +456 -456
  18. package/src/filiale/WEINAN/StatisticalAnalysis.vue +270 -0
  19. package/src/filiale/WEINAN/UserAddress.vue +655 -655
  20. package/src/filiale/WEINAN/UserAddressChange.vue +58 -58
  21. package/src/filiale/WEINAN/config/exportConfig.js +824 -824
  22. package/src/filiale/WEINAN/sale.js +54 -52
  23. package/src/filiale/jingwei/ChargeQuery.vue +10 -0
  24. package/src/filiale/wuhai/ChargeQuery.vue +2 -2
  25. package/src/filiale/wuhai/OtherChargeQuery.vue +5 -2
  26. package/src/filiale/wuhai/ReportList.vue +26 -2
  27. package/src/filiale/wuhai/config/DefaultPrint.js +6 -0
  28. package/src/filiale/wuhai/config/exportConfig.js +1090 -0
  29. package/src/filiale/wuhai/config/tableConfig.js +54 -0
  30. package/src/filiale/wuhai/webmeterManage.js +1 -1
  31. package/src/main.js +66 -66
@@ -1,456 +1,456 @@
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 for="startDate" class="font_normal_body">开始日期</label>
12
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
- v-model="model.startDate"
14
- :value.sync="model.startDate"
15
- :format="'yyyy-MM-dd HH:mm:ss'"
16
- :show-reset-button="true"
17
- condition="f_operate_date >= '{}'">
18
- </datepicker>
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label for="endDate" class="font_normal_body">结束日期</label>
22
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
- v-model="model.endDate"
24
- :value.sync="model.endDate"
25
- :format="'yyyy-MM-dd HH:mm:ss'"
26
- :show-reset-button="true"
27
- condition="f_operate_date <= '{}'">
28
- </datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group">
31
- <label class="font_normal_body">客户编号</label>
32
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
- </div>
35
- <div class="col-sm-2 form-group" v-show="false">
36
- <label class="font_normal_body" title="旧客户编号">档案编号</label>
37
- <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
38
- condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
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
-
45
- <export-excel :data="$parent.$parent.getCondition"
46
- :field="$parent.$parent.getfield"
47
- :header="$parent.$parent.other"
48
- sqlurl="rs/logic/exportfile" sql-name="enableQuery" template-name='启用查询导出'
49
- :choose-col="true"></export-excel>
50
- <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
51
- :defaultfield="$parent.$parent.defaultfield"
52
- titletable="启用记录"
53
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
54
- <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>
55
- </div>
56
- </div>
57
-
58
- <div class="row" v-show="$parent.$parent.criteriaShow">
59
- <div class="col-sm-2 form-group">
60
- <label class="font_normal_body">表&emsp;&emsp;号</label>
61
- <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
62
- condition="f_meternumber = '{}'" placeholder='表号'>
63
- </div>
64
- <div class="col-sm-2 form-group">
65
- <label class="font_normal_body">卡&emsp;&emsp;号</label>
66
- <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
67
- condition="f_card_id = '{}'" placeholder='卡号'>
68
- </div>
69
- <div class="col-sm-2 form-group" v-show="false">
70
- <label class="font_normal_body">小&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;区</label>
71
- <v-select class="select_list select"
72
- v-model="model.f_residential_area"
73
- :value.sync="model.f_residential_area"
74
- :options='$parent.$parent.residentialarea'
75
- style="width: 60%"
76
- placeholder='选择小区'
77
- condition="f_residential_area = '{}'"
78
- close-on-select>
79
-
80
- </v-select>
81
- </div>
82
- <div class="col-sm-2 form-group" v-show="false">
83
- <label class="font_normal_body">具体地址</label>
84
- <div class="btn-group select_list select" style="width: 60%;">
85
- <input type="text" style="width: 27%;" placeholder="楼号" class="input_search" v-model="model.f_building" condition="f_building = '{}'"/>&nbsp;-&nbsp;
86
- <input type="text" style="width: 20%;" placeholder="单元" class="input_search" v-model="model.f_unit" condition="f_unit = '{}'"/>&nbsp;-&nbsp;
87
- <input type="text" style="width: 36%;" placeholder="室号" class="input_search" v-model="model.f_room" condition="f_room = '{}'" />
88
- </div>
89
- </div>
90
- <div class="col-sm-2 form-group">
91
- <label class="font_normal_body">客户名称</label>
92
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
93
- condition=" f_user_name like '%{}%'" placeholder='客户名称'
94
- :size="model.f_user_name ? model.f_user_name.length * 2 : 1">
95
- </div>
96
- <div class="col-sm-2 form-group">
97
- <label class="font_normal_body">客户地址</label>
98
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
99
- condition="f_address like '%{}%'" placeholder='客户地址'>
100
- </div>
101
- <div class="col-sm-2 form-group">
102
- <label class="font_normal_body">操作类型</label>
103
- <v-select :value.sync="model.f_operat_type"
104
- v-model="model.f_operat_type"
105
- :options='$parent.$parent.operattype' placeholder='请选择'
106
- condition="f_operat_type = '{}'"
107
- close-on-select></v-select>
108
- </div>
109
- <res-select-group :initres="$parent.$parent.initres" :show-component="$parent.$parent.showCom" @re-res="$parent.$parent.getRes" :cascade =true v-ref:sel></res-select-group>
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
- <data-order field="f_userinfo_code" name="客户编号"
119
- :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
120
- </th>
121
- <th>
122
- <nobr>客户名称</nobr>
123
- </th>
124
- <th>
125
- <nobr>档案编号</nobr>
126
- </th>
127
- <th>
128
- <nobr>客户类型</nobr>
129
- </th>
130
- <th>
131
- <data-order field="f_address" name="客户地址"
132
- :order.sync="$parent.$parent.$parent.orderFields.f_address"></data-order>
133
- </th>
134
- <th>
135
- <nobr>表号</nobr>
136
- </th>
137
- <th>
138
- <nobr>启用原因</nobr>
139
- </th>
140
- <th>
141
- <nobr>其他原因</nobr>
142
- </th>
143
- <th>
144
- <nobr>状态</nobr>
145
- </th>
146
- <th>
147
- <data-order field="f_operate_date" name="启用日期"
148
- :order.sync="$parent.$parent.$parent.orderFields.f_operate_date"></data-order>
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><nobr>附件</nobr></th>
163
- </tr>
164
- </template>
165
- <template partial='body'>
166
- <td style="text-align: center;">
167
- <nobr>
168
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
169
- </td>
170
- <td style="text-align: center;">
171
- <nobr>{{row.f_user_name}}</nobr>
172
- </td>
173
- <td style="text-align: center;">
174
- <nobr>{{row.f_olduserinfo_code}}</nobr>
175
- </td>
176
- <td style="text-align: center;">
177
- <nobr>{{row.f_user_type}}</nobr>
178
- </td>
179
- <td style="text-align: center;">
180
- <nobr>{{row.f_address}}</nobr>
181
- </td>
182
- <td style="text-align: center;">
183
- <nobr>{{row.f_meternumber}}</nobr>
184
- </td>
185
- <td style="text-align: center;">
186
- <nobr>{{row.f_enable_reason}}</nobr>
187
- </td>
188
- <td style="text-align: center;">
189
- <nobr>{{row.f_othereason}}</nobr>
190
- </td>
191
- <td style="text-align: center;">
192
- <nobr>{{row.f_state}}</nobr>
193
- </td>
194
- <td style="text-align: center;">
195
- <nobr>{{row.f_operate_date}}</nobr>
196
- </td>
197
- <td style="text-align: center;">
198
- <nobr>{{row.f_operat_type}}</nobr>
199
- </td>
200
- <td style="text-align: center;">
201
- <nobr>{{row.f_operator}}</nobr>
202
- </td>
203
- <td style="text-align: center;">
204
- <nobr>{{row.f_depname}}</nobr>
205
- </td>
206
- <td style="text-align: center;">
207
- <nobr>{{row.f_orgname}}</nobr>
208
- </td>
209
- <td style="text-align: center;"><nobr>
210
- <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
211
- </nobr></td>
212
- </template>
213
- <template partial='foot'></template>
214
- </data-grid>
215
- </criteria-paged>
216
-
217
- <!-- <table class="table-hover">-->
218
- <!-- <tr style="position: relative" class="table-bordered">-->
219
- <!-- <td-->
220
- <!-- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">-->
221
- <!-- 汇总信息-->
222
- <!-- </td>-->
223
- <!-- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">合计:&emsp;{{sumsmodel.f_pregas}}</td>-->
224
- <!-- </tr>-->
225
- <!-- </table>-->
226
- </div>
227
- <div class="flex" v-if="show">
228
- <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
229
- </div>
230
- </div>
231
- <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
232
- <article slot="modal-body">
233
- <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="启用" :isremark="false" style="width:auto" ></upload>
234
- </article>
235
- <footer slot="modal-footer" class="modal-footer">
236
- </footer>
237
- </modal>
238
- </div>
239
- </template>
240
-
241
- <script>
242
- import {PagedList} from 'vue-client'
243
- import defaultPrint from './config/DefaultPrint'
244
- import exportConfig from './config/exportConfig'
245
-
246
- let readySomething = async function (self) {
247
- self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
248
- self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
249
- // await self.$refs.paged.$refs.cri.search()
250
- await self.$MagLoadParams.loadParam()
251
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
252
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
253
- }
254
- export default {
255
- props:['data','residentialarea'],
256
- title: '启用查询',
257
- data() {
258
- return {
259
- data: {},
260
- other: [],
261
- footer: [],
262
- model: new PagedList('rs/sql/enableQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_operate_date desc'`}),
263
- criteriaShow: false,
264
- headData: ["客户编号", "客户名称", "操作人", "操作日期", "启用状态", "停用原因", "其他停用原因", "同步状态"],
265
- bodyData: ["f_userinfo_id", "f_user_name", "f_operator", "f_operate_date", "f_state", "f_comments", "f_othereason", "f_sendsuccess"],
266
- orgCondtionStr: '',
267
- modelval: [],
268
- printshow: false,
269
- all: false,
270
- fields: {},
271
- config: {
272
- defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_enable_reason', 'f_othereason', 'f_state', 'f_operate_date', 'f_operat_type', 'f_operator']
273
- },
274
- //排序
275
- orderitem:'f_operate_date desc',
276
- orderFields: {
277
- f_operate_date: 'no'
278
- },
279
- //默认打印列
280
- defaultfield: [],
281
- initres: {
282
- org: [this.$login.f.orgid],
283
- dep: [],
284
- user: [],
285
- },
286
-
287
- show: false,
288
- rowdata: {},
289
- thead: '',
290
- showupload:false,
291
- selected:{},
292
- tfoot: '',
293
- //合计数据
294
- sumsmodel: {},
295
- operattype:[{label: '全部', value: ''},{label: '启用', value: '启用'},{label: '复拆表', value: '复拆表'},{label: '销户启用', value: '销户启用'}],
296
- showCom:['company','department','operator']
297
- }
298
- },
299
- ready() {
300
- readySomething(this).then(() => {
301
- this.$emit('ready')
302
- }).catch((error) => {
303
- this.$emit('error', error)
304
- })
305
- },
306
- methods: {
307
- view(row){
308
- this.showupload = true
309
- this.selected= row
310
- },
311
- getotherfooter() {
312
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
313
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
314
- this.other = [];
315
- this.footer = [];
316
- let exportdata = this.getCondition;
317
- let otherInData = [];
318
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
319
- let footerData = [], exportfield = this.getfield;
320
- footerData.push("合计");
321
- let self = this;
322
- for (var field in self.sumsmodel) {
323
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
324
- }
325
- this.footer.push(footerData);
326
- this.other.push(otherInData);
327
- },
328
- search() {
329
- this.$refs.paged.$refs.cri.search()
330
- },
331
- cancel() {
332
- this.show = false
333
- },
334
- selfSearch(args) {
335
- if (this.data) {
336
- this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
337
- this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
338
- }
339
- args.condition = `${args.condition} ` + this.orgCondtionStr
340
- args.condition = args.condition.replace(/f_zones/, "f_slice_area")
341
- this.model.search(args.condition, args.model)
342
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
343
- },
344
-
345
- clear() {
346
- //清空部门和人员
347
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
348
- //部门和人员变为全选
349
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
350
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
351
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
352
- this.$refs.paged.$refs.cri.model[key] = []
353
- })
354
- },
355
- dealmsg(val) {
356
- console.log('---------------dealmsg')
357
- this.rowdata = val
358
- this.show = true
359
- val.model = this.model.model
360
- this.$dispatch('deal-msg', val)
361
- },
362
- hidden() {
363
- this.criteriaShow = !this.criteriaShow
364
- },
365
- getRes(obj) {
366
- this.orgCondtionStr = obj
367
- },
368
- stamp() {
369
- this.all = false
370
- //默认选择要打印的列
371
- this.modelval = defaultPrint.config
372
- this.fields = this.getfield
373
- console.log('所有打印字段', this.fields)
374
- this.printshow = true
375
- this.put()
376
- },
377
- put() {
378
- // 对Modelval进行排序
379
- this.sortModelval()
380
- this.thead = `<tr><th colspan=${this.modelval.length}>启用查询报表</th></tr><tr>`
381
- for (let key of this.modelval) {
382
- this.thead += '<th>' + this.fields[key] + '</th>'
383
- }
384
- this.thead += '</tr>'
385
- },
386
- print() {
387
- this.$refs.print.PrintAsFile()
388
- this.printshow = false
389
- },
390
- close() {
391
- this.printshow = false
392
- this.all = false
393
- },
394
- // 对选择的列进行排序
395
- sortModelval() {
396
- let sortModel = []
397
- Object.keys(this.fields).forEach((key) => {
398
- if (this.modelval.includes(key)) {
399
- sortModel.push(key)
400
- }
401
- })
402
- this.modelval = sortModel
403
- console.log('选择的打印的字段', this.modelval)
404
- },
405
- sort (field, rule) {
406
- // 将所有排序方式设为不排序,实现相互排斥
407
- for (let key in this.orderFields) {
408
- if (key === field) {
409
- this.orderFields[key] = rule
410
- } else {
411
- this.orderFields[key] = 'no'
412
- }
413
- }
414
- // 如果新规则不排序,还原为默认排序
415
- if (rule === 'no') {
416
- this.model.paramSource.orderitem = `'${this.orderitem}'`
417
- } else {
418
- this.model.paramSource.orderitem = `'${field} ${rule}'`
419
- }
420
-
421
- this.search()
422
- }
423
- },
424
-
425
- watch: {
426
- 'all'(val) {
427
- if (val) {
428
- this.modelval = this.bodyData
429
- } else {
430
- this.modelval = defaultPrint.config
431
- this.put()
432
- }
433
- },
434
- sumsmodel: {
435
- handler: function (val) {
436
- this.getotherfooter();
437
- },
438
- deep: true
439
- },
440
- 'modelval.length'() {
441
- this.put()
442
- }
443
- },
444
- computed: {
445
- getCondition() {
446
- return {
447
- condition: `${this.$refs.paged.$refs.cri.condition} ` + this.orgCondtionStr,
448
- orderitem: this.orderitem?`${this.orderitem}`: " f_operate_date desc"
449
- }
450
- },
451
- getfield() {
452
- return exportConfig.enableConfig
453
- }
454
- }
455
- }
456
- </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 for="startDate" class="font_normal_body">开始日期</label>
12
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
+ v-model="model.startDate"
14
+ :value.sync="model.startDate"
15
+ :format="'yyyy-MM-dd HH:mm:ss'"
16
+ :show-reset-button="true"
17
+ condition="f_operate_date >= '{}'">
18
+ </datepicker>
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label for="endDate" class="font_normal_body">结束日期</label>
22
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
+ v-model="model.endDate"
24
+ :value.sync="model.endDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="true"
27
+ condition="f_operate_date <= '{}'">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label class="font_normal_body">客户编号</label>
32
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
+ </div>
35
+ <div class="col-sm-2 form-group" v-show="false">
36
+ <label class="font_normal_body" title="旧客户编号">档案编号</label>
37
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_olduserinfo_code"
38
+ condition="f_olduserinfo_code = '{}' " placeholder="档案编号">
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
+
45
+ <export-excel :data="$parent.$parent.getCondition"
46
+ :field="$parent.$parent.getfield"
47
+ :header="$parent.$parent.other"
48
+ sqlurl="rs/logic/exportfile" sql-name="enableQuery" template-name='启用查询导出'
49
+ :choose-col="true"></export-excel>
50
+ <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
51
+ :defaultfield="$parent.$parent.defaultfield"
52
+ titletable="启用记录"
53
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
54
+ <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>
55
+ </div>
56
+ </div>
57
+
58
+ <div class="row" v-show="$parent.$parent.criteriaShow">
59
+ <div class="col-sm-2 form-group">
60
+ <label class="font_normal_body">表&emsp;&emsp;号</label>
61
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
62
+ condition="f_meternumber = '{}'" placeholder='表号'>
63
+ </div>
64
+ <div class="col-sm-2 form-group">
65
+ <label class="font_normal_body">卡&emsp;&emsp;号</label>
66
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
67
+ condition="f_card_id = '{}'" placeholder='卡号'>
68
+ </div>
69
+ <div class="col-sm-2 form-group" v-show="false">
70
+ <label class="font_normal_body">小&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;区</label>
71
+ <v-select class="select_list select"
72
+ v-model="model.f_residential_area"
73
+ :value.sync="model.f_residential_area"
74
+ :options='$parent.$parent.residentialarea'
75
+ style="width: 60%"
76
+ placeholder='选择小区'
77
+ condition="f_residential_area = '{}'"
78
+ close-on-select>
79
+
80
+ </v-select>
81
+ </div>
82
+ <div class="col-sm-2 form-group" v-show="false">
83
+ <label class="font_normal_body">具体地址</label>
84
+ <div class="btn-group select_list select" style="width: 60%;">
85
+ <input type="text" style="width: 27%;" placeholder="楼号" class="input_search" v-model="model.f_building" condition="f_building = '{}'"/>&nbsp;-&nbsp;
86
+ <input type="text" style="width: 20%;" placeholder="单元" class="input_search" v-model="model.f_unit" condition="f_unit = '{}'"/>&nbsp;-&nbsp;
87
+ <input type="text" style="width: 36%;" placeholder="室号" class="input_search" v-model="model.f_room" condition="f_room = '{}'" />
88
+ </div>
89
+ </div>
90
+ <div class="col-sm-2 form-group">
91
+ <label class="font_normal_body">客户名称</label>
92
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
93
+ condition=" f_user_name like '%{}%'" placeholder='客户名称'
94
+ :size="model.f_user_name ? model.f_user_name.length * 2 : 1">
95
+ </div>
96
+ <div class="col-sm-2 form-group">
97
+ <label class="font_normal_body">客户地址</label>
98
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
99
+ condition="f_address like '%{}%'" placeholder='客户地址'>
100
+ </div>
101
+ <div class="col-sm-2 form-group">
102
+ <label class="font_normal_body">操作类型</label>
103
+ <v-select :value.sync="model.f_operat_type"
104
+ v-model="model.f_operat_type"
105
+ :options='$parent.$parent.operattype' placeholder='请选择'
106
+ condition="f_operat_type = '{}'"
107
+ close-on-select></v-select>
108
+ </div>
109
+ <res-select-group :initres="$parent.$parent.initres" :show-component="$parent.$parent.showCom" @re-res="$parent.$parent.getRes" :cascade =true v-ref:sel></res-select-group>
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
+ <data-order field="f_userinfo_code" name="客户编号"
119
+ :order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
120
+ </th>
121
+ <th>
122
+ <nobr>客户名称</nobr>
123
+ </th>
124
+ <th>
125
+ <nobr>档案编号</nobr>
126
+ </th>
127
+ <th>
128
+ <nobr>客户类型</nobr>
129
+ </th>
130
+ <th>
131
+ <data-order field="f_address" name="客户地址"
132
+ :order.sync="$parent.$parent.$parent.orderFields.f_address"></data-order>
133
+ </th>
134
+ <th>
135
+ <nobr>表号</nobr>
136
+ </th>
137
+ <th>
138
+ <nobr>启用原因</nobr>
139
+ </th>
140
+ <th>
141
+ <nobr>其他原因</nobr>
142
+ </th>
143
+ <th>
144
+ <nobr>状态</nobr>
145
+ </th>
146
+ <th>
147
+ <data-order field="f_operate_date" name="启用日期"
148
+ :order.sync="$parent.$parent.$parent.orderFields.f_operate_date"></data-order>
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><nobr>附件</nobr></th>
163
+ </tr>
164
+ </template>
165
+ <template partial='body'>
166
+ <td style="text-align: center;">
167
+ <nobr>
168
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
169
+ </td>
170
+ <td style="text-align: center;">
171
+ <nobr>{{row.f_user_name}}</nobr>
172
+ </td>
173
+ <td style="text-align: center;">
174
+ <nobr>{{row.f_olduserinfo_code}}</nobr>
175
+ </td>
176
+ <td style="text-align: center;">
177
+ <nobr>{{row.f_user_type}}</nobr>
178
+ </td>
179
+ <td style="text-align: center;">
180
+ <nobr>{{row.f_address}}</nobr>
181
+ </td>
182
+ <td style="text-align: center;">
183
+ <nobr>{{row.f_meternumber}}</nobr>
184
+ </td>
185
+ <td style="text-align: center;">
186
+ <nobr>{{row.f_enable_reason}}</nobr>
187
+ </td>
188
+ <td style="text-align: center;">
189
+ <nobr>{{row.f_othereason}}</nobr>
190
+ </td>
191
+ <td style="text-align: center;">
192
+ <nobr>{{row.f_state}}</nobr>
193
+ </td>
194
+ <td style="text-align: center;">
195
+ <nobr>{{row.f_operate_date}}</nobr>
196
+ </td>
197
+ <td style="text-align: center;">
198
+ <nobr>{{row.f_operat_type}}</nobr>
199
+ </td>
200
+ <td style="text-align: center;">
201
+ <nobr>{{row.f_operator}}</nobr>
202
+ </td>
203
+ <td style="text-align: center;">
204
+ <nobr>{{row.f_depname}}</nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_orgname}}</nobr>
208
+ </td>
209
+ <td style="text-align: center;"><nobr>
210
+ <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
211
+ </nobr></td>
212
+ </template>
213
+ <template partial='foot'></template>
214
+ </data-grid>
215
+ </criteria-paged>
216
+
217
+ <!-- <table class="table-hover">-->
218
+ <!-- <tr style="position: relative" class="table-bordered">-->
219
+ <!-- <td-->
220
+ <!-- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">-->
221
+ <!-- 汇总信息-->
222
+ <!-- </td>-->
223
+ <!-- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">合计:&emsp;{{sumsmodel.f_pregas}}</td>-->
224
+ <!-- </tr>-->
225
+ <!-- </table>-->
226
+ </div>
227
+ <div class="flex" v-if="show">
228
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
229
+ </div>
230
+ </div>
231
+ <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
232
+ <article slot="modal-body">
233
+ <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="启用" :isremark="false" style="width:auto" ></upload>
234
+ </article>
235
+ <footer slot="modal-footer" class="modal-footer">
236
+ </footer>
237
+ </modal>
238
+ </div>
239
+ </template>
240
+
241
+ <script>
242
+ import {PagedList} from 'vue-client'
243
+ import defaultPrint from './config/DefaultPrint'
244
+ import exportConfig from './config/exportConfig'
245
+
246
+ let readySomething = async function (self) {
247
+ self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
248
+ self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
249
+ // await self.$refs.paged.$refs.cri.search()
250
+ await self.$MagLoadParams.loadParam()
251
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
252
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
253
+ }
254
+ export default {
255
+ props:['data','residentialarea'],
256
+ title: '启用查询',
257
+ data() {
258
+ return {
259
+ data: {},
260
+ other: [],
261
+ footer: [],
262
+ model: new PagedList('rs/sql/enableQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_operate_date desc'`}),
263
+ criteriaShow: false,
264
+ headData: ["客户编号", "客户名称", "操作人", "操作日期", "启用状态", "停用原因", "其他停用原因", "同步状态"],
265
+ bodyData: ["f_userinfo_id", "f_user_name", "f_operator", "f_operate_date", "f_state", "f_comments", "f_othereason", "f_sendsuccess"],
266
+ orgCondtionStr: '',
267
+ modelval: [],
268
+ printshow: false,
269
+ all: false,
270
+ fields: {},
271
+ config: {
272
+ defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_enable_reason', 'f_othereason', 'f_state', 'f_operate_date', 'f_operat_type', 'f_operator']
273
+ },
274
+ //排序
275
+ orderitem:'f_operate_date desc',
276
+ orderFields: {
277
+ f_operate_date: 'no'
278
+ },
279
+ //默认打印列
280
+ defaultfield: [],
281
+ initres: {
282
+ org: [this.$login.f.orgid],
283
+ dep: [],
284
+ user: [],
285
+ },
286
+
287
+ show: false,
288
+ rowdata: {},
289
+ thead: '',
290
+ showupload:false,
291
+ selected:{},
292
+ tfoot: '',
293
+ //合计数据
294
+ sumsmodel: {},
295
+ operattype:[{label: '全部', value: ''},{label: '启用', value: '启用'},{label: '复拆表', value: '复拆表'},{label: '销户启用', value: '销户启用'}],
296
+ showCom:['company','department','operator']
297
+ }
298
+ },
299
+ ready() {
300
+ readySomething(this).then(() => {
301
+ this.$emit('ready')
302
+ }).catch((error) => {
303
+ this.$emit('error', error)
304
+ })
305
+ },
306
+ methods: {
307
+ view(row){
308
+ this.showupload = true
309
+ this.selected= row
310
+ },
311
+ getotherfooter() {
312
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
313
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
314
+ this.other = [];
315
+ this.footer = [];
316
+ let exportdata = this.getCondition;
317
+ let otherInData = [];
318
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
319
+ let footerData = [], exportfield = this.getfield;
320
+ footerData.push("合计");
321
+ let self = this;
322
+ for (var field in self.sumsmodel) {
323
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
324
+ }
325
+ this.footer.push(footerData);
326
+ this.other.push(otherInData);
327
+ },
328
+ search() {
329
+ this.$refs.paged.$refs.cri.search()
330
+ },
331
+ cancel() {
332
+ this.show = false
333
+ },
334
+ selfSearch(args) {
335
+ if (this.data) {
336
+ this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
337
+ this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
338
+ }
339
+ args.condition = `${args.condition} ` + this.orgCondtionStr
340
+ args.condition = args.condition.replace(/f_zones/, "f_slice_area")
341
+ this.model.search(args.condition, args.model)
342
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
343
+ },
344
+
345
+ clear() {
346
+ //清空部门和人员
347
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
348
+ //部门和人员变为全选
349
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
350
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
351
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
352
+ this.$refs.paged.$refs.cri.model[key] = []
353
+ })
354
+ },
355
+ dealmsg(val) {
356
+ console.log('---------------dealmsg')
357
+ this.rowdata = val
358
+ this.show = true
359
+ val.model = this.model.model
360
+ this.$dispatch('deal-msg', val)
361
+ },
362
+ hidden() {
363
+ this.criteriaShow = !this.criteriaShow
364
+ },
365
+ getRes(obj) {
366
+ this.orgCondtionStr = obj
367
+ },
368
+ stamp() {
369
+ this.all = false
370
+ //默认选择要打印的列
371
+ this.modelval = defaultPrint.config
372
+ this.fields = this.getfield
373
+ console.log('所有打印字段', this.fields)
374
+ this.printshow = true
375
+ this.put()
376
+ },
377
+ put() {
378
+ // 对Modelval进行排序
379
+ this.sortModelval()
380
+ this.thead = `<tr><th colspan=${this.modelval.length}>启用查询报表</th></tr><tr>`
381
+ for (let key of this.modelval) {
382
+ this.thead += '<th>' + this.fields[key] + '</th>'
383
+ }
384
+ this.thead += '</tr>'
385
+ },
386
+ print() {
387
+ this.$refs.print.PrintAsFile()
388
+ this.printshow = false
389
+ },
390
+ close() {
391
+ this.printshow = false
392
+ this.all = false
393
+ },
394
+ // 对选择的列进行排序
395
+ sortModelval() {
396
+ let sortModel = []
397
+ Object.keys(this.fields).forEach((key) => {
398
+ if (this.modelval.includes(key)) {
399
+ sortModel.push(key)
400
+ }
401
+ })
402
+ this.modelval = sortModel
403
+ console.log('选择的打印的字段', this.modelval)
404
+ },
405
+ sort (field, rule) {
406
+ // 将所有排序方式设为不排序,实现相互排斥
407
+ for (let key in this.orderFields) {
408
+ if (key === field) {
409
+ this.orderFields[key] = rule
410
+ } else {
411
+ this.orderFields[key] = 'no'
412
+ }
413
+ }
414
+ // 如果新规则不排序,还原为默认排序
415
+ if (rule === 'no') {
416
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
417
+ } else {
418
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
419
+ }
420
+
421
+ this.search()
422
+ }
423
+ },
424
+
425
+ watch: {
426
+ 'all'(val) {
427
+ if (val) {
428
+ this.modelval = this.bodyData
429
+ } else {
430
+ this.modelval = defaultPrint.config
431
+ this.put()
432
+ }
433
+ },
434
+ sumsmodel: {
435
+ handler: function (val) {
436
+ this.getotherfooter();
437
+ },
438
+ deep: true
439
+ },
440
+ 'modelval.length'() {
441
+ this.put()
442
+ }
443
+ },
444
+ computed: {
445
+ getCondition() {
446
+ return {
447
+ condition: `${this.$refs.paged.$refs.cri.condition} ` + this.orgCondtionStr,
448
+ orderitem: this.orderitem?`${this.orderitem}`: " f_operate_date desc"
449
+ }
450
+ },
451
+ getfield() {
452
+ return exportConfig.enableConfig
453
+ }
454
+ }
455
+ }
456
+ </script>