manage-client 3.3.64 → 3.3.66
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/ChargeQuery.vue +2 -2
- package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +5 -0
- package/src/components/webmeter/report/ckhReportList.vue +391 -0
- package/src/filiale/WEINAN/ChargeQuery.vue +1 -0
- package/src/filiale/WEINAN/ResSelectGroupNew.vue +211 -0
- package/src/filiale/WEINAN/sale.js +2 -0
- package/src/filiale/shanxian/UserLostContactAnalysis.vue +5 -0
- package/src/filiale/wuhai/ChargeQuery.vue +1 -1
- package/src/filiale/wuhai/MeterQuery.vue +1 -1
- package/src/filiale/wuhai/OtherChargeQuery.vue +1 -1
- package/src/filiale/wuhai/ReportList.vue +1 -1
- package/src/filiale/wuhai/UserQuery.vue +1 -1
- package/src/main.js +2 -0
- package/src/webmeterManage.js +1 -0
package/package.json
CHANGED
|
@@ -278,9 +278,9 @@
|
|
|
278
278
|
<label class="font_normal_body">抄 表 册</label>
|
|
279
279
|
<v-select :value.sync="model.f_meter_book" v-model="model.f_meter_book"
|
|
280
280
|
:options='$parent.$parent.meterbooks' placeholder='抄表册'
|
|
281
|
-
style="width:60%"
|
|
281
|
+
style="width:60%" multiple
|
|
282
282
|
close-on-select
|
|
283
|
-
condition="f_meter_book_num
|
|
283
|
+
condition="f_meter_book_num in {}"></v-select>
|
|
284
284
|
</div>
|
|
285
285
|
<div class="col-sm-2 form-group">
|
|
286
286
|
<label class="font_normal_body" title="参数名称:写卡状态">写卡状态</label>
|
|
@@ -469,6 +469,11 @@
|
|
|
469
469
|
args.condition = args.condition + " and initinsertdate <> '开户未上报'"
|
|
470
470
|
}
|
|
471
471
|
}
|
|
472
|
+
this.startDate = this.$refs.paged.$refs.cri.model.startDate
|
|
473
|
+
this.endDate = this.$refs.paged.$refs.cri.model.endDate
|
|
474
|
+
if (this.endDate == '' || this.startDate == '') {
|
|
475
|
+
return this.$showMessage("时间区间的开始和结束时间不能为空!")
|
|
476
|
+
}
|
|
472
477
|
this.model.search(args.condition, args.model)
|
|
473
478
|
},
|
|
474
479
|
getorg(obj) {
|
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<div class="flex" v-if="!show">
|
|
5
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
6
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed='$parent.search'>
|
|
7
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
8
|
+
<div class="row" >
|
|
9
|
+
<div class="col-sm-2">
|
|
10
|
+
<label class="font_normal_body">组织机构</label>
|
|
11
|
+
<res-select :initresid="$parent.$parent.org"
|
|
12
|
+
style="width:60%"
|
|
13
|
+
@res-select="$parent.$parent.getorg"
|
|
14
|
+
:is-mul=false
|
|
15
|
+
restype='organization'>
|
|
16
|
+
</res-select>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2">
|
|
19
|
+
<label class="font_normal_body">表 钢 号 </label>
|
|
20
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_meternumber" placeholder='表钢号'
|
|
21
|
+
condition="f_meternumber = '{}'" v-next-el='meternumber' v-el:meternumber
|
|
22
|
+
>
|
|
23
|
+
</div>
|
|
24
|
+
<div class="col-sm-2">
|
|
25
|
+
<label class="font_normal_body">客户编号</label>
|
|
26
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_userinfo_code" placeholder='客户编号'
|
|
27
|
+
condition="f_userinfo_code = '{}'" v-next-el='f_userinfo_code' v-el:meternumber
|
|
28
|
+
>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="col-sm-2">
|
|
31
|
+
<label class="font_normal_body">客户名称</label>
|
|
32
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'
|
|
33
|
+
condition="f_user_name like '%{}%'" v-next-el='userid' v-el:username>
|
|
34
|
+
</div>
|
|
35
|
+
|
|
36
|
+
<div class="span" style="float:right;margin-top:10px">
|
|
37
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
38
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
|
|
39
|
+
<export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
|
|
40
|
+
:field="$parent.$parent.getfield"
|
|
41
|
+
sqlurl="rs/ckh/export" sql-name="ckh_getReportList" template-name='上报查询'
|
|
42
|
+
:choose-col="true"></export-excel>
|
|
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
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
47
|
+
<div class="col-sm-2">
|
|
48
|
+
<label class="font_normal_body">客户地址</label>
|
|
49
|
+
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_address" placeholder='客户地址'
|
|
50
|
+
condition="f_address like '%{}%'" v-next-el='userid' v-el:username>
|
|
51
|
+
</div>
|
|
52
|
+
<div class="col-sm-2 form-group">
|
|
53
|
+
<label class="font_normal_body">客户类型</label>
|
|
54
|
+
<v-select :value.sync="model.f_user_type"
|
|
55
|
+
@change="$parent.$parent.userTypeChange()"
|
|
56
|
+
:options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
|
|
57
|
+
condition="f_user_type = '{}'"
|
|
58
|
+
close-on-select></v-select>
|
|
59
|
+
</div>
|
|
60
|
+
<div class="col-sm-2 form-group">
|
|
61
|
+
<label class="font_normal_body">用气性质</label>
|
|
62
|
+
<v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
|
|
63
|
+
:options='$parent.$parent.gasproperties' placeholder='请选择'
|
|
64
|
+
condition="f_gasproperties = '{}'"
|
|
65
|
+
closfe-on-select></v-select>
|
|
66
|
+
</div>
|
|
67
|
+
<div class="col-sm-2 form-group">
|
|
68
|
+
<label class="font_normal_body">气价类型</label>
|
|
69
|
+
<v-select :value.sync="model.pricetype" v-model="model.pricetype"
|
|
70
|
+
placeholder='气价类型' :options="$parent.$parent.pricetypes"
|
|
71
|
+
close-on-select>
|
|
72
|
+
</v-select>
|
|
73
|
+
</div>
|
|
74
|
+
<div class="col-sm-2 form-group">
|
|
75
|
+
<label class="font_normal_body">气价名称</label>
|
|
76
|
+
<v-select :value.sync="model.f_price_name"
|
|
77
|
+
v-model="model.f_price_name"
|
|
78
|
+
:options="$parent.$parent.getPricenames"
|
|
79
|
+
condition="f_price_name = '{}'"
|
|
80
|
+
close-on-select></v-select>
|
|
81
|
+
</div>
|
|
82
|
+
<div class="col-sm-2 form-group">
|
|
83
|
+
<label class="font_normal_body">气表品牌</label>
|
|
84
|
+
<v-select :value.sync="model.f_meter_brand"
|
|
85
|
+
v-model="model.f_meter_brand"
|
|
86
|
+
:options="$parent.$parent.meterbrands"
|
|
87
|
+
condition="f_meter_brand = '{}'"
|
|
88
|
+
close-on-select></v-select>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="col-sm-2 form-group" >
|
|
91
|
+
<label class="font_normal_body" >开始时间</label>
|
|
92
|
+
<datepicker style="width: 60%" placeholder="大于等于"
|
|
93
|
+
:value.sync="model.f_start_date"
|
|
94
|
+
v-model="model.f_start_date"
|
|
95
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
96
|
+
condition="f_hand_date >= '{}'"
|
|
97
|
+
></datepicker>
|
|
98
|
+
</div>
|
|
99
|
+
<div class="col-sm-2 form-group" >
|
|
100
|
+
<label class="font_normal_body">结束时间</label>
|
|
101
|
+
<datepicker style="width: 60%" placeholder="小于等于"
|
|
102
|
+
:value.sync="model.f_end_date"
|
|
103
|
+
v-model="model.f_end_date"
|
|
104
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
105
|
+
condition="f_hand_date <= '{}'"
|
|
106
|
+
></datepicker>
|
|
107
|
+
</div>
|
|
108
|
+
</div>
|
|
109
|
+
</div>
|
|
110
|
+
</criteria>
|
|
111
|
+
<data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
|
|
112
|
+
<template partial='head'>
|
|
113
|
+
<tr>
|
|
114
|
+
<th><nobr>客户编号</nobr></th>
|
|
115
|
+
<th><nobr>表号</nobr></th>
|
|
116
|
+
<th><nobr>客户姓名</nobr></th>
|
|
117
|
+
<th><nobr>客户电话</nobr></th>
|
|
118
|
+
<th><nobr>客户地址</nobr></th>
|
|
119
|
+
|
|
120
|
+
<th><nobr>上报日期</nobr></th>
|
|
121
|
+
<th><nobr>系统接收时间</nobr></th>
|
|
122
|
+
<th><nobr>表内剩余金额</nobr></th>
|
|
123
|
+
<th><nobr>表内单价</nobr></th>
|
|
124
|
+
<th><nobr>本次抄表底数</nobr></th>
|
|
125
|
+
<th><nobr>阀门状态</nobr></th>
|
|
126
|
+
|
|
127
|
+
<th><nobr>上报类型</nobr></th>
|
|
128
|
+
<th><nobr>表内累计充值金额</nobr></th>
|
|
129
|
+
<th><nobr>信号强度</nobr></th>
|
|
130
|
+
<th><nobr>信噪比</nobr></th>
|
|
131
|
+
<th><nobr>电压</nobr></th>
|
|
132
|
+
|
|
133
|
+
<th><nobr>表状态</nobr></th>
|
|
134
|
+
<th><nobr>金额状态</nobr></th>
|
|
135
|
+
<!--<th><nobr>每小时上报量</nobr></th>-->
|
|
136
|
+
</tr>
|
|
137
|
+
</template>
|
|
138
|
+
<template partial='body' partial='list'>
|
|
139
|
+
<tr >
|
|
140
|
+
<td style="text-align: left;"><nobr> <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr></td>
|
|
141
|
+
<td style="text-align: left;"><nobr>{{row.f_meternumber}}</nobr></td>
|
|
142
|
+
<td style="text-align: left;"><nobr>{{row.f_user_name}}</nobr></td>
|
|
143
|
+
<td style="text-align: left;"><nobr>{{row.f_user_phone}}</nobr></td>
|
|
144
|
+
<td style="text-align: center;"><nobr>{{row.f_address}}</nobr></td>
|
|
145
|
+
|
|
146
|
+
<td style="text-align:center"><nobr>{{row.f_hand_date}}</nobr></td>
|
|
147
|
+
<th style="text-align:center"><nobr>{{row.f_insert_date}}</nobr></th>
|
|
148
|
+
<th style="text-align:center"><nobr>{{row.f_jval}}</nobr></th>
|
|
149
|
+
<th style="text-align:center"><nobr>{{row.f_price}}</nobr></th>
|
|
150
|
+
<th style="text-align:center"><nobr>{{row.f_tablebase}}</nobr></th>
|
|
151
|
+
<th style="text-align:center"><nobr>{{row.f_valvestate}}</nobr></th>
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
<th style="text-align:center"><nobr>{{row.f_upload_type}}</nobr></th>
|
|
155
|
+
<th style="text-align:center"><nobr>{{row.f_meterdebitamt}}</nobr></th>
|
|
156
|
+
<th style="text-align:center"><nobr>{{row.f_signal}}</nobr></th>
|
|
157
|
+
<th style="text-align:center"><nobr>{{row.f_snr}}</nobr></th>
|
|
158
|
+
<th style="text-align:center"><nobr>{{row.f_batterylevel}}</nobr></th>
|
|
159
|
+
|
|
160
|
+
<th style="text-align:center"><nobr>{{row.f_table_msg}}</nobr></th>
|
|
161
|
+
<th style="text-align:center"><nobr>{{row.f_moneystate}}</nobr></th>
|
|
162
|
+
</tr>
|
|
163
|
+
</template>
|
|
164
|
+
<template partial='foot'></template>
|
|
165
|
+
</data-grid>
|
|
166
|
+
</criteria-paged>
|
|
167
|
+
<table class="table-hover">
|
|
168
|
+
</table>
|
|
169
|
+
<modal :show.sync="detail24" >
|
|
170
|
+
<header slot="modal-header" class="modal-header">
|
|
171
|
+
<h4 class="modal-title">24小时上报数据明细</h4>
|
|
172
|
+
</header>
|
|
173
|
+
<article slot="modal-body" class="modal-body">
|
|
174
|
+
<table v-for="detail of detaillist">
|
|
175
|
+
<tr><td>{{detail.frozenDate}}</td><td> -- </td><td>{{detail.frozenValue}}</td></tr>
|
|
176
|
+
</table>
|
|
177
|
+
</article>
|
|
178
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
179
|
+
<div class="form-group">
|
|
180
|
+
<button class="btn btn-success" @click="close()">确认</button>
|
|
181
|
+
<button type="button" class="btn btn-default" @click='close'>取消</button>
|
|
182
|
+
</div>
|
|
183
|
+
</footer>
|
|
184
|
+
</modal>
|
|
185
|
+
</div>
|
|
186
|
+
<div class="flex" v-if="show">
|
|
187
|
+
<user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
|
|
188
|
+
</div>
|
|
189
|
+
</div>
|
|
190
|
+
|
|
191
|
+
</div>
|
|
192
|
+
</template>
|
|
193
|
+
|
|
194
|
+
<script>
|
|
195
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
196
|
+
import exportConfig from '../../sale/config/exportConfig'
|
|
197
|
+
import plugins from '../../../plugins/GetLoginInfoService'
|
|
198
|
+
import defaultPrint from "../../sale/config/DefaultPrint";
|
|
199
|
+
import * as Util from '../../../Util'
|
|
200
|
+
|
|
201
|
+
let readySomething = async function (self) {
|
|
202
|
+
await self.$MagLoadParams.loadParam()
|
|
203
|
+
self.initParams()
|
|
204
|
+
// self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
|
|
205
|
+
}
|
|
206
|
+
export default {
|
|
207
|
+
title: '上报查询',
|
|
208
|
+
data () {
|
|
209
|
+
return {
|
|
210
|
+
show:false,
|
|
211
|
+
detail24: false,
|
|
212
|
+
org:[this.$login.f.orgid],
|
|
213
|
+
orgcondition: ' and f_orgid = ' + `'${this.$login.f.orgid}'`,
|
|
214
|
+
//f_filialeid: this.$login.f.f_orgid,
|
|
215
|
+
detaillist: [],
|
|
216
|
+
meterbrands: [],
|
|
217
|
+
prices: [],
|
|
218
|
+
gasproperties:[],
|
|
219
|
+
condition:'',
|
|
220
|
+
rowdata:{},
|
|
221
|
+
sumsmodel: {},
|
|
222
|
+
orgid:[this.$login.f.orgid],
|
|
223
|
+
criteriaShow:false,
|
|
224
|
+
orgCondtionStr: '',
|
|
225
|
+
model: new PagedList('rs/ckh/ckh_getReportList', 50,{startDate: 'this.model.f_start_date', endDate: 'this.model.f_end_date'},{f_meterbalanceamt: 0,f_meterdebitamt: 0})
|
|
226
|
+
}
|
|
227
|
+
},
|
|
228
|
+
ready () {
|
|
229
|
+
// this.$refs.paged.$refs.criteria.search()
|
|
230
|
+
readySomething(this).then(() => {
|
|
231
|
+
this.$emit('ready')
|
|
232
|
+
}).catch((error) => {
|
|
233
|
+
this.$emit('error', error)
|
|
234
|
+
})
|
|
235
|
+
this.$refs.paged.$refs.criteria.model.f_start_date = Util.addDate(new Date(),-1).substring(0,10) + ' 00:00:00'
|
|
236
|
+
this.$refs.paged.$refs.criteria.model.f_end_date = Util.addDate(new Date(),-1).substring(0,10) + ' 23:59:59'
|
|
237
|
+
this.$refs.paged.$refs.criteria.search()
|
|
238
|
+
},
|
|
239
|
+
methods: {
|
|
240
|
+
initParams() {
|
|
241
|
+
// 初始化气表品牌
|
|
242
|
+
let brandArr = []
|
|
243
|
+
this.$MagGetSaleParam.getGasbrand().forEach((item) => {
|
|
244
|
+
let temp = {}
|
|
245
|
+
if(item.value.f_meter_type==='物联网表'){
|
|
246
|
+
temp.label = item.label
|
|
247
|
+
temp.value = item.value.f_meter_brand
|
|
248
|
+
brandArr.push(temp )
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
})
|
|
252
|
+
this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
|
|
253
|
+
//初始化气表价格
|
|
254
|
+
this.prices = this.$MagGetSaleParam.getPrices();
|
|
255
|
+
},
|
|
256
|
+
async updateParams() {
|
|
257
|
+
await this.$MagLoadParams.loadParam(this.f_filialeid)
|
|
258
|
+
this.initParams()
|
|
259
|
+
},
|
|
260
|
+
getorg(obj) {
|
|
261
|
+
if(plugins.convertToIn(obj)!==null&&plugins.convertToIn(obj)!==''){
|
|
262
|
+
this.orgcondition = " and f_orgid in " + plugins.convertToIn(obj)
|
|
263
|
+
}else{
|
|
264
|
+
this.orgcondition = " and f_orgid = " + `'${this.$login.f.orgid}'`
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
},
|
|
268
|
+
userTypeChange () {
|
|
269
|
+
this.gasproperties=[]
|
|
270
|
+
if(this.$refs.paged.$refs.criteria.model !==null) {
|
|
271
|
+
this.$refs.paged.$refs.criteria.model.f_gasproperties=''
|
|
272
|
+
this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.criteria.model.f_user_type[0])
|
|
273
|
+
}
|
|
274
|
+
else{
|
|
275
|
+
this.gasproperties =[{label: '全部', value: ''}]
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
hidden(){
|
|
279
|
+
this.criteriaShow = !this.criteriaShow
|
|
280
|
+
},
|
|
281
|
+
cancel() {
|
|
282
|
+
this.show = false
|
|
283
|
+
},
|
|
284
|
+
clearmsg () {
|
|
285
|
+
Object.keys(this.$refs.paged.$refs.criteria.model).forEach((key) => {
|
|
286
|
+
this.$refs.paged.$refs.criteria.model[key] = []
|
|
287
|
+
})
|
|
288
|
+
},
|
|
289
|
+
getRes (obj) {
|
|
290
|
+
this.orgCondtionStr = condition
|
|
291
|
+
this.orgname = obj.orgnames[0]
|
|
292
|
+
this.depname = obj.depnames[0]
|
|
293
|
+
},
|
|
294
|
+
showmsg(obj){
|
|
295
|
+
this.rowdata=obj
|
|
296
|
+
this.show=true
|
|
297
|
+
},
|
|
298
|
+
|
|
299
|
+
search (args) {
|
|
300
|
+
args.condition = `${args.condition}`+this.orgcondition
|
|
301
|
+
console.log(args.condition+"args.condition")
|
|
302
|
+
this.condition = args.condition
|
|
303
|
+
this.model.search(args.condition, args.model)
|
|
304
|
+
console.log(this.$refs.paged.$refs.grid.model.sums+"--this.$refs.paged.$refs.grid.model.sums")
|
|
305
|
+
this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
|
|
306
|
+
}
|
|
307
|
+
},
|
|
308
|
+
watch: {
|
|
309
|
+
'orgCondtionStr'(val) {
|
|
310
|
+
let res = val.match(/'(.*?)'/)
|
|
311
|
+
console.log('正则提取:',res && res[1])
|
|
312
|
+
if (res) {
|
|
313
|
+
this.f_filialeid = res[1]
|
|
314
|
+
// this.updateParams()
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
},
|
|
318
|
+
computed: {
|
|
319
|
+
getPricenames() {
|
|
320
|
+
let f_user_type = this.$refs.paged.$refs.criteria.model.f_user_type;
|
|
321
|
+
let f_gasproperties = this.$refs.paged.$refs.criteria.model.f_gasproperties;
|
|
322
|
+
let pricetype = this.$refs.paged.$refs.criteria.model.pricetype;
|
|
323
|
+
console.log("打印一下:",f_user_type,f_gasproperties,pricetype,this.f_filialeid,this.prices)
|
|
324
|
+
console.log("查看f_orgid:",this.$login.f.f_orgid)
|
|
325
|
+
if(this.$refs.paged.$refs.criteria.model !==null) {
|
|
326
|
+
let rs = []
|
|
327
|
+
let priceArr = []
|
|
328
|
+
if ( pricetype.length >0) {
|
|
329
|
+
let params = {
|
|
330
|
+
f_price_type: pricetype[0],
|
|
331
|
+
filter: this.org[0],
|
|
332
|
+
prices: this.prices
|
|
333
|
+
}
|
|
334
|
+
console.log("打印一下params:",params)
|
|
335
|
+
this.$MagGetSaleParam.getPrice(params).forEach((item) => {
|
|
336
|
+
console.log("====================================》")
|
|
337
|
+
let temp = {}
|
|
338
|
+
temp.label = item.label
|
|
339
|
+
temp.value = item.value.f_price_name
|
|
340
|
+
priceArr.push(temp)
|
|
341
|
+
console.log("打印一下temp:",temp)
|
|
342
|
+
})
|
|
343
|
+
|
|
344
|
+
rs = [{label: '全部', value: ''}, ...priceArr]
|
|
345
|
+
}
|
|
346
|
+
if (rs.length === 0) {
|
|
347
|
+
console.log('rs读出来是空')
|
|
348
|
+
this.$refs.paged.$refs.criteria.model.f_price_name = ''
|
|
349
|
+
}
|
|
350
|
+
return rs
|
|
351
|
+
}
|
|
352
|
+
},
|
|
353
|
+
getfield () {
|
|
354
|
+
return exportConfig.ReportListConfig
|
|
355
|
+
},
|
|
356
|
+
usertypes() {
|
|
357
|
+
return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用户类型')]
|
|
358
|
+
},
|
|
359
|
+
pricetypes() {
|
|
360
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('气价类型')]
|
|
361
|
+
},
|
|
362
|
+
getCondition () {
|
|
363
|
+
var con = ""
|
|
364
|
+
if (this.orgCondtionStr) {
|
|
365
|
+
con = `${this.$refs.paged.$refs.criteria.condition} `+this.orgcondition
|
|
366
|
+
}
|
|
367
|
+
else {
|
|
368
|
+
con = `${this.$refs.paged.$refs.criteria.condition} `+this.orgcondition
|
|
369
|
+
}
|
|
370
|
+
return {
|
|
371
|
+
startDate: this.$refs.paged.$refs.criteria.model.f_start_date,
|
|
372
|
+
endDate: this.$refs.paged.$refs.criteria.model.f_end_date,
|
|
373
|
+
condition: con
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
</script>
|
|
379
|
+
|
|
380
|
+
<style>
|
|
381
|
+
.mystyle{
|
|
382
|
+
margin-left:80px;
|
|
383
|
+
}
|
|
384
|
+
.datapanel {
|
|
385
|
+
color: #333;
|
|
386
|
+
background-color: white;
|
|
387
|
+
box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px ;
|
|
388
|
+
padding: 10px 10px 10px 10px;
|
|
389
|
+
border-radius:15px;
|
|
390
|
+
}
|
|
391
|
+
</style>
|
|
@@ -553,6 +553,7 @@
|
|
|
553
553
|
await this.equipment()
|
|
554
554
|
this.getaddress()
|
|
555
555
|
console.log('this.$login.f:',this.$login.f)
|
|
556
|
+
console.log('this.$login.r:',this.$login.r)
|
|
556
557
|
if(!this.$login.r.includes('收费查询选择权限')){
|
|
557
558
|
this.initres.dep.push(this.$login.f.depids)
|
|
558
559
|
this.initres.user.push(this.$login.f.id)
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="style" v-show="companyshow">
|
|
3
|
+
<label class="font_normal_body">公  司</label>
|
|
4
|
+
<right-tree @re-res="getorg"
|
|
5
|
+
:mustselect="mustselect"
|
|
6
|
+
:initresid='initres.org'></right-tree>
|
|
7
|
+
</div>
|
|
8
|
+
<div :class="style" v-show="departmentshow">
|
|
9
|
+
<label class="font_normal_body">部  门</label>
|
|
10
|
+
<res-select restype='department' v-ref:department
|
|
11
|
+
@res-select="getdep"
|
|
12
|
+
:parentresid="depresid"
|
|
13
|
+
:initresid='initres.dep'
|
|
14
|
+
:mustselect="mustselect"
|
|
15
|
+
:is-mul="mul">
|
|
16
|
+
</res-select>
|
|
17
|
+
</div>
|
|
18
|
+
<div :class="style" v-show="operatorshow && (!cascade)">
|
|
19
|
+
<label class="font_normal_body">人  员</label>
|
|
20
|
+
<res-select restype='user'
|
|
21
|
+
@res-select="getuser"
|
|
22
|
+
:parentresid="depresid"
|
|
23
|
+
:initresid='initres.user'
|
|
24
|
+
:mustselect="mustselect"
|
|
25
|
+
:is-mul="mul">
|
|
26
|
+
</res-select>
|
|
27
|
+
</div>
|
|
28
|
+
<div :class="style" v-show="operatorshow && cascade">
|
|
29
|
+
<label class="font_normal_body">人  员</label>
|
|
30
|
+
<res-select restype='user'
|
|
31
|
+
@res-select="getuser"
|
|
32
|
+
:parentresid="userresid"
|
|
33
|
+
:initresid='initres.user'
|
|
34
|
+
:mustselect="mustselect"
|
|
35
|
+
:is-mul="mul">
|
|
36
|
+
</res-select>
|
|
37
|
+
</div>
|
|
38
|
+
<div :class="style " v-if="sliceareashow" >
|
|
39
|
+
<label class="font_normal_body">片  区</label>
|
|
40
|
+
<v-select :value.sync="slice_area" v-model="slice_area" @change='getarea'
|
|
41
|
+
:options='sliceArea' placeholder='片区/管理站' filer-key="name"
|
|
42
|
+
close-on-select v-ref:slice>
|
|
43
|
+
</v-select>
|
|
44
|
+
</div>
|
|
45
|
+
</template>
|
|
46
|
+
<script>
|
|
47
|
+
import plugin from '../../plugins/GetLoginInfoService'
|
|
48
|
+
import { HttpResetClass } from 'vue-client'
|
|
49
|
+
export default {
|
|
50
|
+
title: '资源选择测试',
|
|
51
|
+
props: {
|
|
52
|
+
style: {
|
|
53
|
+
type: String,
|
|
54
|
+
default: 'col-sm-2 form-group'
|
|
55
|
+
},
|
|
56
|
+
mul: {
|
|
57
|
+
type: Boolean,
|
|
58
|
+
default: true
|
|
59
|
+
},
|
|
60
|
+
//初始值
|
|
61
|
+
initres: {
|
|
62
|
+
type: Object,
|
|
63
|
+
default: null,
|
|
64
|
+
},
|
|
65
|
+
showComponent:{
|
|
66
|
+
default:['company','department','operator','slicearea']
|
|
67
|
+
},
|
|
68
|
+
//人员是否和部门关联
|
|
69
|
+
cascade: {
|
|
70
|
+
type: Boolean,
|
|
71
|
+
default: true
|
|
72
|
+
},
|
|
73
|
+
selectin: {
|
|
74
|
+
type: Boolean,
|
|
75
|
+
default: true
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
data () {
|
|
79
|
+
return {
|
|
80
|
+
orgresid:[this.$login.f.orgid],
|
|
81
|
+
depresid:[],
|
|
82
|
+
userresid:[],
|
|
83
|
+
operatorsid: [],
|
|
84
|
+
sliceArea: [],
|
|
85
|
+
slice_area:[],
|
|
86
|
+
companyshow:false,
|
|
87
|
+
departmentshow:false,
|
|
88
|
+
operatorshow:false,
|
|
89
|
+
sliceareashow:false,
|
|
90
|
+
mustselect:false,
|
|
91
|
+
obj:{
|
|
92
|
+
orgnames:[],
|
|
93
|
+
depnames:[],
|
|
94
|
+
operatornames:[]
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
ready () {
|
|
99
|
+
if(this.$login.r.includes('部门默认选中')&& this.selectin){
|
|
100
|
+
this.initres.dep = [this.$login.f.depids]
|
|
101
|
+
}
|
|
102
|
+
if(this.$login.r.includes('人员默认选中')&& this.selectin){
|
|
103
|
+
this.initres.user = [this.$login.f.id]
|
|
104
|
+
if(this.$login.r.includes('人员强制选中')){
|
|
105
|
+
this.mustselect = true
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
this.initComponent();
|
|
109
|
+
this.initAreas(this.$login.f.orgid)
|
|
110
|
+
},
|
|
111
|
+
methods:{
|
|
112
|
+
initComponent(){
|
|
113
|
+
let self=this;
|
|
114
|
+
this.showComponent.find((item)=>{
|
|
115
|
+
switch(item){
|
|
116
|
+
case 'company': self.companyshow=true; break;
|
|
117
|
+
case 'department': self.departmentshow=true; break;
|
|
118
|
+
case 'operator': self.operatorshow=true; break;
|
|
119
|
+
case 'slicearea': self.sliceareashow=true; break;
|
|
120
|
+
}
|
|
121
|
+
})
|
|
122
|
+
},
|
|
123
|
+
// 初始化片区
|
|
124
|
+
async initAreas (val) {
|
|
125
|
+
if (val) {
|
|
126
|
+
let http = new HttpResetClass()
|
|
127
|
+
let getAllArea = await http.load('POST', '/rs/search', {
|
|
128
|
+
source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
|
|
129
|
+
userid: this.$login.f.id
|
|
130
|
+
}, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
|
|
131
|
+
let arr = getAllArea.data.filter((res) => {
|
|
132
|
+
return res.parentid == val
|
|
133
|
+
})
|
|
134
|
+
this.sliceArea = []
|
|
135
|
+
this.slice_area = []
|
|
136
|
+
arr.forEach((res) => {
|
|
137
|
+
this.sliceArea.push({label: res.name, value: {name: res.name, code:res.number}})
|
|
138
|
+
})
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
returnOrg(ids){
|
|
142
|
+
let limit = this.$login.r.includes('数据授权限定')
|
|
143
|
+
let deplimit = this.$login.r.includes('部门筛选')
|
|
144
|
+
|
|
145
|
+
let condition;
|
|
146
|
+
if(this.depresid.length > 0)
|
|
147
|
+
condition = " and f_orgid in " + plugin.convertToIn(this.depresid);
|
|
148
|
+
else
|
|
149
|
+
condition = " and f_orgid = " + this.$login.f.orgid;
|
|
150
|
+
if(this.userresid.length > 0){
|
|
151
|
+
condition += " and f_depid in " + plugin.convertToIn(this.userresid);
|
|
152
|
+
} else {
|
|
153
|
+
if (limit) {
|
|
154
|
+
let depids = []
|
|
155
|
+
for (let row of this.$refs.department.resoptions) {
|
|
156
|
+
depids.push(row.value)
|
|
157
|
+
}
|
|
158
|
+
let depid = depids.length ? plugin.convertToIn(depids) : ('')
|
|
159
|
+
condition += " and f_depid in " + depid;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
if(ids && ids.length > 0){
|
|
163
|
+
condition += " and f_operatorid in " + plugin.convertToIn(ids);
|
|
164
|
+
}
|
|
165
|
+
if(this.slice_area.length>0){
|
|
166
|
+
condition += " and f_zones = '" + this.slice_area[0].name+"'"
|
|
167
|
+
}
|
|
168
|
+
this.$dispatch('re-res',condition,this.obj)
|
|
169
|
+
// 只显示自身部门的人员
|
|
170
|
+
if (deplimit) {
|
|
171
|
+
if (this.$refs.department.resoptions.length>0) {
|
|
172
|
+
let resoptionsDepar = []
|
|
173
|
+
this.$refs.department.resoptions.forEach(item => {
|
|
174
|
+
if (item.value === this.$login.f.depids) {
|
|
175
|
+
resoptionsDepar.push(item)
|
|
176
|
+
}
|
|
177
|
+
})
|
|
178
|
+
this.$refs.department.resoptions = resoptionsDepar
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
getorg (obj) {
|
|
183
|
+
this.depresid=obj.resids
|
|
184
|
+
this.obj.orgnames = obj.res
|
|
185
|
+
this.initAreas(obj.resids)
|
|
186
|
+
this.returnOrg();
|
|
187
|
+
},
|
|
188
|
+
getdep(obj,val) {
|
|
189
|
+
this.obj.depnames = val
|
|
190
|
+
this.userresid=obj
|
|
191
|
+
this.returnOrg();
|
|
192
|
+
},
|
|
193
|
+
getuser(obj,val) {
|
|
194
|
+
this.obj.operatornames = val
|
|
195
|
+
this.operatorsid = obj
|
|
196
|
+
this.returnOrg(obj);
|
|
197
|
+
},
|
|
198
|
+
getarea(val) {
|
|
199
|
+
this.slice_area=val
|
|
200
|
+
if(this.operatorsid){
|
|
201
|
+
this.returnOrg(this.operatorsid);
|
|
202
|
+
}else{
|
|
203
|
+
this.returnOrg();
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
watch: {
|
|
208
|
+
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
</script>
|
|
@@ -74,4 +74,6 @@ export default function () {
|
|
|
74
74
|
Vue.component('user-equipment-query', (resolve) => { require(['./filesquery/UserDeviceQuery'], resolve) })
|
|
75
75
|
// 档案变更查询
|
|
76
76
|
Vue.component('changeuser-query', (resolve) => { require(['./filesquery/ChangeUserQuery'], resolve) })
|
|
77
|
+
// 新的人员查询
|
|
78
|
+
Vue.component('res-select-group', (resolve) => { require(['./ResSelectGroupNew'], resolve) })
|
|
77
79
|
}
|
|
@@ -464,6 +464,11 @@
|
|
|
464
464
|
search(args) {
|
|
465
465
|
this.condition = this.$refs.paged.$refs.cri.condition + `${this.orgCondtionStr}`
|
|
466
466
|
args.condition = this.condition
|
|
467
|
+
this.startDate = this.$refs.paged.$refs.cri.model.startDate
|
|
468
|
+
this.endDate = this.$refs.paged.$refs.cri.model.endDate
|
|
469
|
+
if (this.endDate == '' || this.startDate == '') {
|
|
470
|
+
return this.$showMessage("时间区间的开始和结束时间不能为空!")
|
|
471
|
+
}
|
|
467
472
|
if(this.$refs.paged.$refs.cri.model.notappear) {
|
|
468
473
|
if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
|
|
469
474
|
args.condition = args.condition + " and initinsertdate <> '开户未上报'"
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
<div class="col-sm-2 form-group">
|
|
35
35
|
<label class="font_normal_body">客户名称</label>
|
|
36
36
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
37
|
-
condition="f_user_name
|
|
37
|
+
condition="f_user_name like '%{}%'" placeholder="客户名称">
|
|
38
38
|
</div>
|
|
39
39
|
|
|
40
40
|
<div class="span" style="float:right;">
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<div class="col-sm-2 form-group">
|
|
16
16
|
<label class="font_normal_body">客户名称</label>
|
|
17
17
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
18
|
-
condition="f_user_name
|
|
18
|
+
condition="f_user_name like '%{}%'" placeholder="客户名称">
|
|
19
19
|
</div>
|
|
20
20
|
<div class="col-sm-2 form-group">
|
|
21
21
|
<label class="font_normal_body" title="旧客户编号">档案编号</label>
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
<div class="col-sm-2 form-group">
|
|
61
61
|
<label class="font_normal_body">客户名称</label>
|
|
62
62
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
63
|
-
condition="f_user_name
|
|
63
|
+
condition="f_user_name like '%{}%'" placeholder="客户名称">
|
|
64
64
|
</div>
|
|
65
65
|
<div class="col-sm-2 form-group">
|
|
66
66
|
<label class="font_normal_body">客户地址</label>
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
<div class="col-sm-2">
|
|
39
39
|
<label class="font_normal_body">客户名称</label>
|
|
40
40
|
<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'
|
|
41
|
-
condition="ui.f_user_name
|
|
41
|
+
condition="ui.f_user_name like '%{}%'" v-next-el='userid' v-el:username>
|
|
42
42
|
</div>
|
|
43
43
|
|
|
44
44
|
<div class="span" style="float:right;margin-top:10px">
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<div class="col-sm-2 form-group">
|
|
16
16
|
<label class="font_normal_body">客户名称</label>
|
|
17
17
|
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
18
|
-
condition="f_user_name
|
|
18
|
+
condition="f_user_name like '%{}%'" placeholder="客户名称">
|
|
19
19
|
</div>
|
|
20
20
|
<div class="col-sm-2 form-group">
|
|
21
21
|
<label class="font_normal_body" title="旧客户编号">档案编号</label>
|
package/src/main.js
CHANGED
|
@@ -7,6 +7,7 @@ import { system } from 'system-clients'
|
|
|
7
7
|
import { ldap } from 'ldap-clients'
|
|
8
8
|
import saleManage from './saleManage'
|
|
9
9
|
import ShanXianSaleManage from './filiale/shanxian/sale'
|
|
10
|
+
import ShanXianWebmeterManage from './filiale/shanxian/webmeterManage'
|
|
10
11
|
import webmeterManage from './webmeterManage'
|
|
11
12
|
import reportManage from './reportManage'
|
|
12
13
|
import newmanage from './newmanage'
|
|
@@ -48,6 +49,7 @@ system(false)
|
|
|
48
49
|
saleManage()
|
|
49
50
|
ShanXianSaleManage()
|
|
50
51
|
webmeterManage()
|
|
52
|
+
ShanXianWebmeterManage()
|
|
51
53
|
ManageHome()
|
|
52
54
|
newmanage()
|
|
53
55
|
reportManage()
|
package/src/webmeterManage.js
CHANGED
|
@@ -89,6 +89,7 @@ export default function () {
|
|
|
89
89
|
Vue.component('planned-security-inspection-analysis', (resolve) => { require(['./components/webmeter/DrillData/LargeScreenAnalysisEcharts'], resolve) })
|
|
90
90
|
// 上报查询
|
|
91
91
|
Vue.component('report-list', (resolve) => { require(['./components/webmeter/report/ReportList'], resolve) })
|
|
92
|
+
Vue.component('ckh-report-list', (resolve) => { require(['./components/webmeter/report/ckhReportList'], resolve) })
|
|
92
93
|
// =========================================物联网表==========================================================
|
|
93
94
|
// 表具查看
|
|
94
95
|
// Vue.component('web-meter-Manage', (resolve) => { require(['./components/webmeter/meterinfo/NewMeterListMain'], resolve) })
|