Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
277bffd2
提交
277bffd2
authored
3月 27, 2026
作者:
付康
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'fk-dev' 到 'pre'
Fk dev 查看合并请求
!264
上级
32486bbe
177bfd30
流水线
#167
已通过 于阶段
in 5 分 26 秒
变更
15
流水线
1
全部展开
显示空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
198 行增加
和
46 行删除
+198
-46
App.vue
src/App.vue
+0
-0
index.vue
src/components/base/moduleHeader/index.vue
+145
-25
tool1.svg
src/components/base/moduleHeader/tool1.svg
+10
-0
tool2.svg
src/components/base/moduleHeader/tool2.svg
+10
-0
LeftBtn.vue
src/components/base/pageBtn/LeftBtn.vue
+0
-0
RightBtn.vue
src/components/base/pageBtn/RightBtn.vue
+0
-0
main.js
src/main.js
+2
-2
index.js
src/router/index.js
+16
-4
index.vue
src/styles/components/ActionButton/index.vue
+4
-4
index.vue
src/views/bill/billHome/index.vue
+2
-2
index.vue
src/views/dataLibrary/decree/index.vue
+0
-0
index.vue
src/views/dataLibrary/index.vue
+3
-3
CooperationCases.vue
...ct/innovativeInstitutions/components/CooperationCases.vue
+2
-2
OtherInfo.vue
...novationSubject/innovativeInstitutions/tabs/OtherInfo.vue
+2
-2
index.vue
...views/marketAccessRestrictions/marketAccessHome/index.vue
+2
-2
没有找到文件。
src/App.vue
浏览文件 @
277bffd2
差异被折叠。
点击展开。
src/components/base/moduleHeader/index.vue
浏览文件 @
277bffd2
...
...
@@ -10,8 +10,7 @@
<div
class=
"title-box"
v-show=
"!isShowSearchBar"
>
<!--
<div
class=
"title-box"
v-if=
"false"
>
-->
<div
class=
"title"
v-for=
"(item, index) in homeTitleList"
:key=
"index"
@
mouseenter=
"handleShowMenu(index, true)"
@
mouseleave=
"handleShowMenu(index, false)"
@
click=
"handleClickTitle(item)"
>
@
mouseenter=
"handleShowMenu(index, true)"
@
click=
"handleClickTitle(item, index)"
>
<div
class=
"text"
:class=
"
{ textActive: homeActiveTitleIndex === index }">
{{
item
.
name
}}
</div>
...
...
@@ -42,6 +41,17 @@
</div>
</div>
</div>
<div
class=
"tool-box"
v-show=
"isShowTool"
@
mouseenter=
"handleHoverTool(true)"
@
mouseleave=
"handleHoverTool(false)"
>
<div
class=
"menu-content"
>
<div
class=
"menu-item"
v-for=
"(item, index) in toolList"
:key=
"index"
@
click=
"handleToModule(item)"
>
<div
class=
"icon"
>
<img
:src=
"item.icon"
alt=
""
/>
</div>
<div
class=
"title"
>
{{
item
.
title
}}
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
...
...
@@ -65,6 +75,8 @@ import Menu9 from "@/assets/icons/overview/menu9.png";
import
Menu10
from
"@/assets/icons/overview/menu10.png"
;
import
Menu11
from
"@/assets/icons/overview/menu11.png"
;
import
Menu12
from
"@/assets/icons/overview/menu12.png"
;
import
Tool1
from
'./tool1.svg'
import
Tool2
from
'./tool2.svg'
import
{
ElMessage
}
from
"element-plus"
;
import
{
useWrittingAsstaintStore
}
from
"@/stores/writtingAsstaintStore"
;
const
store
=
useWrittingAsstaintStore
();
...
...
@@ -91,29 +103,43 @@ const handleGetPersonType = async () => {
// 概览页标题列表
const
homeTitleList
=
ref
([
{
name
:
"
中美科技博弈
"
,
name
:
"
首页
"
,
path
:
"/ZMOverView"
,
disabled
:
false
},
// {
// name: "主要国家科技动向感知",
// path: "",
// disabled: true
// },
// {
// name: "主要国家竞争科技安全",
// path: "",
// disabled: true
// }
{
name
:
"中美科技博弈"
,
path
:
"/billHome"
,
disabled
:
false
},
{
name
:
"智能工具"
,
path
:
"/chat"
,
disabled
:
false
},
{
name
:
"数据资源库"
,
path
:
"/dataLibrary"
,
disabled
:
false
}
]);
const
homeActiveTitleIndex
=
ref
(
0
);
const
isShowMenu
=
ref
(
false
);
const
handleShowMenu
=
(
index
,
isShow
)
=>
{
if
(
index
===
0
)
{
if
(
index
===
1
)
{
isShowMenu
.
value
=
isShow
;
isShowTool
.
value
=
false
;
}
else
if
(
index
===
2
)
{
isShowMenu
.
value
=
false
isShowTool
.
value
=
isShow
;
}
else
{
isShowMenu
.
value
=
false
isShowTool
.
value
=
false
;
}
};
...
...
@@ -122,11 +148,11 @@ const handleHoverMenu = isShow => {
};
const
menuList
=
ref
([
{
title
:
"中美科技博弈概览"
,
icon
:
Menu1
,
path
:
"/ZMOverView"
},
//
{
//
title: "中美科技博弈概览",
//
icon: Menu1,
//
path: "/ZMOverView"
//
},
{
title
:
"科技法案"
,
icon
:
Menu2
,
...
...
@@ -184,11 +210,34 @@ const menuList = ref([
}
]);
const
isShowTool
=
ref
(
false
);
const
handleHoverTool
=
isShow
=>
{
isShowTool
.
value
=
isShow
;
};
const
toolList
=
ref
([
{
title
:
"智能问答"
,
icon
:
Tool1
,
path
:
"/chat"
},
{
title
:
"智能写报"
,
icon
:
Tool2
,
path
:
"/writting"
},
])
const
handleToModule
=
item
=>
{
const
curRoute
=
router
.
resolve
({
// const curRoute = router.resolve({
// path: item.path
// });
// window.open(curRoute.href, "_blank");
router
.
push
({
path
:
item
.
path
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
})
};
const
searchText
=
ref
(
""
);
...
...
@@ -203,10 +252,20 @@ const handleSearch = () => {
window
.
open
(
curRoute
.
href
,
"_blank"
);
};
const
handleClickTitle
=
item
=>
{
if
(
item
.
name
===
"主要国家科技动向感知"
||
item
.
name
===
"主要国家竞争科技安全"
)
{
ElMessage
.
warning
(
"当前功能正在开发中,敬请期待!"
);
const
handleClickTitle
=
(
item
,
index
)
=>
{
if
(
homeActiveTitleIndex
.
value
===
index
)
return
homeActiveTitleIndex
.
value
=
index
window
.
localStorage
.
setItem
(
'homeActiveTitleIndex'
,
homeActiveTitleIndex
.
value
)
if
(
item
.
name
===
'智能工具'
)
{
const
curRoute
=
router
.
resolve
({
path
:
item
.
path
,
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
else
{
router
.
push
(
item
.
path
)
}
};
const
handleClickToolBox
=
()
=>
{
...
...
@@ -215,6 +274,7 @@ const handleClickToolBox = () => {
onMounted
(()
=>
{
handleGetPersonType
();
homeActiveTitleIndex
.
value
=
Number
(
window
.
localStorage
.
getItem
(
'homeActiveTitleIndex'
))
});
</
script
>
...
...
@@ -450,6 +510,66 @@ onMounted(() => {
}
}
}
.tool-box
{
position
:
absolute
;
z-index
:
999999
;
width
:
273px
;
height
:
171px
;
top
:
52px
;
left
:
300px
;
box-sizing
:
border-box
;
border
:
1px
solid
rgba
(
255
,
255
,
255
,
1
);
border-radius
:
10px
;
backdrop-filter
:
blur
(
30px
);
box-shadow
:
0px
0px
20px
0px
rgba
(
25
,
69
,
130
,
0
.1
);
background
:
rgba
(
255
,
255
,
255
,
0
.8
);
.menu-content
{
width
:
562px
;
height
:
348px
;
margin-top
:
8px
;
margin-left
:
72px
;
.menu-item
{
margin-top
:
36px
;
width
:
280px
;
height
:
24px
;
display
:
flex
;
cursor
:
pointer
;
&
:hover
{
.title
{
color
:
var
(
--
color-main-active
);
font-size
:
20px
;
}
}
.icon
{
width
:
24px
;
height
:
24px
;
img
{
width
:
100%
;
height
:
100%
;
}
}
.title
{
margin-left
:
16px
;
height
:
24px
;
color
:
rgba
(
59
,
65
,
75
,
1
);
font-family
:
Microsoft
YaHei
;
font-style
:
Bold
;
font-size
:
18px
;
font-weight
:
700
;
line-height
:
24px
;
letter-spacing
:
0px
;
text-align
:
left
;
}
}
}
}
}
}
</
style
>
src/components/base/moduleHeader/tool1.svg
0 → 100644
浏览文件 @
277bffd2
<svg
viewBox=
"0 0 24 24"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
width=
"24.000000"
height=
"24.000000"
fill=
"none"
customFrame=
"#000000"
>
<defs>
<linearGradient
id=
"paint_linear_1"
x1=
"12"
x2=
"12"
y1=
"1"
y2=
"23.0000019"
gradientUnits=
"userSpaceOnUse"
>
<stop
stop-color=
"rgb(0,91,244)"
offset=
"0"
stop-opacity=
"1"
/>
<stop
stop-color=
"rgb(101,0,253)"
offset=
"1"
stop-opacity=
"1"
/>
</linearGradient>
</defs>
<rect
id=
"ZM"
width=
"24.000000"
height=
"24.000000"
x=
"0.000000"
y=
"0.000000"
/>
<path
id=
"合并"
d=
"M16.1924 8.34956L17.265 9.39747C16.1916 12.5467 12.973 15.696 8.68258 16.2219C5.81801 16.5715 2.54479 19.4738 1 23C2.07341 16.7015 4.39054 1 20.4837 1C19.4119 4.1461 18.3401 6.24507 17.2683 7.29535L16.1924 8.34956ZM16.9643 4.86177C17.4797 3.85558 19.0242 2.51052 19.0242 1.83869C18.5092 2.17461 16.9643 2.84605 15.9343 4.35789C14.9044 5.86972 12.3295 6.87729 12.3295 6.87729C13.3594 6.54137 16.4489 5.86795 16.9643 4.86177ZM15.4194 8.8928C15.4194 9.56464 15.1104 11.1099 13.8744 11.9161C12.6385 12.7223 10.2696 13.5957 9.23961 13.9316C9.23961 13.9316 12.0205 12.6215 12.8445 11.4122C13.6684 10.2029 14.9044 9.22872 15.4194 8.8928ZM19.254 14.3913C19.254 14.3913 18.5049 16.1842 17.0059 17.2593C15.507 18.3345 13.2582 18.6917 13.2582 18.6917C13.2582 18.6917 15.3188 19.0509 16.2555 20.128C17.1923 21.205 17.0051 23 17.0051 23C17.0051 23 17.7544 21.205 19.2532 20.128C20.7519 19.0509 23 18.6919 23 18.6919C23 18.6919 20.9401 18.3345 20.0036 17.2593C19.0671 16.1842 19.254 14.3913 19.254 14.3913Z"
fill=
"url(#paint_linear_1)"
fill-rule=
"evenodd"
/>
</svg>
src/components/base/moduleHeader/tool2.svg
0 → 100644
浏览文件 @
277bffd2
<svg
viewBox=
"0 0 24 24"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
width=
"24.000000"
height=
"24.000000"
fill=
"none"
customFrame=
"#000000"
>
<defs>
<linearGradient
id=
"paint_linear_2"
x1=
"12"
x2=
"12"
y1=
"2"
y2=
"22"
gradientUnits=
"userSpaceOnUse"
>
<stop
stop-color=
"rgb(0,91,244)"
offset=
"0"
stop-opacity=
"1"
/>
<stop
stop-color=
"rgb(101,0,253)"
offset=
"1"
stop-opacity=
"1"
/>
</linearGradient>
</defs>
<rect
id=
"法案"
width=
"24.000000"
height=
"24.000000"
x=
"0.000000"
y=
"0.000000"
/>
<path
id=
"减去顶层"
d=
"M1.00002 11.1429C1.00002 6.0934 5.66569 2 11.4211 2C17.1765 2 21.8421 6.0934 21.8421 11.1429C21.8421 16.1923 17.1765 20.2857 11.4211 20.2857C10.0795 20.2857 8.79726 20.0634 7.61946 19.6584C6.99335 19.443 5.83647 18.8635 5.83647 18.8635L1 19.6588L2.90775 16.417C2.90775 16.417 2.15952 15.3834 1.87639 14.8183C1.31279 13.6935 1.00002 12.4503 1.00002 11.1429ZM15.7969 6.57031C15.7969 6.57031 15.5142 7.22506 14.9487 7.61766C14.3831 8.01027 13.5347 8.14075 13.5347 8.14075C13.5347 8.14075 14.3121 8.2719 14.6656 8.66523C15.019 9.05855 14.9484 9.71404 14.9484 9.71404C14.9484 9.71404 15.2311 9.05854 15.7965 8.66523C16.362 8.27192 17.2102 8.14079 17.2102 8.14079C17.2102 8.14079 16.433 8.01028 16.0797 7.61766C15.7263 7.22505 15.7969 6.57031 15.7969 6.57031ZM12.5406 14.0703L11.6792 8.14197L7.22535 8.14197L7.55117 8.43609L5.05229 14.0703L6.89676 14.0703L7.65333 12.4565L10.3676 12.4565L10.594 14.0703L12.5406 14.0703ZM8.09512 11.4514L9.18027 9.14708L9.9396 9.14708L10.2654 11.4514L8.09512 11.4514ZM16.3866 9.83812L15.6492 14.0703L13.5921 14.0703L14.1004 10.2371L13.7718 9.83812L16.3866 9.83812ZM9.10525 20.5652C10.534 21.4701 12.266 22 14.1326 22C19.0299 22 23 18.3529 23 13.854C23 12.9035 22.8228 11.991 22.497 11.1429C22.5038 11.2826 22.5072 11.423 22.5072 11.5643C22.5072 16.7661 17.8755 20.9831 12.162 20.9831C11.0979 20.9831 10.0713 20.8368 9.10525 20.5652Z"
fill=
"url(#paint_linear_2)"
fill-rule=
"evenodd"
/>
</svg>
src/components/base/pageBtn/
l
eftBtn.vue
→
src/components/base/pageBtn/
L
eftBtn.vue
浏览文件 @
277bffd2
File moved
src/components/base/pageBtn/
r
ightBtn.vue
→
src/components/base/pageBtn/
R
ightBtn.vue
浏览文件 @
277bffd2
File moved
src/main.js
浏览文件 @
277bffd2
...
...
@@ -13,8 +13,8 @@ import '@/assets/fonts/font.css'
import
zhCn
from
'element-plus/dist/locale/zh-cn.mjs'
// import AreaTag from '@/components/base/AreaTag/index.vue'
// import LeftBtn from "@/components/base/pageBtn/
l
eftBtn.vue";
// import RightBtn from "@/components/base/pageBtn/
r
ightBtn.vue";
// import LeftBtn from "@/components/base/pageBtn/
L
eftBtn.vue";
// import RightBtn from "@/components/base/pageBtn/
R
ightBtn.vue";
// import OverviewMainBox from "@/components/base/boxBackground/overviewMainBox.vue";
// import OverviewNormalBox from "@/components/base/boxBackground/overviewNormalBox.vue";
// import AnalysisBox from '@/components/base/boxBackground/analysisBox.vue'
...
...
src/router/index.js
浏览文件 @
277bffd2
...
...
@@ -26,13 +26,11 @@ const routes = [
name
:
"Home"
,
component
:
Home
,
children
:
[
...
fileRoutes
]
},
...
fileRoutes
,
{
path
:
"/dataLibrary"
,
name
:
"DataLibrary"
,
redirect
:
"./dataLibrary/countryBill"
,
component
:
DataLibrary
,
meta
:
{
title
:
'数据资源库'
...
...
@@ -41,6 +39,20 @@ const routes = [
...
dataRoutes
]
},
]
},
// {
// path: "/dataLibrary",
// name: "DataLibrary",
// component: DataLibrary,
// meta: {
// title: '数据资源库'
// },
// children: [
// ...dataRoutes
// ]
// },
];
...
...
src/styles/components/ActionButton/index.vue
浏览文件 @
277bffd2
...
...
@@ -27,8 +27,8 @@
<pre>
{{
`
import LeftBtn from '@/components/base/pageBtn/
l
eftBtn.vue'
import RightBtn from '@/components/base/pageBtn/
r
ightBtn.vue'
import LeftBtn from '@/components/base/pageBtn/
L
eftBtn.vue'
import RightBtn from '@/components/base/pageBtn/
R
ightBtn.vue'
<LeftBtn />
<RightBtn />
...
...
@@ -48,8 +48,8 @@
<
script
setup
>
import
'@/styles/common.scss'
import
LeftBtn
from
'@/components/base/pageBtn/
l
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
r
ightBtn.vue'
import
LeftBtn
from
'@/components/base/pageBtn/
L
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
R
ightBtn.vue'
const
span
=
12
</
script
>
...
...
src/views/bill/billHome/index.vue
浏览文件 @
277bffd2
...
...
@@ -40,7 +40,7 @@
<DivideHeader
id=
"position1"
class=
"divide1"
:titleText=
"'最新动态'"
></DivideHeader>
<div
class=
"home-content-center"
>
<div
class=
"center-top"
>
<
o
verviewMainBox
class=
"box1"
title=
"热门法案"
@
toDetail=
"handleClickToDetail"
>
<
O
verviewMainBox
class=
"box1"
title=
"热门法案"
@
toDetail=
"handleClickToDetail"
>
<template
#
headerIcon
>
<img
style=
"width: 100%; height: 100%"
src=
"./assets/images/box1-header-icon.png"
alt=
""
/>
</
template
>
...
...
@@ -116,7 +116,7 @@
</el-carousel-item>
</el-carousel>
</div>
</
o
verviewMainBox>
</
O
verviewMainBox>
<RiskSignal
:list=
"warningList"
@
more-click=
"handleToMoreRiskSignal"
@
item-click=
"handleClickToDetailO"
riskLevel=
"signalLevel"
postDate=
"signalTime"
name=
"signalTitle"
/>
</div>
...
...
src/views/dataLibrary/decree/index.vue
浏览文件 @
277bffd2
差异被折叠。
点击展开。
src/views/dataLibrary/index.vue
浏览文件 @
277bffd2
<
template
>
<div
class=
"data-library-wrapper"
>
<div
class=
"data-library-header"
>
<
!--
<
div
class=
"data-library-header"
>
<div
class=
"header-left"
>
<div
class=
"icon"
>
<img
src=
"@/assets/icons/overview/logo.png"
alt=
""
>
...
...
@@ -19,7 +19,7 @@
<div
class=
"name"
>
{{
"管理员"
}}
</div>
</div>
</div>
</div>
</div>
-->
<div
class=
"data-library-main"
>
<div
class=
"data-library-sider"
>
<div
class=
"sider-item-box"
v-for=
"item, index in siderList"
:key=
"index"
>
...
...
@@ -96,7 +96,7 @@ const tagsViewStore = useTagsViewStore()
// 在路由全局守卫中处理
router
.
beforeEach
((
to
,
from
,
next
)
=>
{
// 路由允许添加标签(排除掉隐藏的布局页如 /404, /login 等)
if
(
to
.
meta
?.
title
&&
!
to
.
meta
?.
hiddenTag
)
{
if
(
to
.
path
.
indexOf
(
'dataLibrary'
)
>
-
1
)
{
tagsViewStore
.
addView
({
path
:
to
.
path
,
name
:
to
.
name
,
// 对应组件的 name,用于缓存
...
...
src/views/innovationSubject/innovativeInstitutions/components/CooperationCases.vue
浏览文件 @
277bffd2
...
...
@@ -29,8 +29,8 @@
<
script
setup
lang=
"ts"
>
import
{
ref
,
computed
}
from
'vue'
import
LeftBtn
from
'@/components/base/pageBtn/
l
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
r
ightBtn.vue'
import
LeftBtn
from
'@/components/base/pageBtn/
L
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
R
ightBtn.vue'
interface
CaseItem
{
date
:
string
...
...
src/views/innovationSubject/innovativeInstitutions/tabs/OtherInfo.vue
浏览文件 @
277bffd2
...
...
@@ -44,8 +44,8 @@
<
script
setup
lang=
"ts"
>
import
{
ref
,
computed
,
onMounted
,
watch
}
from
'vue'
import
AnalysisBox
from
'@/components/base/boxBackground/analysisBox.vue'
import
LeftBtn
from
'@/components/base/pageBtn/
l
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
r
ightBtn.vue'
import
LeftBtn
from
'@/components/base/pageBtn/
L
eftBtn.vue'
import
RightBtn
from
'@/components/base/pageBtn/
R
ightBtn.vue'
import
AreaTag
from
'@/components/base/AreaTag/index.vue'
import
{
getLabList
,
getPolicyList
}
from
'@/api/innovationSubject/overview.js'
...
...
src/views/marketAccessRestrictions/marketAccessHome/index.vue
浏览文件 @
277bffd2
...
...
@@ -392,8 +392,8 @@
<
script
setup
>
import
{
onMounted
,
ref
,
nextTick
}
from
"vue"
;
import
LeftBtn
from
"@/components/base/pageBtn/
l
eftBtn.vue"
;
import
RightBtn
from
"@/components/base/pageBtn/
r
ightBtn.vue"
;
import
LeftBtn
from
"@/components/base/pageBtn/
L
eftBtn.vue"
;
import
RightBtn
from
"@/components/base/pageBtn/
R
ightBtn.vue"
;
import
RiskSignal
from
"@/components/base/riskSignal/index.vue"
;
import
TipTab
from
"@/components/base/TipTab/index.vue"
import
MessageBubble
from
"@/components/base/messageBubble/index.vue"
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论