Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
R
risk-monitor
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
蔡建
risk-monitor
Commits
4352ddab
提交
4352ddab
authored
3月 24, 2026
作者:
闫鹏
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'yp-dev' 到 'master'
Yp dev 查看合并请求
!216
上级
7a6c33cb
c976ee89
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
112 行增加
和
83 行删除
+112
-83
package-lock.json
package-lock.json
+0
-0
influencePanel2.vue
...ews/exportControl/analysis/components/influencePanel2.vue
+10
-7
panel1.vue
src/views/exportControl/analysis/components/panel1.vue
+10
-7
panel2.vue
src/views/exportControl/analysis/components/panel2.vue
+10
-7
overview.vue
src/views/exportControl/analysis/content/overview.vue
+10
-7
index.vue
src/views/exportControl/index.vue
+40
-31
RuleSubsidiaryDialog.vue
...ionsOverview/components/listPage/RuleSubsidiaryDialog.vue
+15
-15
index.vue
...omponents/sanctionsOverview/components/listPage/index.vue
+0
-0
index.vue
...rol/v2.0EntityList/components/sanctionsOverview/index.vue
+8
-3
index.vue
...v2.0SingleSanction/components/sanctionsOverview/index.vue
+9
-6
没有找到文件。
package-lock.json
浏览文件 @
4352ddab
差异被折叠。
点击展开。
src/views/exportControl/analysis/components/influencePanel2.vue
浏览文件 @
4352ddab
...
...
@@ -91,6 +91,8 @@ import Fishbone from "./fishbone.vue";
import
{
getHorizontalBarChart2
}
from
"../../utils/charts"
;
import
{
getDomainDistribution
,
getChainEntities
,
getChainInfoByDomainId
,
getCnEntityOnChain
}
from
"@/api/exportControl"
;
import
{
useRoute
,
useRouter
}
from
"vue-router"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
route
=
useRoute
();
const
router
=
useRouter
();
const
buttonList
=
ref
([]);
...
...
@@ -155,13 +157,14 @@ const listData = ref([
const
horizontalBarOptions
=
shallowRef
({
}
);
const
handleEttClick
=
item
=>
{
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
}
}
);
window
.
open
(
route
.
href
,
"_blank"
);
// const route = router.resolve(
{
// name: "companyPages",
// params:
{
// id: item.id
//
}
//
}
);
// window.open(route.href, "_blank");
gotoCompanyPages
(
item
.
id
);
}
;
// 处理点击事件
const
handleChainClick
=
async
chainId
=>
{
}
;
...
...
src/views/exportControl/analysis/components/panel1.vue
浏览文件 @
4352ddab
...
...
@@ -95,6 +95,8 @@ import Hint from "./hint.vue";
import
{
getEntitiesChangeCount
,
getEntitiesGrowthTrend
,
getEntitiesUpdateCount
,
getKeyEntityList
}
from
"@/api/exportControl"
;
import
_
from
"lodash"
;
import
{
useRoute
,
useRouter
}
from
"vue-router"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
route
=
useRoute
();
const
router
=
useRouter
();
const
line1Option
=
shallowRef
({});
...
...
@@ -341,13 +343,14 @@ const handleDomainChange = async domain => {
const
handleOrgClick
=
item
=>
{
console
.
log
(
item
);
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
}
});
window
.
open
(
route
.
href
,
"_blank"
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// id: item.id
// }
// });
// window.open(route.href, "_blank");
gotoCompanyPages
(
item
.
id
);
};
</
script
>
...
...
src/views/exportControl/analysis/components/panel2.vue
浏览文件 @
4352ddab
...
...
@@ -74,6 +74,8 @@ import _ from "lodash";
import
Hint
from
"./hint.vue"
;
import
{
getEntityFinancing
,
getEntityMarketValue
,
getKeyListedEntityList
,
getSanStrength
}
from
"@/api/exportControl"
;
import
{
useRoute
,
useRouter
}
from
"vue-router"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
route
=
useRoute
();
const
router
=
useRouter
();
const
value3
=
ref
(
""
);
...
...
@@ -304,13 +306,14 @@ watch(
const
handleOrgClick
=
item
=>
{
console
.
log
(
item
);
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
}
});
window
.
open
(
route
.
href
,
"_blank"
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// id: item.id
// }
// });
// window.open(route.href, "_blank");
gotoCompanyPages
(
item
.
id
);
};
</
script
>
...
...
src/views/exportControl/analysis/content/overview.vue
浏览文件 @
4352ddab
...
...
@@ -200,6 +200,8 @@ import {
import
_
from
"lodash"
;
import
{
useRoute
,
useRouter
}
from
"vue-router"
;
import
{
formatAnyDateToChinese
}
from
"../../utils"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
route
=
useRoute
();
const
router
=
useRouter
();
const
organizationInfo
=
shallowRef
({});
...
...
@@ -406,13 +408,14 @@ const panel5TypeMap = {
const
handleOrgClick
=
item
=>
{
console
.
log
(
item
);
if
(
item
.
entityType
!=
2
)
return
;
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
}
});
window
.
open
(
route
.
href
,
"_blank"
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// id: item.id
// }
// });
// window.open(route.href, "_blank");
gotoCompanyPages
(
item
.
id
);
};
// 处理"查看更多"点击事件
...
...
src/views/exportControl/index.vue
浏览文件 @
4352ddab
...
...
@@ -65,7 +65,7 @@
:subtitle=
"item.nameAbbr"
:description=
"item.description"
:quantity=
"item.postCount"
unit=
"
次
"
unit=
"
个
"
:color=
"infoListColor[index]"
@
click=
"handleToEntityListNoId(item)"
/>
...
...
@@ -715,6 +715,10 @@ import { ElMessage, ElMessageBox } from "element-plus";
import
{
DArrowRight
,
Warning
,
Search
}
from
"@element-plus/icons-vue"
;
import
EChart
from
"@/components/Chart/index.vue"
;
import
{
TAGTYPE
}
from
"@/public/constant"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
import
{
useGotoNewsDetail
}
from
"@/router/modules/news"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
gotoNewsDetail
=
useGotoNewsDetail
();
import
{
useRouter
}
from
"vue-router"
;
...
...
@@ -868,14 +872,15 @@ const handleCompClick = item => {
// console.log("item", item);
// if (item.entityType != 2) return;
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
name
);
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
,
sanTypeId
:
item
.
sanTypeId
}
});
window
.
open
(
route
.
href
,
"_blank"
);
gotoCompanyPages
(
item
.
entityId
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// id: item.id,
// sanTypeId: item.sanTypeId
// }
// });
// window.open(route.href, "_blank");
};
const
tagsType
=
[
"primary"
,
"success"
,
"warning"
,
"danger"
];
...
...
@@ -1075,14 +1080,15 @@ const processYearDomainCountData = yearDomainCountData => {
const
handleEntityClick
=
item
=>
{
console
.
log
(
"item"
,
item
);
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
name
||
item
.
entityNameZh
);
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
// startTime: item.startTime,
id
:
item
.
entityId
}
});
window
.
open
(
route
.
href
,
"_blank"
);
gotoCompanyPages
(
item
.
entityId
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// // startTime: item.startTime,
// id: item.entityId
// }
// });
// window.open(route.href, "_blank");
};
const
carouselRef
=
ref
(
null
);
...
...
@@ -1353,8 +1359,8 @@ const fetchSanctionList = async () => {
const
tags
=
Array
.
isArray
(
item
.
techDomains
)
?
item
.
techDomains
:
item
.
techDomain
?
[
item
.
techDomain
]
:
item
.
techDomainList
||
[];
?
[
item
.
techDomain
]
:
item
.
techDomainList
||
[];
const
fullTime
=
item
.
startTime
?
formatAnyDateToChinese
(
item
.
startTime
)
...
...
@@ -1384,8 +1390,8 @@ const fetchSanctionList = async () => {
countTag
:
item
.
cnEntityCount
?
`
${
item
.
cnEntityCount
}
家中国实体`
:
item
.
ruleOrgCount
?
`
${
item
.
ruleOrgCount
}
家关联实体`
:
item
.
countTag
||
""
?
`
${
item
.
ruleOrgCount
}
家关联实体`
:
item
.
countTag
||
""
};
});
totalAll
.
value
=
res
.
totalElements
;
...
...
@@ -1717,7 +1723,8 @@ const handleSanc = item => {
const
route
=
router
.
resolve
({
path
:
"/exportControl/singleSanction"
,
query
:
{
id
:
item
.
id
id
:
item
.
id
,
sanTypeId
:
activeResourceTabItem
.
value
.
id
}
});
window
.
open
(
route
.
href
,
"_blank"
);
...
...
@@ -1737,14 +1744,15 @@ const handleToMoreNews = () => {
const
handleNewsInfoClick
=
item
=>
{
console
.
log
(
"点击了社交媒体消息的更多信息:"
,
item
);
const
route
=
router
.
resolve
({
path
:
"/newsAnalysis"
,
query
:
{
newsId
:
item
.
newsId
}
});
window
.
open
(
route
.
href
,
"_blank"
);
// 应该跳转至哪儿???
// const route = router.resolve({
// path: "/newsAnalysis",
// query: {
// newsId: item.newsId
// }
// });
// window.open(route.href, "_blank");
gotoNewsDetail
(
item
.
newsId
);
};
// 切换当前出口管制政策
...
...
@@ -2324,7 +2332,8 @@ const handleMediaClick = item => {
overflow-y
:
auto
;
.home-top-bg
{
background
:
url("./assets/images/background.png")
,
background
:
url("./assets/images/background.png")
,
linear-gradient
(
180deg
,
rgba
(
229
,
241
,
254
,
1
)
0%
,
rgba
(
246
,
251
,
255
,
0
)
30%
);
background-size
:
100%
100%
;
position
:
absolute
;
...
...
src/views/exportControl/v2.0EntityList/components/sanctionsOverview/components/listPage/RuleSubsidiaryDialog.vue
浏览文件 @
4352ddab
...
...
@@ -82,7 +82,8 @@ import { ref, computed, watch } from "vue";
import
router
from
"@/router"
;
import
{
Close
}
from
"@element-plus/icons-vue"
;
import
defaultIcon
from
"@/assets/icons/default-icon1.png"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
props
=
defineProps
({
modelValue
:
{
type
:
Boolean
,
...
...
@@ -119,9 +120,9 @@ const tableData = computed(() => {
...
item
,
name
:
item
.
orgName
,
domains
:
item
.
techDomains
||
[],
equityRatio
:
item
.
equityRatio
?
(
item
.
equityRatio
*
100
).
toFixed
(
2
)
+
'%'
:
'--'
,
location
:
'--'
,
revenue
:
item
.
revenue
||
'--'
equityRatio
:
item
.
equityRatio
?
(
item
.
equityRatio
*
100
).
toFixed
(
2
)
+
"%"
:
"--"
,
location
:
"--"
,
revenue
:
item
.
revenue
||
"--"
}));
});
...
...
@@ -154,16 +155,16 @@ const getTagStyle = tag => {
// 跳转公司详情页
const
handleCompClick
=
item
=>
{
console
.
log
(
"item"
,
item
);
window
.
sessionStorage
.
setItem
(
'curTabName'
,
item
.
entityNameZh
||
item
.
entityName
)
const
route
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
id
}
});
window
.
open
(
route
.
href
,
"_blank"
);
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
entityNameZh
||
item
.
entityName
);
gotoCompanyPages
(
item
.
id
);
// const route = router.resolve({
// name: "companyPages",
// params: {
// id: item.id
// }
// });
// window.open(route.href, "_blank");
};
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
@@ -363,4 +364,4 @@ const handleCompClick = item => {
}
}
}
</
style
>
\ No newline at end of file
</
style
>
src/views/exportControl/v2.0EntityList/components/sanctionsOverview/components/listPage/index.vue
浏览文件 @
4352ddab
差异被折叠。
点击展开。
src/views/exportControl/v2.0EntityList/components/sanctionsOverview/index.vue
浏览文件 @
4352ddab
...
...
@@ -6,7 +6,7 @@
:key=
"index"
class=
"tab-item"
:class=
"
{ active: index === activeIndex }"
@click="
activeIndex = index
"
@click="
handleClickTab(index)
"
>
{{
item
}}
<span
v-if=
"index === activeIndex"
class=
"arrow"
></span>
...
...
@@ -14,10 +14,10 @@
</div>
<div
class=
"content-box"
>
<introductionPage
v-show=
"activeIndex ==
=
1"
v-show=
"activeIndex == 1"
@
update-entity-info=
"data => $emit('update-entity-info', data)"
></introductionPage>
<listPage
v-show=
"activeIndex ==
=
0"
></listPage>
<listPage
v-show=
"activeIndex == 0"
></listPage>
</div>
</div>
</
template
>
...
...
@@ -31,6 +31,11 @@ const emit = defineEmits(["update-entity-info"]);
const
activeTab
=
ref
([
"实体清单列表"
,
"实体清单简介"
]);
const
activeIndex
=
ref
(
0
);
const
handleClickTab
=
index
=>
{
console
.
log
(
index
);
activeIndex
.
value
=
index
;
};
</
script
>
<
style
scoped
lang=
"scss"
>
...
...
src/views/exportControl/v2.0SingleSanction/components/sanctionsOverview/index.vue
浏览文件 @
4352ddab
...
...
@@ -38,9 +38,7 @@
<div
class=
"info-row"
>
<div
class=
"label"
>
制裁领域:
</div>
<div
class=
"value tags"
>
<span
class=
"tag"
v-for=
"(domain, index) in formattedData.domains"
:key=
"index"
>
{{
domain
}}
</span>
<AreaTag
v-for=
"(domain, index) in formattedData.domains"
:key=
"index"
:tagName=
"domain"
/>
</div>
</div>
</div>
...
...
@@ -116,7 +114,7 @@
<el-input
v-model=
"searchKeyword"
placeholder=
"搜索实体"
style=
"width: 150px"
style=
"width: 150px
; border: 1px solid rgba(170, 173, 177, 0.4); border-radius: 5px
"
:suffix-icon=
"Search"
/>
</div>
...
...
@@ -219,6 +217,7 @@
import
{
ref
,
defineProps
,
computed
,
onMounted
,
watch
}
from
"vue"
;
import
{
useRouter
}
from
"vue-router"
;
import
{
ElMessage
}
from
"element-plus"
;
import
AreaTag
from
"@/components/base/AreaTag/index.vue"
;
import
{
DArrowRight
,
Search
}
from
"@element-plus/icons-vue"
;
import
{
debounce
}
from
"lodash"
;
import
title
from
"../../assets/title.png"
;
...
...
@@ -232,6 +231,9 @@ import {
import
RuleSubsidiaryDialog
from
"../../../v2.0EntityList/components/sanctionsOverview/components/listPage/RuleSubsidiaryDialog.vue"
;
import
{
useRoute
}
from
"vue-router"
;
import
{
useGotoCompanyPages
}
from
"@/router/modules/company"
;
const
gotoCompanyPages
=
useGotoCompanyPages
();
const
route
=
useRoute
();
// 跳转公司详情页
const
handleCompClick
=
item
=>
{
...
...
@@ -240,8 +242,9 @@ const handleCompClick = item => {
return
;
}
window
.
sessionStorage
.
setItem
(
"curTabName"
,
item
.
name
);
const
curRoute
=
router
.
resolve
({
name
:
"companyPages"
,
params
:
{
id
:
item
.
entityId
}
});
window
.
open
(
curRoute
.
href
,
"_blank"
);
gotoCompanyPages
(
item
.
entityId
);
// const curRoute = router.resolve({ name: "companyPages", params: { id: item.entityId } });
// window.open(curRoute.href, "_blank");
};
// 跳转发布机构详情页
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论