sale-client 3.6.109 → 3.6.110
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/FilesManage/UserDeviceInfoTest.vue +15 -11
- package/src/filiale/liaoyuan/NewPriceAdjustment.vue +49 -45
- package/src/filiale/liaoyuan/NewPriceAdjustmentWebmeter.vue +26 -6
- package/src/filiale/lixianV3/iotHand.vue +709 -0
- package/src/filiale/lixianV3/sale.js +2 -2
package/package.json
CHANGED
|
@@ -336,17 +336,21 @@ export default {
|
|
|
336
336
|
}
|
|
337
337
|
},
|
|
338
338
|
async initParams () {
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
339
|
+
try {
|
|
340
|
+
let http = new HttpResetClass()
|
|
341
|
+
let data = {
|
|
342
|
+
items: 'id,f_brand',
|
|
343
|
+
tablename: 't_iot_device_brand',
|
|
344
|
+
condition: `1=1`,
|
|
345
|
+
orderitem: 'id'
|
|
346
|
+
}
|
|
347
|
+
let res = await http.load('post', 'rs/sql/saleSingleTable', {data: data}, {resolveMsg: null, rejectMsg: '获取设备品牌失败!'})
|
|
348
|
+
this.brands = []
|
|
349
|
+
for (let row of res.data) {
|
|
350
|
+
this.brands.push({label: row.f_brand, value: `${row.id}`})
|
|
351
|
+
}
|
|
352
|
+
} catch (e) {
|
|
353
|
+
console.log(e)
|
|
350
354
|
}
|
|
351
355
|
},
|
|
352
356
|
showTableBtn () {
|
|
@@ -92,17 +92,17 @@
|
|
|
92
92
|
condition="f_change_price1 {}"
|
|
93
93
|
close-on-select></v-select>
|
|
94
94
|
</div>
|
|
95
|
-
<div class="form-group col-sm-2"
|
|
96
|
-
<label class="font_normal_body">气表类型</label
|
|
97
|
-
<v-select id="f_source"
|
|
98
|
-
v-model="model.f_source"
|
|
99
|
-
placeholder='气表类型'
|
|
100
|
-
style="width: 60%"
|
|
101
|
-
:value.sync="model.f_source"
|
|
102
|
-
:options='$parent.$parent.source'
|
|
103
|
-
condition="f_source='{}'"
|
|
104
|
-
close-on-select></v-select
|
|
105
|
-
</div
|
|
95
|
+
<!-- <div class="form-group col-sm-2">-->
|
|
96
|
+
<!-- <label class="font_normal_body">气表类型</label>-->
|
|
97
|
+
<!-- <v-select id="f_source"-->
|
|
98
|
+
<!-- v-model="model.f_source"-->
|
|
99
|
+
<!-- placeholder='气表类型'-->
|
|
100
|
+
<!-- style="width: 60%"-->
|
|
101
|
+
<!-- :value.sync="model.f_source"-->
|
|
102
|
+
<!-- :options='$parent.$parent.source'-->
|
|
103
|
+
<!-- condition="f_source='{}'"-->
|
|
104
|
+
<!-- close-on-select></v-select>-->
|
|
105
|
+
<!-- </div>-->
|
|
106
106
|
<div class="form-group col-sm-2">
|
|
107
107
|
<label class="font_normal_body">用户类型</label>
|
|
108
108
|
<v-select id="f_user_tye"
|
|
@@ -140,36 +140,36 @@
|
|
|
140
140
|
close-on-select></v-select>
|
|
141
141
|
</div>
|
|
142
142
|
|
|
143
|
-
<div class="col-sm-2 form-group"
|
|
144
|
-
<label class="font_normal_body">抄 表 员</label
|
|
145
|
-
<v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'
|
|
146
|
-
style="width:60%"
|
|
143
|
+
<!-- <div class="col-sm-2 form-group">-->
|
|
144
|
+
<!-- <label class="font_normal_body">抄 表 员</label>-->
|
|
145
|
+
<!-- <v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'-->
|
|
146
|
+
<!-- style="width:60%"-->
|
|
147
147
|
|
|
148
|
-
:options='$parent.$parent.inputtoreser' placeholder='抄表员'
|
|
149
|
-
@change="$parent.$parent.inputtorchange"
|
|
150
|
-
close-on-select
|
|
151
|
-
v-el:cc></v-select
|
|
152
|
-
</div
|
|
153
|
-
|
|
154
|
-
<div class="col-sm-2 form-group"
|
|
155
|
-
<label class="font_normal_body">表册片区</label
|
|
156
|
-
<v-select :value.sync="model.f_book_slice_area" v-model="model.f_book_slice_area"
|
|
157
|
-
:options='$parent.$parent.bookSliceArea' placeholder='表册片区'
|
|
158
|
-
multiple
|
|
159
|
-
style="width:60%"
|
|
160
|
-
@change="$parent.$parent.sliceChange"
|
|
161
|
-
close-on-select
|
|
162
|
-
condition="f_book_slice_area in {}"></v-select
|
|
163
|
-
</div
|
|
164
|
-
<div class="col-sm-2 form-group"
|
|
165
|
-
<label class="font_normal_body">抄 表 册</label
|
|
166
|
-
<v-select :value.sync="model.f_meter_book" v-model="model.f_meter_book"
|
|
167
|
-
:options='$parent.$parent.meterbooks' placeholder='抄表册'
|
|
168
|
-
multiple
|
|
169
|
-
style="width:60%"
|
|
170
|
-
close-on-select
|
|
171
|
-
condition="f_meter_book_num in {}"></v-select
|
|
172
|
-
</div
|
|
148
|
+
<!-- :options='$parent.$parent.inputtoreser' placeholder='抄表员'-->
|
|
149
|
+
<!-- @change="$parent.$parent.inputtorchange"-->
|
|
150
|
+
<!-- close-on-select-->
|
|
151
|
+
<!-- v-el:cc></v-select>-->
|
|
152
|
+
<!-- </div>-->
|
|
153
|
+
<!-- <!–表册片区–>-->
|
|
154
|
+
<!-- <div class="col-sm-2 form-group">-->
|
|
155
|
+
<!-- <label class="font_normal_body">表册片区</label>-->
|
|
156
|
+
<!-- <v-select :value.sync="model.f_book_slice_area" v-model="model.f_book_slice_area"-->
|
|
157
|
+
<!-- :options='$parent.$parent.bookSliceArea' placeholder='表册片区'-->
|
|
158
|
+
<!-- multiple-->
|
|
159
|
+
<!-- style="width:60%"-->
|
|
160
|
+
<!-- @change="$parent.$parent.sliceChange"-->
|
|
161
|
+
<!-- close-on-select-->
|
|
162
|
+
<!-- condition="f_book_slice_area in {}"></v-select>-->
|
|
163
|
+
<!-- </div>-->
|
|
164
|
+
<!-- <div class="col-sm-2 form-group">-->
|
|
165
|
+
<!-- <label class="font_normal_body">抄 表 册</label>-->
|
|
166
|
+
<!-- <v-select :value.sync="model.f_meter_book" v-model="model.f_meter_book"-->
|
|
167
|
+
<!-- :options='$parent.$parent.meterbooks' placeholder='抄表册'-->
|
|
168
|
+
<!-- multiple-->
|
|
169
|
+
<!-- style="width:60%"-->
|
|
170
|
+
<!-- close-on-select-->
|
|
171
|
+
<!-- condition="f_meter_book_num in {}"></v-select>-->
|
|
172
|
+
<!-- </div>-->
|
|
173
173
|
</div>
|
|
174
174
|
</div>
|
|
175
175
|
</criteria>
|
|
@@ -374,7 +374,13 @@
|
|
|
374
374
|
self.$refs.paged.$refs.criteria.model.startDate = self.$login.toStandardDateString()
|
|
375
375
|
self.$refs.paged.$refs.criteria.model.endDate = self.$login.toStandardDateString()
|
|
376
376
|
self.$refs.paged.$refs.criteria.model.f_change_date = ''
|
|
377
|
-
|
|
377
|
+
getPrice(self)
|
|
378
|
+
self.$showAlert('请输入[气价类型]后进行查询!', 'warning', 2000)
|
|
379
|
+
self.pricechange = false
|
|
380
|
+
|
|
381
|
+
}
|
|
382
|
+
let getPrice = async function(self) {
|
|
383
|
+
self.$resetpost('rs/sql/getpriceid', {data: {f_filialeids: self.f_filialeid}}, {
|
|
378
384
|
resolveMsg: null,
|
|
379
385
|
rejectMsg: null
|
|
380
386
|
}).then((res) => {
|
|
@@ -391,9 +397,7 @@
|
|
|
391
397
|
}
|
|
392
398
|
console.log(rs)
|
|
393
399
|
self.pricers = [ ...rs]
|
|
394
|
-
self
|
|
395
|
-
self.pricechange = false
|
|
396
|
-
//self.$refs.paged.$refs.criteria.search()
|
|
400
|
+
self.priceTypeChange()
|
|
397
401
|
})
|
|
398
402
|
}
|
|
399
403
|
let asyncReadyGen = async function (self) {
|
|
@@ -855,7 +859,7 @@
|
|
|
855
859
|
this.$refs.paged.$refs.criteria.model.f_inputtor = []
|
|
856
860
|
this.meterbooks = [{label: '全部', value: ''}]
|
|
857
861
|
if (this.f_filialeid) {
|
|
858
|
-
this
|
|
862
|
+
getPrice(this)
|
|
859
863
|
}
|
|
860
864
|
}
|
|
861
865
|
}
|
|
@@ -143,13 +143,13 @@
|
|
|
143
143
|
<nobr>三阶气量</nobr>
|
|
144
144
|
</th>
|
|
145
145
|
<th>
|
|
146
|
-
<nobr
|
|
146
|
+
<nobr>一阶单价</nobr>
|
|
147
147
|
</th>
|
|
148
148
|
<th>
|
|
149
|
-
<nobr
|
|
149
|
+
<nobr>二阶单价</nobr>
|
|
150
150
|
</th>
|
|
151
151
|
<th>
|
|
152
|
-
<nobr
|
|
152
|
+
<nobr>三阶单价</nobr>
|
|
153
153
|
</th>
|
|
154
154
|
<th>
|
|
155
155
|
<nobr>一阶补差单价</nobr>
|
|
@@ -303,8 +303,18 @@
|
|
|
303
303
|
let readySomething = async function (self) {
|
|
304
304
|
self.$refs.paged.$refs.criteria.model.startDate = self.$login.toStandardDateString()
|
|
305
305
|
self.$refs.paged.$refs.criteria.model.endDate = self.$login.toStandardDateString()
|
|
306
|
-
self.$
|
|
307
|
-
|
|
306
|
+
self.$refs.paged.$refs.criteria.model.f_change_date = ''
|
|
307
|
+
getPrice(self)
|
|
308
|
+
self.$showAlert('请输入[气价类型]后进行查询!', 'warning', 2000)
|
|
309
|
+
self.pricechange = false
|
|
310
|
+
|
|
311
|
+
}
|
|
312
|
+
let getPrice = async function(self) {
|
|
313
|
+
self.$resetpost('rs/sql/getpriceid', {data: {f_filialeids: self.f_filialeid}}, {
|
|
314
|
+
resolveMsg: null,
|
|
315
|
+
rejectMsg: null
|
|
316
|
+
}).then((res) => {
|
|
317
|
+
console.log('气价信息-------->',res.data)
|
|
308
318
|
let rs = []
|
|
309
319
|
for (let i = 0; i < res.data.length; i++) {
|
|
310
320
|
let temp = {
|
|
@@ -317,7 +327,7 @@
|
|
|
317
327
|
}
|
|
318
328
|
console.log(rs)
|
|
319
329
|
self.pricers = [ ...rs]
|
|
320
|
-
self
|
|
330
|
+
self.priceTypeChange()
|
|
321
331
|
})
|
|
322
332
|
}
|
|
323
333
|
|
|
@@ -572,6 +582,16 @@
|
|
|
572
582
|
computed: {
|
|
573
583
|
},
|
|
574
584
|
watch: {
|
|
585
|
+
async 'f_filialeid' (val) {
|
|
586
|
+
// 更新抄表册
|
|
587
|
+
this.$refs.paged.$refs.criteria.model.f_meter_book = []
|
|
588
|
+
this.$refs.paged.$refs.criteria.model.f_book_slice_area = []
|
|
589
|
+
this.$refs.paged.$refs.criteria.model.f_inputtor = []
|
|
590
|
+
this.meterbooks = [{label: '全部', value: ''}]
|
|
591
|
+
if (this.f_filialeid) {
|
|
592
|
+
getPrice(this)
|
|
593
|
+
}
|
|
594
|
+
}
|
|
575
595
|
}
|
|
576
596
|
}
|
|
577
597
|
</script>
|
|
@@ -0,0 +1,709 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row" id="machineHandManager">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<criteria-paged :model="model" v-ref:paged @sort="sort">
|
|
5
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch">
|
|
6
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
7
|
+
|
|
8
|
+
<res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes"
|
|
9
|
+
v-ref:sel></res-select-group>
|
|
10
|
+
<div class="col-sm-2 form-group">
|
|
11
|
+
<label class="font_normal_body">客户类型</label>
|
|
12
|
+
<v-select :value.sync="model.f_user_type" v-model="model.f_user_type"
|
|
13
|
+
:options='$parent.$parent.usertypes' placeholder='客户类型'
|
|
14
|
+
style="width:60%"
|
|
15
|
+
close-on-select
|
|
16
|
+
condition="f_user_type = '{}'"></v-select>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2 form-group">
|
|
19
|
+
<label class="font_normal_body">小    区</label>
|
|
20
|
+
<v-select :value.sync="model.f_residential_area"
|
|
21
|
+
class="select_list select"
|
|
22
|
+
enter-push
|
|
23
|
+
v-model="model.f_residential_area"
|
|
24
|
+
style="width: 60%"
|
|
25
|
+
multiple="true"
|
|
26
|
+
:options='$parent.$parent.residentialArea' placeholder='选择小区'
|
|
27
|
+
close-on-select v-el:cc>
|
|
28
|
+
</v-select>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="col-sm-2 form-group">
|
|
31
|
+
<label class="font_normal_body">抄 表 员</label>
|
|
32
|
+
<v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'
|
|
33
|
+
style="width:60%"
|
|
34
|
+
multiple="true"
|
|
35
|
+
condition="f_inputtor in {}"
|
|
36
|
+
:options='$parent.$parent.inputtores' placeholder='抄表员'
|
|
37
|
+
close-on-select
|
|
38
|
+
v-el:cc></v-select>
|
|
39
|
+
</div>
|
|
40
|
+
<div class="row">
|
|
41
|
+
<div class="col-sm-2 form-group">
|
|
42
|
+
<label class="font_normal_body">表  号</label>
|
|
43
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
|
|
44
|
+
condition="f_meternumber like '%{}%'" placeholder='表号'>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-2 form-group">
|
|
47
|
+
<label class="font_normal_body">客户姓名</label>
|
|
48
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
49
|
+
placeholder='客户姓名'
|
|
50
|
+
condition="f_user_name = '{}'">
|
|
51
|
+
</div>
|
|
52
|
+
<div class="col-sm-2 form-group">
|
|
53
|
+
<label class="font_normal_body">客户编号</label>
|
|
54
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
|
|
55
|
+
condition="f_userinfo_code='{}'" placeholder='客户编号'>
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<!-- <div class="span" style="float:right;">-->
|
|
59
|
+
<!-- <button v-if="$parent.$parent.jurisdiction.includes('单户抄表')"-->
|
|
60
|
+
<!-- class="button_search button_spacing" style="width:90px" @click="$parent.$parent.danhuShow()">-->
|
|
61
|
+
<!-- 单户抄表-->
|
|
62
|
+
<!-- </button>-->
|
|
63
|
+
|
|
64
|
+
<button class="button_search button_spacing" @click="$parent.$parent.search()">查询</button>
|
|
65
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
66
|
+
<div
|
|
67
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
68
|
+
@click="$parent.$parent.hidden()" class="button_spacing" style="float: right"></div>
|
|
69
|
+
</div>
|
|
70
|
+
|
|
71
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
<div class="col-sm-2 form-group">
|
|
76
|
+
<label class="font_normal_body">楼  栋</label>
|
|
77
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_building"
|
|
78
|
+
condition="f_building = '{}'" placeholder='楼栋'>
|
|
79
|
+
</div>
|
|
80
|
+
<div class="col-sm-2 form-group">
|
|
81
|
+
<label class="font_normal_body">单  元</label>
|
|
82
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_unit"
|
|
83
|
+
condition="f_unit = '{}'" placeholder='单元'>
|
|
84
|
+
</div>
|
|
85
|
+
<div class="col-sm-2 form-group">
|
|
86
|
+
<label class="font_normal_body">楼  层</label>
|
|
87
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_floor"
|
|
88
|
+
condition="f_floor = '{}'" placeholder='楼层'>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="col-sm-2 form-group">
|
|
91
|
+
<label class="font_normal_body">门 牌 号</label>
|
|
92
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_room"
|
|
93
|
+
condition="f_room like '%{}%'" placeholder='门牌号'>
|
|
94
|
+
</div>
|
|
95
|
+
<div class="col-sm-2 form-group">
|
|
96
|
+
<label class="font_normal_body">客户地址</label>
|
|
97
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_address"
|
|
98
|
+
condition="f_address like '%{}%'" placeholder='客户地址'>
|
|
99
|
+
</div>
|
|
100
|
+
|
|
101
|
+
</div>
|
|
102
|
+
</div>
|
|
103
|
+
</criteria>
|
|
104
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid id="hand_manager_grid">
|
|
105
|
+
<template partial='head'>
|
|
106
|
+
<tr>
|
|
107
|
+
<!--<th><input type='checkbox' v-model="$parent.$parent.$parent.all" @change="$parent.$parent.$parent.chooseAll"></th>-->
|
|
108
|
+
<th>
|
|
109
|
+
<nobr>序号</nobr>
|
|
110
|
+
</th>
|
|
111
|
+
<th>
|
|
112
|
+
<nobr>
|
|
113
|
+
<data-order field="f_userinfo_code" name="客户编号"
|
|
114
|
+
:order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>
|
|
115
|
+
</nobr>
|
|
116
|
+
</th>
|
|
117
|
+
<th>
|
|
118
|
+
<nobr>
|
|
119
|
+
<data-order field="f_address" name="基本信息"
|
|
120
|
+
:order.sync="$parent.$parent.$parent.orderFields.f_address"></data-order>
|
|
121
|
+
</nobr>
|
|
122
|
+
</th>
|
|
123
|
+
<th>
|
|
124
|
+
<nobr>身份证号</nobr>
|
|
125
|
+
</th>
|
|
126
|
+
|
|
127
|
+
<th>
|
|
128
|
+
<nobr>卡号</nobr>
|
|
129
|
+
</th>
|
|
130
|
+
<th>
|
|
131
|
+
<nobr>表号</nobr>
|
|
132
|
+
</th>
|
|
133
|
+
<th>
|
|
134
|
+
<nobr>表具状态</nobr>
|
|
135
|
+
</th>
|
|
136
|
+
<th>
|
|
137
|
+
<nobr>上期底数</nobr>
|
|
138
|
+
</th>
|
|
139
|
+
<th>
|
|
140
|
+
<nobr>本期底数</nobr>
|
|
141
|
+
</th>
|
|
142
|
+
<th>
|
|
143
|
+
<nobr>抄表员</nobr>
|
|
144
|
+
</th>
|
|
145
|
+
</tr>
|
|
146
|
+
</template>
|
|
147
|
+
<template partial='body'>
|
|
148
|
+
<td style="text-align: center;">{{ $index + 1 }}</td>
|
|
149
|
+
<td>{{ row.f_userinfo_code }}</td>
|
|
150
|
+
<td>{{ row.f_user_name }} {{ row.f_address }}</td>
|
|
151
|
+
<td>{{ row.f_idnumber }}</td>
|
|
152
|
+
<td>{{ row.f_card_id }}</td>
|
|
153
|
+
<td>{{ row.f_meternumber }}</td>
|
|
154
|
+
<td>{{ row.f_table_state }}</td>
|
|
155
|
+
<td>{{ row.f_meter_base }}</td>
|
|
156
|
+
<td id="hand-creat" >
|
|
157
|
+
<div class="form-group" style="margin-bottom:0px;display: contents;" :class="{
|
|
158
|
+
'has-success has-feedback': !row.error,
|
|
159
|
+
'has-error has-feedback': row.error}"
|
|
160
|
+
>
|
|
161
|
+
<input title="只能录入整数" type="text" class="input_search" v-model="row.f_tablebase"
|
|
162
|
+
@blur="$parent.$parent.$parent.beforenter($index, row)"
|
|
163
|
+
v-next-el="{id: $index+2}" :id="$index+1" style="width: 100px;padding: 6px;"
|
|
164
|
+
@focus="$parent.$parent.$parent.clearError(row)"
|
|
165
|
+
:disabled="row.state === '开始'">
|
|
166
|
+
</div>
|
|
167
|
+
<td>{{ row.f_inputtor }}</td>
|
|
168
|
+
</template>
|
|
169
|
+
</data-grid>
|
|
170
|
+
</criteria-paged>
|
|
171
|
+
</div>
|
|
172
|
+
</div>
|
|
173
|
+
</template>
|
|
174
|
+
<script>
|
|
175
|
+
import MixPriceInfo from '../../components/revenue/base/leftview/MixPriceInfo'
|
|
176
|
+
import {PagedList, HttpResetClass} from 'vue-client'
|
|
177
|
+
import Vue from 'vue'
|
|
178
|
+
import co from 'co'
|
|
179
|
+
export default {
|
|
180
|
+
title: '物联网表抄表',
|
|
181
|
+
components: {MixPriceInfo},
|
|
182
|
+
data() {
|
|
183
|
+
return {
|
|
184
|
+
priceModel: false,
|
|
185
|
+
initres: {
|
|
186
|
+
org: [this.$login.f.orgid],
|
|
187
|
+
dep: [],
|
|
188
|
+
user: []
|
|
189
|
+
},
|
|
190
|
+
sumsmodel: [],
|
|
191
|
+
orgCondtionStr: '',
|
|
192
|
+
priceSplit: false,
|
|
193
|
+
deletestate: false,
|
|
194
|
+
criteriaShow: false,
|
|
195
|
+
model: new PagedList('rs/sql/getIotHand', 50, {orderitem: this.orderDefault ? '"' + this.orderDefault + ' "' : `'f_hand_date desc'`}),
|
|
196
|
+
meter_state: false, // 是否显示计划下发按钮
|
|
197
|
+
downModel: {
|
|
198
|
+
downDate: Vue.$login.toStandardTimeString(),
|
|
199
|
+
downWay: 'downWithUserfiles',
|
|
200
|
+
downInputtor: []
|
|
201
|
+
},
|
|
202
|
+
inputtorModel: {
|
|
203
|
+
inputtor: [],
|
|
204
|
+
reason: ''
|
|
205
|
+
},
|
|
206
|
+
auditState: [{label: '全部', value: ''}, {label: '未抄表', value: '未抄表'}, {
|
|
207
|
+
label: '待审核',
|
|
208
|
+
value: '待审核'
|
|
209
|
+
}, {label: '已抄表', value: '已抄表'}],
|
|
210
|
+
// 小区
|
|
211
|
+
residentialArea: [],
|
|
212
|
+
// downDate: this.$login.toStandardYearMonth().replace("-", ""),
|
|
213
|
+
msg: '',
|
|
214
|
+
condition: '',
|
|
215
|
+
headers: {'username': Vue.$login.f.name, 'blodid': Vue.$login.guid()},
|
|
216
|
+
orderDefault: 'f_hand_date',
|
|
217
|
+
orderFields: {
|
|
218
|
+
f_userinfo_id: 'no'
|
|
219
|
+
},
|
|
220
|
+
getfield: {},
|
|
221
|
+
outlet: '',
|
|
222
|
+
filiale: '',
|
|
223
|
+
condition2: '',
|
|
224
|
+
area: [],
|
|
225
|
+
inputtouPerson: [],
|
|
226
|
+
usertypes: this.$appdata.getParam('客户类型') ? [{
|
|
227
|
+
label: '全部',
|
|
228
|
+
value: ''
|
|
229
|
+
}, ...this.$appdata.getParam('客户类型')] : [],
|
|
230
|
+
f_filialeid: this.$login.f.orgid,
|
|
231
|
+
upshow: false,
|
|
232
|
+
inputid: 0,
|
|
233
|
+
examineshow: false,
|
|
234
|
+
examinerow: null,
|
|
235
|
+
showfiles: false,
|
|
236
|
+
uploadText: '抄表',
|
|
237
|
+
examinetype: false,
|
|
238
|
+
err: '',
|
|
239
|
+
// 请求对象(批量导入,查询进度使用)
|
|
240
|
+
HttpReset: new HttpResetClass(),
|
|
241
|
+
// 气价使用详情展示
|
|
242
|
+
detailsShow: false,
|
|
243
|
+
row: null,
|
|
244
|
+
// 应抄底数
|
|
245
|
+
should_base: 0
|
|
246
|
+
}
|
|
247
|
+
},
|
|
248
|
+
ready() {
|
|
249
|
+
this.getaddress()
|
|
250
|
+
},
|
|
251
|
+
methods: {
|
|
252
|
+
async getaddress() {
|
|
253
|
+
console.log('开始获取小区')
|
|
254
|
+
let HttpReset = new HttpResetClass()
|
|
255
|
+
var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
|
|
256
|
+
data: {
|
|
257
|
+
condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
|
|
258
|
+
}
|
|
259
|
+
}, {resolveMsg: null, rejectMsg: '获取小区失败!'})
|
|
260
|
+
console.log('小区', data)
|
|
261
|
+
let house = []
|
|
262
|
+
house.push()
|
|
263
|
+
for (let row of data.data) {
|
|
264
|
+
console.log('开始保存小区')
|
|
265
|
+
house.push({label: row.f_residential_area, value: row.f_residential_area})
|
|
266
|
+
}
|
|
267
|
+
this.residentialArea = house
|
|
268
|
+
},
|
|
269
|
+
getRes(obj) {
|
|
270
|
+
this.orgCondtionStr = obj
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
hidden() {
|
|
274
|
+
console.log(this.criteriaShow )
|
|
275
|
+
this.criteriaShow = !this.criteriaShow
|
|
276
|
+
console.log(this.criteriaShow )
|
|
277
|
+
},
|
|
278
|
+
clear() {
|
|
279
|
+
Object.keys(this.$refs.paged.$refs.criteria.model).forEach((key) => {
|
|
280
|
+
this.$refs.paged.$refs.criteria.model[key] = []
|
|
281
|
+
})
|
|
282
|
+
},
|
|
283
|
+
|
|
284
|
+
search() {
|
|
285
|
+
// 查询前清空选择项
|
|
286
|
+
this.$refs.paged.$refs.criteria.search()
|
|
287
|
+
},
|
|
288
|
+
|
|
289
|
+
selfSearch(args) {
|
|
290
|
+
if (!this.orgCondtionStr) {
|
|
291
|
+
args.condition = `${args.condition}` + ' and f_orgid = ' + this.$login.f.orgid
|
|
292
|
+
} else {
|
|
293
|
+
args.condition = `${args.condition}` + this.orgCondtionStr
|
|
294
|
+
}
|
|
295
|
+
// 抄表员查询条件
|
|
296
|
+
// this.inputtouPerson = this.$refs.paged.$refs.criteria.model.f_inputtor
|
|
297
|
+
// if (this.inputtouPerson.length !== 0) {
|
|
298
|
+
// let str = JSON.stringify(this.inputtouPerson)
|
|
299
|
+
// str = str.replace(/"/g, `'`)
|
|
300
|
+
// str = str.replace(/\[/g, ``)
|
|
301
|
+
// str = str.replace(/\]/g, ``)
|
|
302
|
+
// console.log('=====抄表员model22222222222绑定====', str)
|
|
303
|
+
// // 查询多个抄表员时条件
|
|
304
|
+
// args.condition += ` and f_inputtor in ( ${str} )`
|
|
305
|
+
// }
|
|
306
|
+
// 小区查询条件
|
|
307
|
+
this.area = this.$refs.paged.$refs.criteria.model.f_residential_area
|
|
308
|
+
console.log('=====小区model绑定====', this.area)
|
|
309
|
+
if (this.area.length !== 0) {
|
|
310
|
+
let str = JSON.stringify(this.area)
|
|
311
|
+
str = str.replace(/"/g, `'`)
|
|
312
|
+
str = str.replace(/\[/g, ``)
|
|
313
|
+
str = str.replace(/\]/g, ``)
|
|
314
|
+
console.log('=====小区model22222222222绑定====', str)
|
|
315
|
+
// 查询多个小区时条件
|
|
316
|
+
args.condition += ` and f_residential_area in ( ${str} )`
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
this.model.search(args.condition, this.model)
|
|
320
|
+
},
|
|
321
|
+
reflash() {
|
|
322
|
+
this.$refs.paged.$refs.criteria.model.f_orgid = `${Vue.$login.f.orgid}`
|
|
323
|
+
this.$refs.paged.$refs.criteria.model.startDate = this.$login.toStartAndEndDateString()[0]
|
|
324
|
+
this.$refs.paged.$refs.criteria.model.endDate = this.$login.toStartAndEndDateString()[1]
|
|
325
|
+
this.search()
|
|
326
|
+
},
|
|
327
|
+
beforenter(index, row) {
|
|
328
|
+
this.inputid = index + 1
|
|
329
|
+
// 限制本次抄表不能低于上次
|
|
330
|
+
if (row.f_tablebase) {
|
|
331
|
+
if (row.f_tablebase < 0) {
|
|
332
|
+
row.state = '失败'
|
|
333
|
+
Vue.set(row, 'error', '底数不能小于0')
|
|
334
|
+
this.speckText('底数不能小于0,请注意!')
|
|
335
|
+
} else if (row.f_tablebase - parseInt(row.f_tablebase) !== 0) {
|
|
336
|
+
row.state = '失败'
|
|
337
|
+
Vue.set(row, 'error', '底数只能输入整数')
|
|
338
|
+
this.speckText('底数只能输入整数,请注意!')
|
|
339
|
+
} else if (row.f_tablebase < row.f_last_tablebase && !row.f_capacity) {
|
|
340
|
+
row.state = '失败'
|
|
341
|
+
Vue.set(row, 'error', '本期表底数不能低于上期表底数')
|
|
342
|
+
this.speckText('本期表底数不能低于上期表底数,请注意!')
|
|
343
|
+
} else {
|
|
344
|
+
if (row.f_tablebase < row.f_last_tablebase) {
|
|
345
|
+
this.$showMessage('本次抄表已超越最大量程, 请熟知!')
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
},
|
|
351
|
+
|
|
352
|
+
clearError(row) {
|
|
353
|
+
if (row.f_tablebase === 0) {
|
|
354
|
+
row.f_tablebase = ''
|
|
355
|
+
}
|
|
356
|
+
Vue.set(row, 'error', null)
|
|
357
|
+
},
|
|
358
|
+
async speckText(str) {
|
|
359
|
+
var url = 'http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=6&text=' + encodeURI(str)
|
|
360
|
+
await new Audio(url).play()
|
|
361
|
+
this.err = str
|
|
362
|
+
this.showerr = true
|
|
363
|
+
this.paycodefocus()
|
|
364
|
+
},
|
|
365
|
+
closeerr() {
|
|
366
|
+
this.showerr = false
|
|
367
|
+
},
|
|
368
|
+
fileUpload() {
|
|
369
|
+
this.uploadshow = true
|
|
370
|
+
},
|
|
371
|
+
// 删除这条计划
|
|
372
|
+
delectHand(row) {
|
|
373
|
+
this.$showMessage('删除后不可恢复,确认删除吗?', ['confirm', 'cancel']).then((res) => {
|
|
374
|
+
if (res === 'confirm') {
|
|
375
|
+
this.$resetpost('rs/logic/deletePlan', {data: row}).then(() => {
|
|
376
|
+
this.$dispatch('refresh', '删除计划', row)
|
|
377
|
+
this.search()
|
|
378
|
+
})
|
|
379
|
+
}
|
|
380
|
+
})
|
|
381
|
+
},
|
|
382
|
+
cancelHand4(row) {
|
|
383
|
+
this.examinerow = row
|
|
384
|
+
this.examineshow = true
|
|
385
|
+
this.examinetype = true
|
|
386
|
+
},
|
|
387
|
+
cancelHand2(row) {
|
|
388
|
+
if (this.config.examine) {
|
|
389
|
+
let handdate = new Date(row.f_hand_date)
|
|
390
|
+
console.log('获取月份', handdate.getMonth())
|
|
391
|
+
let ima = new Date()
|
|
392
|
+
console.log('获取月份', ima.getMonth())
|
|
393
|
+
if (handdate.getMonth() == ima.getMonth()) {
|
|
394
|
+
this.cancelHand3(row)
|
|
395
|
+
} else {
|
|
396
|
+
if (!this.$login.r.find(value => value == '抄表隔月冲正')) {
|
|
397
|
+
this.$showMessage('当前登录用户没有隔月冲正权限, 请联系管理员!')
|
|
398
|
+
} else {
|
|
399
|
+
this.cancelHand3(row)
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
} else {
|
|
403
|
+
this.cancelHand3(row)
|
|
404
|
+
}
|
|
405
|
+
},
|
|
406
|
+
async cancelHand5() {
|
|
407
|
+
let sqldata = `update t_handplan set f_audit_state ='已审核',f_audit_person='${this.$login.f.name}',
|
|
408
|
+
f_audit_date='${this.$login.toStandardTimeString()}' where id ='${this.examinerow.id}'`
|
|
409
|
+
await this.$resetpost('rs/logic/runSQL', {data: {sql: sqldata}}, {
|
|
410
|
+
resolveMsg: null,
|
|
411
|
+
rejectMsg: '更新收费记录订单号失败'
|
|
412
|
+
})
|
|
413
|
+
|
|
414
|
+
this.cancelHand3(this.examinerow)
|
|
415
|
+
},
|
|
416
|
+
cancelHand3(row) {
|
|
417
|
+
// 抄表加入权限
|
|
418
|
+
if (!this.$login.r.find(value => value == '机表抄表冲正')) {
|
|
419
|
+
this.$showMessage('当前登录用户没有冲正权限, 请联系管理员!')
|
|
420
|
+
return
|
|
421
|
+
}
|
|
422
|
+
// console.log('抄表冲正。、。。、', row)
|
|
423
|
+
let param = {
|
|
424
|
+
f_hand_id: row.id,
|
|
425
|
+
operInfo: {
|
|
426
|
+
f_operator: this.$login.f.name,
|
|
427
|
+
f_operatorid: this.$login.f.id,
|
|
428
|
+
f_orgid: this.$login.f.orgid,
|
|
429
|
+
f_orgname: this.$login.f.orgs,
|
|
430
|
+
f_depid: this.$login.f.depids,
|
|
431
|
+
f_depname: this.$login.f.deps
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
let url = 'rs/logic/sale_commonEnterCancel'
|
|
435
|
+
this.$resetpost(url, {data: param}, {warnMsg: '确定对这条记录进行撤销吗?'}).then(() => {
|
|
436
|
+
this.search()
|
|
437
|
+
this.close()
|
|
438
|
+
})
|
|
439
|
+
},
|
|
440
|
+
down(type, condition, data) {
|
|
441
|
+
co(downGen(type, condition, data, this))
|
|
442
|
+
},
|
|
443
|
+
// 单条下发计划
|
|
444
|
+
downHand(row) {
|
|
445
|
+
console.log('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~' + row.f_userfiles_id)
|
|
446
|
+
this.down('single', `f_userfiles_id = '${row.f_userfiles_id}'`, row)
|
|
447
|
+
},
|
|
448
|
+
// 批量下发计划
|
|
449
|
+
batchDownHand() {
|
|
450
|
+
this.down('batch', this.model.condition, this.model.count)
|
|
451
|
+
},
|
|
452
|
+
// batchDownHand () {
|
|
453
|
+
// this.condition = ''
|
|
454
|
+
// let count = 0
|
|
455
|
+
// for (let plan of this.plans){
|
|
456
|
+
// if(plan.state){
|
|
457
|
+
// this.condition = this.condition + plan.id + ','
|
|
458
|
+
// count = count + 1
|
|
459
|
+
// }
|
|
460
|
+
// }
|
|
461
|
+
// this.down('batch', `f_user_id in (${this.condition.substring(0,this.condition.length-1)})`,count)
|
|
462
|
+
// },
|
|
463
|
+
// allDownHand () {
|
|
464
|
+
// this.down('all', this.model.condition, this.model.count)
|
|
465
|
+
// },
|
|
466
|
+
|
|
467
|
+
validateDate() {
|
|
468
|
+
let currentDown = new Date(this.downModel.downDate)
|
|
469
|
+
console.log(new Date(this.$refs.paged.$refs.criteria.model.startDate))
|
|
470
|
+
console.log(new Date(this.$refs.paged.$refs.criteria.model.endDate))
|
|
471
|
+
return currentDown >= new Date(this.$refs.paged.$refs.criteria.model.startDate + ' 00:00:00') && currentDown <= new Date(this.$refs.paged.$refs.criteria.model.endDate + ' 23:59:59')
|
|
472
|
+
},
|
|
473
|
+
|
|
474
|
+
async examineconfirm() {
|
|
475
|
+
let sqldata = `update t_handplan set f_audit_state ='审核中',f_examinereason='${this.examinerow.f_examinereason}' where id ='${this.examinerow.id}'`
|
|
476
|
+
await this.$resetpost('rs/logic/runSQL', {data: {sql: sqldata}}, {resolveMsg: null, rejectMsg: null})
|
|
477
|
+
this.close()
|
|
478
|
+
this.search()
|
|
479
|
+
},
|
|
480
|
+
// 关闭下发计划得弹出框
|
|
481
|
+
close() {
|
|
482
|
+
this.show = false
|
|
483
|
+
this.inputtor_show = false
|
|
484
|
+
this.downConfirm = false
|
|
485
|
+
this.examineshow = false
|
|
486
|
+
this.examinetype = false
|
|
487
|
+
this.detailsShow = false
|
|
488
|
+
this.priceModel = false
|
|
489
|
+
// 初始化模态框数据
|
|
490
|
+
this.initModal()
|
|
491
|
+
if (this.uploadshow) {
|
|
492
|
+
this.uploadshow = false
|
|
493
|
+
// 讲选的文件清空
|
|
494
|
+
this.$refs.file.$el.querySelector('input').value = ''
|
|
495
|
+
}
|
|
496
|
+
},
|
|
497
|
+
initModal() {
|
|
498
|
+
this.downModel = {
|
|
499
|
+
downDate: Vue.$login.toStandardDateString(),
|
|
500
|
+
downWay: 'downWithUserfiles',
|
|
501
|
+
downInputtor: []
|
|
502
|
+
}
|
|
503
|
+
this.inputtorModel = {
|
|
504
|
+
inputtor: [],
|
|
505
|
+
reason: ''
|
|
506
|
+
}
|
|
507
|
+
},
|
|
508
|
+
// 判断当前登陆人是不是子公司的人员
|
|
509
|
+
isHead() {
|
|
510
|
+
return this.$login.f.parent.parent.name.includes('统一资源管理')
|
|
511
|
+
},
|
|
512
|
+
sort(field, rule) {
|
|
513
|
+
// 将所有排序方式设为不排序,实现相互排斥
|
|
514
|
+
for (let key in this.orderFields) {
|
|
515
|
+
if (key === field) {
|
|
516
|
+
this.orderFields[key] = rule
|
|
517
|
+
} else {
|
|
518
|
+
this.orderFields[key] = 'no'
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
// 如果新规则不排序,还原为默认排序
|
|
522
|
+
if (rule === 'no') {
|
|
523
|
+
this.model.paramSource.orderitem = `'${this.orderDefault}'`
|
|
524
|
+
} else {
|
|
525
|
+
this.model.paramSource.orderitem = `'${field} ${rule}'`
|
|
526
|
+
}
|
|
527
|
+
this.search()
|
|
528
|
+
},
|
|
529
|
+
guid() {
|
|
530
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
531
|
+
let r = Math.random() * 16 | 0,
|
|
532
|
+
v = c == 'x' ? r : (r & 0x3 | 0x8)
|
|
533
|
+
return v.toString(16)
|
|
534
|
+
})
|
|
535
|
+
},
|
|
536
|
+
computeAmount(event) {
|
|
537
|
+
let money = event.target.value
|
|
538
|
+
if (this.row.f_price_type === '固定气价') {
|
|
539
|
+
let price = this.$refs.mix_price.model.f_price
|
|
540
|
+
// 可以购买的总气量
|
|
541
|
+
let purchaseSum = (money / price).toFixed(2)
|
|
542
|
+
// 计算应抄底数
|
|
543
|
+
this.should_base = (this.row.f_last_tablebase - 0) + (purchaseSum - 0)
|
|
544
|
+
// 计算公式
|
|
545
|
+
this.designFormulas = `${purchaseSum}X${price}`
|
|
546
|
+
} else {
|
|
547
|
+
let mydata = this.$refs.statir.mydata
|
|
548
|
+
// 剩余1阶气量
|
|
549
|
+
let surplus1 = (mydata.f_stair1ceiling - (mydata.f_hasuse1 > 0 ? mydata.f_hasuse1 : 0))
|
|
550
|
+
// 把1阶买完的钱
|
|
551
|
+
let price1 = surplus1 * mydata.f_stair1price
|
|
552
|
+
// 剩余2阶气量
|
|
553
|
+
let surplus2 = (mydata.f_stair2ceiling - mydata.f_stair1ceiling - (mydata.f_hasuse2 > 0 ? mydata.f_hasuse2 : 0)).toFixed(2)
|
|
554
|
+
// 把2阶买完的钱
|
|
555
|
+
let price2 = surplus2 * mydata.f_stair2price
|
|
556
|
+
// 兼容一下
|
|
557
|
+
if (this.$refs.statir.jt != 3) {
|
|
558
|
+
this.$showMessage('暂不支持该气价类型的运算,请联系开发人员!')
|
|
559
|
+
}
|
|
560
|
+
// 开始计算
|
|
561
|
+
// 可以购买各阶梯量
|
|
562
|
+
let purchase1 = 0
|
|
563
|
+
let purchase2 = 0
|
|
564
|
+
let purchase3 = 0
|
|
565
|
+
if (money <= price1) {
|
|
566
|
+
purchase1 = (money / mydata.f_stair1price).toFixed(2)
|
|
567
|
+
} else if (money <= (price1 + price2)) {
|
|
568
|
+
purchase1 = surplus1
|
|
569
|
+
purchase2 = ((money - price1) / mydata.f_stair2price).toFixed(2)
|
|
570
|
+
} else {
|
|
571
|
+
purchase1 = surplus1
|
|
572
|
+
purchase2 = surplus2
|
|
573
|
+
purchase3 = ((money - price1 - price2) / mydata.f_stair3price).toFixed(2)
|
|
574
|
+
}
|
|
575
|
+
// 可以购买的总气量
|
|
576
|
+
let purchaseSum = (purchase1 - 0) + (purchase2 - 0) + (purchase3 - 0)
|
|
577
|
+
// 计算应抄底数
|
|
578
|
+
this.should_base = (this.row.f_last_tablebase - 0) + purchaseSum
|
|
579
|
+
// 计算公式
|
|
580
|
+
this.designFormulas = `${purchase1}X${mydata.f_stair1price} + ${purchase2}X${mydata.f_stair2price} + ${purchase3}X${mydata.f_stair3price}`
|
|
581
|
+
}
|
|
582
|
+
this.should_base = this.should_base.toFixed(2) - 0
|
|
583
|
+
}
|
|
584
|
+
},
|
|
585
|
+
watch: {
|
|
586
|
+
'downModel.downWay'(val) {
|
|
587
|
+
if (val === 'downWithSelf') {
|
|
588
|
+
console.log('抄表员。。', this.inputtores2)
|
|
589
|
+
if (this.inputtores2.length > 0) {
|
|
590
|
+
this.downModel.downInputtor = [this.inputtores2[0].value]
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
},
|
|
594
|
+
'detailsShow'(val) {
|
|
595
|
+
if (!val) {
|
|
596
|
+
this.should_base = 0
|
|
597
|
+
this.designFormulas = null
|
|
598
|
+
this.$els.inputmoney.value = 0
|
|
599
|
+
}
|
|
600
|
+
}
|
|
601
|
+
// 'model.rows'(val){
|
|
602
|
+
// console.log('页面切换',val)
|
|
603
|
+
// if(this.isChooseAll(val)){
|
|
604
|
+
// this.all = true
|
|
605
|
+
// }else{
|
|
606
|
+
// this.all = false
|
|
607
|
+
// }
|
|
608
|
+
// },
|
|
609
|
+
},
|
|
610
|
+
computed: {
|
|
611
|
+
danhutitle() {
|
|
612
|
+
return '单户抄表 当前计划年月:' + this.downModel.downDate
|
|
613
|
+
},
|
|
614
|
+
getCondition() {
|
|
615
|
+
// return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
|
|
616
|
+
return {
|
|
617
|
+
startDate: this.$refs.paged.$refs.criteria.model.startDate,
|
|
618
|
+
endDate: this.$refs.paged.$refs.criteria.model.endDate,
|
|
619
|
+
orderitem: this.orderDefault ? this.orderDefault : 'id',
|
|
620
|
+
condition: this.condition2
|
|
621
|
+
}
|
|
622
|
+
},
|
|
623
|
+
|
|
624
|
+
inputtores() {
|
|
625
|
+
// 获取抄表员
|
|
626
|
+
console.log('获取抄表员', this.$login.f)
|
|
627
|
+
let rs = []
|
|
628
|
+
if (this.$login.f.f_gasman.length > 0) {
|
|
629
|
+
for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
|
|
630
|
+
let temp = {
|
|
631
|
+
label: this.$login.f.f_gasman[i].name,
|
|
632
|
+
value: this.$login.f.f_gasman[i].name
|
|
633
|
+
}
|
|
634
|
+
rs.push(temp)
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
this.inputtores2 = rs
|
|
638
|
+
return [...rs]
|
|
639
|
+
},
|
|
640
|
+
whetherpaies() {
|
|
641
|
+
return [
|
|
642
|
+
{label: '全部', value: ''},
|
|
643
|
+
{label: '已缴费', value: '是'},
|
|
644
|
+
{label: '未缴费', value: '否'}
|
|
645
|
+
]
|
|
646
|
+
},
|
|
647
|
+
// 界面细节权限
|
|
648
|
+
jurisdiction() {
|
|
649
|
+
console.log('抄表界面细节', this.$login.r)
|
|
650
|
+
return this.$login.r ? this.$login.r : []
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
</script>
|
|
655
|
+
<style lang="less">
|
|
656
|
+
#handManager {
|
|
657
|
+
display: flex;
|
|
658
|
+
justify-content: space-around;
|
|
659
|
+
align-items: center;
|
|
660
|
+
|
|
661
|
+
.btn {
|
|
662
|
+
margin: 0px;
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
.hand-loading {
|
|
666
|
+
border: 3px solid #ccc;
|
|
667
|
+
border-right-color: #337ab7;
|
|
668
|
+
border-radius: 50%;
|
|
669
|
+
animation: spin 0.6s linear;
|
|
670
|
+
position: absolute;
|
|
671
|
+
animation-iteration-count: infinite;
|
|
672
|
+
top: 0;
|
|
673
|
+
right: 50%;
|
|
674
|
+
z-index: 2;
|
|
675
|
+
display: block;
|
|
676
|
+
width: 28px;
|
|
677
|
+
height: 28px;
|
|
678
|
+
line-height: 28px;
|
|
679
|
+
text-align: center;
|
|
680
|
+
pointer-events: none;
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
@keyframes spin {
|
|
684
|
+
100% {
|
|
685
|
+
transform: rotate(360deg);
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
|
|
689
|
+
.detail-panel {
|
|
690
|
+
text-align: center;
|
|
691
|
+
color: #31708f;
|
|
692
|
+
background-color: #e8f1f9;
|
|
693
|
+
border-color: #F2F6FA;
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
|
|
697
|
+
#hand_manager_grid {
|
|
698
|
+
thead {
|
|
699
|
+
position: relative;
|
|
700
|
+
z-index: 2;
|
|
701
|
+
}
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
#machineHandManager {
|
|
705
|
+
.color-red {
|
|
706
|
+
color: red;
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
</style>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// 分公司特殊组件页面注册
|
|
2
|
-
|
|
2
|
+
import Vue from 'vue'
|
|
3
3
|
export default function () {
|
|
4
4
|
// 换表 挪到公共 加配置了
|
|
5
|
-
// Vue.component('
|
|
5
|
+
// Vue.component('machine-hand', (resolve) => { require(['./iotHand'], resolve) })
|
|
6
6
|
}
|