sale-client 4.2.33 → 4.2.34

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.
Files changed (52) hide show
  1. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  2. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  3. package/.gradle/5.2.1/gc.properties +0 -0
  4. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  5. package/.gradle/buildOutputCleanup/cache.properties +2 -0
  6. package/.gradle/vcs-1/gc.properties +0 -0
  7. package/package.json +1 -1
  8. package/src/components/FilesManage/addressts/FileUserFilests.vue +671 -0
  9. package/src/components/FilesManage/ncUserinfoList.vue +315 -0
  10. package/src/components/SellGasCharge/MeterCharge/CardDataRewrite.vue +107 -0
  11. package/src/components/SendCard/SendCardData.vue +208 -0
  12. package/src/components/accounts/accountAdd.vue +276 -0
  13. package/src/components/accounts/accountsList.vue +183 -0
  14. package/src/components/accounts/accountsManage.vue +87 -0
  15. package/src/components/common/chargeinfo/chargeinfo.vue +55 -0
  16. package/src/components/common/userinfo_detail/config/exportConfig.js +85 -0
  17. package/src/components/ncarchives/ncArchivesAdd.vue +468 -0
  18. package/src/components/ncarchives/ncArchivesList.vue +159 -0
  19. package/src/components/ncarchives/ncUserfilesList.vue +373 -0
  20. package/src/components/ncarchives/ncarchivesmanage.vue +80 -0
  21. package/src/components/revenue/IOTArrears/arrears.vue +323 -0
  22. package/src/components/revenue/IOTArrears/iotRechargeAudit.vue +369 -0
  23. package/src/components/revenue/base/rightview/carddetail/cardiotfeeChangeDetail.vue +59 -0
  24. package/src/components/revenue/base/rightview/carddetail/reduceChangeDetail.vue +59 -0
  25. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchCancellationts.vue +73 -0
  26. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchEnablets.vue +73 -0
  27. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/ReduceAddGas.vue +199 -0
  28. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionManage.vue +24 -0
  29. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionYSManage.vue +24 -0
  30. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeDeduction.vue +185 -0
  31. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeYSDeduction.vue +185 -0
  32. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue +356 -0
  33. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue +148 -0
  34. package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackUserList.vue +136 -0
  35. package/src/components/revenue/recordMainten/sellinggas/AddWarehousemain.vue +65 -0
  36. package/src/components/revenue/recordMainten/sellinggas/MeterOperateAdd.vue +483 -0
  37. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemain.vue +279 -0
  38. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemainImport.vue +265 -0
  39. package/src/components/thirdapply/thirdAdd.vue +289 -0
  40. package/src/components/thirdapply/thirdList.vue +162 -0
  41. package/src/components/thirdapply/thirdManage.vue +74 -0
  42. package/src/components/webMeter/InstructQuery.vue +414 -0
  43. package/src/components/webMeter/ParamSet/ParamSet.vue +556 -0
  44. package/src/components/webMeter/ParamSet/ParamSetForm.vue +296 -0
  45. package/src/components/webMeter/WebUserHand.vue +483 -0
  46. package/src/components/webMeter/instructionView/NewQueryInstruct.vue +509 -0
  47. package/src/components/webMeter/instructionView/NewQueryInstructMain.vue +48 -0
  48. package/src/components/webMeter/webManage/NewMeterList.vue +461 -0
  49. package/src/filiale/jinhuang/WebHand.vue +1026 -1026
  50. package/src/filiale/yuncheng/FilesManageNew/UserEssentialInfoTest.vue +77 -28
  51. package/src/plugins/FileManageServicets.js +214 -0
  52. package/src/plugins/GetImg.js +53 -0
@@ -146,6 +146,17 @@
146
146
  v-validate:f_zuhu_phone=getConfigValidate("f_zuhu_phone",false)
147
147
  :placeholder="getConfigPlaceholder('f_zuhu_phone','租户电话')">
