Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
eaea9d5b
提交
eaea9d5b
authored
4月 15, 2026
作者:
朱政
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:风险信号接口与样式修改
上级
743cbb31
流水线
#476
已通过 于阶段
in 1 分 41 秒
变更
21
流水线
1
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
21 个修改的文件
包含
398 行增加
和
68 行删除
+398
-68
index.js
src/api/riskSignal/index.js
+8
-0
index.vue
src/components/base/RiskSignalOverviewDetailDialog/index.vue
+188
-29
risk-signal-overview-detail-dialog.scss
...rviewDetailDialog/risk-signal-overview-detail-dialog.scss
+16
-0
riskSignalOverviewDetailHelpers.js
src/utils/riskSignalOverviewDetailHelpers.js
+0
-0
index.vue
src/views/ZMGame/component/riskToday/index.vue
+11
-3
index.vue
src/views/ZMOverView/components/newRisk/index.vue
+11
-3
index.vue
src/views/bill/billHome/index.vue
+10
-2
index.vue
src/views/coopRestriction/components/dataNew/index.vue
+10
-2
index.vue
src/views/decree/decreeHome/index.vue
+11
-2
index.vue
src/views/exportControl/index.vue
+10
-3
index.vue
src/views/finance-back/index.vue
+10
-2
index.vue
src/views/finance/index.vue
+10
-3
index.vue
src/views/gjOverView/index.vue
+21
-3
index.vue
src/views/innovationSubject/index.vue
+10
-2
index.vue
...views/marketAccessRestrictions/marketAccessHome/index.vue
+11
-2
index.vue
src/views/overView/index.vue
+21
-3
index.vue
src/views/ruleRestriction/components/dataNew/index.vue
+10
-2
index.vue
src/views/scientificFunding/components/dataNew/index.vue
+10
-2
index.vue
src/views/technologyFigures/index.vue
+10
-2
index.vue
src/views/thinkTank/index.vue
+10
-3
index.vue
src/views/viewRiskSignal/index.vue
+0
-0
没有找到文件。
src/api/riskSignal/index.js
浏览文件 @
eaea9d5b
...
...
@@ -16,3 +16,11 @@ export function getPageQuery(data) {
data
:
data
})
}
/** 风险信号详情(GET /api/riskSignal/getRiskSignalInfoById/{id}) */
export
function
getRiskSignalInfoById
(
id
)
{
return
request
({
method
:
"GET"
,
url
:
`/api/riskSignal/getRiskSignalInfoById/
${
id
}
`
});
}
src/components/base/RiskSignalOverviewDetailDialog/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -12,39 +12,57 @@
>
<template
#
header
>
<img
class=
"header-icon"
src=
"@/views/viewRiskSignal/assets/images/risk-icon.png"
alt=
""
/>
<span
class=
"risk-signal-detail-dialog__level risk-signal-detail-dialog__level--lv1"
>
特别重大风险
</span>
<span
v-if=
"listLevelText"
class=
"risk-signal-detail-dialog__level"
:class=
"listLevelModifierClass"
>
{{
listLevelText
}}
</span>
</
template
>
<div
class=
"risk-signal-detail-dialog__body"
>
<span
class=
"risk-signal-detail-dialog__title"
>
扩大实体清单制裁范围,对中企子公司实施同等管制
</span>
<div
class=
"risk-signal-detail-dialog__origin"
>
政策法规打压类风险
</div>
<div
class=
"risk-signal-detail-dialog__meta"
>
<span>
2025年11月10日 16:14·美国商务部
</span>
<div
class=
"risk-signal-detail-dialog__tags"
>
<AreaTag
:key=
"'overview-risk-dialog-tag-bio'"
tagName=
"生物科技"
>
生物科技
</AreaTag>
<AreaTag
:key=
"'overview-risk-dialog-tag-ai'"
tagName=
"人工智能"
>
人工智能
</AreaTag>
<div
class=
"risk-signal-detail-dialog__main"
v-loading=
"detailLoading"
>
<div
v-if=
"bodyFromApi"
>
<div
v-if=
"riskDetailItem.title"
class=
"risk-signal-detail-dialog__body"
>
<span
class=
"risk-signal-detail-dialog__title"
>
{{ riskDetailItem.title }}
</span>
<div
v-if=
"riskDetailItem.directionLabels.length || riskDetailItem.category"
class=
"risk-signal-detail-dialog__directions"
>
<div
v-for=
"(dirLabel, dirIndex) in riskDetailItem.directionLabels"
:key=
"'overview-risk-detail-direction-' + dirIndex + '-' + dirLabel"
class=
"risk-signal-detail-dialog__origin"
>
{{ dirLabel }}
</div>
<div
v-if=
"riskDetailItem.category"
class=
"risk-signal-detail-dialog__origin"
>
{{ riskDetailItem.category }}
</div>
</div>
<div
class=
"risk-signal-detail-dialog__meta"
>
<span>
{{ metaLine }}
</span>
<div
v-if=
"riskDetailItem.tag.length"
class=
"risk-signal-detail-dialog__tags"
>
<AreaTag
v-for=
"(tag, index) in riskDetailItem.tag"
:key=
"'overview-risk-detail-tag-' + index + '-' + tag"
:tag-name=
"tag"
>
{{ tag }}
</AreaTag>
</div>
</div>
</div>
</div>
</div>
<div
class=
"risk-signal-detail-dialog_relation"
>
<div
class=
"relation"
>
<div
class=
"logo"
>
<img
src=
"@/views/viewRiskSignal/assets/images/logo.png"
alt=
""
/>
<div
v-if=
"showRelationBar"
class=
"risk-signal-detail-dialog_relation"
@
click=
"handleRelationClick"
>
<div
class=
"relation"
>
<div
class=
"logo"
>
<img
src=
"@/views/viewRiskSignal/assets/images/logo.png"
alt=
""
/>
</div>
<div
class=
"name-text"
>
{{ riskDetailItem.relationType }}
</div>
<div
class=
"content-text"
>
{{ riskDetailItem.relationTitle }}
</div>
</div>
<div
class=
"right-arrow"
>
<img
src=
"@/views/viewRiskSignal/assets/images/right-arrow.png"
alt=
""
/>
</div>
</div>
<div
class=
"name-text"
>
总统行政令——
</div>
<div
class=
"content-text"
>
关于调整进口木材、锯材及其衍生产品进入美国的相关修正案
</div>
</div>
<div
class=
"right-arrow"
>
<img
src=
"@/views/viewRiskSignal/assets/images/right-arrow.png"
alt=
""
/>
<div
class=
"risk-signal-detail-dialog__desc"
>
{{ riskDetailItem.dsc }}
</div>
</div>
</div>
<div
class=
"risk-signal-detail-dialog__desc"
>
<p
class=
"risk-signal-detail-dialog__desc-p"
>
任何被列入美国出口管制“实体清单”或“军事最终用户清单”的企业,如果其直接或间接持有另一家公司50%或以上的股权,那么这家被控股的公司也将自动受到与清单上母公司同等的出口管制限制
</p>
<p
class=
"risk-signal-detail-dialog__desc-p"
>
任何被列入美国出口管制“实体清单”或“军事最终用户清单”的企业,如果其直接或间接持有另一家公司50%或以上的股权,那么这家被控股的公司也将自动受到与清单上母公司同等的出口管制限制
</p>
</div>
<
template
#
footer
>
<el-button
type=
"primary"
class=
"risk-signal-detail-dialog__action-btn"
@
click=
"visible = false"
>
确定风险
...
...
@@ -54,9 +72,41 @@
</template>
<
script
setup
>
import
{
computed
,
nextTick
,
reactive
,
ref
,
watch
}
from
"vue"
;
import
{
useRouter
}
from
"vue-router"
;
import
AreaTag
from
"@/components/base/AreaTag/index.vue"
;
import
{
getRiskSignalInfoById
}
from
"@/api/riskSignal/index.js"
;
import
{
buildListRowFallbackFromRawRow
,
buildRiskDetailPayloadFromApi
,
getEmptyRiskDetailPayload
,
getRiskDetailLevelModifier
,
normalizeRiskSignalListLevelText
,
resolveRiskSignalRelationRoute
,
resolveRiskSignalRowId
}
from
"@/utils/riskSignalOverviewDetailHelpers.js"
;
defineProps
({
const
props
=
defineProps
({
/** 当前点击的列表行(建议先赋值再打开 v-model) */
row
:
{
type
:
Object
,
default
:
null
},
/** 与 RiskSignal 组件 name 一致 */
nameField
:
{
type
:
String
,
default
:
"name"
},
/** 与 RiskSignal 组件 postDate 一致 */
postDateField
:
{
type
:
String
,
default
:
"postDate"
},
/** 与 RiskSignal 组件 riskLevel 一致 */
riskLevelField
:
{
type
:
String
,
default
:
"riskLevel"
},
/** 与遮罩、弹窗层级一致,避免被大屏/轮播盖住 */
zIndex
:
{
type
:
Number
,
...
...
@@ -68,7 +118,116 @@ const emit = defineEmits(["closed"]);
const
visible
=
defineModel
({
type
:
Boolean
,
default
:
false
});
const
router
=
useRouter
();
const
listLevelText
=
ref
(
""
);
const
bodyFromApi
=
ref
(
false
);
const
detailLoading
=
ref
(
false
);
const
riskDetailItem
=
reactive
(
getEmptyRiskDetailPayload
());
const
assignRiskDetail
=
(
val
)
=>
{
riskDetailItem
.
title
=
val
.
title
??
""
;
riskDetailItem
.
origin
=
val
.
origin
??
""
;
riskDetailItem
.
time
=
val
.
time
??
""
;
riskDetailItem
.
dsc
=
val
.
dsc
??
""
;
riskDetailItem
.
tag
=
Array
.
isArray
(
val
.
tag
)
?
[...
val
.
tag
]
:
[];
riskDetailItem
.
risktype
=
val
.
risktype
??
""
;
riskDetailItem
.
category
=
val
.
category
??
""
;
riskDetailItem
.
directionLabels
=
Array
.
isArray
(
val
.
directionLabels
)
?
[...
val
.
directionLabels
]
:
[];
riskDetailItem
.
relationType
=
val
.
relationType
??
""
;
riskDetailItem
.
relationTitle
=
val
.
relationTitle
??
""
;
riskDetailItem
.
relationModelCode
=
val
.
relationModelCode
??
""
;
riskDetailItem
.
relationReferedId
=
val
.
relationReferedId
??
""
;
};
const
metaLine
=
computed
(()
=>
{
const
t
=
String
(
riskDetailItem
.
time
??
""
).
trim
();
const
o
=
String
(
riskDetailItem
.
origin
??
""
).
trim
();
if
(
t
&&
o
)
{
return
`
${
t
}
·
${
o
}
`
;
}
return
t
||
o
;
});
const
showRelationBar
=
computed
(()
=>
{
const
ti
=
String
(
riskDetailItem
.
relationTitle
??
""
).
trim
();
const
ty
=
String
(
riskDetailItem
.
relationType
??
""
).
trim
();
const
id
=
String
(
riskDetailItem
.
relationReferedId
??
""
).
trim
();
return
Boolean
(
ti
||
ty
||
id
);
});
const
listLevelModifierClass
=
computed
(
()
=>
`risk-signal-detail-dialog__level--
${
getRiskDetailLevelModifier
(
listLevelText
.
value
)}
`
);
const
fieldMap
=
computed
(()
=>
({
nameField
:
props
.
nameField
,
postDateField
:
props
.
postDateField
,
riskLevelField
:
props
.
riskLevelField
}));
const
resetState
=
()
=>
{
listLevelText
.
value
=
""
;
bodyFromApi
.
value
=
false
;
detailLoading
.
value
=
false
;
assignRiskDetail
(
getEmptyRiskDetailPayload
());
};
/** 拉取详情:标题区等级来自列表行;正文区仅接口成功后展示 */
const
loadDetail
=
async
()
=>
{
if
(
!
visible
.
value
||
!
props
.
row
)
{
return
;
}
const
listFallback
=
buildListRowFallbackFromRawRow
(
props
.
row
,
fieldMap
.
value
);
listLevelText
.
value
=
normalizeRiskSignalListLevelText
(
listFallback
.
risktype
);
assignRiskDetail
(
getEmptyRiskDetailPayload
());
bodyFromApi
.
value
=
false
;
detailLoading
.
value
=
false
;
const
id
=
resolveRiskSignalRowId
(
props
.
row
);
if
(
!
id
)
{
return
;
}
detailLoading
.
value
=
true
;
try
{
const
res
=
await
getRiskSignalInfoById
(
id
);
if
(
res
.
code
===
200
&&
res
.
data
)
{
assignRiskDetail
(
buildRiskDetailPayloadFromApi
(
res
.
data
,
listFallback
));
bodyFromApi
.
value
=
true
;
}
}
catch
(
error
)
{
console
.
error
(
"获取风险信号详情 error"
,
error
);
}
finally
{
detailLoading
.
value
=
false
;
}
};
watch
(
()
=>
[
visible
.
value
,
props
.
row
],
async
()
=>
{
if
(
!
visible
.
value
)
{
resetState
();
return
;
}
await
nextTick
();
await
loadDetail
();
}
);
const
handleRelationClick
=
()
=>
{
const
loc
=
resolveRiskSignalRelationRoute
(
riskDetailItem
.
relationModelCode
,
riskDetailItem
.
relationReferedId
);
if
(
!
loc
)
{
return
;
}
const
href
=
router
.
resolve
(
loc
).
href
;
window
.
open
(
href
,
"_blank"
);
};
function
handleClosed
()
{
resetState
();
emit
(
"closed"
);
}
</
script
>
...
...
src/components/base/RiskSignalOverviewDetailDialog/risk-signal-overview-detail-dialog.scss
浏览文件 @
eaea9d5b
...
...
@@ -196,6 +196,14 @@
border-radius
:
20px
;
}
.risk-signal-detail-dialog
.risk-signal-detail-dialog__directions
{
display
:
flex
;
flex-direction
:
row
;
flex-wrap
:
wrap
;
align-items
:
center
;
gap
:
8px
;
}
.risk-signal-detail-dialog
.risk-signal-detail-dialog__body
{
display
:
flex
;
flex-direction
:
column
;
...
...
@@ -327,3 +335,11 @@
flex-wrap
:
wrap
;
gap
:
8px
;
}
/* 详情请求中 v-loading 遮罩区域(与列表一致有足够高度以便居中) */
.risk-signal-detail-dialog
.risk-signal-detail-dialog__main
{
position
:
relative
;
width
:
100%
;
min-height
:
480px
;
box-sizing
:
border-box
;
}
src/utils/riskSignalOverviewDetailHelpers.js
0 → 100644
浏览文件 @
eaea9d5b
差异被折叠。
点击展开。
src/views/ZMGame/component/riskToday/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -48,7 +48,7 @@
class=
"risk-signals-item"
v-for=
"(item, index) in warningList"
:key=
"item.signalId || item.billId || index"
@
click=
"handleRiskSignalItemToManage"
@
click=
"handleRiskSignalItemToManage
(item)
"
:class=
"
{ highlighted: item.eventType === highlightedEventType }"
>
<div
...
...
@@ -115,7 +115,13 @@
</div>
</div>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</
template
>
...
...
@@ -292,8 +298,10 @@ const handleSwithCurNews = name => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/ZMOverView/components/newRisk/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -49,7 +49,7 @@
:key=
"item.signalId != null ? String(item.signalId) : 'risk-' + index"
@
mouseenter=
"onMouseEnter(item, index)"
@
mouseleave=
"onMouseLeave"
@
click
.
stop=
"handleRiskSignalRowToManage"
@
click
.
stop=
"handleRiskSignalRowToManage
(item)
"
:class=
"['risk-signals-item',
{ 'risk-signals-item-hightLight': riskSignalActiveIndex === index }]"
>
<div
class=
"item-left"
:class=
"
{
...
...
@@ -125,7 +125,13 @@
</div>
</div>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</
template
>
...
...
@@ -655,8 +661,10 @@ const filteredHotNewsList = computed(() => {
return
hotNewsList
.
value
.
filter
(
newsItem
=>
newsItem
.
signalId
===
currentHoveredSignalId
.
value
);
});
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalRowToManage
=
()
=>
{
const
handleRiskSignalRowToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/bill/billHome/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -238,7 +238,13 @@
<DivideHeader
id=
"position4"
class=
"divide4"
:titleText=
"'资源库'"
></DivideHeader>
<ResourceLibrarySection
:on-click-to-detail=
"handleClickToDetailO"
:on-after-page-change=
"handlePageChange"
/>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</div>
</template>
...
...
@@ -469,8 +475,10 @@ const handleClickToDetailO = item => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/coopRestriction/components/dataNew/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -113,7 +113,13 @@
<RiskSignal
:list=
"riskSignals"
@
more-click=
"handleToMoreRiskSignal"
postDate=
"time"
name=
"content"
riskLevel=
"title"
@
item-click=
"handleRiskSignalItemToManage"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"content"
post-date-field=
"time"
risk-level-field=
"title"
/>
</div>
</
template
>
...
...
@@ -214,8 +220,10 @@ const handleToRiskDetail = (item) => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/decree/decreeHome/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -403,7 +403,13 @@
</div>
</div>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</template>
...
...
@@ -495,7 +501,10 @@ const onNavigateTo = () => {
// 查看更多风险信号
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/exportControl/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -692,7 +692,13 @@
</div>
</
template
>
</el-dialog>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</template>
<
script
setup
>
...
...
@@ -801,9 +807,10 @@ const handleToPosi = id => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
// 风险信号:概览写死详情弹窗
const
handleToRiskSignalDetail
=
()
=>
{
const
handleToRiskSignalDetail
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/finance-back/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -544,7 +544,13 @@
</custom-container>
</el-col>
</el-row>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"title"
post-date-field=
"time"
risk-level-field=
"status"
/>
</div>
</div>
</template>
...
...
@@ -635,8 +641,10 @@ const messageList = ref([
}
]);
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleToRiskSignalDetail
=
()
=>
{
const
handleToRiskSignalDetail
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/finance/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -549,7 +549,13 @@
</div>
</
template
>
</el-dialog>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</template>
<
script
setup
>
...
...
@@ -668,9 +674,10 @@ const handleToPosi = id => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
// 风险信号:概览写死详情弹窗
const
handleToRiskSignalDetail
=
()
=>
{
const
handleToRiskSignalDetail
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/gjOverView/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -75,7 +75,12 @@
</div>
<div
class=
"item-header-divider"
/>
<div
class=
"warning-wrap"
>
<div
v-for=
"(item, index) in warningList"
:key=
"index"
class=
"waring-item"
@
click=
"handleRiskSignalItemClick"
>
<div
v-for=
"(item, index) in warningList"
:key=
"item.title + '-' + item.time + '-' + index"
class=
"waring-item"
@
click=
"handleRiskSignalItemClick(item)"
>
<div
class=
"waring-row"
>
<div
class=
"waring-status"
:style=
"
{
color: item.status === 0 ? '#CE4F51' : item.status === 1 ? '#FA8C16' : '#52C41A',
...
...
@@ -114,7 +119,13 @@
<AdvantagesAnalysis
/>
<div
style=
"width: 100%;height: 100px;"
></div>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"title"
post-date-field=
"time"
risk-level-field=
"riskLevel"
/>
</div>
</
template
>
...
...
@@ -224,8 +235,15 @@ const warningList = ref([
]);
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemClick
=
()
=>
{
const
mapRiskOverviewRowFromStatus
=
(
item
)
=>
({
...
item
,
riskLevel
:
item
.
status
===
0
?
"特别重大"
:
item
.
status
===
1
?
"重大风险"
:
"一般风险"
});
const
handleRiskSignalItemClick
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
mapRiskOverviewRowFromStatus
(
item
);
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/innovationSubject/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -147,7 +147,13 @@
</div>
-->
<RiskSignal
:list=
"warningList"
@
more-click=
"handleToMoreRiskSignal"
@
item-click=
"handleRiskSignalItemToManage"
riskLevel=
"signalLevel"
postDate=
"signalTime"
name=
"signalTitle"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
<DivideHeader
id=
"position2"
class=
"divide2"
:titleText=
"'资讯要闻'"
></DivideHeader>
<div
class=
"center-center"
>
...
...
@@ -518,8 +524,10 @@ const handleClickToDetail = university => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/marketAccessRestrictions/marketAccessHome/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -59,7 +59,13 @@
<
/overviewMainBox
>
<
/div
>
<
RiskSignal
:
list
=
"box2Data"
@
more
-
click
=
"handleToMoreRiskSignal"
@
item
-
click
=
"handleRiskSignalItemToManage"
postDate
=
"signalTime"
name
=
"signalTitle"
riskLevel
=
"signalLevel"
/>
<
RiskSignalOverviewDetailDialog
v
-
model
=
"isRiskOverviewDetailOpen"
/>
<
RiskSignalOverviewDetailDialog
v
-
model
=
"isRiskOverviewDetailOpen"
:
row
=
"riskOverviewDetailRow"
name
-
field
=
"signalTitle"
post
-
date
-
field
=
"signalTime"
risk
-
level
-
field
=
"signalLevel"
/>
<
/div
>
<
DivideHeader
id
=
"position2"
class
=
"divide-header"
:
titleText
=
"'资讯要闻'"
><
/DivideHeader
>
...
...
@@ -933,7 +939,10 @@ const handleFetchSurveyList = async () => {
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
}
;
...
...
src/views/overView/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -112,7 +112,12 @@
</div>
<div
class=
"item-header-divider"
></div>
<div
style=
"padding: 30px 23px; height: 400px"
>
<div
class=
"waring-item"
v-for=
"(item, index) in warningList"
:key=
"index"
@
click=
"handleRiskSignalItemClick"
>
<div
class=
"waring-item"
v-for=
"(item, index) in warningList"
:key=
"item.title + '-' + item.time + '-' + index"
@
click=
"handleRiskSignalItemClick(item)"
>
<div
style=
"display: flex; height: 47px"
>
<div
class=
"waring-status"
...
...
@@ -195,7 +200,13 @@
<strengthComparison
/>
</div>
</div>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"title"
post-date-field=
"time"
risk-level-field=
"riskLevel"
/>
</div>
</
template
>
...
...
@@ -227,8 +238,15 @@ const handleToSearch = () => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemClick
=
()
=>
{
const
mapRiskOverviewRowFromStatus
=
(
item
)
=>
({
...
item
,
riskLevel
:
item
.
status
===
0
?
"特别重大"
:
item
.
status
===
1
?
"重大风险"
:
"一般风险"
});
const
handleRiskSignalItemClick
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
mapRiskOverviewRowFromStatus
(
item
);
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/ruleRestriction/components/dataNew/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -71,7 +71,13 @@
</div>
-->
<RiskSignal
:list=
"list"
@
more-click=
"handleToMoreRiskSignal"
@
item-click=
"handleRiskSignalItemToManage"
riskLevel=
"signalLevel"
postDate=
"signalTime"
name=
"signalTitle"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</
template
>
...
...
@@ -198,8 +204,10 @@ const handleToRiskDetail = (item) => {
// };
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/scientificFunding/components/dataNew/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -92,7 +92,13 @@
</div>
-->
<RiskSignal
:list=
"list"
@
more-click=
"handleToMoreRiskSignal"
@
item-click=
"handleRiskSignalItemToManage"
postDate=
"signalTime"
name=
"signalTitle"
riskLevel=
"signalLevel"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
</
template
>
...
...
@@ -128,8 +134,10 @@ const formatDate = (dateStr) => {
return
`
${
y
}
年
${
m
}
月
${
d
}
日`
;
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/technologyFigures/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -157,7 +157,13 @@
<RiskSignal
:list=
"warningList"
@
more-click=
"handleToMoreRiskSignal"
@
item-click=
"handleRiskSignalItemToManage"
postDate=
"signalTime"
name=
"signalTitle"
riskLevel=
"signalLevel"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskOverviewDetailOpen"
:row=
"riskOverviewDetailRow"
name-field=
"signalTitle"
post-date-field=
"signalTime"
risk-level-field=
"signalLevel"
/>
</div>
<DivideHeader
id=
"position2"
class=
"divide-header"
:titleText=
"'言论动态'"
v-if=
"false"
></DivideHeader>
<div
class=
"center-center"
>
...
...
@@ -828,8 +834,10 @@ const handleClickCate = cate => {
};
const
isRiskOverviewDetailOpen
=
ref
(
false
);
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
()
=>
{
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskOverviewDetailOpen
.
value
=
true
;
};
...
...
src/views/thinkTank/index.vue
浏览文件 @
eaea9d5b
...
...
@@ -211,7 +211,12 @@
<RiskSignal
:list=
"warningList"
@
more-click=
"handleToMoreRiskSignal"
postDate=
"time"
name=
"title"
@
item-click=
"handleRiskSignalItemToManage"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskDetailVisible"
/>
<RiskSignalOverviewDetailDialog
v-model=
"isRiskDetailVisible"
:row=
"riskOverviewDetailRow"
name-field=
"title"
post-date-field=
"time"
/>
</div>
<DivideHeader
id=
"position2"
class=
"divide-header"
:titleText=
"'资讯要闻'"
></DivideHeader>
<div
class=
"center-center"
>
...
...
@@ -2139,8 +2144,10 @@ const handleClick = tank => {
// router.push({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } })
};
// 风险信号 item:当前页弹窗(内容与样式与风险信号管理页 dialog 一致,写死展示)
const
handleRiskSignalItemToManage
=
()
=>
{
const
riskOverviewDetailRow
=
ref
(
null
);
const
handleRiskSignalItemToManage
=
(
item
)
=>
{
riskOverviewDetailRow
.
value
=
item
??
null
;
isRiskDetailVisible
.
value
=
true
;
};
...
...
src/views/viewRiskSignal/index.vue
浏览文件 @
eaea9d5b
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论