提交 16f155c3 authored 作者: liujq23's avatar liujq23

暂存

上级 15963586
// 门户 import Portal1 from "@/views/portals/portal1/index.vue";
import Portal from "@/views/portals/portal/index.vue"; import Portal2 from "@/views/portals/portal2/index.vue";
const portalRoutes = [ const portalRoutes = [
// 门户 // 门户
{ {
path: "/portal", path: "/portal1",
name: "portal", name: "portal1",
component: Portal, component: Portal1,
meta: {
title: "门户"
}
},
{
path: "/portal2",
name: "portal2",
component: Portal2,
meta: { meta: {
title: "门户" title: "门户"
} }
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
:style="{ :style="{
backgroundColor: titleBackgroundColor, backgroundColor: titleBackgroundColor,
color: titleColor, color: titleColor,
fontSize: titleFontSize,
paddingLeft: titleTextAlign === 'left' ? '0px' : '20px' paddingLeft: titleTextAlign === 'left' ? '0px' : '20px'
}" }"
> >
...@@ -31,7 +32,7 @@ ...@@ -31,7 +32,7 @@
</slot> </slot>
</div> </div>
</div> </div>
<div class="body"> <div class="body" :style="bodyStyle">
<slot name="default"> </slot> <slot name="default"> </slot>
</div> </div>
</div> </div>
...@@ -44,7 +45,7 @@ const emit = defineEmits(["moreClick"]); ...@@ -44,7 +45,7 @@ const emit = defineEmits(["moreClick"]);
defineProps({ defineProps({
titleBackgroundColor: { titleBackgroundColor: {
type: String, type: String,
default: "red" default: "transparent"
}, },
titleColor: { titleColor: {
type: String, type: String,
...@@ -69,6 +70,16 @@ defineProps({ ...@@ -69,6 +70,16 @@ defineProps({
headerHeight: { headerHeight: {
type: String, type: String,
default: "48px" default: "48px"
},
titleFontSize: {
type: String,
default: "20px"
},
bodyStyle: {
type: Object,
default: function () {
return {};
}
} }
}); });
function moreClick() { function moreClick() {
......
...@@ -3,58 +3,46 @@ ...@@ -3,58 +3,46 @@
<el-row> <el-row>
<CardCustom <CardCustom
@more-click="moreClick" @more-click="moreClick"
title="风险信号" title="热门数据"
:style="{ width: '986px', height: '540px' }" title-color="rgba(5, 95, 194, 1)"
title-background-color="rgba(206, 79, 81, 1)" title-text-align="left"
title-font-size="16px"
:style="{ width: '520px', height: '460px' }"
:body-style="{ padding: 0 }"
> >
<template #icon> <template #icon>
<div class="icon icon1"></div> <div class="icon icon5"></div>
</template> </template>
<template #right> <template #right>
<div class="panel1Header"> <div></div>
<div class="item" v-for="(item, index) in levelMapList.slice(1, levelMapList.length)" :key="index">
<div class="itemIcon" :style="{ backgroundColor: item.color[0], borderColor: item.color[1] }"></div>
<div class="itemName">
{{ item.name }}
</div>
</div>
</div>
</template> </template>
<div class="panel1Body"> <div class="panel1Body">
<Echarts :option="mapOption" height="100%" @chart-ready="echarsReady"></Echarts> <div class="item" v-for="(item, index) in panel1Data" :key="index">
<div class="countryWrap"> <div class="number" :class="getClass(index + 1)">{{ index + 1 }}</div>
<div class="item" v-for="(item, index) in mapData" :key="index"> <div class="title">{{ item.title }}</div>
<img :src="item.flag" alt="" class="itemIcon" /> <div class="type">{{ item.type }}</div>
<div class="itemName">{{ item.name }}</div>
<div class="itemNumber">{{ item.children.length }}个</div>
</div>
</div> </div>
</div> </div>
</CardCustom> </CardCustom>
<CardCustom <CardCustom
@more-click="moreClick" @more-click="moreClick"
title="安全速递" title="数据分布"
:style="{ width: '600px', height: '540px', marginLeft: '14px' }" title-color="rgba(5, 95, 194, 1)"
title-background-color="rgba(206, 79, 81, 1)" title-text-align="left"
title-font-size="16px"
:style="{ width: '1064px', height: '460px', marginLeft: '14px' }"
> >
<template #icon> <template #icon>
<div class="icon icon1"></div> <div class="icon icon3"></div>
</template> </template>
<div class="panel2"> <div class="panel2">
<div class="item" v-for="(item, index) in securityExpressList" :key="index"> <Echarts :option="mapOption" height="100%" @chart-ready="echarsReady"></Echarts>
<span class="itemLevel" :class="levelMap[item.level].class">
{{ levelMap[item.level].text }}
</span>
<div class="itemText">{{ item.title }}</div>
<span class="itemTime">{{ item.time }}</span>
<span class="itemFlag" :style="{ backgroundImage: 'url(' + item.flag + ')' }"></span>
</div>
</div> </div>
</CardCustom> </CardCustom>
</el-row> </el-row>
<el-card class="gap"> <el-card class="gap">
<el-row> <el-row>
<PieProgress v-for="item in List" :data="item" /> <div class="panel3"></div>
</el-row> </el-row>
</el-card> </el-card>
<el-row class="gap"> <el-row class="gap">
...@@ -185,835 +173,929 @@ import mapFlag5 from "../assets/img/mapFlag5.png"; ...@@ -185,835 +173,929 @@ import mapFlag5 from "../assets/img/mapFlag5.png";
import mapFlag6 from "../assets/img/mapFlag6.png"; import mapFlag6 from "../assets/img/mapFlag6.png";
import { ref } from "vue"; import { ref } from "vue";
const levelMap = { const panel2Data = [
L1: { text: "特别重大", class: "level1" },
L2: { text: "重大风险", class: "level2" },
L3: { text: "一般风险", class: "level3" }
};
const echarsReady = mycharts => {
mycharts.on("click", function (params) {
// 1. 判断点击的是否是geo组件
if (params.componentType === "geo") {
console.log("点击了地图区域:", params.name); // 可获取地区名称[citation:1]
// 2. 获取鼠标点击的像素坐标
// 注意:高版本ECharts中,event可能挂载在不同位置,建议用 params.event 获取[citation:5]
const pixelPoint = [params.event.offsetX, params.event.offsetY];
// 3. 关键:将像素坐标转换为地理坐标 (经度, 纬度)
// 第一个参数 'geo' 指定坐标系,第二个参数是像素坐标数组[citation:9]
const geoCoords = mycharts.convertFromPixel("geo", pixelPoint);
console.log("对应的经纬度坐标:", geoCoords); // 输出格式如 [116.40, 39.90]
}
});
};
let mapData = [
{
name: "加拿大",
flag: mapFlag1,
children: [
{ {
value: 12, title: "H.R.1-119th-大而美法案",
level: 1, type: "科技法案"
name: "加拿大1",
text: "",
position: [-114.92625574436123, 60.97139707757613]
}, },
{ {
value: 12, title: "欧盟单方面宣布对中国电动汽车加征反补贴...",
level: 1, type: "媒体报道"
name: "加拿大2",
text: "",
position: [-122.66033268519817, 64.94019971826877]
}, },
{ {
value: 12, title: "禁止在中国建设半导体产能",
level: 1, type: "总统政令"
name: "加拿大3",
text: "",
position: [-95.38753505172055, 65.24549222909128]
}
]
}, },
{ {
name: "英国", title: "2025年实体清单",
flag: mapFlag2, type: "实体清单"
children: [
{
value: 12,
level: 1,
name: "英国1",
text: "",
position: [-1.5492917852477053, 52.764489718498275]
}, },
{ {
value: 12, title: "2025年度中美贸易统计公报",
level: 1, type: "统计公报"
name: "英国2",
text: "",
position: [-2.698117404891553, 54.74388521180356]
}, },
{ {
value: 12, title: "生物科技法案",
level: 1, type: "科技法案"
name: "英国3",
text: "",
position: [-0.6799102352469557, 53.90555300287426]
}, },
{ {
value: 12, title: "阻止中俄法案",
level: 1, type: "科技法案"
name: "英国4",
text: "",
position: [0.46891538439689207, 52.83435073590905]
}, },
{ {
value: 12, title: "美国密歇根大学终止与上海交通大学的长期...",
level: 1, type: "媒体报道"
name: "英国5",
text: "",
position: [-3.722745660249581, 53.13708181135574]
}, },
{ {
value: 12, title: "禁止卫星出口至中国",
level: 1, type: "智库报告"
name: "英国6",
text: "",
position: [-4.095337753107044, 51.99601852697975]
}
]
}, },
{ {
name: "欧盟", title: "禁购华为设备",
flag: mapFlag3, type: "社交媒体贴文"
children: [ }
];
const getClass = number => {
if (number === 1) {
return "one";
} else if (number === 2) {
return "two";
} else if (number === 3) {
return "three";
} else {
return "";
}
};
const panel3Data = [
{ {
value: 12, id: 1,
level: 1, name: "科研学术",
name: "欧盟1", number: "1135"
text: "",
position: [11.724105556570102, 48.58464196103773]
}, },
{ {
value: 12, id: 2,
level: 1, name: "政策法规",
name: "欧盟2", number: "2431"
text: "",
position: [-0.7100210266255225, 44.00223755214452]
}, },
{ {
value: 12, id: 3,
level: 1, name: "人才教育",
name: "欧盟3", number: "4652"
text: "",
position: [-0.7100210266255225, 45.12774038941654]
}, },
{ {
value: 12, id: 4,
level: 1, name: "科研项目",
name: "欧盟4", number: "1325"
text: "",
position: [-0.8172117730323798, 47.459139123765716]
}, },
{ {
value: 12, id: 5,
level: 5, name: "贸易投资",
name: "欧盟5", number: "9846"
text: "",
position: [0.14750494462934682, 49.147393379673744]
}, },
{ {
value: 12, id: 6,
level: 5, name: "企业产业",
name: "欧盟6", number: "955"
text: "",
position: [2.3985106191733827, 50.3532892767509]
}, },
{ {
value: 12, id: 7,
level: 5, name: "媒体智库",
name: "欧盟7", number: "1135"
text: "",
position: [4.542325547310561, 49.870930917920035]
}, },
{ {
value: 12, id: 8,
level: 5, name: "安全治理",
name: "欧盟8", number: "1091"
text: "", }
position: [6.793331221854594, 48.906214200258304] ];
}, const panel3ActiveId = ref(panel3Data[0].id);
const panel3SetActiveId = id => {
panel3ActiveId.value = id;
};
const securityExpressList = ref([
{ {
value: 12, title: "美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实",
level: 1, level: "L1",
name: "欧盟9", time: "一天前",
text: "", flag: flag1
position: [9.901862867653499, 45.36891956883197]
}, },
{ {
value: 13, title: "美国加强对华AI芯片出口限制,考虑制...",
level: 3, level: "L1",
name: "欧盟10", time: "一天前",
text: "", flag: flag1
position: [8.937146149991769, 46.97678076493485]
}, },
{ {
value: 13, title: "日本出台《半导体材料出口管制令》...",
level: 3, level: "L1",
name: "欧盟11", time: "一天前",
text: "", flag: flag2
position: [10.545007346094657, 49.468965618894316]
}, },
{ {
value: 13, title: "日本对GAAFET技术、EUV光刻设备等...",
level: 3, level: "L1",
name: "欧盟12", time: "一天前",
text: "", flag: flag2
position: [14.296683470334713, 49.468965618894316]
}, },
{ {
value: 13, title: "欧盟签署协议限制高端AI芯片对华出口",
level: 3, level: "L2",
name: "欧盟13", time: "一天前",
text: "", flag: flag3
position: [12.79601302063869, 47.217959944350284]
}, },
{ {
value: 13, title: "欧盟第18轮制裁中首次将3家中资企业...",
level: 3, level: "L2",
name: "欧盟14", time: "一天前",
text: "", flag: flag3
position: [10.437816599687793, 48.58464196103773]
}, },
{ {
value: 13, title: "美国发布《保障信息和通信技术与服务...",
level: 3, level: "L2",
name: "欧盟15", time: "一天前",
text: "", flag: flag1
position: [10.652198092501514, 51.719971293438356]
}, },
{ {
value: 13, title: "日本将42家中国实体列入出口管制“...",
level: 3, level: "L3",
name: "欧盟16", time: "一天前",
text: "", flag: flag2
position: [15.047018695182722, 49.79053785811488]
}, },
{ {
value: 13, title: "美国政府放慢向英伟达和超威等芯片...",
level: 3, level: "L3",
name: "欧盟17", time: "一天前",
text: "", flag: flag1
position: [10.759388838908372, 53.40822554934638]
}, },
{ {
value: 13, title: "七国集团成员国就人工智能发表了以...",
level: 3, level: "L3",
name: "欧盟18", time: "一天前",
text: "", flag: flag3
position: [14.832637202369007, 48.42385584142743]
} }
] ]);
const trendsList = ref([
{
title: "韩研制用于存内计算的小型低功耗神经形态模块",
time: "08-16"
}, },
{ {
name: "韩国", title: "中国科学院大学等在有机太阳能电池领域取得重要突破",
flag: mapFlag4, time: "08-16"
children: [ },
{ {
value: 40, title: "德国于利希研究中心成功制造并实验验证全球首个二维半金属材料",
level: 1, time: "08-16"
name: "韩国1",
text: "",
position: [127.6671802588885, 35.6152933447435]
}, },
{ {
value: 40, title: "浙江大学开发“女娲”AI模型,精准预测基因组调控序列",
level: 1, time: "08-16"
name: "韩国2",
text: "",
position: [127.6671802588885, 37.49854900651488]
}, },
{ {
value: 40, title: "我国基于碳量子点材料制备出高效低成本有机太阳能电池",
level: 1, time: "08-16"
name: "韩国3",
text: "",
position: [128.92268403340273, 37.14543856993275]
}, },
{ {
value: 40, title: "谷歌Gemini 2.5系列模型更新,实现高速推理与极致性价比",
level: 3, time: "08-16"
name: "韩国4", },
{
title: "上海理工大学联合杜克大学在AI赋能仿生视觉技术领域实现突破",
time: "08-16"
}
]);
const policyList = ref([
{
title: "美国发布《2025财年国防授权法案》,拨款替换华为、中兴设备;禁止国防...",
time: "08-16"
},
{
title: "美国发布对华投资限制新规,限制美资在半导体、AI、量子技术等领域的对...",
time: "08-16"
},
{
title: "欧盟发布《网络弹性法案》(CRA),要求数字产品全生命周期安全合规,...",
time: "08-16"
},
{
title: "欧盟发布对外投资审查建议,要求成员国审查在半导体、AI、量子技术等领...",
time: "08-16"
},
{
title: "日本出台《半导体出口管制修正》加强对十余种半导体相关物项的出口管制...",
time: "08-16"
},
{
title: "日本拟出台“许可制”,限制外国留学生(特别提及中国)学习半导体、机...",
time: "08-16"
},
{
title: "日本通过并实施《经济安全保障推进法案》相关措施",
time: "08-16"
}
]);
const List = ref([
{
title: "当月/总数",
titleSub: "较上月+4",
progress: 90,
slope: "add",
total: 8,
current: 7
},
{
title: "人工智能",
titleSub: "较上月+4",
progress: 50,
slope: "add",
total: 26,
current: 3
},
{
title: "生物技术",
titleSub: "较上月+4",
progress: 60,
slope: "add",
total: 13,
current: 3
},
{
title: "航空航天",
titleSub: "较上月+4",
progress: 40,
slope: "add",
total: 15,
current: 3
},
{
title: "新一代信息技术",
titleSub: "较上月+4",
progress: 50,
slope: "add",
total: 12,
current: 3
},
{
title: "量子科技",
titleSub: "较上月+4",
progress: 20,
slope: "add",
total: 8,
current: 3
},
{
title: "新能源",
titleSub: "较上月+4",
progress: 90,
slope: "add",
total: 18,
current: 3
},
{
title: "集成电路",
titleSub: "较上月+4",
progress: 20,
slope: "add",
total: 16,
current: 3
},
{
title: "海洋",
titleSub: "较上月+4",
progress: 50,
slope: "add",
total: 8,
current: 3
},
{
title: "先进制造",
titleSub: "较上月+4",
progress: 50,
slope: "add",
total: 15,
current: 3
},
{
title: "新材料",
titleSub: "较上月+4",
progress: 50,
slope: "add",
total: 8,
current: 3
}
]);
const catdList = ref([
{
title: "数据资源管理",
bgColor: "rgba(206, 79, 81, 1)",
list: [
{
title: "数据资源目录",
text: "平台各类数据资源汇总导航"
},
{
title: "数据统计分析",
text: "查看资源发布量、各部门资源注册情况"
},
{
title: "信息空间",
text: "对数据资源的全生命周期进行管理"
}
]
},
{
title: "信息发布与管理",
bgColor: "rgba(19, 168, 168, 1)",
list: [
{
title: "信息编辑",
text: "信息的内容导入、格式编辑"
},
{
title: "信息审核",
text: "发布前内容自动审核、词库屏蔽"
},
{
title: "信息发布",
text: "提供点到点以及点到面的消息发送"
}
]
},
{
title: "应用支撑平台",
bgColor: "rgba(250, 140, 22, 1)",
list: [
{
title: "应用功能目录",
text: "快速访问和使用系统功能"
},
{
title: "应用工具目录",
text: "各项应用工具的使用方法和应用场景"
},
{
title: "应用功能与工具管理",
text: "实现功能及工具快捷访问配置入口"
}
]
},
{
title: "后台服务管理",
bgColor: "rgba(10, 87, 166, 1)",
list: [
{
title: "界面配置管理",
text: "支持界面布局、样式定制化修改"
},
{
title: "数据接口管理",
text: "实现数据接口的访问调用、权限控制等"
},
{
title: "系统配置管理",
text: "支持各分系统配置的定制与调整"
}
]
}
]);
const echarsReady = mycharts => {
mycharts.on("click", function (params) {
// 1. 判断点击的是否是geo组件
if (params.componentType === "geo") {
console.log("点击了地图区域:", params.name); // 可获取地区名称[citation:1]
// 2. 获取鼠标点击的像素坐标
// 注意:高版本ECharts中,event可能挂载在不同位置,建议用 params.event 获取[citation:5]
const pixelPoint = [params.event.offsetX, params.event.offsetY];
// 3. 关键:将像素坐标转换为地理坐标 (经度, 纬度)
// 第一个参数 'geo' 指定坐标系,第二个参数是像素坐标数组[citation:9]
const geoCoords = mycharts.convertFromPixel("geo", pixelPoint);
console.log("对应的经纬度坐标:", geoCoords); // 输出格式如 [116.40, 39.90]
}
});
};
let mapData = [
{
name: "加拿大",
flag: mapFlag1,
children: [
{
value: 12,
level: 1,
name: "加拿大1",
text: "", text: "",
position: [128.92268403340273, 36.43921769676848] position: [-114.92625574436123, 60.97139707757613]
}, },
{ {
value: 40, value: 12,
level: 1, level: 1,
name: "韩国5", name: "加拿大2",
text: "", text: "",
position: [128.13799417433134, 35.49758986588279] position: [-122.66033268519817, 64.94019971826877]
}, },
{ {
value: 40, value: 12,
level: 3, level: 1,
name: "韩国6", name: "加拿大3",
text: "", text: "",
position: [127.10764322693156, 35.25464166802588] position: [-95.38753505172055, 65.24549222909128]
} }
] ]
}, },
{ {
name: "日本", name: "英国",
flag: mapFlag5, flag: mapFlag2,
children: [ children: [
{ {
value: 40, value: 12,
level: 1, level: 1,
name: "日本1", name: "英国1",
text: "", text: "",
position: [142.8374359085882, 43.947802361746696] position: [-1.5492917852477053, 52.764489718498275]
}, },
{ {
value: 40, value: 12,
level: 1, level: 1,
name: "日本2", name: "英国2",
text: "", text: "",
position: [141.18555679600132, 42.96971604508341] position: [-2.698117404891553, 54.74388521180356]
}, },
{ {
value: 40, value: 12,
level: 2, level: 1,
name: "日本3", name: "英国3",
text: "", text: "",
position: [141.09861579007568, 41.14395492064528] position: [-0.6799102352469557, 53.90555300287426]
}, },
{ {
value: 40, value: 12,
level: 2, level: 1,
name: "日本4", name: "英国4",
text: "", text: "",
position: [141.09861579007568, 39.709428322872455] position: [0.46891538439689207, 52.83435073590905]
}, },
{ {
value: 40, value: 12,
level: 1, level: 1,
name: "日本5", name: "英国5",
text: "", text: "",
position: [140.05532371896817, 38.7965477606534] position: [-3.722745660249581, 53.13708181135574]
}, },
{ {
value: 40, value: 12,
level: 5, level: 1,
name: "日本6", name: "英国6",
text: "", text: "",
position: [139.96838271304256, 37.36202116288057] position: [-4.095337753107044, 51.99601852697975]
}
]
}, },
{ {
value: 40, name: "欧盟",
flag: mapFlag3,
children: [
{
value: 12,
level: 1, level: 1,
name: "日本7", name: "欧盟1",
text: "", text: "",
position: [138.0556805826788, 36.44914060066151] position: [11.724105556570102, 48.58464196103773]
}, },
{ {
value: 40, value: 12,
level: 5, level: 1,
name: "日本8", name: "欧盟2",
text: "", text: "",
position: [136.49074247601754, 35.01461400288869] position: [-0.7100210266255225, 44.00223755214452]
}
]
}, },
{ {
name: "美国", value: 12,
flag: mapFlag6, level: 1,
children: [ name: "欧盟3",
text: "",
position: [-0.7100210266255225, 45.12774038941654]
},
{ {
value: 40, value: 12,
level: 1, level: 1,
name: "美国1", name: "欧盟4",
text: "", text: "",
position: [-120.95330892639737, 46.048538366525065] position: [-0.8172117730323798, 47.459139123765716]
}, },
{ {
value: 40, value: 12,
level: 5, level: 5,
name: "美国2", name: "欧盟5",
text: "", text: "",
position: [-117.06095626240344, 45.00594390295526] position: [0.14750494462934682, 49.147393379673744]
}, },
{ {
value: 40, value: 12,
level: 1, level: 5,
name: "美国3", name: "欧盟6",
text: "", text: "",
position: [-119.56318297497097, 42.08667940495981] position: [2.3985106191733827, 50.3532892767509]
}, },
{ {
value: 40, value: 12,
level: 5,
name: "欧盟7",
text: "",
position: [4.542325547310561, 49.870930917920035]
},
{
value: 12,
level: 5,
name: "欧盟8",
text: "",
position: [6.793331221854594, 48.906214200258304]
},
{
value: 12,
level: 1, level: 1,
name: "美国4", name: "欧盟9",
text: "", text: "",
position: [-119.56318297497097, 39.375933799678315] position: [9.901862867653499, 45.36891956883197]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国5", name: "欧盟10",
text: "", text: "",
position: [-118.72910740411513, 37.49926376525268] position: [8.937146149991769, 46.97678076493485]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国6", name: "欧盟11",
text: "", text: "",
position: [-115.67083031097702, 35.414074838113066] position: [10.545007346094657, 49.468965618894316]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国7", name: "欧盟12",
text: "", text: "",
position: [-109.55427612470085, 35.20555594539911] position: [14.296683470334713, 49.468965618894316]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国8", name: "欧盟13",
text: "", text: "",
position: [-104.2717975092805, 34.162961481829306] position: [12.79601302063869, 47.217959944350284]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国9", name: "欧盟14",
text: "", text: "",
position: [-101.21352041614242, 32.49481034011762] position: [10.437816599687793, 48.58464196103773]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国10", name: "欧盟15",
text: "", text: "",
position: [-98.71129370357488, 29.99258362755009] position: [10.652198092501514, 51.719971293438356]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国11", name: "欧盟16",
text: "", text: "",
position: [-96.48709218129264, 31.24369698383387] position: [15.047018695182722, 49.79053785811488]
}, },
{ {
value: 40, value: 13,
level: 5, level: 3,
name: "美国12", name: "欧盟17",
text: "", text: "",
position: [-92.31671432701341, 32.91184812554555] position: [10.759388838908372, 53.40822554934638]
}, },
{ {
value: 40, value: 13,
level: 3, level: 3,
name: "美国13", name: "欧盟18",
text: "", text: "",
position: [-95.93104180072207, 38.124820443394576] position: [14.832637202369007, 48.42385584142743]
}
]
}, },
{
name: "韩国",
flag: mapFlag4,
children: [
{ {
value: 40, value: 40,
level: 5, level: 1,
name: "美国14", name: "韩国1",
text: "", text: "",
position: [-100.93549522585714, 37.70778265796665] position: [127.6671802588885, 35.6152933447435]
}, },
{ {
value: 40, value: 40,
level: 3, level: 1,
name: "美国15", name: "韩国2",
text: "", text: "",
position: [-105.38389827042164, 45.00594390295528] position: [127.6671802588885, 37.49854900651488]
}, },
{ {
value: 40, value: 40,
level: 1, level: 1,
name: "美国16", name: "韩国3",
text: "", text: "",
position: [-92.87276470758401, 43.963349439385496] position: [128.92268403340273, 37.14543856993275]
}, },
{ {
value: 40, value: 40,
level: 3, level: 3,
name: "美国17", name: "韩国4",
text: "", text: "",
position: [-89.53646242416063, 41.04408494139004] position: [128.92268403340273, 36.43921769676848]
}, },
{ {
value: 40, value: 40,
level: 1, level: 1,
name: "美国18", name: "韩国5",
text: "", text: "",
position: [-81.75175709617281, 37.49926376525271] position: [128.13799417433134, 35.49758986588279]
}, },
{ {
value: 40, value: 40,
level: 1, level: 3,
name: "美国19", name: "韩国6",
text: "", text: "",
position: [-83.4199082378845, 35.622593730827056] position: [127.10764322693156, 35.25464166802588]
}
]
}, },
{
name: "日本",
flag: mapFlag5,
children: [
{ {
value: 40, value: 40,
level: 1, level: 1,
name: "美国20", name: "日本1",
text: "", text: "",
position: [-88.70238685330483, 33.32888591097349] position: [142.8374359085882, 43.947802361746696]
}, },
{ {
value: 40, value: 40,
level: 2, level: 1,
name: "美国21", name: "日本2",
text: "", text: "",
position: [-75.63520290989662, 42.29519829767381] position: [141.18555679600132, 42.96971604508341]
}, },
{ {
value: 40, value: 40,
level: 2, level: 2,
name: "美国22", name: "日本3",
text: "", text: "",
position: [-74.80112733904078, 43.546311653957574] position: [141.09861579007568, 41.14395492064528]
}, },
{ {
value: 40, value: 40,
level: 2, level: 2,
name: "美国23", name: "日本4",
text: "", text: "",
position: [-72.85495100704381, 44.17186833209945] position: [141.09861579007568, 39.709428322872455]
}, },
{ {
value: 40, value: 40,
level: 2, level: 1,
name: "美国24", name: "日本5",
text: "", text: "",
position: [-69.79667391390572, 45.214462795669256] position: [140.05532371896817, 38.7965477606534]
}
]
}
];
const levelMapList = [
{},
{
name: "特别重大风险",
color: ["rgba(255, 77, 79, 1)", "rgba(255, 163, 158, 1)"]
},
{
name: "重大风险",
color: ["rgba(255, 169, 64, 1)", "rgba(255, 213, 145, 1)"]
},
{
name: "较大风险",
color: ["rgba(250, 219, 20, 1)", "rgba(255, 251, 143, 1)"]
},
{
name: "一般风险",
color: ["rgba(64, 150, 255, 1)", "rgba(145, 202, 255, 1)"]
},
{
name: "几乎无风险",
color: ["rgba(54, 207, 201, 1)", "rgba(135, 232, 222, 1)"]
}
];
const mapOption = getMapOption(mapData, levelMapList);
const securityExpressList = ref([
{
title: "美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实美国新增出口管制,52家中国科技实",
level: "L1",
time: "一天前",
flag: flag1
},
{
title: "美国加强对华AI芯片出口限制,考虑制...",
level: "L1",
time: "一天前",
flag: flag1
},
{
title: "日本出台《半导体材料出口管制令》...",
level: "L1",
time: "一天前",
flag: flag2
},
{
title: "日本对GAAFET技术、EUV光刻设备等...",
level: "L1",
time: "一天前",
flag: flag2
},
{
title: "欧盟签署协议限制高端AI芯片对华出口",
level: "L2",
time: "一天前",
flag: flag3
},
{
title: "欧盟第18轮制裁中首次将3家中资企业...",
level: "L2",
time: "一天前",
flag: flag3
},
{
title: "美国发布《保障信息和通信技术与服务...",
level: "L2",
time: "一天前",
flag: flag1
},
{
title: "日本将42家中国实体列入出口管制“...",
level: "L3",
time: "一天前",
flag: flag2
},
{
title: "美国政府放慢向英伟达和超威等芯片...",
level: "L3",
time: "一天前",
flag: flag1
},
{
title: "七国集团成员国就人工智能发表了以...",
level: "L3",
time: "一天前",
flag: flag3
}
]);
const trendsList = ref([
{
title: "韩研制用于存内计算的小型低功耗神经形态模块",
time: "08-16"
},
{
title: "中国科学院大学等在有机太阳能电池领域取得重要突破",
time: "08-16"
},
{
title: "德国于利希研究中心成功制造并实验验证全球首个二维半金属材料",
time: "08-16"
},
{
title: "浙江大学开发“女娲”AI模型,精准预测基因组调控序列",
time: "08-16"
}, },
{ {
title: "我国基于碳量子点材料制备出高效低成本有机太阳能电池", value: 40,
time: "08-16" level: 5,
name: "日本6",
text: "",
position: [139.96838271304256, 37.36202116288057]
}, },
{ {
title: "谷歌Gemini 2.5系列模型更新,实现高速推理与极致性价比", value: 40,
time: "08-16" level: 1,
name: "日本7",
text: "",
position: [138.0556805826788, 36.44914060066151]
}, },
{ {
title: "上海理工大学联合杜克大学在AI赋能仿生视觉技术领域实现突破", value: 40,
time: "08-16" level: 5,
name: "日本8",
text: "",
position: [136.49074247601754, 35.01461400288869]
} }
]); ]
const policyList = ref([
{
title: "美国发布《2025财年国防授权法案》,拨款替换华为、中兴设备;禁止国防...",
time: "08-16"
},
{
title: "美国发布对华投资限制新规,限制美资在半导体、AI、量子技术等领域的对...",
time: "08-16"
},
{
title: "欧盟发布《网络弹性法案》(CRA),要求数字产品全生命周期安全合规,...",
time: "08-16"
},
{
title: "欧盟发布对外投资审查建议,要求成员国审查在半导体、AI、量子技术等领...",
time: "08-16"
}, },
{ {
title: "日本出台《半导体出口管制修正》加强对十余种半导体相关物项的出口管制...", name: "美国",
time: "08-16" flag: mapFlag6,
}, children: [
{ {
title: "日本拟出台“许可制”,限制外国留学生(特别提及中国)学习半导体、机...", value: 40,
time: "08-16" level: 1,
name: "美国1",
text: "",
position: [-120.95330892639737, 46.048538366525065]
}, },
{ {
title: "日本通过并实施《经济安全保障推进法案》相关措施", value: 40,
time: "08-16" level: 5,
} name: "美国2",
]); text: "",
const List = ref([ position: [-117.06095626240344, 45.00594390295526]
{
title: "当月/总数",
titleSub: "较上月+4",
progress: 90,
slope: "add",
total: 8,
current: 7
}, },
{ {
title: "人工智能", value: 40,
titleSub: "较上月+4", level: 1,
progress: 50, name: "美国3",
slope: "add", text: "",
total: 26, position: [-119.56318297497097, 42.08667940495981]
current: 3
}, },
{ {
title: "生物技术", value: 40,
titleSub: "较上月+4", level: 1,
progress: 60, name: "美国4",
slope: "add", text: "",
total: 13, position: [-119.56318297497097, 39.375933799678315]
current: 3
}, },
{ {
title: "航空航天", value: 40,
titleSub: "较上月+4", level: 3,
progress: 40, name: "美国5",
slope: "add", text: "",
total: 15, position: [-118.72910740411513, 37.49926376525268]
current: 3
}, },
{ {
title: "新一代信息技术", value: 40,
titleSub: "较上月+4", level: 3,
progress: 50, name: "美国6",
slope: "add", text: "",
total: 12, position: [-115.67083031097702, 35.414074838113066]
current: 3
}, },
{ {
title: "量子科技", value: 40,
titleSub: "较上月+4", level: 3,
progress: 20, name: "美国7",
slope: "add", text: "",
total: 8, position: [-109.55427612470085, 35.20555594539911]
current: 3
}, },
{ {
title: "新能源", value: 40,
titleSub: "较上月+4", level: 3,
progress: 90, name: "美国8",
slope: "add", text: "",
total: 18, position: [-104.2717975092805, 34.162961481829306]
current: 3
}, },
{ {
title: "集成电路", value: 40,
titleSub: "较上月+4", level: 3,
progress: 20, name: "美国9",
slope: "add", text: "",
total: 16, position: [-101.21352041614242, 32.49481034011762]
current: 3
}, },
{ {
title: "海洋", value: 40,
titleSub: "较上月+4", level: 3,
progress: 50, name: "美国10",
slope: "add", text: "",
total: 8, position: [-98.71129370357488, 29.99258362755009]
current: 3
}, },
{ {
title: "先进制造", value: 40,
titleSub: "较上月+4", level: 3,
progress: 50, name: "美国11",
slope: "add", text: "",
total: 15, position: [-96.48709218129264, 31.24369698383387]
current: 3
}, },
{ {
title: "新材料", value: 40,
titleSub: "较上月+4", level: 5,
progress: 50, name: "美国12",
slope: "add", text: "",
total: 8, position: [-92.31671432701341, 32.91184812554555]
current: 3 },
}
]);
const catdList = ref([
{ {
title: "数据资源管理", value: 40,
bgColor: "rgba(206, 79, 81, 1)", level: 3,
list: [ name: "美国13",
text: "",
position: [-95.93104180072207, 38.124820443394576]
},
{ {
title: "数据资源目录", value: 40,
text: "平台各类数据资源汇总导航" level: 5,
name: "美国14",
text: "",
position: [-100.93549522585714, 37.70778265796665]
}, },
{ {
title: "数据统计分析", value: 40,
text: "查看资源发布量、各部门资源注册情况" level: 3,
name: "美国15",
text: "",
position: [-105.38389827042164, 45.00594390295528]
}, },
{ {
title: "信息空间", value: 40,
text: "对数据资源的全生命周期进行管理" level: 1,
} name: "美国16",
] text: "",
position: [-92.87276470758401, 43.963349439385496]
}, },
{ {
title: "信息发布与管理", value: 40,
bgColor: "rgba(19, 168, 168, 1)", level: 3,
list: [ name: "美国17",
text: "",
position: [-89.53646242416063, 41.04408494139004]
},
{ {
title: "信息编辑", value: 40,
text: "信息的内容导入、格式编辑" level: 1,
name: "美国18",
text: "",
position: [-81.75175709617281, 37.49926376525271]
}, },
{ {
title: "信息审核", value: 40,
text: "发布前内容自动审核、词库屏蔽" level: 1,
name: "美国19",
text: "",
position: [-83.4199082378845, 35.622593730827056]
}, },
{ {
title: "信息发布", value: 40,
text: "提供点到点以及点到面的消息发送" level: 1,
} name: "美国20",
] text: "",
position: [-88.70238685330483, 33.32888591097349]
}, },
{ {
title: "应用支撑平台", value: 40,
bgColor: "rgba(250, 140, 22, 1)", level: 2,
list: [ name: "美国21",
text: "",
position: [-75.63520290989662, 42.29519829767381]
},
{ {
title: "应用功能目录", value: 40,
text: "快速访问和使用系统功能" level: 2,
name: "美国22",
text: "",
position: [-74.80112733904078, 43.546311653957574]
}, },
{ {
title: "应用工具目录", value: 40,
text: "各项应用工具的使用方法和应用场景" level: 2,
name: "美国23",
text: "",
position: [-72.85495100704381, 44.17186833209945]
}, },
{ {
title: "应用功能与工具管理", value: 40,
text: "实现功能及工具快捷访问配置入口" level: 2,
name: "美国24",
text: "",
position: [-69.79667391390572, 45.214462795669256]
} }
] ]
}
];
const levelMapList = [
{},
{
name: "特别重大风险",
color: ["rgba(255, 77, 79, 1)", "rgba(255, 163, 158, 1)"]
}, },
{ {
title: "后台服务管理", name: "重大风险",
bgColor: "rgba(10, 87, 166, 1)", color: ["rgba(255, 169, 64, 1)", "rgba(255, 213, 145, 1)"]
list: [ },
{ {
title: "界面配置管理", name: "较大风险",
text: "支持界面布局、样式定制化修改" color: ["rgba(250, 219, 20, 1)", "rgba(255, 251, 143, 1)"]
}, },
{ {
title: "数据接口管理", name: "一般风险",
text: "实现数据接口的访问调用、权限控制等" color: ["rgba(64, 150, 255, 1)", "rgba(145, 202, 255, 1)"]
}, },
{ {
title: "系统配置管理", name: "几乎无风险",
text: "支持各分系统配置的定制与调整" color: ["rgba(54, 207, 201, 1)", "rgba(135, 232, 222, 1)"]
}
]
} }
]); ];
const mapOption = getMapOption(mapData, levelMapList);
function moreClick(n) { function moreClick(n) {
alert(n); alert(n);
} }
...@@ -1033,11 +1115,11 @@ function moreClick(n) { ...@@ -1033,11 +1115,11 @@ function moreClick(n) {
background-size: contain; background-size: contain;
background-repeat: no-repeat; background-repeat: no-repeat;
} }
.icon1 { .icon5 {
background-image: url("../assets/img/icon1.png"); background-image: url("../assets/img/icon5.png");
} }
.icon2 { .icon6 {
background-image: url("../assets/img/icon2.png"); background-image: url("../assets/img/icon6.png");
} }
.icon3 { .icon3 {
background-image: url("../assets/img/icon3.png"); background-image: url("../assets/img/icon3.png");
...@@ -1072,39 +1154,49 @@ function moreClick(n) { ...@@ -1072,39 +1154,49 @@ function moreClick(n) {
.panel1Body { .panel1Body {
position: relative; position: relative;
height: 100%; height: 100%;
.countryWrap {
position: absolute;
bottom: 8px;
left: 0;
right: 0;
width: 782px;
margin: 0 auto;
display: flex; display: flex;
gap: 10px; flex-direction: column;
overflow-x: auto; padding: 22px 30px 20px 25px;
gap: 12px;
.item { .item {
display: flex; display: flex;
align-items: center; align-items: center;
height: 42px; .number {
border: 1px solid rgba(231, 243, 255, 1);
border-radius: 21px;
background: rgba(255, 255, 255, 0.8);
color: rgba(5, 95, 194, 1);
font-size: 16px;
font-weight: 700;
line-height: 24px;
padding-left: 12px;
padding-right: 12px;
flex-shrink: 0;
.itemIcon {
width: 24px; width: 24px;
height: 24px; height: 24px;
margin-right: 10px; color: transparent;
font-size: 18px;
font-weight: 900;
display: flex;
justify-content: center;
align-items: center;
margin-right: 20px;
} }
.itemName { .title {
flex: 1;
color: rgba(59, 65, 75, 1);
font-size: 16px;
font-weight: 400;
line-height: 24px;
overflow: hidden;
text-overflow: ellipsis;
white-space: noWrap;
margin-right: 16px;
}
.type {
margin-left: auto;
color: rgba(132, 136, 142, 1);
font-size: 14px;
font-weight: 400;
}
.one {
color: rgba(206, 79, 81, 1);
} }
.itemNumber { .two {
color: rgba(255, 169, 64, 1);
} }
.three {
color: rgba(255, 197, 61, 1);
} }
} }
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论