sale-client 3.6.583 → 3.6.585

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.583",
3
+ "version": "3.6.585",
4
4
  "description": "收费模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -87,6 +87,9 @@
87
87
  v-if="$parent.$parent.rows && $parent.$parent.rows.length === 1 && $parent.$parent.rows[0].f_user_state === '销户'">
88
88
  启用
89
89
  </button>
90
+ <button @click="$parent.$parent.openBatchModal()" class="button_clear button_spacing"
91
+ style="float: right">批量修改调压箱
92
+ </button>
90
93
  <div
91
94
  :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
92
95
  @click="$parent.$parent.hidden()"
@@ -302,7 +305,7 @@
302
305
  </div>
303
306
  </div>
304
307
  </criteria>
305
- <data-grid :model="model" class="list_area table_sy" @dblclick="$parent.modifyUser" v-ref:grid partial='list'>
308
+ <data-grid :model="model" class="list_area table_sy" @dblclick="$parent.modifyUser" v-ref:grid partial='list' optional>
306
309
  <template partial='head'>
307
310
  <tr>
308
311
  <th>
@@ -476,6 +479,20 @@
476
479
  </footer>
477
480
  </modal>
478
481
  <!--<user-flow-sheet :show="printflag" :bill-config='configs' :bill-data='billData' :data='newdata' v-on:toggle="close" @printok="printok" v-ref:printbill></user-flow-sheet>-->
482
+ <modal :show.sync="showModifyAdjustables" width="500px" title="批量修改调压箱" large backdrop="false">
483
+ <article slot="modal-body" class="modal-body" style="height: 70px">
484
+ <label class="font_normal_body">调&ensp;压&ensp;箱</label>
485
+ <v-select :options='adjustablesNew' :search='true'
486
+ :value.sync="f_adjustable_id"
487
+ close-on-select
488
+ placeholder='调压箱'
489
+ v-model='f_adjustable_id'></v-select>
490
+ </article>
491
+ <footer slot="modal-footer" class="modal-footer">
492
+ <button class="button_search button_spacing" :disabled="!f_adjustable_id || f_adjustable_id.length < 1 " type="button" @click="batchModifyAdjustables()">确认</button>
493
+ <button class="button_search button_spacing" type="button" @click="closeBatchAdjustables()">取消</button>
494
+ </footer>
495
+ </modal>
479
496
 
480
497
  <work-busy :is-busy="iswork" v-show="iswork"></work-busy>
481
498
  </div>
