feat(topOne): 重构核心业绩指标组件并添加用户下拉菜单
- 重构KpiMetrics组件以使用API获取的真实数据 - 添加UserDropdown组件到topOne页面 - 简化http工具中的get方法 - 更新KPI卡片显示逻辑和标签文本
This commit is contained in:
@@ -8,12 +8,14 @@
|
||||
<i class="icon-refresh"></i> 刷新数据
|
||||
</button>
|
||||
</div>
|
||||
<!-- 头像 -->
|
||||
<UserDropdown />
|
||||
</div>
|
||||
|
||||
<!-- 第一行:核心业绩指标、销售实时进度、下发任务 -->
|
||||
<div class="dashboard-row row-1">
|
||||
<!-- 核心业绩指标 -->
|
||||
<kpi-metrics :kpi-data="kpiData" :format-number="formatNumber" />
|
||||
<kpi-metrics :kpi-data="totalDeals" :format-number="formatNumber" />
|
||||
|
||||
<!-- 销售实时进度 -->
|
||||
<sales-progress :sales-data="salesData" />
|
||||
@@ -144,6 +146,7 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, computed, onMounted, nextTick } from "vue";
|
||||
import UserDropdown from "@/components/UserDropdown.vue";
|
||||
import KpiMetrics from "./components/KpiMetrics.vue";
|
||||
import SalesProgress from "./components/SalesProgress.vue";
|
||||
import TaskList from "./components/TaskList.vue";
|
||||
@@ -160,6 +163,9 @@ import DataDetail from "./components/DataDetail.vue";
|
||||
import CampManagement from "./components/CampManagement.vue";
|
||||
import DetailedDataTable from "./components/DetailedDataTable.vue";
|
||||
import DataDetailCard from "./components/DataDetailCard.vue";
|
||||
import { getOverallCompanyPerformance,getCompanyDepositConversionRate,getCompanyTotalCallCount,getCompanyNewCustomer,getCompanyConversionRate,getCompanyRealTimeProgress
|
||||
,getCompanyConversionRateVsLast,getSalesMonthlyPerformance,getCenterPerformanceRank,getCustomerTypeDistribution,getUrgentNeedToAddress,getLevelTree,getDetailedDataTable
|
||||
} from "@/api/top";
|
||||
|
||||
// 响应式数据
|
||||
const kpiData = reactive({
|
||||
@@ -575,8 +581,38 @@ const createTask = () => {
|
||||
showTaskModal.value = false;
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
// 核心数据
|
||||
const totalDeals = ref({});
|
||||
// 核心数据--总成交金额
|
||||
async function getTotalDeals() {
|
||||
try {
|
||||
const res1 = await getOverallCompanyPerformance()
|
||||
const res2=await getCompanyDepositConversionRate()
|
||||
const res3=await getCompanyTotalCallCount()
|
||||
const res4=await getCompanyNewCustomer()
|
||||
const res5=await getCompanyConversionRate()
|
||||
totalDeals.value={
|
||||
totalDeals:res1.data,
|
||||
totalAmount:res1.data,
|
||||
conversionRate:res2.data,
|
||||
totalCallCount:res3.data,
|
||||
newCustomer:res4.data,
|
||||
conversionRate:res5.data,
|
||||
}
|
||||
|
||||
|
||||
} catch (error) {
|
||||
console.error("获取总成交金额失败:", error);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
onMounted(async() => {
|
||||
// 页面初始化逻辑
|
||||
await getTotalDeals()
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user