Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
d4e91398
提交
d4e91398
authored
12月 22, 2025
作者:
yanpeng
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' into yp-dev
上级
83ba7139
6ca8b906
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
312 行增加
和
165 行删除
+312
-165
bill.js
src/api/bill.js
+14
-0
scrollbar.css
src/styles/scrollbar.css
+26
-2
index.vue
src/views/bill/billHome/index.vue
+129
-109
index.vue
src/views/bill/billLayout/index.vue
+30
-9
index.vue
src/views/bill/influence/industry/index.vue
+17
-1
index.vue
src/views/decree/decreeHome/index.vue
+25
-6
index.vue
src/views/exportControl/index.vue
+71
-38
没有找到文件。
src/api/bill.js
浏览文件 @
d4e91398
...
...
@@ -139,4 +139,17 @@ export function getBillHyly(params) {
url
:
`/api/billInfoBean/content/hyly/
${
params
.
id
}
`
,
params
,
})
}
// 根据法案ID获取法案全局信息
/**
* @param {id}
* @header token
*/
export
function
getBillInfoGlobal
(
params
)
{
return
request
({
method
:
'GET'
,
url
:
`/api/billInfoBean/summary/
${
params
.
id
}
`
,
params
,
})
}
\ No newline at end of file
src/styles/scrollbar.css
浏览文件 @
d4e91398
...
...
@@ -48,4 +48,28 @@
.el-select-dropdown
.el-scrollbar__wrap
{
scrollbar-width
:
thin
;
scrollbar-color
:
#c1c1c1
#f1f1f1
;
}
\ No newline at end of file
}
/* 只针对水平滚动条 */
::-webkit-scrollbar:horizontal
{
height
:
5px
;
}
/* 水平滚动条轨道 */
::-webkit-scrollbar-track:horizontal
{
background
:
linear-gradient
(
90deg
,
#f0f0f0
,
#e0e0e0
);
}
/* 水平滚动条滑块 */
::-webkit-scrollbar-thumb:horizontal
{
background
:
#bcbcbc
;
min-width
:
40px
;
/* 最小宽度 */
}
::-webkit-scrollbar-thumb:horizontal:hover
{
background
:
#505357
;
}
::-webkit-scrollbar-thumb:horizontal:active
{
background
:
#505357
;
}
\ No newline at end of file
src/views/bill/billHome/index.vue
浏览文件 @
d4e91398
...
...
@@ -126,76 +126,90 @@
</div>
<div
class=
"title"
>
{{
"热门法案"
}}
</div>
</div>
<div
class=
"box1-header-right"
@
click=
"handleClickToDetail"
>
<div
class=
"box1-header-right"
@
click=
"handleClickToDetail
()
"
>
{{
"查看详情 >"
}}
</div>
</div>
<div
class=
"box1-main"
>
<div
class=
"box1-main-left"
>
<div
class=
"box1-main-left-title"
>
<!-- "H.R.1(119th)-大而美法案" -->
{{
curBill
.
billName
}}
</div>
<div
class=
"box1-main-left-info"
>
<div
class=
"info-box"
:class=
"
{
info1: index === 0,
info2: index === 1,
info3: index === 2,
info4: index === 3
}"
v-for="(item, index) in curBill.hylyList"
:key="index"
>
{{
item
.
industryName
}}
</div>
</div>
<div
class=
"box1-main-left-info1"
>
<div
class=
"info1-box"
>
<div
class=
"icon"
></div>
<div
class=
"info1-box-left"
>
{{
"提案人:"
}}
</div>
<div
class=
"info1-box-right"
>
{{
curBill
.
tarName
}}
</div>
</div>
<div
class=
"info1-box"
>
<div
class=
"icon"
></div>
<div
class=
"info1-box-left"
>
{{
"提出时间:"
}}
</div>
<div
class=
"info1-box-right"
>
{{
curBill
.
introductionDate
}}
</div>
</div>
</div>
<div
class=
"box1-main-left-info2"
>
<div
class=
"info2-item"
v-for=
"(item, index) in curBill.dyqkList"
:key=
"index"
>
<div
class=
"time-line"
v-if=
"index !== curBill.dyqkList.length - 1"
></div>
<div
class=
"item-icon"
>
<img
src=
"./assets/images/info2-icon.png"
alt=
""
/>
</div>
<div
class=
"item-time"
:class=
"
{ itemTimeActive: index === 0 }">
{{
item
.
actionDate
}}
</div>
<div
class=
"item-title"
:class=
"
{ itemTitleActive: index === 0 }">
{{
item
.
actionContentCn
}}
<div
class=
"box1-main"
style=
"display: block"
>
<el-carousel
ref=
"carouselRef"
height=
"354px"
:autoplay=
"true"
:interval=
"3000"
arrow=
"never"
indicator-position=
"none"
@
change=
"handleCarouselChange"
>
<el-carousel-item
v-for=
"(bill, billIndex) in hotBillList"
:key=
"billIndex"
>
<div
class=
"carousel-content"
style=
"display: flex; height: 100%"
>
<div
class=
"box1-main-left"
>
<div
class=
"box1-main-left-title"
>
<!-- "H.R.1(119th)-大而美法案" -->
{{
bill
.
billName
}}
</div>
<div
class=
"box1-main-left-info"
>
<div
class=
"info-box"
:class=
"
{
info1: index === 0,
info2: index === 1,
info3: index === 2,
info4: index === 3
}"
v-for="(item, index) in bill.hylyList"
:key="index"
>
{{
item
.
industryName
}}
</div>
</div>
<div
class=
"box1-main-left-info1"
>
<div
class=
"info1-box"
>
<div
class=
"icon"
></div>
<div
class=
"info1-box-left"
>
{{
"提案人:"
}}
</div>
<div
class=
"info1-box-right"
>
{{
bill
.
tarName
}}
</div>
</div>
<div
class=
"info1-box"
>
<div
class=
"icon"
></div>
<div
class=
"info1-box-left"
>
{{
"提出时间:"
}}
</div>
<div
class=
"info1-box-right"
>
{{
bill
.
introductionDate
}}
</div>
</div>
</div>
<div
class=
"box1-main-left-info2"
>
<div
class=
"info2-item"
v-for=
"(item, index) in bill.dyqkList"
:key=
"index"
>
<div
class=
"time-line"
v-if=
"index !== bill.dyqkList.length - 1"
></div>
<div
class=
"item-icon"
>
<img
src=
"./assets/images/info2-icon.png"
alt=
""
/>
</div>
<div
class=
"item-time"
:class=
"
{ itemTimeActive: index === 0 }">
{{
item
.
actionDate
}}
</div>
<div
class=
"item-title"
:class=
"
{ itemTitleActive: index === 0 }">
{{
item
.
actionContentCn
}}
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"box1-main-right"
>
<img
src=
"./assets/images/box1-main-right-img.png"
alt=
""
/>
<div
class=
"inner-box"
>
<div
class=
"inner-box-header"
>
<div
class=
"inner-box-title"
>
{{
"大而美法案涉险通过参议院表决,众议院将继续..."
}}
<div
class=
"box1-main-right"
>
<img
src=
"./assets/images/box1-main-right-img.png"
alt=
""
/>
<div
class=
"inner-box"
>
<div
class=
"inner-box-header"
>
<div
class=
"inner-box-title"
>
{{
"大而美法案涉险通过参议院表决,众议院将继续..."
}}
</div>
<div
class=
"inner-box-time"
>
{{
"1小时前"
}}
</div>
</div>
<div
class=
"inner-box-content"
>
{{
"三名美国共和党众议员(2025年7月21日)致函几家美国科技巨头公司的负责人,询问他们是否已经采取了充分的安全保障措施以有效解..."
}}
</div>
</div>
</div>
<div
class=
"inner-box-time"
>
{{
"1小时前"
}}
</div>
</div>
<div
class=
"inner-box-content"
>
{{
"三名美国共和党众议员(2025年7月21日)致函几家美国科技巨头公司的负责人,询问他们是否已经采取了充分的安全保障措施以有效解..."
}}
</div>
</div>
</div>
</el-carousel-item>
</el-carousel>
</div>
</div>
<div
class=
"box2"
>
...
...
@@ -278,7 +292,7 @@
</div>
<div
class=
"box4-main"
>
<div
class=
"box4-main-item"
v-for=
"(item, index) in messageList"
:key=
"index"
>
<div
class=
"left"
@
click=
"handleClcikToCharacter(index)"
>
<div
class=
"left"
@
click=
"handleClcikToCharacter(i
tem, i
ndex)"
>
<img
:src=
"item.personImage"
alt=
""
/>
</div>
<div
class=
"right"
>
...
...
@@ -358,10 +372,10 @@
<div
class=
"box7-header-title"
>
{{
"法案提出部门"
}}
</div>
</div>
<div
class=
"box7-header-right"
>
<div
class=
"header-right-icon"
>
<
!--
<
div
class=
"header-right-icon"
>
<img
src=
"./assets/images/tips-icon.png"
alt=
""
/>
</div>
<
div
class=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
</div
>
</div>
-->
<
!--
<div
class=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
</div>
--
>
</div>
</div>
<div
class=
"box-center"
>
...
...
@@ -395,10 +409,10 @@
<div
class=
"box8-header-title"
>
{{
"关键议员提案"
}}
</div>
</div>
<div
class=
"box8-header-right"
>
<div
class=
"header-right-icon"
>
<
!--
<
div
class=
"header-right-icon"
>
<img
src=
"./assets/images/tips-icon.png"
alt=
""
/>
</div>
<
div
class=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
</div
>
</div>
-->
<
!--
<div
class=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
</div>
--
>
</div>
</div>
<div
class=
"box-center"
>
...
...
@@ -425,7 +439,7 @@
class=
"box8-main-item"
v-for=
"(item, index) in box8Data"
:key=
"index"
@
click=
"handleClcikToCharacter(index)"
@
click=
"handleClcikToCharacter(i
tem, i
ndex)"
>
<div
class=
"box8-main-item-left"
>
<img
:src=
"item.img"
alt=
""
referrerpolicy=
"no-referrer"
class=
"left-img"
/>
...
...
@@ -455,10 +469,10 @@
<
div
class
=
"box9-header-title"
>
{{
"涉华法案领域分布"
}}
<
/div
>
<
/div
>
<
div
class
=
"box9-header-right"
>
<
div
class
=
"header-right-icon"
>
<
!--
<
div
class
=
"header-right-icon"
>
<
img
src
=
"./assets/images/tips-icon.png"
alt
=
""
/>
<
/div
>
<
div
class
=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
<
/div
>
<
/div>
--
>
<
!--
<
div
class
=
"header-right-text"
>
{{
"数据来源:美国国会官方网站"
}}
<
/div> --
>
<
/div
>
<
/div
>
<
div
class
=
"box-center"
>
...
...
@@ -631,7 +645,7 @@
class
=
"right-main-box"
v
-
for
=
"(item, index) in bills"
:
key
=
"index"
@
click
=
"handleClickToDetail
(
)"
@
click
=
"handleClickToDetail
O(item
)"
>
<
div
class
=
"header"
>
<
div
class
=
"title"
>
{{
item
.
name
}}
<
/div
>
...
...
@@ -662,20 +676,20 @@
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"right-footer
"
>
<
div
class
=
"footer-left"
>
{{
`共${total
}
项调查`
}}
<
/div
>
<
div
class
=
"footer-right"
>
<
el
-
pagination
@
current
-
change
=
"handleCurrentChang
e"
:
page
-
size
=
"pageSiz
e"
:
current
-
page
=
"currentPage"
background
layout
=
"prev, pager, next
"
:
total
=
"total"
/
>
<
div
class
=
"right-footer"
>
<
div
class
=
"footer-left
"
>
{{
`共${total
}
项调查`
}}
<
/div
>
<
div
class
=
"footer-right"
>
<
el
-
pagination
@
current
-
change
=
"handleCurrentChange"
:
page
-
size
=
"pageSiz
e"
:
current
-
page
=
"currentPag
e"
background
layout
=
"prev, pager, next"
:
total
=
"total
"
/>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
...
...
@@ -772,7 +786,8 @@ const formatMessageTime = timeStr => {
}
;
// 跳转人物主页
const
handleClcikToCharacter
=
index
=>
{
const
handleClcikToCharacter
=
(
item
,
index
)
=>
{
window
.
sessionStorage
.
setItem
(
"memberId"
,
item
.
memberId
);
let
type
;
if
(
index
===
0
)
{
type
=
2
;
...
...
@@ -809,23 +824,22 @@ const { isShow } = useContainerScroll(containerRef);
const
hotBillList
=
ref
([]);
// 热门法案列表
const
curHotBillListIndex
=
ref
(
0
);
// 当前热门法案索引
const
carouselRef
=
ref
(
null
);
const
handleCarouselChange
=
index
=>
{
curHotBillListIndex
.
value
=
index
;
if
(
hotBillList
.
value
&&
hotBillList
.
value
.
length
>
0
)
{
curBill
.
value
=
hotBillList
.
value
[
index
];
}
}
;
// 切换热门法案
const
handleSwithCurBill
=
name
=>
{
if
(
name
===
"left"
)
{
if
(
curHotBillListIndex
.
value
===
0
)
{
curHotBillListIndex
.
value
=
hotBillList
.
value
.
length
-
1
;
}
else
{
curHotBillListIndex
.
value
--
;
}
carouselRef
.
value
.
prev
();
}
else
{
if
(
curHotBillListIndex
.
value
===
hotBillList
.
value
.
length
-
1
)
{
curHotBillListIndex
.
value
=
0
;
}
else
{
curHotBillListIndex
.
value
++
;
}
carouselRef
.
value
.
next
();
}
curBill
.
value
=
hotBillList
.
value
[
curHotBillListIndex
.
value
];
}
;
// 当前法案
...
...
@@ -840,9 +854,13 @@ const curBill = ref({
// 查看详情
const
handleClickToDetail
=
()
=>
{
// window.sessionStorage.setItem("billId", curBill.value.billId);
window
.
sessionStorage
.
setItem
(
"billId"
,
"119_HR_1"
);
// router.push("/billLayout");
window
.
sessionStorage
.
setItem
(
"billId"
,
curBill
.
value
.
billId
);
const
route
=
router
.
resolve
(
"/billLayout"
);
window
.
open
(
route
.
href
,
"_blank"
);
}
;
// 查看详情 传递参数
const
handleClickToDetailO
=
item
=>
{
window
.
sessionStorage
.
setItem
(
"billId"
,
item
.
billId
);
const
route
=
router
.
resolve
(
"/billLayout"
);
window
.
open
(
route
.
href
,
"_blank"
);
}
;
...
...
@@ -1196,7 +1214,7 @@ const handleGetBills = async () => {
if
(
res
.
code
===
200
)
{
if
(
res
.
data
&&
res
.
data
.
content
)
{
bills
.
value
=
res
.
data
.
content
.
map
(
item
=>
({
// i
d: item.billId,
billI
d
:
item
.
billId
,
name
:
item
.
billName
,
eName
:
item
.
billNameEn
,
tcr
:
item
.
personName
,
...
...
@@ -1506,6 +1524,7 @@ const handleBox8Data = async () => {
console
.
log
(
"关键议员提案"
,
res
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
box8Data
.
value
=
res
.
data
.
map
(
item
=>
({
memberId
:
item
.
memberId
,
name
:
item
.
memberName
,
zhiwei
:
item
.
position
,
img
:
item
.
imageUrl
,
...
...
@@ -2006,6 +2025,7 @@ onUnmounted(() => {});
justify
-
content
:
center
;
align
-
items
:
center
;
cursor
:
pointer
;
z
-
index
:
10
;
.
icon
{
width
:
11
px
;
height
:
18
px
;
...
...
@@ -2026,6 +2046,7 @@ onUnmounted(() => {});
justify
-
content
:
center
;
align
-
items
:
center
;
cursor
:
pointer
;
z
-
index
:
10
;
.
icon
{
width
:
11
px
;
height
:
18
px
;
...
...
@@ -2769,7 +2790,7 @@ onUnmounted(() => {});
}
.
box5
-
select
{
position
:
absolute
;
top
:
5
0
px
;
top
:
5
3
px
;
left
:
100
px
;
z
-
index
:
100
;
}
...
...
@@ -3424,4 +3445,4 @@ onUnmounted(() => {});
:
deep
(.
el
-
input__wrapper
.
is
-
focus
)
{
box
-
shadow
:
none
!
important
;
}
<
/style>
\ No newline at end of file
<
/style
>
src/views/bill/billLayout/index.vue
浏览文件 @
d4e91398
...
...
@@ -6,12 +6,12 @@
<div
class=
"layout-main-header-left-box"
>
<div
class=
"left-box-top"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/USA-logo.png
"
alt=
""
/>
<img
:src=
"billInfoGlobal.imageUrl || USALogo
"
alt=
""
/>
</div>
<div
class=
"info"
>
<div
class=
"info-box1"
>
{{
"H.R.1(119th)-大而美法案"
}}
</div>
<div
class=
"info-box1"
>
{{
billInfoGlobal
.
billName
}}
</div>
<div
class=
"info-box2"
>
{{
"第119届美国国会众议院第1号法案 One Big Beautiful Bill Act"
}}
{{
billInfoGlobal
.
description
}}
{{
billInfoGlobal
.
billNameEn
}}
</div>
</div>
</div>
...
...
@@ -35,8 +35,8 @@
</div>
<div
class=
"layout-main-header-right-box"
>
<div
class=
"right-box-top"
>
<div
class=
"time"
>
{{
"2025年7月"
}}
</div>
<div
class=
"name"
>
{{
"乔迪·阿灵顿(Jodey Arrington) "
}}
</div>
<div
class=
"time"
>
{{
billInfoGlobal
.
introductionDate
}}
</div>
<div
class=
"name"
>
{{
billInfoGlobal
.
tarName
}}
</div>
</div>
<div
class=
"right-box-bottom"
>
<!--
<el-button
type=
"plain"
size=
"large"
icon=
"Search"
@
click=
"handleSwitchActiveName('法案原文')"
...
...
@@ -135,6 +135,7 @@
<
script
setup
>
import
{
ref
,
onMounted
}
from
"vue"
;
import
router
from
"@/router"
;
import
{
getBillInfoGlobal
}
from
"@/api/bill"
;
import
icon1
from
"./assets/icons/icon1.png"
;
import
icon1Active
from
"./assets/icons/icon1_active.png"
;
...
...
@@ -144,9 +145,24 @@ import icon3 from "./assets/icons/icon3.png";
import
icon3Active
from
"./assets/icons/icon3_active.png"
;
import
icon4
from
"./assets/icons/icon4.png"
;
import
icon4Active
from
"./assets/icons/icon4_active.png"
;
import
USALogo
from
"./assets/images/USA-logo.png"
;
const
activeName
=
ref
(
"分析报告"
);
// 获取法案全局信息
const
billInfoGlobal
=
ref
({});
const
getBillInfoGlobalFn
=
async
()
=>
{
const
res
=
await
getBillInfoGlobal
({
id
:
window
.
sessionStorage
.
getItem
(
"billId"
)
});
if
(
res
.
code
===
200
)
{
console
.
log
(
"法案全局信息"
,
res
);
if
(
res
.
data
)
{
billInfoGlobal
.
value
=
res
.
data
;
}
}
};
const
handleSwitchActiveName
=
name
=>
{
activeName
.
value
=
name
;
};
...
...
@@ -200,6 +216,7 @@ const handleClickMainHeaderBtn = item => {
};
onMounted
(()
=>
{
getBillInfoGlobalFn
();
if
(
window
.
sessionStorage
.
getItem
(
"activeTitle"
))
{
activeTitle
.
value
=
window
.
sessionStorage
.
getItem
(
"activeTitle"
);
}
...
...
@@ -377,7 +394,7 @@ onMounted(() => {
margin-left
:
9px
;
.info-box1
{
color
:
rgba
(
59
,
65
,
75
,
1
);
font-family
:
Microsoft
YaHei
;
font-family
:
"Microsoft YaHei"
;
font-size
:
20px
;
font-weight
:
600
;
line-height
:
22px
;
...
...
@@ -387,16 +404,20 @@ onMounted(() => {
}
.info-box2
{
margin-top
:
5px
;
height
:
22px
;
//
height: 22px;
line-height
:
22px
;
color
:
rgba
(
132
,
136
,
142
,
1
);
font-family
:
Microsoft
YaHei
;
font-family
:
"Microsoft YaHei"
;
font-size
:
14px
;
font-weight
:
400
;
line-height
:
22px
;
letter-spacing
:
0px
;
text-align
:
left
;
display
:
-
webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
}
}
...
...
src/views/bill/influence/industry/index.vue
浏览文件 @
d4e91398
...
...
@@ -1092,6 +1092,19 @@ onMounted(async () => {
.dialog-box1-main {
margin-top: 4px;
margin-left: 18px;
max-height: 120px;
overflow-y: auto;
&::-webkit-scrollbar {
width: 4px;
}
&::-webkit-scrollbar-thumb {
border-radius: 10px;
background: rgba(0, 0, 0, 0.2);
}
&::-webkit-scrollbar-track {
border-radius: 0;
background: rgba(0, 0, 0, 0.1);
}
.item {
display: flex;
.item-left {
...
...
@@ -1107,13 +1120,16 @@ onMounted(async () => {
.item-right {
margin-top: 8px;
margin-left: 9px;
width: 4
2
0px;
width: 4
0
0px;
height: 22px;
color: rgba(132, 136, 142, 1);
font-family: Microsoft YaHei;
font-size: 14px;
font-weight: 400;
line-height: 22px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
}
...
...
src/views/decree/decreeHome/index.vue
浏览文件 @
d4e91398
...
...
@@ -116,16 +116,16 @@
<div
class=
"home-main-center"
>
<div
class=
"center-top"
>
<div
class=
"box1"
>
<
!--
<div
class=
"box1-left
"
>
<
div
class=
"box1-left"
@
click=
"handleSwithCurDecree('left')
"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/box1-left.png"
alt=
""
/>
</div>
</div>
<div
class=
"box1-right"
>
<div
class=
"box1-right"
@
click=
"handleSwithCurDecree('right')"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/box1-right.png"
alt=
""
/>
</div>
</div>
-->
</div>
<div
class=
"box1-header"
>
<div
class=
"box1-header-left"
>
<div
class=
"icon"
>
...
...
@@ -137,7 +137,14 @@
{{
"查看详情 >"
}}
</div>
</div>
<el-carousel
ref=
"carouselRef"
trigger=
"click"
height=
"395px"
:autoplay=
"true"
>
<el-carousel
ref=
"carouselRef"
height=
"395px"
:autoplay=
"true"
:interval=
"3000"
arrow=
"never"
indicator-position=
"none"
>
<el-carousel-item
v-for=
"(item, index) in box1DataList"
:key=
"index"
>
<div
class=
"box1-main"
>
<div
class=
"box1-main-left"
>
...
...
@@ -1116,6 +1123,15 @@ watch(
}
);
// 切换当前政令
const
handleSwithCurDecree
=
name
=>
{
if
(
name
===
"left"
)
{
carouselRef
.
value
.
prev
();
}
else
{
carouselRef
.
value
.
next
();
}
}
;
onMounted
(
async
()
=>
{
handleGetAreaList
();
handleGetDecreeOrderList
();
...
...
@@ -1452,6 +1468,7 @@ onMounted(async () => {
position
:
relative
;
.
box1
-
left
{
position
:
absolute
;
z
-
index
:
9999
;
left
:
0
;
top
:
200
px
;
width
:
24
px
;
...
...
@@ -1472,6 +1489,7 @@ onMounted(async () => {
}
.
box1
-
right
{
position
:
absolute
;
z
-
index
:
9999
;
right
:
0
;
top
:
200
px
;
width
:
24
px
;
...
...
@@ -2726,7 +2744,6 @@ onMounted(async () => {
width
:
1600
px
;
height
:
70
px
;
margin
:
36
px
auto
16
px
;
// background: orange;
display
:
flex
;
justify
-
content
:
space
-
between
;
.
btn
-
box
{
...
...
@@ -2737,6 +2754,7 @@ onMounted(async () => {
display
:
flex
;
gap
:
8
px
;
white
-
space
:
nowrap
;
.
btn
{
min
-
width
:
min
-
content
;
height
:
42
px
;
...
...
@@ -2908,7 +2926,8 @@ onMounted(async () => {
gap
:
18
px
;
justify
-
content
:
flex
-
end
;
.
left
-
left
{
width
:
84
px
;
margin
-
left
:
30
px
;
width
:
54
px
;
height
:
48
px
;
color
:
var
(
--
color
-
main
-
active
);
font
-
family
:
Microsoft
YaHei
;
...
...
src/views/exportControl/index.vue
浏览文件 @
d4e91398
...
...
@@ -91,7 +91,24 @@
<
template
#
default
>
<div
class=
"box1"
>
<el-carousel
ref=
"carouselRef"
trigger=
"click"
height=
"350px"
:autoplay=
"true"
>
<div
class=
"box1-left-arrow"
@
click=
"handleSwithCurPolicy('left')"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/box1-left.png"
alt=
""
/>
</div>
</div>
<div
class=
"box1-right-arrow"
@
click=
"handleSwithCurPolicy('right')"
>
<div
class=
"icon"
>
<img
src=
"./assets/images/box1-right.png"
alt=
""
/>
</div>
</div>
<el-carousel
ref=
"carouselRef"
height=
"350px"
:autoplay=
"true"
:interval=
"3000"
arrow=
"never"
indicator-position=
"none"
>
<el-carousel-item
v-for=
"(item, index) in entitiesDataInfoList"
:key=
"item.id + index"
>
<div>
<div
class=
"box1-top"
>
...
...
@@ -730,7 +747,7 @@ const newsList = ref([]);
onMounted
(
async
()
=>
{
try
{
const
[
dataCount
,
entitiesDataInfo
,
industryCountByYear
,
cclList
,
countDomainByYear
]
=
await
Promise
.
all
([
const
[
dataCount
,
entitiesDataInfo
,
industryCountByYear
,
cclList
,
countDomainByYear
]
=
await
Promise
.
all
([
getEntitiesDataCount
(),
getEntitiesDataInfo
(),
getIndustryCountByYear
(
1
),
...
...
@@ -1459,6 +1476,15 @@ const handleNewsInfoClick = item => {
window
.
open
(
route
.
href
,
"_blank"
);
};
// 切换当前出口管制政策
const
handleSwithCurPolicy
=
name
=>
{
if
(
name
===
"left"
)
{
carouselRef
.
value
.
prev
();
}
else
{
carouselRef
.
value
.
next
();
}
};
onMounted
(
async
()
=>
{
handleGetHylyList
();
let
chart1
=
getMultiLineChart
(
chart1Data
.
value
.
title
,
chart1Data
.
value
.
data
[
0
].
value
,
chart1Data
.
value
.
data
[
1
].
value
);
...
...
@@ -1521,6 +1547,48 @@ const handleMediaClick = item => {
flex-direction
:
column
;
gap
:
20px
;
position
:
relative
;
.box1-left-arrow
{
position
:
absolute
;
z-index
:
9999
;
left
:
-20px
;
top
:
135px
;
width
:
24px
!
important
;
height
:
48px
;
background
:
#e7f1ff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
cursor
:
pointer
;
.icon
{
width
:
11px
;
height
:
18px
;
img
{
width
:
100%
;
height
:
100%
;
}
}
}
.box1-right-arrow
{
position
:
absolute
;
z-index
:
9999
;
right
:
-20px
;
top
:
135px
;
width
:
24px
;
height
:
48px
;
background
:
#e7f1ff
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
cursor
:
pointer
;
.icon
{
width
:
11px
;
height
:
18px
;
img
{
width
:
100%
;
height
:
100%
;
}
}
}
.box1-absolute
{
position
:
absolute
;
width
:
240px
;
...
...
@@ -2062,44 +2130,9 @@ const handleMediaClick = item => {
gap
:
20px
;
.box1
{
display
:
flex
;
gap
:
10px
;
position
:
relative
;
// .box1-left {
// position: absolute;
// left: 0;
// top: 200px;
// width: 24px;
// height: 48px;
// background: #e7f1ff;
// display: flex;
// justify-content: center;
// align-items: center;
// cursor: pointer;
// .icon {
// width: 11px;
// height: 18px;
// img {
// width: 100%;
// height: 100%;
// }
// }
// }
.box1-right
{
display
:
flex
;
justify-content
:
center
;
flex-direction
:
column
;
align-items
:
center
;
cursor
:
pointer
;
.icon
{
width
:
11px
;
height
:
18px
;
img
{
width
:
100%
;
height
:
100%
;
}
}
}
.box1-header
{
height
:
53px
;
border-bottom
:
1px
solid
rgba
(
240
,
242
,
244
,
1
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论