manage-client 3.2.140 → 3.2.142
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 +3 -3
- package/package.json +1 -1
- package/src/components/SellReport/Cardapplysgas.vue +274 -0
- package/src/components/SellReport/LeftChart.vue +132 -0
- package/src/components/SellReport/MarketMonthChart.vue +162 -0
- package/src/components/SellReport/MarketMonthgas.vue +7 -0
- package/src/components/sale/businessquery/AccountQuery/keyUserGasRanking.vue +165 -0
- package/src/components/sale/businessquery/CollectManage.vue +6 -0
- package/src/components/sale/businessquery/ResidentialCardQuery.vue +373 -0
- package/src/components/sale/config/exportConfig.js +2 -2
- package/src/components/sale/filesquery/MeterQuery.vue +21 -1
- package/src/components/sale/filesquery/RecordInfoQuery.vue +16 -0
- package/src/filiale/qianneng/MeterQuery.vue +21 -1
- package/src/filiale/rongcheng/RecordInfoQuery.vue +1 -1
- package/src/reportManage.js +10 -0
- package/src/saleManage.js +6 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<div class="flex">
|
|
5
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
6
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
|
|
7
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
8
|
+
<div class="row">
|
|
9
|
+
<div class="col-sm-2 form-group">
|
|
10
|
+
<label for="startDate" class="font_normal_body">开始日期</label>
|
|
11
|
+
<datepicker id="startDate" placeholder="开始日期" style="width:60%"
|
|
12
|
+
v-model="model.startDate"
|
|
13
|
+
:value.sync="model.startDate"
|
|
14
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
15
|
+
:show-reset-button="true"
|
|
16
|
+
>
|
|
17
|
+
</datepicker>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-2 form-group">
|
|
20
|
+
<label for="endDate" class="font_normal_body">结束日期</label>
|
|
21
|
+
<datepicker id="endDate" placeholder="结束日期" style="width:60%"
|
|
22
|
+
v-model="model.endDate"
|
|
23
|
+
:value.sync="model.endDate"
|
|
24
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
25
|
+
:show-reset-button="true"
|
|
26
|
+
>
|
|
27
|
+
</datepicker>
|
|
28
|
+
</div>
|
|
29
|
+
<div class="span" style="float:right;">
|
|
30
|
+
<button class="button_search button_spacing" @click="search">查询</button>
|
|
31
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
32
|
+
|
|
33
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
34
|
+
:field="$parent.$parent.getfield"
|
|
35
|
+
sqlurl="rs/logic/exportfile"
|
|
36
|
+
sql-name="residentialCardQuery"
|
|
37
|
+
template-name='重点用户用气排行查询'
|
|
38
|
+
:choose-col="true"></export-excel>
|
|
39
|
+
<print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
|
|
40
|
+
:defaultfield="$parent.$parent.defaultfield"
|
|
41
|
+
titletable="重点用户用气排行查询"
|
|
42
|
+
></print-data>
|
|
43
|
+
<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>
|
|
44
|
+
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
48
|
+
<div class="col-sm-2 form-group">
|
|
49
|
+
<label class="font_normal_body">客户编号</label>
|
|
50
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
|
|
51
|
+
condition="f_userinfo_code = '{}' " placeholder="客户编号">
|
|
52
|
+
</div>
|
|
53
|
+
<div class="col-sm-2 form-group">
|
|
54
|
+
<label class="font_normal_body">客户姓名</label>
|
|
55
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
56
|
+
condition="f_user_name = '{}' " placeholder="客户姓名">
|
|
57
|
+
</div>
|
|
58
|
+
<div class="col-sm-2 form-group">
|
|
59
|
+
<label class="font_normal_body">表号</label>
|
|
60
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
|
|
61
|
+
condition="f_meternumber = '{}' " placeholder="表号">
|
|
62
|
+
</div>
|
|
63
|
+
<div class="col-sm-2 form-group">
|
|
64
|
+
<label class="font_normal_body">用气性质</label>
|
|
65
|
+
<v-select :value.sync="model.f_gasproperties" multiple
|
|
66
|
+
v-model="model.f_gasproperties"
|
|
67
|
+
:options='$parent.$parent.gasproperties' placeholder='请选择'
|
|
68
|
+
condition="f_gasproperties in {}"
|
|
69
|
+
close-on-select></v-select>
|
|
70
|
+
</div>
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
</criteria>
|
|
74
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid >
|
|
75
|
+
<template partial='head'>
|
|
76
|
+
<tr>
|
|
77
|
+
<th v-for="(key,value ) in $parent.$parent.$parent.config.pageFilds" ><nobr>{{value}}</nobr></th>
|
|
78
|
+
</tr>
|
|
79
|
+
</template>
|
|
80
|
+
<template partial='body'>
|
|
81
|
+
<td style="text-align: center;" v-for="(key,value ) in $parent.$parent.$parent.config.pageFilds"><nobr>{{row[key]}}</nobr></td>
|
|
82
|
+
</template>
|
|
83
|
+
<template partial='foot'></template>
|
|
84
|
+
</data-grid>
|
|
85
|
+
</criteria-paged>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
</template>
|
|
90
|
+
|
|
91
|
+
<script>
|
|
92
|
+
import {PagedList, HttpResetClass} from 'vue-client'
|
|
93
|
+
import defaultPrint from '../../config/DefaultPrint'
|
|
94
|
+
import plugins from "../../../../plugins/GetLoginInfoService";
|
|
95
|
+
|
|
96
|
+
let readySomething = async function (self) {
|
|
97
|
+
self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
|
|
98
|
+
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
|
|
99
|
+
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
|
|
100
|
+
await self.$MagLoadParams.loadParam()
|
|
101
|
+
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
export default {
|
|
105
|
+
title: '重点用户用气排行查询',
|
|
106
|
+
data() {
|
|
107
|
+
let model = new PagedList('rs/sql/keyUserGasRanking', 20, {
|
|
108
|
+
startDate: 'this.model.startDate',
|
|
109
|
+
endDate: 'this.model.endDate'
|
|
110
|
+
})
|
|
111
|
+
return {
|
|
112
|
+
//默认打印列
|
|
113
|
+
defaultfield: [],
|
|
114
|
+
config: {
|
|
115
|
+
pageFilds:{
|
|
116
|
+
'f_userinfo_code': '用户编号', 'f_user_name': '用户名', 'f_meternumber': '表号', 'f_gasproperties': '用气性质','f_pregas' : '用气量', 'f_bv':'所在用气性质占比'
|
|
117
|
+
},
|
|
118
|
+
defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_meternumber','f_gasproperties','f_pregas', 'f_bv']
|
|
119
|
+
},
|
|
120
|
+
model: model,
|
|
121
|
+
criteriaShow: false,
|
|
122
|
+
gasproperties:[{label: '全部',value: ''}, ...this.$appdata.getParam('用气性质')]
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
ready() {
|
|
126
|
+
readySomething(this).then(() => {
|
|
127
|
+
this.$emit('ready')
|
|
128
|
+
}).catch((error) => {
|
|
129
|
+
this.$emit('error', error)
|
|
130
|
+
})
|
|
131
|
+
},
|
|
132
|
+
methods: {
|
|
133
|
+
selfSearch(args) {
|
|
134
|
+
if(!this.$refs.paged.$refs.cri.model.startDate || !this.$refs.paged.$refs.cri.model.endDate){
|
|
135
|
+
return this.$showMessage("时间区间的开始和结束时间不能为空!");
|
|
136
|
+
}
|
|
137
|
+
this.model.search(args.condition, args.model)
|
|
138
|
+
},
|
|
139
|
+
clear() {
|
|
140
|
+
Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
|
|
141
|
+
this.$refs.paged.$refs.cri.model[key] = []
|
|
142
|
+
})
|
|
143
|
+
},
|
|
144
|
+
hidden() {
|
|
145
|
+
this.criteriaShow = !this.criteriaShow
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
watch: {
|
|
149
|
+
},
|
|
150
|
+
computed: {
|
|
151
|
+
|
|
152
|
+
getCondition() {
|
|
153
|
+
return {
|
|
154
|
+
startDate: this.$refs.paged.$refs.cri.model.startDate,
|
|
155
|
+
endDate: this.$refs.paged.$refs.cri.model.endDate,
|
|
156
|
+
condition: this.$refs.paged.$refs.cri.condition
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
getfield() {
|
|
160
|
+
return this.config.pageFilds
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
}
|
|
165
|
+
</script>
|
|
@@ -15,6 +15,9 @@
|
|
|
15
15
|
<tabs header="小区汇总(机表)" v-if="permission('小区汇总(机表)')">
|
|
16
16
|
<residential-query v-if="show.includes('小区汇总(机表)')" @deal-msg="dealMsg"></residential-query>
|
|
17
17
|
</tabs>
|
|
18
|
+
<tabs header="小区汇总(卡表)" v-if="permission('小区汇总(卡表)')">
|
|
19
|
+
<residential-card-query v-if="show.includes('小区汇总(卡表)')" @deal-msg="dealMsg" ></residential-card-query>
|
|
20
|
+
</tabs>
|
|
18
21
|
<!--<tabs header="小区欠费汇总(机表)" v-if="permission('小区欠费汇总(机表)')">-->
|
|
19
22
|
<!--<residential-arrears-query v-if="show.includes('小区欠费汇总(机表)')" @deal-msg="dealMsg"></residential-arrears-query>-->
|
|
20
23
|
<!--</tabs>-->
|
|
@@ -96,6 +99,9 @@
|
|
|
96
99
|
<tabs header="明细报表查询" v-if="permission('明细报表查询')">
|
|
97
100
|
<report-detail ></report-detail>
|
|
98
101
|
</tabs>
|
|
102
|
+
<tabs header="重点用户用气排行查询" v-if="permission('重点用户用气排行查询')">
|
|
103
|
+
<key-user-gas-ranking v-if="show.includes('重点用户用气排行查询')" @deal-msg="dealMsg" ></key-user-gas-ranking>
|
|
104
|
+
</tabs>
|
|
99
105
|
</tab-button>
|
|
100
106
|
|
|
101
107
|
</template>
|
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<div class="flex">
|
|
5
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
6
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
|
|
7
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
8
|
+
<div class="row">
|
|
9
|
+
<div class="col-sm-2 form-group">
|
|
10
|
+
<label for="startDate" class="font_normal_body">开始日期</label>
|
|
11
|
+
<datepicker id="startDate" placeholder="开始日期" style="width:60%"
|
|
12
|
+
v-model="model.startDate"
|
|
13
|
+
:value.sync="model.startDate"
|
|
14
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
15
|
+
:show-reset-button="true"
|
|
16
|
+
>
|
|
17
|
+
</datepicker>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-2 form-group">
|
|
20
|
+
<label for="endDate" class="font_normal_body">结束日期</label>
|
|
21
|
+
<datepicker id="endDate" placeholder="结束日期" style="width:60%"
|
|
22
|
+
v-model="model.endDate"
|
|
23
|
+
:value.sync="model.endDate"
|
|
24
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
25
|
+
:show-reset-button="true"
|
|
26
|
+
>
|
|
27
|
+
</datepicker>
|
|
28
|
+
</div>
|
|
29
|
+
<div class="form-group col-sm-2">
|
|
30
|
+
<label class="font_normal_body">选择小区</label>
|
|
31
|
+
<v-select :value.sync="model.f_residential_area" :value-single="true"
|
|
32
|
+
class="select_list select"
|
|
33
|
+
style="width: 60%"
|
|
34
|
+
v-model="model.f_residential_area"
|
|
35
|
+
:options='$parent.$parent.residentialArea' placeholder='选择小区'
|
|
36
|
+
condition="ud.f_residential_area = '{}'"
|
|
37
|
+
close-on-select search="true">
|
|
38
|
+
</v-select>
|
|
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
|
+
|
|
44
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
45
|
+
:field="$parent.$parent.getfield"
|
|
46
|
+
:footer="$parent.$parent.footer"
|
|
47
|
+
:header="$parent.$parent.other"
|
|
48
|
+
sqlurl="rs/logic/exportfile"
|
|
49
|
+
sql-name="residentialCardQuery"
|
|
50
|
+
template-name='小区综合查询(卡表)导出'
|
|
51
|
+
:choose-col="true"></export-excel>
|
|
52
|
+
<print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
|
|
53
|
+
:defaultfield="$parent.$parent.defaultfield"
|
|
54
|
+
titletable="小区综合查询(卡表)导出"
|
|
55
|
+
:sumsmodel="$parent.$parent.sumsmodel"></print-data>
|
|
56
|
+
<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>
|
|
57
|
+
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
61
|
+
<res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
|
|
62
|
+
<div class="col-sm-2 form-group">
|
|
63
|
+
<label class="font_normal_body" >抄 表 员</label>
|
|
64
|
+
<v-select :value.sync="model.f_inputtor"
|
|
65
|
+
v-model="model.f_inputtor"
|
|
66
|
+
:options='$parent.$parent.inputtores' placeholder='请选择'
|
|
67
|
+
condition="f_inputtor = '{}'"
|
|
68
|
+
close-on-select :search="false">
|
|
69
|
+
</v-select>
|
|
70
|
+
</div>
|
|
71
|
+
<div class="col-sm-2 form-group">
|
|
72
|
+
<label class="font_normal_body">抄 表 册</label>
|
|
73
|
+
<v-select :value.sync="model.f_meter_book" v-model="model.f_meter_book"
|
|
74
|
+
:options='$parent.$parent.meterbooks' placeholder='抄表册'
|
|
75
|
+
style="width:60%"
|
|
76
|
+
close-on-select
|
|
77
|
+
condition="f_meter_book_num = '{}'"></v-select>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="col-sm-2 form-group">
|
|
80
|
+
<label class="font_normal_body">气表品牌</label>
|
|
81
|
+
<v-select :value.sync="model.f_meter_brand" multiple
|
|
82
|
+
v-model="model.f_meter_brand"
|
|
83
|
+
:options='$parent.$parent.meterbrands' placeholder='请选择'
|
|
84
|
+
condition="f_meter_brand in {}"
|
|
85
|
+
close-on-select></v-select>
|
|
86
|
+
</div>
|
|
87
|
+
<!--<div class="col-sm-2 form-group" v-for="con in $parent.$parent.config.conditions">-->
|
|
88
|
+
<!--<label class="font_normal_body">{{con.label}}</label>-->
|
|
89
|
+
<!--<input type="text" style="width:60%" class="input_search" v-model="model[con.value]"-->
|
|
90
|
+
<!--condition= " '{}' = {{con.value}}" placeholder="{{con.label}}">-->
|
|
91
|
+
<!--</div>-->
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
</criteria>
|
|
95
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid >
|
|
96
|
+
<template partial='head'>
|
|
97
|
+
<tr>
|
|
98
|
+
<th v-for="(key,value ) in $parent.$parent.$parent.config.pageFilds" ><nobr>{{value}}</nobr></th>
|
|
99
|
+
</tr>
|
|
100
|
+
</template>
|
|
101
|
+
<template partial='body'>
|
|
102
|
+
<td style="text-align: center;" v-for="(key,value ) in $parent.$parent.$parent.config.pageFilds"><nobr>{{row[key]}}</nobr></td>
|
|
103
|
+
</template>
|
|
104
|
+
<template partial='foot'></template>
|
|
105
|
+
</data-grid>
|
|
106
|
+
</criteria-paged>
|
|
107
|
+
<table class="table-hover">
|
|
108
|
+
<tr style="position: relative" class="table-bordered">
|
|
109
|
+
<td
|
|
110
|
+
style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
|
|
111
|
+
汇总信息
|
|
112
|
+
</td>
|
|
113
|
+
<td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
114
|
+
户数合计: {{sumsmodel.hushu}}
|
|
115
|
+
</td>
|
|
116
|
+
<td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
117
|
+
新建户数合计: {{sumsmodel.xinhushu}}
|
|
118
|
+
</td>
|
|
119
|
+
<td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
120
|
+
用气金额合计: {{sumsmodel.f_pregas}}
|
|
121
|
+
</td>
|
|
122
|
+
</tr>
|
|
123
|
+
</table>
|
|
124
|
+
</div>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
</template>
|
|
128
|
+
|
|
129
|
+
<script>
|
|
130
|
+
import {PagedList, HttpResetClass} from 'vue-client'
|
|
131
|
+
import defaultPrint from '../config/DefaultPrint'
|
|
132
|
+
import exportConfig from "../config/exportConfig";
|
|
133
|
+
import plugins from "../../../plugins/GetLoginInfoService";
|
|
134
|
+
|
|
135
|
+
let readySomething = async function (self) {
|
|
136
|
+
self.initParams()
|
|
137
|
+
self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
|
|
138
|
+
//加载抄表册
|
|
139
|
+
self.$MagGetSaleParam.initinputtor();
|
|
140
|
+
self.getinputtores();
|
|
141
|
+
self.initmeterbook();
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
|
|
146
|
+
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
|
|
147
|
+
// await self.$refs.paged.$refs.cri.search()
|
|
148
|
+
await self.$MagLoadParams.loadParam()
|
|
149
|
+
await self.$getConfig(self, 'ResidentialCardQuery')
|
|
150
|
+
|
|
151
|
+
self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export default {
|
|
155
|
+
title: '小区汇总',
|
|
156
|
+
data() {
|
|
157
|
+
let model = new PagedList('rs/sql/residentialCardQuery', 20, {
|
|
158
|
+
startdate: 'this.model.startDate',
|
|
159
|
+
enddate: 'this.model.endDate'
|
|
160
|
+
},{
|
|
161
|
+
hushu:0,
|
|
162
|
+
xinhushu:0,
|
|
163
|
+
f_pregas:0
|
|
164
|
+
})
|
|
165
|
+
model.f_filialeid = this.$login.f.orgid
|
|
166
|
+
return {
|
|
167
|
+
//默认打印列
|
|
168
|
+
defaultfield: [],
|
|
169
|
+
config: {
|
|
170
|
+
pageFilds:{
|
|
171
|
+
'f_residential_area': '小区', 'hushu': '户数', 'xinhushu': '新建户数', 'f_pregas': '购气量'
|
|
172
|
+
},
|
|
173
|
+
defaultPrint: ['xinhushu', 'hushu', 'f_pregas']
|
|
174
|
+
},
|
|
175
|
+
data: {},
|
|
176
|
+
other: [],
|
|
177
|
+
footer: [],
|
|
178
|
+
meterbrands: [],
|
|
179
|
+
initres: {
|
|
180
|
+
org:[this.$login.f.orgid],
|
|
181
|
+
dep:[],
|
|
182
|
+
user:[]
|
|
183
|
+
},
|
|
184
|
+
model: model,
|
|
185
|
+
criteriaShow: false,
|
|
186
|
+
f_filialeid: this.$login.f.orgid,
|
|
187
|
+
orgid: [this.$login.f.orgid],
|
|
188
|
+
//小区
|
|
189
|
+
residentialArea: [],
|
|
190
|
+
orgCondtionStr: '',
|
|
191
|
+
//合计数据
|
|
192
|
+
sumsmodel:{},
|
|
193
|
+
meterbooks:[{label: '全部',value: ''}], //抄表册
|
|
194
|
+
inputtores:[{label: '全部',value: ''}],
|
|
195
|
+
allorgid:[],
|
|
196
|
+
tempfalg :false,
|
|
197
|
+
lastorgstr:'',
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
ready() {
|
|
201
|
+
this.getaddress()
|
|
202
|
+
readySomething(this).then(() => {
|
|
203
|
+
this.$emit('ready')
|
|
204
|
+
}).catch((error) => {
|
|
205
|
+
this.$emit('error', error)
|
|
206
|
+
})
|
|
207
|
+
},
|
|
208
|
+
methods: {
|
|
209
|
+
async initParams() {
|
|
210
|
+
// 初始化气表品牌
|
|
211
|
+
let brandArr = []
|
|
212
|
+
this.$MagGetSaleParam.getGasbrand().forEach((item) => {
|
|
213
|
+
let temp = {}
|
|
214
|
+
temp.label = item.label
|
|
215
|
+
temp.value = item.value.f_meter_brand
|
|
216
|
+
brandArr.push(temp)
|
|
217
|
+
})
|
|
218
|
+
this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
|
|
219
|
+
},
|
|
220
|
+
async initmeterbook(orgstr){
|
|
221
|
+
if(orgstr == null ){
|
|
222
|
+
orgstr = this.f_filialeid;
|
|
223
|
+
}
|
|
224
|
+
//获取新的抄表册,先去清理所有的抄表册
|
|
225
|
+
this.$MagGetSaleParam.meterbooks = [];
|
|
226
|
+
//开始加载新的抄表册
|
|
227
|
+
await this.$MagGetSaleParam.loadMeterBook(orgstr)
|
|
228
|
+
this.meterbooks = [{label: '全部', value: ''}, ...this.$MagGetSaleParam.getMeterBooks()]
|
|
229
|
+
},
|
|
230
|
+
async updateParams() {
|
|
231
|
+
await this.$MagLoadParams.loadParam(this.f_filialeid)
|
|
232
|
+
this.inputtores = [];
|
|
233
|
+
this.inputtores.push({label: "全部", value: ""})
|
|
234
|
+
if(this.allorgid!=null){
|
|
235
|
+
this.allorgid.forEach((res)=>{
|
|
236
|
+
this.inputtores = this.inputtores.concat(this.$MagGetSaleParam.getresinputtor(res));
|
|
237
|
+
})
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
getinputtores() {
|
|
241
|
+
// 获取抄表员
|
|
242
|
+
let rs = []
|
|
243
|
+
if (this.$login.f.f_gasman.length > 0) {
|
|
244
|
+
for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
|
|
245
|
+
let temp = {
|
|
246
|
+
label: this.$login.f.f_gasman[i].name,
|
|
247
|
+
value: this.$login.f.f_gasman[i].name
|
|
248
|
+
}
|
|
249
|
+
rs.push(temp)
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
return [{label: '全部', value: ''}, ...rs]
|
|
254
|
+
},
|
|
255
|
+
//加载抄表册
|
|
256
|
+
loadMeterBooks(){
|
|
257
|
+
this.meterbooks = [{label: '全部', value: ''}, ...this.$MagGetSaleParam.getMeterBooks()]
|
|
258
|
+
},
|
|
259
|
+
getotherfooter() {
|
|
260
|
+
// this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
|
|
261
|
+
// this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
|
|
262
|
+
this.other = [];
|
|
263
|
+
this.footer = [];
|
|
264
|
+
let exportdata = this.getCondition;
|
|
265
|
+
let otherInData = [];
|
|
266
|
+
otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
|
|
267
|
+
let footerData = [], exportfield = this.getfield;
|
|
268
|
+
footerData.push("合计");
|
|
269
|
+
let self = this;
|
|
270
|
+
for (var field in self.sumsmodel) {
|
|
271
|
+
footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
|
|
272
|
+
}
|
|
273
|
+
this.footer.push(footerData);
|
|
274
|
+
this.other.push(otherInData);
|
|
275
|
+
},
|
|
276
|
+
async getaddress() {
|
|
277
|
+
console.log('开始获取小区')
|
|
278
|
+
let HttpReset = new HttpResetClass()
|
|
279
|
+
var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
|
|
280
|
+
data: {
|
|
281
|
+
condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
|
|
282
|
+
}
|
|
283
|
+
}, {resolveMsg: null, rejectMsg: '获取小区失败!'})
|
|
284
|
+
console.log('小区', data)
|
|
285
|
+
let house = [{label: '全部', value: ''}]
|
|
286
|
+
for (let row of data.data) {
|
|
287
|
+
console.log('开始保存小区')
|
|
288
|
+
house.push({label: row.f_residential_area, value: row.f_residential_area})
|
|
289
|
+
}
|
|
290
|
+
this.residentialArea = house
|
|
291
|
+
},
|
|
292
|
+
selfSearch(args) {
|
|
293
|
+
// if (this.orgCondtionStr)
|
|
294
|
+
// args.condition = `${args.condition}` + 'and f_filialeid in ' + this.orgCondtionStr
|
|
295
|
+
// else
|
|
296
|
+
// args.condition = `${args.condition}` + 'and f_filialeid in ' + '(' + this.$login.f.orgid + ')'
|
|
297
|
+
debugger
|
|
298
|
+
args.condition = `${args.condition}` + this.orgCondtionStr
|
|
299
|
+
this.model.search(args.condition, args.model)
|
|
300
|
+
this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
|
|
301
|
+
},
|
|
302
|
+
async getRes(condition,obj) {
|
|
303
|
+
console.log(condition,"========")
|
|
304
|
+
this.orgCondtionStr = condition
|
|
305
|
+
|
|
306
|
+
},
|
|
307
|
+
clear() {
|
|
308
|
+
Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
|
|
309
|
+
this.$refs.paged.$refs.cri.model[key] = []
|
|
310
|
+
})
|
|
311
|
+
},
|
|
312
|
+
hidden() {
|
|
313
|
+
this.criteriaShow = !this.criteriaShow
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
watch: {
|
|
317
|
+
sumsmodel: {
|
|
318
|
+
handler: function (val) {
|
|
319
|
+
this.getotherfooter();
|
|
320
|
+
},
|
|
321
|
+
deep: true
|
|
322
|
+
},
|
|
323
|
+
async 'orgCondtionStr'(val) {
|
|
324
|
+
this.$refs.paged.$refs.cri.model.f_inputtor = []
|
|
325
|
+
this.$refs.paged.$refs.cri.model.f_meter_book = []
|
|
326
|
+
this.meterbooks = [{label: '全部',value: ''}];
|
|
327
|
+
if(this.lastorgstr != val){
|
|
328
|
+
this.tempfalg = true;
|
|
329
|
+
this.lastorgstr = val;
|
|
330
|
+
}
|
|
331
|
+
if(this.tempfalg && val != null && val!='' && val.indexOf("(")>-1){
|
|
332
|
+
this.tempfalg = false;
|
|
333
|
+
let a = val.substring(val.indexOf("(")+2)
|
|
334
|
+
await this.initmeterbook(a.substring(0,a.indexOf(")")-1));
|
|
335
|
+
}
|
|
336
|
+
let res = val.match(/'(.*?)'/)
|
|
337
|
+
if (res) {
|
|
338
|
+
this.f_filialeid = res[1]
|
|
339
|
+
if(res.input !=null){
|
|
340
|
+
let resorgid = res.input.substring(res.input.indexOf("'"));
|
|
341
|
+
if(resorgid!= null && resorgid!=''){
|
|
342
|
+
resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
|
|
343
|
+
// resorgid = resorgid.replaceAll("'","");
|
|
344
|
+
resorgid = resorgid.replace(/'/g,"");
|
|
345
|
+
this.allorgid = resorgid.split(",")
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
this.updateParams()
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
},
|
|
352
|
+
computed: {
|
|
353
|
+
|
|
354
|
+
getCondition() {
|
|
355
|
+
var con = ""
|
|
356
|
+
if (this.orgCondtionStr) {
|
|
357
|
+
con = `${this.$refs.paged.$refs.cri.condition} ` + this.orgCondtionStr
|
|
358
|
+
} else {
|
|
359
|
+
con = `${this.$refs.paged.$refs.cri.condition}`
|
|
360
|
+
}
|
|
361
|
+
return {
|
|
362
|
+
startdate: this.$refs.paged.$refs.cri.model.startDate,
|
|
363
|
+
enddate: this.$refs.paged.$refs.cri.model.endDate,
|
|
364
|
+
condition: con
|
|
365
|
+
}
|
|
366
|
+
},
|
|
367
|
+
getfield() {
|
|
368
|
+
return exportConfig.ResidentialQuery
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
}
|
|
373
|
+
</script>
|
|
@@ -51,7 +51,7 @@ export default{
|
|
|
51
51
|
'f_balance_amount': '表上余额', 'f_user_type': '客户类型', 'f_usetype': '使用类型', 'f_gasproperties': '用气性质',
|
|
52
52
|
'f_meternumber': '表号', 'f_card_id': '卡号', 'f_price_name': '气价名称', 'value': '气价详情', 'f_meter_brand': '气表品牌',
|
|
53
53
|
'f_meter_style': '气表型号', 'f_inputtor': '户管员', 'f_gas_person': '通气人', 'f_gas_date': '通气时间',
|
|
54
|
-
'f_input_date': '建表时间', 'f_table_state': '气表状态', 'isbgl': '是否壁挂炉'
|
|
54
|
+
'f_input_date': '建表时间', 'f_table_state': '气表状态', 'isbgl': '是否壁挂炉', 'f_networkvalve': '自动阀控'
|
|
55
55
|
},
|
|
56
56
|
ResidentialQuery: {
|
|
57
57
|
'f_residential_area': '小区', 'hushu': '户数', 'xinhushu': '新建户数', 'f_oughtfee': '用气金额', 'f_oughtamount': '用气量',
|
|
@@ -224,7 +224,7 @@ export default{
|
|
|
224
224
|
'f_balance_amount': '表剩余金额', 'f_times': '写卡次数',
|
|
225
225
|
'f_fillcard_times': '补卡次数', 'f_sendsuccess': '表同步状态', 'f_isband': '微信绑定', 'f_cost_type': '缴费类型'
|
|
226
226
|
, 'f_bank_accopen': '银行户名', 'f_bank_name': '银行名称', 'f_bank_account': '银行账号',
|
|
227
|
-
'f_bank_idnumber': '银行身份证号', 'f_bank_pay_number': '缴费编号', 'f_maxdate': '换表时间', 'f_devices_type': '灶具信息'
|
|
227
|
+
'f_bank_idnumber': '银行身份证号', 'f_bank_pay_number': '缴费编号', 'f_maxdate': '换表时间', 'f_devices_type': '灶具信息', 'f_network_valve': '自动阀控'
|
|
228
228
|
},
|
|
229
229
|
|
|
230
230
|
compreConfigGY: {
|
|
@@ -244,6 +244,19 @@
|
|
|
244
244
|
close-on-select
|
|
245
245
|
condition="f_meter_book_num = '{}'"></v-select>
|
|
246
246
|
</div>
|
|
247
|
+
<div class="col-sm-2 form-group">
|
|
248
|
+
<label class="font_normal_body">自动阀控</label>
|
|
249
|
+
<v-select
|
|
250
|
+
placeholder='自动阀控'
|
|
251
|
+
|
|
252
|
+
:value.sync="model.f_network_valve"
|
|
253
|
+
style="width:60%"
|
|
254
|
+
v-model="model.f_network_valve"
|
|
255
|
+
:options='$parent.$parent.networkvalves'
|
|
256
|
+
close-on-select
|
|
257
|
+
condition="f_networkvalve='{}'">
|
|
258
|
+
</v-select>
|
|
259
|
+
</div>
|
|
247
260
|
|
|
248
261
|
</div>
|
|
249
262
|
</div>
|
|
@@ -330,6 +343,9 @@
|
|
|
330
343
|
<th>
|
|
331
344
|
<nobr>是否壁挂炉</nobr>
|
|
332
345
|
</th>
|
|
346
|
+
<th>
|
|
347
|
+
<nobr>自动阀控</nobr>
|
|
348
|
+
</th>
|
|
333
349
|
</tr>
|
|
334
350
|
</template>
|
|
335
351
|
<template partial='body'>
|
|
@@ -407,6 +423,9 @@
|
|
|
407
423
|
<td :class="row.f_table_state !== '正常'? 'back-red' : 'back-blue'" style="text-align: center;">
|
|
408
424
|
<nobr>{{row.isbgl}}</nobr>
|
|
409
425
|
</td>
|
|
426
|
+
<td :class="row.f_table_state !== '正常'? 'back-red' : 'back-blue'" style="text-align: center;">
|
|
427
|
+
<nobr>{{row.f_networkvalve}}</nobr>
|
|
428
|
+
</td>
|
|
410
429
|
</template>
|
|
411
430
|
<template partial='foot'>
|
|
412
431
|
</template>
|
|
@@ -556,7 +575,8 @@
|
|
|
556
575
|
tempfalg :false,
|
|
557
576
|
lastorgstr:'',
|
|
558
577
|
issecond: [{label:'是',value:" = '二次挂表'"},{label:'否',value:" <> '二次挂表'"}],
|
|
559
|
-
usetype:this.$appdata.getParam('使用类型')
|
|
578
|
+
usetype:this.$appdata.getParam('使用类型'),
|
|
579
|
+
networkvalves: this.$appdata.getParam('自动阀控') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('自动阀控')] : []
|
|
560
580
|
}
|
|
561
581
|
},
|
|
562
582
|
ready() {
|
|
@@ -441,6 +441,19 @@
|
|
|
441
441
|
condition="f_install_person in {}"
|
|
442
442
|
v-el:cc></v-select>
|
|
443
443
|
</div>
|
|
444
|
+
<div class="col-sm-2 form-group">
|
|
445
|
+
<label class="font_normal_body">自动阀控</label>
|
|
446
|
+
<v-select
|
|
447
|
+
placeholder='自动阀控'
|
|
448
|
+
|
|
449
|
+
:value.sync="model.f_network_valve"
|
|
450
|
+
style="width:60%"
|
|
451
|
+
v-model="model.f_network_valve"
|
|
452
|
+
:options='$parent.$parent.networkvalves'
|
|
453
|
+
close-on-select
|
|
454
|
+
condition="f_network_valve='{}'">
|
|
455
|
+
</v-select>
|
|
456
|
+
</div>
|
|
444
457
|
</div>
|
|
445
458
|
</div>
|
|
446
459
|
</criteria>
|
|
@@ -496,6 +509,7 @@
|
|
|
496
509
|
</th>
|
|
497
510
|
<!--<th><nobr>最后购气日期</nobr></th>-->
|
|
498
511
|
|
|
512
|
+
<th><nobr>自动阀控</nobr></th>
|
|
499
513
|
<th><nobr>阀门状态</nobr></th>
|
|
500
514
|
|
|
501
515
|
<!-- <th><nobr>旧客户编号</nobr></th> -->
|
|
@@ -627,6 +641,7 @@
|
|
|
627
641
|
<td style="text-align: center;"><nobr>{{row.f_balance}}</nobr></td>
|
|
628
642
|
<td style="text-align: center;"><nobr>{{row.f_hand_date}}</nobr></td>
|
|
629
643
|
<!-- <td style="text-align: center;"><nobr>{{row.f_max_operate_date}}</nobr></td>-->
|
|
644
|
+
<td style="text-align: center;"><nobr>{{row.f_network_valve}}</nobr></td>
|
|
630
645
|
<td style="text-align: center;"><nobr>{{row.f_valve_state}}</nobr></td>
|
|
631
646
|
|
|
632
647
|
<!-- <td style="text-align: center;"><nobr>{{row.f_olduserinfo_code}}</nobr></td>-->
|
|
@@ -837,6 +852,7 @@
|
|
|
837
852
|
bookSlice:[{label: '全部',value: ''}],
|
|
838
853
|
pricenames:[],
|
|
839
854
|
dypayment:[{label:"全部",value:""},{label:"银行代扣",value:"银行代扣",},{label:"现金缴费",value:"现金缴费",}],
|
|
855
|
+
networkvalves: this.$appdata.getParam('自动阀控') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('自动阀控')] : [],
|
|
840
856
|
}
|
|
841
857
|
},
|
|
842
858
|
ready(){
|