Commit e2d2dbfb5c6131827e73c885b0f20a346faeb1bd

Authored by wuxw
1 parent 94d16c26

优化房屋收费页面 的批量催缴单

src/api/fee/addOweFeeCallableApi.js
@@ -49,11 +49,8 @@ export function listFeeConfigs(params) { @@ -49,11 +49,8 @@ export function listFeeConfigs(params) {
49 params 49 params
50 }).then(response => { 50 }).then(response => {
51 const res = response.data 51 const res = response.data
52 - if (res.code === 0) {  
53 resolve(res) 52 resolve(res)
54 - } else {  
55 - reject(new Error(res.msg))  
56 - } 53 +
57 }).catch(error => { 54 }).catch(error => {
58 reject(error) 55 reject(error)
59 }) 56 })
@@ -69,11 +66,8 @@ export function queryFloors(params) { @@ -69,11 +66,8 @@ export function queryFloors(params) {
69 params 66 params
70 }).then(response => { 67 }).then(response => {
71 const res = response.data 68 const res = response.data
72 - if (res.code === 0) {  
73 resolve(res) 69 resolve(res)
74 - } else {  
75 - reject(new Error(res.msg))  
76 - } 70 +
77 }).catch(error => { 71 }).catch(error => {
78 reject(error) 72 reject(error)
79 }) 73 })
@@ -89,11 +83,8 @@ export function queryReportOweFee(params) { @@ -89,11 +83,8 @@ export function queryReportOweFee(params) {
89 params 83 params
90 }).then(response => { 84 }).then(response => {
91 const res = response.data 85 const res = response.data
92 - if (res.code === 0) {  
93 resolve(res) 86 resolve(res)
94 - } else {  
95 - reject(new Error(res.msg))  
96 - } 87 +
97 }).catch(error => { 88 }).catch(error => {
98 reject(error) 89 reject(error)
99 }) 90 })
src/api/fee/exportFeeImportExcelApi.js
@@ -27,11 +27,8 @@ export function listFeeConfigs(params) { @@ -27,11 +27,8 @@ export function listFeeConfigs(params) {
27 params 27 params
28 }).then(response => { 28 }).then(response => {
29 const res = response.data 29 const res = response.data
30 - if (res.code === 0) {  
31 resolve(res) 30 resolve(res)
32 - } else {  
33 - reject(new Error(res.msg || 'Failed to list fee configs'))  
34 - } 31 +
35 }).catch(error => { 32 }).catch(error => {
36 reject(error) 33 reject(error)
37 }) 34 })
@@ -46,11 +43,8 @@ export function queryFloors(params) { @@ -46,11 +43,8 @@ export function queryFloors(params) {
46 params 43 params
47 }).then(response => { 44 }).then(response => {
48 const res = response.data 45 const res = response.data
49 - if (res.code === 0) {  
50 resolve(res) 46 resolve(res)
51 - } else {  
52 - reject(new Error(res.msg || 'Failed to query floors'))  
53 - } 47 +
54 }).catch(error => { 48 }).catch(error => {
55 reject(error) 49 reject(error)
56 }) 50 })
src/components/fee/doImportCreateFee.vue
1 <template> 1 <template>
2 - <el-dialog  
3 - :title="$t('doImportCreateFee.title')"  
4 - :visible.sync="visible"  
5 - width="70%"  
6 - :before-close="handleClose"  
7 - >  
8 - <el-form label-width="120px"> 2 + <el-dialog :title="$t('doImportCreateFee.title')" :visible.sync="visible" width="40%" :before-close="handleClose">
  3 + <el-form label-width="120px" class="text-left">
9 <el-form-item :label="$t('doImportCreateFee.selectFile')"> 4 <el-form-item :label="$t('doImportCreateFee.selectFile')">
10 - <el-upload  
11 - class="upload-demo"  
12 - action=""  
13 - :auto-upload="false"  
14 - :on-change="handleFileChange"  
15 - :show-file-list="false"  
16 - accept=".xls,.xlsx"  
17 - > 5 + <el-upload class="upload-demo" action="" :auto-upload="false" :on-change="handleFileChange"
  6 + :show-file-list="false" accept=".xls,.xlsx">
