manage-client 3.2.59 → 3.2.63
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/package.json +1 -1
- package/src/components/sale/businessquery/BusinessManage.vue +174 -171
- package/src/components/sale/businessquery/PrivilegeQuery.vue +341 -0
- package/src/components/sale/businessquery/gasPriceQuery.vue +71 -60
- package/src/components/sale/config/exportConfig.js +918 -913
- package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +9 -9
- package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
- package/src/components/webmeter/WebmeterAnalyse.vue +52 -0
- package/src/components/webmeter/WebmeterQuery.vue +61 -0
- package/src/components/webmeter/instruction/NewQueryInstructMain.vue +1 -1
- package/src/filiale/WEINAN/BankManager.vue +169 -0
- package/src/filiale/WEINAN/SiteManager.vue +1 -1
- package/src/filiale/WEINAN/reportManage.js +1 -0
- package/src/filiale/jingwei/RecordInfoQuery.vue +1163 -1142
- package/src/filiale/tongchuan/DeviceQuery.vue +581 -0
- package/src/filiale/tongchuan/MeterQuery.vue +970 -0
- package/src/filiale/tongchuan/PriceChangeQuery.vue +1 -3
- package/src/filiale/tongchuan/UserDeviceQuery.vue +1 -3
- package/src/filiale/tongchuan/sale.js +8 -2
- package/src/main.js +1 -1
- package/src/saleManage.js +546 -542
- package/src/stores/MagGetSaleParams.js +156 -156
- package/src/webmeterManage.js +119 -119
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<tab-button class="foot_tabset" :active="-1">
|
|
3
|
+
<tabs header="指令分析" v-if="permission('指令分析')">
|
|
4
|
+
<user-instruct-list v-if="show.includes('指令分析')"></user-instruct-list>
|
|
5
|
+
</tabs>
|
|
6
|
+
<tabs header="抄表分析" v-if="permission('抄表分析')">
|
|
7
|
+
<user-gas-list v-if="show.includes('抄表分析')"></user-gas-list>
|
|
8
|
+
</tabs>
|
|
9
|
+
<tabs header="异常分析" v-if="permission('异常分析')">
|
|
10
|
+
<total-exception-by-meter v-if="show.includes('异常分析')"></total-exception-by-meter>
|
|
11
|
+
</tabs>
|
|
12
|
+
<tabs header="失联分析" v-if="permission('失联分析')">
|
|
13
|
+
<lost-contact-analysis-manage v-if="show.includes('失联分析')"></lost-contact-analysis-manage>
|
|
14
|
+
</tabs>
|
|
15
|
+
<tabs header="未用气分析" v-if="permission('未用气分析')">
|
|
16
|
+
<new-webmeter-user-gas-all v-if="show.includes('未用气分析')"></new-webmeter-user-gas-all>
|
|
17
|
+
</tabs>
|
|
18
|
+
<tabs header="调价分析" v-if="permission('调价分析')">
|
|
19
|
+
<price-instruct-manage v-if="show.includes('调价分析')"></price-instruct-manage>
|
|
20
|
+
</tabs>
|
|
21
|
+
</tab-button>
|
|
22
|
+
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<script>
|
|
26
|
+
import TabButton from '../sale/common/TabButton'
|
|
27
|
+
import Tabs from '../sale/common/Tabs'
|
|
28
|
+
|
|
29
|
+
export default {
|
|
30
|
+
title: '物联分析',
|
|
31
|
+
data () {
|
|
32
|
+
return {
|
|
33
|
+
show: []
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
components: {Tabs, TabButton},
|
|
37
|
+
methods: {
|
|
38
|
+
permission (name) {
|
|
39
|
+
// 保留是为了后面可能也会和综合查询一样加权限
|
|
40
|
+
// if (this.$login.r.find(value => value == '物联查询')) {
|
|
41
|
+
// if (!this.$login.r.find(value => value == name)) {
|
|
42
|
+
// return false
|
|
43
|
+
// }
|
|
44
|
+
// }
|
|
45
|
+
return true
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
</script>
|
|
50
|
+
|
|
51
|
+
<style scoped>
|
|
52
|
+
</style>
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<tab-button class="foot_tabset" :active="-1">
|
|
3
|
+
<tabs header="指令查询" v-if="permission('指令查询')">
|
|
4
|
+
<instruct-manage v-if="show.includes('指令查询')"></instruct-manage>
|
|
5
|
+
</tabs>
|
|
6
|
+
<tabs header="上报查询" v-if="permission('上报查询')">
|
|
7
|
+
<report-list v-if="show.includes('上报查询')"></report-list>
|
|
8
|
+
</tabs>
|
|
9
|
+
<tabs header="结算查询" v-if="permission('结算查询')">
|
|
10
|
+
<report-data-query v-if="show.includes('结算查询')"></report-data-query>
|
|
11
|
+
</tabs>
|
|
12
|
+
<tabs header="缴费查询" v-if="permission('缴费查询')">
|
|
13
|
+
<recharge-instruct-query v-if="show.includes('缴费查询')"></recharge-instruct-query>
|
|
14
|
+
</tabs>
|
|
15
|
+
<tabs header="异常查询" v-if="permission('异常查询')">
|
|
16
|
+
<meter-exception-list v-if="show.includes('异常查询')"></meter-exception-list>
|
|
17
|
+
</tabs>
|
|
18
|
+
<tabs header="用户失联" v-if="permission('用户失联')">
|
|
19
|
+
<user-lost-contact-analysis v-if="show.includes('用户失联')"></user-lost-contact-analysis>
|
|
20
|
+
</tabs>
|
|
21
|
+
<tabs header="失联查询" v-if="permission('失联查询')">
|
|
22
|
+
<lost-contact-analysis-list v-if="show.includes('失联查询')"></lost-contact-analysis-list>
|
|
23
|
+
</tabs>
|
|
24
|
+
<tabs header="用气查询" v-if="permission('用气查询')">
|
|
25
|
+
<use-gas-statistics v-if="show.includes('用气查询')"></use-gas-statistics>
|
|
26
|
+
</tabs>
|
|
27
|
+
<tabs header="未用气查询" v-if="permission('未用气查询')">
|
|
28
|
+
<get-no-meteread-query v-if="show.includes('未用气查询')"></get-no-meteread-query>
|
|
29
|
+
</tabs>
|
|
30
|
+
</tab-button>
|
|
31
|
+
|
|
32
|
+
</template>
|
|
33
|
+
|
|
34
|
+
<script>
|
|
35
|
+
import TabButton from '../sale/common/TabButton'
|
|
36
|
+
import Tabs from '../sale/common/Tabs'
|
|
37
|
+
|
|
38
|
+
export default {
|
|
39
|
+
title: '物联查询',
|
|
40
|
+
data () {
|
|
41
|
+
return {
|
|
42
|
+
show: []
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
components: {Tabs, TabButton},
|
|
46
|
+
methods: {
|
|
47
|
+
permission (name) {
|
|
48
|
+
// 保留是为了后面可能也会和综合查询一样加权限
|
|
49
|
+
// if (this.$login.r.find(value => value == '物联查询')) {
|
|
50
|
+
// if (!this.$login.r.find(value => value == name)) {
|
|
51
|
+
// return false
|
|
52
|
+
// }
|
|
53
|
+
// }
|
|
54
|
+
return true
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
</script>
|
|
59
|
+
|
|
60
|
+
<style scoped>
|
|
61
|
+
</style>
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
<template lang="html">
|
|
2
|
+
<div id="charts">
|
|
3
|
+
<div id="bm" :style="{width:'100%',height:'100%'}"></div>
|
|
4
|
+
</div>
|
|
5
|
+
</template>
|
|
6
|
+
|
|
7
|
+
<script>
|
|
8
|
+
import * as Util from '../../Util'
|
|
9
|
+
import co from 'co'
|
|
10
|
+
import echarts from 'echarts'
|
|
11
|
+
import {HttpResetClass } from 'vue-client'
|
|
12
|
+
|
|
13
|
+
let getData = function * (self) {
|
|
14
|
+
let load = new HttpResetClass() //qibiao-shouqi
|
|
15
|
+
load.load('POST', 'rs/sql/qibiao-shouqi',
|
|
16
|
+
{data: {startDate: self.startdate, endDate: self.enddate, f_orgid: `f_orgid = ${self.orgid}`,condition: '1=1'}},
|
|
17
|
+
{resolveMsg: null, rejectMsg: null})
|
|
18
|
+
.then((res) => {
|
|
19
|
+
self.texttile = '用户类型'
|
|
20
|
+
// let arrparams = []
|
|
21
|
+
console.log('获取数据。。', res.data)
|
|
22
|
+
let meter = Array.from(new Set(res.data.map(x => x.biaoleixing)))
|
|
23
|
+
let jmeter = []
|
|
24
|
+
let qkmeter = []
|
|
25
|
+
let jkmeter = []
|
|
26
|
+
let webmeter = []
|
|
27
|
+
jmeter.push(res.data.filter(x => x.biaoleixing === '机表').map(item => item.yongqi).reduce((x, y) => x + y, 0).toFixed(2))
|
|
28
|
+
jmeter.push(res.data.filter(x => x.biaoleixing === '机表').map(item => item.jine).reduce((x, y) => x+y, 0).toFixed(2))
|
|
29
|
+
|
|
30
|
+
qkmeter.push(res.data.filter(x => x.biaoleixing === '气量卡表').map(item => item.yongqi).reduce((x, y) => x + y, 0).toFixed(2))
|
|
31
|
+
qkmeter.push(res.data.filter(x => x.biaoleixing === '气量卡表').map(item => item.jine).reduce((x, y) => x+y, 0).toFixed(2))
|
|
32
|
+
|
|
33
|
+
jkmeter.push(res.data.filter(x => x.biaoleixing === '金额卡表').map(item => item.yongqi).reduce((x, y) => x + y, 0).toFixed(2))
|
|
34
|
+
jkmeter.push(res.data.filter(x => x.biaoleixing === '金额卡表').map(item => item.jine).reduce((x, y) => x+y, 0).toFixed(2))
|
|
35
|
+
|
|
36
|
+
webmeter.push(res.data.filter(x => x.biaoleixing === '物联网表').map(item => item.yongqi).reduce((x, y) => x + y, 0).toFixed(2))
|
|
37
|
+
webmeter.push(res.data.filter(x => x.biaoleixing === '物联网表').map(item => item.jine).reduce((x, y) => x+y, 0).toFixed(2))
|
|
38
|
+
|
|
39
|
+
self.set(meter, jmeter, qkmeter, jkmeter, webmeter)
|
|
40
|
+
})
|
|
41
|
+
}
|
|
42
|
+
export default {
|
|
43
|
+
props: {
|
|
44
|
+
startdate: {
|
|
45
|
+
type: String,
|
|
46
|
+
default: Util.toStandardDateString()
|
|
47
|
+
},
|
|
48
|
+
enddate: {
|
|
49
|
+
type: String,
|
|
50
|
+
default: Util.toStandardDateString()
|
|
51
|
+
},
|
|
52
|
+
orgid: {
|
|
53
|
+
type: String
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
data () {
|
|
57
|
+
title: '气表售气量'
|
|
58
|
+
return {
|
|
59
|
+
texttile: '',
|
|
60
|
+
xc: '',
|
|
61
|
+
|
|
62
|
+
minyongvalue: [],
|
|
63
|
+
feiminyongvalue: []
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
methods: {
|
|
67
|
+
set (meter, jmeter, qkmeter, jkmeter, webmeter) {
|
|
68
|
+
this.xc = echarts.init(document.getElementById('bm'))
|
|
69
|
+
this.xc.setOption({
|
|
70
|
+
title : {
|
|
71
|
+
text: '气表售气量',
|
|
72
|
+
subtext: '数据查询来源',
|
|
73
|
+
x: 'left'
|
|
74
|
+
},
|
|
75
|
+
tooltip : {
|
|
76
|
+
trigger: 'axis'
|
|
77
|
+
},
|
|
78
|
+
legend: {
|
|
79
|
+
x: 'left',
|
|
80
|
+
y: 'bottom',
|
|
81
|
+
data: meter
|
|
82
|
+
},
|
|
83
|
+
toolbox: {
|
|
84
|
+
show : true,
|
|
85
|
+
feature : {
|
|
86
|
+
dataView : {show: true, readOnly: false},
|
|
87
|
+
magicType : {show: true, type: ['line', 'bar']},
|
|
88
|
+
restore : {show: true},
|
|
89
|
+
saveAsImage : {show: true}
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
calculable : true,
|
|
93
|
+
xAxis : [
|
|
94
|
+
{
|
|
95
|
+
type : 'category',
|
|
96
|
+
data : ['气量','金额']
|
|
97
|
+
}
|
|
98
|
+
],
|
|
99
|
+
yAxis : [
|
|
100
|
+
{
|
|
101
|
+
type : 'value'
|
|
102
|
+
}
|
|
103
|
+
],
|
|
104
|
+
series : [
|
|
105
|
+
{
|
|
106
|
+
name: '机表',
|
|
107
|
+
type: 'bar',
|
|
108
|
+
data: jmeter,
|
|
109
|
+
markLine : {
|
|
110
|
+
data : [
|
|
111
|
+
{type : 'average', name: '平均值'}
|
|
112
|
+
]
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name:'气量卡表',
|
|
117
|
+
type:'bar',
|
|
118
|
+
data: qkmeter,
|
|
119
|
+
markLine : {
|
|
120
|
+
data : [
|
|
121
|
+
{type : 'average', name : '平均值'}
|
|
122
|
+
]
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name:'金额卡表',
|
|
127
|
+
type:'bar',
|
|
128
|
+
data: jkmeter,
|
|
129
|
+
markLine : {
|
|
130
|
+
data : [
|
|
131
|
+
{type : 'average', name : '平均值'}
|
|
132
|
+
]
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
name:'物联网表',
|
|
137
|
+
type:'bar',
|
|
138
|
+
data: webmeter,
|
|
139
|
+
markLine : {
|
|
140
|
+
data : [
|
|
141
|
+
{type : 'average', name : '平均值'}
|
|
142
|
+
]
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
]
|
|
146
|
+
})
|
|
147
|
+
},
|
|
148
|
+
searchdata () {
|
|
149
|
+
let getGen = getData(this)
|
|
150
|
+
co(getGen)
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
ready () {
|
|
154
|
+
this.searchdata()
|
|
155
|
+
},
|
|
156
|
+
watch: {
|
|
157
|
+
'startdate' (val) {
|
|
158
|
+
this.searchdata()
|
|
159
|
+
},
|
|
160
|
+
'enddate' (val) {
|
|
161
|
+
this.searchdata()
|
|
162
|
+
},
|
|
163
|
+
'orgid' (val) {
|
|
164
|
+
this.searchdata()
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
}
|
|
169
|
+
</script>
|
|
@@ -13,7 +13,7 @@ import {HttpResetClass } from 'vue-client'
|
|
|
13
13
|
let getData = function * (self) {
|
|
14
14
|
let load = new HttpResetClass()
|
|
15
15
|
load.load('POST','rs/sql/getPregas',
|
|
16
|
-
{data: {startDate: self.startdate + ' 00:00:00', endDate: self.enddate + ' 23:59:59',f_orgid: `f_orgid = ${self.orgid}
|
|
16
|
+
{data: {startDate: self.startdate + ' 00:00:00', endDate: self.enddate + ' 23:59:59',f_orgid: `f_orgid = ${self.orgid}`,condition: '1=1'}},
|
|
17
17
|
{resolveMsg: null, rejectMsg: null})
|
|
18
18
|
.then((res) => {
|
|
19
19
|
let data = res.data
|
|
@@ -3,6 +3,7 @@ let specialComp = {
|
|
|
3
3
|
// 收费查询
|
|
4
4
|
'echarts-box': (resolve) => { require(['./EchartsBox'], resolve) },
|
|
5
5
|
'site-manager': (resolve) => { require(['./SiteManager'], resolve) },
|
|
6
|
+
'bank-manager': (resolve) => { require(['./BankManager'], resolve) }
|
|
6
7
|
|
|
7
8
|
}
|
|
8
9
|
exports.specialComp = specialComp
|