@@ -570,6 +587,8 @@ let loadParamGem = async function (self) {
570
587
  xiaohushow: false,
571
588
  inputtores: this.$appdata.getParam('抄表员'),
572
589
  adjustables: [],
590
+ adjustablesNew: [],
591
+ f_adjustable_id: '',
573
592
 
574
593
  // 导入组件
575
594
  show: false,
@@ -602,6 +621,7 @@ let loadParamGem = async function (self) {
602
621
  showselectaddress: false,
603
622
  isedit: false,
604
623
  clientWidth: document.body.clientWidth,
624
+ showModifyAdjustables: false,
605
625
  batchMeterShow: false,
606
626
  billData: {
607
627
  url: 'rs/report/userignition',
@@ -635,6 +655,38 @@ let loadParamGem = async function (self) {
635
655
  }
636
656
  },
637
657
  methods: {
658
+ closeBatchAdjustables () {
659
+ this.showModifyAdjustables = false
660
+ },
661
+ openBatchModal () {
662
+ let rowdata = this.$refs.paged.$refs.grid.getRowData()
663
+ if (rowdata.length <= 0) {
664
+ this.$showMessage('请至少选择一个表具!')
665
+ return
666
+ }
667
+ this.showModifyAdjustables = true
668
+ },
669
+ async batchModifyAdjustables() {
670
+ let rowdata = this.$refs.paged.$refs.grid.getRowData()
671
+ let userfilesIds = rowdata.map(item => item.f_userfiles_id);
672
+ console.log('已选择的数据', userfilesIds)
673
+ console.log('已选择的调压箱', this.f_adjustable_id)
674
+ let model = {
675
+ f_adjustable_id: this.f_adjustable_id,
676
+ f_userfiles_ids: userfilesIds
677
+ }
678
+ await this.$resetpost('rs/af-revenue/logic/batchModifyAdjustables', model, {
679
+ resolveMsg: null,
680
+ rejectMsg: '批量修改调压箱失败'
681
+ }).then((res) => {
682
+ if (res && res.data) {
683
+ this.$showMessage(`本次批量修改: ${res.data}户`);
684
+ }
685
+ this.closeBatchAdjustables()
686
+ this.selfSearch()
687
+ })
688
+
689
+ },
638
690
  getAuthority () {
639
691
  if (this.$login.r.find(value => value == '销户导入')) {
640
692
  this.bacthPin = '销户导入'
@@ -821,6 +873,7 @@ let loadParamGem = async function (self) {
821
873
  this.model.rows.unshift(data)
822
874
  },
823
875
  selfSearch (args) {
876
+ this.$refs.paged.$refs.grid.selectInit()
824
877
  args.condition = `${args.condition} ` + this.orgcondition
825
878
  this.criteriaShow = false
826
879
  this.$refs.paged.$refs.grid.$el.scrollTop = 0
@@ -874,6 +927,7 @@ let loadParamGem = async function (self) {
874
927
  arr.push(temp)
875
928
  })
876
929
  this.adjustables = [{label: '全部', value: ''}, ...arr]
930
+ this.adjustablesNew = arr
877
931
  // 初始化气表品牌
878
932
  let brandArr = []
879
933
  this.$GetSaleParam.getGasbrand().forEach((item) => {
@@ -0,0 +1,478 @@
1
+ <template>
2
+ <div>
3
+ <validator name='v' @valid="$emit('valid')" @invalid="$emit('invalid')">
4
+ <form class="form-horizontal select-overspread ">
5
+ <div class="row">
6
+ <div class="col-sm-4 form-group " :class="[!baseinfo.base.f_user_name ? 'has-error' : '']"
7
+ v-if="getConfigShowItem('f_user_name')">
8
+ <label for="f_user_name" class="font_normal_body">*{{getConfigLabelName('f_user_name','用户姓名')}}</label>
9
+ <input type="text" v-model="baseinfo.base.f_user_name"
10
+ v-validate:f_user_name='getConfigValidate("f_user_name",true)'
11
+ class="input_search" style="width:60%" :placeholder="getConfigPlaceholder('f_user_name','用户姓名')" v-next-el="phone">
12
+ </div>
13
+ <div style="" class="col-sm-4 form-group"
14
+ :class="[$v.f_user_phone.minlength || $v.f_user_phone.maxlength ? 'has-error' : '']" v-if="getConfigShowItem('f_user_phone')">
15
+ <label for="f_user_phone" class="font_normal_body">*{{getConfigLabelName('f_user_phone','客户电话')}}</label>
16
+ <input type="text" maxlength="11" v-model="baseinfo.base.f_user_phone"
17
+ v-validate:f_user_phone="getConfigValidate('f_user_phone')" class="input_search" style="width:60%"
18
+ :placeholder="getConfigPlaceholder('f_user_phone','客户电话')"
19
+ v-el:phone v-next-el="area">
20
+ </div>
21
+ <div class="col-sm-4 form-group">
22
+ <label for="f_user_state" class="font_normal_body">&ensp;客户状态</label>
23
+ <v-select :value.sync="baseinfo.base.f_user_state"
24
+ :disabled="false"
25
+ :value-single="true"
26
+ :options='userstates' placeholder='客户状态'
27
+ close-on-select></v-select>
28
+ </div>
29
+ </div>
30
+ <div class="row">
31
+ <div style="" class="col-sm-4 form-group" >
32
+ <label for="f_credentials" class="font_normal_body">&ensp;证件类型</label>
33
+ <v-select id="idCardType" :value.sync="baseinfo.base.f_credentials"
34
+ v-model="baseinfo.base.f_credentials"
35
+ :value-single="true"
36
+ :options='credentials'
37
+ :placeholder="getConfigPlaceholder('f_credentials','证件类型')"
38
+ style="width: 65%"
39
+ close-on-select></v-select>
40
+ </div>
41
+ <div style="" class="col-sm-8 form-group"
42
+ key="身份证号码"
43
+ :class="[$v.f_idnumber.identityCardValid ? 'has-error' : '']"
44
+ v-if="baseinfo.base.f_credentials.includes('身份证')">
45
+ <label for="f_idnumber" class="font_normal_body color-red">*证件号码</label>
46
+ <input type="text" maxlength="18" v-model="baseinfo.base.f_idnumber"
47
+ v-validate:f_idnumber='{identityCardValid: true}' class="input_search" style="width:80%"
48
+ :placeholder="getConfigPlaceholder('f_idnumber','证件号码')">
49
+ </div>
50
+ <div style="" class="col-sm-8 form-group"
51
+ key="证件号码"
52
+ v-else>
53
+ <label class="font_normal_body">&ensp;证件号码</label>
54
+ <input type="text" v-model="baseinfo.base.f_idnumber" class="input_search" style="width:80%"
55
+ :placeholder="getConfigPlaceholder('f_idnumber','证件号码')">
56
+ </div>
57
+ </div>
58
+ <div class="row">
59
+ <div class="col-sm-12 form-group" :class="[$v.f_address.required ? 'has-error' : '']">
60
+ <label for="f_address" class="font_normal_body">*地址信息</label>
61
+ <input type="text" v-model="addressinfo.f_address" v-validate:f_address="{required: true}"
62
+ class="input_search" disabled="disabled" style="width:75%;" placeholder="用户地址" >
63
+ <span>
64
+ <button class="button_search button_spacing" type="button" style="width: max-content" v-if="!isedit" @click="selectaddress()">选择地址</button>
65
+ <!-- <button class="button_search button_spacing" type="button" style="width: max-content" v-if="isedit" @click="modifyaddress()">修改地址</button>-->
66
+ <button class="button_search button_spacing" type="button" style="width: max-content" v-if="isedit" @click="selectaddress()">修改地址</button>
67
+ </span>
68
+ </div>
69
+ </div>
70
+ <div class="row">
71
+ <div class="col-sm-6 form-group">
72
+ <label style="letter-spacing: 2em;margin-right: -2em;margin-left: -2em" class="font_normal_body w2">&ensp;经度</label>
73
+ <input type="text" v-model="lng"
74
+ class="input_search" :disabled="true" style="width:75%;" placeholder="经度" >
75
+ </div>
76
+ <div class="col-sm-6 form-group">
77
+ <label style="letter-spacing: 2em;margin-right: -2em;margin-left: -2em" class="font_normal_body w2">&ensp;纬度</label>
78
+ <input type="text" v-model="lat"
79
+ class="input_search" :disabled="true" style="width:75%;" placeholder="经度" >
80
+ </div>
81
+ </div>
82
+ <div class="row">
83
+ <div style=""
84
+ v-show="(formconfig && formconfig.f_used_name && formconfig.f_used_name.required) || !onlyshowmust"
85
+ :class="[$v.f_used_name.required ? 'has-error' : '']"
86
+ class="col-sm-4 form-group" v-if="getConfigShowItem('f_used_name')">
87
+ <label style="letter-spacing: 0.5em;margin-right: -0.5em;margin-left: -0.5em" for="f_used_name" class="font_normal_body w3">&ensp;{{getConfigLabelName('f_used_name','曾用名')}}</label>
88
+ <input type="text" v-model="baseinfo.base.f_used_name" class="input_search" style="width:60%"
89
+ v-validate:f_used_name="getConfigValidate('f_used_name', false)"
90
+ :placeholder="getConfigPlaceholder('f_used_name','曾用名')">
91
+ </div>
92
+ <div style="" class="col-sm-4 form-group"
93
+ v-show="(formconfig && formconfig.f_rent_phone && formconfig.f_rent_phone.required) || !onlyshowmust"
94
+ :class="[$v.f_rent_phone.required ? 'has-error' : '']" v-if="getConfigShowItem('f_rent_phone')">
95
+ <label for="f_rent_phone" class="font_normal_body">&ensp;备用电话</label>
96
+ <input type="text" v-model="baseinfo.base.f_rent_phone" class="input_search" style="width:60%"
97
+ v-validate:f_rent_phone="getConfigValidate('f_rent_phone', false)"
98
+ placeholder="备用电话">
99
+ </div>
100
+ <div class="col-sm-4 form-group"
101
+ v-show="(formconfig && formconfig.f_people_num && formconfig.f_people_num.required) || !onlyshowmust"
102
+ :class="[$v.f_people_num.dctest ? 'has-error' : '']" v-if="getConfigShowItem('f_people_num')">
103
+ <label for="f_people_num" style="letter-spacing: 0.5em;margin-right: -0.5em" class="font_normal_body w3">{{getConfigLabelName('f_people_num','人口数')}}</label>
104
+ <input type="number" v-model="baseinfo.base.f_people_num" v-show="!peopleMax" v-validate:f_people_num='{dctest: [0, ">=" ]}'
105
+ :disabled="!jurisdiction.includes('修改人口数')" class="input_search" style="width:60%"
106
+ placeholder="家庭人口数">
107
+ <v-select id="f_people_num" :value.sync="baseinfo.base.f_people_num"
108
+ v-if="peopleMax"
109
+ v-model="baseinfo.base.f_people_num"
110
+ :value-single="true"
111
+ :options='peoplenums'
112
+ :placeholder="getConfigPlaceholder('f_people_num','家庭人口数')"
113
+ style="width: 65%"
114
+ close-on-select></v-select>
115
+ </div>
116
+ </div>
117
+ <div class="row">
118
+ <div style=""
119
+ v-show="(formconfig && formconfig.f_balance && formconfig.f_balance.required) || !onlyshowmust"
120
+ :class="[$v.f_balance.required ? 'has-error' : '']"
121
+ class="col-sm-4 form-group" v-if="getConfigShowItem('f_balance')">
122
+ <label for="f_balance" class="font_normal_body">&ensp;{{getConfigLabelName('f_balance','用户余额')}}</label>
123
+ <input type="text" v-model="baseinfo.base.f_balance" class="input_search" style="width:60%"
124
+ v-validate:f_balance="getConfigValidate('f_balance', false)"
125
+ :placeholder="getConfigPlaceholder('f_balance','用户余额')"
126
+ :disabled="!jurisdiction.includes('档案信息查询修改')">
127
+ </div>
128
+ <div style="" class="col-sm-4 form-group" v-if="getConfigShowItem('f_is_mgq')"
129
+ v-show="(formconfig && formconfig.f_is_mgq && formconfig.f_is_mgq.required) || !onlyshowmust"
130
+ :class="[$v.f_is_mgq.required ? 'has-error' : '']">
131
+ <label for="f_is_mgq" style="letter-spacing: 0.5em;margin-right: -0.5em" class="font_normal_body w3">{{getConfigLabelName('f_is_mgq','煤改气')}}</label>
132
+ <input type="text" v-show="false" v-model="baseinfo.base.f_is_mgq"
133
+ v-validate:f_is_mgq="getConfigValidate('f_is_mgq', false)">
134
+ <v-select id="f_is_mgq" :value.sync="baseinfo.base.f_is_mgq" v-model="baseinfo.base.f_is_mgq"
135
+ :placeholder="getConfigPlaceholder('f_is_mgq','是否煤改气')"
136
+ :options='mgq' style="width: 65%" close-on-select></v-select>
137
+ </div>
138
+ <div class="col-sm-4 form-group" v-if="getConfigShowItem('f_book_no')"
139
+ v-show="(formconfig && formconfig.f_book_no && formconfig.f_book_no.required) || !onlyshowmust"
140
+ :class="[$v.f_book_no.required ? 'has-error' : '']">
141
+ <label for="f_contract" class="font_normal_body">&ensp;{{getConfigLabelName('f_book_no','燃气本号')}}</label>
142
+ <input type="text" v-model="baseinfo.base.f_book_no" class="input_search" style="width:60%"
143
+ v-validate:f_book_no="getConfigValidate('f_book_no', false)"
144
+ :placeholder="getConfigPlaceholder('f_book_no','用户证号')">
145
+ </div>
146
+ </div>
147
+ <div class="row">
148
+ <div style="" class="col-sm-4 form-group" v-if="getConfigShowItem('f_rent_name')"
149
+ v-show="(formconfig && formconfig.f_rent_name && formconfig.f_rent_name.required) || !onlyshowmust"
150
+ :class="[$v.f_rent_name.required ? 'has-error' : '']">
151
+ <label for="f_rent_name" class="font_normal_body">&ensp;{{getConfigLabelName('f_rent_name','租户姓名')}}</label>
152
+ <input type="text" v-model="baseinfo.base.f_rent_name" class="input_search" style="width:60%"
153
+ v-validate:f_rent_name="getConfigValidate('f_rent_name', false)"
154
+ :placeholder="getConfigPlaceholder('f_rent_name','租户姓名')">
155
+ </div>
156
+ <div style="" class="col-sm-4 form-group" v-if="getConfigShowItem('f_zuhu_phone')"
157
+ v-show="(formconfig && formconfig.f_zuhu_phone && formconfig.f_zuhu_phone.required) || !onlyshowmust"
158
+ :class="[$v.f_zuhu_phone.required ? 'has-error' : '']">
159
+ <label for="f_zuhu_phone" class="font_normal_body">{{getConfigLabelName('f_zuhu_phone','租户电话')}}</label>
160
+ <input type="text" v-model="baseinfo.base.f_zuhu_phone" class="input_search" style="width:60%"
161
+ v-validate:f_zuhu_phone="getConfigValidate('f_zuhu_phone', false)"
162
+ :placeholder="getConfigPlaceholder('f_zuhu_phone','租户电话')">
163
+ </div>
164
+ <div style="" class="col-sm-4 form-group"
165
+ v-show="(formconfig && formconfig.f_cost_type && formconfig.f_cost_type.required) || !onlyshowmust"
166
+ v-if="getConfigShowItem('f_cost_type')">
167
+ <label for="f_is_mgq" class="font_normal_body ">&ensp;{{getConfigLabelName('f_cost_type','付款类型')}}</label>
168
+ <v-select id="f_is_mgq" :value.sync="baseinfo.base.f_cost_type" v-model="baseinfo.base.f_cost_type"
169
+ :options='costtype'
170
+ :placeholder="getConfigPlaceholder('f_cost_type','付款类型')" style="width: 65%" close-on-select></v-select>
171
+ </div>
172
+ </div>
173
+ <div class="row">
174
+ <div class="col-sm-8 form-group" v-if="getConfigShowItem('f_contract_id')"
175
+ v-show="(formconfig && formconfig.f_contract_id && formconfig.f_contract_id.required) || !onlyshowmust"
176
+ :class="[$v.f_contract_id.required ? 'has-error' : '']">
177
+ <label for="f_contract" class="font_normal_body">&ensp;{{getConfigLabelName('f_contract_id','合同编号')}}</label>
178
+ <input type="text" v-model="baseinfo.base.f_contract_id" class="input_search" style="width:80%"
179
+ v-validate:f_contract_id="getConfigValidate('f_contract_id', false)"
180
+ :placeholder="getConfigPlaceholder('f_contract_id','合同编号')">
181
+ </div>
182
+ <div class="col-sm-4 form-group"
183
+ v-show="(formconfig && formconfig.f_print_dh && formconfig.f_print_dh.required) || !onlyshowmust"
184
+ :class="[$v.f_print_dh.required ? 'has-error' : '']">
185
+ <label for="f_print_dh" class="font_normal_body ">&ensp;{{getConfigLabelName('f_print_dh','打印类别')}}</label>
186
+ <input type="text" v-show="false" v-model="baseinfo.base.f_print_dh"
187
+ v-validate:f_print_dh="getConfigValidate('f_print_dh', false)">
188
+ <v-select id="f_print_dh" :value.sync="baseinfo.base.f_print_dh" v-model="baseinfo.base.f_print_dh"
189
+ :value-single="true" :disabled="baseinfo.base.f_print_dh_stats" :search="false"
190
+ :options='printstate' placeholder='流程单 | 点火单' style="width: 65%" close-on-select></v-select>
191
+ </div>
192
+
193
+
194
+ </div>
195
+ <div class="row">
196
+ <div style="" class="col-sm-12 form-group" v-if="getConfigShowItem('f_comments')"
197
+ v-show="(formconfig && formconfig.f_comments && formconfig.f_comments.required) || !onlyshowmust"
198
+ :class="[$v.f_comments.required ? 'has-error' : '']">
199
+ <label for="f_paper_accoun" style="letter-spacing: 2em;margin-right: -2em;margin-left: -2em" class="font_normal_body w2">&ensp;{{getConfigLabelName('f_comments','备注')}}</label>
200
+ <input class="input_search" style="width:86.5%;height: 40px" v-model="baseinfo.base.f_comments"
201
+ :placeholder="getConfigPlaceholder('f_comments','请输入备注信息')"
202
+ v-validate:f_comments="getConfigValidate('f_comments',false)" />
203
+ </div>
204
+
205
+ <div class="col-sm-4 form-group"
206
+ v-show="((formconfig && formconfig.f_house_type && formconfig.f_house_type.required) || !onlyshowmust) && getConfigShowItem('f_house_type')"
207
+ :class="[$v.f_house_type.required ? 'has-error' : '']">
208
+ <label for="f_user_state" class="font_normal_body">&ensp;{{getConfigLabelName('f_house_type','房屋类型')}}</label>
209
+ <input type="text" v-show="false" v-model="baseinfo.base.f_house_type"
210
+ v-validate:f_house_type="getConfigValidate('f_house_type',false)">
211
+ <v-select :value.sync="baseinfo.base.f_house_type"
212
+ :search="false"
213
+ :value-single="true"
214
+ :options='housetype' close-on-select
215
+ :placeholder="getConfigPlaceholder('f_house_type','房屋类型')">
216
+ </v-select>
217
+ </div>
218
+ </div>
219
+ <div class="row">
220
+ <a style="text-decoration: none;font-weight: 300;float: left;color: #333;margin-top: 15px;font-weight: 500"
221
+ v-if="baseinfo.base.f_cost_type[0] === '银行代扣'">银行信息</a>
222
+ </div>
223
+ <div v-if="baseinfo.base.f_cost_type[0] === '银行代扣'">
224
+ <div class="row">
225
+ <div class="col-sm-4 form-group"
226
+ :class="[$v.f_bank_accopen.required ? 'has-error' : '']">
227
+ <label for="f_username" class="font_normal_body">银行户名</label>
228
+ <input type="text" v-model="baseinfo.bank.f_bank_accopen"
229
+ class="input_search" style="width:60%" id="f_username" placeholder="客户名称"
230
+ v-validate:f_bank_accopen='{required: true}'
231
+ v-next-el="bankaccount">
232
+ </div>
233
+ <div class="col-sm-4 form-group" id=userfiles-useEssInf-银行名称>
234
+ <label for="f_username" class="font_normal_body ">银行名称</label>
235
+ <v-select :value.sync="baseinfo.bank.f_bank_name"
236
+ :options='banknames' placeholder='银行名称'
237
+ close-on-select></v-select>
238
+ </div>
239
+ <div class="col-sm-4 form-group">
240
+ <label for="f_bank_idnumber" class="font_normal_body">缴费编号</label>
241
+ <input type="text" v-model="baseinfo.bank.f_bank_pay_number"
242
+ class="input_search" style="width:60%"
243
+ aria-describedby="helpBlock" placeholder="缴费编号" v-el:bankpaynumber>
244
+ </div>
245
+ <div class="col-sm-12 form-group">
246
+ <label for="f_bank_idnumber" class="font_normal_body">身份证号</label>
247
+ <input type="text" v-model="baseinfo.bank.f_bank_idnumber"
248
+ class="input_search" style="width:54%"
249
+ aria-describedby="helpBlock" placeholder="身份证号" v-el:bankidnumber>
250
+ </div>
251
+ <div class="col-sm-12 form-group"
252
+ :class="[$v.f_bank_account.required ? 'has-error' : '']">
253
+ <label for="f_userid" class="font_normal_body">银行账号</label>
254
+ <input type="text" v-model="baseinfo.bank.f_bank_account" class="input_search" style="width:54%"
255
+ v-validate:f_bank_account='{required: true}' placeholder="银行账号" v-el:bankaccount
256
+ v-next-el="bankidnumber">
257
+ </div>
258
+ </div>
259
+ </div>
260
+ </form>
261
+ </validator>
262
+ <modal v-if="showselectaddress" :show.sync="showselectaddress" width="80%" title="地址信息" v-ref:modal large
263
+ backdrop="false">
264
+ <article slot="modal-body" class="modal-body" style="height: 700px;padding: 0!important;">
265
+ <file-address-manage-new :is-select="isSelect" :fileinfo="addressinfo"
266
+ @address-valid="doNothing" :showselectaddress.sync="showselectaddress"
267
+ :f_filialeid="f_filialeid"
268
+ v-ref:fileaddress></file-address-manage-new>
269
+ </article>
270
+ <footer slot="modal-footer" class="modal-footer">
271
+ </footer>
272
+ </modal>
273
+ </div>
274
+ </template>
275
+
276
+ <script>
277
+ import {HttpResetClass} from 'vue-client'
278
+
279
+ let getEditUserState = async function (self) {
280
+ try {
281
+ let http = new HttpResetClass()
282
+ let result = await http.load('GET', `rs/vue/EditUserState.json`, {}, {resolveMsg: null, rejectMsg: null})
283
+ console.log(result.data.EditUserState)
284
+ self.edituserstate = result.data.EditUserState
285
+ Object.assign(self.config, result.data)
286
+ } catch (e) {
287
+ console.log(e)
288
+ }
289
+ }
290
+
291
+ export default {
292
+ title: '基本信息',
293
+ props: ['baseinfo', 'addressinfo', 'isedit', 'f_filialeid', 'formconfig', 'onlyshowmust'],
294
+ data () {
295
+ return {
296
+ showselectaddress: false,
297
+ site: '',
298
+ areas: [],
299
+ streets: [],
300
+ residentials: [],
301
+ lng: '',
302
+ lat: '',
303
+ config: {
304
+ f_idnumber: true,
305
+ f_house_type: true
306
+ },
307
+ validateRules: {},
308
+ inputtores: this.$appdata.getParam('抄表员'),
309
+ credentials: this.$appdata.getParam('证件类型'),
310
+ costtypes: this.$appdata.getParam('缴费类型'),
311
+ banknames: this.$appdata.getParam('银行名称'),
312
+ userstates: this.$appdata.getParam('预备客户状态参数') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('预备客户状态参数')] : [{label: '预备', value: '预备'}],
313
+ housetype: this.$appdata.getParam('房屋类型'),
314
+ mgq: this.$appdata.getParam('是否煤改气'),
315
+ costtype: this.$appdata.getParam('付款类型'),
316
+ printstate: this.$appdata.getParam('建档打印类型') ? [{label: '暂不选择', value: '暂不选择'}, ...this.$appdata.getParam('建档打印类型')] : [{label: '暂不选择', value: '暂不选择'}],
317
+ peopleMax: this.$appdata.getSingleValue('最大人口数'),
318
+ jurisdiction: this.$login.r,
319
+ edituserstate: false,
320
+ // highMeterPlugin: {},
321
+ readCardFlag: true,
322
+
323
+ isSelect: false
324
+ }
325
+ },
326
+ ready () {
327
+ getEditUserState(this)
328
+ this.$resetValidation()
329
+ this.lng = this.addressinfo.f_lng
330
+ this.lat = this.addressinfo.f_lat
331
+ console.log('addressinfo', this.addressinfo)
332
+ // this.initValidateRules()
333
+ },
334
+ beforeDestroy () {
335
+ },
336
+ methods: {
337
+ // updateValidateRules() {
338
+ // if (!this.formconfig) return
339
+ //
340
+ // Object.keys(this.formconfig).forEach(field => {
341
+ // const fieldConfig = this.formconfig[field]
342
+ // const rules = {}
343
+ //
344
+ // if (fieldConfig.required) {
345
+ // rules.required = true
346
+ // }
347
+ //
348
+ // if (fieldConfig.minlength || fieldConfig.minlength === 0) {
349
+ // rules.minlength = fieldConfig.minlength
350
+ // }
351
+ //
352
+ // if (fieldConfig.maxlength) {
353
+ // rules.maxlength = fieldConfig.maxlength
354
+ // }
355
+ //
356
+ // this.validateRules[field] = Object.assign({}, this.validateRules[field], rules)
357
+ // })
358
+ // },
359
+
360
+ getConfigValidate (name, defaultVal) {
361
+ this.$resetValidation()
362
+ if (this.formconfig && this.formconfig[name]) {
363
+ let Validate = {}
364
+ if (this.formconfig[name].required) {
365
+ Object.assign(Validate, {required: true})
366
+ }
367
+ if (this.formconfig[name].minlength || this.formconfig[name].minlength === 0) {
368
+ Object.assign(Validate, {minlength: this.formconfig[name].minlength})
369
+ }
370
+ if (this.formconfig[name].maxlength) {
371
+ Object.assign(Validate, {maxlength: this.formconfig[name].maxlength})
372
+ }
373
+ return Validate
374
+ } else if (name === 'f_user_phone') {
375
+ return { minlength: 11, maxlength: 11 }
376
+ } else if (defaultVal) {
377
+ return {required: defaultVal}
378
+ }
379
+ return {}
380
+ },
381
+ getConfigShowItem (name, defaultVal = true) {
382
+ if (this.formconfig && this.formconfig[name] && this.formconfig[name].hasOwnProperty('showItem')) {
383
+ return this.formconfig[name].showItem
384
+ } else {
385
+ return defaultVal
386
+ }
387
+ },
388
+ getConfigLabelName (name, defaultVal) {
389
+ if (this.formconfig && this.formconfig[name] && this.formconfig[name].labelName) {
390
+ return this.formconfig[name].labelName
391
+ } else {
392
+ return defaultVal
393
+ }
394
+ },
395
+ getConfigPlaceholder (name, defaultVal) {
396
+ if (this.formconfig && this.formconfig[name] && this.formconfig[name].placeholder) {
397
+ return this.formconfig[name].placeholder
398
+ } else {
399
+ return defaultVal
400
+ }
401
+ },
402
+ selectaddress () {
403
+ this.showselectaddress = true
404
+ this.isSelect = true
405
+ },
406
+ modifyaddress () {
407
+ this.showselectaddress = true
408
+ this.isSelect = false
409
+ },
410
+ onValid (res) {
411
+ this.$dispatch('valid')
412
+ },
413
+ onInvalid (res) {
414
+ // 打印所有校验状态
415
+ this.$dispatch('invalid')
416
+ },
417
+ doNothing () {
418
+ // console.log('啥也不做')
419
+ },
420
+ resetValidation () {
421
+ this.baseinfo = Object.assign({}, this.baseinfo)
422
+ this.$nextTick(() => {
423
+ this.$resetValidation()
424
+ })
425
+ },
426
+ readIDCardCallback (compoent, msg) {
427
+ // console.log('进入高拍仪',msg)
428
+ if (msg.err !== 0) {
429
+ return
430
+ }
431
+ // document.getElementById("idCardType").getElementsByClassName("btn-content")[0].innerHTML="身份证"
432
+ compoent.baseinfo.base.f_idnumber = msg.strID
433
+ compoent.baseinfo.base.f_user_name = msg.strName.trim()
434
+ // compoent.baseinfo.base.f_credentials = '身份证'
435
+ }
436
+ },
437
+ watch: {
438
+ 'baseinfo.base.f_credentials' () {
439
+ this.$resetValidation()
440
+ },
441
+ 'baseinfo.base.f_cost_type[0]' () {
442
+ this.$resetValidation()
443
+ },
444
+ 'baseinfo.base.f_user_name'(val) {
445
+ console.log('f_user_name变化', val)
446
+ },
447
+ 'addressinfo.f_lat'(newVal) {
448
+ this.lat = newVal;
449
+ },
450
+ 'addressinfo.f_lng'(newVal) {
451
+ this.lng = newVal;
452
+ }
453
+ },
454
+ computed: {
455
+ peoplenums () {
456
+ let peopleMax = this.$appdata.getSingleValue('最大人口数') ? this.$appdata.getSingleValue('最大人口数') : 0
457
+ let nums = []
458
+ for (let i = 1; i <= peopleMax; i++) {
459
+ let temp = {}
460
+ temp.label = i
461
+ temp.value = i
462
+ nums.push(temp)
463
+ }
464
+ return nums
465
+ }
466
+ },
467
+ events: {
468
+ 'confirmaddress' (res) {
469
+ this.showselectaddress = false
470
+ this.addressinfo.f_address = res.f_address
471
+ this.addressinfo.id = res.id
472
+ this.lat = res.f_lat
473
+ this.lng = res.f_lng
474
+ this.$dispatch('defaultOtheret', res)
475
+ }
476
+ }
477
+ }
478
+ </script>
@@ -15,4 +15,6 @@ export default function () {
15
15
  Vue.component('user-info-detail-manage-new', (resolve) => { require(['./UserInfoDetailManageNew'], resolve) })
16
16
  // 物联网退费管理
17
17
  Vue.component('iot-refund', (resolve) => { require(['./IOTRefund'], resolve) })
18
+ // 用户基本信息test
19
+ Vue.component('file-user-essential-info', (resolve) => { require(['./UserEssentialInfoTest'], resolve) })
18
20
  }