sale-client 3.6.51 → 3.6.53
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/filiale/ancheng/FilesManage/FileUserFiles.vue +17 -0
- package/src/filiale/ancheng/FilesManage/MeterinfoTest.vue +998 -0
- package/src/filiale/ancheng/sale.js +2 -0
- package/src/filiale/tongchuan/WebMeterList.vue +13 -1
- package/src/plugins/FileManageService.js +2 -0
package/package.json
CHANGED
|
@@ -290,6 +290,16 @@
|
|
|
290
290
|
<input class="input_search" condition="f_meternumber ='{}'" placeholder='表号' style="width:60%"
|
|
291
291
|
type="text" v-model="model.f_meternumber">
|
|
292
292
|
</div>
|
|
293
|
+
<div
|
|
294
|
+
:class="{'col-sm-2':!$parent.$parent.createFile,'col-sm-4':$parent.$parent.createFile}"
|
|
295
|
+
class="form-group" >
|
|
296
|
+
<label class="font_normal_body">表前阀状态</label>
|
|
297
|
+
<v-select :options='$parent.$parent.bqfstates' :search='true'
|
|
298
|
+
:value.sync="model.f_bqf_state"
|
|
299
|
+
close-on-select
|
|
300
|
+
condition="f_bqf_state = '{}'" placeholder='表前阀状态'
|
|
301
|
+
v-model='model.f_bqf_state'></v-select>
|
|
302
|
+
</div>
|
|
293
303
|
</div>
|
|
294
304
|
</div>
|
|
295
305
|
</criteria>
|
|
@@ -341,6 +351,9 @@
|
|
|
341
351
|
<th >
|
|
342
352
|
<nobr>客户等级</nobr>
|
|
343
353
|
</th>
|
|
354
|
+
<th v-if="!$parent.$parent.$parent.createFile">
|
|
355
|
+
<nobr>表前阀状态</nobr>
|
|
356
|
+
</th>
|
|
344
357
|
<!--<th>-->
|
|
345
358
|
<!--<nobr v-if="this.$login.r.includes('通知单打印')||this.$login.r.includes('流程表打印') ">下载</nobr>-->
|
|
346
359
|
<!--</th>-->
|
|
@@ -370,6 +383,7 @@
|
|
|
370
383
|
<td style="text-align: center;" v-if="!$parent.$parent.$parent.createFile">{{row.f_userfiles_address}}</td>
|
|
371
384
|
<td style="text-align: center;" v-if="!$parent.$parent.$parent.createFile">{{row.f_user_state}}</td>
|
|
372
385
|
<td style="text-align: center;" >{{row.f_user_level}}</td>
|
|
386
|
+
<td style="text-align: center;" v-if="!$parent.$parent.$parent.createFile">{{row.f_bqf_state}}</td>
|
|
373
387
|
<td style="text-align: center;">
|
|
374
388
|
<button type="button" name="button" class="button_search-2 button_spacing width-60"
|
|
375
389
|
v-if="row.f_user_state === '正常' || row.f_user_state==='预备'"
|
|
@@ -881,6 +895,9 @@ let loadParamGem = async function (self) {
|
|
|
881
895
|
userstates () {
|
|
882
896
|
return [{label: '全部', value: ''}, ...this.$appdata.getParam('客户状态')]
|
|
883
897
|
},
|
|
898
|
+
bqfstates () {
|
|
899
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('表前阀状态')]
|
|
900
|
+
},
|
|
884
901
|
usegas () {
|
|
885
902
|
return [{label: '全部', value: ''}, {label: '是', value: '是'}, {label: '否', value: '否'}]
|
|
886
903
|
},
|
|
@@ -0,0 +1,998 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto" id="meterInfoTest">
|
|
3
|
+
<validator name='m' @valid="mValid(true)" @invalid="mValid(false)">
|
|
4
|
+
<form class="form-horizontal select-overspread ">
|
|
5
|
+
<div style="margin-top: 2%;">
|
|
6
|
+
<a style="font-size: 16px;font-weight: 500;">表具信息</a> <a style="color: #999999;text-decoration: none"></a>
|
|
7
|
+
</div>
|
|
8
|
+
<div class="row" >
|
|
9
|
+
<div class="col-sm-4 form-group" :class="[$m.brand.required ? 'has-error' : '']">
|
|
10
|
+
<label for="gasbrand" class="font_normal_body">气表品牌</label>
|
|
11
|
+
<input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
|
|
12
|
+
v-validate:brand='{required: true }'>
|
|
13
|
+
<v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
|
|
14
|
+
search @change='brandChange' v-model='row.gasbrand' v-ref:brand></v-select>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
|
|
17
|
+
<label for="gasmodel" class="font_normal_body">气表型号</label>
|
|
18
|
+
<input type="text" v-show="false" v-model="$refs.model.selectedItems"
|
|
19
|
+
v-validate:model='{required: true }'>
|
|
20
|
+
<v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
|
|
21
|
+
close-on-select
|
|
22
|
+
v-model='row.gasmodel' :disabled="row.gasbrand.length === 0" v-ref:model></v-select>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<div class="col-sm-4 form-group" v-if="isiot" :class="[$m.f_meternumber.required ? 'has-error' : '']">
|
|
26
|
+
<label for="f_meternumber" class="font_normal_body"> 表  号</label>
|
|
27
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
|
|
28
|
+
@blur="meternumberValidate()" placeholder='表号' v-validate:f_meternumber='{required: true }'
|
|
29
|
+
v-next-el="{id: 'metertitles'}">
|
|
30
|
+
</div>
|
|
31
|
+
<div class="col-sm-4 form-group" v-else>
|
|
32
|
+
<label for="f_meternumber" class="font_normal_body"> 表  号</label>
|
|
33
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber"
|
|
34
|
+
@blur="meternumberValidate()" placeholder='表号'
|
|
35
|
+
v-next-el="{id: 'metertitles'}">
|
|
36
|
+
</div>
|
|
37
|
+
<div class="col-sm-4 form-group">
|
|
38
|
+
<label for="f_metertitles" class="font_normal_body"> 表 封 号</label>
|
|
39
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_metertitles" placeholder='表封号'
|
|
40
|
+
v-next-el="{id: 'meterbase'}">
|
|
41
|
+
</div>
|
|
42
|
+
<div class="col-sm-4 form-group">
|
|
43
|
+
<label for="f_metertitles" class="font_normal_body">表具状态</label>
|
|
44
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_table_state" placeholder='表具状态' disabled>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-4 form-group">
|
|
47
|
+
<label for="f_meter_base" class="font_normal_body"> 表 读 数</label>
|
|
48
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_meter_base" placeholder='表底数'
|
|
49
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')" :readonly="!row.f_userfiles_id">
|
|
50
|
+
</div>
|
|
51
|
+
<div class="col-sm-4 form-group" title="涉及权限:【档案信息查询修改】">
|
|
52
|
+
<label for="f_meter_base" class="font_normal_body"> 初始底数</label>
|
|
53
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_initial_base" placeholder='表底数'
|
|
54
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
<div class="col-sm-4 form-group" title="涉及权限:【档案信息查询修改】">
|
|
58
|
+
<label for="f_meter_base" class="font_normal_body"> 累购气量</label>
|
|
59
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_total_gas" placeholder='累购气量'
|
|
60
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
61
|
+
</div>
|
|
62
|
+
<div class="col-sm-4 form-group" title="涉及权限:【档案信息查询修改】">
|
|
63
|
+
<label for="f_meter_base" class="font_normal_body">表写卡累购气量</label>
|
|
64
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_write_totalgas" placeholder='表写卡累购气量'
|
|
65
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
66
|
+
</div>
|
|
67
|
+
<div class="col-sm-4 form-group" title="涉及权限:【档案信息查询修改】">
|
|
68
|
+
<label for="f_meter_base" class="font_normal_body"> 累购金额</label>
|
|
69
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_total_fee" placeholder='累购金额'
|
|
70
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
71
|
+
</div>
|
|
72
|
+
<div class="col-sm-4 form-group" title="涉及权限:【档案信息查询修改】">
|
|
73
|
+
<label for="f_meter_base" class="font_normal_body">表写卡累购金额</label>
|
|
74
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_write_totalfee" placeholder='表写卡累购金额'
|
|
75
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
76
|
+
</div>
|
|
77
|
+
<div class="col-sm-4 form-group" v-show="row.f_meter_classify != '机表'" title="涉及权限:【档案信息查询修改】">
|
|
78
|
+
<label for="f_times" class="font_normal_body"> 写卡次数</label>
|
|
79
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_times" placeholder='写卡次数'
|
|
80
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
81
|
+
</div>
|
|
82
|
+
<div class="col-sm-4 form-group" v-show="row.f_meter_classify == '物联网表'" title="涉及权限:【档案信息查询修改】">
|
|
83
|
+
<label for="f_times" class="font_normal_body">物联网写卡次数</label>
|
|
84
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_iot_times" placeholder='物联网次数'
|
|
85
|
+
:disabled="!jurisdiction.includes('档案信息查询修改')">
|
|
86
|
+
</div>
|
|
87
|
+
<div class="col-sm-4 form-group" v-show="false">
|
|
88
|
+
<label for="f_remanent_gas" class="font_normal_body">剩余气量</label>
|
|
89
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_remanent_gas"
|
|
90
|
+
placeholder='剩余气量'
|
|
91
|
+
:disabled="f_userinfo_id"></input>
|
|
92
|
+
<!--<button type="button" name="button" class="btn btn-link" @click="modefiy('f_remanent_gas')" v-if="f_userinfo_id">修改</button>-->
|
|
93
|
+
</div>
|
|
94
|
+
<div class="col-sm-4 form-group">
|
|
95
|
+
<label for="f_times" class="font_normal_body"> 最大量程</label>
|
|
96
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_capacity" placeholder='最大量程'>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="col-sm-4 form-group" v-show="row.f_meter_classify == '物联网表'">
|
|
99
|
+
<label for="gasmodel" class="font_normal_body"> 阀门状态</label>
|
|
100
|
+
<v-select :value.sync="row.f_valve_state" :options='valvestate' placeholder='阀门状态' close-on-select
|
|
101
|
+
v-model='row.f_valve_state'></v-select>
|
|
102
|
+
</div>
|
|
103
|
+
<div class="col-sm-4 form-group" v-show="row.gasbrand.length > 0 && row.gasbrand[0].f_meter_type == '物联网表' && row.gasbrand[0].f_hascard == '是'">
|
|
104
|
+
<label class="font_normal_body" title="开户方式">开户方式</label>
|
|
105
|
+
<v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-if="row.f_userfiles_id"
|
|
106
|
+
search v-model='row.f_open_way' :disabled="curuser.f_user_state != '预备'"></v-select>
|
|
107
|
+
<v-select :value.sync="row.f_open_way" :options='openWay' value-single placeholder='开户方式' close-on-select v-else
|
|
108
|
+
search v-model='row.f_open_way' :disabled="false"></v-select>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="col-sm-4 form-group" v-show="row.gasbrand.length > 0 && row.gasbrand[0].f_meter_brand.indexOf('集中器') !== -1">
|
|
111
|
+
<label class="font_normal_body" title="集中器">集 中 器</label>
|
|
112
|
+
<v-select :value.sync="row.f_concentrator_id" :options='concentrators' value-single placeholder='集中器' close-on-select v-if="row.f_userfiles_id"
|
|
113
|
+
search v-model='row.f_concentrator_id' :disabled="true"></v-select>
|
|
114
|
+
<v-select :value.sync="row.f_concentrator_id" :options='concentrators' value-single placeholder='集中器' close-on-select v-else
|
|
115
|
+
search v-model='row.f_concentrator_id' :disabled="false"></v-select>
|
|
116
|
+
</div>
|
|
117
|
+
<div class="col-sm-4 form-group" v-if="(row.gasbrand.length > 0 && ((row.gasbrand[0].f_meter_type == '物联网表' && row.gasbrand[0].f_hascard == '是') || (row.f_meter_classify.includes('卡表'))) && row.f_user_id )">
|
|
118
|
+
<label class="font_normal_body"> 卡  号</label>
|
|
119
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_card_id" placeholder='卡号' @blur="checkCardId" :disabled="!jurisdiction.includes('卡号修改')">
|
|
120
|
+
</div>
|
|
121
|
+
</div>
|
|
122
|
+
<div>
|
|
123
|
+
<a style="font-size: 16px;font-weight: 500;">气价信息</a> <a style="color: #999999;text-decoration: none"></a>
|
|
124
|
+
</div>
|
|
125
|
+
<div class="row">
|
|
126
|
+
<div class="col-sm-4 form-group" :class="[$m.name.required ? 'has-error' : '']">
|
|
127
|
+
<label for="pricename" class="font_normal_body">气价名称</label>
|
|
128
|
+
<v-select :value.sync="row.pricename" v-model="row.pricename" search
|
|
129
|
+
placeholder='气价名称' :options="getPricenames" @change="priceChange"
|
|
130
|
+
close-on-select :disabled="permissionPrice" v-ref:name></v-select>
|
|
131
|
+
<input type="text" v-show="false" v-model="$refs.name.selectedItems" v-validate:name='{required: true }'>
|
|
132
|
+
</div>
|
|
133
|
+
<div class="col-sm-4 form-group">
|
|
134
|
+
<label for="f_username" class="font_normal_body"> 客户类型</label>
|
|
135
|
+
<v-select :value.sync="row.f_user_type"
|
|
136
|
+
:options='usertypes' placeholder='客户类型'
|
|
137
|
+
@change="userTypeChange()"
|
|
138
|
+
:disabled="true"
|
|
139
|
+
close-on-select></v-select>
|
|
140
|
+
</div>
|
|
141
|
+
<div class="col-sm-4 form-group"
|
|
142
|
+
:class="[$m.gas.required ? 'select-error' : '']">
|
|
143
|
+
<label for="f_username" class="font_normal_body"> 用气性质</label>
|
|
144
|
+
<input type="text" v-show="false" v-model="$refs.gas.selectedItems" v-validate:gas='{required: true }'>
|
|
145
|
+
<v-select :value.sync="row.f_gasproperties" v-model="row.f_gasproperties"
|
|
146
|
+
:options='gasproperties' placeholder='用气性质'
|
|
147
|
+
:disabled="true"
|
|
148
|
+
close-on-select v-ref:gas></v-select>
|
|
149
|
+
</div>
|
|
150
|
+
<div class="col-sm-4 form-group">
|
|
151
|
+
<label for="f_detailprice" class="font_normal_body"> 价  格</label>
|
|
152
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_detailprice" placeholder='价格'
|
|
153
|
+
disabled>
|
|
154
|
+
</div>
|
|
155
|
+
<div class="col-sm-4 form-group" :class="[$m.type.required ? 'select-error' : '']">
|
|
156
|
+
<label for="pricetype" class="font_normal_body"> 气价类型</label>
|
|
157
|
+
<v-select :value.sync="row.pricetype" v-model="row.pricetype"
|
|
158
|
+
placeholder='气价类型' :options="pricetypes"
|
|
159
|
+
:value-single="true"
|
|
160
|
+
:disabled="true"
|
|
161
|
+
close-on-select v-ref:type>
|
|
162
|
+
</v-select>
|
|
163
|
+
<input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
|
|
164
|
+
</div>
|
|
165
|
+
<div class="col-sm-4 form-group">
|
|
166
|
+
<label class="font_normal_body"> 气价备注</label>
|
|
167
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_price_comments" placeholder='气价备注' disabled>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
<div>
|
|
171
|
+
<a style="font-size: 16px;font-weight: 500;">表具其他信息</a> <a style="color: #999999;text-decoration: none"></a>
|
|
172
|
+
</div>
|
|
173
|
+
<div class="row">
|
|
174
|
+
<div class="col-sm-4 form-group" v-show="row.f_gasproperties=='工业'||row.f_gasproperties=='工业用气'">
|
|
175
|
+
<label for="f_gongye_type" class="font_normal_body" title="参数:工业备注"> 工业备注</label>
|
|
176
|
+
<v-select :value.sync="row.f_gongye_type" v-model='row.f_gongye_type'
|
|
177
|
+
:options='gongyetype' placeholder='工业备注'
|
|
178
|
+
close-on-select
|
|
179
|
+
v-el:cc></v-select>
|
|
180
|
+
</div>
|
|
181
|
+
<div class="col-sm-4 form-group">
|
|
182
|
+
<label for="gasmodel" class="font_normal_body"> 表    向</label>
|
|
183
|
+
<v-select :value.sync="row.f_aroundmeter" :options='aroundmeters' placeholder='左右表' close-on-select
|
|
184
|
+
v-model='row.f_aroundmeter'></v-select>
|
|
185
|
+
</div>
|
|
186
|
+
<div class="col-sm-4 form-group" >
|
|
187
|
+
<label for="f_bqf_type" class="font_normal_body">表前阀型号</label>
|
|
188
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_bqf_type"
|
|
189
|
+
placeholder='表前阀型号'>
|
|
190
|
+
</div>
|
|
191
|
+
<div class="col-sm-4 form-group" >
|
|
192
|
+
<label for="f_position" class="font_normal_body" title="参数:表前阀状态">表前阀状态</label>
|
|
193
|
+
<v-select :value.sync="row.f_bqf_state" v-model="row.f_bqf_state"
|
|
194
|
+
:options='bqfstates' placeholder='表前阀状态'
|
|
195
|
+
close-on-select></v-select>
|
|
196
|
+
</div>
|
|
197
|
+
<div class="col-sm-4 form-group">
|
|
198
|
+
<label class="font_normal_body">表具使用年限</label>
|
|
199
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_use_limit"
|
|
200
|
+
:value.sync="row.f_use_limit"
|
|
201
|
+
placeholder='表具使用年限' >
|
|
202
|
+
</div>
|
|
203
|
+
<div class="col-sm-4 form-group">
|
|
204
|
+
<label for="f_gas_person" class="font_normal_body"> 通 气 人</label>
|
|
205
|
+
<input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_gas_person"
|
|
206
|
+
placeholder='通气人'></input>
|
|
207
|
+
<!-- <v-select :value.sync="row.f_gas_person" v-model="row.f_gas_person"
|
|
208
|
+
:options='gasperson' placeholder='通气人'
|
|
209
|
+
close-on-select></v-select> -->
|
|
210
|
+
</div>
|
|
211
|
+
<div class="col-sm-4 form-group">
|
|
212
|
+
<input type="text" v-model="$refs.f_gas_date.value" v-show="false" >
|
|
213
|
+
<label for="f_gas_date" class="font_normal_body"> 通气日期</label>
|
|
214
|
+
<datepicker style="width:60%" placeholder="通气日期"
|
|
215
|
+
v-model="row.f_gas_date"
|
|
216
|
+
v-ref:f_gas_date
|
|
217
|
+
@change="gasDateChange"
|
|
218
|
+
:value.sync="row.f_gas_date"
|
|
219
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
220
|
+
></datepicker>
|
|
221
|
+
</div>
|
|
222
|
+
|
|
223
|
+
<div class="col-sm-4 form-group" >
|
|
224
|
+
<label for="f_position" class="font_normal_body" title="参数:安装位置"> 安装位置</label>
|
|
225
|
+
<v-select :value.sync="row.f_position" v-model="row.f_position"
|
|
226
|
+
:options='positions' placeholder='安装位置'
|
|
227
|
+
close-on-select></v-select>
|
|
228
|
+
</div>
|
|
229
|
+
<div class="col-sm-4 form-group" v-show="true">
|
|
230
|
+
<label for="f_install_person" class="font_normal_body"> 安 装 人</label>
|
|
231
|
+
<v-select :value.sync="row.f_install_person" v-model="row.f_install_person"
|
|
232
|
+
:options='installperson' placeholder='安装人'
|
|
233
|
+
close-on-select></v-select>
|
|
234
|
+
</div>
|
|
235
|
+
<div class="col-sm-4 form-group">
|
|
236
|
+
<label for="f_subscribe_date" class="font_normal_body"> 预约时间</label>
|
|
237
|
+
<datepicker style="width:60%" placeholder="预约通气时间"
|
|
238
|
+
v-model="row.f_subscribe_date"
|
|
239
|
+
:value.sync="row.f_subscribe_date"
|
|
240
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
241
|
+
></datepicker>
|
|
242
|
+
</div>
|
|
243
|
+
<div class="col-sm-4 form-group" v-show="opteratormetrbook" >
|
|
244
|
+
<label for="f_position" class="font_normal_body" > 抄 表 册</label>
|
|
245
|
+
<v-select :value.sync="row.f_meter_book_num" v-model="row.f_meter_book_num"
|
|
246
|
+
:options='meterbookoptions' placeholder='抄表册'
|
|
247
|
+
close-on-select></v-select>
|
|
248
|
+
</div>
|
|
249
|
+
<div class="col-sm-4 form-group" v-show="true" :class="[$m.f_install_date.required ? 'has-error' : '']">
|
|
250
|
+
<input type="text" v-model="$refs.f_install_date.value" v-show="false" v-validate:f_install_date='{required: true }'>
|
|
251
|
+
<label for="f_install_date" class="font_normal_body"> 安装日期</label>
|
|
252
|
+
<datepicker style="width:60%" id="startDate" placeholder="安装日期" width='100%'
|
|
253
|
+
v-model="row.f_install_date"
|
|
254
|
+
:value.sync="row.f_install_date"
|
|
255
|
+
class="datepicker"
|
|
256
|
+
v-ref:f_install_date
|
|
257
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
258
|
+
:show-reset-button="true">
|
|
259
|
+
</datepicker>
|
|
260
|
+
</div>
|
|
261
|
+
<div class="col-sm-4 form-group">
|
|
262
|
+
<label for="f_adjustable" class="font_normal_body"> 调 压 箱</label>
|
|
263
|
+
<v-select :value.sync="row.f_adjustable" :options='adjustables' placeholder='调压箱' close-on-select
|
|
264
|
+
v-model='row.f_adjustable' :search='true'></v-select>
|
|
265
|
+
</div>
|
|
266
|
+
<div class="col-sm-4 form-group">
|
|
267
|
+
<label for="f_hand_date" class="font_normal_body"> 上次抄表</label>
|
|
268
|
+
<datepicker style="width:60%" id="f_hand_date" placeholder="上次抄表日期"
|
|
269
|
+
v-model="row.f_hand_date"
|
|
270
|
+
:value.sync="row.f_hand_date"
|
|
271
|
+
class="datepicker"
|
|
272
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
273
|
+
:show-reset-button="true">
|
|
274
|
+
</datepicker>
|
|
275
|
+
</div>
|
|
276
|
+
<div v-if="ratioshow" class="col-sm-4 form-group"
|
|
277
|
+
:class="[$m.meternumber.required ? 'has-error' : '']">
|
|
278
|
+
<label for="f_ratio" class="font_normal_body">比  率</label>
|
|
279
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_price_ratio"
|
|
280
|
+
:value.sync="row.f_price_ratio"
|
|
281
|
+
v-validate:meternumber='{required: true }' placeholder='比率'>
|
|
282
|
+
</div>
|
|
283
|
+
<div class="col-sm-4 form-group" >
|
|
284
|
+
<label for="f_factory_date" class="font_normal_body"> 出厂日期</label>
|
|
285
|
+
<datepicker style="width:60%" id="f_factory_date" placeholder="出厂日期" width='100%'
|
|
286
|
+
v-model="row.f_factory_date"
|
|
287
|
+
:value.sync="row.f_factory_date"
|
|
288
|
+
class="datepicker"
|
|
289
|
+
:format="'yyyy-MM-dd'"
|
|
290
|
+
:show-reset-button="true">
|
|
291
|
+
</datepicker>
|
|
292
|
+
</div>
|
|
293
|
+
<div class="col-sm-4 form-group" >
|
|
294
|
+
<label for="f_scrap_date" class="font_normal_body"> 报废日期</label>
|
|
295
|
+
<datepicker style="width:60%" id="ScrapDate" placeholder="报废日期" width='100%'
|
|
296
|
+
v-model="row.f_scrap_date"
|
|
297
|
+
:value.sync="row.f_scrap_date"
|
|
298
|
+
class="datepicker"
|
|
299
|
+
:format="'yyyy-MM-dd'"
|
|
300
|
+
:show-reset-button="true">
|
|
301
|
+
</datepicker>
|
|
302
|
+
</div>
|
|
303
|
+
<div class="col-sm-4 form-group">
|
|
304
|
+
<label for="gasmodel" class="font_normal_body"> 垃 圾 费</label>
|
|
305
|
+
<v-select :value.sync="row.f_garbage_fee" :options='garbagefee' placeholder='垃圾费' close-on-select
|
|
306
|
+
:value-single="true"
|
|
307
|
+
v-model='row.f_garbage_fee'></v-select>
|
|
308
|
+
</div>
|
|
309
|
+
<div class="col-sm-4 form-group">
|
|
310
|
+
<label class="font_normal_body"> 抄 表 员</label>
|
|
311
|
+
<v-select :value.sync="row.f_inputtor" v-model='row.f_inputtor'
|
|
312
|
+
style="width:60%"
|
|
313
|
+
:options='inputtores' placeholder='抄表员'
|
|
314
|
+
close-on-select
|
|
315
|
+
condition="f_inputtor like '%{}%'" v-el:cc></v-select>
|
|
316
|
+
</div>
|
|
317
|
+
<div class="col-sm-4 form-group" >
|
|
318
|
+
<label for="f_usetype" class="font_normal_body" title="参数:使用类型"> 使用类型</label>
|
|
319
|
+
<v-select :value.sync="row.f_usetype" v-model="row.f_usetype"
|
|
320
|
+
:options='usetype' placeholder='使用类型'
|
|
321
|
+
close-on-select></v-select>
|
|
322
|
+
</div>
|
|
323
|
+
<div class="col-sm-4 form-group" >
|
|
324
|
+
<label for="f_position" class="font_normal_body" title="参数:使用状态"> 使用状态</label>
|
|
325
|
+
<v-select :value.sync="row.f_usestate" v-model="row.f_usestate"
|
|
326
|
+
:options='usestate' placeholder='使用状态'
|
|
327
|
+
close-on-select></v-select>
|
|
328
|
+
</div>
|
|
329
|
+
<div class="col-sm-4 form-group" >
|
|
330
|
+
<label for="f_limit_sms" class="font_normal_body"> 短信限定</label>
|
|
331
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_limit_sms"
|
|
332
|
+
placeholder='短信限定'></input>
|
|
333
|
+
</div>
|
|
334
|
+
<div style="" class="col-sm-4 form-group">
|
|
335
|
+
<label for="f_alarm_code" class="font_normal_body "> 报警器号</label>
|
|
336
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_alarm_code" placeholder='报警器号'/>
|
|
337
|
+
</div>
|
|
338
|
+
<div style="" class="col-sm-4 form-group">
|
|
339
|
+
<label for="f_hand_month" class="font_normal_body "> 抄表月份</label>
|
|
340
|
+
<v-select :value.sync="row.f_hand_month" v-model="row.f_hand_month"
|
|
341
|
+
:options='handmonth' placeholder='抄表月份'
|
|
342
|
+
close-on-select></v-select>
|
|
343
|
+
</div>
|
|
344
|
+
<div style="" class="col-sm-4 form-group">
|
|
345
|
+
<label for="f_userfiles_address" class="font_normal_body "> 用气点名</label>
|
|
346
|
+
<input class="input_search" style="width:60%" v-model="row.f_userfiles_address"/>
|
|
347
|
+
</div>
|
|
348
|
+
<div style="" class="col-sm-4 form-group">
|
|
349
|
+
<label class="font_normal_body"> 经    度</label>
|
|
350
|
+
<input type="text" style="width:60%" v-model="row.f_userfiles_lng" class="input_search" placeholder="经度"/>
|
|
351
|
+
</div>
|
|
352
|
+
<div style="" class="col-sm-4 form-group">
|
|
353
|
+
<label class="font_normal_body"> 纬    度</label>
|
|
354
|
+
<input type="text" style="width:48%" v-model="row.f_userfiles_lat" class="input_search" placeholder="纬度"/>
|
|
355
|
+
 <span class="glyphicon glyphicon-map-marker" @click="openModal" ></span>
