sale-client 4.2.32 → 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 (97) 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/build/dev-server.js +28 -42
  8. package/package.json +1 -1
  9. package/src/App.vue +1 -1
  10. package/src/components/FilesManage/addressts/FileUserFilests.vue +671 -0
  11. package/src/components/FilesManage/ncUserinfoList.vue +315 -0
  12. package/src/components/SellGasCharge/MeterCharge/CardDataRewrite.vue +107 -0
  13. package/src/components/SendCard/SendCardData.vue +208 -0
  14. package/src/components/accounts/accountAdd.vue +276 -0
  15. package/src/components/accounts/accountsList.vue +183 -0
  16. package/src/components/accounts/accountsManage.vue +87 -0
  17. package/src/components/common/chargeinfo/chargeinfo.vue +55 -0
  18. package/src/components/common/userinfo_detail/config/exportConfig.js +85 -0
  19. package/src/components/ncarchives/ncArchivesAdd.vue +468 -0
  20. package/src/components/ncarchives/ncArchivesList.vue +159 -0
  21. package/src/components/ncarchives/ncUserfilesList.vue +373 -0
  22. package/src/components/ncarchives/ncarchivesmanage.vue +80 -0
  23. package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
  24. package/src/components/revenue/IOTArrears/arrears.vue +323 -0
  25. package/src/components/revenue/IOTArrears/iotRechargeAudit.vue +369 -0
  26. package/src/components/revenue/base/rightview/carddetail/cardiotfeeChangeDetail.vue +59 -0
  27. package/src/components/revenue/base/rightview/carddetail/reduceChangeDetail.vue +59 -0
  28. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchCancellationts.vue +73 -0
  29. package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchEnablets.vue +73 -0
  30. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/ReduceAddGas.vue +199 -0
  31. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionManage.vue +24 -0
  32. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionYSManage.vue +24 -0
  33. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeDeduction.vue +185 -0
  34. package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeYSDeduction.vue +185 -0
  35. package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
  36. package/src/components/revenue/comprehen/ComprehenOperation/UserVisit/UserVisit.vue +217 -0
  37. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue +356 -0
  38. package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue +148 -0
  39. package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
  40. package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackUserList.vue +136 -0
  41. package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
  42. package/src/components/revenue/recordMainten/sellinggas/AddWarehousemain.vue +65 -0
  43. package/src/components/revenue/recordMainten/sellinggas/MeterOperateAdd.vue +483 -0
  44. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemain.vue +279 -0
  45. package/src/components/revenue/recordMainten/sellinggas/MeterOperatemainImport.vue +265 -0
  46. package/src/components/thirdapply/thirdAdd.vue +289 -0
  47. package/src/components/thirdapply/thirdList.vue +162 -0
  48. package/src/components/thirdapply/thirdManage.vue +74 -0
  49. package/src/components/webMeter/InstructQuery.vue +414 -0
  50. package/src/components/webMeter/MeterManage/WebMeterBatchOperationValve.vue +970 -970
  51. package/src/components/webMeter/ParamSet/ParamSet.vue +556 -0
  52. package/src/components/webMeter/ParamSet/ParamSetForm.vue +296 -0
  53. package/src/components/webMeter/WebUserHand.vue +483 -0
  54. package/src/components/webMeter/instructionView/NewQueryInstruct.vue +509 -0
  55. package/src/components/webMeter/instructionView/NewQueryInstructMain.vue +48 -0
  56. package/src/components/webMeter/webManage/NewMeterList.vue +461 -0
  57. package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
  58. package/src/filiale/bayan/ChargeList.vue +1010 -1010
  59. package/src/filiale/bayan/StockListmain.vue +543 -543
  60. package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
  61. package/src/filiale/jinhuang/WebHand.vue +1026 -1026
  62. package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
  63. package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
  64. package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
  65. package/src/filiale/qianneng/revenue/sms/AccountMessageList.vue +508 -508
  66. package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
  67. package/src/filiale/ronghao/CardService.js +2144 -2144
  68. package/src/filiale/ronghao/InsuranceManage.vue +58 -58
  69. package/src/filiale/ronghao/MachineChargeService.js +149 -149
  70. package/src/filiale/ronghao/NoCardMeterCenter.vue +534 -534
  71. package/src/filiale/ronghao/PaymentCode.vue +174 -174
  72. package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
  73. package/src/filiale/ronghao/PriceChangeCompensation/IotCompensation.vue +318 -318
  74. package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
  75. package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
  76. package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
  77. package/src/filiale/ronghao/Upload.vue +654 -654
  78. package/src/filiale/ronghao/cardDown.vue +1141 -1141
  79. package/src/filiale/ronghao/changemeterOperate.vue +315 -315
  80. package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
  81. package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
  82. package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
  83. package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
  84. package/src/filiale/ronghao/machineDown.vue +1176 -1176
  85. package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
  86. package/src/filiale/ronghao/specificInformation.vue +537 -537
  87. package/src/filiale/yangchun/ChargeList.vue +954 -954
  88. package/src/filiale/yuncheng/FilesManageNew/UserEssentialInfoTest.vue +77 -28
  89. package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
  90. package/src/filiale/zhongsheng/BlackListList.vue +293 -293
  91. package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
  92. package/src/main.js +1 -1
  93. package/src/plugins/CardService.js +2217 -2217
  94. package/src/plugins/FileManageServicets.js +214 -0
  95. package/src/plugins/GetImg.js +53 -0
  96. package/src/plugins/LogicService.js +48 -0
  97. package/src/sale.js +2 -0
