sale-client 3.6.292 → 3.6.293

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sale-client",
3
- "version": "3.6.292",
3
+ "version": "3.6.293",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -1,581 +1,581 @@
1
- <template>
2
- <div class="auto">
3
- <validator name='m' @valid="mValid(true)" @invalid="mValid(false)">
4
- <form class="form-horizontal select-overspread ">
5
- <div class="row">
6
- <div class="col-sm-4 form-group" :class="[$m.f_meternumber.required ? 'has-error' : '']">
7
- <label for="f_meternumber" class="font_normal_body">&ensp;表&emsp;&emsp;号</label>
8
- <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber" :disabled="!jurisdiction.includes('档案信息查询修改')"
9
- @blur="meternumberValidate()" placeholder='表号' v-validate:f_meternumber='{required: true }'
10
- v-next-el="{id: 'metertitles'}">
11
- </div>
12
- <div class="col-sm-4 form-group">
13
- <label for="f_metertitles" class="font_normal_body">&ensp;表&ensp;箱&ensp;号</label>
14
- <input type="text" class="input_search" style="width:60%" v-model="row.f_metertitles" placeholder='表箱号'
15
- v-next-el="{id: 'meterbase'}" :disabled="!jurisdiction.includes('档案信息查询修改')">
16
- </div>
17
- <div class="col-sm-4 form-group">
18
- <label for="f_meter_base" class="font_normal_body">&ensp;表&ensp;读&ensp;数</label>
19
- <input type="number" class="input_search" style="width:60%" v-model="row.f_meter_base" placeholder='表底数'
20
- :disabled="!jurisdiction.includes('档案信息查询修改')" :readonly="!row.f_userfiles_id">
21
- </div>
22
- <div class="col-sm-4 form-group">
23
- <label for="f_meter_base" class="font_normal_body">&ensp;初始底数</label>
24
- <input type="number" class="input_search" style="width:60%" v-model="row.f_initial_base" placeholder='表底数'
25
- :disabled="!jurisdiction.includes('档案信息查询修改')">
26
- </div>
27
-
28
- <div class="col-sm-4 form-group" :class="[$m.brand.required ? 'has-error' : '']">
29
- <label for="gasbrand" class="font_normal_body">*气表品牌</label>
30
- <input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
31
- v-validate:brand='{required: true }'>
32
- <v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
33
- :disabled="!jurisdiction.includes('档案信息查询修改')" search @change='brandChange' v-model='row.gasbrand' v-ref:brand></v-select>
34
- </div>
35
- <div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
36
- <label for="gasmodel" class="font_normal_body">*气表型号</label>
37
- <input type="text" v-show="false" v-model="$refs.model.selectedItems"
38
- v-validate:model='{required: true }'>
39
- <v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
40
- close-on-select :disabled="!jurisdiction.includes('档案信息查询修改')"
41
- v-model='row.gasmodel' :disabled='row.gasbrand.length === 0 ' v-ref:model></v-select>
42
- </div>
43
- <div class="col-sm-4 form-group" :class="[$m.name.required ? 'has-error' : '']">
44
- <label for="pricename" class="font_normal_body">*气价名称</label>
45
- <v-select :value.sync="row.pricename" v-model="row.pricename" search :disabled="!jurisdiction.includes('档案信息查询修改')"
46
- placeholder='气价名称' :options="getPricenames" @change="priceChange"
47
- close-on-select :disabled="permissionPrice" v-ref:name></v-select>
48
- <input type="text" v-show="false" v-model="$refs.name.selectedItems" v-validate:name='{required: true }'>
49
- </div>
50
- <div class="col-sm-4 form-group">
51
- <label for="f_username" class="font_normal_body">&ensp;客户类型</label>
52
- <v-select :value.sync="row.f_user_type"
53
- :options='usertypes' placeholder='客户类型'
54
- @change="userTypeChange()"
55
- :disabled="true"
56
- close-on-select></v-select>
57
- </div>
58
- <div class="col-sm-4 form-group"
59
- :class="[$m.gas.required ? 'select-error' : '']">
60
- <label for="f_username" class="font_normal_body">&ensp;用气性质</label>
61
- <input type="text" v-show="false" v-model="$refs.gas.selectedItems" v-validate:gas='{required: true }'>
62
- <v-select :value.sync="row.f_gasproperties" v-model="row.f_gasproperties"
63
- :options='gasproperties' placeholder='用气性质'
64
- :disabled="true"
65
- close-on-select v-ref:gas></v-select>
66
- </div>
67
- <div class="col-sm-4 form-group">
68
- <label for="f_detailprice" class="font_normal_body">&ensp;价&emsp;&emsp;格</label>
69
- <input type="text" class="input_search" style="width:60%" v-model="row.f_detailprice" placeholder='价格'
70
- disabled>
71
- </div>
72
- <div class="col-sm-4 form-group" :class="[$m.type.required ? 'select-error' : '']">
73
- <label for="pricetype" class="font_normal_body">&ensp;气价类型</label>
74
- <v-select :value.sync="row.pricetype" v-model="row.pricetype"
75
- placeholder='气价类型' :options="pricetypes"
76
- :value-single="true"
77
- :disabled="true"
78
- close-on-select v-ref:type>
79
- </v-select>
80
- <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
81
- </div>
82
-
83
- <div class="col-sm-4 form-group">
84
- <label for="f_meter_base" class="font_normal_body">&ensp;累购气量</label>
85
- <input type="number" class="input_search" style="width:60%" v-model="row.f_total_gas" placeholder='累购气量'
86
- :disabled="!jurisdiction.includes('档案信息查询修改')">
87
- </div>
88
-
89
- <div class="col-sm-4 form-group">
90
- <label for="f_meter_base" class="font_normal_body">&ensp;累购金额</label>
91
- <input type="number" class="input_search" style="width:60%" v-model="row.f_total_fee" placeholder='累购金额'
92
- :disabled="!jurisdiction.includes('档案信息查询修改')">
93
- </div>
94
- <!--<div class="row">-->
95
- <!--<div class="col-sm-12" style="margin-top: -10px">-->
96
- <!--<label for="f_userfiles_address" class="font_normal_body">安装地址</label>-->
97
- <!--<input type="text" class="input_search" style="width:60%" v-model="row.f_userfiles_address" placeholder='安装地址'>-->
98
- <!--</div>-->
99
- <!--</div>-->
100
-
101
- <div class="col-sm-4 form-group">
102
- <label for="gasmodel" class="font_normal_body">&ensp;表&ensp;&ensp;&ensp;&ensp;向</label>
103
- <v-select :value.sync="row.f_aroundmeter" :options='aroundmeters' placeholder='左右表'
104
- close-on-select :value-single="true"
105
- :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_aroundmeter'></v-select>
106
- </div>
107
- <div class="col-sm-4 form-group">
108
- <label for="f_gas_person" class="font_normal_body">&ensp;通&ensp;气&ensp;人</label>
109
- <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_gas_person"
110
- :disabled="!jurisdiction.includes('档案信息查询修改')" placeholder='通气人'></input>
111
- <!-- <v-select :value.sync="row.f_gas_person" v-model="row.f_gas_person"
112
- :options='gasperson' placeholder='通气人'
113
- close-on-select></v-select> -->
114
- </div>
115
- <div class="col-sm-4 form-group">
116
- <label for="f_gas_date" class="font_normal_body">&ensp;通气日期</label>
117
- <datepicker style="width:60%" placeholder="通气日期" :disabled="!jurisdiction.includes('档案信息查询修改')"
118
- v-model="row.f_gas_date"
119
- :value.sync="row.f_gas_date"
120
- :format="'yyyy-MM-dd HH:mm:ss'"
121
- ></datepicker>
122
- </div>
123
- <div class="col-sm-4 form-group">
124
- <label for="f_gas_date" class="font_normal_body">&ensp;生产日期</label>
125
- <datepicker style="width:60%" placeholder="生产日期" :disabled="!jurisdiction.includes('档案信息查询修改')"
126
- v-model="row.f_llj_date"
127
- :value.sync="row.f_llj_date"
128
- :format="'yyyy-MM-dd HH:mm:ss'"
129
- ></datepicker>
130
- </div>
131
-
132
- <div class="col-sm-4 form-group" >
133
- <label for="f_position" class="font_normal_body" title="参数:安装位置">&ensp;安装位置</label>
134
- <v-select :value.sync="row.f_position" v-model="row.f_position"
135
- :options='positions' placeholder='安装位置' :disabled="!jurisdiction.includes('档案信息查询修改')"
136
- close-on-select></v-select>
137
- </div>
138
- <div class="col-sm-4 form-group" v-show="false">
139
- <label for="f_remanent_gas" class="font_normal_body">剩余气量</label>
140
- <input type="number" class="input_search" style="width:60%" style="width:60%" v-model="row.f_remanent_gas"
141
- placeholder='剩余气量' :disabled="!jurisdiction.includes('档案信息查询修改')"
142
- :disabled="f_userinfo_id"></input>
143
- <!--<button type="button" name="button" class="btn btn-link" @click="modefiy('f_remanent_gas')" v-if="f_userinfo_id">修改</button>-->
144
- </div>
145
- <div class="col-sm-4 form-group" v-show="true">
146
- <label for="f_install_person" class="font_normal_body">&ensp;安&ensp;装&ensp;人</label>
147
- <v-select :value.sync="row.f_install_person" v-model="row.f_install_person"
148
- :options='installperson' placeholder='安装人' :disabled="!jurisdiction.includes('档案信息查询修改')"
149
- close-on-select></v-select>
150
- </div>
151
- <div class="col-sm-4 form-group">
152
- <label for="f_subscribe_date" class="font_normal_body">&ensp;预约时间</label>
153
- <datepicker style="width:60%" placeholder="预约通气时间"
154
- v-model="row.f_subscribe_date" :disabled="!jurisdiction.includes('档案信息查询修改')"
155
- :value.sync="row.f_subscribe_date"
156
- :format="'yyyy-MM-dd HH:mm:ss'"
157
- ></datepicker>
158
- </div>
159
- <div class="col-sm-4 form-group" v-show="opteratormetrbook" >
160
- <label for="f_position" class="font_normal_body" >&ensp;抄&ensp;表&ensp;册</label>
161
- <v-select :value.sync="row.f_meter_book_num" v-model="row.f_meter_book_num"
162
- :value-single="true" :disabled="!jurisdiction.includes('档案信息查询修改')"
163
- :options='meterbookoptions' placeholder='抄表册'
164
- close-on-select></v-select>
165
- </div>
166
- <div class="col-sm-4 form-group" v-show="true">
167
- <label for="f_install_date" class="font_normal_body">&ensp;安装日期</label>
168
- <datepicker style="width:60%" id="startDate" placeholder="安装日期" width='100%'
169
- v-model="row.f_install_date"
170
- :value.sync="row.f_install_date"
171
- class="datepicker" :disabled="!jurisdiction.includes('档案信息查询修改')"
172
- :format="'yyyy-MM-dd HH:mm:ss'"
173
- :show-reset-button="true">
174
- </datepicker>
175
- </div>
176
- <div class="col-sm-4 form-group">
177
- <label for="f_adjustable" class="font_normal_body">&ensp;调&ensp;压&ensp;箱</label>
178
- <v-select :value.sync="row.f_adjustable" :options='adjustables' placeholder='调压箱' close-on-select
179
- :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_adjustable' :search='true'></v-select>
180
- </div>
181
- <div class="col-sm-4 form-group">
182
- <label for="f_hand_date" class="font_normal_body">&ensp;上次抄表</label>
183
- <datepicker style="width:60%" id="f_hand_date" placeholder="上次抄表日期"
184
- v-model="row.f_hand_date" :disabled="!jurisdiction.includes('档案信息查询修改')"
185
- :value.sync="row.f_hand_date"
186
- class="datepicker"
187
- :format="'yyyy-MM-dd HH:mm:ss'"
188
- :show-reset-button="true">
189
- </datepicker>
190
- </div>
191
- <div v-if="ratioshow" class="col-sm-4 form-group"
192
- :class="[$m.meternumber.required ? 'has-error' : '']">
193
- <label for="f_ratio" class="font_normal_body">比&emsp;&emsp;率</label>
194
- <input type="number" class="input_search" style="width:60%" style="width:60%" v-model="row.f_price_ratio"
195
- :value.sync="row.f_price_ratio" :disabled="!jurisdiction.includes('档案信息查询修改')"
196
- v-validate:meternumber='{required: true }' placeholder='比率'>
197
- </div>
198
- <div class="col-sm-4 form-group" >
199
- <label for="f_scrap_date" class="font_normal_body">&ensp;报废日期</label>
200
- <datepicker style="width:60%" id="ScrapDate" placeholder="报废日期" width='100%'
201
- v-model="row.f_scrap_date"
202
- :value.sync="row.f_scrap_date"
203
- class="datepicker" :disabled="!jurisdiction.includes('档案信息查询修改')"
204
- :format="'yyyy-MM-dd'"
205
- :show-reset-button="true">
206
- </datepicker>
207
- </div>
208
- <div class="col-sm-4 form-group">
209
- <label for="gasmodel" class="font_normal_body">&ensp;阀门状态</label>
210
- <v-select :value.sync="row.f_valve_state" :options='valvestate' placeholder='阀门状态' close-on-select
211
- :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_valve_state'></v-select>
212
- </div>
213
- <div class="col-sm-4 form-group">
214
- <label for="gasmodel" class="font_normal_body">&ensp;垃&ensp;圾&ensp;费</label>
215
- <v-select :value.sync="row.f_garbage_fee" :options='garbagefee' placeholder='垃圾费' close-on-select
216
- :value-single="true" :disabled="!jurisdiction.includes('档案信息查询修改')"
217
- v-model='row.f_garbage_fee'></v-select>
218
- </div>
219
- <div class="col-sm-4 form-group">
220
- <label class="font_normal_body">&ensp;抄&ensp;表&ensp;员</label>
221
- <v-select :value.sync="row.f_inputtor" v-model='row.f_inputtor'
222
- style="width:60%" :disabled="!jurisdiction.includes('档案信息查询修改')"
223
- :options='inputtores' placeholder='抄表员'
224
- close-on-select
225
- condition="f_inputtor like '%{}%'" v-el:cc></v-select>
226
- </div>
227
- <div class="col-sm-4 form-group" >
228
- <label for="f_usetype" class="font_normal_body" title="参数:使用类型">&ensp;使用类型</label>
229
- <v-select :value.sync="row.f_usetype" v-model="row.f_usetype"
230
- :options='usetype' placeholder='使用类型' :disabled="!jurisdiction.includes('档案信息查询修改')"
231
- close-on-select></v-select>
232
- </div>
233
- <div class="col-sm-4 form-group" >
234
- <label for="f_position" class="font_normal_body" title="参数:使用状态">&ensp;使用状态</label>
235
- <v-select :value.sync="row.f_usestate" v-model="row.f_usestate"
236
- :options='usestate' placeholder='使用状态' :disabled="!jurisdiction.includes('档案信息查询修改')"
237
- close-on-select></v-select>
238
- </div>
239
- <div class="col-sm-4 form-group" v-show="row.f_gasproperties=='工业用气'">
240
- <label for="f_gongye_type" class="font_normal_body">&ensp;用气类型</label>
241
- <v-select :value.sync="row.f_gongye_type" v-model='row.f_gongye_type'
242
- style="width:60%" :disabled="!jurisdiction.includes('档案信息查询修改')"
243
- :options='gongyetype' placeholder='工业类型'
244
- close-on-select
245
- v-el:cc></v-select>
246
- </div>
247
- <div class="col-sm-4 form-group" >
248
- <label for="f_limit_sms" class="font_normal_body">&ensp;短信限定</label>
249
- <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_limit_sms"
250
- :disabled="!jurisdiction.includes('档案信息查询修改')" placeholder='短信限定'></input>
251
- </div>
252
- <div style="" class="col-sm-8 form-group">
253
- <label for="f_userfiles_address" class="font_normal_body ">安装地址&nbsp;</label>
254
- <input class="input_search" style="width:80%" v-model="row.f_userfiles_address" :disabled="!jurisdiction.includes('档案信息查询修改')"/>
255
- </div>
256
- </div>
257
- </form>
258
- </validator>
259
- <!--<idverify :show.sync="show" @change-con="changeVal"></idverify>-->
260
- <modal v-if="showParame" :show.sync="showParame" v-ref:modal backdrop="false">
261
- <header slot="modal-header" class="modal-header">
262
- <button type="button" class="close" @click="cancel"><span>&times;</span></button>
263
- <h3 class="modal-title" style="text-align: center;">添加参数</h3>
264
- </header>
265
- <article slot="modal-body" class="modal-body">
266
- <add-json-parameter v-ref:addparamlist :gasmodel_id="userfileid" :gastype="gastype"
267
- :gasid="gasid"></add-json-parameter>
268
- </article>
269
- <footer slot="modal-footer" class="modal-footer">
270
- <button type="button" class="btn btn-primary" @click='confirmUserfiles()'>确认</button>
271
- </footer>
272
- </modal>
273
- </div>
274
- </template>
275
-
276
- <script>
277
- import co from 'co'
278
- import {HttpResetClass} from 'vue-client'
279
- import Vue from 'vue'
280
-
281
- let meterBookGen = function *(self) {
282
- let temp = {
283
- tablename: 't_meter_book',
284
- condition: `f_book_state='有效' and f_filiale_id='${self.f_filialeid}'`
285
- }
286
- let http = new HttpResetClass()
287
- let meterbooks = yield http.load('POST', 'rs/sql/saleSingleTable', {data: temp},
288
- {resolveMsg: null, rejectMsg: '获取抄表册信息失败!!'})
289
- if (meterbooks.data.length > 0) {
290
- let options = []
291
- for (let i = 0; i < meterbooks.data.length; i++) {
292
- let tmp = {label: meterbooks.data[i].f_book_name, value: meterbooks.data[i].id}
293
- options.push(tmp)
294
- }
295
- self.meterbookoptions = options
296
- }
297
- if (self.$login.r.find(value => value == '抄表册建档')) {
298
- self.opteratormetrbook = true
299
- }
300
- }
301
- let brandChangeGen = function* (self, val) {
302
- let beforeRecord = null
303
-
304
- if (self.meter.f_meter_classify === '机表') {
305
- beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
306
- data: {
307
- tablename: 't_handplan',
308
- condition: `f_user_id = '${self.row.f_user_id}' and f_meter_state in ('已抄表','未抄表')`
309
- }
310
- }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
311
- } else {
312
- beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
313
- data: {
314
- tablename: 't_sellinggas',
315
- condition: `f_user_id = '${self.row.f_user_id}' and f_state = '有效'`
316
- }
317
- }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前卡表收费信息出错!!'})
318
- }
319
- if (beforeRecord.data.length > 0 && self.row.gasbrand[0].f_meter_brand != self.oldrow.gasbrand[0].f_meter_brand) {
320
- self.$showAlert('该气表已投入使用,如需更改请执行换表操作', 'warning', 3000)
321
- // self.row.gasbrand = self.meter.gasbrand
322
- self.$dispatch('success')
323
- /* self.row.valid = bool
324
- self.$dispatch('self-valid') */
325
- } else {
326
- self.row.f_whether_hairpin = self.row.gasbrand[0].f_meter_type === '机表' ? '无卡' : '未发'
327
- }
328
- console.log('111', self.row)
329
- }
330
- export default {
331
- title: '表具信息',
332
- data () {
333
- return {
334
- viewsee: false,
335
- row: this.meter,
336
- show: false,
337
- field: '',
338
- ratioshow: false,
339
- userfileid: '',
340
- gasid: '',
341
- gastype: 'userfiles',
342
- showParame: false,
343
- selectUserFiles: '', // 选中的 userfiles
344
- jurisdiction: this.$login.r,
345
- positions: this.$appdata.getParam('安装位置'),
346
- usetype: this.$appdata.getParam('使用类型'),
347
- usestate: this.$appdata.getParam('使用状态'),
348
- aroundmeters: this.$appdata.getParam('左右表'),
349
- garbagefee: this.$appdata.getParam('垃圾费'),
350
- valvestate: this.$appdata.getParam('阀门状态'),
351
- usertypes: this.$appdata.getParam('用户类型'),
352
- gasproperties: this.meter.f_user_type.length === 1 ? this.$appdata.getParam(this.meter.f_user_type[0]) : [],
353
- pricetypes: this.$appdata.getParam('气价类型'),
354
- meterbookoptions: [], // 抄表册选项
355
- opteratormetrbook: false, // 抄表册操作
356
- oldrow: []
357
- }
358
- },
359
- props: ['f_filialeid', 'meter', 'isdecimal', 'valid', 'f_userinfo_id'],
360
- ready () {
361
- console.log('看看meter里面的数据', this.meter, this.row)
362
- this.row = Object.assign(this.row, this.meter, {})
363
- this.oldrow = this.row
364
- this.isdecimal = this.row.gasbrand.length > 0 ? this.row.gasbrand.f_isdecimal : '否'
365
- this.row.valid = false
366
- this.row.f_aroundmeter = '左表'
367
- if (this.row.pricetype === '混合气价') {
368
- this.ratioshow = true
369
- }
370
- co(meterBookGen(this))
371
- },
372
- methods: {
373
- async confirmUserfiles () {
374
- if (this.$refs.addparamlist.confirm()) {
375
- var paramlist = this.$refs.addparamlist.addGasParameter
376
- await this.$resetpost('rs/logic/updateGasParam', {
377
- data: {
378
- id: this.selectUserFiles.f_user_id,
379
- paramlist: paramlist,
380
- gastype: 'userfiles'
381
- }
382
- }, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
383
- this.showParame = false
384
- }
385
- },
386
-
387
- priceChange (val) {
388
- if (val.length > 0) {
389
- this.row.f_user_type = [val[0].f_user_type]
390
- this.row.f_gasproperties = [val[0].f_gasproperties]
391
- this.row.pricetype = val[0].f_price_type
392
- // 展示价格明细
393
- if (val[0].detailprice) {
394
- // this.row.f_detailprice = this.$CommonService.getShowPriceDetail(val[0].detailprice)
395
- this.$set('row.f_detailprice', this.$CommonService.getShowPriceDetail(val[0].detailprice))
396
- }
397
- }
398
- },
399
- cancel () {
400
- this.gasid = ''
401
- this.userfileid = ''
402
- this.showParame = false
403
- },
404
- tablebaseChange () {
405
- if (this.isdecimal === '是') {
406
- this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(4))
407
- } else {
408
- this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(0))
409
- }
410
- },
411
- brandChange (val) {
412
- this.isdecimal = val.length > 0 ? val[0].f_isdecimal : '否'
413
- // this.tablebaseChange()
414
- if (this.row.f_user_id) {
415
- co(brandChangeGen(this))
416
- }
417
- this.meternumberValidate()
418
- },
419
- userTypeChange () {
420
- this.gasproperties = []
421
- if (this.row.f_user_type.length === 1) {
422
- this.gasproperties = this.$appdata.getParam(this.row.f_user_type[0])
423
- }
424
- },
425
- // getPricenames(pricetype) {
426
- // console.log('气价。,。。', pricetype, this.row.f_user_type, this.row.f_gasproperties)
427
- // let rs = []
428
- // if (this.row.f_user_type.length === 1 && this.row.f_gasproperties.length === 1 && pricetype.length === 1) {
429
- // let params = {
430
- // f_user_type: this.row.f_user_type[0],
431
- // f_gasproperties: this.row.f_gasproperties[0],
432
- // f_price_type: pricetype[0],
433
- // filter: this.f_filialeid
434
- // }
435
- // rs = this.$GetSaleParam.getPrice(params)
436
- // }
437
- // if (rs.length === 0) {
438
- // this.row.f_price_name = ''
439
- // }
440
- // return rs
441
- // },
442
- mValid (bool) {
443
- this.row.valid = bool
444
- this.$dispatch('self-valid')
445
- },
446
- // 带权限修改单值返回修改后得值和修改原因
447
- modefiy (field) {
448
- this.show = true
449
- this.field = field
450
- },
451
- async meternumberValidate () {
452
- // 验证表号
453
- if (this.row.f_meternumber && this.row.gasbrand.length > 0) {
454
- if (this.row.gasbrand[0].f_meter_type === '物联网表') {
455
- let param = {
456
- f_meternumber: this.row.f_meternumber,
457
- f_gasbrand_id: this.row.gasbrand[0].id
458
- }
459
- if (this.row.f_userfiles_id) {
460
- param.f_userfiles_id = this.row.f_userfiles_id
461
- }
462
- let res = await this.$resetpost('rs/logic/meternumberValidate', param, {
463
- resolveMsg: null,
464
- rejectMsg: '表号验证失败!!'
465
- })
466
- console.log('标号验证返回:', res)
467
- if (res.data) {
468
- this.row.f_meternumber = ''
469
- this.$showAlert('表号已存在!!', 'warning', 3000)
470
- }
471
- }
472
- }
473
- }
474
- },
475
- watch: {
476
- 'meter' () {
477
- this.row = Object.assign(this.row, this.meter, {})
478
- this.isdecimal = this.row.gasbrand.f_isdecimal
479
- this.row.valid = false
480
- this.showtype = this.row.gasbrand.f_meter_type
481
- },
482
- 'row.pricetype' (val) {
483
- if (val == '混合气价') {
484
- this.ratioshow = true
485
- } else {
486
- this.ratioshow = false
487
- }
488
- }
489
-
490
- },
491
- computed: {
492
-
493
- // 控制用户类型修改
494
- permissionUserType () {
495
- let res = false
496
- if (this.row.f_user_id) {
497
- res = !(this.jurisdiction.includes('民用气价修改') && this.jurisdiction.includes('非民用气价修改'))
498
- }
499
- return res
500
- },
501
-
502
- // 控制用气性质,气价类型,气价名称修改
503
- permissionPrice () {
504
- let res = false
505
- if (this.row.f_user_id) {
506
- console.log('获取权限、', this.row, this.jurisdiction)
507
- // 变更操作
508
- if (this.row.pricename.length > 0) {
509
- if (this.row.f_user_type[0] === '民用') {
510
- // 判断是否有民用气价权限
511
- res = !this.jurisdiction.includes('民用气价修改')
512
- } else if (this.row.f_user_type[0] === '非民用') {
513
- // 判断是否有非民用气价权限
514
- res = !this.jurisdiction.includes('非民用气价修改')
515
- }
516
- }
517
- }
518
- console.log('有无气价权限', res)
519
- return res
520
- },
521
-
522
- getPricenames () {
523
- return this.$GetSaleParam.getPriceByOrg(this.f_filialeid)
524
- },
525
-
526
- adjustables () {
527
- let arr = []
528
- let filter = this.f_filialeid
529
- this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
530
- let temp = {}
531
- temp.label = `[${item.value.f_adjustable_id}]-${item.label}`
532
- temp.value = item.value
533
- arr.push(temp)
534
- })
535
- return [{label: '全部', value: ''}, ...arr]
536
- },
537
- inputtores () {
538
- // return this.$login.f.f_gasman
539
- let rs = new Array()
540
- for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
541
- let temp = {
542
- label: this.$login.f.f_gasman[i].name,
543
- value: this.$login.f.f_gasman[i].name
544
- }
545
- rs.push(temp)
546
- }
547
- return rs
548
- },
549
- installperson () {
550
- // return this.$login.f.f_installman
551
- let rs = new Array()
552
- for (let i = 0; i < this.$login.f.f_installman.length; i++) {
553
- let temp = {
554
- label: this.$login.f.f_installman[i].name,
555
- value: this.$login.f.f_installman[i].name
556
- }
557
- rs.push(temp)
558
- }
559
- return rs
560
- },
561
- meterbrands () {
562
- return this.$GetSaleParam.getGasbrand()
563
- },
564
- aroundmeters () {
565
- return this.$appdata.getParam('左右表')
566
- },
567
- positions () {
568
- return this.$appdata.getParam('安装位置')
569
- },
570
- usetype () {
571
- return this.$appdata.getParam('使用类型')
572
- },
573
- usestate () {
574
- return this.$appdata.getParam('使用状态')
575
- },
576
- gongyetype () {
577
- return this.$appdata.getParam('工业用户用气类型')
578
- }
579
- }
580
- }
581
- </script>
1
+ <template>
2
+ <div class="auto">
3
+ <validator name='m' @valid="mValid(true)" @invalid="mValid(false)">
4
+ <form class="form-horizontal select-overspread ">
5
+ <div class="row">
6
+ <div class="col-sm-4 form-group" :class="[$m.f_meternumber.required ? 'has-error' : '']">
7
+ <label for="f_meternumber" class="font_normal_body">&ensp;表&emsp;&emsp;号</label>
8
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_meternumber" :disabled="(!jurisdiction.includes('档案信息查询修改'))||(row.f_userfiles_id && row.gasbrand[0].f_meter_type==='物联网表')"
9
+ @blur="meternumberValidate()" placeholder='表号' v-validate:f_meternumber='{required: true }'
10
+ v-next-el="{id: 'metertitles'}">
11
+ </div>
12
+ <div class="col-sm-4 form-group">
13
+ <label for="f_metertitles" class="font_normal_body">&ensp;表&ensp;箱&ensp;号</label>
14
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_metertitles" placeholder='表箱号'
15
+ v-next-el="{id: 'meterbase'}" :disabled="!jurisdiction.includes('档案信息查询修改')">
16
+ </div>
17
+ <div class="col-sm-4 form-group">
18
+ <label for="f_meter_base" class="font_normal_body">&ensp;表&ensp;读&ensp;数</label>
19
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_meter_base" placeholder='表底数'
20
+ :disabled="!jurisdiction.includes('档案信息查询修改')" :readonly="!row.f_userfiles_id">
21
+ </div>
22
+ <div class="col-sm-4 form-group">
23
+ <label for="f_meter_base" class="font_normal_body">&ensp;初始底数</label>
24
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_initial_base" placeholder='表底数'
25
+ :disabled="!jurisdiction.includes('档案信息查询修改')">
26
+ </div>
27
+
28
+ <div class="col-sm-4 form-group" :class="[$m.brand.required ? 'has-error' : '']">
29
+ <label for="gasbrand" class="font_normal_body">*气表品牌</label>
30
+ <input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
31
+ v-validate:brand='{required: true }'>
32
+ <v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
33
+ :disabled="!jurisdiction.includes('档案信息查询修改')" search @change='brandChange' v-model='row.gasbrand' v-ref:brand></v-select>
34
+ </div>
35
+ <div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
36
+ <label for="gasmodel" class="font_normal_body">*气表型号</label>
37
+ <input type="text" v-show="false" v-model="$refs.model.selectedItems"
38
+ v-validate:model='{required: true }'>
39
+ <v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
40
+ close-on-select :disabled="!jurisdiction.includes('档案信息查询修改')"
41
+ v-model='row.gasmodel' :disabled='row.gasbrand.length === 0 ' v-ref:model></v-select>
42
+ </div>
43
+ <div class="col-sm-4 form-group" :class="[$m.name.required ? 'has-error' : '']">
44
+ <label for="pricename" class="font_normal_body">*气价名称</label>
45
+ <v-select :value.sync="row.pricename" v-model="row.pricename" search :disabled="!jurisdiction.includes('档案信息查询修改')"
46
+ placeholder='气价名称' :options="getPricenames" @change="priceChange"
47
+ close-on-select :disabled="permissionPrice" v-ref:name></v-select>
48
+ <input type="text" v-show="false" v-model="$refs.name.selectedItems" v-validate:name='{required: true }'>
49
+ </div>
50
+ <div class="col-sm-4 form-group">
51
+ <label for="f_username" class="font_normal_body">&ensp;客户类型</label>
52
+ <v-select :value.sync="row.f_user_type"
53
+ :options='usertypes' placeholder='客户类型'
54
+ @change="userTypeChange()"
55
+ :disabled="true"
56
+ close-on-select></v-select>
57
+ </div>
58
+ <div class="col-sm-4 form-group"
59
+ :class="[$m.gas.required ? 'select-error' : '']">
60
+ <label for="f_username" class="font_normal_body">&ensp;用气性质</label>
61
+ <input type="text" v-show="false" v-model="$refs.gas.selectedItems" v-validate:gas='{required: true }'>
62
+ <v-select :value.sync="row.f_gasproperties" v-model="row.f_gasproperties"
63
+ :options='gasproperties' placeholder='用气性质'
64
+ :disabled="true"
65
+ close-on-select v-ref:gas></v-select>
66
+ </div>
67
+ <div class="col-sm-4 form-group">
68
+ <label for="f_detailprice" class="font_normal_body">&ensp;价&emsp;&emsp;格</label>
69
+ <input type="text" class="input_search" style="width:60%" v-model="row.f_detailprice" placeholder='价格'
70
+ disabled>
71
+ </div>
72
+ <div class="col-sm-4 form-group" :class="[$m.type.required ? 'select-error' : '']">
73
+ <label for="pricetype" class="font_normal_body">&ensp;气价类型</label>
74
+ <v-select :value.sync="row.pricetype" v-model="row.pricetype"
75
+ placeholder='气价类型' :options="pricetypes"
76
+ :value-single="true"
77
+ :disabled="true"
78
+ close-on-select v-ref:type>
79
+ </v-select>
80
+ <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
81
+ </div>
82
+
83
+ <div class="col-sm-4 form-group">
84
+ <label for="f_meter_base" class="font_normal_body">&ensp;累购气量</label>
85
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_total_gas" placeholder='累购气量'
86
+ :disabled="!jurisdiction.includes('档案信息查询修改')">
87
+ </div>
88
+
89
+ <div class="col-sm-4 form-group">
90
+ <label for="f_meter_base" class="font_normal_body">&ensp;累购金额</label>
91
+ <input type="number" class="input_search" style="width:60%" v-model="row.f_total_fee" placeholder='累购金额'
92
+ :disabled="!jurisdiction.includes('档案信息查询修改')">
93
+ </div>
94
+ <!--<div class="row">-->
95
+ <!--<div class="col-sm-12" style="margin-top: -10px">-->
96
+ <!--<label for="f_userfiles_address" class="font_normal_body">安装地址</label>-->
97
+ <!--<input type="text" class="input_search" style="width:60%" v-model="row.f_userfiles_address" placeholder='安装地址'>-->
98
+ <!--</div>-->
99
+ <!--</div>-->
100
+
101
+ <div class="col-sm-4 form-group">
102
+ <label for="gasmodel" class="font_normal_body">&ensp;表&ensp;&ensp;&ensp;&ensp;向</label>
103
+ <v-select :value.sync="row.f_aroundmeter" :options='aroundmeters' placeholder='左右表'
104
+ close-on-select :value-single="true"
105
+ :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_aroundmeter'></v-select>
106
+ </div>
107
+ <div class="col-sm-4 form-group">
108
+ <label for="f_gas_person" class="font_normal_body">&ensp;通&ensp;气&ensp;人</label>
109
+ <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_gas_person"
110
+ :disabled="!jurisdiction.includes('档案信息查询修改')" placeholder='通气人'></input>
111
+ <!-- <v-select :value.sync="row.f_gas_person" v-model="row.f_gas_person"
112
+ :options='gasperson' placeholder='通气人'
113
+ close-on-select></v-select> -->
114
+ </div>
115
+ <div class="col-sm-4 form-group">
116
+ <label for="f_gas_date" class="font_normal_body">&ensp;通气日期</label>
117
+ <datepicker style="width:60%" placeholder="通气日期" :disabled="!jurisdiction.includes('档案信息查询修改')"
118
+ v-model="row.f_gas_date"
119
+ :value.sync="row.f_gas_date"
120
+ :format="'yyyy-MM-dd HH:mm:ss'"
121
+ ></datepicker>
122
+ </div>
123
+ <div class="col-sm-4 form-group">
124
+ <label for="f_gas_date" class="font_normal_body">&ensp;生产日期</label>
125
+ <datepicker style="width:60%" placeholder="生产日期" :disabled="!jurisdiction.includes('档案信息查询修改')"
126
+ v-model="row.f_llj_date"
127
+ :value.sync="row.f_llj_date"
128
+ :format="'yyyy-MM-dd HH:mm:ss'"
129
+ ></datepicker>
130
+ </div>
131
+
132
+ <div class="col-sm-4 form-group" >
133
+ <label for="f_position" class="font_normal_body" title="参数:安装位置">&ensp;安装位置</label>
134
+ <v-select :value.sync="row.f_position" v-model="row.f_position"
135
+ :options='positions' placeholder='安装位置' :disabled="!jurisdiction.includes('档案信息查询修改')"
136
+ close-on-select></v-select>
137
+ </div>
138
+ <div class="col-sm-4 form-group" v-show="false">
139
+ <label for="f_remanent_gas" class="font_normal_body">剩余气量</label>
140
+ <input type="number" class="input_search" style="width:60%" style="width:60%" v-model="row.f_remanent_gas"
141
+ placeholder='剩余气量' :disabled="!jurisdiction.includes('档案信息查询修改')"
142
+ :disabled="f_userinfo_id"></input>
143
+ <!--<button type="button" name="button" class="btn btn-link" @click="modefiy('f_remanent_gas')" v-if="f_userinfo_id">修改</button>-->
144
+ </div>
145
+ <div class="col-sm-4 form-group" v-show="true">
146
+ <label for="f_install_person" class="font_normal_body">&ensp;安&ensp;装&ensp;人</label>
147
+ <v-select :value.sync="row.f_install_person" v-model="row.f_install_person"
148
+ :options='installperson' placeholder='安装人' :disabled="!jurisdiction.includes('档案信息查询修改')"
149
+ close-on-select></v-select>
150
+ </div>
151
+ <div class="col-sm-4 form-group">
152
+ <label for="f_subscribe_date" class="font_normal_body">&ensp;预约时间</label>
153
+ <datepicker style="width:60%" placeholder="预约通气时间"
154
+ v-model="row.f_subscribe_date" :disabled="!jurisdiction.includes('档案信息查询修改')"
155
+ :value.sync="row.f_subscribe_date"
156
+ :format="'yyyy-MM-dd HH:mm:ss'"
157
+ ></datepicker>
158
+ </div>
159
+ <div class="col-sm-4 form-group" v-show="opteratormetrbook" >
160
+ <label for="f_position" class="font_normal_body" >&ensp;抄&ensp;表&ensp;册</label>
161
+ <v-select :value.sync="row.f_meter_book_num" v-model="row.f_meter_book_num"
162
+ :value-single="true" :disabled="!jurisdiction.includes('档案信息查询修改')"
163
+ :options='meterbookoptions' placeholder='抄表册'
164
+ close-on-select></v-select>
165
+ </div>
166
+ <div class="col-sm-4 form-group" v-show="true">
167
+ <label for="f_install_date" class="font_normal_body">&ensp;安装日期</label>
168
+ <datepicker style="width:60%" id="startDate" placeholder="安装日期" width='100%'
169
+ v-model="row.f_install_date"
170
+ :value.sync="row.f_install_date"
171
+ class="datepicker" :disabled="!jurisdiction.includes('档案信息查询修改')"
172
+ :format="'yyyy-MM-dd HH:mm:ss'"
173
+ :show-reset-button="true">
174
+ </datepicker>
175
+ </div>
176
+ <div class="col-sm-4 form-group">
177
+ <label for="f_adjustable" class="font_normal_body">&ensp;调&ensp;压&ensp;箱</label>
178
+ <v-select :value.sync="row.f_adjustable" :options='adjustables' placeholder='调压箱' close-on-select
179
+ :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_adjustable' :search='true'></v-select>
180
+ </div>
181
+ <div class="col-sm-4 form-group">
182
+ <label for="f_hand_date" class="font_normal_body">&ensp;上次抄表</label>
183
+ <datepicker style="width:60%" id="f_hand_date" placeholder="上次抄表日期"
184
+ v-model="row.f_hand_date" :disabled="!jurisdiction.includes('档案信息查询修改')"
185
+ :value.sync="row.f_hand_date"
186
+ class="datepicker"
187
+ :format="'yyyy-MM-dd HH:mm:ss'"
188
+ :show-reset-button="true">
189
+ </datepicker>
190
+ </div>
191
+ <div v-if="ratioshow" class="col-sm-4 form-group"
192
+ :class="[$m.meternumber.required ? 'has-error' : '']">
193
+ <label for="f_ratio" class="font_normal_body">比&emsp;&emsp;率</label>
194
+ <input type="number" class="input_search" style="width:60%" style="width:60%" v-model="row.f_price_ratio"
195
+ :value.sync="row.f_price_ratio" :disabled="!jurisdiction.includes('档案信息查询修改')"
196
+ v-validate:meternumber='{required: true }' placeholder='比率'>
197
+ </div>
198
+ <div class="col-sm-4 form-group" >
199
+ <label for="f_scrap_date" class="font_normal_body">&ensp;报废日期</label>
200
+ <datepicker style="width:60%" id="ScrapDate" placeholder="报废日期" width='100%'
201
+ v-model="row.f_scrap_date"
202
+ :value.sync="row.f_scrap_date"
203
+ class="datepicker" :disabled="!jurisdiction.includes('档案信息查询修改')"
204
+ :format="'yyyy-MM-dd'"
205
+ :show-reset-button="true">
206
+ </datepicker>
207
+ </div>
208
+ <div class="col-sm-4 form-group">
209
+ <label for="gasmodel" class="font_normal_body">&ensp;阀门状态</label>
210
+ <v-select :value.sync="row.f_valve_state" :options='valvestate' placeholder='阀门状态' close-on-select
211
+ :disabled="!jurisdiction.includes('档案信息查询修改')" v-model='row.f_valve_state'></v-select>
212
+ </div>
213
+ <div class="col-sm-4 form-group">
214
+ <label for="gasmodel" class="font_normal_body">&ensp;垃&ensp;圾&ensp;费</label>
215
+ <v-select :value.sync="row.f_garbage_fee" :options='garbagefee' placeholder='垃圾费' close-on-select
216
+ :value-single="true" :disabled="!jurisdiction.includes('档案信息查询修改')"
217
+ v-model='row.f_garbage_fee'></v-select>
218
+ </div>
219
+ <div class="col-sm-4 form-group">
220
+ <label class="font_normal_body">&ensp;抄&ensp;表&ensp;员</label>
221
+ <v-select :value.sync="row.f_inputtor" v-model='row.f_inputtor'
222
+ style="width:60%" :disabled="!jurisdiction.includes('档案信息查询修改')"
223
+ :options='inputtores' placeholder='抄表员'
224
+ close-on-select
225
+ condition="f_inputtor like '%{}%'" v-el:cc></v-select>
226
+ </div>
227
+ <div class="col-sm-4 form-group" >
228
+ <label for="f_usetype" class="font_normal_body" title="参数:使用类型">&ensp;使用类型</label>
229
+ <v-select :value.sync="row.f_usetype" v-model="row.f_usetype"
230
+ :options='usetype' placeholder='使用类型' :disabled="!jurisdiction.includes('档案信息查询修改')"
231
+ close-on-select></v-select>
232
+ </div>
233
+ <div class="col-sm-4 form-group" >
234
+ <label for="f_position" class="font_normal_body" title="参数:使用状态">&ensp;使用状态</label>
235
+ <v-select :value.sync="row.f_usestate" v-model="row.f_usestate"
236
+ :options='usestate' placeholder='使用状态' :disabled="!jurisdiction.includes('档案信息查询修改')"
237
+ close-on-select></v-select>
238
+ </div>
239
+ <div class="col-sm-4 form-group" v-show="row.f_gasproperties=='工业用气'">
240
+ <label for="f_gongye_type" class="font_normal_body">&ensp;用气类型</label>
241
+ <v-select :value.sync="row.f_gongye_type" v-model='row.f_gongye_type'
242
+ style="width:60%" :disabled="!jurisdiction.includes('档案信息查询修改')"
243
+ :options='gongyetype' placeholder='工业类型'
244
+ close-on-select
245
+ v-el:cc></v-select>
246
+ </div>
247
+ <div class="col-sm-4 form-group" >
248
+ <label for="f_limit_sms" class="font_normal_body">&ensp;短信限定</label>
249
+ <input type="text" class="input_search" style="width:60%" style="width:60%" v-model="row.f_limit_sms"
250
+ :disabled="!jurisdiction.includes('档案信息查询修改')" placeholder='短信限定'></input>
251
+ </div>
252
+ <div style="" class="col-sm-8 form-group">
253
+ <label for="f_userfiles_address" class="font_normal_body ">安装地址&nbsp;</label>
254
+ <input class="input_search" style="width:80%" v-model="row.f_userfiles_address" :disabled="!jurisdiction.includes('档案信息查询修改')"/>
255
+ </div>
256
+ </div>
257
+ </form>
258
+ </validator>
259
+ <!--<idverify :show.sync="show" @change-con="changeVal"></idverify>-->
260
+ <modal v-if="showParame" :show.sync="showParame" v-ref:modal backdrop="false">
261
+ <header slot="modal-header" class="modal-header">
262
+ <button type="button" class="close" @click="cancel"><span>&times;</span></button>
263
+ <h3 class="modal-title" style="text-align: center;">添加参数</h3>
264
+ </header>
265
+ <article slot="modal-body" class="modal-body">
266
+ <add-json-parameter v-ref:addparamlist :gasmodel_id="userfileid" :gastype="gastype"
267
+ :gasid="gasid"></add-json-parameter>
268
+ </article>
269
+ <footer slot="modal-footer" class="modal-footer">
270
+ <button type="button" class="btn btn-primary" @click='confirmUserfiles()'>确认</button>
271
+ </footer>
272
+ </modal>
273
+ </div>
274
+ </template>
275
+
276
+ <script>
277
+ import co from 'co'
278
+ import {HttpResetClass} from 'vue-client'
279
+ import Vue from 'vue'
280
+
281
+ let meterBookGen = function *(self) {
282
+ let temp = {
283
+ tablename: 't_meter_book',
284
+ condition: `f_book_state='有效' and f_filiale_id='${self.f_filialeid}'`
285
+ }
286
+ let http = new HttpResetClass()
287
+ let meterbooks = yield http.load('POST', 'rs/sql/saleSingleTable', {data: temp},
288
+ {resolveMsg: null, rejectMsg: '获取抄表册信息失败!!'})
289
+ if (meterbooks.data.length > 0) {
290
+ let options = []
291
+ for (let i = 0; i < meterbooks.data.length; i++) {
292
+ let tmp = {label: meterbooks.data[i].f_book_name, value: meterbooks.data[i].id}
293
+ options.push(tmp)
294
+ }
295
+ self.meterbookoptions = options
296
+ }
297
+ if (self.$login.r.find(value => value == '抄表册建档')) {
298
+ self.opteratormetrbook = true
299
+ }
300
+ }
301
+ let brandChangeGen = function* (self, val) {
302
+ let beforeRecord = null
303
+
304
+ if (self.meter.f_meter_classify === '机表') {
305
+ beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
306
+ data: {
307
+ tablename: 't_handplan',
308
+ condition: `f_user_id = '${self.row.f_user_id}' and f_meter_state in ('已抄表','未抄表')`
309
+ }
310
+ }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前机表抄表信息出错!!'})
311
+ } else {
312
+ beforeRecord = yield self.$resetpost('rs/sql/saleSingleTable', {
313
+ data: {
314
+ tablename: 't_sellinggas',
315
+ condition: `f_user_id = '${self.row.f_user_id}' and f_state = '有效'`
316
+ }
317
+ }, {resolveMsg: null, rejectMsg: '在档案中更改气表品牌时,获取之前卡表收费信息出错!!'})
318
+ }
319
+ if (beforeRecord.data.length > 0 && self.row.gasbrand[0].f_meter_brand != self.oldrow.gasbrand[0].f_meter_brand) {
320
+ self.$showAlert('该气表已投入使用,如需更改请执行换表操作', 'warning', 3000)
321
+ // self.row.gasbrand = self.meter.gasbrand
322
+ self.$dispatch('success')
323
+ /* self.row.valid = bool
324
+ self.$dispatch('self-valid') */
325
+ } else {
326
+ self.row.f_whether_hairpin = self.row.gasbrand[0].f_meter_type === '机表' ? '无卡' : '未发'
327
+ }
328
+ console.log('111', self.row)
329
+ }
330
+ export default {
331
+ title: '表具信息',
332
+ data () {
333
+ return {
334
+ viewsee: false,
335
+ row: this.meter,
336
+ show: false,
337
+ field: '',
338
+ ratioshow: false,
339
+ userfileid: '',
340
+ gasid: '',
341
+ gastype: 'userfiles',
342
+ showParame: false,
343
+ selectUserFiles: '', // 选中的 userfiles
344
+ jurisdiction: this.$login.r,
345
+ positions: this.$appdata.getParam('安装位置'),
346
+ usetype: this.$appdata.getParam('使用类型'),
347
+ usestate: this.$appdata.getParam('使用状态'),
348
+ aroundmeters: this.$appdata.getParam('左右表'),
349
+ garbagefee: this.$appdata.getParam('垃圾费'),
350
+ valvestate: this.$appdata.getParam('阀门状态'),
351
+ usertypes: this.$appdata.getParam('用户类型'),
352
+ gasproperties: this.meter.f_user_type.length === 1 ? this.$appdata.getParam(this.meter.f_user_type[0]) : [],
353
+ pricetypes: this.$appdata.getParam('气价类型'),
354
+ meterbookoptions: [], // 抄表册选项
355
+ opteratormetrbook: false, // 抄表册操作
356
+ oldrow: []
357
+ }
358
+ },
359
+ props: ['f_filialeid', 'meter', 'isdecimal', 'valid', 'f_userinfo_id'],
360
+ ready () {
361
+ console.log('看看meter里面的数据', this.meter, this.row)
362
+ this.row = Object.assign(this.row, this.meter, {})
363
+ this.oldrow = this.row
364
+ this.isdecimal = this.row.gasbrand.length > 0 ? this.row.gasbrand.f_isdecimal : '否'
365
+ this.row.valid = false
366
+ this.row.f_aroundmeter = '左表'
367
+ if (this.row.pricetype === '混合气价') {
368
+ this.ratioshow = true
369
+ }
370
+ co(meterBookGen(this))
371
+ },
372
+ methods: {
373
+ async confirmUserfiles () {
374
+ if (this.$refs.addparamlist.confirm()) {
375
+ var paramlist = this.$refs.addparamlist.addGasParameter
376
+ await this.$resetpost('rs/logic/updateGasParam', {
377
+ data: {
378
+ id: this.selectUserFiles.f_user_id,
379
+ paramlist: paramlist,
380
+ gastype: 'userfiles'
381
+ }
382
+ }, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
383
+ this.showParame = false
384
+ }
385
+ },
386
+
387
+ priceChange (val) {
388
+ if (val.length > 0) {
389
+ this.row.f_user_type = [val[0].f_user_type]
390
+ this.row.f_gasproperties = [val[0].f_gasproperties]
391
+ this.row.pricetype = val[0].f_price_type
392
+ // 展示价格明细
393
+ if (val[0].detailprice) {
394
+ // this.row.f_detailprice = this.$CommonService.getShowPriceDetail(val[0].detailprice)
395
+ this.$set('row.f_detailprice', this.$CommonService.getShowPriceDetail(val[0].detailprice))
396
+ }
397
+ }
398
+ },
399
+ cancel () {
400
+ this.gasid = ''
401
+ this.userfileid = ''
402
+ this.showParame = false
403
+ },
404
+ tablebaseChange () {
405
+ if (this.isdecimal === '是') {
406
+ this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(4))
407
+ } else {
408
+ this.$set('row.f_meter_base', (this.row.f_meter_base - 0).toFixed(0))
409
+ }
410
+ },
411
+ brandChange (val) {
412
+ this.isdecimal = val.length > 0 ? val[0].f_isdecimal : '否'
413
+ // this.tablebaseChange()
414
+ if (this.row.f_user_id) {
415
+ co(brandChangeGen(this))
416
+ }
417
+ this.meternumberValidate()
418
+ },
419
+ userTypeChange () {
420
+ this.gasproperties = []
421
+ if (this.row.f_user_type.length === 1) {
422
+ this.gasproperties = this.$appdata.getParam(this.row.f_user_type[0])
423
+ }
424
+ },
425
+ // getPricenames(pricetype) {
426
+ // console.log('气价。,。。', pricetype, this.row.f_user_type, this.row.f_gasproperties)
427
+ // let rs = []
428
+ // if (this.row.f_user_type.length === 1 && this.row.f_gasproperties.length === 1 && pricetype.length === 1) {
429
+ // let params = {
430
+ // f_user_type: this.row.f_user_type[0],
431
+ // f_gasproperties: this.row.f_gasproperties[0],
432
+ // f_price_type: pricetype[0],
433
+ // filter: this.f_filialeid
434
+ // }
435
+ // rs = this.$GetSaleParam.getPrice(params)
436
+ // }
437
+ // if (rs.length === 0) {
438
+ // this.row.f_price_name = ''
439
+ // }
440
+ // return rs
441
+ // },
442
+ mValid (bool) {
443
+ this.row.valid = bool
444
+ this.$dispatch('self-valid')
445
+ },
446
+ // 带权限修改单值返回修改后得值和修改原因
447
+ modefiy (field) {
448
+ this.show = true
449
+ this.field = field
450
+ },
451
+ async meternumberValidate () {
452
+ // 验证表号
453
+ if (this.row.f_meternumber && this.row.gasbrand.length > 0) {
454
+ if (this.row.gasbrand[0].f_meter_type === '物联网表') {
455
+ let param = {
456
+ f_meternumber: this.row.f_meternumber,
457
+ f_gasbrand_id: this.row.gasbrand[0].id
458
+ }
459
+ if (this.row.f_userfiles_id) {
460
+ param.f_userfiles_id = this.row.f_userfiles_id
461
+ }
462
+ let res = await this.$resetpost('rs/logic/meternumberValidate', param, {
463
+ resolveMsg: null,
464
+ rejectMsg: '表号验证失败!!'
465
+ })
466
+ console.log('标号验证返回:', res)
467
+ if (res.data) {
468
+ this.row.f_meternumber = ''
469
+ this.$showAlert('表号已存在!!', 'warning', 3000)
470
+ }
471
+ }
472
+ }
473
+ }
474
+ },
475
+ watch: {
476
+ 'meter' () {
477
+ this.row = Object.assign(this.row, this.meter, {})
478
+ this.isdecimal = this.row.gasbrand.f_isdecimal
479
+ this.row.valid = false
480
+ this.showtype = this.row.gasbrand.f_meter_type
481
+ },
482
+ 'row.pricetype' (val) {
483
+ if (val == '混合气价') {
484
+ this.ratioshow = true
485
+ } else {
486
+ this.ratioshow = false
487
+ }
488
+ }
489
+
490
+ },
491
+ computed: {
492
+
493
+ // 控制用户类型修改
494
+ permissionUserType () {
495
+ let res = false
496
+ if (this.row.f_user_id) {
497
+ res = !(this.jurisdiction.includes('民用气价修改') && this.jurisdiction.includes('非民用气价修改'))
498
+ }
499
+ return res
500
+ },
501
+
502
+ // 控制用气性质,气价类型,气价名称修改
503
+ permissionPrice () {
504
+ let res = false
505
+ if (this.row.f_user_id) {
506
+ console.log('获取权限、', this.row, this.jurisdiction)
507
+ // 变更操作
508
+ if (this.row.pricename.length > 0) {
509
+ if (this.row.f_user_type[0] === '民用') {
510
+ // 判断是否有民用气价权限
511
+ res = !this.jurisdiction.includes('民用气价修改')
512
+ } else if (this.row.f_user_type[0] === '非民用') {
513
+ // 判断是否有非民用气价权限
514
+ res = !this.jurisdiction.includes('非民用气价修改')
515
+ }
516
+ }
517
+ }
518
+ console.log('有无气价权限', res)
519
+ return res
520
+ },
521
+
522
+ getPricenames () {
523
+ return this.$GetSaleParam.getPriceByOrg(this.f_filialeid)
524
+ },
525
+
526
+ adjustables () {
527
+ let arr = []
528
+ let filter = this.f_filialeid
529
+ this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
530
+ let temp = {}
531
+ temp.label = `[${item.value.f_adjustable_id}]-${item.label}`
532
+ temp.value = item.value
533
+ arr.push(temp)
534
+ })
535
+ return [{label: '全部', value: ''}, ...arr]
536
+ },
537
+ inputtores () {
538
+ // return this.$login.f.f_gasman
539
+ let rs = new Array()
540
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
541
+ let temp = {
542
+ label: this.$login.f.f_gasman[i].name,
543
+ value: this.$login.f.f_gasman[i].name
544
+ }
545
+ rs.push(temp)
546
+ }
547
+ return rs
548
+ },
549
+ installperson () {
550
+ // return this.$login.f.f_installman
551
+ let rs = new Array()
552
+ for (let i = 0; i < this.$login.f.f_installman.length; i++) {
553
+ let temp = {
554
+ label: this.$login.f.f_installman[i].name,
555
+ value: this.$login.f.f_installman[i].name
556
+ }
557
+ rs.push(temp)
558
+ }
559
+ return rs
560
+ },
561
+ meterbrands () {
562
+ return this.$GetSaleParam.getGasbrand()
563
+ },
564
+ aroundmeters () {
565
+ return this.$appdata.getParam('左右表')
566
+ },
567
+ positions () {
568
+ return this.$appdata.getParam('安装位置')
569
+ },
570
+ usetype () {
571
+ return this.$appdata.getParam('使用类型')
572
+ },
573
+ usestate () {
574
+ return this.$appdata.getParam('使用状态')
575
+ },
576
+ gongyetype () {
577
+ return this.$appdata.getParam('工业用户用气类型')
578
+ }
579
+ }
580
+ }
581
+ </script>