sale-client 4.2.17 → 4.2.18
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/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +1 -1
- package/build/dev-server.js +5 -2
- package/package.json +1 -1
- package/src/components/FilesManage/addressts/FileUserFilests.vue +671 -0
- package/src/components/FilesManage/ncUserinfoList.vue +315 -0
- package/src/components/SellGasCharge/MeterCharge/CardDataRewrite.vue +107 -0
- package/src/components/SendCard/SendCardData.vue +208 -0
- package/src/components/accounts/accountAdd.vue +276 -0
- package/src/components/accounts/accountsList.vue +183 -0
- package/src/components/accounts/accountsManage.vue +87 -0
- package/src/components/common/chargeinfo/chargeinfo.vue +55 -0
- package/src/components/common/userinfo_detail/config/exportConfig.js +85 -0
- package/src/components/ncarchives/ncArchivesAdd.vue +468 -0
- package/src/components/ncarchives/ncArchivesList.vue +159 -0
- package/src/components/ncarchives/ncUserfilesList.vue +373 -0
- package/src/components/ncarchives/ncarchivesmanage.vue +80 -0
- package/src/components/revenue/IOTArrears/arrears.vue +323 -0
- package/src/components/revenue/IOTArrears/iotRechargeAudit.vue +369 -0
- package/src/components/revenue/base/rightview/carddetail/cardiotfeeChangeDetail.vue +59 -0
- package/src/components/revenue/base/rightview/carddetail/reduceChangeDetail.vue +59 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchCancellationts.vue +73 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchEnablets.vue +73 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/ReduceAddGas.vue +199 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionManage.vue +24 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionYSManage.vue +24 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeDeduction.vue +185 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeYSDeduction.vue +185 -0
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue +356 -0
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue +148 -0
- package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackUserList.vue +136 -0
- package/src/components/revenue/recordMainten/sellinggas/AddWarehousemain.vue +65 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperateAdd.vue +483 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperatemain.vue +279 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperatemainImport.vue +265 -0
- package/src/components/thirdapply/thirdAdd.vue +289 -0
- package/src/components/thirdapply/thirdList.vue +162 -0
- package/src/components/thirdapply/thirdManage.vue +74 -0
- package/src/components/webMeter/InstructQuery.vue +414 -0
- package/src/components/webMeter/ParamSet/ParamSet.vue +556 -0
- package/src/components/webMeter/ParamSet/ParamSetForm.vue +296 -0
- package/src/components/webMeter/WebUserHand.vue +483 -0
- package/src/components/webMeter/instructionView/NewQueryInstruct.vue +509 -0
- package/src/components/webMeter/instructionView/NewQueryInstructMain.vue +48 -0
- package/src/components/webMeter/webManage/NewMeterList.vue +461 -0
- package/src/filiale/jinhuang/WebHand.vue +1026 -1026
- package/src/filiale/yuncheng/IndustryCommerceHand.vue +17 -4
- package/src/main.js +1 -1
- package/src/plugins/FileManageServicets.js +214 -0
- package/src/plugins/GetImg.js +53 -0
- package/.gradle/8.10/checksums/checksums.lock +0 -0
- package/.gradle/8.10/dependencies-accessors/gc.properties +0 -0
- package/.gradle/8.10/executionHistory/executionHistory.bin +0 -0
- package/.gradle/8.10/executionHistory/executionHistory.lock +0 -0
- package/.gradle/8.10/fileChanges/last-build.bin +0 -0
- package/.gradle/8.10/fileHashes/fileHashes.bin +0 -0
- package/.gradle/8.10/fileHashes/fileHashes.lock +0 -0
- package/.gradle/8.10/gc.properties +0 -0
- package/.gradle/file-system.probe +0 -0
|
@@ -182,6 +182,14 @@
|
|
|
182
182
|
condition="f_total_gas <= {} " placeholder="">
|
|
183
183
|
</div>
|
|
184
184
|
</div>
|
|
185
|
+
<div class="col-sm-2 form-group">
|
|
186
|
+
<label class="font_normal_body">抄 表 册</label>
|
|
187
|
+
<v-select :value.sync="model.f_meter_book" v-model="model.f_meter_book"
|
|
188
|
+
:options='$parent.$parent.meterbooks' placeholder='抄表册'
|
|
189
|
+
style="width:60%"
|
|
190
|
+
:multiple="true"
|
|
191
|
+
condition="f_meter_book_num in {}"></v-select>
|
|
192
|
+
</div>
|
|
185
193
|
|
|
186
194
|
<res-select-group :initres="$parent.$parent.initres"
|
|
187
195
|
@re-res="$parent.$parent.getRes"
|
|
@@ -439,6 +447,8 @@ import {PagedList, HttpResetClass} from 'vue-client'
|
|
|
439
447
|
import Vue from 'vue'
|
|
440
448
|
let readySomething = async function (self) {
|
|
441
449
|
await self.$LoadParams.loadParam()
|
|
450
|
+
await self.$LoadParams.loadMeterBook(self.f_filialeid)
|
|
451
|
+
self.loadMeterBooks()
|
|
442
452
|
self.initParams()
|
|
443
453
|
}
|
|
444
454
|
let readyGen = async function (self) {
|
|
@@ -618,6 +628,9 @@ export default {
|
|
|
618
628
|
imgclose () {
|
|
619
629
|
this.imgshow = false
|
|
620
630
|
},
|
|
631
|
+
loadMeterBooks () {
|
|
632
|
+
this.meterbooks = this.$GetSaleParam.getMeterBooks()
|
|
633
|
+
},
|
|
621
634
|
imgShow (val) {
|
|
622
635
|
this.imgfilename = `api/af-revenue/file/image/` + val
|
|
623
636
|
this.imgshow = true
|
|
@@ -789,12 +802,12 @@ export default {
|
|
|
789
802
|
this.rowsdata = []
|
|
790
803
|
this.radio = []
|
|
791
804
|
this.checkAll = []
|
|
792
|
-
|
|
805
|
+
|
|
793
806
|
// 重置DataGrid的选择状态
|
|
794
807
|
if (this.$refs.paged && this.$refs.paged.$refs.grid && this.$refs.paged.$refs.grid.selectInit) {
|
|
795
808
|
this.$refs.paged.$refs.grid.selectInit()
|
|
796
809
|
}
|
|
797
|
-
|
|
810
|
+
|
|
798
811
|
this.$refs.paged.$refs.criteria.search()
|
|
799
812
|
},
|
|
800
813
|
selfSearch (args) {
|
|
@@ -1082,12 +1095,12 @@ export default {
|
|
|
1082
1095
|
|
|
1083
1096
|
await this.$resetpost('api/af-revenue/logic/runSQL', { sql: sql })
|
|
1084
1097
|
this.$showAlert(`成功删除 ${selectedRows.length} 条记录`, 'success', 2000)
|
|
1085
|
-
|
|
1098
|
+
|
|
1086
1099
|
// 重置DataGrid的选择状态
|
|
1087
1100
|
if (this.$refs.paged && this.$refs.paged.$refs.grid && this.$refs.paged.$refs.grid.selectInit) {
|
|
1088
1101
|
this.$refs.paged.$refs.grid.selectInit()
|
|
1089
1102
|
}
|
|
1090
|
-
|
|
1103
|
+
|
|
1091
1104
|
// 直接刷新数据,让界面状态完全重置
|
|
1092
1105
|
this.search()
|
|
1093
1106
|
} catch (error) {
|
package/src/main.js
CHANGED
|
@@ -2,7 +2,7 @@ import Vue from 'vue'
|
|
|
2
2
|
import all from 'vue-client/src/all'
|
|
3
3
|
import App from './App'
|
|
4
4
|
import system from 'system-clients/src/system'
|
|
5
|
-
import FilialeSale from './filiale/
|
|
5
|
+
import FilialeSale from './filiale/yuncheng/sale'
|
|
6
6
|
import sale from './sale'
|
|
7
7
|
import address from 'address-client/src/address'
|
|
8
8
|
import ldap from 'ldap-clients/src/ldap'
|
|
@@ -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
|
+
}
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|