18 <el-button size="small" type="primary">{{ $t('doImportCreateFee.clickUpload') }}</el-button> 7 <el-button size="small" type="primary">{{ $t('doImportCreateFee.clickUpload') }}</el-button>
19 <div slot="tip" class="el-upload__tip"> 8 <div slot="tip" class="el-upload__tip">
20 {{ fileName || $t('doImportCreateFee.fileTip') }} 9 {{ fileName || $t('doImportCreateFee.fileTip') }}
@@ -25,11 +14,7 @@ @@ -25,11 +14,7 @@
25 14
26 <span slot="footer" class="dialog-footer"> 15 <span slot="footer" class="dialog-footer">
27 <el-button @click="handleClose">{{ $t('common.cancel') }}</el-button> 16 <el-button @click="handleClose">{{ $t('common.cancel') }}</el-button>
28 - <el-button  
29 - type="primary"  
30 - @click="handleImport"  
31 - :disabled="!fileName"  
32 - >{{ $t('common.import') }}</el-button> 17 + <el-button type="primary" @click="handleImport" :disabled="!fileName">{{ $t('common.import') }}</el-button>
33 </span> 18 </span>
34 </el-dialog> 19 </el-dialog>
35 </template> 20 </template>
@@ -57,37 +42,37 @@ export default { @@ -57,37 +42,37 @@ export default {
57 this.visible = true 42 this.visible = true
58 this.reset() 43 this.reset()
59 }, 44 },
60 - 45 +
61 handleFileChange(file) { 46 handleFileChange(file) {
62 if (!this.checkFileType(file.name)) { 47 if (!this.checkFileType(file.name)) {
63 this.$message.error(this.$t('doImportCreateFee.validate.invalidFileType')) 48 this.$message.error(this.$t('doImportCreateFee.validate.invalidFileType'))
64 return false 49 return false
65 } 50 }
66 - 51 +
67 if (!this.checkFileSize(file.size)) { 52 if (!this.checkFileSize(file.size)) {
68 this.$message.error(this.$t('doImportCreateFee.validate.fileTooLarge')) 53 this.$message.error(this.$t('doImportCreateFee.validate.fileTooLarge'))
69 return false 54 return false
70 } 55 }
71 - 56 +
72 this.file = file.raw 57 this.file = file.raw
73 this.fileName = file.name 58 this.fileName = file.name
74 }, 59 },
75 - 60 +
76 checkFileType(filename) { 61 checkFileType(filename) {
77 const ext = filename.split('.').pop().toLowerCase() 62 const ext = filename.split('.').pop().toLowerCase()
78 return ['xls', 'xlsx'].includes(ext) 63 return ['xls', 'xlsx'].includes(ext)
79 }, 64 },
80 - 65 +
81 checkFileSize(size) { 66 checkFileSize(size) {
82 return size <= 2 * 1024 * 1024 // 2MB 67 return size <= 2 * 1024 * 1024 // 2MB
83 }, 68 },
84 - 69 +
85 handleImport() { 70 handleImport() {
86 const formData = new FormData() 71 const formData = new FormData()
87 formData.append('uploadFile', this.file) 72 formData.append('uploadFile', this.file)
88 formData.append('communityId', this.communityId) 73 formData.append('communityId', this.communityId)
89 formData.append('importAdapt', 'importCustomFee') 74 formData.append('importAdapt', 'importCustomFee')
90 - 75 +
91 importData(formData).then(response => { 76 importData(formData).then(response => {
92 const res = response.data 77 const res = response.data
93 if (res.code === 0) { 78 if (res.code === 0) {
@@ -101,12 +86,12 @@ export default { @@ -101,12 +86,12 @@ export default {
101 this.$message.error(error.message) 86 this.$message.error(error.message)
102 }) 87 })
103 }, 88 },
104 - 89 +
105 handleClose() { 90 handleClose() {
106 this.visible = false 91 this.visible = false
107 this.reset() 92 this.reset()
108 }, 93 },
109 - 94 +
110 reset() { 95 reset() {
111 this.file = null 96 this.file = null
112 this.fileName = '' 97 this.fileName = ''
src/components/fee/exportFeeImportExcel.vue
1 <template> 1 <template>
2 - <el-dialog  
3 - :title="$t('exportFeeImportExcel.title')"  
4 - :visible.sync="visible"  
5 - width="70%"  
6 - :before-close="handleClose"  
7 - >  
8 - <el-form label-width="120px"> 2 + <el-dialog :title="$t('exportFeeImportExcel.title')" :visible.sync="visible" width="70%" :before-close="handleClose">
  3 + <el-form label-width="120px" class="text-left">
9 <el-form-item :label="$t('exportFeeImportExcel.floor')"> 4 <el-form-item :label="$t('exportFeeImportExcel.floor')">
10 <div> 5 <div>
11 - <el-checkbox  
12 - v-model="isFloorAll"  
13 - @change="toggleAllFloors"  
14 - >{{ $t('exportFeeImportExcel.all') }}</el-checkbox>  
15 - <el-checkbox  
16 - v-for="item in floors"  
17 - :key="item.floorId"  
18 - v-model="selectedFloorIds"  
19 - :label="item.floorId"  
20 - @change="handleFloorChange"  
21 - class="margin-left"  
22 - >{{ item.floorName }}</el-checkbox> 6 + <el-checkbox v-model="isFloorAll" @change="toggleAllFloors">{{ $t('exportFeeImportExcel.all') }}</el-checkbox>
  7 + <el-checkbox v-for="item in floors" :key="item.floorId" v-model="selectedFloorIds" :label="item.floorId"
  8 + @change="handleFloorChange" class="margin-left">{{ item.floorName }}</el-checkbox>
23 </div> 9 </div>
24 </el-form-item> 10 </el-form-item>
25 11
26 <el-form-item :label="$t('exportFeeImportExcel.feeItem')"> 12 <el-form-item :label="$t('exportFeeImportExcel.feeItem')">
27 <div> 13 <div>
28 - <el-checkbox  
29 - v-model="isConfigAll"  
30 - @change="toggleAllConfigs"  
31 - >{{ $t('exportFeeImportExcel.all') }}</el-checkbox>  
32 - <el-checkbox  
33 - v-for="item in configs"  
34 - :key="item.configId"  
35 - v-model="selectedConfigIds"  
36 - :label="item.configId"  
37 - @change="handleConfigChange"  
38 - class="margin-left"  
39 - >{{ item.feeName }}</el-checkbox> 14 + <el-checkbox v-model="isConfigAll" @change="toggleAllConfigs">{{ $t('exportFeeImportExcel.all')
  15 + }}</el-checkbox>
  16 + <el-checkbox v-for="item in configs" :key="item.configId" v-model="selectedConfigIds" :label="item.configId"
  17 + @change="handleConfigChange" class="margin-left">{{ item.feeName }}</el-checkbox>
40 </div> 18 </div>
41 </el-form-item> 19 </el-form-item>
42 </el-form> 20 </el-form>
@@ -76,18 +54,18 @@ export default { @@ -76,18 +54,18 @@ export default {
76 this.loadFloors() 54 this.loadFloors()
77 this.loadConfigs() 55 this.loadConfigs()
78 }, 56 },
79 - 57 +
80 loadFloors() { 58 loadFloors() {
81 queryFloors({ 59 queryFloors({
82 page: 1, 60 page: 1,
83 row: 150, 61 row: 150,
84 communityId: this.communityId 62 communityId: this.communityId
85 }).then(response => { 63 }).then(response => {
86 - this.floors = response.data.apiFloorDataVoList 64 + this.floors = response.apiFloorDataVoList
87 this.selectedFloorIds = this.floors.map(item => item.floorId) 65 this.selectedFloorIds = this.floors.map(item => item.floorId)
88 }) 66 })
89 }, 67 },
90 - 68 +
91 loadConfigs() { 69 loadConfigs() {
92 listFeeConfigs({ 70 listFeeConfigs({
93 page: 1, 71 page: 1,
@@ -95,31 +73,31 @@ export default { @@ -95,31 +73,31 @@ export default {
95 communityId: this.communityId, 73 communityId: this.communityId,
96 isDefault: 'F' 74 isDefault: 'F'
97 }).then(response => { 75 }).then(response => {
98 - this.configs = response.data.feeConfigs 76 + this.configs = response.feeConfigs
99 this.selectedConfigIds = this.configs.map(item => item.configId) 77 this.selectedConfigIds = this.configs.map(item => item.configId)
100 }) 78 })
101 }, 79 },
102 - 80 +
103 toggleAllFloors() { 81 toggleAllFloors() {
104 - this.selectedFloorIds = this.isFloorAll 82 + this.selectedFloorIds = this.isFloorAll
105 ? this.floors.map(item => item.floorId) 83 ? this.floors.map(item => item.floorId)
106 : [] 84 : []
107 }, 85 },
108 - 86 +
109 toggleAllConfigs() { 87 toggleAllConfigs() {
110 this.selectedConfigIds = this.isConfigAll 88 this.selectedConfigIds = this.isConfigAll
111 ? this.configs.map(item => item.configId) 89 ? this.configs.map(item => item.configId)
112 : [] 90 : []
113 }, 91 },
114 - 92 +
115 handleFloorChange() { 93 handleFloorChange() {
116 this.isFloorAll = this.selectedFloorIds.length === this.floors.length 94 this.isFloorAll = this.selectedFloorIds.length === this.floors.length
117 }, 95 },
118 - 96 +
119 handleConfigChange() { 97 handleConfigChange() {
120 this.isConfigAll = this.selectedConfigIds.length === this.configs.length 98 this.isConfigAll = this.selectedConfigIds.length === this.configs.length
121 }, 99 },
122 - 100 +
123 handleExport() { 101 handleExport() {
124 const params = { 102 const params = {
125 floorIds: this.selectedFloorIds.join(','), 103 floorIds: this.selectedFloorIds.join(','),
@@ -128,10 +106,10 @@ export default { @@ -128,10 +106,10 @@ export default {
128 type: '1001', 106 type: '1001',
129 pagePath: 'exportCreateFeeTemplate' 107 pagePath: 'exportCreateFeeTemplate'
130 } 108 }
131 - 109 +
132 exportData(params).then(response => { 110 exportData(params).then(response => {
133 this.$message.success(response.data.msg) 111 this.$message.success(response.data.msg)
134 - if (response.data.code === 0) { 112 + if (response.code === 0) {
135 this.handleClose() 113 this.handleClose()
136 this.$router.push('/pages/property/downloadTempFile?tab=下载中心') 114 this.$router.push('/pages/property/downloadTempFile?tab=下载中心')
137 } 115 }
@@ -139,12 +117,12 @@ export default { @@ -139,12 +117,12 @@ export default {
139 this.$message.error(error.message) 117 this.$message.error(error.message)
140 }) 118 })
141 }, 119 },
142 - 120 +
143 handleClose() { 121 handleClose() {
144 this.visible = false 122 this.visible = false
145 this.reset() 123 this.reset()
146 }, 124 },
147 - 125 +
148 reset() { 126 reset() {
149 this.isFloorAll = true 127 this.isFloorAll = true
150 this.isConfigAll = true 128 this.isConfigAll = true
src/views/fee/addOweFeeCallableList.vue
@@ -9,15 +9,9 @@ @@ -9,15 +9,9 @@
9 <el-row :gutter="20"> 9 <el-row :gutter="20">
10 <el-col :span="24"> 10 <el-col :span="24">
11 <el-form-item :label="$t('addOweFeeCallable.callableWay')"> 11 <el-form-item :label="$t('addOweFeeCallable.callableWay')">
12 - <el-select  
13 - v-model="addOweFeeCallableInfo.callableWay"  
14 - style="width:100%" 12 + <el-select v-model="addOweFeeCallableInfo.callableWay" style="width:100%"
15 :placeholder="$t('addOweFeeCallable.selectCallableWay')"> 13 :placeholder="$t('addOweFeeCallable.selectCallableWay')">
16 - <el-option  
17 - v-for="item in callableWayOptions"  
18 - :key="item.value"  
19 - :label="item.label"  
20 - :value="item.value"> 14 + <el-option v-for="item in callableWayOptions" :key="item.value" :label="item.label" :value="item.value">
21 </el-option> 15 </el-option>
22 </el-select> 16 </el-select>
23 </el-form-item> 17 </el-form-item>
@@ -28,11 +22,9 @@ @@ -28,11 +22,9 @@
28 <el-col :span="24"> 22 <el-col :span="24">
29 <el-form-item :label="$t('addOweFeeCallable.feeConfigs')"> 23 <el-form-item :label="$t('addOweFeeCallable.feeConfigs')">
30 <el-checkbox-group v-model="addOweFeeCallableInfo.configIds" @change="loadOweFeeRooms"> 24 <el-checkbox-group v-model="addOweFeeCallableInfo.configIds" @change="loadOweFeeRooms">
31 - <el-checkbox  
32 - v-for="item in addOweFeeCallableInfo.feeConfigs"  
33 - :key="item.configId" 25 + <el-checkbox v-for="item in addOweFeeCallableInfo.feeConfigs" :key="item.configId"
34 :label="item.configId"> 26 :label="item.configId">
35 - {{item.feeName}} 27 + {{ item.feeName }}
36 </el-checkbox> 28 </el-checkbox>
37 </el-checkbox-group> 29 </el-checkbox-group>
38 </el-form-item> 30 </el-form-item>
@@ -42,15 +34,9 @@ @@ -42,15 +34,9 @@
42 <el-row :gutter="20"> 34 <el-row :gutter="20">
43 <el-col :span="24"> 35 <el-col :span="24">
44 <el-form-item :label="$t('addOweFeeCallable.floor')"> 36 <el-form-item :label="$t('addOweFeeCallable.floor')">
45 - <el-select  
46 - v-model="addOweFeeCallableInfo.floorId"  
47 - style="width:100%"  
48 - @change="loadOweFeeRooms" 37 + <el-select v-model="addOweFeeCallableInfo.floorId" style="width:100%" @change="loadOweFeeRooms"
49 :placeholder="$t('addOweFeeCallable.selectFloor')"> 38 :placeholder="$t('addOweFeeCallable.selectFloor')">
50 - <el-option  
51 - v-for="item in addOweFeeCallableInfo.floors"  
52 - :key="item.floorId"  
53 - :label="item.floorNum" 39 + <el-option v-for="item in addOweFeeCallableInfo.floors" :key="item.floorId" :label="item.floorNum"
54 :value="item.floorId"> 40 :value="item.floorId">
55 </el-option> 41 </el-option>
56 </el-select> 42 </el-select>
@@ -61,16 +47,9 @@ @@ -61,16 +47,9 @@
61 <el-row :gutter="20"> 47 <el-row :gutter="20">
62 <el-col :span="24"> 48 <el-col :span="24">
63 <el-form-item :label="$t('addOweFeeCallable.timeRange')"> 49 <el-form-item :label="$t('addOweFeeCallable.timeRange')">
64 - <el-select  
65 - v-model="addOweFeeCallableInfo.hasTime"  
66 - style="width:100%"  
67 - @change="loadOweFeeRooms" 50 + <el-select v-model="addOweFeeCallableInfo.hasTime" style="width:100%" @change="loadOweFeeRooms"
68 :placeholder="$t('addOweFeeCallable.selectTimeRange')"> 51 :placeholder="$t('addOweFeeCallable.selectTimeRange')">
69 - <el-option  
70 - v-for="item in timeRangeOptions"  
71 - :key="item.value"  
72 - :label="item.label"  
73 - :value="item.value"> 52 + <el-option v-for="item in timeRangeOptions" :key="item.value" :label="item.label" :value="item.value">
74 </el-option> 53 </el-option>
75 </el-select> 54 </el-select>
76 </el-form-item> 55 </el-form-item>
@@ -80,20 +59,14 @@ @@ -80,20 +59,14 @@
80 <el-row :gutter="20" v-show="addOweFeeCallableInfo.hasTime === 'ON'"> 59 <el-row :gutter="20" v-show="addOweFeeCallableInfo.hasTime === 'ON'">
81 <el-col :span="12"> 60 <el-col :span="12">
82 <el-form-item :label="$t('addOweFeeCallable.startTime')"> 61 <el-form-item :label="$t('addOweFeeCallable.startTime')">
83 - <el-date-picker  
84 - v-model="addOweFeeCallableInfo.startTime"  
85 - type="datetime"  
86 - style="width:100%" 62 + <el-date-picker v-model="addOweFeeCallableInfo.startTime" type="datetime" style="width:100%"
87 :placeholder="$t('addOweFeeCallable.selectStartTime')"> 63 :placeholder="$t('addOweFeeCallable.selectStartTime')">
88 </el-date-picker> 64 </el-date-picker>
89 </el-form-item> 65 </el-form-item>
90 </el-col> 66 </el-col>
91 <el-col :span="12"> 67 <el-col :span="12">
92 <el-form-item :label="$t('addOweFeeCallable.endTime')"> 68 <el-form-item :label="$t('addOweFeeCallable.endTime')">
93 - <el-date-picker  
94 - v-model="addOweFeeCallableInfo.endTime"  
95 - type="datetime"  
96 - style="width:100%" 69 + <el-date-picker v-model="addOweFeeCallableInfo.endTime" type="datetime" style="width:100%"
97 :placeholder="$t('addOweFeeCallable.selectEndTime')"> 70 :placeholder="$t('addOweFeeCallable.selectEndTime')">
98 </el-date-picker> 71 </el-date-picker>
99 </el-form-item> 72 </el-form-item>
@@ -104,19 +77,13 @@ @@ -104,19 +77,13 @@
104 <el-col :span="24"> 77 <el-col :span="24">
105 <el-form-item :label="$t('addOweFeeCallable.oweRooms')"> 78 <el-form-item :label="$t('addOweFeeCallable.oweRooms')">
106 <div v-if="addOweFeeCallableInfo.rooms && addOweFeeCallableInfo.rooms.length > 0"> 79 <div v-if="addOweFeeCallableInfo.rooms && addOweFeeCallableInfo.rooms.length > 0">
107 - <el-checkbox  
108 - v-model="checkAllStatus"  
109 - @change="handleCheckAllChange"> 80 + <el-checkbox v-model="checkAllStatus" @change="handleCheckAllChange">
110 {{ $t('addOweFeeCallable.checkAll') }} 81 {{ $t('addOweFeeCallable.checkAll') }}
111 </el-checkbox> 82 </el-checkbox>
112 - <el-checkbox-group  
113 - v-model="addOweFeeCallableInfo.roomIds"  
114 - @change="handleCheckedRoomsChange">  
115 - <el-checkbox  
116 - v-for="item in addOweFeeCallableInfo.rooms"  
117 - :key="item.payerObjId" 83 + <el-checkbox-group v-model="addOweFeeCallableInfo.roomIds" @change="handleCheckedRoomsChange">
  84 + <el-checkbox v-for="item in addOweFeeCallableInfo.rooms" :key="item.payerObjId"
118 :label="item.payerObjId"> 85 :label="item.payerObjId">
119 - {{item.payerObjName}} 86 + {{ item.payerObjName }}
120 </el-checkbox> 87 </el-checkbox>
121 </el-checkbox-group> 88 </el-checkbox-group>
122 </div> 89 </div>
@@ -130,22 +97,14 @@ @@ -130,22 +97,14 @@
130 <el-row :gutter="20"> 97 <el-row :gutter="20">
131 <el-col :span="24" class="text-right"> 98 <el-col :span="24" class="text-right">
132 <el-button @click="goBack">{{ $t('common.back') }}</el-button> 99 <el-button @click="goBack">{{ $t('common.back') }}</el-button>
133 - <el-button  
134 - v-if="addOweFeeCallableInfo.callableWay === 'EXCEL'"  
135 - type="primary" 100 + <el-button v-if="addOweFeeCallableInfo.callableWay === 'EXCEL'" type="primary"
136 @click="exportCollectionLetterExcel"> 101 @click="exportCollectionLetterExcel">
137 {{ $t('common.export') }} 102 {{ $t('common.export') }}
138 </el-button> 103 </el-button>
139 - <el-button  
140 - v-else-if="addOweFeeCallableInfo.callableWay === 'TTS'"  
141 - type="primary"  
142 - @click="ttsOweFee"> 104 + <el-button v-else-if="addOweFeeCallableInfo.callableWay === 'TTS'" type="primary" @click="ttsOweFee">
143 {{ $t('addOweFeeCallable.ttsCall') }} 105 {{ $t('addOweFeeCallable.ttsCall') }}
144 </el-button> 106 </el-button>
145 - <el-button  
146 - v-else  
147 - type="primary"  
148 - @click="saveOweFeeCallable"> 107 + <el-button v-else type="primary" @click="saveOweFeeCallable">
149 {{ $t('common.submit') }} 108 {{ $t('common.submit') }}
150 </el-button> 109 </el-button>
151 </el-col> 110 </el-col>
@@ -157,7 +116,7 @@ @@ -157,7 +116,7 @@
157 116
158 <script> 117 <script>
159 import { getCommunityId } from '@/api/community/communityApi' 118 import { getCommunityId } from '@/api/community/communityApi'
160 -import { 119 +import {
161 saveOweFeeCallable, 120 saveOweFeeCallable,
162 exportCollectionLetterExcel, 121 exportCollectionLetterExcel,
163 listFeeConfigs, 122 listFeeConfigs,
@@ -212,8 +171,8 @@ export default { @@ -212,8 +171,8 @@ export default {
212 communityId: this.addOweFeeCallableInfo.communityId, 171 communityId: this.addOweFeeCallableInfo.communityId,
213 isDefault: 'F' 172 isDefault: 'F'
214 } 173 }
215 - const { data } = await listFeeConfigs(params)  
216 - this.addOweFeeCallableInfo.feeConfigs = data.feeConfigs 174 + const { feeConfigs } = await listFeeConfigs(params)
  175 + this.addOweFeeCallableInfo.feeConfigs = feeConfigs
217 } catch (error) { 176 } catch (error) {
218 console.error('获取费用配置失败:', error) 177 console.error('获取费用配置失败:', error)
219 } 178 }
@@ -225,16 +184,16 @@ export default { @@ -225,16 +184,16 @@ export default {
225 row: 100, 184 row: 100,
226 communityId: this.addOweFeeCallableInfo.communityId 185 communityId: this.addOweFeeCallableInfo.communityId
227 } 186 }
228 - const { data } = await queryFloors(params)  
229 - this.addOweFeeCallableInfo.floors = data.apiFloorDataVoList 187 + const { apiFloorDataVoList } = await queryFloors(params)
  188 + this.addOweFeeCallableInfo.floors = apiFloorDataVoList
230 } catch (error) { 189 } catch (error) {
231 console.error('获取楼栋失败:', error) 190 console.error('获取楼栋失败:', error)
232 } 191 }
233 }, 192 },
234 async loadOweFeeRooms() { 193 async loadOweFeeRooms() {
235 - if (!this.addOweFeeCallableInfo.floorId ||  
236 - !this.addOweFeeCallableInfo.configIds ||  
237 - this.addOweFeeCallableInfo.configIds.length === 0) { 194 + if (!this.addOweFeeCallableInfo.floorId ||
  195 + !this.addOweFeeCallableInfo.configIds ||
  196 + this.addOweFeeCallableInfo.configIds.length === 0) {
238 return 197 return
239 } 198 }
240 199
@@ -247,7 +206,7 @@ export default { @@ -247,7 +206,7 @@ export default {
247 floorId: this.addOweFeeCallableInfo.floorId 206 floorId: this.addOweFeeCallableInfo.floorId
248 } 207 }
249 const { data } = await queryReportOweFee(params) 208 const { data } = await queryReportOweFee(params)
250 - this.addOweFeeCallableInfo.rooms = data.data || [] 209 + this.addOweFeeCallableInfo.rooms = data || []
251 this.addOweFeeCallableInfo.roomIds = this.addOweFeeCallableInfo.rooms.map(item => item.payerObjId) 210 this.addOweFeeCallableInfo.roomIds = this.addOweFeeCallableInfo.rooms.map(item => item.payerObjId)
252 this.checkAllStatus = this.addOweFeeCallableInfo.rooms.length > 0 211 this.checkAllStatus = this.addOweFeeCallableInfo.rooms.length > 0
253 } catch (error) { 212 } catch (error) {
@@ -255,7 +214,7 @@ export default { @@ -255,7 +214,7 @@ export default {
255 } 214 }
256 }, 215 },
257 handleCheckAllChange(val) { 216 handleCheckAllChange(val) {
258 - this.addOweFeeCallableInfo.roomIds = val ? 217 + this.addOweFeeCallableInfo.roomIds = val ?
259 this.addOweFeeCallableInfo.rooms.map(item => item.payerObjId) : [] 218 this.addOweFeeCallableInfo.rooms.map(item => item.payerObjId) : []
260 }, 219 },
261 handleCheckedRoomsChange(value) { 220 handleCheckedRoomsChange(value) {
src/views/fee/roomCreateFeeList.vue
@@ -297,7 +297,7 @@ export default { @@ -297,7 +297,7 @@ export default {
297 this.$router.push('/pages/fee/roomCreatePayFee') 297 this.$router.push('/pages/fee/roomCreatePayFee')
298 }, 298 },
299 _downloadCollectionLetterOrder() { 299 _downloadCollectionLetterOrder() {
300 - this.$router.push('/pages/fee/addOweFeeCallable?callableWay=EXCEL') 300 + this.$router.push('/views/fee/addOweFeeCallable?callableWay=EXCEL')
301 }, 301 },
302 _downloadRoomCollectionLetterOrder(room) { 302 _downloadRoomCollectionLetterOrder(room) {
303 this.$refs.downloadCollectionLetterOrder.open({ 303 this.$refs.downloadCollectionLetterOrder.open({