148
148
  </div>
149
+ </div>
150
+ <div class="row">
151
+ <div style="" class="col-sm-8 form-group"
152
+ v-show="(formconfig && formconfig.f_zuhu_idnumber && formconfig.f_zuhu_idnumber.required) || !onlyshowmust"
153
+ v-if="getConfigShowItem('f_zuhu_idnumber')"
154
+ :class="[$v.f_zuhu_idnumber.required ? 'has-error' : '']">
155
+ <label for="f_zuhu_idnumber" class="font_normal_body">{{getConfigLabelName('f_zuhu_idnumber','租户身份证')}}</label>
156
+ <input type="text" v-model="baseinfo.base.f_zuhu_idnumber" class="input_search" style="width:80%"
157
+ v-validate:f_zuhu_idnumber=getConfigValidate("f_zuhu_idnumber",false)
158
+ :placeholder="getConfigPlaceholder('f_zuhu_idnumber','租户身份证')">
159
+ </div>
149
160
  <div style="" class="col-sm-4 form-group"
150
161
  v-show="(formconfig && formconfig.f_cost_type && formconfig.f_cost_type.required) || !onlyshowmust"
151
162
  v-if="getConfigShowItem('f_cost_type')">
@@ -156,7 +167,7 @@
156
167
  </div>
157
168
  </div>
158
169
  <div class="row">
159
- <div class="col-sm-8 form-group" v-if="getConfigShowItem('f_contract_id',false)"
170
+ <div class="col-sm-8 form-group" v-if="getConfigShowItem('f_contract_id')"
160
171
  v-show="(formconfig && formconfig.f_contract_id && formconfig.f_contract_id.required) || !onlyshowmust"
161
172
  :class="[$v.f_contract_id.required ? 'has-error' : '']">
162
173
  <label for="f_contract" class="font_normal_body">&ensp;{{getConfigLabelName('f_contract_id','合同编号')}}</label>
@@ -164,24 +175,61 @@
164
175
  v-validate:f_contract_id=getConfigValidate("f_contract_id",false)
165
176
  :placeholder="getConfigPlaceholder('f_contract_id','合同编号')">
166
177
  </div>
