manage-client 3.3.1 → 3.3.3

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