diff --git a/src/views/Jyh/Community/components/HarmonyEcoCharts.vue b/src/views/Jyh/Community/components/HarmonyEcoCharts.vue index 3cb2167..7f9a25f 100644 --- a/src/views/Jyh/Community/components/HarmonyEcoCharts.vue +++ b/src/views/Jyh/Community/components/HarmonyEcoCharts.vue @@ -338,7 +338,7 @@ import { ref, onMounted, nextTick, onUnmounted } from 'vue'; import * as echarts from 'echarts'; import HMStatsBar from './HMStatsBar.vue'; -import { hmCityDataPage3, hmProjectsPage3, whProjectsPage3, hmDevCityDataPage3, hmDevelopersPage3 } from '@/api/jyh/situation'; +import { hmCityDataPage3, hmProjectsPage3, whProjectsPage3, hmDevCityDataPage3, hmDevelopersPage3, whHmDevelopersPage3 } from '@/api/jyh/situation'; // ================= 数据定义 ================= const hmCityData = ref([ @@ -635,18 +635,7 @@ const fetchWhProjects = async() => { const hmDevelopers = ref([]); // 武汉鸿蒙开发者贡献榜数据 -const whHmDevelopers = [ - { name: 'yang_hongliang', employer: '润开鸿', added: '168,982', deleted: '84,294', score: '253,276' }, - { name: 'tang_lizhen', employer: '润开鸿', added: '137,344', deleted: '25,345', score: '162,689' }, - { name: 'shilei-hihope', employer: '润开鸿', added: '28,144', deleted: '1,611', score: '29,755' }, - { name: 'zhangtao', employer: '润开鸿', added: '22,998', deleted: '0', score: '22,998' }, - { name: 'zhaoox0502', employer: '普华/中科创达', added: '37,126', deleted: '2,235', score: '39,361' }, - { name: 'lian_zhian', employer: '润开鸿', added: '17,382', deleted: '1,708', score: '19,090' }, - { name: 'XuejianZhang', employer: '普华/中科创达', added: '17,604', deleted: '344', score: '17,948' }, - { name: 'zhao_haipeng', employer: '润开鸿', added: '14,145', deleted: '2,576', score: '16,721' }, - { name: 'yanghongliang', employer: '润开鸿', added: '10,016', deleted: '78', score: '10,094' }, - { name: 'wangzx0705', employer: '普华/中科创达', added: '5,810', deleted: '1,356', score: '7,166' } -]; +const whHmDevelopers = ref([]); //开源企业贡献榜 const hmEnterprises = [ { name: '华为技术有限公司', city: '深圳', business: '鸿蒙系统核心开发与生态建设', remark: '鸿蒙发起者' }, @@ -1204,6 +1193,55 @@ const initHmDevCityChart = () => { }; devCityChart.setOption(option); }; + +// 获取武汉开发者贡献榜数据 +const fetchWhHmDevelopers = async () => { + try { + const response = await whHmDevelopersPage3(); + const businessData = response.data; + if (businessData.code === 200 && businessData.data) { + // 格式化数据,将数值转换为带千位分隔符的字符串 + const formattedData = businessData.data.map(item => ({ + ...item, + added: item.added.toLocaleString(), + deleted: item.deleted.toLocaleString(), + score: item.score.toLocaleString() + })); + whHmDevelopers.value = formattedData; + } else { + console.error('获取武汉开发者贡献榜数据失败:', businessData.msg || '未知错误'); + // 使用默认数据 + whHmDevelopers.value = [ + { name: 'yang_hongliang', employer: '润开鸿', added: '168,982', deleted: '84,294', score: '253,276' }, + { name: 'tang_lizhen', employer: '润开鸿', added: '137,344', deleted: '25,345', score: '162,689' }, + { name: 'shilei-hihope', employer: '润开鸿', added: '28,144', deleted: '1,611', score: '29,755' }, + { name: 'zhangtao', employer: '润开鸿', added: '22,998', deleted: '0', score: '22,998' }, + { name: 'zhaoox0502', employer: '普华/中科创达', added: '37,126', deleted: '2,235', score: '39,361' }, + { name: 'lian_zhian', employer: '润开鸿', added: '17,382', deleted: '1,708', score: '19,090' }, + { name: 'XuejianZhang', employer: '普华/中科创达', added: '17,604', deleted: '344', score: '17,948' }, + { name: 'zhao_haipeng', employer: '润开鸿', added: '14,145', deleted: '2,576', score: '16,721' }, + { name: 'yanghongliang', employer: '润开鸿', added: '10,016', deleted: '78', score: '10,094' }, + { name: 'wangzx0705', employer: '普华/中科创达', added: '5,810', deleted: '1,356', score: '7,166' } + ]; + } + } catch (error) { + console.error('获取武汉开发者贡献榜数据异常:', error); + // 使用默认数据 + whHmDevelopers.value = [ + { name: 'yang_hongliang', employer: '润开鸿', added: '168,982', deleted: '84,294', score: '253,276' }, + { name: 'tang_lizhen', employer: '润开鸿', added: '137,344', deleted: '25,345', score: '162,689' }, + { name: 'shilei-hihope', employer: '润开鸿', added: '28,144', deleted: '1,611', score: '29,755' }, + { name: 'zhangtao', employer: '润开鸿', added: '22,998', deleted: '0', score: '22,998' }, + { name: 'zhaoox0502', employer: '普华/中科创达', added: '37,126', deleted: '2,235', score: '39,361' }, + { name: 'lian_zhian', employer: '润开鸿', added: '17,382', deleted: '1,708', score: '19,090' }, + { name: 'XuejianZhang', employer: '普华/中科创达', added: '17,604', deleted: '344', score: '17,948' }, + { name: 'zhao_haipeng', employer: '润开鸿', added: '14,145', deleted: '2,576', score: '16,721' }, + { name: 'yanghongliang', employer: '润开鸿', added: '10,016', deleted: '78', score: '10,094' }, + { name: 'wangzx0705', employer: '普华/中科创达', added: '5,810', deleted: '1,356', score: '7,166' } + ]; + } +}; + const initHmEnterpriseChart = () => { const chartDom = document.getElementById('hmEnterpriseChart'); if (!chartDom) return; @@ -1316,8 +1354,8 @@ const handleResize = () => { onMounted(async () => { nextTick(async () => { - // 先获取鸿蒙项目城市分布数据、鸿蒙开源项目数据、开发者分布数据和开发者贡献榜数据 - await Promise.all([fetchHmCityData(), fetchHmProjects(), fetchWhProjects(), fetchHmDevCityData(), fetchHmDevelopers()]); + // 先获取鸿蒙项目城市分布数据、鸿蒙开源项目数据、开发者分布数据、开发者贡献榜数据和武汉开发者贡献榜数据 + await Promise.all([fetchHmCityData(), fetchHmProjects(), fetchWhProjects(), fetchHmDevCityData(), fetchHmDevelopers(), fetchWhHmDevelopers()]); initHmCityChart(); initHmEnterpriseChart();