|
|
@ -99,14 +99,6 @@ const getMarket = async () => { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 查询列表 |
|
|
|
|
|
const fetchData = async () => { |
|
|
|
|
|
loading.value = true |
|
|
|
|
|
try { |
|
|
|
|
|
// 将 adminData 中的名称列表转换为 ID 列表 |
|
|
|
|
|
const adminMarketNames = adminData.value.marketName?.split(',').map(item => item.trim()).filter(Boolean) || []; |
|
|
|
|
|
const adminMarketIds = []; |
|
|
|
|
|
|
|
|
|
|
|
// 递归遍历地区树寻找匹配的 ID |
|
|
// 递归遍历地区树寻找匹配的 ID |
|
|
const findIdsByNames = (nodes, names, resultIds) => { |
|
|
const findIdsByNames = (nodes, names, resultIds) => { |
|
|
if (!nodes || nodes.length === 0) return; |
|
|
if (!nodes || nodes.length === 0) return; |
|
|
@ -120,11 +112,14 @@ const fetchData = async () => { |
|
|
}); |
|
|
}); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// 查询列表 |
|
|
|
|
|
const fetchData = async () => { |
|
|
|
|
|
loading.value = true |
|
|
|
|
|
try { |
|
|
|
|
|
// 将 adminData 中的名称列表转换为 ID 列表 |
|
|
|
|
|
const adminMarketNames = adminData.value.marketName?.split(',').map(item => item.trim()).filter(Boolean) || []; |
|
|
|
|
|
const adminMarketIds = []; |
|
|
findIdsByNames(marketOptions.value, adminMarketNames, adminMarketIds); |
|
|
findIdsByNames(marketOptions.value, adminMarketNames, adminMarketIds); |
|
|
console.log('adminMarketNames:', adminMarketNames) |
|
|
|
|
|
console.log('adminMarketIds:', adminMarketIds) |
|
|
|
|
|
console.log('adminMarketIds:', queryParams.adminMarketIds) |
|
|
|
|
|
|
|
|
|
|
|
// 构建请求参数 |
|
|
// 构建请求参数 |
|
|
console.log('adminData.value.markets:', adminData.value.markets) |
|
|
console.log('adminData.value.markets:', adminData.value.markets) |
|
|
const params = { |
|
|
const params = { |
|
|
@ -216,12 +211,15 @@ const exportListLoading = ref(false) |
|
|
// 导出Excel |
|
|
// 导出Excel |
|
|
const handleExport = async () => { |
|
|
const handleExport = async () => { |
|
|
try { |
|
|
try { |
|
|
|
|
|
const adminMarketNames = adminData.value.marketName?.split(',').map(item => item.trim()).filter(Boolean) || []; |
|
|
|
|
|
const adminMarketIds = []; |
|
|
|
|
|
findIdsByNames(marketOptions.value, adminMarketNames, adminMarketIds); |
|
|
const params = { |
|
|
const params = { |
|
|
pageNum: queryParams.pageNum, |
|
|
pageNum: queryParams.pageNum, |
|
|
pageSize: queryParams.pageSize, |
|
|
pageSize: queryParams.pageSize, |
|
|
performanceDTO: { |
|
|
performanceDTO: { |
|
|
jwcode: queryParams.jwcode, |
|
|
jwcode: queryParams.jwcode, |
|
|
adminMarket: adminData.value.marketName.split(',').filter(item => item.trim() !== '') || [], |
|
|
|
|
|
|
|
|
adminMarket: adminMarketIds, |
|
|
customerMarket: queryParams.customerMarket, |
|
|
customerMarket: queryParams.customerMarket, |
|
|
startTime: queryParams.timeRange?.[0] ? dayjs(queryParams.timeRange[0]).format('YYYY-MM-DD HH:mm:ss') : '', |
|
|
startTime: queryParams.timeRange?.[0] ? dayjs(queryParams.timeRange[0]).format('YYYY-MM-DD HH:mm:ss') : '', |
|
|
endTime: queryParams.timeRange?.[1] ? dayjs(queryParams.timeRange[1]).format('YYYY-MM-DD HH:mm:ss') : '', |
|
|
endTime: queryParams.timeRange?.[1] ? dayjs(queryParams.timeRange[1]).format('YYYY-MM-DD HH:mm:ss') : '', |
|
|
@ -554,8 +552,8 @@ onMounted(async () => { |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column v-for="col in matrixMarkets" :key="col.key" :label="col.label + ' ' + t('cash.cashFlow.marketTeam')" |
|
|
|
|
|
min-width="120" align="center"> |
|
|
|
|
|
|
|
|
<el-table-column v-for="col in matrixMarkets" :key="col.key" |
|
|
|
|
|
:label="col.label + ' ' + t('cash.cashFlow.marketTeam')" min-width="120" align="center"> |
|
|
<template #default="{ row }"> |
|
|
<template #default="{ row }"> |
|
|
<span v-if="row.isSum">{{ row[col.key] }}</span> |
|
|
<span v-if="row.isSum">{{ row[col.key] }}</span> |
|
|
<el-input v-else v-model="row[col.key]" @input="row[col.key] = formatNumber($event)" placeholder="" |
|
|
<el-input v-else v-model="row[col.key]" @input="row[col.key] = formatNumber($event)" placeholder="" |
|
|
@ -572,7 +570,8 @@ onMounted(async () => { |
|
|
|
|
|
|
|
|
<template #footer> |
|
|
<template #footer> |
|
|
<div class="dialog-footer" style="text-align: center;"> |
|
|
<div class="dialog-footer" style="text-align: center;"> |
|
|
<el-button type="primary" plain @click="adjustVisible = false" style="width: 100px;">{{ t('common.cancel') }}</el-button> |
|
|
|
|
|
|
|
|
<el-button type="primary" plain @click="adjustVisible = false" style="width: 100px;">{{ t('common.cancel') |
|
|
|
|
|
}}</el-button> |
|
|
<el-button type="primary" @click="submitAdjustment" style="width: 100px;">{{ t('common.submit') }}</el-button> |
|
|
<el-button type="primary" @click="submitAdjustment" style="width: 100px;">{{ t('common.submit') }}</el-button> |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
|