提交 0eabac2a authored 作者: coderBryanFu's avatar coderBryanFu

update

上级 f489e272
...@@ -36,6 +36,18 @@ export function getDecreeOrganization(params) { ...@@ -36,6 +36,18 @@ export function getDecreeOrganization(params) {
}) })
} }
// 发布机构
/**
* @param {id}
*/
export function getDecreeIssueOrganization(params) {
return request({
method: 'GET',
url: `/api/administrativeOrderInfo/issueOrganization/${params.id}`,
params
})
}
// 获取全局信息 // 获取全局信息
/** /**
* @param {id} * @param {id}
......
...@@ -6,7 +6,12 @@ ...@@ -6,7 +6,12 @@
</div> </div>
<div class="menu-item-text">{{ "首页" }}</div> <div class="menu-item-text">{{ "首页" }}</div>
</div> </div>
<div class="menu-item" @click="handleToGjOverview"> <div
class="menu-item"
@click="handleToGjOverview"
@mouseenter="handleIsShowCountryMore(true)"
@mouseleave="handleIsShowCountryMore(false)"
>
<div class="menu-item-icon1"> <div class="menu-item-icon1">
<img src="@/assets/icons/home-header-icon2.png" alt="" /> <img src="@/assets/icons/home-header-icon2.png" alt="" />
</div> </div>
...@@ -31,24 +36,129 @@ ...@@ -31,24 +36,129 @@
<div class="menu-item-text">{{ "事件" }}</div> <div class="menu-item-text">{{ "事件" }}</div>
</div> </div>
</div> </div>
<div
class="more-wrapper"
v-if="isShowCountryMore"
@mouseenter="handleIsShowCountryMore(true)"
@mouseleave="handleIsShowCountryMore(false)"
>
<div class="left">
<div class="left-header">
<div class="title">{{ "中美科技博弈概览" }}</div>
<div class="icon">
<img src="@/assets/icons/more.png" alt="" />
</div>
</div>
<div class="left-main">
<div class="item" v-for="(item, index) in leftList" :key="index" @click="handleClickItem(item)">
<div class="icon"></div>
<div class="text">{{ item.name }}</div>
</div>
</div>
</div>
<div class="right">
<div class="right-header">
<div class="title">{{ "风险检测" }}</div>
<div class="icon">
<img src="@/assets/icons/more.png" alt="" />
</div>
</div>
<div class="right-main">
<div class="item" v-for="(item, index) in rightList" :key="index">
<div class="icon"></div>
<div class="text">{{ item.name }}</div>
</div>
</div>
</div>
</div>
</template> </template>
<script setup> <script setup>
import {ref, onMounted} from 'vue' import { ref, onMounted } from "vue";
import router from '@/router'; import router from "@/router";
const isShowCountryMore = ref(false);
const handleIsShowCountryMore = isShow => {
isShowCountryMore.value = isShow;
};
const handleToOverview = () => { const handleToOverview = () => {
router.push({ router.push({
path: "/overview" path: "/overview"
}); });
} };
const handleToGjOverview = () => { const handleToGjOverview = () => {
router.push({ router.push({
path: "/gjOverview" path: "/gjOverview"
}); });
} };
const leftList = ref([
{
name: "科技法案",
path: "/billHome"
},
{
name: "政令",
path: "/decree"
},
{
name: "美国科技智库",
path: "/thinkTank"
},
{
name: "出口管制",
path: "/exportControl"
},
{
name: "投融资限制",
path: "/finance"
},
{
name: "市场准入限制",
path: "/marketAccessRestrictions"
},
{
name: "合作限制",
path: "/cooperationRestrictions"
},
{
name: "规则限制",
path: "/ruleRestrictions"
},
{
name: "美国主要创新主体",
path: "/innovationSubject"
},
{
name: "美国科技人物观点",
path: "/technologyFigures"
},
{
name: "美国科研资助体系",
path: "/scientificFunding"
}
]);
const handleClickItem = item => {
const curRoute = router.resolve({
path: item.path
});
window.open(curRoute.href, "_blank");
};
const rightList = ref([
{
name: "科技战略布局",
path: ""
},
{
name: "创新体系位势分析",
path: ""
}
]);
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
...@@ -57,6 +167,7 @@ const handleToGjOverview = () => { ...@@ -57,6 +167,7 @@ const handleToGjOverview = () => {
height: 64px; height: 64px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.menu-item { .menu-item {
display: flex; display: flex;
gap: 11px; gap: 11px;
...@@ -65,8 +176,8 @@ const handleToGjOverview = () => { ...@@ -65,8 +176,8 @@ const handleToGjOverview = () => {
justify-content: center; justify-content: center;
align-items: center; align-items: center;
cursor: pointer; cursor: pointer;
&:hover{ &:hover {
background: rgba(5, 95, 194, 0.2); background: var(--color-main-active);
} }
.menu-item-icon { .menu-item-icon {
// margin-top: 2px; // margin-top: 2px;
...@@ -126,4 +237,162 @@ const handleToGjOverview = () => { ...@@ -126,4 +237,162 @@ const handleToGjOverview = () => {
} }
} }
} }
.more-wrapper {
position: absolute;
z-index: 99999;
top: 64px;
left: 0;
width: 100%;
height: 299px;
background: #fff;
display: flex;
.left {
margin-top: 35px;
margin-left: 179px;
width: 769px;
height: 218px;
.left-header {
display: flex;
height: 26px;
align-items: center;
.title {
width: 160px;
height: 26px;
color: var(--color-main-active);
font-family: Microsoft YaHei;
font-style: Bold;
font-size: 20px;
font-weight: 700;
line-height: 26px;
letter-spacing: 0px;
text-align: left;
}
.icon {
margin-top: -8px;
margin-left: 8px;
width: 10px;
height: 10px;
img {
width: 100%;
height: 100%;
}
}
}
.left-main {
height: 192px;
display: flex;
flex-wrap: wrap;
.item {
margin-top: 18px;
display: flex;
width: 256px;
height: 36px;
align-items: center;
cursor: pointer;
&:hover {
background: var(--color-bg-hover);
.icon {
background: var(--color-main-active) !important;
}
.text {
color: var(--color-main-active) !important;
font-weight: 700;
font-size: 20px;
}
}
.icon {
width: 6px;
height: 6px;
border-radius: 3px;
background: rgba(95, 101, 108, 1);
}
.text {
margin-left: 10px;
height: 24px;
color: rgba(95, 101, 108, 1);
font-family: Microsoft YaHei;
font-style: Regular;
font-size: 18px;
font-weight: 400;
line-height: 24px;
letter-spacing: 0px;
text-align: left;
}
}
}
}
.right {
margin-top: 35px;
margin-left: 53px;
width: 192px;
height: 116px;
.right-header {
display: flex;
height: 26px;
align-items: center;
.title {
width: 80px;
height: 26px;
color: var(--color-main-active);
font-family: Microsoft YaHei;
font-style: Bold;
font-size: 20px;
font-weight: 700;
line-height: 26px;
letter-spacing: 0px;
text-align: left;
}
.icon {
margin-top: -8px;
margin-left: 8px;
width: 10px;
height: 10px;
img {
width: 100%;
height: 100%;
}
}
}
.right-main {
.item {
margin-top: 18px;
display: flex;
width: 256px;
height: 36px;
align-items: center;
cursor: pointer;
&:hover {
background: var(--color-bg-hover);
.icon {
background: var(--color-main-active) !important;
}
.text {
color: var(--color-main-active) !important;
font-weight: 700;
font-size: 20px;
}
}
.icon {
width: 6px;
height: 6px;
border-radius: 3px;
background: rgba(95, 101, 108, 1);
}
.text {
margin-left: 10px;
height: 24px;
color: rgba(95, 101, 108, 1);
font-family: Microsoft YaHei;
font-style: Regular;
font-size: 18px;
font-weight: 400;
line-height: 24px;
letter-spacing: 0px;
text-align: left;
}
}
}
}
}
</style> </style>
\ No newline at end of file
...@@ -1751,7 +1751,7 @@ onUnmounted(() => {}); ...@@ -1751,7 +1751,7 @@ onUnmounted(() => {});
} }
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.search-header { .search-header {
......
...@@ -166,7 +166,7 @@ const tabList = ref([ ...@@ -166,7 +166,7 @@ const tabList = ref([
{ {
name: "新闻", name: "新闻",
id: 8 id: 8
}, }
// { // {
// name: "社媒", // name: "社媒",
// id: 9 // id: 9
...@@ -304,58 +304,61 @@ const handleSearch = async () => { ...@@ -304,58 +304,61 @@ const handleSearch = async () => {
} catch (error) {} } catch (error) {}
}; };
const handleToPage = async (item) => { const handleToPage = async item => {
if(item.typeStr === '人物') { console.log("item", item);
const personTypeList = JSON.parse(window.sessionStorage.getItem("personTypeList"));
let type = 0;
let personTypeName = "";
const params = { if (item.typeStr === "人物") {
personId: item.id const personTypeList = JSON.parse(window.sessionStorage.getItem("personTypeList"));
}; let type = 0;
try { let personTypeName = "";
const res = await getPersonSummaryInfo(params);
console.log("人物全局信息", res); const params = {
if (res.code === 200 && res.data) { personId: item.id
const arr = personTypeList.filter(item => { };
return item.typeId === res.data.personType; try {
}); const res = await getPersonSummaryInfo(params);
console.log("arr", arr); console.log("人物全局信息", res);
if (res.code === 200 && res.data) {
const arr = personTypeList.filter(item => {
return item.typeId === res.data.personType;
});
console.log("arr", arr);
if (arr && arr.length > 0) { if (arr && arr.length > 0) {
personTypeName = arr[0].typeName; personTypeName = arr[0].typeName;
console.log("personTypeName", personTypeName); console.log("personTypeName", personTypeName);
if (personTypeName === "科技企业领袖") { if (personTypeName === "科技企业领袖") {
type = 1; type = 1;
} else if (personTypeName === "国会议员") { } else if (personTypeName === "国会议员") {
type = 2; type = 2;
} else if (personTypeName === "智库研究人员") { } else if (personTypeName === "智库研究人员") {
type = 3; type = 3;
} else {
personTypeName = "";
ElMessage.warning("找不到当前人员的类型值!");
return;
}
const route = router.resolve({
path: "/characterPage",
query: {
type: type, // type=1为科技企业领袖,2为国会议员,3为智库研究人员
personId: id
}
});
window.open(route.href, "_blank");
} else { } else {
personTypeName = ""; personTypeName = "";
ElMessage.warning("找不到当前人员的类型值!"); ElMessage.warning("找不到当前人员的类型值!");
return; return;
} }
const route = router.resolve({
path: "/characterPage",
query: {
type: type, // type=1为科技企业领袖,2为国会议员,3为智库研究人员
personId: id
}
});
window.open(route.href, "_blank");
} else { } else {
personTypeName = ""; ElMessage.warning("获取人物全局信息错误");
ElMessage.warning("找不到当前人员的类型值!");
return; return;
} }
} else { } catch (error) {}
ElMessage.warning("获取人物全局信息错误");
return;
}
} catch (error) {}
} }
window.sessionStorage.setItem("curTabName", item.originalTitle);
let curRoute; let curRoute;
switch (item.typeStr) { switch (item.typeStr) {
case "法案": case "法案":
...@@ -487,7 +490,7 @@ onMounted(() => { ...@@ -487,7 +490,7 @@ onMounted(() => {
} }
.wrapper { .wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
background: url("../assets/images/background.png") no-repeat; background: url("../assets/images/background.png") no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
.header { .header {
......
...@@ -61,8 +61,8 @@ ...@@ -61,8 +61,8 @@
<div class="right-top"> <div class="right-top">
<img class="img1" src="./assets/bluetitle.png" alt="" /> <img class="img1" src="./assets/bluetitle.png" alt="" />
<div class="right-top-title">背景分析</div> <div class="right-top-title">背景分析</div>
<div class="btn cl1" :class="{'active': active === '涉华背景'}" @click="active = '涉华背景'">涉华背景</div> <div class="btn cl1" :class="{ active: active === '涉华背景' }" @click="active = '涉华背景'">涉华背景</div>
<div class="btn cl2" :class="{'active': active === '全部背景'}" @click="active = '全部背景'">全部背景</div> <div class="btn cl2" :class="{ active: active === '全部背景' }" @click="active = '全部背景'">全部背景</div>
<div class="right-top-content"> <div class="right-top-content">
<div v-for="item in dataList2" :key="item.id" class="right-top-item"> <div v-for="item in dataList2" :key="item.id" class="right-top-item">
<span class="id">{{ item.id }}</span> <span class="id">{{ item.id }}</span>
...@@ -75,21 +75,25 @@ ...@@ -75,21 +75,25 @@
<div class="right-bottom"> <div class="right-bottom">
<img class="img1" src="./assets/bluetitle.png" alt="" /> <img class="img1" src="./assets/bluetitle.png" alt="" />
<div class="right-bottom-title">限制条款</div> <div class="right-bottom-title">限制条款</div>
<div class="btn cl1" :class="{'active': active2 === '涉华背景'}" @click="active2 = '涉华背景'">涉华背景</div> <div class="btn cl1" :class="{ active: active2 === '涉华背景' }" @click="active2 = '涉华背景'">涉华背景</div>
<div class="btn cl2" :class="{'active': active2 === '全部背景'}" @click="active2 = '全部背景'">全部背景</div> <div class="btn cl2" :class="{ active: active2 === '全部背景' }" @click="active2 = '全部背景'">全部背景</div>
<div class="right-bottom-content1"> <div class="right-bottom-content1">
<div class="right-bottom-content1-title"> <div class="right-bottom-content1-title">
<span>(一)暂停入境 </span> <span>(一)暂停入境 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content1-content"> <div class="right-bottom-content1-content">
任何外籍人士作为非移民进入美国,根据 INA 第 101(a)(15)(F)或第 101(a)(15)(M)条,即 8 U.S.C. 1101(a)(15)(F)或 1101(a)(15)(M)条款,进入哈佛大学参加交流访客项目,或根据 INA 第 101(a)(15)(J)条,在哈佛大学主办的交流访客项目, 8 U.S.C. 1101(a)(15)(J)被暂停并限制,受本公告第 2 条约束。 该暂停和限制将在本公告发布后 6 个月内失效,除非延长。 任何外籍人士作为非移民进入美国,根据 INA 第 101(a)(15)(F)或第 101(a)(15)(M)条,即 8 U.S.C.
1101(a)(15)(F)或 1101(a)(15)(M)条款,进入哈佛大学参加交流访客项目,或根据 INA 第
101(a)(15)(J)条,在哈佛大学主办的交流访客项目, 8 U.S.C.
1101(a)(15)(J)被暂停并限制,受本公告第 2 条约束。 该暂停和限制将在本公告发布后 6
个月内失效,除非延长。
</div> </div>
</div> </div>
<div class="right-bottom-content2"> <div class="right-bottom-content2">
<div class="right-bottom-content2-title"> <div class="right-bottom-content2-title">
<span>(二)暂停和限制入境的范围及实施 </span> <span>(二)暂停和限制入境的范围及实施 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content2-content"> <div class="right-bottom-content2-content">
<div v-for="item in dataList3" :key="item.id" class="forcontent"> <div v-for="item in dataList3" :key="item.id" class="forcontent">
...@@ -100,11 +104,14 @@ ...@@ -100,11 +104,14 @@
</div> </div>
<div class="right-bottom-content3"> <div class="right-bottom-content3">
<div class="right-bottom-content3-title"> <div class="right-bottom-content3-title">
<span>(三)执行本命令的作性行动 </span> <span>(三)执行本命令的作性行动 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content3-content"> <div class="right-bottom-content3-content">
国务卿、司法部长和国土安全部长应协调采取一切必要和适当的行动以落实本公告。 国务卿、司法部长和国土安全部长还应考虑利用各自在 INA 下的权限,对哈佛大学参与 SEVP 的能力施加限制,以及学生及交流访客信息系统。 任何此类行动应包括对任何符合国家利益的外国人的例外,这些入境由国务卿、国土安全部长或其各自指定的人决定。 国务卿、司法部长和国土安全部长应协调采取一切必要和适当的行动以落实本公告。
国务卿、司法部长和国土安全部长还应考虑利用各自在 INA 下的权限,对哈佛大学参与 SEVP
的能力施加限制,以及学生及交流访客信息系统。
任何此类行动应包括对任何符合国家利益的外国人的例外,这些入境由国务卿、国土安全部长或其各自指定的人决定。
</div> </div>
</div> </div>
</div> </div>
...@@ -228,8 +235,8 @@ const dataList3 = ref([ ...@@ -228,8 +235,8 @@ const dataList3 = ref([
{ {
id: 5, id: 5,
name: "本公告发布日起不迟于 90 天内,司法部长与国土安全部长应通过总统国家安全事务助理共同向总统提交建议,决定是否延长或续期本公告第 1 条中暂停和限制入境的条款符合美国利益。" name: "本公告发布日起不迟于 90 天内,司法部长与国土安全部长应通过总统国家安全事务助理共同向总统提交建议,决定是否延长或续期本公告第 1 条中暂停和限制入境的条款符合美国利益。"
}, }
]) ]);
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
...@@ -249,6 +256,9 @@ const dataList3 = ref([ ...@@ -249,6 +256,9 @@ const dataList3 = ref([
padding: 19px 0 20px; padding: 19px 0 20px;
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
position: sticky;
top: 0;
z-index: 99999999;
.nav-main { .nav-main {
width: 1600px; width: 1600px;
height: 81px; height: 81px;
...@@ -803,7 +813,6 @@ const dataList3 = ref([ ...@@ -803,7 +813,6 @@ const dataList3 = ref([
} }
} }
} }
} }
.right-bottom-content3 { .right-bottom-content3 {
width: 1022px; width: 1022px;
......
...@@ -1321,7 +1321,7 @@ onMounted(async () => { ...@@ -1321,7 +1321,7 @@ onMounted(async () => {
} }
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.search-header { .search-header {
......
...@@ -111,17 +111,6 @@ ...@@ -111,17 +111,6 @@
<div class="box-header"> <div class="box-header">
<div class="header-left"></div> <div class="header-left"></div>
<div class="title">发布机构</div> <div class="title">发布机构</div>
<!-- <div class="header-btn-box">
<div
class="btn"
:class="{ btnActive: box3ActiveBtn === item }"
v-for="(item, index) in box3BtnList"
:key="index"
@click="handleClickBox3Btn(item, index)"
>
{{ item }}
</div>
</div> -->
<div class="header-right"> <div class="header-right">
<div class="icon"> <div class="icon">
<img src="../assets/icons/header-right-icon1.png" alt="" /> <img src="../assets/icons/header-right-icon1.png" alt="" />
...@@ -132,13 +121,13 @@ ...@@ -132,13 +121,13 @@
</div> </div>
</div> </div>
<div class="box3-top"> <div class="box3-top">
<div class="box3-top-top" @click="handleToInstitution(box3TopData)"> <div class="box3-top-top" @click="handleToInstitution(box3TopTopData)">
<div class="left"> <div class="left">
<img :src="box3TopData.logo ? box3TopData.logo : DefaultIcon2" alt="" /> <img :src="box3TopTopData.logo ? box3TopTopData.logo : DefaultIcon2" alt="" />
</div> </div>
<div class="right"> <div class="right">
<div class="name">{{ box3TopData.name + " >" }}</div> <div class="name">{{ box3TopTopData.name + " >" }}</div>
<div class="ename">{{ box3TopData.eName }}</div> <div class="ename">{{ box3TopTopData.eName }}</div>
</div> </div>
<!-- <div class="more"> <!-- <div class="more">
<div class="text">{{ "查看官网" }}</div> <div class="text">{{ "查看官网" }}</div>
...@@ -157,11 +146,11 @@ ...@@ -157,11 +146,11 @@
<div class="box3-top-bottom-main"> <div class="box3-top-bottom-main">
<div class="box3-top-bottom-item" v-for="(item, index) in box3TopBottomData" :key="index"> <div class="box3-top-bottom-item" v-for="(item, index) in box3TopBottomData" :key="index">
<div class="box3-top-bottom-item-left"> <div class="box3-top-bottom-item-left">
<img :src="item.image ? item.image : DefaultIcon1" alt="" /> <img :src="item.avatar ? item.avatar : DefaultIcon1" alt="" />
</div> </div>
<div class="box3-top-bottom-item-right"> <div class="box3-top-bottom-item-right">
<div class="name">{{ item.name }}</div> <div class="name">{{ item.name }}</div>
<div class="position">{{ item.position }}</div> <div class="position">{{ item.job }}</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -177,13 +166,13 @@ ...@@ -177,13 +166,13 @@
<div class="box3-bottom-main"> <div class="box3-bottom-main">
<el-timeline style="max-width: 500px"> <el-timeline style="max-width: 500px">
<el-timeline-item <el-timeline-item
:timestamp="item.time" :timestamp="item.newsDate"
placement="top" placement="top"
v-for="(item, index) in eventList" v-for="(item, index) in eventList"
:key="index" :key="index"
> >
<div class="timeline-content"> <div class="timeline-content">
{{ item.title }} {{ item.newsContent }}
</div> </div>
</el-timeline-item> </el-timeline-item>
</el-timeline> </el-timeline>
...@@ -200,7 +189,7 @@ import { useRoute } from "vue-router"; ...@@ -200,7 +189,7 @@ import { useRoute } from "vue-router";
import router from "@/router"; import router from "@/router";
import box1Img from "./assets/images/box1-img.png"; import box1Img from "./assets/images/box1-img.png";
import Box3Logo from "./assets/images/box3-img.png"; import Box3Logo from "./assets/images/box3-img.png";
import { getDecreeBasicInfo, getDecreeMainContent, getDecreeOrganization } from "@/api/decree/introduction"; import { getDecreeBasicInfo, getDecreeMainContent, getDecreeOrganization, getDecreeIssueOrganization } from "@/api/decree/introduction";
import DefaultIcon1 from "@/assets/icons/default-icon1.png"; import DefaultIcon1 from "@/assets/icons/default-icon1.png";
import DefaultIcon2 from "@/assets/icons/default-icon2.png"; import DefaultIcon2 from "@/assets/icons/default-icon2.png";
...@@ -283,71 +272,17 @@ const handleMajorList = async () => { ...@@ -283,71 +272,17 @@ const handleMajorList = async () => {
}; };
handleMajorList(); handleMajorList();
// 执行机构 // 发布机构
const box3BtnList = ref([]);
const box3ActiveBtn = ref("");
const box3BtnActiveIndex = ref(0);
const handleClickBox3Btn = (btn, index) => {
box3ActiveBtn.value = btn;
box3BtnActiveIndex.value = index;
box3TopData.value.id = box3Data.value[index].id;
box3TopData.value.logo = box3Data.value[index].url;
box3TopData.value.name = box3Data.value[index].name;
box3TopData.value.eName = box3Data.value[index].ename;
box3TopData.value.clsj = box3Data.value[index].foundingDate;
box3TopData.value.zbdz = box3Data.value[index].address;
box3TopData.value.bz = box3Data.value[index].leaderName;
eventList.value = box3Data.value[index].newsList.map(val => {
return {
time: val.newsDate,
title: val.newsContent
};
});
};
const box3Data = ref([]);
const box3TopData = ref({ const box3TopTopData = ref({
id: "", id: "",
logo: "", logo: "",
name: "", name: "",
eName: "", eName: "",
clsj: "",
zbdz: "",
bz: ""
}); });
const box3TopBottomData = ref([ const box3TopBottomData = ref([
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
},
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
},
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
},
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
},
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
},
{
image: "",
name: "杰弗里·凯斯勒",
position: "副秘书"
}
]); ]);
// 跳转行政机构主页 // 跳转行政机构主页
...@@ -382,49 +317,24 @@ const handleGetOrgnization = async () => { ...@@ -382,49 +317,24 @@ const handleGetOrgnization = async () => {
id: decreeId.value id: decreeId.value
}; };
try { try {
const res = await getDecreeOrganization(params); const res = await getDecreeIssueOrganization(params);
console.log("执行机构", res); console.log("发布机构", res);
if (res.code === 200 && res.data) { if (res.code === 200 && res.data) {
box3BtnList.value = res.data.map(item => { box3TopTopData.value.id = res.data.id
return item.name; box3TopTopData.value.logo = res.data.image
}); box3TopTopData.value.name = res.data.name
box3Data.value = res.data; box3TopTopData.value.eName = res.data.ename
box3TopData.value.logo = res.data[0].url; eventList.value = res.data.newsList
box3TopData.value.name = res.data[0].name; box3TopBottomData.value = res.data.personList
box3TopData.value.eName = res.data[0].ename; }
box3TopData.value.clsj = res.data[0].foundingDate;
box3TopData.value.zbdz = res.data[0].address;
box3TopData.value.bz = res.data[0].leaderName;
box3ActiveBtn.value = res.data[0].name;
eventList.value = res.data[0].newsList.map(val => {
return {
time: val.newsDate,
title: val.newsTitle
};
});
} else {
box3BtnList.value = [];
box3TopData.value = {
logo: "",
name: "",
eName: "",
clsj: "",
zyzz: "",
zbdz: "",
bz: ""
};
eventList.value = [];
}
} catch (error) { } catch (error) {
console.error("执行机构error", error); console.error("执行机构error", error);
box3BtnList.value = []; box3TopTopData.value = {
box3TopData.value = { id: "",
logo: "", logo: "",
name: "", name: "",
eName: "", eName: "",
clsj: "",
zbdz: "",
bz: ""
}; };
eventList.value = []; eventList.value = [];
} }
...@@ -772,7 +682,7 @@ onMounted(() => { ...@@ -772,7 +682,7 @@ onMounted(() => {
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
.box3-top-bottom-item { .box3-top-bottom-item {
margin-top: 17px; margin-top: 12px;
height: 48px; height: 48px;
width: 200px; width: 200px;
display: flex; display: flex;
...@@ -815,6 +725,9 @@ onMounted(() => { ...@@ -815,6 +725,9 @@ onMounted(() => {
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
text-align: left; text-align: left;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
} }
} }
......
...@@ -104,9 +104,8 @@ onMounted(() => { ...@@ -104,9 +104,8 @@ onMounted(() => {
}); });
onUnmounted(() => { onUnmounted(() => {
window.sessionStorage.removeItem('institutionActiveTabName') window.sessionStorage.removeItem("institutionActiveTabName");
}) });
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
...@@ -139,6 +138,9 @@ onUnmounted(() => { ...@@ -139,6 +138,9 @@ onUnmounted(() => {
} }
.header-right { .header-right {
margin-left: 24px; margin-left: 24px;
width: 1350px;
overflow: hidden;
overflow-y: auto;
.title { .title {
margin-top: 26px; margin-top: 26px;
height: 42px; height: 42px;
...@@ -149,6 +151,9 @@ onUnmounted(() => { ...@@ -149,6 +151,9 @@ onUnmounted(() => {
line-height: 42px; line-height: 42px;
letter-spacing: 0px; letter-spacing: 0px;
text-align: left; text-align: left;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.en-title { .en-title {
margin-top: 8px; margin-top: 8px;
...@@ -160,10 +165,12 @@ onUnmounted(() => { ...@@ -160,10 +165,12 @@ onUnmounted(() => {
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
text-align: left; text-align: left;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.desc { .desc {
margin-top: 6px; margin-top: 6px;
height: 24px;
color: rgba(59, 65, 75, 1); color: rgba(59, 65, 75, 1);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: 16px;
......
...@@ -2300,7 +2300,7 @@ const handleMediaClick = item => { ...@@ -2300,7 +2300,7 @@ const handleMediaClick = item => {
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
......
...@@ -198,6 +198,7 @@ const handlePerClick = item => { ...@@ -198,6 +198,7 @@ const handlePerClick = item => {
// 处理点击实体名称的方法 // 处理点击实体名称的方法
const handleClick = item => { const handleClick = item => {
// console.log("点击了实体名称:", item); // console.log("点击了实体名称:", item);
window.sessionStorage.setItem("curTabName", `${item.year}-${item.date}《${item.name}》`);
const route = router.resolve({ const route = router.resolve({
path: "/exportControl/singleSanction", path: "/exportControl/singleSanction",
query: { query: {
......
...@@ -209,6 +209,7 @@ const handleCompClick = item => { ...@@ -209,6 +209,7 @@ const handleCompClick = item => {
// 跳转发布机构详情页 // 跳转发布机构详情页
const handleClickDp = () => { const handleClickDp = () => {
// console.log("点击了发布机构:", props.data); // console.log("点击了发布机构:", props.data);
window.sessionStorage.setItem('curTabName', props.data.postOrgName)
const route = router.resolve({ const route = router.resolve({
path: "/institution", path: "/institution",
query: { query: {
...@@ -367,6 +368,7 @@ const props = defineProps({ ...@@ -367,6 +368,7 @@ const props = defineProps({
}); });
// 跳转到人物页 // 跳转到人物页
const handleClick = () => { const handleClick = () => {
window.sessionStorage.setItem("curTabName", props.data.postPersonName)
const route = router.resolve({ const route = router.resolve({
path: "/characterPage", path: "/characterPage",
query: { query: {
......
...@@ -1685,7 +1685,7 @@ onMounted(async () => { ...@@ -1685,7 +1685,7 @@ onMounted(async () => {
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.home-main { .home-main {
......
...@@ -1063,7 +1063,7 @@ onMounted(async () => { ...@@ -1063,7 +1063,7 @@ onMounted(async () => {
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
......
...@@ -1522,7 +1522,7 @@ onMounted(async () => { ...@@ -1522,7 +1522,7 @@ onMounted(async () => {
} }
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.home-main { .home-main {
......
...@@ -294,9 +294,9 @@ onMounted(() => { ...@@ -294,9 +294,9 @@ onMounted(() => {
<style lang="scss" scoped> <style lang="scss" scoped>
.case-wrapper { .case-wrapper {
width: 100%; // width: 100%;
height: 100%; // height: 100%;
overflow-y: auto; overflow: hidden;
.wrapper-header { .wrapper-header {
width: 1600px; width: 1600px;
height: 32px; height: 32px;
...@@ -359,10 +359,8 @@ onMounted(() => { ...@@ -359,10 +359,8 @@ onMounted(() => {
} }
.wrapper-main { .wrapper-main {
width: 1600px; width: 1600px;
// height: 935px; // height: 900px;
height: 800px;
margin: 0 auto; margin: 0 auto;
box-sizing: border-box;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.left { .left {
...@@ -429,6 +427,7 @@ onMounted(() => { ...@@ -429,6 +427,7 @@ onMounted(() => {
margin-left: 16px; margin-left: 16px;
width: 1224px; width: 1224px;
min-height: 700px; min-height: 700px;
height: 770px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(60, 87, 126, 0.2); box-shadow: 0px 0px 15px 0px rgba(60, 87, 126, 0.2);
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
...@@ -462,10 +461,8 @@ onMounted(() => { ...@@ -462,10 +461,8 @@ onMounted(() => {
} }
.right-main { .right-main {
padding-top: 6px; padding-top: 6px;
min-height: 586px; height: 660px;
max-height: 1540px;
border-bottom: 1px solid rgba(230, 231, 232, 1); border-bottom: 1px solid rgba(230, 231, 232, 1);
// height: 780px;
.item { .item {
height: 154px; height: 154px;
display: flex; display: flex;
......
...@@ -25,8 +25,5 @@ onMounted(() => { ...@@ -25,8 +25,5 @@ onMounted(() => {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.case-wrap {
width: 100%;
height: 100%;
}
</style> </style>
\ No newline at end of file
...@@ -59,7 +59,6 @@ import { useRoute } from "vue-router"; ...@@ -59,7 +59,6 @@ import { useRoute } from "vue-router";
const route = useRoute(); const route = useRoute();
const btnList = ref([ const btnList = ref([
{ {
name: "调查案件", name: "调查案件",
icon: icon2, icon: icon2,
...@@ -71,7 +70,7 @@ const btnList = ref([ ...@@ -71,7 +70,7 @@ const btnList = ref([
icon: icon1, icon: icon1,
acitveIcon: icon1Active, acitveIcon: icon1Active,
path: "/marketAccessLayout/overview" path: "/marketAccessLayout/overview"
}, }
]); ]);
const curSurvey = computed(() => { const curSurvey = computed(() => {
...@@ -109,26 +108,29 @@ const handleClickBtn = item => { ...@@ -109,26 +108,29 @@ const handleClickBtn = item => {
}; };
onMounted(() => { onMounted(() => {
if(route.path === '/marketAccessLayout/overview') { if (route.path === "/marketAccessLayout/overview") {
activeBtnName.value = '数据统计' activeBtnName.value = "数据统计";
} else { } else {
activeBtnName.value = '调查案件' activeBtnName.value = "调查案件";
} }
}); });
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.wrap { .wrap {
width: 1920px; width: 100%;
height: 1016px; height: 100%;
overflow: hidden;
overflow-y: auto;
.header { .header {
width: 1920px; width: 1920px;
height: 148px; height: 148px;
box-sizing: border-box; box-sizing: border-box;
border-bottom: 1px solid rgba(230, 231, 232, 1); border-bottom: 1px solid rgba(230, 231, 232, 1);
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
position: sticky;
top: 0;
z-index: 99999999;
.header-top { .header-top {
display: flex; display: flex;
height: 100px; height: 100px;
......
...@@ -77,7 +77,7 @@ const navList = ref([ ...@@ -77,7 +77,7 @@ const navList = ref([
icon: NavIcon2, icon: NavIcon2,
activeIcon: NavIcon2Active, activeIcon: NavIcon2Active,
isActive: false, isActive: false,
isShow: route.query.id === '337', isShow: route.query.id === "337",
path: "/marketSingleCaseLayout/deepdig" path: "/marketSingleCaseLayout/deepdig"
}, },
{ {
...@@ -146,6 +146,8 @@ onMounted(() => {}); ...@@ -146,6 +146,8 @@ onMounted(() => {});
.wrapper { .wrapper {
width: 100%; width: 100%;
height: 100%; height: 100%;
overflow: hidden;
overflow-y: auto;
.header { .header {
width: 1920px; width: 1920px;
height: 148px; height: 148px;
...@@ -153,6 +155,9 @@ onMounted(() => {}); ...@@ -153,6 +155,9 @@ onMounted(() => {});
border-bottom: 1px solid rgba(230, 231, 232, 1); border-bottom: 1px solid rgba(230, 231, 232, 1);
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
padding: 24px 160px 0; padding: 24px 160px 0;
position: sticky;
top: 0;
z-index: 99999999;
.header-top { .header-top {
display: flex; display: flex;
.header-top-left { .header-top-left {
...@@ -299,9 +304,9 @@ onMounted(() => {}); ...@@ -299,9 +304,9 @@ onMounted(() => {});
} }
} }
.main { .main {
height: 870px; // height: 870px;
width: 1920px; // width: 1920px;
overflow-y: auto; // overflow-y: auto;
background: rgba(247, 248, 249, 1); background: rgba(247, 248, 249, 1);
} }
} }
......
...@@ -336,7 +336,6 @@ const box4Data = ref([ ...@@ -336,7 +336,6 @@ const box4Data = ref([
<style lang="scss" scoped> <style lang="scss" scoped>
.wrapper { .wrapper {
width: 100%; width: 100%;
// height: 1191px;
padding: 0 160px; padding: 0 160px;
display: flex; display: flex;
.box-header { .box-header {
...@@ -410,6 +409,7 @@ const box4Data = ref([ ...@@ -410,6 +409,7 @@ const box4Data = ref([
} }
.left { .left {
width: 520px; width: 520px;
margin-bottom: 20px;
.box1 { .box1 {
margin-top: 16px; margin-top: 16px;
width: 520px; width: 520px;
......
...@@ -30,7 +30,8 @@ ...@@ -30,7 +30,8 @@
<img class="img3" src="./assets/收藏按钮.png" alt="" /> <img class="img3" src="./assets/收藏按钮.png" alt="" />
<div class="left-top-content"> <div class="left-top-content">
<span <span
>美国联邦通信委员会(FCC)启动程序撤销对德国莱茵 TÜV 集团/中国检验认证集团(宁波)有限公司作为测试认可实验室的认证。</span >美国联邦通信委员会(FCC)启动程序撤销对德国莱茵 TÜV
集团/中国检验认证集团(宁波)有限公司作为测试认可实验室的认证。</span
> >
</div> </div>
<div class="left-top-bottom"> <div class="left-top-bottom">
...@@ -52,11 +53,11 @@ ...@@ -52,11 +53,11 @@
<div class="name">{{ item.name }}</div> <div class="name">{{ item.name }}</div>
<div class="type">{{ item.type }}</div> <div class="type">{{ item.type }}</div>
</div> </div>
<img src="./assets/注意.png" alt=""> <img src="./assets/注意.png" alt="" />
</div> </div>
</div> </div>
<!-- 规则限制事件脉络 --> <!-- 规则限制事件脉络 -->
<div class="left-bottom-B"> <div class="left-bottom-B">
<img class="img1" src="./assets/bluetitle.png" alt="" /> <img class="img1" src="./assets/bluetitle.png" alt="" />
<div class="left-bottom-title">规则限制事件脉络</div> <div class="left-bottom-title">规则限制事件脉络</div>
<img class="img2" src="./assets/下载按钮.png" alt="" /> <img class="img2" src="./assets/下载按钮.png" alt="" />
...@@ -67,7 +68,7 @@ ...@@ -67,7 +68,7 @@
<div class="time">{{ item.time }}</div> <div class="time">{{ item.time }}</div>
<div class="name">{{ item.name }}</div> <div class="name">{{ item.name }}</div>
</div> </div>
<div class="btn">查看更多 <img src="./assets/doubleLine.png" alt=""></div> <div class="btn">查看更多 <img src="./assets/doubleLine.png" alt="" /></div>
<div class="line"></div> <div class="line"></div>
</div> </div>
</div> </div>
...@@ -80,7 +81,7 @@ ...@@ -80,7 +81,7 @@
<div class="right-bottom-content1"> <div class="right-bottom-content1">
<div class="right-bottom-content1-title"> <div class="right-bottom-content1-title">
<span>(一)法律框架 </span> <span>(一)法律框架 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content1-content"> <div class="right-bottom-content1-content">
《法案》第302条授权联邦通信委员会(以下简称委员会或FCC)制定符合公共利益的规则,管理能够发射射频(RF)能量设备的干扰潜力。该法案还允许委员会授权私人机构(测试实验室)进行符合这些规则的合规性测试,并为这些测试实验室建立适当的资质和标准。委员会不会认可未能满足所有适当标准的任何测试实验室,包括与测试实验室的诚信和可靠性相关的标准。委员会的规则部分规定,“确保参与FCC设备授权计划的测试实验室不受对国家安全构成风险的不可信行为者的所有权、指挥或控制。” 《法案》第302条授权联邦通信委员会(以下简称委员会或FCC)制定符合公共利益的规则,管理能够发射射频(RF)能量设备的干扰潜力。该法案还允许委员会授权私人机构(测试实验室)进行符合这些规则的合规性测试,并为这些测试实验室建立适当的资质和标准。委员会不会认可未能满足所有适当标准的任何测试实验室,包括与测试实验室的诚信和可靠性相关的标准。委员会的规则部分规定,“确保参与FCC设备授权计划的测试实验室不受对国家安全构成风险的不可信行为者的所有权、指挥或控制。”
...@@ -89,19 +90,27 @@ ...@@ -89,19 +90,27 @@
<div class="right-bottom-content2"> <div class="right-bottom-content2">
<div class="right-bottom-content2-title"> <div class="right-bottom-content2-title">
<span>(二)事实背景 </span> <span>(二)事实背景 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content2-content"> <div class="right-bottom-content2-content">
TUV/宁波是一家位于中国浙江宁波的认可测试实验室,被FCC认可可对各种射频设备进行测试,以确保符合适用的FCC规则。根据美国实验室认可协会(A2LA)的信息,TUV/宁波的认证表明该实验室已按照公认的国际标准ISO/IEC 17025:2017《测试和校准实验室能力的一般要求》获得认可。自首次获得认证以来,TUV/宁波已进行的测试促成了数百项设备认证。TUV/宁波通过与中国检验认证集团有限公司(CCIC集团,一家国有企业)的合作与中国政府相连接。作为CCIC集团的分支机构,TUV/宁波直接隶属于一家与中华人民共和国政府有重要联系和监督关系的国有企业。美国商务部已认定中华人民共和国是一个外国对手。 TUV/宁波是一家位于中国浙江宁波的认可测试实验室,被FCC认可可对各种射频设备进行测试,以确保符合适用的FCC规则。根据美国实验室认可协会(A2LA)的信息,TUV/宁波的认证表明该实验室已按照公认的国际标准ISO/IEC
17025:2017《测试和校准实验室能力的一般要求》获得认可。自首次获得认证以来,TUV/宁波已进行的测试促成了数百项设备认证。TUV/宁波通过与中国检验认证集团有限公司(CCIC集团,一家国有企业)的合作与中国政府相连接。作为CCIC集团的分支机构,TUV/宁波直接隶属于一家与中华人民共和国政府有重要联系和监督关系的国有企业。美国商务部已认定中华人民共和国是一个外国对手。
</div> </div>
</div> </div>
<div class="right-bottom-content3"> <div class="right-bottom-content3">
<div class="right-bottom-content3-title"> <div class="right-bottom-content3-title">
<span>(二)其他背景 </span> <span>(二)其他背景 </span>
<img src="./assets/打开按钮.png" alt=""> <img src="./assets/打开按钮.png" alt="" />
</div> </div>
<div class="right-bottom-content3-content"> <div class="right-bottom-content3-content">
中华人民共和国(PRC)是一个禁止实体,根据委员会规则第2.902条的规定进行识别。OET 已初步确定 TUV/宁波由中华人民共和国拥有、控制或受其指令管理,根据委员会规则第2.951(d)(1)条和第2.902条,中华人民共和国是一个禁止实体。TUV/宁波在其为 FCC 设备认证申请出具的测试实验室报告中,将自己标识为“莱茵TÜV/CCIC(宁波)有限公司”,并将其网站地址标识为“www.tuv.com”。TUV/宁波的合资企业隶属于 CCIC 集团。CCIC 集团的网站列出了中国检验认证集团宁波有限公司(TUV/宁波合资企业的一部分)作为其在中国的子公司之一。CCIC 集团是一家国有企业,经中华人民共和国国务院批准成立,并受国务院国有资产监督管理委员会(SASAC)监管。SASAC 对国有资产和企业行使全面控制和监督,其职能直接由中央委员会授权。 中华人民共和国(PRC)是一个禁止实体,根据委员会规则第2.902条的规定进行识别。OET 已初步确定
TUV/宁波由中华人民共和国拥有、控制或受其指令管理,根据委员会规则第2.951(d)(1)条和第2.902条,中华人民共和国是一个禁止实体。TUV/宁波在其为
FCC
设备认证申请出具的测试实验室报告中,将自己标识为“莱茵TÜV/CCIC(宁波)有限公司”,并将其网站地址标识为“www.tuv.com”。TUV/宁波的合资企业隶属于
CCIC 集团。CCIC
集团的网站列出了中国检验认证集团宁波有限公司(TUV/宁波合资企业的一部分)作为其在中国的子公司之一。CCIC
集团是一家国有企业,经中华人民共和国国务院批准成立,并受国务院国有资产监督管理委员会(SASAC)监管。SASAC
对国有资产和企业行使全面控制和监督,其职能直接由中央委员会授权。
</div> </div>
</div> </div>
</div> </div>
...@@ -123,10 +132,12 @@ ...@@ -123,10 +132,12 @@
<div class="right-top-title">相关举措</div> <div class="right-top-title">相关举措</div>
<div class="right-top-content"> <div class="right-top-content">
<div v-for="item in dataList3" :key="item.id" class="right-top-item"> <div v-for="item in dataList3" :key="item.id" class="right-top-item">
<img :src="item.img" alt=""> <img :src="item.img" alt="" />
<div class="name">{{ item.name }}</div> <div class="name">{{ item.name }}</div>
<div class="time">{{ item.time }}</div> <div class="time">{{ item.time }}</div>
<div class="type" :class="{'type1': item.type === '行政令', 'type2': item.type === '法案'}">{{ item.type }}</div> <div class="type" :class="{ type1: item.type === '行政令', type2: item.type === '法案' }">
{{ item.type }}
</div>
<div class="content">{{ item.content }}</div> <div class="content">{{ item.content }}</div>
</div> </div>
</div> </div>
...@@ -138,14 +149,14 @@ ...@@ -138,14 +149,14 @@
<script setup> <script setup>
import { ref, onMounted } from "vue"; import { ref, onMounted } from "vue";
import ningbo from "./assets/ningbo.png" import ningbo from "./assets/ningbo.png";
import deguo from "./assets/deguo.png" import deguo from "./assets/deguo.png";
import cycle from "./assets/cycle.png" import cycle from "./assets/cycle.png";
import swb from "./assets/商务部.png" import swb from "./assets/商务部.png";
import bg from "./assets/白宫.png" import bg from "./assets/白宫.png";
import czb from "./assets/财政部.png" import czb from "./assets/财政部.png";
import gh from "./assets/国会.png" import gh from "./assets/国会.png";
const dataList = ref([ const dataList = ref([
{ {
...@@ -193,7 +204,7 @@ const objList = ref([ ...@@ -193,7 +204,7 @@ const objList = ref([
time: "2025-08-30", time: "2025-08-30",
img: cycle img: cycle
} }
]) ]);
const dataList2 = ref([ const dataList2 = ref([
{ {
...@@ -215,35 +226,39 @@ const dataList3 = ref([ ...@@ -215,35 +226,39 @@ const dataList3 = ref([
id: 1, id: 1,
name: "美国商务部工业与安全局发布实体清单,涉及多家中国半导体企业", name: "美国商务部工业与安全局发布实体清单,涉及多家中国半导体企业",
time: "2025年9月12日", time: "2025年9月12日",
content:"23家中国实体,包括复旦微电旗下多家公司、华岭股份等,指控这些实体“违背美国国家安全或外交政策利益”,包括为中国的...", content:
type:'行政令', "23家中国实体,包括复旦微电旗下多家公司、华岭股份等,指控这些实体“违背美国国家安全或外交政策利益”,包括为中国的...",
type: "行政令",
img: swb img: swb
}, },
{ {
id: 2, id: 2,
name: "美国白宫发布总统政令,提出将发展美国人工智能产业硬件支持放在新任期的科技首要地位", name: "美国白宫发布总统政令,提出将发展美国人工智能产业硬件支持放在新任期的科技首要地位",
time: "2025年9月11日", time: "2025年9月11日",
content:"9个中国实体​(8家企业和1名个人),例如湖北奇卡工业有限公司、广州雅凯国际货运代理有限公司等,指控这些实体为也门胡塞...", content:
type:'行政令', "9个中国实体​(8家企业和1名个人),例如湖北奇卡工业有限公司、广州雅凯国际货运代理有限公司等,指控这些实体为也门胡塞...",
type: "行政令",
img: bg img: bg
}, },
{ {
id: 3, id: 3,
name: "美国财政部外国资产控制办公室指控中国企业及船只", name: "美国财政部外国资产控制办公室指控中国企业及船只",
time: "2025年3月13日", time: "2025年3月13日",
content:"​4家中国企业和3艘关联船只​(如香港和顺运贸有限公司、华夏贸易有限公司等),指控这些公司拥有或运营向中国运送伊朗石油或...", content:
type:'行政令', "​4家中国企业和3艘关联船只​(如香港和顺运贸有限公司、华夏贸易有限公司等),指控这些公司拥有或运营向中国运送伊朗石油或...",
type: "行政令",
img: czb img: czb
}, },
{ {
id: 4, id: 4,
name: "美国国会通过《芯片科学》法案", name: "美国国会通过《芯片科学》法案",
time: "2025年1月3日", time: "2025年1月3日",
content:"​多家中国实体,包括成都雷电微力科技股份有限公司、中国科学院长春光学精密机械与物理研究所等,指控这些实体与中国高超音...", content:
type:'法案', "​多家中国实体,包括成都雷电微力科技股份有限公司、中国科学院长春光学精密机械与物理研究所等,指控这些实体与中国高超音...",
type: "法案",
img: gh img: gh
}, }
]) ]);
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
...@@ -263,6 +278,9 @@ const dataList3 = ref([ ...@@ -263,6 +278,9 @@ const dataList3 = ref([
padding: 19px 0 20px; padding: 19px 0 20px;
background: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 1);
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
position: sticky;
top: 0;
z-index: 99999999;
.nav-main { .nav-main {
width: 1600px; width: 1600px;
height: 81px; height: 81px;
...@@ -924,7 +942,6 @@ const dataList3 = ref([ ...@@ -924,7 +942,6 @@ const dataList3 = ref([
color: rgb(59, 65, 75); color: rgb(59, 65, 75);
border-bottom: 1px solid rgb(234, 236, 238); border-bottom: 1px solid rgb(234, 236, 238);
} }
} }
.right-bottom-content3 { .right-bottom-content3 {
width: 1022px; width: 1022px;
......
...@@ -483,7 +483,7 @@ onMounted(() => { ...@@ -483,7 +483,7 @@ onMounted(() => {
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
.home-main { .home-main {
......
...@@ -1674,7 +1674,7 @@ onMounted(async () => { ...@@ -1674,7 +1674,7 @@ onMounted(async () => {
.home-wrapper { .home-wrapper {
width: 100%; width: 100%;
height: calc(100vh - 96px); height: 100%;
position: relative; position: relative;
overflow-y: hidden; overflow-y: hidden;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论