167
- <!--<div style="" class="col-sm-4 form-group">-->
168
- <!--<label for="f_print_lc" class="font_normal_body ">&ensp;打印状态</label>-->
169
- <!--<v-select id="f_print_lc" :value.sync="baseinfo.base.f_print_lc" v-model="baseinfo.base.f_print_lc"-->
170
- <!--:value-single="true" :disabled="!jurisdiction.includes('档案信息查询修改')"-->
171
- <!--:options='mgq' placeholder='是否打印' style="width: 65%" close-on-select></v-select>-->
172
- <!--</div>-->
178
+ <div class="col-sm-4 form-group" v-if="getConfigShowItem('f_house_type')"
179
+ v-show="(formconfig && formconfig.f_house_type && formconfig.f_house_type.required) || !onlyshowmust"
180
+ :class="[$v.f_house_type.required ? 'has-error' : '']">
181
+ <label for="f_user_state" class="font_normal_body">&ensp;{{getConfigLabelName('f_house_type','房屋类型')}}</label>
182
+ <input type="text" v-show="false" v-model="baseinfo.base.f_house_type"
183
+ v-validate:f_house_type=getConfigValidate("f_house_type",false)>
184
+ <v-select :value.sync="baseinfo.base.f_house_type" :search="false" :value-single="true"
185
+ :options='housetype' close-on-select
186
+ :placeholder="getConfigPlaceholder('f_house_type','房屋类型')">
187
+ </v-select>
188
+ </div>
189
+ </div>
190
+ <div class="row">
191
+ <div style="" class="col-sm-4 form-group" v-if="getConfigShowItem('f_user_level')"
192
+ v-show="(formconfig && formconfig.f_user_level && formconfig.f_user_level.required) || !onlyshowmust"
193
+ :class="[$v.f_user_level.required ? 'has-error' : '']">
194
+ <label for="f_user_level" class="font_normal_body ">&ensp;{{getConfigLabelName('f_user_level','用户等级')}}</label>
195
+ <input type="text" v-show="false" v-model="baseinfo.base.f_user_level"
196
+ v-validate:f_user_level=getConfigValidate("f_user_level",false)>
197
+ <v-select :value.sync="baseinfo.base.f_user_level" :search="false" :value-single="true"
198
+ :options='userlevel'
199
+ :placeholder="getConfigPlaceholder('f_user_level','用户等级')" close-on-select>
200
+ </v-select>
201
+ </div>
202
+ <div class="col-sm-4 form-group" v-if="getConfigShowItem('f_user_nature')"
203
+ v-show="(formconfig && formconfig.f_user_nature && formconfig.f_user_nature.required) || !onlyshowmust"
204
+ :class="[$v.f_user_nature.required ? 'has-error' : '']">
205
+ <label for="f_user_nature" class="font_normal_body" title="用户性质">&ensp;{{getConfigLabelName('f_user_nature','用气类型')}}</label>
206
+ <input type="text" v-show="false" v-model="baseinfo.base.f_user_nature"
207
+ v-validate:f_user_nature=getConfigValidate("f_user_nature",false)>
208
+ <v-select :value.sync="baseinfo.base.f_user_nature" :search="false" :value-single="true"
209
+ :placeholder="getConfigPlaceholder('f_user_nature','用气类型')"
210
+ :options='usernature' close-on-select>
211
+ </v-select>
212
+ </div>
213
+ <div class="col-sm-4 form-group" v-if="getConfigShowItem('f_olduserinfo_code')"
214
+ v-show="(formconfig && formconfig.f_olduserinfo_code && formconfig.f_olduserinfo_code.required) || !onlyshowmust"
215
+ :class="[$v.f_olduserinfo_code.required ? 'has-error' : '']">
216
+ <label for="f_user_nature" class="font_normal_body">&ensp;{{getConfigLabelName('f_olduserinfo_code','档案编号')}}</label>
217
+ <input type="text" v-model="baseinfo.base.f_olduserinfo_code" class="input_search" style="width:60%"
218
+ v-validate:f_olduserinfo_code=getConfigValidate("f_olduserinfo_code",false)
219
+ :placeholder="getConfigPlaceholder('f_olduserinfo_code','档案编号')">
220
+ </div>
173
221
  <div class="col-sm-4 form-group"
174
- v-show="(formconfig && formconfig.f_contract_id && formconfig.f_contract_id.required) || !onlyshowmust"
175
- :class="[$v.f_contract_id.required ? 'has-error' : '']">
176
- <label for="f_print_dh" class="font_normal_body ">&ensp;{{getConfigLabelName('f_print_dh','打印类别')}}</label>
177
- <input type="text" v-show="false" v-model="baseinfo.base.f_print_dh"
178
- v-validate:f_print_dh=getConfigValidate("f_print_dh",false)>
179
- <v-select id="f_print_dh" :value.sync="baseinfo.base.f_print_dh" v-model="baseinfo.base.f_print_dh"
180
- :value-single="true" :disabled="baseinfo.base.f_print_dh_stats" :search="false"
181
- :options='printstate' placeholder='流程单 | 点火单' style="width: 65%" close-on-select></v-select>
222
+ v-show="(formconfig && formconfig.f_gas_pointsnumber && formconfig.f_gas_pointsnumber.required) || !onlyshowmust"
223
+ :class="[$v.f_gas_pointsnumber.dctest ? 'has-error' : '']" v-if="getConfigShowItem('f_gas_pointsnumber')">
224
+ <label for="f_gas_pointsnumber" class="font_normal_body">{{getConfigLabelName('f_gas_pointsnumber','用气点数量')}}</label>
225
+ <v-select id="f_gas_pointsnumber" :value.sync="baseinfo.base.f_gas_pointsnumber"
226
+ v-model="baseinfo.base.f_gas_pointsnumber"
227
+ :value-single="true"
228
+ :options='pointsnums'
229
+ :placeholder="getConfigPlaceholder('f_gas_pointsnumber','用气点数量')"
230
+ style="width: 65%"
231
+ close-on-select></v-select>
182
232
  </div>
