Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
0eabac2a
提交
0eabac2a
authored
1月 09, 2026
作者:
coderBryanFu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update
上级
f489e272
隐藏空白字符变更
内嵌
并排
正在显示
23 个修改的文件
包含
484 行增加
和
248 行删除
+484
-248
introduction.js
src/api/decree/introduction.js
+12
-0
more.png
src/assets/icons/more.png
+0
-0
headerMenu.vue
src/components/headerMenu.vue
+277
-7
index.vue
src/views/bill/billHome/index.vue
+1
-1
index.vue
src/views/comprehensiveSearch/searchResults/index.vue
+45
-42
index.vue
src/views/coopRestriction/detail/index.vue
+23
-14
index.vue
src/views/decree/decreeHome/index.vue
+1
-1
index.vue
...views/decree/decreeLayout/overview/introduction/index.vue
+28
-115
index.vue
src/views/decree/institution/index.vue
+11
-4
index.vue
src/views/exportControl/index.vue
+1
-1
index.vue
...s/sanctionsOverview/components/introductionPage/index.vue
+1
-0
index.vue
...v2.0SingleSanction/components/sanctionsOverview/index.vue
+2
-0
index.vue
src/views/finance/index.vue
+1
-1
index.vue
src/views/innovationSubject/index.vue
+1
-1
index.vue
...views/marketAccessRestrictions/marketAccessHome/index.vue
+1
-1
index.vue
...tAccessRestrictions/marketAccessLayout/case/301/index.vue
+6
-9
index.vue
...arketAccessRestrictions/marketAccessLayout/case/index.vue
+2
-4
index.vue
...ews/marketAccessRestrictions/marketAccessLayout/index.vue
+11
-9
index.vue
...views/marketAccessRestrictions/singleCaseLayout/index.vue
+9
-4
index.vue
...ccessRestrictions/singleCaseLayout/overview/301/index.vue
+1
-1
index.vue
src/views/ruleRestriction/detail/index.vue
+48
-31
index.vue
src/views/technologyFigures/index.vue
+1
-1
index.vue
src/views/thinkTank/index.vue
+1
-1
没有找到文件。
src/api/decree/introduction.js
浏览文件 @
0eabac2a
...
...
@@ -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}
...
...
src/assets/icons/more.png
0 → 100644
浏览文件 @
0eabac2a
569 Bytes
src/components/headerMenu.vue
浏览文件 @
0eabac2a
...
...
@@ -6,7 +6,12 @@
</div>
<div
class=
"menu-item-text"
>
{{
"首页"
}}
</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"
>
<img
src=
"@/assets/icons/home-header-icon2.png"
alt=
""
/>
</div>
...
...
@@ -31,24 +36,129 @@
<div
class=
"menu-item-text"
>
{{
"事件"
}}
</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
>
<
script
setup
>
import
{
ref
,
onMounted
}
from
'vue'
import
router
from
'@/router'
;
import
{
ref
,
onMounted
}
from
"vue"
;
import
router
from
"@/router"
;
const
isShowCountryMore
=
ref
(
false
);
const
handleIsShowCountryMore
=
isShow
=>
{
isShowCountryMore
.
value
=
isShow
;
};
const
handleToOverview
=
()
=>
{
router
.
push
({
path
:
"/overview"
});
}
}
;
const
handleToGjOverview
=
()
=>
{
router
.
push
({
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
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -57,6 +167,7 @@ const handleToGjOverview = () => {
height
:
64px
;
display
:
flex
;
justify-content
:
space-between
;
.menu-item
{
display
:
flex
;
gap
:
11px
;
...
...
@@ -65,8 +176,8 @@ const handleToGjOverview = () => {
justify-content
:
center
;
align-items
:
center
;
cursor
:
pointer
;
&
:hover
{
background
:
rgba
(
5
,
95
,
194
,
0
.2
);
&
:hover
{
background
:
var
(
--
color-main-active
);
}
.menu-item-icon
{
// margin-top: 2px;
...
...
@@ -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
>
\ No newline at end of file
src/views/bill/billHome/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1751,7 +1751,7 @@ onUnmounted(() => {});
}
.
home
-
wrapper
{
width
:
100
%
;
height
:
calc
(
100
vh
-
96
px
)
;
height
:
100
%
;
position
:
relative
;
overflow
-
y
:
hidden
;
.
search
-
header
{
...
...
src/views/comprehensiveSearch/searchResults/index.vue
浏览文件 @
0eabac2a
...
...
@@ -166,7 +166,7 @@ const tabList = ref([
{
name
:
"新闻"
,
id
:
8
}
,
}
// {
// name: "社媒",
// id: 9
...
...
@@ -304,58 +304,61 @@ const handleSearch = async () => {
}
catch
(
error
)
{}
};
const
handleToPage
=
async
(
item
)
=>
{
if
(
item
.
typeStr
===
'人物'
)
{
const
personTypeList
=
JSON
.
parse
(
window
.
sessionStorage
.
getItem
(
"personTypeList"
));
let
type
=
0
;
let
personTypeName
=
""
;
const
handleToPage
=
async
item
=>
{
console
.
log
(
"item"
,
item
);
const
params
=
{
personId
:
item
.
id
};
try
{
const
res
=
await
getPersonSummaryInfo
(
params
);
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
(
item
.
typeStr
===
"人物"
)
{
const
personTypeList
=
JSON
.
parse
(
window
.
sessionStorage
.
getItem
(
"personTypeList"
));
let
type
=
0
;
let
personTypeName
=
""
;
const
params
=
{
personId
:
item
.
id
};
try
{
const
res
=
await
getPersonSummaryInfo
(
params
);
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
)
{
personTypeName
=
arr
[
0
].
typeName
;
console
.
log
(
"personTypeName"
,
personTypeName
);
if
(
arr
&&
arr
.
length
>
0
)
{
personTypeName
=
arr
[
0
].
typeName
;
console
.
log
(
"personTypeName"
,
personTypeName
);
if
(
personTypeName
===
"科技企业领袖"
)
{
type
=
1
;
}
else
if
(
personTypeName
===
"国会议员"
)
{
type
=
2
;
}
else
if
(
personTypeName
===
"智库研究人员"
)
{
type
=
3
;
if
(
personTypeName
===
"科技企业领袖"
)
{
type
=
1
;
}
else
if
(
personTypeName
===
"国会议员"
)
{
type
=
2
;
}
else
if
(
personTypeName
===
"智库研究人员"
)
{
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
{
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
{
personTypeName
=
""
;
ElMessage
.
warning
(
"找不到当前人员的类型值!"
);
ElMessage
.
warning
(
"获取人物全局信息错误"
);
return
;
}
}
else
{
ElMessage
.
warning
(
"获取人物全局信息错误"
);
return
;
}
}
catch
(
error
)
{}
}
catch
(
error
)
{}
}
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
originalTitle
);
let
curRoute
;
switch
(
item
.
typeStr
)
{
case
"法案"
:
...
...
@@ -487,7 +490,7 @@ onMounted(() => {
}
.wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
background
:
url("../assets/images/background.png")
no-repeat
;
background-size
:
100%
100%
;
.header
{
...
...
src/views/coopRestriction/detail/index.vue
浏览文件 @
0eabac2a
...
...
@@ -61,8 +61,8 @@
<div
class=
"right-top"
>
<img
class=
"img1"
src=
"./assets/bluetitle.png"
alt=
""
/>
<div
class=
"right-top-title"
>
背景分析
</div>
<div
class=
"btn cl1"
:class=
"
{
'active': active === '涉华背景'
}" @click="active = '涉华背景'">涉华背景
</div>
<div
class=
"btn cl2"
: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=
"right-top-content"
>
<div
v-for=
"item in dataList2"
:key=
"item.id"
class=
"right-top-item"
>
<span
class=
"id"
>
{{
item
.
id
}}
</span>
...
...
@@ -75,21 +75,25 @@
<div
class=
"right-bottom"
>
<img
class=
"img1"
src=
"./assets/bluetitle.png"
alt=
""
/>
<div
class=
"right-bottom-title"
>
限制条款
</div>
<div
class=
"btn cl1"
:class=
"
{
'active': active2 === '涉华背景'
}" @click="active2 = '涉华背景'">涉华背景
</div>
<div
class=
"btn cl2"
: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=
"right-bottom-content1"
>
<div
class=
"right-bottom-content1-title"
>
<span>
(一)暂停入境
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<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
class=
"right-bottom-content2"
>
<div
class=
"right-bottom-content2-title"
>
<span>
(二)暂停和限制入境的范围及实施
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<span>
(二)暂停和限制入境的范围及实施
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<div
class=
"right-bottom-content2-content"
>
<div
v-for=
"item in dataList3"
:key=
"item.id"
class=
"forcontent"
>
...
...
@@ -100,11 +104,14 @@
</div>
<div
class=
"right-bottom-content3"
>
<div
class=
"right-bottom-content3-title"
>
<span>
(三)执行本命令的作性行动
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<span>
(三)执行本命令的作性行动
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<div
class=
"right-bottom-content3-content"
>
国务卿、司法部长和国土安全部长应协调采取一切必要和适当的行动以落实本公告。 国务卿、司法部长和国土安全部长还应考虑利用各自在 INA 下的权限,对哈佛大学参与 SEVP 的能力施加限制,以及学生及交流访客信息系统。 任何此类行动应包括对任何符合国家利益的外国人的例外,这些入境由国务卿、国土安全部长或其各自指定的人决定。
国务卿、司法部长和国土安全部长应协调采取一切必要和适当的行动以落实本公告。
国务卿、司法部长和国土安全部长还应考虑利用各自在 INA 下的权限,对哈佛大学参与 SEVP
的能力施加限制,以及学生及交流访客信息系统。
任何此类行动应包括对任何符合国家利益的外国人的例外,这些入境由国务卿、国土安全部长或其各自指定的人决定。
</div>
</div>
</div>
...
...
@@ -228,8 +235,8 @@ const dataList3 = ref([
{
id
:
5
,
name
:
"本公告发布日起不迟于 90 天内,司法部长与国土安全部长应通过总统国家安全事务助理共同向总统提交建议,决定是否延长或续期本公告第 1 条中暂停和限制入境的条款符合美国利益。"
}
,
])
}
])
;
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -249,6 +256,9 @@ const dataList3 = ref([
padding
:
19px
0
20px
;
background
:
rgba
(
255
,
255
,
255
,
1
);
box-shadow
:
0px
0px
20px
0px
rgba
(
25
,
69
,
130
,
0
.1
);
position
:
sticky
;
top
:
0
;
z-index
:
99999999
;
.nav-main
{
width
:
1600px
;
height
:
81px
;
...
...
@@ -803,7 +813,6 @@ const dataList3 = ref([
}
}
}
}
.right-bottom-content3
{
width
:
1022px
;
...
...
src/views/decree/decreeHome/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1321,7 +1321,7 @@ onMounted(async () => {
}
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
.search-header
{
...
...
src/views/decree/decreeLayout/overview/introduction/index.vue
浏览文件 @
0eabac2a
...
...
@@ -111,17 +111,6 @@
<div
class=
"box-header"
>
<div
class=
"header-left"
></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=
"icon"
>
<img
src=
"../assets/icons/header-right-icon1.png"
alt=
""
/>
...
...
@@ -132,13 +121,13 @@
</div>
</div>
<div
class=
"box3-top"
>
<div
class=
"box3-top-top"
@
click=
"handleToInstitution(box3TopData)"
>
<div
class=
"box3-top-top"
@
click=
"handleToInstitution(box3Top
Top
Data)"
>
<div
class=
"left"
>
<img
:src=
"box3Top
Data.logo ? box3
TopData.logo : DefaultIcon2"
alt=
""
/>
<img
:src=
"box3Top
TopData.logo ? box3Top
TopData.logo : DefaultIcon2"
alt=
""
/>
</div>
<div
class=
"right"
>
<div
class=
"name"
>
{{ box3TopData.name + " >" }}
</div>
<div
class=
"ename"
>
{{ box3TopData.eName }}
</div>
<div
class=
"name"
>
{{ box3Top
Top
Data.name + " >" }}
</div>
<div
class=
"ename"
>
{{ box3Top
Top
Data.eName }}
</div>
</div>
<!-- <div class="more">
<div class="text">{{ "查看官网" }}</div>
...
...
@@ -157,11 +146,11 @@
<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-left"
>
<img
:src=
"item.
image ? item.image
: DefaultIcon1"
alt=
""
/>
<img
:src=
"item.
avatar ? item.avatar
: DefaultIcon1"
alt=
""
/>
</div>
<div
class=
"box3-top-bottom-item-right"
>
<div
class=
"name"
>
{{ item.name }}
</div>
<div
class=
"position"
>
{{ item.
position
}}
</div>
<div
class=
"position"
>
{{ item.
job
}}
</div>
</div>
</div>
</div>
...
...
@@ -177,13 +166,13 @@
<div
class=
"box3-bottom-main"
>
<el-timeline
style=
"max-width: 500px"
>
<el-timeline-item
:timestamp=
"item.
tim
e"
:timestamp=
"item.
newsDat
e"
placement=
"top"
v-for=
"(item, index) in eventList"
:key=
"index"
>
<div
class=
"timeline-content"
>
{{ item.
title
}}
{{ item.
newsContent
}}
</div>
</el-timeline-item>
</el-timeline>
...
...
@@ -200,7 +189,7 @@ import { useRoute } from "vue-router";
import
router
from
"@/router"
;
import
box1Img
from
"./assets/images/box1-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
DefaultIcon2
from
"@/assets/icons/default-icon2.png"
;
...
...
@@ -283,71 +272,17 @@ const handleMajorList = async () => {
};
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
box3Top
Top
Data
=
ref
({
id
:
""
,
logo
:
""
,
name
:
""
,
eName
:
""
,
clsj
:
""
,
zbdz
:
""
,
bz
:
""
});
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 () => {
id
:
decreeId
.
value
};
try
{
const
res
=
await
getDecreeOrganization
(
params
);
console
.
log
(
"
执行
机构"
,
res
);
const
res
=
await
getDecree
Issue
Organization
(
params
);
console
.
log
(
"
发布
机构"
,
res
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
box3BtnList
.
value
=
res
.
data
.
map
(
item
=>
{
return
item
.
name
;
});
box3Data
.
value
=
res
.
data
;
box3TopData
.
value
.
logo
=
res
.
data
[
0
].
url
;
box3TopData
.
value
.
name
=
res
.
data
[
0
].
name
;
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
=
[];
}
box3TopTopData
.
value
.
id
=
res
.
data
.
id
box3TopTopData
.
value
.
logo
=
res
.
data
.
image
box3TopTopData
.
value
.
name
=
res
.
data
.
name
box3TopTopData
.
value
.
eName
=
res
.
data
.
ename
eventList
.
value
=
res
.
data
.
newsList
box3TopBottomData
.
value
=
res
.
data
.
personList
}
}
catch
(
error
)
{
console
.
error
(
"执行机构error"
,
error
);
box3
BtnList
.
value
=
[];
box3TopData
.
value
=
{
box3
TopTopData
.
value
=
{
id
:
""
,
logo
:
""
,
name
:
""
,
eName
:
""
,
clsj
:
""
,
zbdz
:
""
,
bz
:
""
};
eventList
.
value
=
[];
}
...
...
@@ -772,7 +682,7 @@ onMounted(() => {
flex-wrap
:
wrap
;
justify-content
:
space-between
;
.box3-top-bottom-item
{
margin-top
:
1
7
px
;
margin-top
:
1
2
px
;
height
:
48px
;
width
:
200px
;
display
:
flex
;
...
...
@@ -815,6 +725,9 @@ onMounted(() => {
line-height
:
24px
;
letter-spacing
:
0px
;
text-align
:
left
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
}
}
...
...
src/views/decree/institution/index.vue
浏览文件 @
0eabac2a
...
...
@@ -104,9 +104,8 @@ onMounted(() => {
});
onUnmounted
(()
=>
{
window
.
sessionStorage
.
removeItem
(
'institutionActiveTabName'
)
})
window
.
sessionStorage
.
removeItem
(
"institutionActiveTabName"
);
});
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -139,6 +138,9 @@ onUnmounted(() => {
}
.header-right
{
margin-left
:
24px
;
width
:
1350px
;
overflow
:
hidden
;
overflow-y
:
auto
;
.title
{
margin-top
:
26px
;
height
:
42px
;
...
...
@@ -149,6 +151,9 @@ onUnmounted(() => {
line-height
:
42px
;
letter-spacing
:
0px
;
text-align
:
left
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.en-title
{
margin-top
:
8px
;
...
...
@@ -160,10 +165,12 @@ onUnmounted(() => {
line-height
:
24px
;
letter-spacing
:
0px
;
text-align
:
left
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.desc
{
margin-top
:
6px
;
height
:
24px
;
color
:
rgba
(
59
,
65
,
75
,
1
);
font-family
:
Microsoft
YaHei
;
font-size
:
16px
;
...
...
src/views/exportControl/index.vue
浏览文件 @
0eabac2a
...
...
@@ -2300,7 +2300,7 @@ const handleMediaClick = item => {
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
...
...
src/views/exportControl/v2.0EntityList/components/sanctionsOverview/components/introductionPage/index.vue
浏览文件 @
0eabac2a
...
...
@@ -198,6 +198,7 @@ const handlePerClick = item => {
// 处理点击实体名称的方法
const
handleClick
=
item
=>
{
// console.log("点击了实体名称:", item);
window
.
sessionStorage
.
setItem
(
"curTabName"
,
`${item.year
}
-${item.date
}
《${item.name
}
》`
);
const
route
=
router
.
resolve
({
path
:
"/exportControl/singleSanction"
,
query
:
{
...
...
src/views/exportControl/v2.0SingleSanction/components/sanctionsOverview/index.vue
浏览文件 @
0eabac2a
...
...
@@ -209,6 +209,7 @@ const handleCompClick = item => {
// 跳转发布机构详情页
const
handleClickDp
=
()
=>
{
// console.log("点击了发布机构:", props.data);
window
.
sessionStorage
.
setItem
(
'curTabName'
,
props
.
data
.
postOrgName
)
const
route
=
router
.
resolve
({
path
:
"/institution"
,
query
:
{
...
...
@@ -367,6 +368,7 @@ const props = defineProps({
});
// 跳转到人物页
const
handleClick
=
()
=>
{
window
.
sessionStorage
.
setItem
(
"curTabName"
,
props
.
data
.
postPersonName
)
const
route
=
router
.
resolve
({
path
:
"/characterPage"
,
query
:
{
...
...
src/views/finance/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1685,7 +1685,7 @@ onMounted(async () => {
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
.home-main
{
...
...
src/views/innovationSubject/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1063,7 +1063,7 @@ onMounted(async () => {
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
...
...
src/views/marketAccessRestrictions/marketAccessHome/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1522,7 +1522,7 @@ onMounted(async () => {
}
.
home
-
wrapper
{
width
:
100
%
;
height
:
calc
(
100
vh
-
96
px
)
;
height
:
100
%
;
position
:
relative
;
overflow
-
y
:
hidden
;
.
home
-
main
{
...
...
src/views/marketAccessRestrictions/marketAccessLayout/case/301/index.vue
浏览文件 @
0eabac2a
...
...
@@ -294,9 +294,9 @@ onMounted(() => {
<
style
lang=
"scss"
scoped
>
.case-wrapper
{
width
:
100%
;
height
:
100%
;
overflow
-y
:
auto
;
//
width: 100%;
//
height: 100%;
overflow
:
hidden
;
.wrapper-header
{
width
:
1600px
;
height
:
32px
;
...
...
@@ -359,10 +359,8 @@ onMounted(() => {
}
.wrapper-main
{
width
:
1600px
;
// height: 935px;
height
:
800px
;
// height: 900px;
margin
:
0
auto
;
box-sizing
:
border-box
;
display
:
flex
;
justify-content
:
space-between
;
.left
{
...
...
@@ -429,6 +427,7 @@ onMounted(() => {
margin-left
:
16px
;
width
:
1224px
;
min-height
:
700px
;
height
:
770px
;
border-radius
:
10px
;
box-shadow
:
0px
0px
15px
0px
rgba
(
60
,
87
,
126
,
0
.2
);
background
:
rgba
(
255
,
255
,
255
,
1
);
...
...
@@ -462,10 +461,8 @@ onMounted(() => {
}
.right-main
{
padding-top
:
6px
;
min-height
:
586px
;
max-height
:
1540px
;
height
:
660px
;
border-bottom
:
1px
solid
rgba
(
230
,
231
,
232
,
1
);
// height: 780px;
.item
{
height
:
154px
;
display
:
flex
;
...
...
src/views/marketAccessRestrictions/marketAccessLayout/case/index.vue
浏览文件 @
0eabac2a
...
...
@@ -25,8 +25,5 @@ onMounted(() => {
</
script
>
<
style
lang=
"scss"
scoped
>
.case-wrap
{
width
:
100%
;
height
:
100%
;
}
</
style
>
\ No newline at end of file
src/views/marketAccessRestrictions/marketAccessLayout/index.vue
浏览文件 @
0eabac2a
...
...
@@ -59,7 +59,6 @@ import { useRoute } from "vue-router";
const
route
=
useRoute
();
const
btnList
=
ref
([
{
name
:
"调查案件"
,
icon
:
icon2
,
...
...
@@ -71,7 +70,7 @@ const btnList = ref([
icon
:
icon1
,
acitveIcon
:
icon1Active
,
path
:
"/marketAccessLayout/overview"
}
,
}
]);
const
curSurvey
=
computed
(()
=>
{
...
...
@@ -109,26 +108,29 @@ const handleClickBtn = item => {
};
onMounted
(()
=>
{
if
(
route
.
path
===
'/marketAccessLayout/overview'
)
{
activeBtnName
.
value
=
'数据统计'
if
(
route
.
path
===
"/marketAccessLayout/overview"
)
{
activeBtnName
.
value
=
"数据统计"
;
}
else
{
activeBtnName
.
value
=
'调查案件'
activeBtnName
.
value
=
"调查案件"
;
}
});
</
script
>
<
style
lang=
"scss"
scoped
>
.wrap
{
width
:
1920px
;
height
:
1016px
;
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
overflow-y
:
auto
;
.header
{
width
:
1920px
;
height
:
148px
;
box-sizing
:
border-box
;
border-bottom
:
1px
solid
rgba
(
230
,
231
,
232
,
1
);
background
:
rgba
(
255
,
255
,
255
,
1
);
position
:
sticky
;
top
:
0
;
z-index
:
99999999
;
.header-top
{
display
:
flex
;
height
:
100px
;
...
...
src/views/marketAccessRestrictions/singleCaseLayout/index.vue
浏览文件 @
0eabac2a
...
...
@@ -77,7 +77,7 @@ const navList = ref([
icon
:
NavIcon2
,
activeIcon
:
NavIcon2Active
,
isActive
:
false
,
isShow
:
route
.
query
.
id
===
'337'
,
isShow
:
route
.
query
.
id
===
"337"
,
path
:
"/marketSingleCaseLayout/deepdig"
},
{
...
...
@@ -146,6 +146,8 @@ onMounted(() => {});
.wrapper
{
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
overflow-y
:
auto
;
.header
{
width
:
1920px
;
height
:
148px
;
...
...
@@ -153,6 +155,9 @@ onMounted(() => {});
border-bottom
:
1px
solid
rgba
(
230
,
231
,
232
,
1
);
background
:
rgba
(
255
,
255
,
255
,
1
);
padding
:
24px
160px
0
;
position
:
sticky
;
top
:
0
;
z-index
:
99999999
;
.header-top
{
display
:
flex
;
.header-top-left
{
...
...
@@ -299,9 +304,9 @@ onMounted(() => {});
}
}
.main
{
height
:
870px
;
width
:
1920px
;
overflow-y
:
auto
;
//
height: 870px;
//
width: 1920px;
//
overflow-y: auto;
background
:
rgba
(
247
,
248
,
249
,
1
);
}
}
...
...
src/views/marketAccessRestrictions/singleCaseLayout/overview/301/index.vue
浏览文件 @
0eabac2a
...
...
@@ -336,7 +336,6 @@ const box4Data = ref([
<
style
lang=
"scss"
scoped
>
.wrapper
{
width
:
100%
;
// height: 1191px;
padding
:
0
160px
;
display
:
flex
;
.box-header
{
...
...
@@ -410,6 +409,7 @@ const box4Data = ref([
}
.left
{
width
:
520px
;
margin-bottom
:
20px
;
.box1
{
margin-top
:
16px
;
width
:
520px
;
...
...
src/views/ruleRestriction/detail/index.vue
浏览文件 @
0eabac2a
...
...
@@ -30,7 +30,8 @@
<img
class=
"img3"
src=
"./assets/收藏按钮.png"
alt=
""
/>
<div
class=
"left-top-content"
>
<span
>
美国联邦通信委员会(FCC)启动程序撤销对德国莱茵 TÜV 集团/中国检验认证集团(宁波)有限公司作为测试认可实验室的认证。
</span
>
美国联邦通信委员会(FCC)启动程序撤销对德国莱茵 TÜV
集团/中国检验认证集团(宁波)有限公司作为测试认可实验室的认证。
</span
>
</div>
<div
class=
"left-top-bottom"
>
...
...
@@ -52,11 +53,11 @@
<div
class=
"name"
>
{{
item
.
name
}}
</div>
<div
class=
"type"
>
{{
item
.
type
}}
</div>
</div>
<img
src=
"./assets/注意.png"
alt=
""
>
<img
src=
"./assets/注意.png"
alt=
""
/
>
</div>
</div>
<!-- 规则限制事件脉络 -->
<div
class=
"left-bottom-B"
>
<div
class=
"left-bottom-B"
>
<img
class=
"img1"
src=
"./assets/bluetitle.png"
alt=
""
/>
<div
class=
"left-bottom-title"
>
规则限制事件脉络
</div>
<img
class=
"img2"
src=
"./assets/下载按钮.png"
alt=
""
/>
...
...
@@ -67,7 +68,7 @@
<div
class=
"time"
>
{{
item
.
time
}}
</div>
<div
class=
"name"
>
{{
item
.
name
}}
</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>
</div>
...
...
@@ -80,7 +81,7 @@
<div
class=
"right-bottom-content1"
>
<div
class=
"right-bottom-content1-title"
>
<span>
(一)法律框架
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<div
class=
"right-bottom-content1-content"
>
《法案》第302条授权联邦通信委员会(以下简称委员会或FCC)制定符合公共利益的规则,管理能够发射射频(RF)能量设备的干扰潜力。该法案还允许委员会授权私人机构(测试实验室)进行符合这些规则的合规性测试,并为这些测试实验室建立适当的资质和标准。委员会不会认可未能满足所有适当标准的任何测试实验室,包括与测试实验室的诚信和可靠性相关的标准。委员会的规则部分规定,“确保参与FCC设备授权计划的测试实验室不受对国家安全构成风险的不可信行为者的所有权、指挥或控制。”
...
...
@@ -89,19 +90,27 @@
<div
class=
"right-bottom-content2"
>
<div
class=
"right-bottom-content2-title"
>
<span>
(二)事实背景
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<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
class=
"right-bottom-content3"
>
<div
class=
"right-bottom-content3-title"
>
<span>
(二)其他背景
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
>
<span>
(二)其他背景
</span>
<img
src=
"./assets/打开按钮.png"
alt=
""
/
>
</div>
<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>
...
...
@@ -123,10 +132,12 @@
<div
class=
"right-top-title"
>
相关举措
</div>
<div
class=
"right-top-content"
>
<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=
"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>
</div>
...
...
@@ -138,14 +149,14 @@
<
script
setup
>
import
{
ref
,
onMounted
}
from
"vue"
;
import
ningbo
from
"./assets/ningbo.png"
import
deguo
from
"./assets/deguo.png"
import
cycle
from
"./assets/cycle.png"
import
ningbo
from
"./assets/ningbo.png"
;
import
deguo
from
"./assets/deguo.png"
;
import
cycle
from
"./assets/cycle.png"
;
import
swb
from
"./assets/商务部.png"
import
bg
from
"./assets/白宫.png"
import
czb
from
"./assets/财政部.png"
import
gh
from
"./assets/国会.png"
import
swb
from
"./assets/商务部.png"
;
import
bg
from
"./assets/白宫.png"
;
import
czb
from
"./assets/财政部.png"
;
import
gh
from
"./assets/国会.png"
;
const
dataList
=
ref
([
{
...
...
@@ -193,7 +204,7 @@ const objList = ref([
time
:
"2025-08-30"
,
img
:
cycle
}
])
])
;
const
dataList2
=
ref
([
{
...
...
@@ -215,35 +226,39 @@ const dataList3 = ref([
id
:
1
,
name
:
"美国商务部工业与安全局发布实体清单,涉及多家中国半导体企业"
,
time
:
"2025年9月12日"
,
content
:
"23家中国实体,包括复旦微电旗下多家公司、华岭股份等,指控这些实体“违背美国国家安全或外交政策利益”,包括为中国的..."
,
type
:
'行政令'
,
content
:
"23家中国实体,包括复旦微电旗下多家公司、华岭股份等,指控这些实体“违背美国国家安全或外交政策利益”,包括为中国的..."
,
type
:
"行政令"
,
img
:
swb
},
{
id
:
2
,
name
:
"美国白宫发布总统政令,提出将发展美国人工智能产业硬件支持放在新任期的科技首要地位"
,
time
:
"2025年9月11日"
,
content
:
"9个中国实体(8家企业和1名个人),例如湖北奇卡工业有限公司、广州雅凯国际货运代理有限公司等,指控这些实体为也门胡塞..."
,
type
:
'行政令'
,
content
:
"9个中国实体(8家企业和1名个人),例如湖北奇卡工业有限公司、广州雅凯国际货运代理有限公司等,指控这些实体为也门胡塞..."
,
type
:
"行政令"
,
img
:
bg
},
{
id
:
3
,
name
:
"美国财政部外国资产控制办公室指控中国企业及船只"
,
time
:
"2025年3月13日"
,
content
:
"4家中国企业和3艘关联船只(如香港和顺运贸有限公司、华夏贸易有限公司等),指控这些公司拥有或运营向中国运送伊朗石油或..."
,
type
:
'行政令'
,
content
:
"4家中国企业和3艘关联船只(如香港和顺运贸有限公司、华夏贸易有限公司等),指控这些公司拥有或运营向中国运送伊朗石油或..."
,
type
:
"行政令"
,
img
:
czb
},
{
id
:
4
,
name
:
"美国国会通过《芯片科学》法案"
,
time
:
"2025年1月3日"
,
content
:
"多家中国实体,包括成都雷电微力科技股份有限公司、中国科学院长春光学精密机械与物理研究所等,指控这些实体与中国高超音..."
,
type
:
'法案'
,
content
:
"多家中国实体,包括成都雷电微力科技股份有限公司、中国科学院长春光学精密机械与物理研究所等,指控这些实体与中国高超音..."
,
type
:
"法案"
,
img
:
gh
}
,
])
}
])
;
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -263,6 +278,9 @@ const dataList3 = ref([
padding
:
19px
0
20px
;
background
:
rgba
(
255
,
255
,
255
,
1
);
box-shadow
:
0px
0px
20px
0px
rgba
(
25
,
69
,
130
,
0
.1
);
position
:
sticky
;
top
:
0
;
z-index
:
99999999
;
.nav-main
{
width
:
1600px
;
height
:
81px
;
...
...
@@ -924,7 +942,6 @@ const dataList3 = ref([
color
:
rgb
(
59
,
65
,
75
);
border-bottom
:
1px
solid
rgb
(
234
,
236
,
238
);
}
}
.right-bottom-content3
{
width
:
1022px
;
...
...
src/views/technologyFigures/index.vue
浏览文件 @
0eabac2a
...
...
@@ -483,7 +483,7 @@ onMounted(() => {
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
.home-main
{
...
...
src/views/thinkTank/index.vue
浏览文件 @
0eabac2a
...
...
@@ -1674,7 +1674,7 @@ onMounted(async () => {
.home-wrapper
{
width
:
100%
;
height
:
calc
(
100vh
-
96px
)
;
height
:
100%
;
position
:
relative
;
overflow-y
:
hidden
;
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论