Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
8a25c002
提交
8a25c002
authored
3月 26, 2026
作者:
张伊明
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
style 修改样式
fix 修改cibug
上级
1b858852
流水线
#94
已通过 于阶段
in 1 分 29 秒
变更
3
流水线
1
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
150 行增加
和
159 行删除
+150
-159
g2.mdc
.cursor/rules/g2.mdc
+2
-0
.gitlab-ci.yml
.gitlab-ci.yml
+3
-1
index.vue
src/views/bill/deepDig/processAnalysis/index.vue
+145
-158
没有找到文件。
.cursor/rules/g2.mdc
浏览文件 @
8a25c002
---
description:
alwaysApply: true
---
# Overview
Insert overview text here. The agent will only see this should they choose to apply the rule.
...
...
.gitlab-ci.yml
浏览文件 @
8a25c002
...
...
@@ -71,9 +71,11 @@ build_check:
image
:
node:20-bullseye
tags
:
-
risk-monitor-frontend
# 只在 push 时做构建校验,且排除 protected 分支与目标分支 pre
only
:
-
branc
hes
-
pus
hes
except
:
-
pre
-
protected_branches
script
:
-
node -v
...
...
src/views/bill/deepDig/processAnalysis/index.vue
浏览文件 @
8a25c002
...
...
@@ -384,8 +384,7 @@
<
/div
>
<
/div> --
>
<
AnalysisBox
title
=
"投票分析"
>
<
div
class
=
"analysis-ai-wrapper analysis-ai-wrapper--box3"
>
<
div
class
=
"vote-legend"
>
<
div
class
=
"vote-legend"
>
<
div
class
=
"vote-legend-item"
>
<
span
class
=
"vote-legend-dot agree"
><
/span
>
<
span
>
赞成票
<
/span
>
...
...
@@ -394,144 +393,151 @@
<
span
class
=
"vote-legend-dot against"
><
/span
>
<
span
>
反对票
<
/span
>
<
/div
>
<
/div
>
<
div
class
=
"box3-main"
:
class
=
"{ 'box3-main--full': !voteFooterText
}
"
>
<
div
class
=
"box3-main-center"
>
<
div
class
=
"box3-main-center-header"
>
<
div
class
=
"box3-main-center-header-box1"
>
立法阶段
<
/div
>
<
div
class
=
"box3-main-center-header-box2"
>
票数
<
/div
>
<
div
class
=
"box3-main-center-header-box3"
>
平均区间
<
/div
>
<
div
class
=
"box3-main-center-header-box4"
>
占比
<
/div
>
<
div
class
=
"box3-main-center-header-box5"
>
倒戈人数
<
span
style
=
"font-weight: normal; display: inline-block"
>
(
平均区间
)
<
/span
>
<
/div
>
<
div
class
=
"analysis-ai-wrapper analysis-ai-wrapper--box3"
>
<
div
class
=
"box3-main"
:
class
=
"{ 'box3-main--full': !voteFooterText
}
"
>
<
div
class
=
"box3-main-center"
>
<
div
class
=
"box3-main-center-header"
>
<
div
class
=
"box3-main-center-header-box1"
>
立法阶段
<
/div
>
<
div
class
=
"box3-main-center-header-box2"
>
票数
<
/div
>
<
div
class
=
"box3-main-center-header-box3"
>
平均区间
<
/div
>
<
div
class
=
"box3-main-center-header-box4"
>
占比
<
/div
>
<
div
class
=
"box3-main-center-header-box5"
>
倒戈人数
<
span
style
=
"font-weight: normal; display: inline-block"
>
(
平均区间
)
<
/span
>
<
/div
>
<
/div
>
<
div
class
=
"box3-main-center-
header-box6"
>
关键议员
<
/div
>
<
/div
>
<
div
class
=
"box3-main-center-content
"
>
<
div
class
=
"box3-main-center-content-box"
v
-
for
=
"item in voteAnalysisList"
:
key
=
"item.actionId
"
>
<
div
class
=
"item
"
>
<
div
class
=
"item-box1
"
>
<
div
class
=
"box1-left"
>
<
div
style
=
"width: 100%; display: flex; flex-direction: column; align-items: flex-end"
>
<
div
class
=
"name nameBlod"
:
title
=
"item.actionTitle"
style
=
"
<
div
class
=
"box3-main-center-
content"
>
<
div
class
=
"box3-main-center-content-box"
v
-
for
=
"item in voteAnalysisList"
:
key
=
"item.actionId
"
>
<
div
class
=
"item
"
>
<
div
class
=
"item-box1
"
>
<
div
class
=
"box1-left
"
>
<
div
style
=
"width: 100%; display: flex; flex-direction: column; align-items: flex-end"
>
<
div
class
=
"name nameBlod"
:
title
=
"item.actionTitle"
style
=
"
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 100%;
"
>
{{
item
.
actionTitle
}}
{{
item
.
actionTitle
}}
<
/div
>
<
div
class
=
"time"
>
{{
formatDate
(
item
.
actionDate
)
}}
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.agreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"time"
>
{{
formatDate
(
item
.
actionDate
)
}}
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.againstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.agreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.againstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
agreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
againstCount
+
"票"
}}
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
agreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
againstCount
+
"票"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box3"
>
<
div
class
=
"box3-1"
><
/div
>
<
div
class
=
"box3-2"
><
/div
>
<
/div
>
<
div
class
=
"item-box4"
>
<
div
class
=
"box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
agreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
againstPercent
+
"%"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5"
><
/div
>
<
div
class
=
"item-box6"
>
<
el
-
icon
size
=
"20"
color
=
"#555"
>
<
ArrowDownBold
/>
<
/el-icon
>
<
/div
>
<
/div
>
<
div
class
=
"item"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
<
div
class
=
"icon"
>
<
img
:
src
=
"MZD"
alt
=
""
/>
<
/div
>
<
div
class
=
"name"
>
民主党
<
/div
>
<
div
class
=
"item-box3"
>
<
div
class
=
"box3-1"
><
/div
>
<
div
class
=
"box3-2"
><
/div
>
<
/div
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.dagreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
div
class
=
"item-box4"
>
<
div
class
=
"box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
agreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
againstPercent
+
"%"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5"
><
/div
>
<
/div
>
<
div
class
=
"item"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
<
div
class
=
"icon"
>
<
img
:
src
=
"MZD"
alt
=
""
/>
<
/div
>
<
div
class
=
"name"
>
民主党
<
/div
>
<
/div
>
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.dagainstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.dagreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.dagainstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
dagreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
dagainstCount
+
"票"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box3"
><
/div
>
<
div
class
=
"item-box4"
>
<
div
class
=
"box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
dagreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
dagainstPercent
+
"%"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5"
>
<
div
class
=
"box5-1"
style
=
"color: #ce4f51"
>
{{
item
.
dreverseCount
+
"人"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box6"
>
<
div
class
=
"img-box"
v
-
if
=
"item.dpersonImageUrl"
>
<
img
:
src
=
"item.dpersonImageUrl"
alt
=
""
/>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
dagreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
dagainstCount
+
"票"
}}
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"item"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
<
div
class
=
"icon"
>
<
img
:
src
=
"GHD"
alt
=
""
/>
<
/div
>
<
div
class
=
"name"
>
共和党
<
/div
>
<
div
class
=
"item-box3"
><
/div
>
<
div
class
=
"item-box4"
>
<
div
class
=
"box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
dagreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
dagainstPercent
+
"%"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5"
>
<
div
class
=
"box5-1"
style
=
"color: #ce4f51"
>
{{
item
.
dreverseCount
+
"人"
}}
<
/div
>
<
/div
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.ragreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"item"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
<
div
class
=
"icon"
>
<
img
:
src
=
"GHD"
alt
=
""
/>
<
/div
>
<
div
class
=
"name"
>
共和党
<
/div
>
<
/div
>
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.ragainstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
div
class
=
"box1-right"
>
<
div
class
=
"box1-right-top"
>
<
el
-
progress
:
percentage
=
"Number(item.ragreePercent)"
:
show
-
text
=
"false"
color
=
"rgb(33, 129, 57)"
>
<
/el-progress
>
<
/div
>
<
div
class
=
"box1-right-bottom"
>
<
el
-
progress
:
percentage
=
"Number(item.ragainstPercent)"
:
show
-
text
=
"false"
color
=
"rgb(206, 79, 81)"
>
<
/el-progress
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
ragreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
ragainstCount
+
"票"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box3"
>
<
/div
>
<
div
class
=
"item-box4"
>
<
div
class
=
"
box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
ragreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
ragainstPercent
+
"%"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5"
>
<
div
class
=
"box5-1"
style
=
"color: #ce4f51"
>
{{
item
.
rreverseCount
+
"人
"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box6
"
>
<
div
class
=
"img-box"
v
-
if
=
"item.rpersonImageUrl"
>
<
img
:
src
=
"item.rpersonImageUrl"
alt
=
""
/
>
<
div
class
=
"item-box2"
>
<
div
class
=
"box2-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
ragreeCount
+
"票"
}}
<
/div
>
<
div
class
=
"box2-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
ragainstCount
+
"票"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box3"
><
/div
>
<
div
class
=
"
item-box4"
>
<
div
class
=
"box4-1"
style
=
"color: rgb(33, 129, 57)"
>
{{
item
.
ragreePercent
+
"%"
}}
<
/div
>
<
div
class
=
"box4-2"
style
=
"color: rgb(206, 79, 81)"
>
{{
item
.
ragainstPercent
+
"%
"
}}
<
/div
>
<
/div
>
<
div
class
=
"item-box5
"
>
<
div
class
=
"box5-1"
style
=
"color: #ce4f51"
>
{{
item
.
rreverseCount
+
"人"
}}
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<!--
<
div
class
=
"box3-main-center-content-box"
>
<!--
<
div
class
=
"box3-main-center-content-box"
>
<
div
class
=
"item"
v
-
for
=
"(item, index) in voteAnalysisList2"
:
key
=
"index"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
...
...
@@ -582,7 +588,7 @@
<
/div
>
<
/div
>
<
/div> --
>
<!--
<
div
class
=
"box3-main-center-content-box"
>
<!--
<
div
class
=
"box3-main-center-content-box"
>
<
div
class
=
"item"
v
-
for
=
"(item, index) in voteAnalysisList3"
:
key
=
"index"
>
<
div
class
=
"item-box1"
>
<
div
class
=
"box1-left"
>
...
...
@@ -684,28 +690,29 @@
<
/div
>
<
/div
>
<
/div> --
>
<
/div
>
<
/div
>
<
/div
>
<
div
v
-
if
=
"voteFooterText"
class
=
"box3-main-footer"
>
<
div
class
=
"box-footer-left"
>
<
img
src
=
"@/assets/icons/box-footer-left-icon.png"
alt
=
""
/>
<
div
v
-
if
=
"voteFooterText"
class
=
"box3-main-footer"
>
<
div
class
=
"box-footer-left"
>
<
img
src
=
"@/assets/icons/box-footer-left-icon.png"
alt
=
""
/>
<
/div
>
<
div
class
=
"box-footer-center"
>
{{
voteFooterText
}}
<
/div
>
<
div
class
=
"box-footer-right"
>
<
img
src
=
"../assets/icons/arrow-right.png"
alt
=
""
/>
<
/div
>
<
/div
>
<
div
class
=
"box-footer-center"
>
{{
voteFooterText
}}
<
div
v
-
if
=
"!aiPaneVisible.box3"
class
=
"analysis-ai-tip-row"
>
<
TipTab
class
=
"analysis-ai-tip"
/>
<
AiButton
class
=
"analysis-ai-tip-action"
@
mouseenter
=
"handleShowAiPane('box3')"
/>
<
/div
>
<
div
class
=
"box-footer-right"
>
<
img
src
=
"../assets/icons/arrow-right.png"
alt
=
""
/>
<
div
v
-
if
=
"aiPaneVisible.box3"
class
=
"analysis-ai-pane"
@
mouseleave
=
"handleHideAiPane('box3')"
>
<
AiPane
:
aiContent
=
"overviewAiContent.box3"
/>
<
/div
>
<
/div
>
<
div
v
-
if
=
"!aiPaneVisible.box3"
class
=
"analysis-ai-tip-row"
>
<
TipTab
class
=
"analysis-ai-tip"
/>
<
AiButton
class
=
"analysis-ai-tip-action"
@
mouseenter
=
"handleShowAiPane('box3')"
/>
<
/div
>
<
div
v
-
if
=
"aiPaneVisible.box3"
class
=
"analysis-ai-pane"
@
mouseleave
=
"handleHideAiPane('box3')"
>
<
AiPane
:
aiContent
=
"overviewAiContent.box3"
/>
<
/div
>
<
/div
>
<
/div
>
<
/AnalysisBox
>
<
/div
>
<
/div
>
...
...
@@ -1248,6 +1255,7 @@ onMounted(async () => {
.
box1
{
width
:
792
px
;
height
:
415
px
;
.
box1
-
main
{
height
:
368
px
;
...
...
@@ -1393,6 +1401,7 @@ onMounted(async () => {
margin
-
top
:
17
px
;
width
:
792
px
;
height
:
415
px
;
.
box2
-
main
{
height
:
359
px
;
...
...
@@ -1640,6 +1649,7 @@ onMounted(async () => {
margin
-
top
:
16
px
;
width
:
792
px
;
height
:
847
px
;
.
box3
{
width
:
100
%
;
height
:
100
%
;
...
...
@@ -1647,7 +1657,7 @@ onMounted(async () => {
.
vote
-
legend
{
position
:
absolute
;
top
:
1
5
px
;
top
:
1
0
px
;
left
:
50
%
;
transform
:
translateX
(
-
50
%
);
display
:
inline
-
flex
;
...
...
@@ -1735,12 +1745,6 @@ onMounted(async () => {
min
-
width
:
0
;
text
-
align
:
center
;
}
.
box3
-
main
-
center
-
header
-
box6
{
flex
:
90
1
0
;
min
-
width
:
0
;
text
-
align
:
center
;
}
}
.
box3
-
main
-
center
-
content
{
...
...
@@ -1976,23 +1980,6 @@ onMounted(async () => {
line
-
height
:
14
px
;
}
}
.
item
-
box6
{
flex
:
90
1
0
;
min
-
width
:
0
;
text
-
align
:
center
;
.
img
-
box
{
width
:
30
px
;
height
:
30
px
;
margin
-
left
:
30
px
;
img
{
width
:
100
%
;
height
:
100
%
;
}
}
}
}
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论