address-client 1.3.55 → 1.3.57-2

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.
@@ -1,434 +1,435 @@
1
- <template>
2
- <div class="auto">
3
- <validator name='v' >
4
- <div class="auto">
5
- <div class="flex-row lb"><label style="margin-left: 6px">小区信息</label></div>
6
- <div class="flex-row auto box">
7
- <div class="addresstitle"><label>小区默认表具信息</label></div>
8
- <div class="addressbody">
9
- <form class="form-horizontal" style="flex: 1;">
10
- <div class="form-group auto">
11
- <div class="col-sm-3 average" :class="[$v.type.required ? 'select-error' : '']">
12
- <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
13
- <v-select :value.sync="model.f_user_type" v-model="model.f_user_type" :value-single="true"
14
- :options='usertypes' placeholder='用户类型' close-on-select v-ref:type></v-select>
15
- </div>
16
- <div class="col-sm-3 average" :class="[$v.nature.required ? 'select-error' : '']">
17
- <input type="text" v-show="false" v-model="$refs.nature.selectedItems" v-validate:nature='{required: true }'>
18
- <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties" :value-single="true"
19
- :options='gasproperties' placeholder='用气性质'
20
- close-on-select v-ref:nature></v-select>
21
- </div>
22
- <div class="col-sm-3 average" :class="[$v.f_brand.required ? 'select-error' : '']" >
23
- <input type="text" v-show="false" v-model="$refs.f_brand.selectedItems" v-validate:f_brand='{required: true }'>
24
- <v-select :value.sync="model.f_meter_brand" :options='meterbrands' placeholder='气表品牌' close-on-select :value-single="true"
25
- v-model='model.f_meter_brand' v-ref:f_brand></v-select>
26
- </div>
27
- <div class="col-sm-3 average" :class="[$v.f_style.required ? 'select-error' : '']">
28
- <input type="text" v-show="false" v-model="$refs.f_style.selectedItems" v-validate:f_style='{required: true }'>
29
- <v-select :value.sync="model.f_meter_style" :options='meterstyle' placeholder='气表型号' close-on-select :value-single="true" v-model='model.f_meter_style' v-ref:f_style></v-select>
30
- </div>
31
- <div class="col-sm-3 average" :class="[$v.pricetype.required ? 'select-error' : '']">
32
- <input type="text" v-show="false" v-model="$refs.pricetype.selectedItems" v-validate:pricetype='{required: true }'>
33
- <v-select :value.sync="model.f_price_type" v-model="model.f_price_type" :value-single="true"
34
- :options='f_price_types' placeholder='气价类型'
35
- close-on-select v-ref:pricetype></v-select>
36
- </div>
37
- </div>
38
- <div class="form-group auto">
39
- <div class="col-sm-3 average" :class="[$v.pricename.required ? 'select-error' : '']">
40
- <input type="text" v-show="false" v-model="$refs.pricename.selectedItems" v-validate:pricename='{required: true }'>
41
- <v-select :value.sync="model.f_price_name" v-model="model.f_price_name" :value-single="true"
42
- :options='pricenames' placeholder='气价名称'
43
- close-on-select v-ref:pricename></v-select>
44
- </div>
45
- <div class="col-sm-3 average" >
46
- <v-select :value.sync="model.f_position" v-model="model.f_position" :value-single="true" :options='positions'
47
- placeholder='安装位置' close-on-select ></v-select>
48
- </div>
49
- <div class=" col-sm-3 average" >
50
- <v-select :value.sync="model.f_inputtor" v-model="model.f_inputtor" :value-single="true"
51
- :options='inputtores' placeholder=' 抄表员' close-on-select ></v-select>
52
- </div>
53
- <div class="col-sm-3 average" >
54
- <v-select :value.sync="model.f_adjustable_id" :options='adjustables' placeholder=' 调压箱' close-on-select :value-single="true" v-model='model.f_adjustable_id' :search='true' ></v-select>
55
- </div>
56
- <div class="col-sm-3 average" >
57
- <v-select :value.sync="model.f_slice_area" v-model="model.f_slice_area" :value-single="true"
58
- :options='sliceArea' placeholder='片区/管理站' close-on-select></v-select>
59
- </div>
60
- </div>
61
- </form>
62
- </div>
63
- </div>
64
- </div>
65
- </validator>
66
- <div class="form-group auto button" style="overflow: auto">
67
- <button type="button" class="btn btn-success" :disabled="!$v.valid" @click="this.$emit('addchild')" >保存</button>
68
- <button type="button" class="btn btn-info" @click="this.$emit('signout')" >取消</button>
69
- </div>
70
- </div>
71
- </template>
72
-
73
- <script>
74
- import co from 'co'
75
-
76
- let getMeterType = function * (self) {
77
- if (self.row) {
78
- let result = yield self.$resetpost('rs/sql/querySingleTable', {data: {items: 'f_meter_type', tablename: 't_gasbrand', condition: `f_meter_brand = '${self.row.f_meter_brand}'`}}, {resolveMsg: null, rejectMsg: null})
79
- if (result && result.data.length > 0) {
80
- console.log('数据格式是神马样子的', result)
81
- if (result.data[0].f_meter_type === '物联网表') {
82
- self.viewsee = true
83
- } else {
84
- self.viewsee = false
85
- }
86
- }
87
- }
88
- }
89
-
90
- let areaGen =async function (self, areaid, parent) {
91
- let data = {}
92
- console.log("小区信息parent的值: ", parent)
93
- console.log("小区信息model的值: ", self.model)
94
- data.f_area = parent.f_area //区
95
- // data.f_slice_area = parent.f_slice_area //片区
96
- data.f_slice_area = self.model.f_slice_area //片区
97
- data.f_street = parent.f_street //街道
98
- data.f_residential_area = parent.f_residential_area //小区名称
99
- data.f_area_address = parent.f_area_address //详细地址
100
- data.f_area_id = areaid // 地址id
101
- data.f_areastr = parent.f_areastr //地址id
102
- // 如果数据中有id,不校验小区是存在
103
- if (self.model.id) {
104
- data.id = self.model.id
105
- } else {
106
- let tablename = 't_area'
107
- let condition = `f_area_id='${data.f_area_id}'`
108
- console.log('做小区验证了,,,,condition,', condition)
109
- let areaRes = await self.$SqlService.singleTable(tablename, condition)
110
- if (areaRes.data.length > 0) {
111
- // self.$showAlert('小区已存在, 请重新输入', 'danger', 2000)
112
- self.model.f_area = ''
113
- self.model.f_street = ''
114
- self.model.f_residential_area = ''
115
- return
116
- }
117
- }
118
- data.f_filiale = self.model.f_filiale ? self.model.f_filiale : self.$login.f.f_fengongsi
119
- data.f_filialeids = self.model.f_filialeids ? self.model.f_filialeids : self.$login.f.f_orgids
120
- data.f_orgstr = self.model.f_orgstr ? self.model.f_orgstr : self.$login.f.orgpathstr
121
- data.f_outlets = self.$login.f.f_parentname
122
- data.f_show_way = self.model.f_show_way
123
- data.f_adjustable_id = self.model.f_adjustable_id!=''?self.model.f_adjustable_id:null
124
- data.f_price_type = self.model.f_price_type // 气价类型
125
- data.f_price_name = self.model.f_price_name // 气价名称
126
- data.f_user_type = self.model.f_user_type // 用户类型
127
- data.f_gasproperties = self.model.f_gasproperties// 用气性质
128
- data.f_meter_brand = self.model.f_meter_brand // 气表品牌
129
- data.f_meter_style = self.model.f_meter_style?self.model.f_meter_style.f_meter_style:'' // 气表型号
130
- data.f_type = self.model.f_meter_style?self.model.f_meter_style.f_type:'' // 气表型号类型
131
- data.f_position = self.model.f_position// 表安装位置
132
- data.f_inputtor = self.model.f_inputtor // 抄表员
133
- data.f_operator = self.$login.f.name // 操作人
134
- data.f_operate_date = self.$login.toStandardTimeString() // 操作时间
135
- // 父表record中插入
136
- data.f_operat_type = '新建小区'
137
- data.f_operat_type = `新建${self.model.f_residential_area}`
138
- data.f_state = '有效'
139
- data.f_delaypay = 0
140
- console.log("数据参数附属:"+JSON.stringify(data))
141
- let result = await self.$resetpost('rs/entity/t_area', data)
142
- // self.$dispatch('success', '新建小区成功', 'new-area-info', data)
143
- console.log("result=", result.data)
144
- self.initModel()
145
- return result
146
- }
147
-
148
- let validateAddressGen = function * (self) {
149
- let areaRes = yield self.$resetpost('rs/sql/saleSingleTable', {data: {tablename: 't_area', condition: `f_residential_area = '${self.model.f_residential_area}' and f_street = '${self.model.f_street}'`}}, {resolveMsg: null, rejectMsg: '验证小区,查询出错!!!!'})
150
- console.log('查询出的小区,,,', areaRes)
151
- if (areaRes.data.length > 0) {
152
- self.$showAlert('小区已存在, 请重新输入', 'danger', 0)
153
- self.model.f_street = ''
154
- self.model.f_residential_area = ''
155
- }
156
- }
157
-
158
- export default {
159
- title: '新建小区',
160
- data () {
161
- return {
162
- viewsee: false,
163
- model: {
164
- f_area: '',
165
- f_adjustable_id: '',
166
- f_user_type: '',
167
- f_meter_brand: '',
168
- f_show_way: '',
169
- f_meter_style: '',
170
- f_inputtor: '',
171
- f_position: '',
172
- f_price_type: '', // 气价表中,气价类型
173
- f_price_name: '', // 气价表中,气价名称
174
- f_gasproperties: '' // 气价表中,用气性质
175
- },
176
- imgdefault: '/images/mainicon/biaopan.png',
177
- }
178
- },
179
- props: ['row','areatype'],
180
- ready () {
181
- return co(getMeterType(this)).then(() => {
182
- if(this.areatype) {
183
- this.model.f_area = this.areatype
184
- }
185
- if (this.row) {
186
- this.init()
187
- }
188
- })
189
- },
190
- watch: {
191
- // 'model.f_meter_brand' (val) {
192
- // console.log('val里面是神马', val)
193
- // if (val && val.length > 0) {
194
- // this.$resetpost('rs/sql/querySingleTable', {data: {items: 'f_meter_type', tablename: 't_gasbrand', condition: `f_meter_brand = '${val[0].f_meter_brand}'`}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
195
- // console.log('res是神马呀', res)
196
- // if (res.data[0].f_meter_type === '物联网表') {
197
- // this.viewsee = true
198
- // } else {
199
- // this.viewsee = false
200
- // }
201
- // }).catch((error) => {
202
- // console.log('异常提示:' + error)
203
- // })
204
- // }
205
- // },
206
- 'row' (val) {
207
- if (val) {
208
- this.init() // 初始化区,和片区
209
- } else {
210
- this.initModel() // 清空数据
211
- }
212
- },
213
- 'areatype' (val) {
214
- if(val) {
215
- this.model.f_area =val // 初始化 区
216
- } else {
217
- this.model.f_area = null //清除 区
218
- }
219
- },
220
- 'model.f_slice_area' (val) {
221
- console.log("model.f_slice_area = ", val)
222
- }
223
- },
224
- methods: {
225
- confirm (areaid, parent) {
226
- return areaGen(this, areaid, parent).then(() => {
227
- this.$emit('ready')
228
- }).catch((error) => {
229
- this.$emit('error', error)
230
- })
231
- },
232
- cancel () {
233
- this.$dispatch('clean', '取消新建小区', 'new-area-info')
234
- },
235
- validateAddress () {
236
- console.log('开始地址验证..', this.model.f_street, this.model.f_residential_area)
237
- if (this.model.f_street && this.model.f_residential_area) {
238
- co(validateAddressGen(this))
239
- }
240
- },
241
- // 小区初始化
242
- init() {
243
- this.model = Object.assign({}, this.model, this.row)
244
- // 初始化 气表型号
245
- if(this.model.f_meter_brand) {
246
- console.log("2222: ", this.model.f_meter_brand)
247
- this.$GetSaleParam.getGasbrand().forEach((item, index) => {
248
- // 根据气表品牌 查找气表型号
249
- if(this.model.f_meter_brand == item.value.f_meter_brand) {
250
- item.value.gasmodel.forEach((iten, inde) => {
251
- // f_type 和 f_meter_style 去匹配 气表型号
252
- if(this.row.f_meter_style==iten.value.f_meter_style && this.row.f_type==iten.value.f_type) {
253
- console.log("11111: ",iten, " ", this.row)
254
- this.model.f_meter_style = iten.value
255
- }
256
- })
257
- }
258
- })
259
- }
260
- console.log("初始化 气表型号: ", this.model.f_meter_style)
261
- },
262
- initModel () {
263
- this.model = {
264
- f_adjustable_id: '',
265
- f_user_type: '',
266
- f_meter_brand: '',
267
- f_show_way: '',
268
- f_meter_style: '',
269
- f_inputtor: '',
270
- f_position: '',
271
- f_price_type: '', // 气价表中,气价类型
272
- f_price_name: '', // 气价表中,气价名称
273
- f_gasproperties: '' // 气价表中,用气性质
274
- }
275
- }
276
- },
277
- computed: {
278
- usertypes () {
279
- console.log('获取用户类型。,。。', this.$appdata.getParam('用户类型'))
280
- return this.$appdata.getParam('用户类型')
281
- },
282
- f_price_types () {
283
- return this.$appdata.getParam('气价类型')
284
- },
285
- viewstyle () {
286
- return this.$appdata.getParam('显示类型')
287
- },
288
- gasproperties () {
289
- let rs = []
290
- if (this.model.f_user_type) {
291
- rs = this.$appdata.getParam(this.model.f_user_type)
292
- }
293
- console.log("用气性质: ", rs)
294
- return rs
295
- },
296
- positions () {
297
- let ret = this.$appdata.getParam('安装位置')
298
- console.log("安装位置: ", ret)
299
- return ret
300
- },
301
- inputtores () {
302
- // 获取抄表员
303
- console.log('获取抄表员', this.$login.f)
304
- let rs = new Array()
305
- if (this.$login.f.f_gasman.length > 0) {
306
- for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
307
- let temp = {
308
- label: this.$login.f.f_gasman[i].name,
309
- value: this.$login.f.f_gasman[i].name
310
- }
311
- rs.push(temp)
312
- }
313
- }
314
- // let rs = this.$appdata.getParam('抄表员')
315
- return rs
316
- },
317
- sliceArea () {
318
- let rs = new Array()
319
- for (let i = 0; i < this.$login.f.f_allArea.length; i++) {
320
- let temp = {
321
- label: this.$login.f.f_allArea[i].label,
322
- value: this.$login.f.f_allArea[i].label
323
- }
324
- rs.push(temp)
325
- }
326
- return rs
327
- },
328
- meterbrands () {
329
- let ret = this.$GetSaleParam.getGasbrand()
330
- let rs = new Array()
331
- ret.forEach((item, index) =>{
332
- rs.push({label: item.label, value: item.value.f_meter_brand})
333
- })
334
- console.log("气表品牌: ", rs)
335
- return rs
336
- },
337
- meterstyle() {
338
- let ret = this.$GetSaleParam.getGasbrand()
339
- console.log("气表型号ret: ", ret)
340
- let rs = new Array()
341
- if(this.model.f_meter_brand) {
342
- ret.forEach((item, index) => {
343
- if(this.model.f_meter_brand == item.value.f_meter_brand) {
344
- rs = item.value.gasmodel
345
- // item.value.gasmodel.forEach((item1, index1) => {
346
- // rs.push({label: item1.label, value: item1.value.f_meter_style})
347
- // })
348
- }
349
- })
350
- }
351
- console.log("气表型号rs: ", rs)
352
- return rs
353
- },
354
- adjustables () {
355
- let filter = this.$login.f.f_orgids
356
- let ret = this.$GetSaleParam.getAdjustable(filter)
357
- let arr = new Array()
358
- ret.forEach((item, index) => {
359
- arr.push({label: `[${item.value.f_adjustable_id}]-${item.label}`, value: item.value.id})
360
- // arr[index].label = `[${item.value.f_adjustable_id}]-${item.label}`
361
- // arr[index].value = item.value.id
362
- })
363
- return [{label: '全部', value: ''}, ...arr]
364
- },
365
- pricenames () {
366
- let rs = new Array()
367
- if (this.model.f_user_type && this.model.f_gasproperties && this.model.f_price_type) {
368
- let params = {
369
- f_user_type: this.model.f_user_type,
370
- f_gasproperties: this.model.f_gasproperties,
371
- f_price_type: this.model.f_price_type,
372
- filter: this.$login.f.f_fengongsi
373
- }
374
- console.log('气价参数。,。。', params)
375
- let ret = this.$GetSaleParam.getPrice(params)
376
- ret.forEach((item, index) => {
377
- rs.push({label: item.label, value: item.value.f_price_name})
378
- // rs[index].value = item.value.f_price_name
379
- })
380
- }
381
- return rs
382
- }
383
- }
384
- }
385
- </script>
386
- <style lang="less" scoped>
387
- .average{
388
- width: 20%;
389
- }
390
- v-select{
391
- width: 110px;
392
- height: 30px;
393
- border-radius: 2px;
394
- border: 1px solid #d0d0d0;
395
- background-color: #ffffff;
396
- }
397
- .box {
398
- width: 727px;
399
- height: 175px;
400
- border-radius: 2px;
401
- background-color: #fafafa;
402
- border: 1px solid #999999;
403
- margin-top: 13px;
404
- }
405
- .addresstitle{
406
- width: 100%;
407
- height: 20%;
408
- font-family: PingFangSC-Bold;
409
- font-size: 16px;
410
- color: #666666;
411
- margin-top: 20px;
412
- margin-left: 20px;
413
- text-align: left;
414
- }
415
- .addressbody{
416
- margin-top: 60px;
417
- width: 100%;
418
- height: auto;
419
- position: absolute;
420
- }
421
- .lb{
422
- width: 100%;
423
- padding-left: 8px;
424
- border: none;
425
- border-left: 4px solid #3db6ef;
426
- font-size: 16px;
427
- font-family: PingFangSC-Bold;
428
- color: #666666;
429
- text-align: left;
430
- }
431
- .button{
432
- margin-top: 20px;
433
- }
434
- </style>
1
+ <template>
2
+ <div class="auto">
3
+ <validator name='v' >
4
+ <div class="auto">
5
+ <div class="flex-row lb"><label style="margin-left: 6px">小区信息</label></div>
6
+ <div class="flex-row auto box">
7
+ <div class="addresstitle"><label>小区默认表具信息</label></div>
8
+ <div class="addressbody">
9
+ <form class="form-horizontal" style="flex: 1;">
10
+ <div class="form-group auto">
11
+ <div class="col-sm-3 average" :class="[$v.type.required ? 'select-error' : '']">
12
+ <input type="text" v-show="false" v-model="$refs.type.selectedItems" v-validate:type='{required: true }'>
13
+ <v-select :value.sync="model.f_user_type" v-model="model.f_user_type" :value-single="true"
14
+ :options='usertypes' placeholder='用户类型' close-on-select v-ref:type></v-select>
15
+ </div>
16
+ <div class="col-sm-3 average" :class="[$v.nature.required ? 'select-error' : '']">
17
+ <input type="text" v-show="false" v-model="$refs.nature.selectedItems" v-validate:nature='{required: true }'>
18
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties" :value-single="true"
19
+ :options='gasproperties' placeholder='用气性质'
20
+ close-on-select v-ref:nature></v-select>
21
+ </div>
22
+ <div class="col-sm-3 average" :class="[$v.f_brand.required ? 'select-error' : '']" >
23
+ <input type="text" v-show="false" v-model="$refs.f_brand.selectedItems" v-validate:f_brand='{required: true }'>
24
+ <v-select :value.sync="model.f_meter_brand" :options='meterbrands' placeholder='气表品牌' close-on-select :value-single="true"
25
+ v-model='model.f_meter_brand' v-ref:f_brand></v-select>
26
+ </div>
27
+ <div class="col-sm-3 average" :class="[$v.f_style.required ? 'select-error' : '']">
28
+ <input type="text" v-show="false" v-model="$refs.f_style.selectedItems" v-validate:f_style='{required: true }'>
29
+ <v-select :value.sync="model.f_meter_style" :options='meterstyle' placeholder='气表型号' close-on-select :value-single="true" v-model='model.f_meter_style' v-ref:f_style></v-select>
30
+ </div>
31
+ <div class="col-sm-3 average" :class="[$v.pricetype.required ? 'select-error' : '']">
32
+ <input type="text" v-show="false" v-model="$refs.pricetype.selectedItems" v-validate:pricetype='{required: true }'>
33
+ <v-select :value.sync="model.f_price_type" v-model="model.f_price_type" :value-single="true"
34
+ :options='f_price_types' placeholder='气价类型'
35
+ close-on-select v-ref:pricetype></v-select>
36
+ </div>
37
+ </div>
38
+ <div class="form-group auto">
39
+ <div class="col-sm-3 average" :class="[$v.pricename.required ? 'select-error' : '']">
40
+ <input type="text" v-show="false" v-model="$refs.pricename.selectedItems" v-validate:pricename='{required: true }'>
41
+ <v-select :value.sync="model.f_price_name" v-model="model.f_price_name" :value-single="true"
42
+ :options='pricenames' placeholder='气价名称'
43
+ close-on-select v-ref:pricename></v-select>
44
+ </div>
45
+ <div class="col-sm-3 average" >
46
+ <v-select :value.sync="model.f_position" v-model="model.f_position" :value-single="true" :options='positions'
47
+ placeholder='安装位置' close-on-select ></v-select>
48
+ </div>
49
+ <div class=" col-sm-3 average" >
50
+ <v-select :value.sync="model.f_inputtor" v-model="model.f_inputtor" :value-single="true"
51
+ :options='inputtores' placeholder=' 抄表员' close-on-select ></v-select>
52
+ </div>
53
+ <div class="col-sm-3 average" >
54
+ <v-select :value.sync="model.f_adjustable_id" :options='adjustables' placeholder=' 调压箱' close-on-select :value-single="true" v-model='model.f_adjustable_id' :search='true' ></v-select>
55
+ </div>
56
+ <div class="col-sm-3 average" >
57
+ <v-select :value.sync="model.f_slice_area" v-model="model.f_slice_area" :value-single="true"
58
+ :options='sliceArea' placeholder='片区/管理站' close-on-select></v-select>
59
+ </div>
60
+ </div>
61
+ </form>
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </validator>
66
+ <div class="form-group auto button" style="overflow: auto">
67
+ <button type="button" class="btn btn-success" :disabled="!$v.valid" @click="this.$emit('addchild')" >保存</button>
68
+ <button type="button" class="btn btn-info" @click="this.$emit('signout')" >取消</button>
69
+ </div>
70
+ </div>
71
+ </template>
72
+
73
+ <script>
74
+ import co from 'co'
75
+
76
+ let getMeterType = function * (self) {
77
+ if (self.row) {
78
+ let result = yield self.$resetpost('rs/logic/getQueryOneData', {data: {type: 11,
79
+ f_meter_brand: self.row.f_meter_brand}}, {resolveMsg: null, rejectMsg: null})
80
+ if (result && result.data.length > 0) {
81
+ console.log('数据格式是神马样子的', result)
82
+ if (result.data[0].f_meter_type === '物联网表') {
83
+ self.viewsee = true
84
+ } else {
85
+ self.viewsee = false
86
+ }
87
+ }
88
+ }
89
+ }
90
+
91
+ let areaGen =async function (self, areaid, parent) {
92
+ let data = {}
93
+ console.log("小区信息parent的值: ", parent)
94
+ console.log("小区信息model的值: ", self.model)
95
+ data.f_area = parent.f_area //区
96
+ // data.f_slice_area = parent.f_slice_area //片区
97
+ data.f_slice_area = self.model.f_slice_area //片区
98
+ data.f_street = parent.f_street //街道
99
+ data.f_residential_area = parent.f_residential_area //小区名称
100
+ data.f_area_address = parent.f_area_address //详细地址
101
+ data.f_area_id = areaid // 地址id
102
+ data.f_areastr = parent.f_areastr //地址id
103
+ // 如果数据中有id,不校验小区是存在
104
+ if (self.model.id) {
105
+ data.id = self.model.id
106
+ } else {
107
+ let tablename = 't_area'
108
+ let condition = `f_area_id='${data.f_area_id}'`
109
+ console.log('做小区验证了,,,,condition,', condition)
110
+ let areaRes = await self.$SqlService.singleTable(tablename, condition)
111
+ if (areaRes.data.length > 0) {
112
+ // self.$showAlert('小区已存在, 请重新输入', 'danger', 2000)
113
+ self.model.f_area = ''
114
+ self.model.f_street = ''
115
+ self.model.f_residential_area = ''
116
+ return
117
+ }
118
+ }
119
+ data.f_filiale = self.model.f_filiale ? self.model.f_filiale : self.$login.f.f_fengongsi
120
+ data.f_filialeids = self.model.f_filialeids ? self.model.f_filialeids : self.$login.f.f_orgids
121
+ data.f_orgstr = self.model.f_orgstr ? self.model.f_orgstr : self.$login.f.orgpathstr
122
+ data.f_outlets = self.$login.f.f_parentname
123
+ data.f_show_way = self.model.f_show_way
124
+ data.f_adjustable_id = self.model.f_adjustable_id!=''?self.model.f_adjustable_id:null
125
+ data.f_price_type = self.model.f_price_type // 气价类型
126
+ data.f_price_name = self.model.f_price_name // 气价名称
127
+ data.f_user_type = self.model.f_user_type // 用户类型
128
+ data.f_gasproperties = self.model.f_gasproperties// 用气性质
129
+ data.f_meter_brand = self.model.f_meter_brand // 气表品牌
130
+ data.f_meter_style = self.model.f_meter_style?self.model.f_meter_style.f_meter_style:'' // 气表型号
131
+ data.f_type = self.model.f_meter_style?self.model.f_meter_style.f_type:'' // 气表型号类型
132
+ data.f_position = self.model.f_position// 表安装位置
133
+ data.f_inputtor = self.model.f_inputtor // 抄表员
134
+ data.f_operator = self.$login.f.name // 操作人
135
+ data.f_operate_date = self.$login.toStandardTimeString() // 操作时间
136
+ // 父表record中插入
137
+ data.f_operat_type = '新建小区'
138
+ data.f_operat_type = `新建${self.model.f_residential_area}`
139
+ data.f_state = '有效'
140
+ data.f_delaypay = 0
141
+ console.log("数据参数附属:"+JSON.stringify(data))
142
+ let result = await self.$resetpost('rs/entity/t_area', data)
143
+ // self.$dispatch('success', '新建小区成功', 'new-area-info', data)
144
+ console.log("result=", result.data)
145
+ self.initModel()
146
+ return result
147
+ }
148
+
149
+ let validateAddressGen = function * (self) {
150
+ let areaRes = yield self.$resetpost('rs/sql/saleSingleTable', {data: {tablename: 't_area', condition: `f_residential_area = '${self.model.f_residential_area}' and f_street = '${self.model.f_street}'`}}, {resolveMsg: null, rejectMsg: '验证小区,查询出错!!!!'})
151
+ console.log('查询出的小区,,,', areaRes)
152
+ if (areaRes.data.length > 0) {
153
+ self.$showAlert('小区已存在, 请重新输入', 'danger', 0)
154
+ self.model.f_street = ''
155
+ self.model.f_residential_area = ''
156
+ }
157
+ }
158
+
159
+ export default {
160
+ title: '新建小区',
161
+ data () {
162
+ return {
163
+ viewsee: false,
164
+ model: {
165
+ f_area: '',
166
+ f_adjustable_id: '',
167
+ f_user_type: '',
168
+ f_meter_brand: '',
169
+ f_show_way: '',
170
+ f_meter_style: '',
171
+ f_inputtor: '',
172
+ f_position: '',
173
+ f_price_type: '', // 气价表中,气价类型
174
+ f_price_name: '', // 气价表中,气价名称
175
+ f_gasproperties: '' // 气价表中,用气性质
176
+ },
177
+ imgdefault: '/images/mainicon/biaopan.png',
178
+ }
179
+ },
180
+ props: ['row','areatype'],
181
+ ready () {
182
+ return co(getMeterType(this)).then(() => {
183
+ if(this.areatype) {
184
+ this.model.f_area = this.areatype
185
+ }
186
+ if (this.row) {
187
+ this.init()
188
+ }
189
+ })
190
+ },
191
+ watch: {
192
+ // 'model.f_meter_brand' (val) {
193
+ // console.log('val里面是神马', val)
194
+ // if (val && val.length > 0) {
195
+ // this.$resetpost('rs/sql/querySingleTable', {data: {items: 'f_meter_type', tablename: 't_gasbrand', condition: `f_meter_brand = '${val[0].f_meter_brand}'`}}, {resolveMsg: null, rejectMsg: null}).then((res) => {
196
+ // console.log('res是神马呀', res)
197
+ // if (res.data[0].f_meter_type === '物联网表') {
198
+ // this.viewsee = true
199
+ // } else {
200
+ // this.viewsee = false
201
+ // }
202
+ // }).catch((error) => {
203
+ // console.log('异常提示:' + error)
204
+ // })
205
+ // }
206
+ // },
207
+ 'row' (val) {
208
+ if (val) {
209
+ this.init() // 初始化区,和片区
210
+ } else {
211
+ this.initModel() // 清空数据
212
+ }
213
+ },
214
+ 'areatype' (val) {
215
+ if(val) {
216
+ this.model.f_area =val // 初始化 区
217
+ } else {
218
+ this.model.f_area = null //清除 区
219
+ }
220
+ },
221
+ 'model.f_slice_area' (val) {
222
+ console.log("model.f_slice_area = ", val)
223
+ }
224
+ },
225
+ methods: {
226
+ confirm (areaid, parent) {
227
+ return areaGen(this, areaid, parent).then(() => {
228
+ this.$emit('ready')
229
+ }).catch((error) => {
230
+ this.$emit('error', error)
231
+ })
232
+ },
233
+ cancel () {
234
+ this.$dispatch('clean', '取消新建小区', 'new-area-info')
235
+ },
236
+ validateAddress () {
237
+ console.log('开始地址验证..', this.model.f_street, this.model.f_residential_area)
238
+ if (this.model.f_street && this.model.f_residential_area) {
239
+ co(validateAddressGen(this))
240
+ }
241
+ },
242
+ // 小区初始化
243
+ init() {
244
+ this.model = Object.assign({}, this.model, this.row)
245
+ // 初始化 气表型号
246
+ if(this.model.f_meter_brand) {
247
+ console.log("2222: ", this.model.f_meter_brand)
248
+ this.$GetSaleParam.getGasbrand().forEach((item, index) => {
249
+ // 根据气表品牌 查找气表型号
250
+ if(this.model.f_meter_brand == item.value.f_meter_brand) {
251
+ item.value.gasmodel.forEach((iten, inde) => {
252
+ // f_type 和 f_meter_style 去匹配 气表型号
253
+ if(this.row.f_meter_style==iten.value.f_meter_style && this.row.f_type==iten.value.f_type) {
254
+ console.log("11111: ",iten, " ", this.row)
255
+ this.model.f_meter_style = iten.value
256
+ }
257
+ })
258
+ }
259
+ })
260
+ }
261
+ console.log("初始化 气表型号: ", this.model.f_meter_style)
262
+ },
263
+ initModel () {
264
+ this.model = {
265
+ f_adjustable_id: '',
266
+ f_user_type: '',
267
+ f_meter_brand: '',
268
+ f_show_way: '',
269
+ f_meter_style: '',
270
+ f_inputtor: '',
271
+ f_position: '',
272
+ f_price_type: '', // 气价表中,气价类型
273
+ f_price_name: '', // 气价表中,气价名称
274
+ f_gasproperties: '' // 气价表中,用气性质
275
+ }
276
+ }
277
+ },
278
+ computed: {
279
+ usertypes () {
280
+ console.log('获取用户类型。,。。', this.$appdata.getParam('用户类型'))
281
+ return this.$appdata.getParam('用户类型')
282
+ },
283
+ f_price_types () {
284
+ return this.$appdata.getParam('气价类型')
285
+ },
286
+ viewstyle () {
287
+ return this.$appdata.getParam('显示类型')
288
+ },
289
+ gasproperties () {
290
+ let rs = []
291
+ if (this.model.f_user_type) {
292
+ rs = this.$appdata.getParam(this.model.f_user_type)
293
+ }
294
+ console.log("用气性质: ", rs)
295
+ return rs
296
+ },
297
+ positions () {
298
+ let ret = this.$appdata.getParam('安装位置')
299
+ console.log("安装位置: ", ret)
300
+ return ret
301
+ },
302
+ inputtores () {
303
+ // 获取抄表员
304
+ console.log('获取抄表员', this.$login.f)
305
+ let rs = new Array()
306
+ if (this.$login.f.f_gasman.length > 0) {
307
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
308
+ let temp = {
309
+ label: this.$login.f.f_gasman[i].name,
310
+ value: this.$login.f.f_gasman[i].name
311
+ }
312
+ rs.push(temp)
313
+ }
314
+ }
315
+ // let rs = this.$appdata.getParam('抄表员')
316
+ return rs
317
+ },
318
+ sliceArea () {
319
+ let rs = new Array()
320
+ for (let i = 0; i < this.$login.f.f_allArea.length; i++) {
321
+ let temp = {
322
+ label: this.$login.f.f_allArea[i].label,
323
+ value: this.$login.f.f_allArea[i].label
324
+ }
325
+ rs.push(temp)
326
+ }
327
+ return rs
328
+ },
329
+ meterbrands () {
330
+ let ret = this.$GetSaleParam.getGasbrand()
331
+ let rs = new Array()
332
+ ret.forEach((item, index) =>{
333
+ rs.push({label: item.label, value: item.value.f_meter_brand})
334
+ })
335
+ console.log("气表品牌: ", rs)
336
+ return rs
337
+ },
338
+ meterstyle() {
339
+ let ret = this.$GetSaleParam.getGasbrand()
340
+ console.log("气表型号ret: ", ret)
341
+ let rs = new Array()
342
+ if(this.model.f_meter_brand) {
343
+ ret.forEach((item, index) => {
344
+ if(this.model.f_meter_brand == item.value.f_meter_brand) {
345
+ rs = item.value.gasmodel
346
+ // item.value.gasmodel.forEach((item1, index1) => {
347
+ // rs.push({label: item1.label, value: item1.value.f_meter_style})
348
+ // })
349
+ }
350
+ })
351
+ }
352
+ console.log("气表型号rs: ", rs)
353
+ return rs
354
+ },
355
+ adjustables () {
356
+ let filter = this.$login.f.f_orgids
357
+ let ret = this.$GetSaleParam.getAdjustable(filter)
358
+ let arr = new Array()
359
+ ret.forEach((item, index) => {
360
+ arr.push({label: `[${item.value.f_adjustable_id}]-${item.label}`, value: item.value.id})
361
+ // arr[index].label = `[${item.value.f_adjustable_id}]-${item.label}`
362
+ // arr[index].value = item.value.id
363
+ })
364
+ return [{label: '全部', value: ''}, ...arr]
365
+ },
366
+ pricenames () {
367
+ let rs = new Array()
368
+ if (this.model.f_user_type && this.model.f_gasproperties && this.model.f_price_type) {
369
+ let params = {
370
+ f_user_type: this.model.f_user_type,
371
+ f_gasproperties: this.model.f_gasproperties,
372
+ f_price_type: this.model.f_price_type,
373
+ filter: this.$login.f.f_fengongsi
374
+ }
375
+ console.log('气价参数。,。。', params)
376
+ let ret = this.$GetSaleParam.getPrice(params)
377
+ ret.forEach((item, index) => {
378
+ rs.push({label: item.label, value: item.value.f_price_name})
379
+ // rs[index].value = item.value.f_price_name
380
+ })
381
+ }
382
+ return rs
383
+ }
384
+ }
385
+ }
386
+ </script>
387
+ <style lang="less" scoped>
388
+ .average{
389
+ width: 20%;
390
+ }
391
+ v-select{
392
+ width: 110px;
393
+ height: 30px;
394
+ border-radius: 2px;
395
+ border: 1px solid #d0d0d0;
396
+ background-color: #ffffff;
397
+ }
398
+ .box {
399
+ width: 727px;
400
+ height: 175px;
401
+ border-radius: 2px;
402
+ background-color: #fafafa;
403
+ border: 1px solid #999999;
404
+ margin-top: 13px;
405
+ }
406
+ .addresstitle{
407
+ width: 100%;
408
+ height: 20%;
409
+ font-family: PingFangSC-Bold;
410
+ font-size: 16px;
411
+ color: #666666;
412
+ margin-top: 20px;
413
+ margin-left: 20px;
414
+ text-align: left;
415
+ }
416
+ .addressbody{
417
+ margin-top: 60px;
418
+ width: 100%;
419
+ height: auto;
420
+ position: absolute;
421
+ }
422
+ .lb{
423
+ width: 100%;
424
+ padding-left: 8px;
425
+ border: none;
426
+ border-left: 4px solid #3db6ef;
427
+ font-size: 16px;
428
+ font-family: PingFangSC-Bold;
429
+ color: #666666;
430
+ text-align: left;
431
+ }
432
+ .button{
433
+ margin-top: 20px;
434
+ }
435
+ </style>