态势感知平台-武汉市开源生态建设-鸿蒙项目城市分布接口对接
This commit is contained in:
@@ -338,9 +338,10 @@
|
|||||||
import { ref, onMounted, nextTick, onUnmounted } from 'vue';
|
import { ref, onMounted, nextTick, onUnmounted } from 'vue';
|
||||||
import * as echarts from 'echarts';
|
import * as echarts from 'echarts';
|
||||||
import HMStatsBar from './HMStatsBar.vue';
|
import HMStatsBar from './HMStatsBar.vue';
|
||||||
|
import { hmCityDataPage3 } from '@/api/jyh/situation';
|
||||||
|
|
||||||
// ================= 数据定义 =================
|
// ================= 数据定义 =================
|
||||||
const hmCityData = [
|
const hmCityData = ref([
|
||||||
{ name: '广东', value: 185 },
|
{ name: '广东', value: 185 },
|
||||||
{ name: '北京', value: 95 },
|
{ name: '北京', value: 95 },
|
||||||
{ name: '上海', value: 88 },
|
{ name: '上海', value: 88 },
|
||||||
@@ -351,7 +352,7 @@ const hmCityData = [
|
|||||||
{ name: '福建', value: 30 },
|
{ name: '福建', value: 30 },
|
||||||
{ name: '陕西', value: 28 },
|
{ name: '陕西', value: 28 },
|
||||||
{ name: '山东', value: 24 }
|
{ name: '山东', value: 24 }
|
||||||
];
|
]);
|
||||||
|
|
||||||
const hmDevCityData = [
|
const hmDevCityData = [
|
||||||
{ name: '其他地区', value: 25.7 },
|
{ name: '其他地区', value: 25.7 },
|
||||||
@@ -776,10 +777,10 @@ const initHmCityChart = () => {
|
|||||||
cityChart.setOption({
|
cityChart.setOption({
|
||||||
tooltip: { trigger: 'axis' },
|
tooltip: { trigger: 'axis' },
|
||||||
grid: { left: '3%', right: '4%', bottom: '3%', top: '10%', containLabel: true },
|
grid: { left: '3%', right: '4%', bottom: '3%', top: '10%', containLabel: true },
|
||||||
xAxis: { type: 'category', data: hmCityData.map(i => i.name), axisLabel: { color: '#64748b' } },
|
xAxis: { type: 'category', data: hmCityData.value.map(i => i.name), axisLabel: { color: '#64748b' } },
|
||||||
yAxis: { type: 'value', name: '单位:个', axisLabel: { color: '#64748b' } },
|
yAxis: { type: 'value', name: '单位:个', axisLabel: { color: '#64748b' } },
|
||||||
series: [{
|
series: [{
|
||||||
type: 'bar', barWidth: '40%', data: hmCityData.map(i => i.value),
|
type: 'bar', barWidth: '40%', data: hmCityData.value.map(i => i.value),
|
||||||
itemStyle: {
|
itemStyle: {
|
||||||
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#3b82f6' }, {
|
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#3b82f6' }, {
|
||||||
offset: 1,
|
offset: 1,
|
||||||
@@ -790,6 +791,50 @@ const initHmCityChart = () => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 获取鸿蒙项目城市分布数据
|
||||||
|
const fetchHmCityData = async () => {
|
||||||
|
try {
|
||||||
|
const response = await hmCityDataPage3();
|
||||||
|
if (response.code === 200 && response.data) {
|
||||||
|
hmCityData.value = response.data;
|
||||||
|
// 重新初始化图表以显示新数据
|
||||||
|
initHmCityChart();
|
||||||
|
} else {
|
||||||
|
console.error('获取鸿蒙项目城市分布数据失败:', response.msg || '未知错误');
|
||||||
|
// 使用默认数据
|
||||||
|
hmCityData.value = [
|
||||||
|
{ name: '广东', value: 185 },
|
||||||
|
{ name: '北京', value: 95 },
|
||||||
|
{ name: '上海', value: 88 },
|
||||||
|
{ name: '江苏', value: 70 },
|
||||||
|
{ name: '浙江', value: 52 },
|
||||||
|
{ name: '湖北', value: 38 },
|
||||||
|
{ name: '四川', value: 32 },
|
||||||
|
{ name: '福建', value: 30 },
|
||||||
|
{ name: '陕西', value: 28 },
|
||||||
|
{ name: '山东', value: 24 }
|
||||||
|
];
|
||||||
|
initHmCityChart();
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('获取鸿蒙项目城市分布数据异常:', error);
|
||||||
|
// 使用默认数据
|
||||||
|
hmCityData.value = [
|
||||||
|
{ name: '广东', value: 185 },
|
||||||
|
{ name: '北京', value: 95 },
|
||||||
|
{ name: '上海', value: 88 },
|
||||||
|
{ name: '江苏', value: 70 },
|
||||||
|
{ name: '浙江', value: 52 },
|
||||||
|
{ name: '湖北', value: 38 },
|
||||||
|
{ name: '四川', value: 32 },
|
||||||
|
{ name: '福建', value: 30 },
|
||||||
|
{ name: '陕西', value: 28 },
|
||||||
|
{ name: '山东', value: 24 }
|
||||||
|
];
|
||||||
|
initHmCityChart();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const initHmEntCityChart = () => {
|
const initHmEntCityChart = () => {
|
||||||
const chartDom = document.getElementById('hmEntCityChart');
|
const chartDom = document.getElementById('hmEntCityChart');
|
||||||
if (!chartDom) return;
|
if (!chartDom) return;
|
||||||
@@ -1004,8 +1049,11 @@ const handleResize = () => {
|
|||||||
entCityChart?.resize();
|
entCityChart?.resize();
|
||||||
};
|
};
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(async () => {
|
||||||
nextTick(() => {
|
nextTick(async () => {
|
||||||
|
// 先获取鸿蒙项目城市分布数据
|
||||||
|
await fetchHmCityData();
|
||||||
|
|
||||||
initHmCityChart();
|
initHmCityChart();
|
||||||
initHmEnterpriseChart();
|
initHmEnterpriseChart();
|
||||||
initHmEntCityChart();
|
initHmEntCityChart();
|
||||||
|
|||||||
Reference in New Issue
Block a user