Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
0a485467
提交
0a485467
authored
4月 08, 2026
作者:
刘宇琪
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'pre' into liuyuqi
上级
a7549613
199fd9dd
流水线
#352
已通过 于阶段
in 1 分 29 秒
变更
21
流水线
1
全部展开
显示空白字符变更
内嵌
并排
正在显示
21 个修改的文件
包含
139 行增加
和
177 行删除
+139
-177
index.js
src/router/index.js
+2
-0
index.vue
src/views/coopRestriction/index.vue
+6
-6
index.vue
src/views/decree/decreeHome/index.vue
+27
-90
index.vue
src/views/decree/decreeLayout/index.vue
+5
-2
index.vue
src/views/decree/decreeLayout/overview/background/index.vue
+2
-6
index.vue
src/views/scientificFunding/components/dataSub/index.vue
+0
-0
index.vue
src/views/scientificFunding/components/resLib/index.vue
+8
-2
index.vue
src/views/scientificFunding/index.vue
+2
-2
index.vue
src/views/thinkTank/CongressHearingView/index.vue
+3
-3
index.vue
src/views/thinkTank/ReportDetail/index.vue
+5
-0
index.vue
src/views/thinkTank/ReportDetail/reportAnalysis/index.vue
+3
-3
index.vue
src/views/thinkTank/SurveyProjectView/index.vue
+22
-4
index.vue
...k/ThinkTankDetail/thinkDynamics/CongressHearing/index.vue
+3
-8
index.vue
...nkTank/ThinkTankDetail/thinkDynamics/SurveyForm/index.vue
+4
-4
index.vue
...k/ThinkTankDetail/thinkDynamics/ThinkTankReport/index.vue
+3
-4
index.vue
src/views/thinkTank/ThinkTankDetail/thinkInfo/index.vue
+2
-2
HomeMainFooterMain.vue
src/views/thinkTank/components/HomeMainFooterMain.vue
+2
-3
HomeMainFooterSurvey.vue
src/views/thinkTank/components/HomeMainFooterSurvey.vue
+2
-3
ThinkTankCongressHearingOverview.vue
...thinkTank/components/ThinkTankCongressHearingOverview.vue
+24
-24
ThinkTankPolicyAdviceOverview.vue
...ws/thinkTank/components/ThinkTankPolicyAdviceOverview.vue
+12
-10
index.vue
src/views/thinkTank/index.vue
+2
-1
没有找到文件。
src/router/index.js
浏览文件 @
0a485467
...
...
@@ -72,7 +72,9 @@ router.beforeEach((to, from, next) => {
const
storageKey
=
to
.
meta
.
titleStorageKey
||
"curTabName"
;
// 新开页签时 sessionStorage 不共享,优先用 query 带过来的 title/name
const
queryTitle
=
(
to
.
query
&&
(
to
.
query
.
title
||
to
.
query
.
name
))
?
String
(
to
.
query
.
title
||
to
.
query
.
name
)
:
""
;
if
(
!
to
.
path
.
startsWith
(
'/decreeLayout/'
))
{
document
.
title
=
queryTitle
||
window
.
sessionStorage
.
getItem
(
storageKey
)
||
to
.
meta
.
title
;
}
}
else
{
document
.
title
=
to
.
meta
.
title
...
...
src/views/coopRestriction/index.vue
浏览文件 @
0a485467
...
...
@@ -15,8 +15,8 @@
<div
class=
"main-content"
ref=
"homeMainRef"
:class=
"
{ 'scroll-main': isShow }">
<div
class=
"home-top-bg"
></div>
<!-- 搜索栏部分 -->
<SearchContainer
v-if=
"homeMainRef"
:countInfo=
"cooperationCountInfo"
placeholder=
"搜索合作限制
"
:containerRef=
"homeMainRef"
areaName=
"
"
/>
<SearchContainer
v-if=
"homeMainRef"
placeholder=
"搜索合作限制"
:containerRef=
"homeMainRef"
areaName=
"
"
style=
"height: fit-content
"
/>
<!-- 最新动态 -->
<div
class=
"newdata"
id=
"position1"
>
...
...
@@ -164,7 +164,7 @@ const handleToPosi = id => {
background-size
:
100%
100%
;
position
:
absolute
;
width
:
100%
;
height
:
100%
;
z-index
:
-100
;
top
:
-64px
;
}
...
...
@@ -177,7 +177,7 @@ const handleToPosi = id => {
.search
{
width
:
960px
;
height
:
168px
;
margin
:
0
auto
68px
auto
;
.search-main
{
...
...
@@ -368,12 +368,12 @@ const handleToPosi = id => {
.reslib
{
width
:
1600px
;
height
:
1633px
;
margin
:
0
auto
0px
auto
;
.reslib-main
{
width
:
1600px
;
height
:
1565px
;
margin-top
:
26px
;
}
}
...
...
src/views/decree/decreeHome/index.vue
浏览文件 @
0a485467
...
...
@@ -408,17 +408,12 @@
<div
class=
"title"
>
{{ "科技领域" }}
</div>
</div>
<div
class=
"select-main"
>
<div
class=
"checkbox-group"
>
<el-checkbox
v-model=
"activeAreaList"
label=
"all"
style=
"width: 100px"
class=
"filter-checkbox"
@
change=
"checked => handleAreaChange('all', checked)"
>
{{ "全部领域" }}
</el-checkbox>
<el-checkbox
v-for=
"area in areaList"
:key=
"area.id"
v-model=
"activeAreaList"
:label=
"area.id"
style=
"width: 100px"
class=
"filter-checkbox"
@
change=
"checked => handleAreaChange(area.id, checked)"
>
<el-checkbox-group
class=
"checkbox-group"
v-model=
"activeAreaList"
@
change=
"handleAreaChange"
>
<el-checkbox
label=
""
class=
"filter-checkbox"
>
{{ "全部领域" }}
</el-checkbox>
<el-checkbox
v-for=
"area in areaList"
:key=
"area.id"
:label=
"area.id"
class=
"filter-checkbox"
>
{{ area.name }}
</el-checkbox>
</
div
>
</
el-checkbox-group
>
</div>
</div>
<div
class=
"select-box"
>
...
...
@@ -427,13 +422,11 @@
<div
class=
"title"
>
{{ "发布时间" }}
</div>
</div>
<div
class=
"select-main"
>
<div
class=
"checkbox-group"
>
<el-checkbox
v-for=
"time in pubTime"
:key=
"time.id"
v-model=
"activePubTime"
:label=
"time.id"
style=
"width: 100px"
class=
"filter-checkbox"
@
change=
"checked => handlePubTimeChange(time.id, checked)"
>
<el-checkbox-group
class=
"checkbox-group"
v-model=
"activePubTime"
@
change=
"handlePubTimeChange"
>
<el-checkbox
v-for=
"time in pubTime"
:key=
"time.id"
:label=
"time.id"
class=
"filter-checkbox"
>
{{ time.name }}
</el-checkbox>
</
div
>
</
el-checkbox-group
>
</div>
</div>
</div>
...
...
@@ -623,7 +616,6 @@ const handleClickOrder = () => {
// 跳转政令详情
const
onNavigateToDetail
=
(
item
)
=>
{
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
name
||
item
.
title
||
item
.
signalTitle
);
const
route
=
router
.
resolve
({
path
:
"/decreeLayout"
,
query
:
{
id
:
item
.
orderId
||
item
.
id
}
...
...
@@ -1117,7 +1109,7 @@ const handleChangeCheckedDecreeType = () => {
};
const
pubTime
=
ref
([
{
id
:
"
all
"
,
name
:
"全部时间"
},
{
id
:
""
,
name
:
"全部时间"
},
{
id
:
"2026"
,
name
:
"2026年"
},
{
id
:
"2025"
,
name
:
"2025年"
},
{
id
:
"2024"
,
name
:
"2024年"
},
...
...
@@ -1128,41 +1120,26 @@ const pubTime = ref([
]);
const
activePubTime
=
ref
([
"2026"
]);
// 处理发布时间全选逻辑
const
handlePubTimeChange
=
(
id
,
checked
)
=>
{
const
allIds
=
pubTime
.
value
.
filter
(
item
=>
item
.
id
!==
"all"
).
map
(
item
=>
item
.
id
);
if
(
id
===
"all"
)
{
// 点击全选:选中所有或清空所有
activePubTime
.
value
=
checked
?
[
"all"
,
...
allIds
]
:
[];
const
handlePubTimeChange
=
(
event
)
=>
{
if
(
event
.
length
&&
event
[
event
.
length
-
1
]
!==
""
)
{
activePubTime
.
value
=
event
.
filter
(
item
=>
item
!==
""
);
}
else
{
const
selectedIds
=
activePubTime
.
value
.
filter
(
itemId
=>
itemId
!==
"all"
);
const
isAllSelected
=
selectedIds
.
length
===
allIds
.
length
;
if
(
isAllSelected
&&
!
activePubTime
.
value
.
includes
(
"all"
))
{
// 手动选中了所有年份,自动勾选全选
activePubTime
.
value
=
[
"all"
,
...
allIds
];
}
else
if
(
!
isAllSelected
&&
activePubTime
.
value
.
includes
(
"all"
))
{
// 取消某个选项,取消全选状态
activePubTime
.
value
=
selectedIds
;
}
activePubTime
.
value
=
[
""
];
}
currentPage
.
value
=
1
;
handleGetDecreeOrderList
();
};
const
handleAreaChange
=
(
id
,
checked
)
=>
{
const
allIds
=
areaList
.
value
.
map
(
item
=>
item
.
id
);
if
(
id
===
"all"
)
{
activeAreaList
.
value
=
checked
?
[
"all"
,
...
allIds
]
:
[];
const
activeAreaList
=
ref
([
""
]);
const
handleAreaChange
=
(
event
)
=>
{
if
(
event
.
length
&&
event
[
event
.
length
-
1
]
!==
""
)
{
activeAreaList
.
value
=
event
.
filter
(
item
=>
item
!==
""
);
}
else
{
const
selectedIds
=
activeAreaList
.
value
.
filter
(
itemId
=>
itemId
!==
"all"
);
const
isAllSelected
=
selectedIds
.
length
===
allIds
.
length
;
if
(
isAllSelected
&&
!
activeAreaList
.
value
.
includes
(
"all"
))
{
activeAreaList
.
value
=
[
"all"
,
...
allIds
];
}
else
if
(
!
isAllSelected
&&
activeAreaList
.
value
.
includes
(
"all"
))
{
activeAreaList
.
value
=
selectedIds
;
}
activeAreaList
.
value
=
[
""
];
}
currentPage
.
value
=
1
;
handleGetDecreeOrderList
();
};
const
areaList
=
ref
([
...
...
@@ -1171,7 +1148,7 @@ const areaList = ref([
// { id: "通信网络", name: "通信网络" },
// { id: "量子科技", name: "量子科技" }
]);
const
activeAreaList
=
ref
([
"1"
]);
// 修改获取科技领域列表,添加全选选项
const
handleGetAreaList
=
async
()
=>
{
try
{
...
...
@@ -1179,8 +1156,6 @@ const handleGetAreaList = async () => {
console
.
log
(
"行业领域列表"
,
res
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
areaList
.
value
=
res
.
data
;
// 设置默认全选
activeAreaList
.
value
=
[
"all"
,
...
res
.
data
.
map
(
item
=>
item
.
id
)];
// 获取列表后重新查询
handleGetDecreeOrderList
();
}
...
...
@@ -1193,37 +1168,14 @@ const decreeList = ref([]);
// 修改请求方法,处理全选时不传参数的情况
const
handleGetDecreeOrderList
=
async
()
=>
{
// 处理科技领域:如果包含 all 或全选,则 researchTypeIds 为空(不传)
let
p1
=
""
;
const
allAreaIds
=
areaList
.
value
.
map
(
item
=>
item
.
id
);
const
selectedAreaIds
=
activeAreaList
.
value
.
filter
(
id
=>
id
!==
"all"
);
if
(
!
activeAreaList
.
value
.
includes
(
"all"
)
&&
selectedAreaIds
.
length
>
0
&&
selectedAreaIds
.
length
<
allAreaIds
.
length
)
{
p1
=
selectedAreaIds
.
join
(
","
);
}
// 其他情况(包含all、长度为0、全部选中)p1保持为空,即不传researchTypeIds
// 处理发布时间:如果包含 all 或全选,则 years 为空(不传)
let
p2
=
""
;
const
allPubTimeIds
=
pubTime
.
value
.
filter
(
item
=>
item
.
id
!==
"all"
).
map
(
item
=>
item
.
id
);
const
selectedPubTimeIds
=
activePubTime
.
value
.
filter
(
id
=>
id
!==
"all"
);
if
(
!
activePubTime
.
value
.
includes
(
"all"
)
&&
selectedPubTimeIds
.
length
>
0
&&
selectedPubTimeIds
.
length
<
allPubTimeIds
.
length
)
{
p2
=
selectedPubTimeIds
.
join
(
","
);
}
// 其他情况(包含all、长度为0、全部选中)p2保持为空,即不传years
const
params
=
{
currentPage
:
currentPage
.
value
,
pageSize
:
pageSize
.
value
,
researchTypeIds
:
p1
,
// 全选时不传(为空)
researchTypeIds
:
activeAreaList
.
value
.
join
(
','
)
||
null
,
sortFun
:
isSort
.
value
,
isCN
:
isChina
.
value
?
1
:
0
,
proposeName
:
searchType
.
value
,
years
:
p2
,
// 全选时不传(为空)
years
:
activePubTime
.
value
.
join
(
','
)
||
null
,
typeIds
:
checkedDecreeType
.
value
.
toString
()
};
...
...
@@ -1253,7 +1205,7 @@ const handleGetDecreeOrderList = async () => {
}
};
watch
([
activePubTime
,
activeAreaList
,
checkedGovIns
,
isSort
,
isChina
,
searchType
],
val
=>
{
watch
([
checkedGovIns
,
isSort
,
isChina
,
searchType
],
val
=>
{
// 切换页码到第一页
currentPage
.
value
=
1
;
handleGetDecreeOrderList
();
...
...
@@ -1268,21 +1220,6 @@ const handleSwithCurDecree = name => {
}
};
// 搜索
const
searchDecreeText
=
ref
(
""
);
const
handleSearch
=
()
=>
{
window
.
sessionStorage
.
setItem
(
"curTabName"
,
`搜索-
${
searchDecreeText
.
value
}
`
);
const
curRoute
=
router
.
resolve
({
path
:
"/searchResults"
,
query
:
{
searchText
:
searchDecreeText
.
value
,
areaName
:
"政令"
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
};
// 关键机构
const
keyOrganizationList
=
ref
([]);
const
onKeyOrganization
=
async
(
event
)
=>
{
...
...
@@ -2477,7 +2414,7 @@ onMounted(async () => {
gap
:
8px
4px
;
.filter-checkbox
{
width
:
1
6
0px
;
width
:
1
0
0px
;
height
:
24px
;
margin-right
:
0
!
important
;
}
...
...
src/views/decree/decreeLayout/index.vue
浏览文件 @
0a485467
...
...
@@ -213,14 +213,18 @@ const handleClickMainHeaderBtn = item => {
// 获取全局信息
const
summaryInfo
=
ref
({});
let
pageTitle
=
"科技政令主页"
const
handleGetSummary
=
async
()
=>
{
try
{
const
res
=
await
getDecreeSummary
({
id
:
route
.
query
.
id
});
console
.
log
(
"全局信息"
,
res
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
summaryInfo
.
value
=
res
.
data
;
pageTitle
=
res
.
data
.
name
||
'科技政令主页'
;
}
}
catch
(
error
)
{
}
}
catch
(
error
)
{}
document
.
title
=
pageTitle
;
window
.
sessionStorage
.
setItem
(
"curTabName"
,
pageTitle
);
};
// 获取报告原文
...
...
@@ -280,7 +284,6 @@ const handleAnalysisClick = () => {
onMounted
(()
=>
{
handleGetSummary
();
console
.
log
(
route
.
path
);
if
(
route
.
path
===
"/decreeLayout/overview/introduction"
||
route
.
path
===
"/decreeLayout/overview/background"
||
route
.
path
===
"/decreeLayout/overview/measures"
)
{
activeTitle
.
value
=
"政令概况"
;
}
else
if
(
route
.
path
===
"/decreeLayout/deepDig"
)
{
...
...
src/views/decree/decreeLayout/overview/background/index.vue
浏览文件 @
0a485467
...
...
@@ -78,9 +78,7 @@
<div
class=
"time-line-icon"
>
<img
style=
"width: 100%; height: 100%;"
:src=
"item.orgImage || DefaultIcon1"
alt=
""
>
</div>
<div
class=
"time-line-name text-click-hover"
@
click=
"handleToInstitution(item)"
>
{{
item.proposeOrgName
}}
</div>
<div
class=
"time-line-name text-click-hover"
@
click=
"handleToInstitution(item)"
>
{{ item.proposeOrgName }}
</div>
</div>
<div
class=
"timeline-content"
@
click=
"handleClickDecree(item)"
>
{{ item.describe }}
</div>
</div>
...
...
@@ -174,6 +172,7 @@ const handleGetPrev = async () => {
};
// 跳转行政机构主页
const
handleToInstitution
=
item
=>
{
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
proposeOrgName
);
const
curRoute
=
router
.
resolve
({
path
:
"/institution"
,
query
:
{
...
...
@@ -225,7 +224,6 @@ const handleGetLaws = async () => {
};
// 跳转科技法案详情页
const
handleClickBull
=
decree
=>
{
window
.
sessionStorage
.
setItem
(
"billId"
,
decree
.
billId
);
window
.
sessionStorage
.
setItem
(
"curTabName"
,
decree
.
title
);
const
route
=
router
.
resolve
({
path
:
"/billLayout"
,
...
...
@@ -233,8 +231,6 @@ const handleClickBull = decree => {
billId
:
decree
.
billId
}
});
console
.
log
(
route
);
window
.
open
(
route
.
href
,
"_blank"
);
};
...
...
src/views/scientificFunding/components/dataSub/index.vue
浏览文件 @
0a485467
差异被折叠。
点击展开。
src/views/scientificFunding/components/resLib/index.vue
浏览文件 @
0a485467
...
...
@@ -14,7 +14,7 @@
<div
class=
"select-box"
>
<el-select
v-model=
"sortModel"
class=
"resource-library-sort-select"
placeholder=
"发布时间"
style=
"width: 120px"
:teleported=
"true"
placement=
"bottom-start"
:popper-options=
"resourceLibrarySortPopperOptions"
@
change=
"handleResourceLibrarySortChange"
>
@
change=
"handleResourceLibrarySortChange"
popper-class=
"datasub-select-popper"
>
<template
#
prefix
>
<img
v-if=
"sortModel !== true"
src=
"@/views/thinkTank/ThinkTankDetail/thinkDynamics/images/image down.png"
class=
"resource-library-sort-prefix-img"
alt=
""
@
click
.
stop=
"toggleResourceLibrarySortPrefix"
/>
...
...
@@ -322,7 +322,9 @@ onMounted(async () => {
margin
:
0
;
padding
:
0
;
}
:global
(
.datasub-select-popper
.el-select-dropdown__item
)
{
padding-left
:
20px
;
}
.reslib-page
{
width
:
1600px
;
...
...
@@ -459,6 +461,10 @@ onMounted(async () => {
height
:
24px
;
margin-right
:
0
!
important
;
}
:deep
(
.el-checkbox__label
)
{
font-size
:
16px
;
}
}
}
}
...
...
src/views/scientificFunding/index.vue
浏览文件 @
0a485467
...
...
@@ -14,8 +14,8 @@
<div
class=
"main-content"
ref=
"containerRef"
>
<div
class=
"home-top-bg"
></div>
<!-- 搜索栏部分 -->
<SearchContainer
style=
"margin-bottom:
48px; height: fit-content"
v-if=
"containerRef"
:countInfo=
"countInfo
"
placeholder=
"搜索科研资助实体、资助记录"
:containerRef=
"containerRef"
areaName=
""
/>
<SearchContainer
style=
"margin-bottom:
52px; height: fit-content"
v-if=
"containerRef"
placeholder=
"搜索科研资助实体、资助记录
"
:containerRef=
"containerRef"
areaName=
""
/>
<!--
<div
class=
"search"
>
-->
<!--
<div
class=
"search-main"
>
...
...
src/views/thinkTank/CongressHearingView/index.vue
浏览文件 @
0a485467
...
...
@@ -1611,9 +1611,9 @@ onMounted(() => {
.page-box
{
/* 最大 300px:允许变小,但绝不变大 */
flex
:
0
1
3
00px
;
flex
:
0
1
6
00px
;
width
:
100%
;
max-width
:
3
00px
;
max-width
:
6
00px
;
min-width
:
0
;
display
:
flex
;
justify-content
:
flex-end
;
...
...
@@ -1621,7 +1621,7 @@ onMounted(() => {
}
.page-box
:deep
(
.el-pagination
)
{
max-width
:
100%
;
min-width
:
0
;
overflow
:
hidden
;
}
...
...
src/views/thinkTank/ReportDetail/index.vue
浏览文件 @
0a485467
...
...
@@ -105,6 +105,11 @@ const handleGetThinkTankReportSummary = async () => {
if
(
res
.
code
===
200
&&
res
.
data
)
{
reportUrl
.
value
=
res
.
data
.
reportUrl
;
thinkInfo
.
value
=
res
.
data
;
const
title
=
String
(
res
.
data
.
name
||
""
).
trim
();
if
(
title
)
{
document
.
title
=
title
;
window
.
sessionStorage
.
setItem
(
"curTabName"
,
title
);
}
console
.
log
(
reportUrl
.
value
,
"reportUrl.value"
);
}
}
catch
(
error
)
{
...
...
src/views/thinkTank/ReportDetail/reportAnalysis/index.vue
浏览文件 @
0a485467
...
...
@@ -1377,9 +1377,9 @@ onMounted(() => {
.page-box
{
/* 最大 300px:允许变小,但绝不变大 */
flex
:
0
1
3
00px
;
flex
:
0
1
6
00px
;
width
:
100%
;
max-width
:
3
00px
;
max-width
:
6
00px
;
min-width
:
0
;
display
:
flex
;
justify-content
:
flex-end
;
...
...
@@ -1387,7 +1387,7 @@ onMounted(() => {
}
.page-box
:deep
(
.el-pagination
)
{
max-width
:
100%
;
min-width
:
0
;
overflow
:
hidden
;
}
...
...
src/views/thinkTank/SurveyProjectView/index.vue
浏览文件 @
0a485467
...
...
@@ -72,8 +72,8 @@
</div> -->
<AnalysisBox
title=
"项目报告"
:showAllBtn=
"true"
>
<div
class=
"box2-main"
>
<div
class=
"box2-item"
v-for=
"(report, idx) in reportList"
:key=
"idx"
>
<div
class=
"box2-item-content"
>
<div
class=
"box2-item"
v-for=
"(report, idx) in reportList"
:key=
"
report.id ||
idx"
>
<div
class=
"box2-item-content"
@
click=
"handleClickProjectReport(report)"
>
<div
class=
"left"
><img
:src=
"report.imgUrl"
alt=
""
/></div>
<div
class=
"right-content"
>
<div
class=
"report-title"
>
{{ report.nameZh }}
</div>
...
...
@@ -222,7 +222,7 @@ const getOpinionExpandKey = (item, index) => {
}
return
`idx-
${
index
}
`
;
};
const
reportList
=
ref
(
{}
);
const
reportList
=
ref
(
[]
);
const
formatDate
=
(
dateStr
)
=>
{
if
(
!
dateStr
)
return
""
;
const
date
=
new
Date
(
dateStr
)
...
...
@@ -237,12 +237,29 @@ const handleGetThinkTankReport = async () => {
const
res
=
await
getThinkTankProjectRelated
(
router
.
currentRoute
.
_value
.
params
.
id
);
console
.
log
(
"报告全局信息"
,
res
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
reportList
.
value
=
res
.
data
;
reportList
.
value
=
Array
.
isArray
(
res
.
data
)
?
res
.
data
:
[]
;
}
}
catch
(
error
)
{
console
.
error
(
"获取相关报告error"
,
error
);
}
};
/** 新标签页打开智库报告详情 /thinkTank/reportDetail/:id */
const
handleClickProjectReport
=
(
report
)
=>
{
const
id
=
report
?.
id
;
if
(
!
id
)
{
ElMessage
.
warning
(
"报告 id 为空,无法跳转"
);
return
;
}
const
reportTitle
=
String
(
report
?.
nameZh
||
report
?.
name
||
""
).
trim
();
const
route
=
router
.
resolve
({
name
:
"ReportDetail"
,
params
:
{
id
:
String
(
id
)
},
query
:
reportTitle
?
{
name
:
reportTitle
}
:
{}
});
window
.
open
(
route
.
href
,
"_blank"
);
};
const
handleClickReportAuthor
=
async
(
author
)
=>
{
const
personId
=
author
?.
personId
;
if
(
!
personId
)
return
;
...
...
@@ -807,6 +824,7 @@ onMounted(() => {
height
:
90px
;
margin-top
:
7px
;
display
:
flex
;
cursor
:
pointer
;
.left
{
width
:
56px
;
...
...
src/views/thinkTank/ThinkTankDetail/thinkDynamics/CongressHearing/index.vue
浏览文件 @
0a485467
...
...
@@ -100,7 +100,7 @@
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
total
}}
篇
智库报告
共
{{
total
}}
篇
国会听证会
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"10"
background
layout=
"prev, pager, next"
:total=
"total"
...
...
@@ -290,7 +290,7 @@ const handleToReportDetail = item => {
gap
:
16px
;
height
:
100%
;
margin-bottom
:
10
0px
;
margin-bottom
:
8
0px
;
...
...
@@ -489,14 +489,9 @@ const handleToReportDetail = item => {
.right
{
width
:
1224px
;
.card-box
{
height
:
100%
;
display
:
flex
;
...
...
src/views/thinkTank/ThinkTankDetail/thinkDynamics/SurveyForm/index.vue
浏览文件 @
0a485467
...
...
@@ -70,7 +70,7 @@
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
total
}}
篇
智库报告
共
{{
total
}}
篇
调查项目
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"12"
background
layout=
"prev, pager, next"
:total=
"total"
...
...
@@ -218,6 +218,7 @@ const handleToReportDetail = item => {
.main-content
{
display
:
flex
;
gap
:
16px
;
margin-bottom
:
80px
;
.left
{
width
:
360px
;
...
...
@@ -359,11 +360,10 @@ const handleToReportDetail = item => {
.right
{
width
:
1284px
;
height
:
1377px
;
.card-box
{
width
:
1226px
;
height
:
1248px
;
display
:
flex
;
flex-wrap
:
wrap
;
...
...
src/views/thinkTank/ThinkTankDetail/thinkDynamics/ThinkTankReport/index.vue
浏览文件 @
0a485467
...
...
@@ -219,6 +219,7 @@ const handleToReportDetail = item => {
.main-content
{
display
:
flex
;
gap
:
16px
;
margin-bottom
:
80px
;
.left
{
width
:
360px
;
...
...
@@ -359,12 +360,10 @@ const handleToReportDetail = item => {
}
.right
{
width
:
1284px
;
height
:
1377px
;
.card-box
{
width
:
1226px
;
height
:
1248px
;
display
:
flex
;
flex-wrap
:
wrap
;
...
...
src/views/thinkTank/ThinkTankDetail/thinkInfo/index.vue
浏览文件 @
0a485467
...
...
@@ -819,7 +819,7 @@ onMounted(() => {
display
:
flex
;
margin-top
:
12px
;
width
:
332px
;
height
:
24px
;
margin-left
:
34px
;
.item-left
{
...
...
@@ -836,7 +836,7 @@ onMounted(() => {
.item-right
{
width
:
240px
;
height
:
24px
;
color
:
rgba
(
59
,
65
,
75
,
1
);
font-family
:
Microsoft
YaHei
;
font-size
:
16px
;
...
...
src/views/thinkTank/components/HomeMainFooterMain.vue
浏览文件 @
0a485467
...
...
@@ -53,7 +53,7 @@
</div>
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
total
}}
篇
政府
报告
</div>
<div
class=
"info"
>
共
{{
total
}}
篇
智库
报告
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"12"
background
layout=
"prev, pager, next"
:total=
"total"
@
current-change=
"emit('page-change', $event)"
:current-page=
"currentPage"
/>
...
...
@@ -198,8 +198,7 @@ const formatDate = (str) => {
.card-box
{
width
:
1226px
;
max-height
:
1248px
;
min-height
:
616px
;
display
:
flex
;
flex-wrap
:
wrap
;
gap
:
16px
16px
;
...
...
src/views/thinkTank/components/HomeMainFooterSurvey.vue
浏览文件 @
0a485467
...
...
@@ -53,7 +53,7 @@
</div>
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
total
}}
篇
智库报告
</div>
<div
class=
"info"
>
共
{{
total
}}
篇
调查项目
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"12"
background
layout=
"prev, pager, next"
:total=
"total"
@
current-change=
"emit('page-change', $event)"
:current-page=
"currentPage"
/>
...
...
@@ -173,8 +173,7 @@ const handleTimeGroupChange = (val) => {
.card-box
{
width
:
1226px
;
max-height
:
1248px
;
min-height
:
616px
;
display
:
flex
;
flex-wrap
:
wrap
;
gap
:
16px
16px
;
...
...
src/views/thinkTank/components/ThinkTankCongressHearingOverview.vue
浏览文件 @
0a485467
...
...
@@ -87,7 +87,7 @@
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
hearingData
.
length
}}
篇
智库报告
共
{{
hearingData
.
length
}}
篇
国会听证会
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"pageSize"
background
layout=
"prev, pager, next"
:total=
"total"
...
...
@@ -193,9 +193,9 @@ const handlePageChange = page => {
width
:
1600px
;
display
:
flex
;
gap
:
16px
;
}
.left
{
.left
{
width
:
360px
;
height
:
100%
;
padding-bottom
:
24px
;
...
...
@@ -205,9 +205,9 @@ const handlePageChange = page => {
box-shadow
:
0px
0px
20px
0px
rgba
(
94
,
95
,
95
,
0
.1
);
background
:
rgba
(
255
,
255
,
255
,
1
);
position
:
relative
;
}
}
.select-box-header
{
.select-box-header
{
display
:
flex
;
gap
:
17px
;
...
...
@@ -230,26 +230,26 @@ const handlePageChange = page => {
letter-spacing
:
1px
;
text-align
:
left
;
}
}
}
.select-research-box
{
.select-research-box
{
width
:
360px
;
height
:
284px
;
margin-top
:
16px
;
}
}
.select-time-box
{
.select-time-box
{
margin-top
:
16px
;
width
:
360px
;
}
}
.select-hearing-box
{
.select-hearing-box
{
margin-top
:
16px
;
width
:
360px
;
}
}
.select-main
{
.select-main
{
margin-left
:
24px
;
margin-top
:
12px
;
...
...
@@ -270,9 +270,9 @@ const handlePageChange = page => {
width
:
259px
;
gap
:
4px
;
}
}
}
.right
{
.right
{
width
:
1224px
;
...
...
@@ -286,7 +286,6 @@ const handlePageChange = page => {
border-radius
:
10px
;
box-shadow
:
0px
0px
20px
0px
rgba
(
94
,
95
,
95
,
0
.1
);
padding-right
:
36px
;
height
:
100%
;
.card-content
{
width
:
1211px
;
...
...
@@ -298,10 +297,7 @@ const handlePageChange = page => {
}
}
}
.right-footer
{
.right-footer
{
margin-top
:
43px
;
display
:
flex
;
justify-content
:
space-between
;
...
...
@@ -316,9 +312,12 @@ const handlePageChange = page => {
letter-spacing
:
0px
;
text-align
:
left
;
}
}
}
}
.card-item
{
.card-item
{
width
:
100%
;
height
:
77px
;
display
:
flex
;
...
...
@@ -375,11 +374,12 @@ const handlePageChange = page => {
}
}
}
}
.divider
{
.divider
{
height
:
1px
;
background
:
rgb
(
234
,
236
,
238
);
margin
:
16px
0
;
}
}
</
style
>
src/views/thinkTank/components/ThinkTankPolicyAdviceOverview.vue
浏览文件 @
0a485467
...
...
@@ -81,7 +81,7 @@
</div>
</div>
<div
class=
"right-footer"
>
<div
class=
"info"
>
共
{{
total
}}
篇
智库报告
</div>
<div
class=
"info"
>
共
{{
total
}}
篇
政策建议
</div>
<div
class=
"page-box"
>
<el-pagination
:page-size=
"pageSize"
background
layout=
"prev, pager, next"
:total=
"total"
@
current-change=
"p => emit('page-change', p)"
:current-page=
"currentPage"
/>
...
...
@@ -298,7 +298,7 @@ const handleYearGroupChange = (val) => {
.right
{
width
:
1224px
;
height
:
1377px
;
.card-box
{
width
:
100%
;
...
...
@@ -316,7 +316,12 @@ const handleYearGroupChange = (val) => {
height
:
1067px
;
margin-top
:
33px
;
margin-left
:
37px
;
}
.divider
{
height
:
1px
;
background
:
rgb
(
234
,
236
,
238
);
margin
:
16px
0
;
}
.card-item
{
...
...
@@ -468,6 +473,10 @@ const handleYearGroupChange = (val) => {
}
}
}
}
}
.right-footer
{
margin-top
:
43px
;
...
...
@@ -487,11 +496,4 @@ const handleYearGroupChange = (val) => {
}
}
}
.divider
{
height
:
1px
;
background
:
rgb
(
234
,
236
,
238
);
margin
:
16px
0
;
}
</
style
>
src/views/thinkTank/index.vue
浏览文件 @
0a485467
...
...
@@ -4243,7 +4243,7 @@ onBeforeUnmount(() => {
.home-main-footer
{
overflow
:
hidden
;
background
:
rgba
(
247
,
248
,
249
,
1
);
height
:
1700px
;
.home-main-footer-header
{
width
:
1600px
;
...
...
@@ -4332,6 +4332,7 @@ onBeforeUnmount(() => {
width
:
1600px
;
display
:
flex
;
gap
:
16px
;
margin-bottom
:
140px
;
.left
{
width
:
360px
;
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论