|
|
356
|
+
</div>
|
|
357
|
+
<div class="col-sm-4 form-group">
|
|
358
|
+
<label class="font_normal_body">备    注</label>
|
|
359
|
+
<input type="text" style="width:60%" v-model="row.f_comments" class="input_search" placeholder="备注"/>
|
|
360
|
+
</div>
|
|
361
|
+
<div class="col-sm-4 form-group" v-if="config.overduesetShow">
|
|
362
|
+
<label class="font_normal_body">滞纳金规则</label>
|
|
363
|
+
<v-select :value.sync="row.f_overdue_set" v-model="row.f_overdue_set"
|
|
364
|
+
:options='overdueset' placeholder='滞纳金规则'
|
|
365
|
+
close-on-select></v-select>
|
|
366
|
+
</div>
|
|
367
|
+
|
|
368
|
+
<template v-if="config.stuckFlowmeterShow">
|
|
369
|
+
<div class="col-sm-4 form-group">
|
|
370
|
+
<label class="font_normal_body" title="控制器通经">控制器通经</label>
|
|
371
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_control_pass"
|
|
372
|
+
placeholder='控制器通经'></input>
|
|
373
|
+
</div>
|
|
374
|
+
<div class="col-sm-4 form-group">
|
|
375
|
+
<label class="font_normal_body" title="控制器压力等级">控制器压力等级</label>
|
|
376
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_control_mpa_level"
|
|
377
|
+
placeholder='控制器压力等级'></input>
|
|
378
|
+
</div>
|
|
379
|
+
<div class="col-sm-4 form-group">
|
|
380
|
+
<label class="font_normal_body" title="流量计表号">流量计表号</label>
|
|
381
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_flowmeter_number"
|
|
382
|
+
placeholder='流量计表号'></input>
|
|
383
|
+
</div>
|
|
384
|
+
<div class="col-sm-4 form-group">
|
|
385
|
+
<label class="font_normal_body" title="流量计表封号">流量计表封号</label>
|
|
386
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_llj_metertitles"
|
|
387
|
+
placeholder='流量计表封号'></input>
|
|
388
|
+
</div>
|
|
389
|
+
<div class="col-sm-4 form-group">
|
|
390
|
+
<label class="font_normal_body" title="流量计品牌">流量计品牌</label>
|
|
391
|
+
<v-select :value.sync="row.f_flowmeter_brand" :options='flowmeterbrands' value-single placeholder='流量计品牌' close-on-select
|
|
392
|
+
search v-model='row.f_flowmeter_brand'></v-select>
|
|
393
|
+
</div>
|
|
394
|
+
<div class="col-sm-4 form-group">
|
|
395
|
+
<label class="font_normal_body" title="流量计型号">流量计型号</label>
|
|
396
|
+
<v-select :value.sync="row.f_flowmeter_model" :options='flowmetermodels(row.f_flowmeter_brand)' value-single placeholder='流量计型号' close-on-select
|
|
397
|
+
v-model='row.f_flowmeter_model' :disabled='row.f_flowmeter_brand.length === 0'></v-select>
|
|
398
|
+
</div>
|
|
399
|
+
<div class="col-sm-4 form-group">
|
|
400
|
+
<label class="font_normal_body" title="流量计通经">流量计通经</label>
|
|
401
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_flowmeter_pass"
|
|
402
|
+
placeholder='流量计通经'></input>
|
|
403
|
+
</div>
|
|
404
|
+
<div class="col-sm-4 form-group">
|
|
405
|
+
<label class="font_normal_body" title="流量计压力等级">流量计压力等级</label>
|
|
406
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_flowmeter_mpa_level"
|
|
407
|
+
placeholder='流量计压力等级'></input>
|
|
408
|
+
</div>
|
|
409
|
+
<div class="col-sm-4 form-group">
|
|
410
|
+
<label class="font_normal_body" title="流量计出厂日期">流量计出厂日期</label>
|
|
411
|
+
<datepicker style="width:60%" placeholder="流量计出厂日期"
|
|
412
|
+
v-model="row.f_flowmeter_factory_date"
|
|
413
|
+
:value.sync="row.f_flowmeter_factory_date"
|
|
414
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
415
|
+
></datepicker>
|
|
416
|
+
</div>
|
|
417
|
+
<div class="col-sm-4 form-group">
|
|
418
|
+
<label class="font_normal_body" title="流量计精准度">流量计精准度</label>
|
|
419
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_flowmeter_accuracy"
|
|
420
|
+
placeholder='流量计精准度'></input>
|
|
421
|
+
</div>
|
|
422
|
+
<div class="col-sm-4 form-group">
|
|
423
|
+
<label class="font_normal_body" title="流量计电仪出厂编号">流量计电仪出厂编号</label>
|
|
424
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_flowmeter_factory_num"
|
|
425
|
+
placeholder='流量计电仪出厂编号'></input>
|
|
426
|
+
</div>
|
|
427
|
+
<div class="col-sm-4 form-group">
|
|
428
|
+
<label class="font_normal_body" title="流量计电仪出厂编号">流量计类型</label>
|
|
429
|
+
<input type="text" class="input_search" style="width:60%" v-model="row.f_llj_type"
|
|
430
|
+
placeholder='流量计类型'></input>
|
|
431
|
+
</div>
|
|
432
|
+
<div class="col-sm-4 form-group">
|
|
433
|
+
<label class="font_normal_body" title="流量计安装日期">流量计安装日期</label>
|
|
434
|
+
<datepicker style="width:60%" placeholder="流量计安装日期"
|
|
435
|
+
v-model="row.f_flowmeter_install_date"
|
|
436
|
+
:value.sync="row.f_flowmeter_install_date"
|
|
437
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
438
|
+
></datepicker>
|
|
439
|
+
</div>
|
|
440
|
+
</template>
|
|
441
|
+
</div>
|
|
442
|
+
</form>
|
|
443
|
+
</validator>
|
|
444
|
+
<!--<idverify :show.sync="show" @change-con="changeVal"></idverify>-->
|
|
445
|
+
<modal v-if="showParame" :show.sync="showParame" v-ref:modal backdrop="false">
|
|
446
|
+
<header slot="modal-header" class="modal-header">
|
|
447
|
+
<button type="button" class="close" @click="cancel"><span>×</span></button>
|
|
448
|
+
<h3 class="modal-title" style="text-align: center;">添加参数</h3>
|
|
449
|
+
</header>
|
|
450
|
+
<article slot="modal-body" class="modal-body">
|
|
451
|
+
<add-json-parameter v-ref:addparamlist :gasmodel_id="userfileid" :gastype="gastype"
|
|
452
|
+
:gasid="gasid"></add-json-parameter>
|
|
453
|
+
</article>
|
|
454
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
455
|
+
<button type="button" class="btn btn-primary" @click='confirmUserfiles()'>确认</button>
|
|
456
|
+
</footer>
|
|
457
|
+
</modal>
|
|
458
|
+
|
|
459
|
+
<modal :show.sync="mapShow" v-if="mapShow" large backdrop="false" :width="900">
|
|
460
|
+
<header slot="modal-header" class="modal-header">
|
|
461
|
+
</header>
|
|
462
|
+
<article slot="modal-body" class="modal-body">
|
|
463
|
+
<amap-location :islocationclearmark="false" dom="addboxmap" v-ref:positionInfo @getmylocation="getmylocation"></amap-location>
|
|
464
|
+
</article>
|
|
465
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
466
|
+
<button v-show="mapShow" type="button" class="button_clear btn-gn" @click='closeModal'>取消</button>
|
|
467
|
+
<button v-show="mapShow" type="button" class="button_clear btn-gn" @click='confirmLocation'>确认</button>
|
|
468
|
+
</footer>
|
|
469
|
+
</modal>
|
|
470
|
+
</div>
|
|
471
|
+
</template>
|
|
472
|
+
|
|
473
|
+
<script>
|
|
474
|
+
import co from 'co'
|
|
475
|
+
import {HttpResetClass} from 'vue-client'
|
|
476
|
+
import Vue from 'vue'
|
|
477
|
+
|
|
478
|
+
let meterBookGen = function * (self) {
|
|
479
|
+
if (self.$login.r.find(value => value == '抄表册建档')) {
|
|
480
|
+
self.opteratormetrbook = true
|
|
481
|
+
}
|
|
482
|
+
let temp = {
|
|
483
|
+
tablename: 't_meter_book',
|
|
484
|
+
condition: `f_book_state='有效' and f_filiale_id='${self.$login.f.orgid}'`
|
|
485
|
+
}
|
|
486
|
+
let http = new HttpResetClass()
|
|
487
|
+
let meterbooks = yield http.load('POST', 'rs/sql/saleSingleTable', {data: temp},
|
|
488
|
+
{resolveMsg: null, rejectMsg: '获取抄表册信息失败!!'})
|
|
489
|
+
if (meterbooks.data.length > 0) {
|
|
490
|
+
let options = []
|
|
491
|
+
for (let i = 0; i < meterbooks.data.length; i++) {
|
|
492
|
+
let tmp = {label: meterbooks.data[i].f_book_name, value: `${meterbooks.data[i].id}`}
|
|
493
|
+
options.push(tmp)
|
|
494
|
+
}
|
|
495
|
+
self.meterbookoptions = options
|
|
496
|
+
}
|
|
497
|
+
try {
|
|
498
|
+
let result = yield http.load('GET', `rs/vue/MeterinfoTest.json`, {}, {resolveMsg: null, rejectMsg: null})
|
|
499
|
+
Object.assign(self.config, result.data)
|
|
500
|
+
if (!self.row.f_open_way) self.row.f_open_way = self.config.open_way
|
|
501
|
+
} catch (error) {
|
|
502
|
+
// 忽略704,文件找不到异常
|
|
503
|
+
if (error.status !== 704) {
|
|
504
|
+
throw error
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
let brandChangeGen = function* (self, val) {
|
|
509
|
+
let beforeRecord = null
|
|
510
|
+
|
|
511
|
+
if (self.meter.f_meter_classify === '机表') {
|
|
512
|
+
beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
|
|
513
|
+
data: {
|
|
514
|
+
tablename: 't_handplan',
|
|
515
|
+
condition: `f_user_id = '${self.row.f_user_id}' and f_meter_state in ('已抄表','未抄表')`
|
|
516
|
+
}
|
|
517
|
+
}, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
|
|
518
|
+
}else if (self.meter.f_meter_classify === '物联网表') {
|
|
519
|
+
beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
|
|
520
|
+
data: {
|
|
521
|
+
tablename: 't_instruct',
|
|
522
|
+
condition: `f_user_id = '${self.row.f_user_id}'`
|
|
523
|
+
}
|
|
524
|
+
}, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
|
|
525
|
+
} else {
|
|
526
|
+
beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
|
|
527
|
+
data: {
|
|
528
|
+
tablename: 't_sellinggas',
|
|
529
|
+
condition: `f_user_id = '${self.row.f_user_id}' and f_state = '有效'`
|
|
530
|
+
}
|
|
531
|
+
}, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前卡表收费信息出错!!'})
|
|
532
|
+
}
|
|
533
|
+
if (beforeRecord.data.length > 0 && self.row.gasbrand[0].f_meter_brand != self.oldrow.gasbrand[0].f_meter_brand) {
|
|
534
|
+
self.$showAlert('该气表已投入使用,如需更改请执行换表操作', 'warning', 3000)
|
|
535
|
+
self.$dispatch('success')
|
|
536
|
+
} else {
|
|
537
|
+
self.row.f_whether_hairpin = self.row.gasbrand[0].f_meter_type === '机表' ? '无卡' : '未发'
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
export default {
|
|
541
|
+
title: '表具信息',
|
|
542
|
+
data () {
|
|
543
|
+
return {
|
|
544
|
+
config: {
|
|
545
|
+
// 卡控流量计相关字段显示
|
|
546
|
+
stuckFlowmeterShow: false,
|
|
547
|
+
overduesetShow: true,
|
|
548
|
+
open_way: '指令开户'
|
|
549
|
+
},
|
|
550
|
+
mapShow: false,
|
|
551
|
+
viewsee: false,
|
|
552
|
+
row: this.meter,
|
|
553
|
+
show: false,
|
|
554
|
+
field: '',
|
|
555
|
+
ratioshow: false,
|
|
556
|
+
// 原本的卡号
|
|
557
|
+
orginCardId: '',
|
|
558
|
+
userfileid: '',
|
|
559
|
+
gasid: '',
|
|
560
|
+
gastype: 'userfiles',
|
|
561
|
+
showParame: false,
|
|
562
|
+
selectUserFiles: '', // 选中的 userfiles
|
|
563
|
+
jurisdiction: this.$login.r,
|
|
564
|
+
positions: this.$appdata.getParam('安装位置'),
|
|
565
|
+
usetype: this.$appdata.getParam('使用类型'),
|
|
566
|
+
usestate: this.$appdata.getParam('使用状态'),
|
|
567
|
+
aroundmeters: this.$appdata.getParam('左右表'),
|
|
568
|
+
garbagefee: this.$appdata.getParam('垃圾费'),
|
|
569
|
+
valvestate: this.$appdata.getParam('阀门状态'),
|
|
570
|
+
usertypes: this.$appdata.getParam('用户类型'),
|
|
571
|
+
handmonth: [{label: '单月', value: '单月'}, {label: '双月', value: '双月'}],
|
|
572
|
+
gasproperties: this.meter.f_user_type && this.meter.f_user_type.length === 1 ? this.$appdata.getParam(this.meter.f_user_type[0]) : [],
|
|
573
|
+
pricetypes: this.$appdata.getParam('气价类型'),
|
|
574
|
+
industrycomments: this.$appdata.getParam('工业备注'),
|
|
575
|
+
openWay: [{label: '指令开户', value: '指令开户'}, {label: '发卡开户', value: '发卡开户'}],
|
|
576
|
+
concentrators: [],
|
|
577
|
+
meterbookoptions: [], // 抄表册选项
|
|
578
|
+
opteratormetrbook: false, // 抄表册操作
|
|
579
|
+
oldrow: [],
|
|
580
|
+
overdueset:[],
|
|
581
|
+
isiot: true,
|
|
582
|
+
templng: '', // 临时经度
|
|
583
|
+
templat: '' // 临时纬度
|
|
584
|
+
}
|
|
585
|
+
},
|
|
586
|
+
props: ['f_filialeid', 'meter', 'isdecimal', 'valid', 'f_userinfo_id', 'overdueset', 'curuser'],
|
|
587
|
+
async ready () {
|
|
588
|
+
console.log('看看meter里面的数据', this.meter, this.row)
|
|
589
|
+
this.row = Object.assign(this.row, this.meter, {f_use_limit : this.$appdata.getSingleValue('报废年限')})
|
|
590
|
+
this.orginCardId = this.row.f_card_id
|
|
591
|
+
if(this.row.f_meter_classify){
|
|
592
|
+
if(this.row.f_meter_classify==='物联网表'){
|
|
593
|
+
this.isiot=true
|
|
594
|
+
}else{
|
|
595
|
+
this.isiot=false
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
this.oldrow = this.row
|
|
599
|
+
this.isdecimal = this.row.gasbrand.length > 0 ? this.row.gasbrand.f_isdecimal : '否'
|
|
600
|
+
this.row.valid = false
|
|
601
|
+
if (this.row.pricetype === '混合气价') {
|
|
602
|
+
this.ratioshow = true
|
|
603
|
+
}
|
|
604
|
+
await this.getConcentrators()
|
|
605
|
+
co(meterBookGen(this))
|
|
606
|
+
},
|
|
607
|
+
methods: {
|
|
608
|
+
checkCardId() {
|
|
609
|
+
this.$resetpost('rs/logic/checkCardId', {
|
|
610
|
+
data: {
|
|
611
|
+
f_userfiles_id: this.row.f_userfiles_id,
|
|
612
|
+
gasbrandId: this.row.f_gasbrand_id,
|
|
613
|
+
cardId: this.row.f_card_id,
|
|
614
|
+
f_orgid: this.row.f_orgid
|
|
615
|
+
}
|
|
616
|
+
}, {resolveMsg: null, rejectMsg: '获取表号出错'}).then(res => {
|
|
617
|
+
if(res.data.code !== '200') {
|
|
618
|
+
this.row.f_card_id = this.orginCardId
|
|
619
|
+
this.$showAlert(res.data.msg,'warning',1500)
|
|
620
|
+
}
|
|
621
|
+
})
|
|
622
|
+
},
|
|
623
|
+
gasDateChange () {
|
|
624
|
+
if (!this.row.f_scrap_date && this.row.f_gas_date) {
|
|
625
|
+
if (this.row.f_use_limit) {
|
|
626
|
+
let date = new Date(this.row.f_gas_date)
|
|
627
|
+
let year = date.getFullYear() + (this.row.f_use_limit / 1)
|
|
628
|
+
this.$set('row.f_scrap_date', year + this.row.f_gas_date.slice(4))
|
|
629
|
+
|
|
630
|
+
}
|
|
631
|
+
}
|
|
632
|
+
},
|
|
633
|
+
// 获取集中器下拉框
|
|
634
|
+
async getConcentrators () {
|
|
635
|
+
let condition = {
|
|
636
|
+
items: 'id,f_mpc_alias',
|
|
637
|
+
tablename: 't_concentrator',
|
|
638
|
+
condition: `f_mpc_state !='删除'`,
|
|
639
|
+
orderitem: 'id'
|
|
640
|
+
}
|
|
641
|
+
let data = await this.$resetpost('rs/sql/saleSingleTable', {data: condition}, {resolveMsg: null, rejectMsg: '获取集中器失败!'})
|
|
642
|
+
this.concentrators = []
|
|
643
|
+
for (let row of data.data) {
|
|
644
|
+
this.concentrators.push({label: row.f_mpc_alias, value: row.id})
|
|
645
|
+
}
|
|
646
|
+
},
|
|
647
|
+
async confirmUserfiles () {
|
|
648
|
+
if (this.$refs.addparamlist.confirm()) {
|
|
649
|
+
var paramlist = this.$refs.addparamlist.addGasParameter
|
|
650
|
+
await this.$resetpost('rs/logic/updateGasParam', {
|
|
651
|
+
data: {
|
|
652
|
+
id: this.selectUserFiles.f_user_id,
|
|
653
|
+
paramlist: paramlist,
|
|
654
|
+
gastype: 'userfiles'
|
|
655
|
+
}
|
|
656
|
+
}, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
|
|
657
|
+
this.showParame = false
|
|
658
|
+
}
|
|
659
|
+
},
|
|
660
|
+
|
|
661
|
+
priceChange (val) {
|
|
662
|
+
if (val.length > 0) {
|
|
663
|
+
this.row.f_user_type = [val[0].f_user_type]
|
|
664
|
+
this.row.f_gasproperties = [val[0].f_gasproperties]
|
|
665
|
+
this.row.pricetype = val[0].f_price_type
|
|
666
|
+
// 展示气价备注
|
|
667
|
+
this.$set('row.f_price_comments', val[0].f_comments ? val[0].f_comments : '无')
|
|
668
|
+
// 展示价格明细
|
|
669
|
+
if (val[0].detailprice) {
|
|
670
|
+
// this.row.f_detailprice = this.$CommonService.getShowPriceDetail(val[0].detailprice)
|
|
671
|
+
this.$set('row.f_detailprice', this.$CommonService.getShowPriceDetail(val[0].detailprice))
|
|
672
|
+
}
|
|
673
|
+
}
|
|
674
|
+
},
|
|
675
|
+
cancel () {
|
|
676
|
+
this.gasid = ''
|
|
677
|
+
this.userfileid = ''
|
|
678
|
+
this.showParame = false
|
|
679
|
+
},
|
|
680
|
+
tablebaseChange () {
|
|
681
|
+
if (this.isdecimal === '是') {
|
|
682
|
+
this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(4))
|
|
683
|
+
} else {
|
|
684
|
+
this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(0))
|
|
685
|
+
}
|
|
686
|
+
},
|
|
687
|
+
brandChange (val) {
|
|
688
|
+
this.isdecimal = val.length > 0 ? val[0].f_isdecimal : '否'
|
|
689
|
+
console.log('sadasfasf', val)
|
|
690
|
+
if (val.length > 0 && val[0].f_meter_type === '物联网表') {
|
|
691
|
+
this.isiot = true
|
|
692
|
+
} else {
|
|
693
|
+
this.isiot = false
|
|
694
|
+
}
|
|
695
|
+
// this.tablebaseChange()
|
|
696
|
+
if (this.row.f_user_id) {
|
|
697
|
+
co(brandChangeGen(this))
|
|
698
|
+
}
|
|
699
|
+
this.meternumberValidate()
|
|
700
|
+
},
|
|
701
|
+
userTypeChange () {
|
|
702
|
+
this.gasproperties = []
|
|
703
|
+
if (this.row.f_user_type.length === 1) {
|
|
704
|
+
this.gasproperties = this.$appdata.getParam(this.row.f_user_type[0])
|
|
705
|
+
}
|
|
706
|
+
},
|
|
707
|
+
// getPricenames(pricetype) {
|
|
708
|
+
// console.log('气价。,。。', pricetype, this.row.f_user_type, this.row.f_gasproperties)
|
|
709
|
+
// let rs = []
|
|
710
|
+
// if (this.row.f_user_type.length === 1 && this.row.f_gasproperties.length === 1 && pricetype.length === 1) {
|
|
711
|
+
// let params = {
|
|
712
|
+
// f_user_type: this.row.f_user_type[0],
|
|
713
|
+
// f_gasproperties: this.row.f_gasproperties[0],
|
|
714
|
+
// f_price_type: pricetype[0],
|
|
715
|
+
// filter: this.f_filialeid
|
|
716
|
+
// }
|
|
717
|
+
// rs = this.$GetSaleParam.getPrice(params)
|
|
718
|
+
// }
|
|
719
|
+
// if (rs.length === 0) {
|
|
720
|
+
// this.row.f_price_name = ''
|
|
721
|
+
// }
|
|
722
|
+
// return rs
|
|
723
|
+
// },
|
|
724
|
+
mValid (bool) {
|
|
725
|
+
this.row.valid = bool
|
|
726
|
+
this.$dispatch('self-valid')
|
|
727
|
+
},
|
|
728
|
+
// 带权限修改单值返回修改后得值和修改原因
|
|
729
|
+
modefiy (field) {
|
|
730
|
+
this.show = true
|
|
731
|
+
this.field = field
|
|
732
|
+
},
|
|
733
|
+
async meternumberValidate () {
|
|
734
|
+
let http1 = new HttpResetClass()
|
|
735
|
+
let res1 = await http1.load('POST', '/rs/sql/getBrandAndType', {data: {condition: ` mi.f_meternumber = '${this.row.f_meternumber}'`}}, {resolveMsg: null, rejectMsg: '获取默认气表品牌型号失败!!'})
|
|
736
|
+
if (res1.data.length > 0) {
|
|
737
|
+
// 替换表号自带的气表品牌和型号
|
|
738
|
+
let meterbrands = this.meterbrands
|
|
739
|
+
for (let row of meterbrands) {
|
|
740
|
+
if (row.label == res1.data[0].f_meter_brand) {
|
|
741
|
+
// 已经选择了气表品牌则不再替换
|
|
742
|
+
if (this.row.gasbrand.length <= 0) this.row.gasbrand = [row.value]
|
|
743
|
+
// 替换气表型号
|
|
744
|
+
if (res1.data[0].f_meter_style) {
|
|
745
|
+
for (let model of row.value.gasmodel) {
|
|
746
|
+
if (model.label == res1.data[0].f_meter_style) {
|
|
747
|
+
// 已经选择了气表型号则不再替换
|
|
748
|
+
if (this.row.gasmodel.length <= 0) this.row.gasmodel = [model.value]
|
|
749
|
+
continue
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
continue
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
// 验证表号
|
|
758
|
+
if (this.row.f_meternumber && this.row.gasbrand.length > 0) {
|
|
759
|
+
// 表号位数验证
|
|
760
|
+
let meternumberLen = this.row.gasbrand[0].f_meternumber_len
|
|
761
|
+
if (meternumberLen) {
|
|
762
|
+
if (this.row.f_meternumber.length != meternumberLen) {
|
|
763
|
+
this.row.f_meternumber = ''
|
|
764
|
+
this.$showAlert(`表号位数不正确, 当前气表品牌表号位数是: ${meternumberLen}`, 'warning', 3000)
|
|
765
|
+
return
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
// 表计信息验证
|
|
769
|
+
if (this.row.gasbrand[0].f_meterverification == '是') {
|
|
770
|
+
if (res1.data.length <= 0) {
|
|
771
|
+
this.$showAlert(`当前表号: ${this.row.f_meternumber}在表计信息中无记录, 请核实!!!`, 'warning', 3000)
|
|
772
|
+
this.row.f_meternumber = ''
|
|
773
|
+
return
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
let param = {
|
|
777
|
+
f_meternumber: this.row.f_meternumber,
|
|
778
|
+
f_gasbrand_id: this.row.gasbrand[0].id
|
|
779
|
+
}
|
|
780
|
+
if (this.row.f_userfiles_id) {
|
|
781
|
+
param.f_userfiles_id = this.row.f_userfiles_id
|
|
782
|
+
}
|
|
783
|
+
let res = await this.$resetpost('rs/logic/meternumberValidate', param, {
|
|
784
|
+
resolveMsg: null,
|
|
785
|
+
rejectMsg: '表号验证失败!!'
|
|
786
|
+
})
|
|
787
|
+
if (this.row.gasbrand[0].f_meter_type === '物联网表') {
|
|
788
|
+
if (res.data) {
|
|
789
|
+
this.row.f_meternumber = ''
|
|
790
|
+
this.$showAlert('表号已存在!!', 'warning', 3000)
|
|
791
|
+
}
|
|
792
|
+
} else {
|
|
793
|
+
if (res.data) {
|
|
794
|
+
this.$showAlert('请注意,相同的表号已存在', 'warning', 3000)
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
}
|
|
798
|
+
},
|
|
799
|
+
openModal () {
|
|
800
|
+
this.mapShow = true
|
|
801
|
+
},
|
|
802
|
+
closeModal () {
|
|
803
|
+
this.mapShow = false;
|
|
804
|
+
},
|
|
805
|
+
getmylocation (res) {
|
|
806
|
+
this.templng = res.position.lng
|
|
807
|
+
this.templat = res.position.lat
|
|
808
|
+
},
|
|
809
|
+
confirmLocation () {
|
|
810
|
+
this.row.f_userfiles_lat = this.templat
|
|
811
|
+
this.row.f_userfiles_lng = this.templng
|
|
812
|
+
this.mapShow = false;
|
|
813
|
+
},
|
|
814
|
+
flowmetermodels (label) {
|
|
815
|
+
let gasbrand = this.$GetSaleParam.getGasbrand()
|
|
816
|
+
let flowmetermodels = []
|
|
817
|
+
for (let row of gasbrand) {
|
|
818
|
+
if (row.label == label) {
|
|
819
|
+
for (let gasmodel of row.value.gasmodel) {
|
|
820
|
+
flowmetermodels.push({label: gasmodel.label, value: gasmodel.label})
|
|
821
|
+
}
|
|
822
|
+
break
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
return flowmetermodels
|
|
826
|
+
}
|
|
827
|
+
},
|
|
828
|
+
watch: {
|
|
829
|
+
'meter' () {
|
|
830
|
+
this.row = Object.assign(this.row, this.meter, {})
|
|
831
|
+
this.isdecimal = this.row.gasbrand.f_isdecimal
|
|
832
|
+
this.row.valid = false
|
|
833
|
+
this.showtype = this.row.gasbrand.f_meter_type
|
|
834
|
+
},
|
|
835
|
+
'row.pricetype' (val) {
|
|
836
|
+
if (val == '混合气价') {
|
|
837
|
+
this.ratioshow = true
|
|
838
|
+
} else {
|
|
839
|
+
this.ratioshow = false
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
},
|
|
843
|
+
computed: {
|
|
844
|
+
|
|
845
|
+
// 控制用户类型修改
|
|
846
|
+
permissionUserType () {
|
|
847
|
+
let res = false
|
|
848
|
+
if (this.row.f_user_id) {
|
|
849
|
+
res = !(this.jurisdiction.includes('民用气价修改') && this.jurisdiction.includes('非民用气价修改'))
|
|
850
|
+
}
|
|
851
|
+
return res
|
|
852
|
+
},
|
|
853
|
+
|
|
854
|
+
// 控制用气性质,气价类型,气价名称修改
|
|
855
|
+
permissionPrice () {
|
|
856
|
+
let res = false
|
|
857
|
+
if (this.row.f_user_id) {
|
|
858
|
+
console.log('获取权限、', this.row, this.jurisdiction)
|
|
859
|
+
// 变更操作
|
|
860
|
+
if (this.row.pricename.length > 0) {
|
|
861
|
+
if (this.row.f_user_type[0] === '民用') {
|
|
862
|
+
// 判断是否有民用气价权限
|
|
863
|
+
res = !this.jurisdiction.includes('民用气价修改')
|
|
864
|
+
} else if (this.row.f_user_type[0] === '非民用') {
|
|
865
|
+
// 判断是否有非民用气价权限
|
|
866
|
+
res = !this.jurisdiction.includes('非民用气价修改')
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
console.log('有无气价权限', res)
|
|
871
|
+
return res
|
|
872
|
+
},
|
|
873
|
+
|
|
874
|
+
getPricenames () {
|
|
875
|
+
let f_filialeid = this.f_filialeid
|
|
876
|
+
let result = []
|
|
877
|
+
this.$GetSaleParam.prices.forEach((item) => {
|
|
878
|
+
if (item.f_state === '有效' && f_filialeid == item.f_filialeid) {
|
|
879
|
+
let value = {
|
|
880
|
+
label: item.f_price_name,
|
|
881
|
+
value: item
|
|
882
|
+
}
|
|
883
|
+
result.push(value)
|
|
884
|
+
}
|
|
885
|
+
})
|
|
886
|
+
return Array.from(new Set(result))
|
|
887
|
+
},
|
|
888
|
+
|
|
889
|
+
adjustables () {
|
|
890
|
+
let arr = []
|
|
891
|
+
let filter = this.f_filialeid
|
|
892
|
+
this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
|
|
893
|
+
let temp = {}
|
|
894
|
+
temp.label = `[${item.value.f_adjustable_id}]-${item.label}`
|
|
895
|
+
temp.value = item.value
|
|
896
|
+
arr.push(temp)
|
|
897
|
+
})
|
|
898
|
+
return [{label: '全部', value: ''}, ...arr]
|
|
899
|
+
},
|
|
900
|
+
inputtores () {
|
|
901
|
+
// return this.$login.f.f_gasman
|
|
902
|
+
let rs = new Array()
|
|
903
|
+
for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
|
|
904
|
+
let temp = {
|
|
905
|
+
label: this.$login.f.f_gasman[i].name,
|
|
906
|
+
value: this.$login.f.f_gasman[i].name
|
|
907
|
+
}
|
|
908
|
+
rs.push(temp)
|
|
909
|
+
}
|
|
910
|
+
return rs
|
|
911
|
+
},
|
|
912
|
+
installperson () {
|
|
913
|
+
// return this.$login.f.f_installman
|
|
914
|
+
let rs = new Array()
|
|
915
|
+
for (let i = 0; i < this.$login.f.f_installman.length; i++) {
|
|
916
|
+
let temp = {
|
|
917
|
+
label: this.$login.f.f_installman[i].name,
|
|
918
|
+
value: this.$login.f.f_installman[i].name
|
|
919
|
+
}
|
|
920
|
+
rs.push(temp)
|
|
921
|
+
}
|
|
922
|
+
return rs
|
|
923
|
+
},
|
|
924
|
+
meterbrands () {
|
|
925
|
+
return this.$GetSaleParam.getGasbrand()
|
|
926
|
+
},
|
|
927
|
+
aroundmeters () {
|
|
928
|
+
return this.$appdata.getParam('左右表')
|
|
929
|
+
},
|
|
930
|
+
positions () {
|
|
931
|
+
return this.$appdata.getParam('安装位置')
|
|
932
|
+
},
|
|
933
|
+
bqfstates () {
|
|
934
|
+
return this.$appdata.getParam('表前阀状态')
|
|
935
|
+
},
|
|
936
|
+
usetype () {
|
|
937
|
+
return this.$appdata.getParam('使用类型')
|
|
938
|
+
},
|
|
939
|
+
usestate () {
|
|
940
|
+
return this.$appdata.getParam('使用状态')
|
|
941
|
+
},
|
|
942
|
+
gongyetype () {
|
|
943
|
+
return this.$appdata.getParam('工业备注')
|
|
944
|
+
},
|
|
945
|
+
flowmeterbrands () {
|
|
946
|
+
let gasbrand = this.$GetSaleParam.getGasbrand()
|
|
947
|
+
let flowmeterbrands = []
|
|
948
|
+
for (let row of gasbrand) {
|
|
949
|
+
flowmeterbrands.push({label: row.label, value: row.label})
|
|
950
|
+
}
|
|
951
|
+
return flowmeterbrands
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
}
|
|
955
|
+
</script>
|
|
956
|
+
<style lang="less">
|
|
957
|
+
#meterInfoTest{
|
|
958
|
+
#addboxmap {
|
|
959
|
+
height: 300px;
|
|
960
|
+
}
|
|
961
|
+
.glyphicon-map-marker:hover {
|
|
962
|
+
color: red;
|
|
963
|
+
}
|
|
964
|
+
.glyphicon-map-marker {
|
|
965
|
+
color: blue;
|
|
966
|
+
cursor: pointer;
|
|
967
|
+
}
|
|
968
|
+
.col-sm-4 {
|
|
969
|
+
.font_normal_body {
|
|
970
|
+
width: 73px;
|
|
971
|
+
overflow: auto;
|
|
972
|
+
white-space: nowrap;
|
|
973
|
+
// 指滚动条两边的按钮
|
|
974
|
+
&::-webkit-scrollbar-button {
|
|
975
|
+
display: none;
|
|
976
|
+
}
|
|
977
|
+
// 滚动条的宽度
|
|
978
|
+
&::-webkit-scrollbar {
|
|
979
|
+
width: 5px !important;
|
|
980
|
+
height: 5px !important;
|
|
981
|
+
}
|
|
982
|
+
// 滚动条的设置
|
|
983
|
+
&::-webkit-scrollbar-thumb {
|
|
984
|
+
background-color: #ddd;
|
|
985
|
+
background-clip: padding-box;
|
|
986
|
+
}
|
|
987
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
988
|
+
background-color: #bbb;
|
|
989
|
+
}
|
|
990
|
+
&::-webkit-scrollbar-track {
|
|
991
|
+
/*滚动条里面轨道*/
|
|
992
|
+
box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
|
|
993
|
+
background: #ededed;
|
|
994
|
+
}
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
}
|
|
998
|
+
</style>
|
|
@@ -10,4 +10,6 @@ export default function () {
|
|
|
10
10
|
Vue.component('file-user-files-new', (resolve) => { require(['./FilesManageNew/FileUserFiles'], resolve) })
|
|
11
11
|
// 表具查询(物联网)
|
|
12
12
|
Vue.component('new-meter-list', (resolve) => { require(['./NewMeterList'], resolve) })
|
|
13
|
+
// 单个表具信息
|
|
14
|
+
Vue.component('file-meter-info', (resolve) => { require(['./FilesManage/MeterinfoTest'], resolve) })
|
|
13
15
|
}
|
|
@@ -116,7 +116,18 @@
|
|
|
116
116
|
condition="f_receive_date <= '{}'">
|
|
117
117
|
</datepicker>
|
|
118
118
|
</div>
|
|
119
|
-
|
|
119
|
+
<div :class="$parent.$parent.styles" >
|
|
120
|
+
<label class="font_normal_body">表通道类型</label>
|
|
121
|
+
<v-select
|
|
122
|
+
placeholder='表通道类型'
|
|
123
|
+
:value.sync="model.f_iot_type"
|
|
124
|
+
style="width:60%"
|
|
125
|
+
v-model="model.f_iot_type"
|
|
126
|
+
:options='$parent.$parent.iottypes'
|
|
127
|
+
close-on-select
|
|
128
|
+
condition="f_iot_type='{}'">
|
|
129
|
+
</v-select>
|
|
130
|
+
</div>
|
|
120
131
|
</div>
|
|
121
132
|
</div>
|
|
122
133
|
</div>
|
|
@@ -223,6 +234,7 @@ export default {
|
|
|
223
234
|
meterbrand: [],
|
|
224
235
|
azstate: [{label: '全部', value: ''}, {label: '已安装', value: '已安装'}, {label: '未安装', value: '未安装'}],
|
|
225
236
|
isreceived:[{label: '全部', value: ''}, {label: '已领用', value: '是'}, {label: '未领用', value: '否'}],
|
|
237
|
+
iottypes: this.$appdata.getParam('表通道类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('表通道类型')] : [],
|
|
226
238
|
has_admin_permission: false,
|
|
227
239
|
has_sh_permission: false,
|
|
228
240
|
jurisdiction: this.$login.r,
|
|
@@ -122,6 +122,8 @@ let FileManageService = {
|
|
|
122
122
|
meter.f_card_id = meter.f_card_id ? meter.f_card_id : null
|
|
123
123
|
// 宝乐报警器编号
|
|
124
124
|
meter.f_alarm_number = meter.f_alarm_number ? meter.f_alarm_number : null
|
|
125
|
+
// 安城表前阀状态
|
|
126
|
+
meter.f_bqf_state = meter.f_bqf_state.length > 0 ? meter.f_bqf_state[0] : null
|
|
125
127
|
// meter.f_aroundmeter = meter.f_aroundmeter.length > 0 ? meter.f_aroundmeter[0] : null
|
|
126
128
|
// meter.f_garbage_fee = meter.f_garbage_fee.length > 0 ? meter.f_garbage_fee[0] : '否'
|
|
127
129
|
while (true) {
|