manage-client 4.1.118 → 4.1.120
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.
- package/build/dev-server.js +158 -145
- package/package.json +1 -1
- package/src/filiale/yuncheng/ChangeMeterQuery.vue +11 -0
- package/src/filiale/yuncheng/LostContactAnalysisList.vue +23 -21
- package/src/filiale/yuncheng/MeterQuery.vue +11 -1
- package/src/filiale/yuncheng/UserLostContactAnalysis.vue +726 -0
- package/src/filiale/yuncheng/config/exportConfig.js +2 -0
- package/src/filiale/yuncheng/sale.js +4 -0
- package/src/main.js +3 -3
package/build/dev-server.js
CHANGED
|
@@ -1,145 +1,158 @@
|
|
|
1
|
-
const express = require('express')
|
|
2
|
-
const webpack = require('webpack')
|
|
3
|
-
const config = require('./webpack.dev.conf')
|
|
4
|
-
const proxyMiddleware = require('http-proxy-middleware')
|
|
5
|
-
|
|
6
|
-
const app = express()
|
|
7
|
-
const compiler = webpack(config)
|
|
8
|
-
|
|
9
|
-
const server = '
|
|
10
|
-
const local = 'http://127.0.0.1:9026/'
|
|
11
|
-
const proxyTable = {
|
|
12
|
-
'/
|
|
13
|
-
target: server
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
//
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
//
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
'/rs/
|
|
58
|
-
target: server
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
},
|
|
67
|
-
'/rs/
|
|
68
|
-
target: server
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
},
|
|
82
|
-
'/rs/config': {
|
|
83
|
-
target: server
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
},
|
|
97
|
-
'/rs/
|
|
98
|
-
target: server
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
1
|
+
const express = require('express')
|
|
2
|
+
const webpack = require('webpack')
|
|
3
|
+
const config = require('./webpack.dev.conf')
|
|
4
|
+
const proxyMiddleware = require('http-proxy-middleware')
|
|
5
|
+
|
|
6
|
+
const app = express()
|
|
7
|
+
const compiler = webpack(config)
|
|
8
|
+
|
|
9
|
+
const server = 'https://yc.aofengcloud.com:31467'
|
|
10
|
+
const local = 'http://127.0.0.1:9026/'
|
|
11
|
+
const proxyTable = {
|
|
12
|
+
'/dataManage': {
|
|
13
|
+
target: server,
|
|
14
|
+
changeOrigin: true,
|
|
15
|
+
secure: false
|
|
16
|
+
},
|
|
17
|
+
// ... existing code ...
|
|
18
|
+
'/api': {
|
|
19
|
+
target: server,
|
|
20
|
+
changeOrigin: true,
|
|
21
|
+
secure: false
|
|
22
|
+
},
|
|
23
|
+
'/files': {
|
|
24
|
+
target: server,
|
|
25
|
+
changeOrigin: true,
|
|
26
|
+
secure: false
|
|
27
|
+
},
|
|
28
|
+
// 查找资源服务数据
|
|
29
|
+
'/rs/search': {
|
|
30
|
+
target: server,
|
|
31
|
+
changeOrigin: true,
|
|
32
|
+
secure: false
|
|
33
|
+
},
|
|
34
|
+
// 查找资源服务数据
|
|
35
|
+
'/rs/logic/getLogin': {
|
|
36
|
+
target: server,
|
|
37
|
+
changeOrigin: true,
|
|
38
|
+
secure: false
|
|
39
|
+
},
|
|
40
|
+
// 查找资源服务数据
|
|
41
|
+
'/rs/logic/getInitData': {
|
|
42
|
+
target: server,
|
|
43
|
+
changeOrigin: true,
|
|
44
|
+
secure: false
|
|
45
|
+
},
|
|
46
|
+
'/rs/logic/getSaleInitData': {
|
|
47
|
+
target: server,
|
|
48
|
+
changeOrigin: true,
|
|
49
|
+
secure: false
|
|
50
|
+
},
|
|
51
|
+
// 用户登录服务地址
|
|
52
|
+
'/rs/user': {
|
|
53
|
+
target: server,
|
|
54
|
+
changeOrigin: true,
|
|
55
|
+
secure: false
|
|
56
|
+
},
|
|
57
|
+
'/rs/path/getParams': {
|
|
58
|
+
target: server,
|
|
59
|
+
changeOrigin: true,
|
|
60
|
+
secure: false
|
|
61
|
+
},
|
|
62
|
+
'/rs/data': {
|
|
63
|
+
target: server,
|
|
64
|
+
changeOrigin: true,
|
|
65
|
+
secure: false
|
|
66
|
+
},
|
|
67
|
+
'/rs/license': {
|
|
68
|
+
target: server,
|
|
69
|
+
changeOrigin: true,
|
|
70
|
+
secure: false
|
|
71
|
+
},
|
|
72
|
+
'/rs/db': {
|
|
73
|
+
target: server,
|
|
74
|
+
changeOrigin: true,
|
|
75
|
+
secure: false
|
|
76
|
+
},
|
|
77
|
+
'/excel': {
|
|
78
|
+
target: server,
|
|
79
|
+
changeOrigin: true,
|
|
80
|
+
secure: false
|
|
81
|
+
},
|
|
82
|
+
'/rs/config': {
|
|
83
|
+
target: server,
|
|
84
|
+
changeOrigin: true,
|
|
85
|
+
secure: false
|
|
86
|
+
},
|
|
87
|
+
'/rs/sql/getLicenseById': {
|
|
88
|
+
target: server,
|
|
89
|
+
changeOrigin: true,
|
|
90
|
+
secure: false
|
|
91
|
+
},
|
|
92
|
+
'/rs/report': {
|
|
93
|
+
target: server,
|
|
94
|
+
changeOrigin: true,
|
|
95
|
+
secure: false
|
|
96
|
+
},
|
|
97
|
+
'/rs/vue': {
|
|
98
|
+
target: server,
|
|
99
|
+
changeOrigin: true,
|
|
100
|
+
secure: false
|
|
101
|
+
},
|
|
102
|
+
'/rs/file': {
|
|
103
|
+
target: server,
|
|
104
|
+
changeOrigin: true,
|
|
105
|
+
secure: false
|
|
106
|
+
},
|
|
107
|
+
'/rs/sql/singleTable': {
|
|
108
|
+
target: server,
|
|
109
|
+
changeOrigin: true,
|
|
110
|
+
secure: false
|
|
111
|
+
},
|
|
112
|
+
'/rs': {
|
|
113
|
+
target: server,
|
|
114
|
+
changeOrigin: true,
|
|
115
|
+
secure: false
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
const devMiddleware = require('webpack-dev-middleware')(compiler, {
|
|
119
|
+
publicPath: config.output.publicPath,
|
|
120
|
+
stats: {
|
|
121
|
+
colors: true,
|
|
122
|
+
chunks: false
|
|
123
|
+
}
|
|
124
|
+
})
|
|
125
|
+
|
|
126
|
+
const hotMiddleware = require('webpack-hot-middleware')(compiler)
|
|
127
|
+
// force page reload when html-webpack-plugin template changes
|
|
128
|
+
compiler.plugin('compilation', function (compilation) {
|
|
129
|
+
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
|
|
130
|
+
hotMiddleware.publish({action: 'reload'})
|
|
131
|
+
cb()
|
|
132
|
+
})
|
|
133
|
+
})
|
|
134
|
+
|
|
135
|
+
// proxy api requests
|
|
136
|
+
Object.keys(proxyTable).forEach(function (context) {
|
|
137
|
+
let options = proxyTable[context]
|
|
138
|
+
if (typeof options === 'string') {
|
|
139
|
+
options = {target: options}
|
|
140
|
+
}
|
|
141
|
+
app.use(proxyMiddleware(context, options))
|
|
142
|
+
})
|
|
143
|
+
|
|
144
|
+
app.use(require('connect-history-api-fallback')())
|
|
145
|
+
|
|
146
|
+
app.use(devMiddleware)
|
|
147
|
+
|
|
148
|
+
app.use(hotMiddleware)
|
|
149
|
+
|
|
150
|
+
app.use('/static', express.static('./static'))
|
|
151
|
+
|
|
152
|
+
module.exports = app.listen(8015, function (err) {
|
|
153
|
+
if (err) {
|
|
154
|
+
console.log(err)
|
|
155
|
+
return
|
|
156
|
+
}
|
|
157
|
+
console.log('Listening at http://localhost:8015')
|
|
158
|
+
})
|
package/package.json
CHANGED
|
@@ -194,6 +194,11 @@
|
|
|
194
194
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_defendcard"
|
|
195
195
|
condition="f_defendcard = '{}'" placeholder='防盗卡号'>
|
|
196
196
|
</div>
|
|
197
|
+
<div class="col-sm-2 form-group">
|
|
198
|
+
<label class="font_normal_body">防盗卡号2</label>
|
|
199
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_defendcard_two"
|
|
200
|
+
condition="f_defendcard_two = '{}'" placeholder='防盗卡号2'>
|
|
201
|
+
</div>
|
|
197
202
|
<div class="col-sm-2 form-group">
|
|
198
203
|
<label class="font_normal_body">换表单号</label>
|
|
199
204
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_serial_number"
|
|
@@ -257,6 +262,9 @@
|
|
|
257
262
|
<th>
|
|
258
263
|
<nobr>防盗卡号</nobr>
|
|
259
264
|
</th>
|
|
265
|
+
<th>
|
|
266
|
+
<nobr>防盗卡号2</nobr>
|
|
267
|
+
</th>
|
|
260
268
|
<th>
|
|
261
269
|
<nobr>旧气表品牌</nobr>
|
|
262
270
|
</th>
|
|
@@ -360,6 +368,9 @@
|
|
|
360
368
|
<td style="text-align: center;">
|
|
361
369
|
<nobr>{{row.f_defendcard}}</nobr>
|
|
362
370
|
</td>
|
|
371
|
+
<td style="text-align: center;">
|
|
372
|
+
<nobr>{{row.f_defendcard_two}}</nobr>
|
|
373
|
+
</td>
|
|
363
374
|
<td style="text-align: center;">
|
|
364
375
|
<nobr>{{row.f_meter_brand_old}}</nobr>
|
|
365
376
|
</td>
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
</div>
|
|
96
96
|
<div class="col-sm-2 form-group" >
|
|
97
97
|
<label class="font_normal_body">气表型号</label>
|
|
98
|
-
<v-select
|
|
98
|
+
<v-select
|
|
99
99
|
placeholder='气表型号'
|
|
100
100
|
:value.sync="model.f_meter_style"
|
|
101
101
|
v-model="model.f_meter_style"
|
|
@@ -103,14 +103,6 @@
|
|
|
103
103
|
close-on-select
|
|
104
104
|
condition="f_meter_style='{}'">
|
|
105
105
|
</v-select>
|
|
106
|
-
<v-select v-if="!$parent.$parent.styles"
|
|
107
|
-
placeholder='气表型号'
|
|
108
|
-
:value.sync="model.f_meter_style"
|
|
109
|
-
v-model="model.f_meter_style"
|
|
110
|
-
:options='$parent.$parent.Warningstyles'
|
|
111
|
-
close-on-select
|
|
112
|
-
condition="f_meter_style='{}'">
|
|
113
|
-
</v-select>
|
|
114
106
|
</div>
|
|
115
107
|
<div class="col-sm-2 form-group">
|
|
116
108
|
<label class="font_normal_body">用户状态</label>
|
|
@@ -452,10 +444,9 @@
|
|
|
452
444
|
WarningType: [
|
|
453
445
|
{label: '全部', value: ''}
|
|
454
446
|
],
|
|
455
|
-
|
|
447
|
+
Warningstyle: [
|
|
456
448
|
{label: '全部', value: ''}
|
|
457
449
|
],
|
|
458
|
-
styles:false,
|
|
459
450
|
filename: '',
|
|
460
451
|
orgCondtionStr: ` and f_orgid = '${this.$login.f.orgid}'`,
|
|
461
452
|
echarts: false,
|
|
@@ -478,15 +469,22 @@
|
|
|
478
469
|
ready() {
|
|
479
470
|
readySomething(this)
|
|
480
471
|
this.getMeterTypeAndBrand('f_meter_brand', '1=1')
|
|
472
|
+
this.getMeterTypeAndBrand('f_meter_style', `1=1`)
|
|
481
473
|
},
|
|
482
474
|
methods: {
|
|
483
475
|
getMeterType() {
|
|
484
476
|
this.Warningstyle = [{label: '全部', value: ''}]
|
|
485
|
-
this.styles = false
|
|
486
477
|
let f_meter_brand = this.$refs.paged.$refs.cri.model.f_meter_brand
|
|
478
|
+
if (!f_meter_brand || f_meter_brand == ''){
|
|
479
|
+
this.getMeterTypeAndBrand('f_meter_style', `1=1`)
|
|
480
|
+
return
|
|
481
|
+
}
|
|
487
482
|
this.getMeterTypeAndBrand('f_meter_style', `f_meter_brand='${f_meter_brand}'`)
|
|
488
483
|
},
|
|
489
484
|
getMeterTypeAndBrand(groupname, condition) {
|
|
485
|
+
this.Warningstyle= [
|
|
486
|
+
{label: '全部', value: ''}
|
|
487
|
+
],
|
|
490
488
|
condition = `${condition} and ui.f_orgid like '${this.$login.f.orgid}%'`
|
|
491
489
|
let self = this
|
|
492
490
|
let load = new HttpResetClass()
|
|
@@ -504,9 +502,6 @@
|
|
|
504
502
|
//气表品牌
|
|
505
503
|
// self.WarningType.push(dr)
|
|
506
504
|
} else if (groupname == 'f_meter_style') {
|
|
507
|
-
self.Warningstyle= [
|
|
508
|
-
{label: '全部', value: ''}
|
|
509
|
-
],
|
|
510
505
|
self.$refs.paged.$refs.cri.model.f_meter_style=''
|
|
511
506
|
let dr = {}
|
|
512
507
|
dr.label = res.data[i].f_meter_style
|
|
@@ -515,17 +510,24 @@
|
|
|
515
510
|
self.Warningstyle.push(dr)
|
|
516
511
|
}
|
|
517
512
|
}
|
|
518
|
-
if (self.Warningstyle.length > 1) {
|
|
519
|
-
self.showMeterStyle()
|
|
520
|
-
}
|
|
521
513
|
})
|
|
522
514
|
|
|
523
515
|
},
|
|
524
|
-
showMeterStyle() {
|
|
525
|
-
this.styles = true
|
|
526
|
-
},
|
|
527
516
|
userTypeChange () {
|
|
528
517
|
this.gasproperties=[{label: '全部', value: ''}]
|
|
518
|
+
let userType = this.$refs.paged.$refs.cri.model.f_user_type
|
|
519
|
+
if (!userType || userType == '') {
|
|
520
|
+
this.$refs.paged.$refs.cri.model.f_gasproperties=''
|
|
521
|
+
for (let usertype of this.usertypes) {
|
|
522
|
+
if (!usertype || usertype.value == ''){
|
|
523
|
+
continue
|
|
524
|
+
}
|
|
525
|
+
let res = this.$appdata.getParam(usertype.value)
|
|
526
|
+
console.log('gasproperties', res)
|
|
527
|
+
this.gasproperties.push(...res)
|
|
528
|
+
}
|
|
529
|
+
return
|
|
530
|
+
}
|
|
529
531
|
if(this.$refs.paged.$refs.cri.model && this.$refs.paged.$refs.cri.model.f_user_type) {
|
|
530
532
|
this.$refs.paged.$refs.cri.model.f_gasproperties=''
|
|
531
533
|
|
|
@@ -223,6 +223,11 @@
|
|
|
223
223
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_defendcard"
|
|
224
224
|
condition="f_defendcard = '{}'" placeholder='防盗卡号'>
|
|
225
225
|
</div>
|
|
226
|
+
<div class="col-sm-2 form-group">
|
|
227
|
+
<label class="font_normal_body">防盗卡号2</label>
|
|
228
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_defendcard_two"
|
|
229
|
+
condition="f_defendcard_two = '{}'" placeholder='防盗卡号2'>
|
|
230
|
+
</div>
|
|
226
231
|
<div class="col-sm-2 form-group">
|
|
227
232
|
<label class="font_normal_body">阀门状态</label>
|
|
228
233
|
<v-select :value.sync="model.f_valve_state" v-model="model.f_valve_state"
|
|
@@ -309,6 +314,9 @@
|
|
|
309
314
|
<th>
|
|
310
315
|
<nobr>防盗卡号</nobr>
|
|
311
316
|
</th>
|
|
317
|
+
<th>
|
|
318
|
+
<nobr>防盗卡号2</nobr>
|
|
319
|
+
</th>
|
|
312
320
|
<th>
|
|
313
321
|
<nobr>气价名称</nobr>
|
|
314
322
|
</th>
|
|
@@ -409,7 +417,9 @@
|
|
|
409
417
|
<td :class="row.f_table_state !== '正常' ? 'back-red' : 'back-blue'" style="text-align: center;">
|
|
410
418
|
<nobr>{{ row.f_defendcard }}</nobr>
|
|
411
419
|
</td>
|
|
412
|
-
|
|
420
|
+
<td :class="row.f_table_state !== '正常' ? 'back-red' : 'back-blue'" style="text-align: center;">
|
|
421
|
+
<nobr>{{ row.f_defendcard_two }}</nobr>
|
|
422
|
+
</td>
|
|
413
423
|
|
|
414
424
|
<td :class="row.f_table_state !== '正常' ? 'back-red' : 'back-blue'" style="text-align: center;">
|
|
415
425
|
<nobr>{{ row.f_price_name }}</nobr>
|
|
@@ -0,0 +1,726 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row" v-if="!showdetail">
|
|
3
|
+
<div id='app1' class="basic-main" v-show="(!echarts)&&(!isActiveTotalForm)">
|
|
4
|
+
<criteria-paged :model="model" :pager='true' v-ref:paged>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
|
|
6
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" novalidate partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<!--<div class="form-group">-->
|
|
9
|
+
<!--<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'-->
|
|
10
|
+
<!--condition="f_user_name = '{}'" v-next-el='userid' v-el:username-->
|
|
11
|
+
<!--:size="model.f_user_name ? model.f_user_name.length * 2 : 8">-->
|
|
12
|
+
<!--</div>-->
|
|
13
|
+
|
|
14
|
+
<div class="col-sm-2 form-group">
|
|
15
|
+
<label class="font_normal_body">客户编号</label>
|
|
16
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search"
|
|
17
|
+
v-model="model.f_userinfo_code" placeholder='客户编号'
|
|
18
|
+
condition="f_userinfo_code like '%{}%'" v-el:xq v-next-el='userinfocode' v-el:username
|
|
19
|
+
>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="col-sm-2 form-group">
|
|
22
|
+
<label class="font_normal_body">客户名称</label>
|
|
23
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search"
|
|
24
|
+
v-model="model.f_user_name" placeholder='客户名称'
|
|
25
|
+
condition="f_user_name like '%{}%'" v-el:xq v-next-el='username' v-el:username
|
|
26
|
+
>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="col-sm-2 form-group">
|
|
29
|
+
<label class="font_normal_body">客户地址</label>
|
|
30
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_area"
|
|
31
|
+
placeholder='地址'
|
|
32
|
+
condition="f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
|
|
33
|
+
>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="col-sm-2 form-group">
|
|
36
|
+
<label class="font_normal_body"> 表号 </label>
|
|
37
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search"
|
|
38
|
+
v-model="model.f_meternumber" placeholder='表号'
|
|
39
|
+
condition="f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
|
|
40
|
+
>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<div style="float:right">
|
|
44
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
45
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
|
|
46
|
+
<export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
|
|
47
|
+
:field="$parent.$parent.getfield" :sumname="$parent.$parent.sumName"
|
|
48
|
+
:header="$parent.$parent.other"
|
|
49
|
+
sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="webmeter_getUserLoseQuery" template-name='用户失联查询'
|
|
50
|
+
:choose-col="true"></export-excel>
|
|
51
|
+
<!-- <button class="button_export button_spacing" @click="$parent.$parent.SaveAsFile('lostuserlist')">导出</button>-->
|
|
52
|
+
<!-- <button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showTotalForm()">显示汇总</button>-->
|
|
53
|
+
<!-- <button class="button_search button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>-->
|
|
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
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
58
|
+
<div class="col-sm-2 form-group">
|
|
59
|
+
<label class="font_normal_body"> 公司 </label>
|
|
60
|
+
<right-tree @re-res="$parent.$parent.getorg"
|
|
61
|
+
:initresid='$parent.$parent.org'></right-tree>
|
|
62
|
+
</div>
|
|
63
|
+
<div class="col-sm-2 form-group">
|
|
64
|
+
<label class="font_normal_body" for="dep" >部  门</label>
|
|
65
|
+
<res-select id="dep" restype='department' style="width: 60%"
|
|
66
|
+
is-mul="false"
|
|
67
|
+
@res-select="$parent.$parent.getdep"
|
|
68
|
+
:parentresid="$parent.$parent.depresid"
|
|
69
|
+
:initresid='$parent.$parent.depid' >
|
|
70
|
+
</res-select>
|
|
71
|
+
|
|
72
|
+
</div>
|
|
73
|
+
<div class="col-sm-2 form-group">
|
|
74
|
+
<label class="font_normal_body">客户类型</label>
|
|
75
|
+
<v-select style="width:60%" id="f_user_type"
|
|
76
|
+
v-model="model.f_user_type"
|
|
77
|
+
placeholder='客户类型'
|
|
78
|
+
@change="$parent.$parent.userTypeChange()"
|
|
79
|
+
:value.sync="model.f_user_type"
|
|
80
|
+
:options='$parent.$parent.usertypes'
|
|
81
|
+
condition="f_user_type = '{}'"
|
|
82
|
+
close-on-select>
|
|
83
|
+
</v-select>
|
|
84
|
+
</div>
|
|
85
|
+
<div class="col-sm-2 form-group">
|
|
86
|
+
<label class="font_normal_body">用气性质</label>
|
|
87
|
+
<v-select style="width:60%" id="f_gasproperties"
|
|
88
|
+
v-model="model.f_gasproperties"
|
|
89
|
+
placeholder='用气性质'
|
|
90
|
+
:value.sync="model.f_gasproperties"
|
|
91
|
+
:options='$parent.$parent.gasproperties'
|
|
92
|
+
condition="f_gasproperties = '{}'"
|
|
93
|
+
close-on-select>
|
|
94
|
+
</v-select>
|
|
95
|
+
</div>
|
|
96
|
+
<div class="col-sm-2 form-group">
|
|
97
|
+
<label class="font_normal_body">气表品牌</label>
|
|
98
|
+
<v-select
|
|
99
|
+
placeholder='气表品牌'
|
|
100
|
+
:value.sync="model.f_meter_brand"
|
|
101
|
+
v-model="model.f_meter_brand"
|
|
102
|
+
:options='$parent.$parent.WarningType'
|
|
103
|
+
@change="$parent.$parent.getMeterType"
|
|
104
|
+
close-on-select
|
|
105
|
+
condition="f_meter_brand='{}'">
|
|
106
|
+
</v-select>
|
|
107
|
+
</div>
|
|
108
|
+
<div class="col-sm-2 form-group" >
|
|
109
|
+
<label class="font_normal_body">气表型号</label>
|
|
110
|
+
<v-select v-if="$parent.$parent.styles"
|
|
111
|
+
placeholder='气表型号'
|
|
112
|
+
:value.sync="model.f_meter_style"
|
|
113
|
+
v-model="model.f_meter_style"
|
|
114
|
+
:options='$parent.$parent.Warningstyle'
|
|
115
|
+
close-on-select
|
|
116
|
+
condition="f_meter_style='{}'">
|
|
117
|
+
</v-select>
|
|
118
|
+
<v-select v-if="!$parent.$parent.styles"
|
|
119
|
+
placeholder='气表型号'
|
|
120
|
+
:value.sync="model.f_meter_style"
|
|
121
|
+
v-model="model.f_meter_style"
|
|
122
|
+
:options='$parent.$parent.Warningstyles'
|
|
123
|
+
close-on-select
|
|
124
|
+
condition="f_meter_style='{}'">
|
|
125
|
+
</v-select>
|
|
126
|
+
</div>
|
|
127
|
+
<div class="col-sm-2 form-group">
|
|
128
|
+
<label class="font_normal_body">用户状态</label>
|
|
129
|
+
<v-select
|
|
130
|
+
placeholder='用户状态'
|
|
131
|
+
value-single
|
|
132
|
+
style="width:60%"
|
|
133
|
+
:value.sync="model.f_user_state"
|
|
134
|
+
v-model="model.f_user_state"
|
|
135
|
+
:options='$parent.$parent.userstate'
|
|
136
|
+
close-on-select condition="f_user_state ='{}'">
|
|
137
|
+
</v-select>
|
|
138
|
+
</div>
|
|
139
|
+
<div class="col-sm-2 form-group">
|
|
140
|
+
<label class="font_normal_body">表具状态</label>
|
|
141
|
+
<v-select
|
|
142
|
+
placeholder='表具状态'
|
|
143
|
+
value-single
|
|
144
|
+
style="width:60%"
|
|
145
|
+
:value.sync="model.f_table_state"
|
|
146
|
+
v-model="model.f_table_state"
|
|
147
|
+
:options='$parent.$parent.tablestate'
|
|
148
|
+
close-on-select condition="f_table_state ='{}'">
|
|
149
|
+
</v-select>
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
<div class="col-sm-2 form-group">
|
|
153
|
+
<label class="font_normal_body">开始时间</label>
|
|
154
|
+
<datepicker style="width:60%" id="startdate" placeholder="开始时间"
|
|
155
|
+
v-model="model.startDate"
|
|
156
|
+
:value.sync="model.startDate"
|
|
157
|
+
:disabled-days-of-Week="[]"
|
|
158
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
159
|
+
|
|
160
|
+
:show-reset-button="reset">
|
|
161
|
+
</datepicker>
|
|
162
|
+
</div>
|
|
163
|
+
<div class="col-sm-2 form-group">
|
|
164
|
+
<label class="font_normal_body">结束时间</label>
|
|
165
|
+
<datepicker style="width:60%" id="enddate" placeholder="结束日期"
|
|
166
|
+
v-model="model.endDate"
|
|
167
|
+
:value.sync="model.endDate"
|
|
168
|
+
:disabled-days-of-Week="[]"
|
|
169
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
170
|
+
|
|
171
|
+
:show-reset-button="reset">
|
|
172
|
+
</datepicker>
|
|
173
|
+
</div>
|
|
174
|
+
<div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
|
|
175
|
+
<label class="font_normal_body">失联天数 </label>
|
|
176
|
+
<div class="row">
|
|
177
|
+
<input type="text" style="width:27%" class="input_search" v-model="model.SLday1"
|
|
178
|
+
condition="SLday >= {} " placeholder="">
|
|
179
|
+
<label class="font_normal_body"> ≤ x ≤ </label>
|
|
180
|
+
<input type="text" style="width:27%" class="input_search" v-model="model.SLday2"
|
|
181
|
+
condition="SLday <= {} " placeholder="">
|
|
182
|
+
</div>
|
|
183
|
+
</div>
|
|
184
|
+
<div class="col-sm-2 form-group ">
|
|
185
|
+
<label for="contain_newfile" class="font_normal_body">开户未上报</label>
|
|
186
|
+
<v-select id="contain_newfile"
|
|
187
|
+
v-model="model.notappear"
|
|
188
|
+
style="width:60%"
|
|
189
|
+
:value.sync="model.notappear"
|
|
190
|
+
:options='$parent.$parent.not_appear'
|
|
191
|
+
:value-single="true"
|
|
192
|
+
close-on-select>
|
|
193
|
+
</v-select>
|
|
194
|
+
</div>
|
|
195
|
+
|
|
196
|
+
</div>
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
<!--:top='40' :left='60' :right='40' :bottom='60'-->
|
|
201
|
+
<!--:thead='"<th>序号</th>\n"+-->
|
|
202
|
+
<!--"<th>档案编号</th>" +-->
|
|
203
|
+
<!--" <th>档案标识</th>"+-->
|
|
204
|
+
<!--"<th>客户名称</th>"+-->
|
|
205
|
+
<!--"<th>表号</th"+-->
|
|
206
|
+
<!--"<th>表具类型</th>"+-->
|
|
207
|
+
<!--"<th>客户类型</th>"+-->
|
|
208
|
+
<!--"<th>区域</th>"+-->
|
|
209
|
+
<!--"<th>小区</th>"+-->
|
|
210
|
+
<!--"<th>地址</th>"+-->
|
|
211
|
+
<!--"<th>用气气量</th>"+-->
|
|
212
|
+
<!--"<th>用气金额</th>"-->
|
|
213
|
+
<!--+"<th>用气价格</th>"-->
|
|
214
|
+
<!--+"<th>时间</th>"-->
|
|
215
|
+
<!--+"<th>所属机构</th>"'-->
|
|
216
|
+
<!--:fields='["$index+1","f_username","f_meternumber","f_usertype","f_save_money","f_operate_status","f_close_reason","f_area","f_districtname","f_address","id","yytdepa"]'>-->
|
|
217
|
+
<!--</print-table>-->
|
|
218
|
+
<!--<export-excel :data="{orderitem: 'lastinputdate desc', condition: '1=1'}"-->
|
|
219
|
+
<!--:field="{f_username: '客户名称', f_meternumber: '表号',f_usertype:'客户类型',f_save_money:'剩余金额',-->
|
|
220
|
+
<!--f_operate_status:'状态',f_close_reason:'关阀原因',f_area:'区域',f_districtname:'小区', f_address: '地址',id:'档案编号',yytdepa:'所属机构'}"-->
|
|
221
|
+
<!--sqlurl="api/af-revenue/sql/getUserGas"></export-excel>-->
|
|
222
|
+
|
|
223
|
+
</div>
|
|
224
|
+
</criteria>
|
|
225
|
+
<data-grid id="lostuserlist" :model="model" partial='list' v-ref:grid class="list_area table_sy">
|
|
226
|
+
<template partial='head'>
|
|
227
|
+
<tr>
|
|
228
|
+
<th style="text-align:center">
|
|
229
|
+
<nobr>序号</nobr>
|
|
230
|
+
</th>
|
|
231
|
+
|
|
232
|
+
<!--<th rowspan="2" style="text-align:center"><nobr>客户编号</nobr></th>-->
|
|
233
|
+
|
|
234
|
+
<th style="text-align:center">
|
|
235
|
+
<nobr>客户编号</nobr>
|
|
236
|
+
</th>
|
|
237
|
+
<th style="text-align:center">
|
|
238
|
+
<nobr>客户名称</nobr>
|
|
239
|
+
</th>
|
|
240
|
+
<th style="text-align:center">
|
|
241
|
+
<nobr>客户地址</nobr>
|
|
242
|
+
</th>
|
|
243
|
+
<th style="text-align:center">
|
|
244
|
+
<nobr>客户类型</nobr>
|
|
245
|
+
</th>
|
|
246
|
+
<th style="text-align:center">
|
|
247
|
+
<nobr>用气性质</nobr>
|
|
248
|
+
</th>
|
|
249
|
+
<th style="text-align:center">
|
|
250
|
+
<nobr>联系电话</nobr>
|
|
251
|
+
</th>
|
|
252
|
+
<th style="text-align:center">
|
|
253
|
+
<nobr>系统金额</nobr>
|
|
254
|
+
</th>
|
|
255
|
+
<th style="text-align:center">
|
|
256
|
+
<nobr>表号</nobr>
|
|
257
|
+
</th>
|
|
258
|
+
<th style="text-align:center">
|
|
259
|
+
<nobr>启用日期</nobr>
|
|
260
|
+
</th>
|
|
261
|
+
|
|
262
|
+
<th style="text-align:center" >
|
|
263
|
+
<nobr>初次上报日期</nobr>
|
|
264
|
+
</th>
|
|
265
|
+
<th style="text-align:center" >
|
|
266
|
+
<nobr>最后上报日期</nobr>
|
|
267
|
+
</th>
|
|
268
|
+
<th style="text-align:center">
|
|
269
|
+
<nobr>最后表读数</nobr>
|
|
270
|
+
</th>
|
|
271
|
+
|
|
272
|
+
<th style="text-align:center" >
|
|
273
|
+
<nobr>失联天数</nobr>
|
|
274
|
+
</th>
|
|
275
|
+
<th style="text-align:center" >
|
|
276
|
+
<nobr>气表厂家</nobr>
|
|
277
|
+
</th>
|
|
278
|
+
<th style="text-align:center" >
|
|
279
|
+
<nobr>气表型号</nobr>
|
|
280
|
+
</th>
|
|
281
|
+
<th style="text-align:center" >
|
|
282
|
+
<nobr>用户状态</nobr>
|
|
283
|
+
</th>
|
|
284
|
+
<th style="text-align:center" >
|
|
285
|
+
<nobr>表具状态</nobr>
|
|
286
|
+
</th>
|
|
287
|
+
<th style="text-align:center" >
|
|
288
|
+
<nobr>组织机构</nobr>
|
|
289
|
+
</th>
|
|
290
|
+
<th style="text-align:center" >
|
|
291
|
+
<nobr>部门</nobr>
|
|
292
|
+
</th>
|
|
293
|
+
</tr>
|
|
294
|
+
|
|
295
|
+
</template>
|
|
296
|
+
<template partial='body'>
|
|
297
|
+
<td style="text-align:center">{{$index+1}}</td>
|
|
298
|
+
<!--<td style="text-align:center">{{row.f_userfiles_id}}</td>-->
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
<td style="text-align: center;"><nobr>
|
|
302
|
+
<span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
|
|
303
|
+
</nobr> </td>
|
|
304
|
+
<td style="text-align:center"><nobr>{{row.f_user_name}}</nobr></td>
|
|
305
|
+
<td>
|
|
306
|
+
<nobr>{{row.f_address}}</nobr>
|
|
307
|
+
</td>
|
|
308
|
+
<td style="text-align:center">{{row.f_user_type}}</td>
|
|
309
|
+
<td style="text-align:center">{{row.f_gasproperties}}</td>
|
|
310
|
+
<td style="text-align:center">{{row.f_user_phone}}</td>
|
|
311
|
+
<td style="text-align:center">{{row.f_balance_amount}}</td>
|
|
312
|
+
<td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
|
|
313
|
+
<td style="text-align:center"><nobr>{{row.f_startuse_date}}</nobr></td>
|
|
314
|
+
<td style="text-align:center">
|
|
315
|
+
<nobr>{{row.initinsertdate}}</nobr>
|
|
316
|
+
</td> <td style="text-align:center">
|
|
317
|
+
<nobr>{{row.lastinsertdate}}</nobr>
|
|
318
|
+
</td>
|
|
319
|
+
<td style="text-align:center">{{row.f_meter_base}}</td>
|
|
320
|
+
|
|
321
|
+
<td style="text-align:center">
|
|
322
|
+
<nobr>{{row.slday}}</nobr>
|
|
323
|
+
</td>
|
|
324
|
+
<td style="text-align:center">{{row.f_meter_brand}}</td>
|
|
325
|
+
<td style="text-align:center">
|
|
326
|
+
<nobr>{{row.f_meter_style}}</nobr>
|
|
327
|
+
</td>
|
|
328
|
+
<td style="text-align:center">
|
|
329
|
+
<nobr>{{row.f_user_state}}</nobr>
|
|
330
|
+
</td>
|
|
331
|
+
<td style="text-align:center">
|
|
332
|
+
<nobr>{{row.f_table_state}}</nobr>
|
|
333
|
+
</td>
|
|
334
|
+
<td style="text-align:center">
|
|
335
|
+
<nobr>{{row.f_orgname}}</nobr>
|
|
336
|
+
</td>
|
|
337
|
+
<td style="text-align:center">
|
|
338
|
+
<nobr>{{row.f_depname}}</nobr>
|
|
339
|
+
</td>
|
|
340
|
+
<!--<td style="text-align:center">{{row.new_days}}</td>-->
|
|
341
|
+
<!--<td style="text-align:center">{{row.f_state}}</td>-->
|
|
342
|
+
|
|
343
|
+
</template>
|
|
344
|
+
</data-grid>
|
|
345
|
+
</criteria-paged>
|
|
346
|
+
|
|
347
|
+
</div>
|
|
348
|
+
<!-- <div class="flex-row" v-show="echarts" style="width: 100%;height: 90%;">-->
|
|
349
|
+
<!-- <lost-contact-echarts :groupname="groupname[0]" :condition="condition"-->
|
|
350
|
+
<!-- :echarts="echarts"></lost-contact-echarts>-->
|
|
351
|
+
<!-- </div>-->
|
|
352
|
+
<!--<!– <div v-show="isActiveTotalForm" style="height: 40px;width: 100%;">–>-->
|
|
353
|
+
<!--<!– <button class="button_search button_spacing" @click="notShowTotalForm()">隐藏汇总</button>–>-->
|
|
354
|
+
<!--<!– </div>–>-->
|
|
355
|
+
<!-- <div class="span" v-show="isActiveTotalForm" style="width: 100%;height: 90%;">-->
|
|
356
|
+
<!-- <lost-contact-eform :condition="condition"-->
|
|
357
|
+
<!-- ></lost-contact-eform>-->
|
|
358
|
+
<!-- </div>-->
|
|
359
|
+
</div>
|
|
360
|
+
<div class="flex-row" style="width:99%;height:98%;margin-bottom:0px" v-if="showdetail">
|
|
361
|
+
<user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
|
|
362
|
+
</div>
|
|
363
|
+
</template>
|
|
364
|
+
|
|
365
|
+
<script>
|
|
366
|
+
import {PagedList} from 'vue-client'
|
|
367
|
+
import UserGasEcharts from '../../components/webmeter/DrillData/UserGasEcharts'
|
|
368
|
+
import plugin from 'system-clients/src/plugins/GetLoginInfoService'
|
|
369
|
+
import {HttpResetClass} from 'vue-client'
|
|
370
|
+
import * as Util from '../../Util'
|
|
371
|
+
let readySomething = async function (self) {
|
|
372
|
+
|
|
373
|
+
await self.$MagLoadParams.loadParam()
|
|
374
|
+
self.initParams()
|
|
375
|
+
let year = new Date().getFullYear()
|
|
376
|
+
self.$refs.paged.$refs.cri.model.startDate = year+'-01-01 00:00:00'
|
|
377
|
+
self.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
|
|
378
|
+
self.$refs.paged.$refs.cri.model.notappear='不包含'
|
|
379
|
+
self.$refs.paged.$refs.cri.model.SLday1=10
|
|
380
|
+
self.$refs.paged.$refs.cri.model.f_user_state='正常'
|
|
381
|
+
self.$refs.paged.$refs.cri.model.f_table_state='正常'
|
|
382
|
+
self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
|
|
383
|
+
}
|
|
384
|
+
export default {
|
|
385
|
+
title: '失联分析',
|
|
386
|
+
props: ['data'],
|
|
387
|
+
components: {UserGasEcharts},
|
|
388
|
+
|
|
389
|
+
data() {
|
|
390
|
+
return {
|
|
391
|
+
model: new PagedList('api/af-revenue/sql/webmeter_getUserLoseQuery', 20 ,{
|
|
392
|
+
startDate: 'this.model.startDate',
|
|
393
|
+
endDate: 'this.model.endDate'
|
|
394
|
+
}),
|
|
395
|
+
getfield:{
|
|
396
|
+
"f_userinfo_code":"客户编号","f_user_name":"客户名称",
|
|
397
|
+
"f_address":"客户地址","f_user_type":"客户类型","f_gasproperties":"用气性质",
|
|
398
|
+
"f_meternumber":"表号",
|
|
399
|
+
"f_user_phone":"联系电话",
|
|
400
|
+
"f_balance_amount":"系统余额",
|
|
401
|
+
"f_user_state":"用户状态",
|
|
402
|
+
"f_table_state":"表具状态",
|
|
403
|
+
"f_startuse_date":"启用日期",
|
|
404
|
+
"initinsertdate":"初次上报日期",
|
|
405
|
+
"lastinsertdate":"最后上报日期",
|
|
406
|
+
"f_meter_base":"最后表读数",
|
|
407
|
+
"slday":"失联天数",
|
|
408
|
+
"f_meter_brand":"气表厂家","f_orgname":"组织机构","f_depname":"部门"},
|
|
409
|
+
reportStr: null,
|
|
410
|
+
show: false,
|
|
411
|
+
showdetail:false,
|
|
412
|
+
rowdata:{},
|
|
413
|
+
criteriaShow:false,
|
|
414
|
+
outlets: [],
|
|
415
|
+
depresid: [],
|
|
416
|
+
queryData: {
|
|
417
|
+
f_orgid: [],
|
|
418
|
+
f_depid: [],
|
|
419
|
+
f_operatorid: [],
|
|
420
|
+
f_payment: []
|
|
421
|
+
},
|
|
422
|
+
depid: [],
|
|
423
|
+
operator: [],
|
|
424
|
+
gasproperties: [],
|
|
425
|
+
other: [],
|
|
426
|
+
sumsmodel: {},
|
|
427
|
+
filename: '',
|
|
428
|
+
WarningType: [
|
|
429
|
+
{label: '全部', value: ''}
|
|
430
|
+
],
|
|
431
|
+
Warningstyles: [
|
|
432
|
+
{label: '全部', value: ''}
|
|
433
|
+
],
|
|
434
|
+
styles:false,
|
|
435
|
+
org:[this.$login.f.orgid],
|
|
436
|
+
orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid} `,
|
|
437
|
+
echarts: false,
|
|
438
|
+
searchshow: false,
|
|
439
|
+
isActiveTotalForm: false,
|
|
440
|
+
condition: '1=1',
|
|
441
|
+
groupname: ['max_days_type'],
|
|
442
|
+
getgroupname: [
|
|
443
|
+
{label: '客户类型', value: 'f_user_type'},
|
|
444
|
+
{label: '用气性质', value: 'f_gasproperties'},
|
|
445
|
+
{label: '分公司', value: 'f_orgname'},
|
|
446
|
+
{label: '最长失联天数', value: 'max_days_type'},
|
|
447
|
+
]
|
|
448
|
+
}
|
|
449
|
+
},
|
|
450
|
+
ready() {
|
|
451
|
+
readySomething(this)
|
|
452
|
+
this.getMeterTypeAndBrand('f_meter_brand', '1=1')
|
|
453
|
+
},
|
|
454
|
+
|
|
455
|
+
methods: {
|
|
456
|
+
userTypeChange () {
|
|
457
|
+
this.gasproperties = []
|
|
458
|
+
if(this.$refs.paged.$refs.cri.model !== null) {
|
|
459
|
+
this.$refs.paged.$refs.cri.model.f_gasproperties = ''
|
|
460
|
+
this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type ? this.$refs.paged.$refs.cri.model.f_user_type[0] : '')
|
|
461
|
+
}
|
|
462
|
+
else{
|
|
463
|
+
this.gasproperties = [{label: '全部', value: ''}]
|
|
464
|
+
}
|
|
465
|
+
},
|
|
466
|
+
getotherfooter() {
|
|
467
|
+
this.other = [];
|
|
468
|
+
|
|
469
|
+
let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
|
|
470
|
+
|
|
471
|
+
|
|
472
|
+
let secondLine = [
|
|
473
|
+
`开始时间: ${this.$refs.paged.$refs.cri.model.startDate}`,
|
|
474
|
+
`结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
|
|
475
|
+
];
|
|
476
|
+
|
|
477
|
+
this.other.push(firstLine);
|
|
478
|
+
this.other.push(secondLine);
|
|
479
|
+
|
|
480
|
+
console.log('Header Data:', this.other);
|
|
481
|
+
},
|
|
482
|
+
getMeterType() {
|
|
483
|
+
this.Warningstyle = [{label: '全部', value: ''}]
|
|
484
|
+
this.styles = false
|
|
485
|
+
let f_meter_brand = this.$refs.paged.$refs.cri.model.f_meter_brand
|
|
486
|
+
this.getMeterTypeAndBrand('f_meter_style', `f_meter_brand='${f_meter_brand}'`)
|
|
487
|
+
},
|
|
488
|
+
getMeterTypeAndBrand(groupname, condition) {
|
|
489
|
+
condition = `${condition} and ui.f_orgid like '${this.$login.f.orgid}%'`
|
|
490
|
+
let self = this
|
|
491
|
+
let load = new HttpResetClass()
|
|
492
|
+
load.load('POST', 'api/af-revenue/sql/getMeterStyleAndBrand1', {
|
|
493
|
+
data: {
|
|
494
|
+
condition: condition,
|
|
495
|
+
groupname: groupname
|
|
496
|
+
}
|
|
497
|
+
}, {warnMsg: null, resolveMsg: null}).then((res) => {
|
|
498
|
+
for (let i = 0; i < res.data.length; i++) {
|
|
499
|
+
if (groupname == 'f_meter_brand') {
|
|
500
|
+
let dr = {}
|
|
501
|
+
dr.label = res.data[i].f_meter_brand
|
|
502
|
+
dr.value = res.data[i].f_meter_brand
|
|
503
|
+
//气表品牌
|
|
504
|
+
// self.WarningType.push(dr)
|
|
505
|
+
} else if (groupname == 'f_meter_style') {
|
|
506
|
+
self.Warningstyle= [
|
|
507
|
+
{label: '全部', value: ''}
|
|
508
|
+
],
|
|
509
|
+
self.$refs.paged.$refs.cri.model.f_meter_style=''
|
|
510
|
+
let dr = {}
|
|
511
|
+
dr.label = res.data[i].f_meter_style
|
|
512
|
+
dr.value = res.data[i].f_meter_style
|
|
513
|
+
//气表类型
|
|
514
|
+
self.Warningstyle.push(dr)
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
if (self.Warningstyle.length > 1) {
|
|
518
|
+
self.showMeterStyle()
|
|
519
|
+
}
|
|
520
|
+
})
|
|
521
|
+
|
|
522
|
+
},
|
|
523
|
+
showMeterStyle() {
|
|
524
|
+
this.styles = true
|
|
525
|
+
},
|
|
526
|
+
hidden(){
|
|
527
|
+
this.criteriaShow = !this.criteriaShow
|
|
528
|
+
},
|
|
529
|
+
showmsg(obj){
|
|
530
|
+
this.rowdata=obj
|
|
531
|
+
this.showdetail=true
|
|
532
|
+
},
|
|
533
|
+
cancel() {
|
|
534
|
+
this.showdetail = false
|
|
535
|
+
},
|
|
536
|
+
clickshow() {
|
|
537
|
+
this.searchshow = !this.searchshow
|
|
538
|
+
},
|
|
539
|
+
search(args) {
|
|
540
|
+
this.condition = this.$refs.paged.$refs.cri.condition + `${this.orgCondtionStr}`
|
|
541
|
+
args.condition = this.condition
|
|
542
|
+
if(this.$refs.paged.$refs.cri.model.notappear) {
|
|
543
|
+
if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
|
|
544
|
+
args.condition = args.condition + " and initinsertdate <> '开户未上报'"
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
this.startDate = this.$refs.paged.$refs.cri.model.startDate
|
|
548
|
+
this.endDate = this.$refs.paged.$refs.cri.model.endDate
|
|
549
|
+
if (this.endDate == '' || this.startDate == '') {
|
|
550
|
+
return this.$showMessage("时间区间的开始和结束时间不能为空!")
|
|
551
|
+
}
|
|
552
|
+
this.model.search(args.condition, args.model)
|
|
553
|
+
},
|
|
554
|
+
getorg(obj) {
|
|
555
|
+
if (obj.resids.length > 0) {
|
|
556
|
+
this.depresid = obj.resids
|
|
557
|
+
this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids)
|
|
558
|
+
} else {
|
|
559
|
+
this.depresid = obj.resids
|
|
560
|
+
this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid
|
|
561
|
+
}
|
|
562
|
+
console.log(this.orgCondtionStr);
|
|
563
|
+
},
|
|
564
|
+
getdep(obj, val) {
|
|
565
|
+
this.orgCondtionStr = ""
|
|
566
|
+
|
|
567
|
+
this.depname = val[0]
|
|
568
|
+
this.userresid = obj
|
|
569
|
+
this.queryData.f_depid = obj
|
|
570
|
+
console.log(this.queryData.f_depid)
|
|
571
|
+
if (obj.length > 0) {
|
|
572
|
+
this.orgCondtionStr += " and f_depid in " + plugin.convertToIn(obj)
|
|
573
|
+
}
|
|
574
|
+
if (this.depresid && this.depresid.length > 0) {
|
|
575
|
+
this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(this.depresid) + this.orgCondtionStr
|
|
576
|
+
} else {
|
|
577
|
+
this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid + this.orgCondtionStr
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
console.log(this.orgCondtionStr);
|
|
581
|
+
},
|
|
582
|
+
|
|
583
|
+
// SaveAsFile(str) {
|
|
584
|
+
// this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
|
|
585
|
+
// if (res === 'confirm') {
|
|
586
|
+
// let style = '<style>' +
|
|
587
|
+
// 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
|
|
588
|
+
// let strHtml = style + document.getElementById(str).innerHTML;
|
|
589
|
+
// console.log(strHtml);
|
|
590
|
+
// let LODOP = getLodop();
|
|
591
|
+
// LODOP.PRINT_INIT('');
|
|
592
|
+
// LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
|
|
593
|
+
// LODOP.SAVE_TO_FILE('失联分析.xls')
|
|
594
|
+
// }
|
|
595
|
+
// })
|
|
596
|
+
// },
|
|
597
|
+
clearmsg() {
|
|
598
|
+
this.$refs.paged.$refs.cri.model = {}
|
|
599
|
+
},
|
|
600
|
+
close() {
|
|
601
|
+
this.show = false
|
|
602
|
+
},
|
|
603
|
+
initParams () {
|
|
604
|
+
let arr = []
|
|
605
|
+
this.$MagGetSaleParam.getGasbrand().forEach((item) => {
|
|
606
|
+
let temp = {}
|
|
607
|
+
if(item.value.f_meter_type==='物联网表'){
|
|
608
|
+
temp.label = item.label
|
|
609
|
+
temp.value = item.value.f_meter_brand
|
|
610
|
+
arr.push(temp )
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
})
|
|
614
|
+
this.WarningType = [{label: '全部', value: ''}, ...arr]
|
|
615
|
+
},
|
|
616
|
+
// 显示柱状图
|
|
617
|
+
showEcharts() {
|
|
618
|
+
this.echarts = true
|
|
619
|
+
this.isActiveTotalForm = false
|
|
620
|
+
},
|
|
621
|
+
notShowTotalForm() {
|
|
622
|
+
this.echarts = false
|
|
623
|
+
this.isActiveTotalForm = false
|
|
624
|
+
},
|
|
625
|
+
// 不显示柱状图
|
|
626
|
+
notShowEcharts() {
|
|
627
|
+
this.echarts = false
|
|
628
|
+
this.isActiveTotalForm = false
|
|
629
|
+
},
|
|
630
|
+
// 显示汇总数据表格
|
|
631
|
+
showTotalForm() {
|
|
632
|
+
this.echarts = false
|
|
633
|
+
this.isActiveTotalForm = true
|
|
634
|
+
}
|
|
635
|
+
},
|
|
636
|
+
watch: {
|
|
637
|
+
'data'(val) {
|
|
638
|
+
if (val.f_files_path) {
|
|
639
|
+
this.getFileContent(val.f_files_path)
|
|
640
|
+
} else {
|
|
641
|
+
this.reportStr = null
|
|
642
|
+
}
|
|
643
|
+
},
|
|
644
|
+
sumsmodel:{
|
|
645
|
+
handler: function(val) {
|
|
646
|
+
this.getotherfooter();
|
|
647
|
+
},
|
|
648
|
+
deep: true
|
|
649
|
+
},
|
|
650
|
+
},
|
|
651
|
+
computed: {
|
|
652
|
+
// usertypes () {
|
|
653
|
+
// return this.$appdate.getParams("客户类型")
|
|
654
|
+
// },
|
|
655
|
+
getCondition() {
|
|
656
|
+
let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
|
|
657
|
+
if(this.$refs.paged.$refs.cri.model.notappear) {
|
|
658
|
+
if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
|
|
659
|
+
condition = condition + " and initinsertdate <> '开户未上报'"
|
|
660
|
+
}
|
|
661
|
+
}
|
|
662
|
+
return {
|
|
663
|
+
condition: condition ,
|
|
664
|
+
startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
|
|
665
|
+
endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
|
|
666
|
+
}
|
|
667
|
+
},
|
|
668
|
+
usertypes() {
|
|
669
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
|
|
670
|
+
},
|
|
671
|
+
Gasproperties() {
|
|
672
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
|
|
673
|
+
},
|
|
674
|
+
f_outlets() {
|
|
675
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('网点查询用')]
|
|
676
|
+
},
|
|
677
|
+
valveStatus() {
|
|
678
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
|
|
679
|
+
},
|
|
680
|
+
not_appear(){
|
|
681
|
+
return [{label: '包含', value: '包含'},{label: '不包含', value: '不包含'} ]
|
|
682
|
+
},
|
|
683
|
+
getstate() {
|
|
684
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('最新状态')]
|
|
685
|
+
},
|
|
686
|
+
userstate() {
|
|
687
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')]
|
|
688
|
+
},
|
|
689
|
+
tablestate() {
|
|
690
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
}
|
|
694
|
+
</script>
|
|
695
|
+
<style>
|
|
696
|
+
.form-input-group label {
|
|
697
|
+
text-align: right;
|
|
698
|
+
width: auto;
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
.mystyle {
|
|
702
|
+
float: right;
|
|
703
|
+
padding-right: 10%;
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
.mystyle1 {
|
|
707
|
+
padding-top: 10px;
|
|
708
|
+
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
.mystyle2 {
|
|
712
|
+
width: 100%;
|
|
713
|
+
height: 35px;
|
|
714
|
+
/*background: #00A3F0;*/
|
|
715
|
+
padding-left: 15px;
|
|
716
|
+
float: left;
|
|
717
|
+
}
|
|
718
|
+
|
|
719
|
+
.datapanel {
|
|
720
|
+
color: #333;
|
|
721
|
+
background-color: white;
|
|
722
|
+
box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
|
|
723
|
+
padding: 10px 30px 10px 30px;
|
|
724
|
+
border-radius: 15px;
|
|
725
|
+
}
|
|
726
|
+
</style>
|
|
@@ -149,6 +149,7 @@ export default {
|
|
|
149
149
|
'f_meternumber': '表号',
|
|
150
150
|
'f_card_id': '卡号',
|
|
151
151
|
'f_defendcard': '防盗卡号',
|
|
152
|
+
'f_defendcard_two': '防盗卡号2',
|
|
152
153
|
'f_price_name': '气价名称',
|
|
153
154
|
'value': '气价详情',
|
|
154
155
|
'f_meter_brand': '气表品牌',
|
|
@@ -762,6 +763,7 @@ export default {
|
|
|
762
763
|
'f_meternumber_old': '旧表号',
|
|
763
764
|
'f_meternumber': '新表号',
|
|
764
765
|
'f_defendcard': '防盗卡号',
|
|
766
|
+
'f_defendcard_two': '防盗卡号2',
|
|
765
767
|
'f_meter_brand_old': '旧气表品牌',
|
|
766
768
|
'f_meter_brand': '新气表品牌',
|
|
767
769
|
'f_using_base_old': '旧表底数',
|
|
@@ -40,4 +40,8 @@ export default function () {
|
|
|
40
40
|
Vue.component('fmy-gas-device-query', (resolve) => {
|
|
41
41
|
require(['./FmyGasDeviceQuery'], resolve)
|
|
42
42
|
})
|
|
43
|
+
// 用户失联
|
|
44
|
+
Vue.component('user-lost-contact-analysis', (resolve) => {
|
|
45
|
+
require(['./UserLostContactAnalysis'], resolve)
|
|
46
|
+
})
|
|
43
47
|
}
|
package/src/main.js
CHANGED
|
@@ -6,8 +6,8 @@ import { all } from 'vue-client'
|
|
|
6
6
|
import { system } from 'system-clients'
|
|
7
7
|
import { ldap } from 'ldap-clients'
|
|
8
8
|
import saleManage from './saleManage'
|
|
9
|
-
import ShanXianSaleManage from './filiale/
|
|
10
|
-
|
|
9
|
+
import ShanXianSaleManage from './filiale/yuncheng/sale'
|
|
10
|
+
import ShanXianwebSaleManage from './filiale/yuncheng/webmeterManage'
|
|
11
11
|
import webmeterManage from './webmeterManage'
|
|
12
12
|
import reportManage from './reportManage'
|
|
13
13
|
import newmanage from './newmanage'
|
|
@@ -51,7 +51,7 @@ ManageHome()
|
|
|
51
51
|
newmanage()
|
|
52
52
|
ShanXianSaleManage()
|
|
53
53
|
reportManage()
|
|
54
|
-
|
|
54
|
+
ShanXianwebSaleManage()
|
|
55
55
|
require('system-clients/src/styles/less/bootstrap.less')
|
|
56
56
|
require('./components/qinhua/Style/qinhuaStyle.less')
|
|
57
57
|
// require('./bootstrap/less/manageStyle/manageChile.less')
|