mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-23 21:36:37 +08:00
解决缴费页面账户选择bug
This commit is contained in:
parent
7cefa499d4
commit
9651477307
@ -10,10 +10,14 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-table :data="accountList" border style="width: 100%">
|
<el-table :data="accountList" border style="width: 100%">
|
||||||
<el-table-column align="center" :label="$t('payFeeUserAccount.select')" width="80">
|
<el-table-column align="center" :label="$t('payFeeUserAccount.select')" width="120">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-checkbox v-model="selectedAccounts" :value="scope.row.acctId"
|
<el-radio
|
||||||
@change="(checked) => handleAccountChange(scope.row.acctId, checked)"></el-checkbox>
|
v-model="selectedAccount"
|
||||||
|
:label="scope.row.acctId"
|
||||||
|
@change="() => handleAccountChange(scope.row)"
|
||||||
|
>
|
||||||
|
</el-radio>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="acctTypeName" align="center" :label="$t('payFeeUserAccount.accountType')" />
|
<el-table-column prop="acctTypeName" align="center" :label="$t('payFeeUserAccount.accountType')" />
|
||||||
@ -48,7 +52,7 @@ export default {
|
|||||||
feeId: '',
|
feeId: '',
|
||||||
ownerId: '',
|
ownerId: '',
|
||||||
communityId: '',
|
communityId: '',
|
||||||
selectedAccounts: [] // 改为数组,支持多选
|
selectedAccount: '' // 单选账户
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -83,53 +87,26 @@ export default {
|
|||||||
openAddUserAmountModal(userAccount) {
|
openAddUserAmountModal(userAccount) {
|
||||||
window.open(`/#/views/owner/ownerDetail?ownerId=${userAccount.objId}¤tTab=ownerDetailAccount`)
|
window.open(`/#/views/owner/ownerDetail?ownerId=${userAccount.objId}¤tTab=ownerDetailAccount`)
|
||||||
},
|
},
|
||||||
// 新增:处理账户选择变化
|
// 处理账户选择变化
|
||||||
handleAccountChange(acctId, checked) {
|
handleAccountChange(account) {
|
||||||
console.log('选中的账户ID:', acctId, '是否选中:', checked)
|
if (!account) {
|
||||||
console.log('当前selectedAccounts:', this.selectedAccounts)
|
this.selectedAccount = ''
|
||||||
|
|
||||||
// 确保 selectedAccounts 是数组
|
|
||||||
if (!Array.isArray(this.selectedAccounts)) {
|
|
||||||
this.selectedAccounts = []
|
|
||||||
}
|
|
||||||
|
|
||||||
if (checked) {
|
|
||||||
// 添加到选中数组
|
|
||||||
if (!this.selectedAccounts.includes(acctId)) {
|
|
||||||
this.selectedAccounts.push(acctId)
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
// 从选中数组中移除
|
this.selectedAccount = account.acctId
|
||||||
const index = this.selectedAccounts.indexOf(acctId)
|
|
||||||
if (index > -1) {
|
|
||||||
this.selectedAccounts.splice(index, 1)
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
console.log('更新后的selectedAccounts:', this.selectedAccounts)
|
|
||||||
this.computeFeeUserAmount()
|
this.computeFeeUserAmount()
|
||||||
},
|
},
|
||||||
// 修复:computeFeeUserAmount 方法
|
// 计算费用使用金额
|
||||||
computeFeeUserAmount() {
|
computeFeeUserAmount() {
|
||||||
console.log('计算费用,选中的账户:', this.selectedAccounts)
|
|
||||||
|
|
||||||
let totalUserAmount = 0.0
|
let totalUserAmount = 0.0
|
||||||
let selectAccount = []
|
let selectAccount = []
|
||||||
|
|
||||||
// 确保 selectedAccounts 是数组
|
const account = this.accountList.find(item => item.acctId === this.selectedAccount)
|
||||||
if (!Array.isArray(this.selectedAccounts)) {
|
if (account && Number(account.amount) !== 0) {
|
||||||
this.selectedAccounts = []
|
totalUserAmount = parseFloat(account.amount)
|
||||||
|
selectAccount = [account]
|
||||||
}
|
}
|
||||||
|
|
||||||
this.accountList.forEach(item => {
|
|
||||||
if (this.selectedAccounts.includes(item.acctId) && item.amount != 0) {
|
|
||||||
totalUserAmount += parseFloat(item.amount)
|
|
||||||
selectAccount.push(item)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
console.log('计算的总金额:', totalUserAmount, '选中的账户列表:', selectAccount)
|
|
||||||
|
|
||||||
this.$emit('changeUserAmountPrice', {
|
this.$emit('changeUserAmountPrice', {
|
||||||
totalUserAmount,
|
totalUserAmount,
|
||||||
accountList: this.accountList,
|
accountList: this.accountList,
|
||||||
@ -141,7 +118,7 @@ export default {
|
|||||||
},
|
},
|
||||||
handleClose() {
|
handleClose() {
|
||||||
this.accountList = []
|
this.accountList = []
|
||||||
this.selectedAccounts = [] // 清空选中的账户
|
this.selectedAccount = '' // 清空选中的账户
|
||||||
this.feeId = ''
|
this.feeId = ''
|
||||||
this.ownerId = ''
|
this.ownerId = ''
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user