183
-
184
-
185
233
  </div>
186
234
  <div class="row">
187
235
  <div style="" class="col-sm-12 form-group" v-if="getConfigShowItem('f_comments')"
@@ -192,17 +240,6 @@
192
240
  :placeholder="getConfigPlaceholder('f_comments','请输入备注信息')"
193
241
  v-validate:f_comments=getConfigValidate("f_comments",false)>
194
242
  </div>
195
- <div class="col-sm-4 form-group" v-if="getConfigShowItem('f_house_type',false)"
196
- v-show="(formconfig && formconfig.f_house_type && formconfig.f_house_type.required) || !onlyshowmust"
197
- :class="[$v.f_house_type.required ? 'has-error' : '']">
198
- <label for="f_user_state" class="font_normal_body">&ensp;{{getConfigLabelName('f_house_type','房屋类型')}}</label>
199
- <input type="text" v-show="false" v-model="baseinfo.base.f_house_type"
200
- v-validate:f_house_type=getConfigValidate("f_house_type",false)>
201
- <v-select :value.sync="baseinfo.base.f_house_type" :search="false" :value-single="true"
202
- :options='housetype' close-on-select
203
- :placeholder="getConfigPlaceholder('f_house_type','房屋类型')">
204
- </v-select>
205
- </div>
206
243
  </div>
207
244
  <div class="row">
208
245
  <a style="text-decoration: none;font-weight: 300;float: left;color: #333;margin-top: 15px;font-weight: 500"
@@ -299,6 +336,7 @@
299
336
  banknames: this.$appdata.getParam('银行名称'),
300
337
  userstates: [{label: '预备', value: '预备'}],
301
338
  housetype: this.$appdata.getParam('房屋类型'),
339
+ userlevel: this.$appdata.getParam('用户等级'),
302
340
  mgq: this.$appdata.getParam('是否煤改气'),
303
341
  costtype: this.$appdata.getParam('付款类型'),
304
342
  printstate: this.$appdata.getParam('建档打印类型') ? [{label: '暂不选择', value: '暂不选择'}, ...this.$appdata.getParam('建档打印类型')] : [{label: '暂不选择', value: '暂不选择'}],
@@ -426,6 +464,17 @@
426
464
  nums.push(temp)
427
465
  }
428
466
  return nums
467
+ },
468
+ pointsnums () {
469
+ let pointsMax = this.$appdata.getSingleValue('最大用气点数量') ? this.$appdata.getSingleValue('最大用气点数量') : 10
470
+ let nums = []
471
+ for (let i = 1; i <= pointsMax; i++) {
472
+ let temp = {}
473
+ temp.label = i
474
+ temp.value = i
475
+ nums.push(temp)
476
+ }
477
+ return nums
429
478
  }
430
479
  },
