Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
a2418c4e
提交
a2418c4e
authored
12月 31, 2025
作者:
coderBryanFu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update
上级
06cad7ab
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
199 行增加
和
173 行删除
+199
-173
index.vue
src/views/bill/billHome/index.vue
+14
-2
index.vue
src/views/comprehensiveSearch/searchResults/index.vue
+96
-146
index.vue
src/views/decree/decreeHome/index.vue
+18
-4
index.vue
src/views/exportControl/index.vue
+18
-5
index.vue
src/views/overView/index.vue
+38
-13
index.vue
src/views/thinkTank/index.vue
+15
-3
没有找到文件。
src/views/bill/billHome/index.vue
浏览文件 @
a2418c4e
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<div
class=
"home-main-header-btn-box"
>
<div
class=
"home-main-header-btn-box"
>
...
@@ -53,7 +53,7 @@
...
@@ -53,7 +53,7 @@
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<!--
<div
class=
"home-main-header-footer"
>
<!--
<div
class=
"home-main-header-footer"
>
...
@@ -1746,6 +1746,18 @@ const footerSelect2 = ref("全部提出议员");
...
@@ -1746,6 +1746,18 @@ const footerSelect2 = ref("全部提出议员");
//
}
//
}
// ]);
// ]);
const
handleSearch
=
()
=>
{
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchBillText
.
value
,
areaName
:
'法案'
}
}
);
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
onMounted
(
async
()
=>
{
onMounted
(
async
()
=>
{
handleGetHylyList
();
handleGetHylyList
();
// 获取风险信号
// 获取风险信号
...
...
src/views/comprehensiveSearch/searchResults/index.vue
浏览文件 @
a2418c4e
...
@@ -6,9 +6,9 @@
...
@@ -6,9 +6,9 @@
<div
class=
"icon"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/search-icon1.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon1.png"
alt=
""
/>
</div>
</div>
<el-input
v-model=
"keyword"
:border=
"false"
style=
"width: 900px; height: 100%"
/>
<el-input
v-model=
"keyword"
:border=
"false"
style=
"width: 900px; height: 100%"
@
keyup
.
enter=
"handleSearch"
/>
</div>
</div>
<div
class=
"right"
>
<div
class=
"right"
@
click=
"handleSearch"
>
<img
src=
"./assets/images/ai-icon.png"
alt=
""
/>
<img
src=
"./assets/images/ai-icon.png"
alt=
""
/>
</div>
</div>
</div>
</div>
...
@@ -89,36 +89,44 @@
...
@@ -89,36 +89,44 @@
<div
class=
"main"
>
<div
class=
"main"
>
<div
class=
"item"
v-for=
"(item, index) in searchResults"
:key=
"index"
>
<div
class=
"item"
v-for=
"(item, index) in searchResults"
:key=
"index"
>
<div
class=
"item-left"
v-if=
"item.img"
>
<div
class=
"item-left"
v-if=
"item.img"
>
<img
:src=
"item.img"
alt=
""
/>
<img
:src=
"item
?
.img"
alt=
""
/>
</div>
</div>
<div
class=
"item-right"
>
<div
class=
"item-right"
>
<div
class=
"title"
v-html=
"
renderContent(item.title)
"
></div>
<div
class=
"title"
v-html=
"
item?.title
"
></div>
<div
class=
"content"
v-html=
"
renderContent(item.description)
"
></div>
<div
class=
"content"
v-html=
"
item?.description
"
></div>
<div
class=
"item-right-footer"
>
<div
class=
"item-right-footer"
>
<div
class=
"time"
>
{{
item
.
date
}}
</div>
<div
class=
"time"
>
{{
item
?.
date
}}
</div>
<div
<div
class=
"tag tag3"
>
class=
"tag tag3"
{{
item
?.
typeStr
}}
>
{{
item
.
typeStr
}}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"footer"
>
<div
class=
"footer"
>
<el-pagination
@
current-change=
"handleChangeCurrentPage"
:size=
"pageSize"
:current-page=
"currentPage"
background
layout=
"prev, pager, next"
:total=
"totalNum"
/>
<el-pagination
@
current-change=
"handleChangeCurrentPage"
:size=
"pageSize"
:current-page=
"currentPage"
background
layout=
"prev, pager, next"
:total=
"totalNum"
/>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
setup
>
<
script
setup
>
import
{
ref
,
onMounted
}
from
"vue"
;
import
{
ref
,
onMounted
}
from
"vue"
;
import
{
useRoute
}
from
"vue-router"
;
import
{
search
}
from
"@/api/comprehensiveSearch/index"
;
import
{
search
}
from
"@/api/comprehensiveSearch/index"
;
import
Img1
from
"./assets/images/img1.png"
;
import
Img1
from
"./assets/images/img1.png"
;
import
Img2
from
"./assets/images/img2.png"
;
import
Img2
from
"./assets/images/img2.png"
;
import
Img3
from
"./assets/images/img3.png"
;
import
Img3
from
"./assets/images/img3.png"
;
import
{
ElMessage
}
from
"element-plus"
;
const
route
=
useRoute
();
const
selectTime
=
ref
(
"全部时间"
);
const
selectTime
=
ref
(
"全部时间"
);
const
selectRelation
=
ref
(
"相关度优先"
);
const
selectRelation
=
ref
(
"相关度优先"
);
...
@@ -164,15 +172,15 @@ const tabList = ref([
...
@@ -164,15 +172,15 @@ const tabList = ref([
}
}
]);
]);
const
activeTabId
=
ref
(
5
);
const
activeTabId
=
ref
(
0
);
const
curArea
=
ref
(
'实体清单'
)
const
curArea
=
ref
(
""
);
const
handleClickTab
=
(
name
,
id
)
=>
{
const
handleClickTab
=
(
name
,
id
)
=>
{
activeTabId
.
value
=
id
;
activeTabId
.
value
=
id
;
curArea
.
value
=
name
curArea
.
value
=
name
;
domains
.
value
=
[]
domains
.
value
=
[]
;
selectedDomains
.
value
=
[]
selectedDomains
.
value
=
[]
;
handleSearch
()
handleSearch
()
;
};
};
const
timeList
=
ref
([
const
timeList
=
ref
([
...
@@ -215,118 +223,7 @@ const relatedSearchList = ref([
...
@@ -215,118 +223,7 @@ const relatedSearchList = ref([
"中国金融制度建立历史"
"中国金融制度建立历史"
]);
]);
const
searchResults
=
ref
([
const
searchResults
=
ref
([]);
{
img
:
Img1
,
title
:
"美元 “上链”!美国联邦金融稳定币监管法案正式生效"
,
content
:
"《指导与建立美国稳定币国家创新法案》落地,要求稳定币发行方以 1:1 比例储备美元现金、短期美债等高度流动资产,建立联邦与州双轨监管体系。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
Img2
,
title
:
"划清监管边界!美国数字资产分类法案众议院高票通过"
,
content
:
"《数字资产市场清晰法案》按去中心化属性划分资产类别,明确 “数字商品” 归 CFTC 监管、“数字资产证” 归 SEC 监管。创设 “金融成熟链机制”。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"划清监管边界!美国数字资产分类法案众议院高票通过"
,
content
:
"《数字资产市场清晰法案》按去中心化属性划分资产类别,明确 “数字商品” 归 CFTC 监管、“数字资产证” 归 SEC 监管。创设 “金融成熟链机制”。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"划清监管边界!美国数字资产分类法案众议院高票通过"
,
content
:
"《数字资产市场清晰法案》按去中心化属性划分资产类别,明确 “数字商品” 归 CFTC 监管、“数字资产证” 归 SEC 监管。创设 “金融成熟链机制”。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"严管金融稳定币发行!美国《STABLE 法案》推进审议"
,
content
:
"法案禁止未授权发行稳定币,违规者将面临每日最高 10 万美元罚款,同时禁止发行方支付利息。要求发行方开展月度审计并公开储备报告,严防关联方资金占用。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"严管金融稳定币发行!美国《STABLE 法案》推进审议"
,
content
:
"法案禁止未授权发行稳定币,违规者将面临每日最高 10 万美元罚款,同时禁止发行方支付利息。要求发行方开展月度审计并公开储备报告,严防关联方资金占用。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"拒绝政府数字货币!美国众议院通过反 CBDC 监控法案"
,
content
:
"《反 CBDC 监控国家法案》以保护金融隐私为核心,拟永久禁止美联储发行数字美元,禁止其向个人直接或间接发行 CBDC,也不得将 CBDC 用于货币政策工具或开展相关。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"拒绝政府数字货币!美国众议院通过反 CBDC 监控法案"
,
content
:
"《反 CBDC 监控国家法案》以保护金融隐私为核心,拟永久禁止美联储发行数字美元,禁止其向个人直接或间接发行 CBDC,也不得将 CBDC 用于货币政策工具或开展相关。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
null
,
title
:
"拒绝政府数字货币!美国众议院通过反 CBDC 监控法案"
,
content
:
"《反 CBDC 监控国家法案》以保护金融隐私为核心,拟永久禁止美联储发行数字美元,禁止其向个人直接或间接发行 CBDC,也不得将 CBDC 用于货币政策工具或开展相关。"
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
},
{
img
:
Img3
,
title
:
"主流加密货币定调!美国 FIT-21 法案确立 “数字商品” 属性"
,
content
:
"《21 世纪金融创新与技术法案》明确比特币、以太坊等主流加密货币归类为 “数字商品”,适用 CFTC 监管框架。建立 SEC 与 CFTC 跨机构协调机制并要求联合发布分类..."
,
time
:
"通过日期:2025-10- 05"
,
tag
:
{
name
:
"科技法案"
,
status
:
3
}
}
]);
const
renderContent
=
str
=>
{
const
renderContent
=
str
=>
{
if
(
str
.
includes
(
"金融"
))
{
if
(
str
.
includes
(
"金融"
))
{
...
@@ -337,12 +234,12 @@ const renderContent = str => {
...
@@ -337,12 +234,12 @@ const renderContent = str => {
const
pageSize
=
ref
(
10
);
const
pageSize
=
ref
(
10
);
const
currentPage
=
ref
(
1
);
const
currentPage
=
ref
(
1
);
const
totalNum
=
ref
(
0
)
const
totalNum
=
ref
(
0
)
;
const
handleChangeCurrentPage
=
page
=>
{
const
handleChangeCurrentPage
=
page
=>
{
currentPage
.
value
=
page
currentPage
.
value
=
page
;
handleSearch
()
handleSearch
()
;
}
}
;
const
domains
=
ref
([
const
domains
=
ref
([
{
{
...
@@ -365,13 +262,23 @@ const handleClickDomains = domain => {
...
@@ -365,13 +262,23 @@ const handleClickDomains = domain => {
};
};
const
handleSearch
=
async
()
=>
{
const
handleSearch
=
async
()
=>
{
const
params
=
{
let
params
;
size
:
pageSize
.
value
,
if
(
activeTabId
.
value
)
{
page
:
currentPage
.
value
,
params
=
{
keyword
:
keyword
.
value
,
// "出口"
size
:
pageSize
.
value
,
type
:
activeTabId
.
value
,
page
:
currentPage
.
value
,
domains
:
selectedDomains
.
value
keyword
:
keyword
.
value
,
// "出口"
};
type
:
activeTabId
.
value
,
domains
:
selectedDomains
.
value
};
}
else
{
params
=
{
size
:
pageSize
.
value
,
page
:
currentPage
.
value
,
keyword
:
keyword
.
value
,
// "出口"
domains
:
selectedDomains
.
value
};
}
try
{
try
{
const
res
=
await
search
(
params
);
const
res
=
await
search
(
params
);
console
.
log
(
"综合搜索结果"
,
res
);
console
.
log
(
"综合搜索结果"
,
res
);
...
@@ -383,13 +290,56 @@ const handleSearch = async () => {
...
@@ -383,13 +290,56 @@ const handleSearch = async () => {
selected
:
false
selected
:
false
}));
}));
}
}
searchResults
.
value
=
res
.
data
.
records
searchResults
.
value
=
res
.
data
.
records
;
totalNum
.
value
=
res
.
data
.
total
totalNum
.
value
=
res
.
data
.
total
;
if
(
totalNum
.
value
)
{
ElMessage
.
success
(
`共计搜索到
${
totalNum
.
value
}
条结果`
);
}
else
{
ElMessage
.
warning
(
`共计搜索到
${
totalNum
.
value
}
条结果`
);
}
}
else
{
ElMessage
.
warning
(
"当前条件共搜索到0条结果!"
);
}
}
}
catch
(
error
)
{}
}
catch
(
error
)
{}
};
};
handleSearch
();
onMounted
(()
=>
{
if
(
route
.
query
&&
route
.
query
.
searchText
)
{
keyword
.
value
=
route
.
query
.
searchText
;
}
if
(
route
.
query
&&
route
.
query
.
areaName
)
{
curArea
.
value
=
route
.
query
.
areaName
;
switch
(
curArea
.
value
)
{
case
"法案"
:
activeTabId
.
value
=
1
;
break
;
case
"政令"
:
activeTabId
.
value
=
2
;
break
;
case
"智库"
:
activeTabId
.
value
=
3
;
break
;
case
"智库报告"
:
activeTabId
.
value
=
4
;
break
;
case
"社媒"
:
activeTabId
.
value
=
9
;
break
;
case
"人物"
:
activeTabId
.
value
=
6
;
break
;
case
"机构"
:
activeTabId
.
value
=
7
;
break
;
case
"新闻"
:
activeTabId
.
value
=
8
;
break
;
default
:
activeTabId
.
value
=
5
;
}
}
handleSearch
();
});
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
...
@@ -661,7 +611,7 @@ handleSearch();
...
@@ -661,7 +611,7 @@ handleSearch();
}
}
.main
{
.main
{
width
:
913px
;
width
:
913px
;
height
:
1464px
;
//
height: 1464px;
margin-top
:
36px
;
margin-top
:
36px
;
margin-left
:
264px
;
margin-left
:
264px
;
.item
{
.item
{
...
...
src/views/decree/decreeHome/index.vue
浏览文件 @
a2418c4e
...
@@ -2,12 +2,12 @@
...
@@ -2,12 +2,12 @@
<div
class=
"home-wrapper"
>
<div
class=
"home-wrapper"
>
<div
class=
"search-header"
v-show=
"isShow"
>
<div
class=
"search-header"
v-show=
"isShow"
>
<div
class=
"home-main-header-center"
>
<div
class=
"home-main-header-center"
>
<el-input
v-model=
"
inpu
t"
style=
"width: 680px; height: 100%"
placeholder=
"搜索科技政令"
/>
<el-input
v-model=
"
searchDecreeTex
t"
style=
"width: 680px; height: 100%"
placeholder=
"搜索科技政令"
/>
<div
class=
"search"
>
<div
class=
"search"
>
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<div
class=
"home-main-header-btn-box"
>
<div
class=
"home-main-header-btn-box"
>
...
@@ -47,12 +47,12 @@
...
@@ -47,12 +47,12 @@
<div
class=
"header-item"
>
行政令
</div>
<div
class=
"header-item"
>
行政令
</div>
</div>
</div>
<div
class=
"home-main-header-center"
v-show=
"!isShow"
>
<div
class=
"home-main-header-center"
v-show=
"!isShow"
>
<el-input
v-model=
"
inpu
t"
style=
"width: 838px; height: 100%"
placeholder=
"搜索科技政令"
/>
<el-input
v-model=
"
searchDecreeTex
t"
style=
"width: 838px; height: 100%"
placeholder=
"搜索科技政令"
/>
<div
class=
"search"
>
<div
class=
"search"
>
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<!--
<div
class=
"home-main-header-footer"
v-show=
"!isShow"
>
<!--
<div
class=
"home-main-header-footer"
v-show=
"!isShow"
>
...
@@ -1273,6 +1273,20 @@ const handleSwithCurDecree = name => {
...
@@ -1273,6 +1273,20 @@ const handleSwithCurDecree = name => {
}
}
};
};
// 搜索
const
searchDecreeText
=
ref
(
''
)
const
handleSearch
=
()
=>
{
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchDecreeText
.
value
,
areaName
:
'政令'
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
onMounted
(
async
()
=>
{
onMounted
(
async
()
=>
{
handleGetAreaList
();
handleGetAreaList
();
handleGetDecreeOrderList
();
handleGetDecreeOrderList
();
...
...
src/views/exportControl/index.vue
浏览文件 @
a2418c4e
...
@@ -11,18 +11,18 @@
...
@@ -11,18 +11,18 @@
<div
class=
"home-main-header"
>
<div
class=
"home-main-header"
>
<div
class=
"home-main-header-center"
>
<div
class=
"home-main-header-center"
>
<!--
<el-input
<!--
<el-input
v-model=
"search
Key
"
v-model=
"search
ExportControlText
"
style=
"width: 100%; height: 48px"
style=
"width: 100%; height: 48px"
size=
"large"
size=
"large"
placeholder=
"搜索出口管制调查"
placeholder=
"搜索出口管制调查"
:suffix-icon=
"Search"
:suffix-icon=
"Search"
/>
-->
/>
-->
<el-input
v-model=
"search
Key
"
style=
"width: 800px; height: 100%"
placeholder=
"搜索出口管制调查"
/>
<el-input
v-model=
"search
ExportControlText
"
style=
"width: 800px; height: 100%"
placeholder=
"搜索出口管制调查"
/>
<div
class=
"search"
>
<div
class=
"search"
>
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"@/assets/icons/search-icon.png"
alt=
""
/>
<img
src=
"@/assets/icons/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<!--
<div
class=
"home-main-header-footer"
>
<!--
<div
class=
"home-main-header-footer"
>
...
@@ -131,7 +131,7 @@
...
@@ -131,7 +131,7 @@
<div
<div
class=
"box1-top-content-item-tags"
class=
"box1-top-content-item-tags"
v-for=
"(domainItem, index) in item.domains"
v-for=
"(domainItem, index) in item.domains"
:key=
"
domainItem
"
:key=
"
index
"
>
>
<el-tag
:type=
"getTagType(domainItem)"
>
{{
domainItem
}}
</el-tag>
<el-tag
:type=
"getTagType(domainItem)"
>
{{
domainItem
}}
</el-tag>
</div>
</div>
...
@@ -1064,7 +1064,7 @@ const handleToEntityListNoId = item => {
...
@@ -1064,7 +1064,7 @@ const handleToEntityListNoId = item => {
const
billList
=
ref
([]);
const
billList
=
ref
([]);
const
curBillListIndex
=
ref
(
0
);
const
curBillListIndex
=
ref
(
0
);
const
search
Key
=
ref
(
""
);
const
search
ExportControlText
=
ref
(
""
);
const
infoListColor
=
ref
([
"rgba(206, 79, 81, 1)"
,
"rgba(132, 136, 142, 1)"
,
"rgba(132, 136, 142, 1)"
,
"rgba(132, 136, 142, 1)"
]);
const
infoListColor
=
ref
([
"rgba(206, 79, 81, 1)"
,
"rgba(132, 136, 142, 1)"
,
"rgba(132, 136, 142, 1)"
,
"rgba(132, 136, 142, 1)"
]);
const
infoList
=
ref
([]);
const
infoList
=
ref
([]);
...
@@ -1649,6 +1649,19 @@ const handleSwithCurPolicy = name => {
...
@@ -1649,6 +1649,19 @@ const handleSwithCurPolicy = name => {
}
}
};
};
const
handleSearch
=
()
=>
{
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchExportControlText
.
value
,
areaName
:
'实体清单'
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
onMounted
(
async
()
=>
{
onMounted
(
async
()
=>
{
handleGetHylyList
();
handleGetHylyList
();
let
chart1
=
getMultiLineChart
(
chart1Data
.
value
.
title
,
chart1Data
.
value
.
data
[
0
].
value
,
chart1Data
.
value
.
data
[
1
].
value
);
let
chart1
=
getMultiLineChart
(
chart1Data
.
value
.
title
,
chart1Data
.
value
.
data
[
0
].
value
,
chart1Data
.
value
.
data
[
1
].
value
);
...
...
src/views/overView/index.vue
浏览文件 @
a2418c4e
...
@@ -7,9 +7,9 @@
...
@@ -7,9 +7,9 @@
<div
class=
"header-search-box"
>
<div
class=
"header-search-box"
>
<div
class=
"header-search-left"
>
<div
class=
"header-search-left"
>
<div
class=
"input-box"
>
<div
class=
"input-box"
>
<el-input
v-model=
"searchText"
style=
"width: 324px"
/>
<el-input
v-model=
"searchText"
style=
"width: 324px"
@
keyup
.
enter=
"handleSearch"
/>
</div>
</div>
<div
class=
"icon"
>
<div
class=
"icon"
@
click=
"handleSearch"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
</div>
</div>
...
@@ -52,20 +52,27 @@
...
@@ -52,20 +52,27 @@
}}
}}
</div>
</div>
</div>
</div>
<img
class=
"item-card-content-title-image"
:src=
"organizationNews[organizationNewsShow].image"
<img
alt=
""
/>
class=
"item-card-content-title-image"
:src=
"organizationNews[organizationNewsShow].image"
alt=
""
/>
</div>
</div>
<div
class=
"item-header-divider"
></div>
<div
class=
"item-header-divider"
></div>
<div
class=
"item-card-content-text"
>
<div
class=
"item-card-content-text"
>
{{
organizationNews
[
organizationNewsShow
].
content
}}
{{
organizationNews
[
organizationNewsShow
].
content
}}
</div>
</div>
<div
style=
"display: flex; margin-top: 30px"
>
<div
style=
"display: flex; margin-top: 30px"
>
<div
class=
"item-card-content-tag"
v-for=
"(tag, index) in organizationNews[organizationNewsShow].tag"
<div
:key=
"index"
:style=
"
{
class=
"item-card-content-tag"
v-for=
"(tag, index) in organizationNews[organizationNewsShow].tag"
:key=
"index"
:style=
"
{
color: tag.textColor,
color: tag.textColor,
background: tag.color,
background: tag.color,
border: `1px solid ${tag.textColor}`
border: `1px solid ${tag.textColor}`
}">
}"
>
{{
tag
.
text
}}
{{
tag
.
text
}}
</div>
</div>
</div>
</div>
...
@@ -107,10 +114,13 @@
...
@@ -107,10 +114,13 @@
<div
style=
"padding: 30px 23px; height: 400px"
>
<div
style=
"padding: 30px 23px; height: 400px"
>
<div
class=
"waring-item"
v-for=
"(item, index) in warningList"
:key=
"index"
>
<div
class=
"waring-item"
v-for=
"(item, index) in warningList"
:key=
"index"
>
<div
style=
"display: flex; height: 47px"
>
<div
style=
"display: flex; height: 47px"
>
<div
class=
"waring-status"
:style=
"
{
<div
color: item.status === 0 ? '#CE4F51' : item.status === 1 ? '#FA8C16' : '#52C41A',
class=
"waring-status"
backgroundColor: item.status === 0 ? '#FFF1F0' : item.status === 1 ? '#FFF7E6' : '#F6FFED'
:style=
"
{
}">
color: item.status === 0 ? '#CE4F51' : item.status === 1 ? '#FA8C16' : '#52C41A',
backgroundColor: item.status === 0 ? '#FFF1F0' : item.status === 1 ? '#FFF7E6' : '#F6FFED'
}"
>
{{
item
.
status
===
0
?
"特别重大"
:
item
.
status
===
1
?
"重大风险"
:
"一般风险"
}}
{{
item
.
status
===
0
?
"特别重大"
:
item
.
status
===
1
?
"重大风险"
:
"一般风险"
}}
</div>
</div>
<div
class=
"waring-text"
>
<div
class=
"waring-text"
>
...
@@ -147,7 +157,7 @@
...
@@ -147,7 +157,7 @@
{{
item
.
title
}}
{{
item
.
title
}}
</div>
</div>
<div
class=
"news-box-title-small"
>
<div
class=
"news-box-title-small"
>
{{
item
.
time
+
' · '
+
item
.
publier
}}
{{
item
.
time
+
" · "
+
item
.
publier
}}
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -196,6 +206,16 @@ import strengthComparison from "./component/strengthComparison.vue";
...
@@ -196,6 +206,16 @@ import strengthComparison from "./component/strengthComparison.vue";
import
router
from
"@/router"
;
import
router
from
"@/router"
;
const
searchText
=
ref
(
""
);
const
searchText
=
ref
(
""
);
const
handleSearch
=
()
=>
{
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchText
.
value
,
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
// 跳转到综合检索页面
// 跳转到综合检索页面
const
handleToSearch
=
()
=>
{
const
handleToSearch
=
()
=>
{
...
@@ -414,7 +434,7 @@ function changeOrganizationNews(type) {
...
@@ -414,7 +434,7 @@ function changeOrganizationNews(type) {
:
(
organizationNewsShow
.
value
=
organizationNewsShow
.
value
+
1
);
:
(
organizationNewsShow
.
value
=
organizationNewsShow
.
value
+
1
);
}
}
}
}
onMounted
(()
=>
{
});
onMounted
(()
=>
{});
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
...
@@ -464,6 +484,11 @@ onMounted(() => { });
...
@@ -464,6 +484,11 @@ onMounted(() => { });
.icon
{
.icon
{
width
:
36px
;
width
:
36px
;
height
:
36px
;
height
:
36px
;
border-radius
:
4px
;
cursor
:
pointer
;
&
:hover
{
background
:
rgba
(
255
,
255
,
255
,
0
.5
);
}
img
{
img
{
width
:
100%
;
width
:
100%
;
...
...
src/views/thinkTank/index.vue
浏览文件 @
a2418c4e
...
@@ -10,12 +10,12 @@
...
@@ -10,12 +10,12 @@
<div
class=
"header-item"
>
科技智库
</div>
<div
class=
"header-item"
>
科技智库
</div>
</div>
</div>
<div
class=
"home-main-header-center"
>
<div
class=
"home-main-header-center"
>
<el-input
v-model=
"
inpu
t"
style=
"width: 838px; height: 100%"
placeholder=
"搜索科技人物及观点"
/>
<el-input
v-model=
"
searchThinktankTex
t"
style=
"width: 838px; height: 100%"
placeholder=
"搜索科技人物及观点"
/>
<div
class=
"search"
>
<div
class=
"search"
>
<div
class=
"search-icon"
>
<div
class=
"search-icon"
>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
<img
src=
"./assets/images/search-icon.png"
alt=
""
/>
</div>
</div>
<div
class=
"search-text"
>
搜索
</div>
<div
class=
"search-text"
@
click=
"handleSearch"
>
搜索
</div>
</div>
</div>
</div>
</div>
<!--
<div
class=
"home-main-header-footer"
>
<!--
<div
class=
"home-main-header-footer"
>
...
@@ -567,7 +567,7 @@ import Box1Logo from "./assets/images/box1-logo.png";
...
@@ -567,7 +567,7 @@ import Box1Logo from "./assets/images/box1-logo.png";
import
{
setCanvasCreator
}
from
"echarts/core"
;
import
{
setCanvasCreator
}
from
"echarts/core"
;
import
{
ElMessage
}
from
"element-plus"
;
import
{
ElMessage
}
from
"element-plus"
;
const
inpu
t
=
ref
(
""
);
//搜索科技人物及观点
const
searchThinktankTex
t
=
ref
(
""
);
//搜索科技人物及观点
// 智库列表
// 智库列表
const
cardList
=
ref
([
const
cardList
=
ref
([
// {
// {
...
@@ -1566,6 +1566,18 @@ const handleToReportDetail = id => {
...
@@ -1566,6 +1566,18 @@ const handleToReportDetail = id => {
window
.
open
(
route
.
href
,
"_blank"
);
window
.
open
(
route
.
href
,
"_blank"
);
};
};
const
handleSearch
=
()
=>
{
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchThinktankText
.
value
,
areaName
:
'智库'
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
}
onMounted
(
async
()
=>
{
onMounted
(
async
()
=>
{
handleGetThinkTankList
();
handleGetThinkTankList
();
// 定义一个定时器,每隔2秒轮播一次
// 定义一个定时器,每隔2秒轮播一次
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论