@@ -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
+ }
@@ -526,6 +526,54 @@ let LogicService = {
526
526
  },
527
527
  deletAllMessage (condition) {
528
528
  return Vue.resetpost('api/af-revenue/logic/deleteSms', {condition: condition, operate: 'all'}, {resolveMsg: '删除短信成功', rejectMsg: '删除短信失败'})
529
+ },
530
+ // 用户回访
531
+ userVisit (model, row) {
532
+ const record = {
533
+ record_userinfo: row.f_userinfo_id,
534
+ f_user_id: row.f_user_id,
535
+ f_userinfo_id: row.f_userinfo_id,
536
+ f_user_name: row.f_user_name,
537
+ f_visit_date: model.f_visit_date,
538
+ f_inspect_state: model.f_inspect_state[0],
539
+ f_repair_situation: model.f_repair_situation[0],
540
+ f_repair_operator: model.f_repair_operator[0],
541
+ f_repair_date: model.f_repair_date,
542
+ f_repair_result: model.f_repair_result[0],
543
+ f_visit_state: '有效',
544
+ f_visit_operator: model.f_visit_operator,
545
+ f_visit_content: '表底数:' + model.f_visit_content,
546
+ f_security_situation: model.f_security_situation[0],
547
+ f_inspect_note: model.f_inspect_note,
548
+ f_inspect_issue: model.f_inspect_issue[0],
549
+ f_gas_meter: model.f_gas_meter[0],
550
+ f_valve: model.f_valve[0],
551
+ f_household_riser: model.f_household_riser[0],
552
+ f_stove: model.f_stove[0],
553
+ f_calorifier: model.f_calorifier[0],
554
+ f_operat_type: '用户回访',
555
+ f_describe: model.f_visit_operator + '对用户' + row.f_user_name + '进行回访:' + model.f_visit_content,
556
+ f_state: '有效',
557
+ f_operator: Vue.$login.f.name,
558
+ f_filiale: Vue.$login.f.orgs,
559
+ f_outlets: Vue.$login.f.orgs,
560
+ f_operatorid: Vue.$login.f.id,
561
+ f_orgid: Vue.$login.f.orgid,
562
+ f_orgname: Vue.$login.f.orgs,
563
+ f_depid: Vue.$login.f.depids,
564
+ f_depname: Vue.$login.f.deps
565
+ }
566
+ const userInfo = {
567
+ f_userinfo_id: row.f_userinfo_id,
568
+ f_visit_state: '是',
569
+ f_visit_date: model.f_visit_date,
570
+ version: row.userinfo_version
571
+ }
572
+ const data = {
573
+ userInfo: userInfo,
574
+ record: record
575
+ }
576
+ return Vue.resetpost('api/af-revenue/logic/saveUserReturnVisit', data, {resolveMsg: '用户回访成功', rejectMsg: '用户回访失败'})
529
577
  }
530
578
  }
531
579
 
package/src/sale.js CHANGED
@@ -1240,4 +1240,6 @@ export default function () {
1240
1240
  Vue.component('sign-contract', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/SignContractManage/signContract'], resolve) })
1241
1241
  // 物联网表抄表
1242
1242
  Vue.component('sale-web-hand', (resolve) => { require(['./components/revenue/HandManager/WebHand'], resolve) })
1243
+ // 用户回访
1244
+ Vue.component('user-return-visit', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/UserVisit/UserVisit'], resolve) })
1243
1245
  }