态势感知平台-武汉市开源生态建设-开发者分布接口对接
This commit is contained in:
@@ -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 } from '@/api/jyh/situation';
|
||||
import { hmCityDataPage3, hmProjectsPage3, whProjectsPage3, hmDevCityDataPage3 } from '@/api/jyh/situation';
|
||||
|
||||
// ================= 数据定义 =================
|
||||
const hmCityData = ref([
|
||||
@@ -354,20 +354,7 @@ const hmCityData = ref([
|
||||
{ name: '山东', value: 24 }
|
||||
]);
|
||||
|
||||
const hmDevCityData = [
|
||||
{ name: '其他地区', value: 25.7 },
|
||||
{ name: '北京', value: 17 },
|
||||
{ name: '广东', value: 12 },
|
||||
{ name: '河北', value: 8.3 },
|
||||
{ name: '上海', value: 7.2 },
|
||||
{ name: '浙江', value: 5.6 },
|
||||
{ name: '山东', value: 5.1 },
|
||||
{ name: '江苏', value:4.6 },
|
||||
{ name: '湖南', value: 4.3 },
|
||||
{ name: '福建', value: 3.5 },
|
||||
{ name: '河南', value: 3.4 },
|
||||
{ name: '湖北', value: 3.3 }
|
||||
];
|
||||
const hmDevCityData = ref([]);
|
||||
|
||||
const hmEnterpriseCityData = [
|
||||
{ name: '广东', value: 133 },
|
||||
@@ -1017,6 +1004,55 @@ const fetchHmCityData = async () => {
|
||||
}
|
||||
};
|
||||
|
||||
// 获取开发者分布数据
|
||||
const fetchHmDevCityData = async () => {
|
||||
try {
|
||||
const response = await hmDevCityDataPage3();
|
||||
const businessData = response.data;
|
||||
if (businessData.code === 200 && businessData.data) {
|
||||
hmDevCityData.value = businessData.data;
|
||||
// 重新初始化图表以显示新数据
|
||||
initHmDevCityChart();
|
||||
} else {
|
||||
console.error('获取开发者分布数据失败:', businessData.msg || '未知错误');
|
||||
// 使用默认数据
|
||||
hmDevCityData.value = [
|
||||
{ name: '其他地区', value: 25.7 },
|
||||
{ name: '北京', value: 17 },
|
||||
{ name: '广东', value: 12 },
|
||||
{ name: '河北', value: 8.3 },
|
||||
{ name: '上海', value: 7.2 },
|
||||
{ name: '浙江', value: 5.6 },
|
||||
{ name: '山东', value: 5.1 },
|
||||
{ name: '江苏', value: 4.6 },
|
||||
{ name: '湖南', value: 4.3 },
|
||||
{ name: '福建', value: 3.5 },
|
||||
{ name: '河南', value: 3.4 },
|
||||
{ name: '湖北', value: 3.3 }
|
||||
];
|
||||
initHmDevCityChart();
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取开发者分布数据异常:', error);
|
||||
// 使用默认数据
|
||||
hmDevCityData.value = [
|
||||
{ name: '其他地区', value: 25.7 },
|
||||
{ name: '北京', value: 17 },
|
||||
{ name: '广东', value: 12 },
|
||||
{ name: '河北', value: 8.3 },
|
||||
{ name: '上海', value: 7.2 },
|
||||
{ name: '浙江', value: 5.6 },
|
||||
{ name: '山东', value: 5.1 },
|
||||
{ name: '江苏', value: 4.6 },
|
||||
{ name: '湖南', value: 4.3 },
|
||||
{ name: '福建', value: 3.5 },
|
||||
{ name: '河南', value: 3.4 },
|
||||
{ name: '湖北', value: 3.3 }
|
||||
];
|
||||
initHmDevCityChart();
|
||||
}
|
||||
};
|
||||
|
||||
const initHmEntCityChart = () => {
|
||||
const chartDom = document.getElementById('hmEntCityChart');
|
||||
if (!chartDom) return;
|
||||
@@ -1065,7 +1101,7 @@ const initHmDevCityChart = () => {
|
||||
itemWidth: 14,
|
||||
itemHeight: 14,
|
||||
textStyle: { color: '#64748b', fontSize: 12 },
|
||||
data: hmDevCityData.map(i => i.name)
|
||||
data: hmDevCityData.value.map(i => i.name)
|
||||
},
|
||||
series: [
|
||||
{
|
||||
@@ -1095,7 +1131,7 @@ const initHmDevCityChart = () => {
|
||||
lineStyle: { width: 1.5, color: '#94a3b8' }
|
||||
},
|
||||
// 关键修改部分:映射数据时判断城市名
|
||||
data: hmDevCityData.map((item, index) => {
|
||||
data: hmDevCityData.value.map((item, index) => {
|
||||
const isHubei = item.name === '湖北';
|
||||
|
||||
return {
|
||||
@@ -1233,8 +1269,8 @@ const handleResize = () => {
|
||||
|
||||
onMounted(async () => {
|
||||
nextTick(async () => {
|
||||
// 先获取鸿蒙项目城市分布数据和鸿蒙开源项目数据
|
||||
await Promise.all([fetchHmCityData(), fetchHmProjects(), fetchWhProjects()]);
|
||||
// 先获取鸿蒙项目城市分布数据、鸿蒙开源项目数据和开发者分布数据
|
||||
await Promise.all([fetchHmCityData(), fetchHmProjects(), fetchWhProjects(), fetchHmDevCityData()]);
|
||||
|
||||
initHmCityChart();
|
||||
initHmEnterpriseChart();
|
||||
|
||||
Reference in New Issue
Block a user