431
480
  events: {
@@ -0,0 +1,214 @@
1
+ import Vue from 'vue'
2
+ import co from 'co'
3
+
4
+ let cancelUserGen = function * (data, type) {
5
+ console.log('销户。。', data)
6
+ if (type === '销户') {
7
+ let owe = yield Vue.resetpost('rs/logic/hasOweWithUser', {data: {f_userinfo_id: data.f_userinfo_id.f_userinfo_id}}, {resolveMsg: null, rejectMsg: null})
8
+ let hasHandplan = yield Vue.resetpost('rs/sql/saleSingleTable', {data: {tablename: 't_handplan', condition: `f_meter_state = '未抄表' and f_userinfo_id = '${data.record_userinfo}'`}}, {resolveMsg: null, rejectMsg: null})
9
+ if (owe.data === 1 && hasHandplan.data.length > 0) {
10
+ Vue.showAlert('该客户还有欠费,不能销户!!', 'danger', 0)
11
+ } else {
12
+ Vue.resetpost('rs/entity/t_cancellation', data, {resolveMsg: `${type}成功`, rejectMsg: `${type}失败`})
13
+ }
14
+ } else {
15
+ Vue.resetpost('rs/entity/t_cancellation', data, {resolveMsg: `${type}成功`, rejectMsg: `${type}失败`})
16
+ }
17
+ }
18
+
19
+ let FileManageServicets = {
20
+ install (Vue, options) {
21
+ // 给vue增添对话框显示方法
22
+ Vue.FileManageServicets = Vue.prototype.$FileManageServicets = FileManageServicets
23
+ },
24
+
25
+ fileSave (data) {
26
+ let result = Object.assign({}, result, data.baseinfo.base)
27
+ if(data.baseinfo.civill && data.baseinfo.civill.f_civill_id){
28
+ result.civill ={};
29
+ result.civill.f_civill_id = data.baseinfo.civill.f_civill_id;
30
+ }
31
+ result.f_userinfo_id = result.f_userinfo_id ? result.f_userinfo_id + '' : null
32
+ result.f_cost_type = result.f_cost_type.length > 0 ? result.f_cost_type[0] : ''
33
+ result.f_credentials = result.f_credentials.length > 0 ? result.f_credentials[0] : ''
34
+ result.f_is_mgq = result.f_is_mgq.length > 0 ? result.f_is_mgq[0] : ''
35
+ if(result.f_out_user instanceof Array){
36
+ result.f_out_user =result.f_out_user && result.f_out_user.length > 0 ? result.f_out_user : '否';
37
+ }else{
38
+ result.f_out_user ==result.f_out_user ? result.f_out_user :'否';
39
+ }
40
+ result.f_paper_type = result.f_paper_type.length > 0 ? result.f_paper_type[0] : ''
41
+ result.f_predeposit = result.f_predeposit ? result.f_predeposit : 0
42
+ result.f_people_num = result.f_people_num ? result.f_people_num : 0
43
+ if (result.f_slice_area instanceof Array) {
44
+ result.f_slice_area = result.f_slice_area.length > 0 ? result.f_slice_area[0] : null
45
+ }
46
+ if (result.f_user_level instanceof Array) {
47
+ result.f_user_level = result.f_user_level.length > 0 ? result.f_user_level[0] : null
48
+ }
49
+ if (data.baseinfo.base.f_cost_type[0] === '银行代扣') {
50
+ let bank = Object.assign({}, bank, data.baseinfo.bank)
51
+ result.infobank = bank
52
+ result.infobank.f_bank_name = bank.f_bank_name.length > 0 ? bank.f_bank_name[0] : ''
53
+ }
54
+ // 获取分公司id (通过ids拆分)
55
+ result.f_filialeid = data.f_filialeid
56
+ if (result.f_userinfo_id === null) {
57
+ result.f_createfile_person = Vue.$login.f.name
58
+ result.f_createfile_date = Vue.$login.toStandardTimeString ()
59
+
60
+ result.f_operator = Vue.$login.f.name
61
+ result.f_operatorid = Vue.$login.f.id
62
+ result.f_orgid = data.f_filialeid
63
+ result.f_orgname = Vue.$login.f.orgs
64
+ result.f_depid = Vue.$login.f.depids
65
+ result.f_depname = Vue.$login.f.deps
66
+ }
67
+
68
+ // 档案变更时,获取档案登录人信息进行操作记录的保存
69
+ result.f_operator_record = Vue.$login.f.name
70
+ result.f_operatorid_record = Vue.$login.f.id
71
+ result.f_orgid_record = Vue.$login.f.orgid
72
+ result.f_orgname_record = Vue.$login.f.orgs
73
+ result.f_depid_record = Vue.$login.f.depids
74
+ result.f_depname_record = Vue.$login.f.deps
75
+ result.f_user_state = result.f_user_state.length > 0 ? result.f_user_state[0] : '正常'
76
+ result.userfiles = []
77
+ // 表具信息
78
+ data.meterinfo.forEach((item) => {
79
+ // item.f_user_id = result.f_user_id ? result.f_user_id : null
80
+ let meter = Object.assign({}, meter, item)
81
+ if (meter.f_user_id) {
82
+ meter.f_user_id = meter.f_user_id
83
+ }
84
+ meter.f_filialeid = data.f_filialeid
85
+ meter.f_position = meter.f_position ? meter.f_position : null
86
+ meter.f_gasbrand_id = meter.gasbrand[0].id
87
+ meter.f_show_way = meter.f_show_way ? meter.f_show_way[0] : null
88
+ meter.f_inputtor = meter.f_inputtor.length > 0 ? meter.f_inputtor[0] : null
89
+ // meter.f_install_person = meter.f_install_person.length > 0 ? meter.f_install_person[0] : null
90
+ meter.f_aroundmeter = meter.f_aroundmeter.length > 0 ? meter.f_aroundmeter[0] : null
91
+ meter.f_garbage_fee = meter.f_garbage_fee.length > 0 ? meter.f_garbage_fee[0] : '否'
92
+ meter.f_valve_state = meter.f_valve_state.length > 0 ? meter.f_valve_state[0] : '开阀'
93
+ meter.f_meter_base = isNaN(meter.f_meter_base) || meter.f_meter_base === '' ? 0.00 : (meter.f_meter_base - 0).toFixed(4)
94
+ meter.f_initial_base = isNaN(meter.f_initial_base) || meter.f_initial_base === '' ? 0.00 : (meter.f_initial_base - 0).toFixed(4)
95
+ meter.f_remanent_gas = isNaN(meter.f_remanent_gas) || meter.f_remanent_gas === '' ? 0.00 : (meter.f_remanent_gas - 0).toFixed(4)
96
+ meter.f_remanent_gas = isNaN(meter.f_remanent_gas) || meter.f_remanent_gas === '' ? 0.00 : (meter.f_remanent_gas - 0).toFixed(4)
97
+ meter.f_meternumber = meter.f_meternumber ? meter.f_meternumber.trim() : null;
98
+ meter.f_cardmeternumber = meter.f_cardmeternumber ? meter.f_cardmeternumber.trim() : meter.f_meternumber;
99
+ meter.f_price_ratio = meter.f_price_ratio ? meter.f_price_ratio : null
100
+ meter.f_fire_state = meter.f_fire_state1 ? '1' : '0'
101
+ meter.f_gasmodel_id = meter.gasmodel[0].id
102
+ meter.f_meter_classify = meter.gasbrand[0].f_meter_type
103
+ meter.f_user_type = meter.f_user_type.length > 0 ? meter.f_user_type[0] : ''
104
+ meter.f_price_id = meter.pricename[0].f_price_id
105
+ meter.f_gasproperties = meter.f_gasproperties.length > 0 ? meter.f_gasproperties[0] : ''
106
+ meter.f_adjustable_id = meter.f_adjustable.length > 0 ? meter.f_adjustable[0].id : null
107
+ meter.f_userfiles_address = meter.f_userfiles_address ? meter.f_userfiles_address : null
108
+ meter.f_total_fee = meter.f_total_fee == null || meter.f_total_fee == '' ? 0:meter.f_total_fee
109
+ meter.f_total_gas = meter.f_total_gas == null || meter.f_total_gas == '' ? 0:meter.f_total_gas
110
+ meter.f_history_gas = meter.f_history_gas == null || meter.f_history_gas == '' ? 0:meter.f_history_gas
111
+ meter.f_history_fee = meter.f_history_fee == null || meter.f_history_fee == '' ? 0:meter.f_history_fee
112
+ if (!meter.f_userfiles_id) {
113
+ // 气表状态需要根据表型判断是否需要开通操作 目前物联网表需要做开通操作
114
+ meter.f_table_state = '正常'
115
+ //meter.f_whether_hairpin = !item.gasbrand[0].f_meter_type.includes('机表') ? '未发' : '无卡'
116
+ //所有表变成未发
117
+ meter.f_whether_hairpin = '未发'
118
+ meter.f_input_person = Vue.$login.f.name
119
+ meter.f_input_date = Vue.$login.toStandardTimeString ()
120
+ meter.f_card_password = item.gasbrand[0].f_card_password
121
+ meter.f_meter_base = isNaN(meter.f_initial_base) || meter.f_initial_base === '' ? 0.00 : (meter.f_initial_base - 0).toFixed(4)
122
+ meter.f_operator = Vue.$login.f.name
123
+ meter.f_operatorid = Vue.$login.f.id
124
+ meter.f_orgid = data.f_filialeid
125
+ meter.f_orgname = Vue.$login.f.orgs
126
+ meter.f_depid = Vue.$login.f.depids
127
+ meter.f_depname = Vue.$login.f.deps
128
+ }
129
+ // 之前建立的是卡表在档案中改成了物联网表(需验证建立的卡表是不是未发,如果是未发,表状态给成待开通)后端处理
130
+
131
+ meter.img = meter.img ? meter.img : {content: null, filename: null}
132
+ meter.img.content = meter.img.content ? meter.img.content : null
133
+ meter.img.filename = meter.img.filename ? meter.img.filename : null
134
+
135
+ // 处理表具的设备信息
136
+ let userfilesdevices = []
137
+ meter.devicesinfo.forEach((devitem) => {
138
+ let userfilesdevice = Object.assign({}, userfilesdevice, devitem)
139
+ userfilesdevice.f_user_id = data.meterinfo[0].f_user_id ? data.meterinfo[0].f_user_id : null
140
+ userfilesdevice.f_devices_type = userfilesdevice.f_devices_type
141
+ userfilesdevice.f_state = userfilesdevice.f_state ? userfilesdevice.f_state : '有效'
142
+ userfilesdevice.f_devices_no = userfilesdevice.f_devices_no ? userfilesdevice.f_devices_no : null
143
+ userfilesdevice.f_brand = userfilesdevice.f_brand ? userfilesdevice.f_brand : null
144
+ userfilesdevice.f_devices_model = userfilesdevice.f_devices_model ? userfilesdevice.f_devices_model : null
145
+ userfilesdevice.f_devices_num = userfilesdevice.f_devices_num ? userfilesdevice.f_devices_num : null
146
+ userfilesdevice.img = userfilesdevice.img ? userfilesdevice.img : {content: null, filename: null}
147
+ userfilesdevice.img.content = userfilesdevice.img.content ? userfilesdevice.img.content : null
148
+ userfilesdevice.img.filename = userfilesdevice.img.filename ? userfilesdevice.img.filename : null
149
+ if (!userfilesdevice.id) {
150
+ userfilesdevice.f_input_person = Vue.$login.f.name
151
+ userfilesdevice.f_input_date = Vue.$login.toStandardTimeString ()
152
+ }
153
+ userfilesdevices.push(userfilesdevice)
154
+ })
155
+ meter.devicesinfo = userfilesdevices
156
+ result.userfiles.push(meter)
157
+ })
158
+
159
+ // 组织地址数据,更新地址管理中的数据
160
+ // 地址信息
161
+ let address = {}
162
+ address = {
163
+ id: data.addressinfo.id,
164
+ }
165
+
166
+ if (data.oldaddressinfo.id) {
167
+ address.oldid = data.oldaddressinfo.id
168
+ }
169
+ if (!data.checkRefund){
170
+ return Vue.resetpost('rs/logic/filemanage_fileSave_ts', {data: {userinfo: result, address: address, limit_gas: data.limit_gas}})
171
+ } else {
172
+ return Vue.resetpost('rs/logic/checkRefund', {data: {userinfo: result, address: address, limit_gas: data.limit_gas}})
173
+ }
174
+
175
+ },
176
+ batchOperate (model, type) {
177
+ let operateType = type
178
+ if (type === '启用') {
179
+ operateType = '销户启用'
180
+ }
181
+ let data = {
182
+ f_operat_type: operateType,
183
+ f_describe: `${Vue.$login.f.name}对客户${model.userinfo.f_user_name}进行销户`,
184
+ f_state: '有效',
185
+ f_user_id: model.userinfo.f_user_id,
186
+ f_user_name: model.userinfo.f_user_name,
187
+ f_comments: model.f_reason,
188
+ f_operator: Vue.$login.f.name,
189
+ f_operatorid: Vue.$login.f.id,
190
+ f_orgid: Vue.$login.f.orgid,
191
+ f_orgname: Vue.$login.f.orgs,
192
+ f_depid: Vue.$login.f.depids,
193
+ f_depname: Vue.$login.f.deps
194
+ }
195
+ if (type === '销户') {
196
+ data.f_userinfo_id = {
197
+ f_userinfo_id: model.userinfo.f_userinfo_id,
198
+ f_user_state: '销户',
199
+ version: model.userinfo.version
200
+ }
201
+ } else if (type === '启用') {
202
+ data.f_describe = `${Vue.$login.f.name}对客户${model.userinfo.f_user_name}进行启用`
203
+ data.f_userinfo_id = {
204
+ f_userinfo_id: model.userinfo.f_userinfo_id,
205
+ f_user_state: '正常',
206
+ version: model.userinfo.version
207
+ }
208
+ }
209
+ let cancelUser = cancelUserGen(data, type)
210
+ return co(cancelUser)
211
+ }
212
+ }
213
+
214
+ export default FileManageServicets
@@ -0,0 +1,53 @@
1
+ import axios from 'axios'
2
+ export async function fetchImage (imagePath, options = {}) {
3
+ const defaultOptions = {
4
+ timeout: 3000, // 默认超时时间,单位为毫秒
5
+ maxRetries: 1, // 默认最大重试次数
6
+ onTimeout: () => {
7
+ console.log('请求超时')
8
+ },
9
+ onError: (error) => {
10
+ console.log('请求失败', error)
11
+ },
12
+ onSuccess: () => {}
13
+ }
14
+ const finalOptions = Object.assign({}, defaultOptions, options)
15
+ let retries = 0
16
+
17
+ const fetch = async () => {
18
+ try {
19
+ const response = await axios.get(imagePath, {
20
+ responseType: 'blob',
21
+ timeout: finalOptions.timeout
22
+ })
23
+ return URL.createObjectURL(response.data)
24
+ } catch (error) {
25
+ finalOptions.onError(error)
26
+ retries++
27
+ if (retries < finalOptions.maxRetries) {
28
+ return fetch()
29
+ } else {
30
+ return ''
31
+ }
32
+ }
33
+ }
34
+ return fetch()
35
+ }
36
+
37
+ export async function fetchImages (imageItems,rowName) {
38
+ const fetchPromises = imageItems.map(async (item) => {
39
+ return fetchImage(item[rowName], {
40
+ onSuccess: () => {
41
+ console.log(`图片 ${item.id} 请求成功`)
42
+ },
43
+ onError: (error) => {
44
+ console.log(`图片 ${item.id} 请求失败`, error)
45
+ }
46
+ })
47
+ })
48
+ const results = await Promise.all(fetchPromises);
49
+ results.forEach((imageUrl, index) => {
50
+ imageItems[index][rowName] = imageUrl
51
+ })
52
+ return imageItems
53
+ }