提交 7b3de8a1 authored 作者: coderBryanFu's avatar coderBryanFu

修改工作日程表模块

...@@ -3,9 +3,9 @@ import request from "@/api/request.js"; ...@@ -3,9 +3,9 @@ import request from "@/api/request.js";
// 实体清单-制裁概况-获取实体清单基本信息 // 实体清单-制裁概况-获取实体清单基本信息
export function getEntityInfo(sanType) { export function getEntityInfo(sanType) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/baseInfo/${sanType}` url: `/api/sanctionList/baseInfo/${sanType}`
}) });
} }
// 实体清单-制裁概况-获取发布机构与重点人物 // 实体清单-制裁概况-获取发布机构与重点人物
...@@ -15,10 +15,10 @@ export function getEntityInfo(sanType) { ...@@ -15,10 +15,10 @@ export function getEntityInfo(sanType) {
*/ */
export function getPublishInfo(params) { export function getPublishInfo(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/getPublishedOrg`, url: `/api/sanctionList/getPublishedOrg`,
params, params
}) });
} }
// 实体清单-制裁概况-获取发布机构机构动态 // 实体清单-制裁概况-获取发布机构机构动态
...@@ -29,10 +29,10 @@ export function getPublishInfo(params) { ...@@ -29,10 +29,10 @@ export function getPublishInfo(params) {
*/ */
export function getPublishOrgInfo(data) { export function getPublishOrgInfo(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/organization/relate/news`, url: `/api/organization/relate/news`,
data, data
}) });
} }
// 实体清单-制裁概况-获取实体清单更新历史 // 实体清单-制裁概况-获取实体清单更新历史
...@@ -47,14 +47,12 @@ export function getPublishOrgInfo(data) { ...@@ -47,14 +47,12 @@ export function getPublishOrgInfo(data) {
*/ */
export function getEntityUpdateInfo(data) { export function getEntityUpdateInfo(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/entitiesDataCount/getSanctionProcess`, url: `/api/entitiesDataCount/getSanctionProcess`,
data, data
}) });
} }
/** /**
* 实体清单列表-制裁概况-获取实体清单列表 * 实体清单列表-制裁概况-获取实体清单列表
* @param {Object} data * @param {Object} data
...@@ -75,7 +73,7 @@ export function getExportControlList(data, options = {}) { ...@@ -75,7 +73,7 @@ export function getExportControlList(data, options = {}) {
url: "/api/sanctionList/pageQuery", url: "/api/sanctionList/pageQuery",
data, data,
...options ...options
}) });
} }
// 实体清单-制裁概况-50%规则涉及实体数 // 实体清单-制裁概况-50%规则涉及实体数
...@@ -93,18 +91,18 @@ export function getExportControlList(data, options = {}) { ...@@ -93,18 +91,18 @@ export function getExportControlList(data, options = {}) {
*/ */
export function get50PercentEntityCount(data) { export function get50PercentEntityCount(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/sanctionList/getRuleCount`, url: `/api/sanctionList/getRuleCount`,
data, data
}) });
} }
// 实体清单-数据统计-总量统计 // 实体清单-数据统计-总量统计
export function getTotalCount() { export function getTotalCount() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/total` url: `/api/sanctionList/statistics/el/total`
}) });
} }
// 实体清单-数据统计-制裁实体数量变化情况 // 实体清单-数据统计-制裁实体数量变化情况
...@@ -114,10 +112,10 @@ export function getTotalCount() { ...@@ -114,10 +112,10 @@ export function getTotalCount() {
*/ */
export function getSanctionCountChange(params) { export function getSanctionCountChange(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/num`, url: `/api/sanctionList/statistics/el/num`,
params, params
}) });
} }
// 实体清单-数据统计-制裁实体地域分布情况 // 实体清单-数据统计-制裁实体地域分布情况
...@@ -129,10 +127,10 @@ export function getSanctionCountChange(params) { ...@@ -129,10 +127,10 @@ export function getSanctionCountChange(params) {
*/ */
export function getRegionCount(params) { export function getRegionCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/region`, url: `/api/sanctionList/statistics/el/region`,
params, params
}) });
} }
// 实体清单-数据统计-制裁实体领域分布情况 // 实体清单-数据统计-制裁实体领域分布情况
...@@ -144,10 +142,10 @@ export function getRegionCount(params) { ...@@ -144,10 +142,10 @@ export function getRegionCount(params) {
*/ */
export function getTechDomainCount(params) { export function getTechDomainCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/domain`, url: `/api/sanctionList/statistics/el/domain`,
params, params
}) });
} }
// 实体清单-数据统计-制裁实体类型分布情况 // 实体清单-数据统计-制裁实体类型分布情况
...@@ -159,10 +157,10 @@ export function getTechDomainCount(params) { ...@@ -159,10 +157,10 @@ export function getTechDomainCount(params) {
*/ */
export function getEntityTypeCount(params) { export function getEntityTypeCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/entityType`, url: `/api/sanctionList/statistics/el/entityType`,
params, params
}) });
} }
// 实体清单-深度挖掘-选择制裁 // 实体清单-深度挖掘-选择制裁
...@@ -177,10 +175,10 @@ export function getEntityTypeCount(params) { ...@@ -177,10 +175,10 @@ export function getEntityTypeCount(params) {
*/ */
export function getDeepMiningSelect(data) { export function getDeepMiningSelect(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/entitiesDataCount/getSanctionProcess`, url: `/api/entitiesDataCount/getSanctionProcess`,
data, data
}) });
} }
// 实体清单-深度挖掘-产业链列表信息 // 实体清单-深度挖掘-产业链列表信息
...@@ -190,10 +188,10 @@ export function getDeepMiningSelect(data) { ...@@ -190,10 +188,10 @@ export function getDeepMiningSelect(data) {
*/ */
export function getDeepMiningIndustry(params) { export function getDeepMiningIndustry(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/chain/getChainInfo`, url: `/api/chain/getChainInfo`,
params, params
}) });
} }
// 实体清单-深度挖掘-产业链鱼骨图信息 // 实体清单-深度挖掘-产业链鱼骨图信息
...@@ -205,10 +203,10 @@ export function getDeepMiningIndustry(params) { ...@@ -205,10 +203,10 @@ export function getDeepMiningIndustry(params) {
*/ */
export function getDeepMiningIndustryFishbone(params) { export function getDeepMiningIndustryFishbone(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/chain/getChainFishbone`, url: `/api/chain/getChainFishbone`,
params, params
}) });
} }
// 实体清单-深度挖掘-产业链中国企业实体信息查询 // 实体清单-深度挖掘-产业链中国企业实体信息查询
...@@ -220,13 +218,12 @@ export function getDeepMiningIndustryFishbone(params) { ...@@ -220,13 +218,12 @@ export function getDeepMiningIndustryFishbone(params) {
*/ */
export function getDeepMiningIndustryEntity(params) { export function getDeepMiningIndustryEntity(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/chain/getChainEntityStat`, url: `/api/chain/getChainEntityStat`,
params, params
}) });
} }
// 单次制裁-制裁概况-基本信息 // 单次制裁-制裁概况-基本信息
/** /**
* @param {Object} params * @param {Object} params
...@@ -235,10 +232,10 @@ export function getDeepMiningIndustryEntity(params) { ...@@ -235,10 +232,10 @@ export function getDeepMiningIndustryEntity(params) {
*/ */
export function getSingleSanctionOverview(params) { export function getSingleSanctionOverview(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/record/getDetail`, url: `/api/sanctionList/record/getDetail`,
params, params
}) });
} }
// 单次制裁-制裁概况-制裁实体国家分布 // 单次制裁-制裁概况-制裁实体国家分布
...@@ -249,10 +246,10 @@ export function getSingleSanctionOverview(params) { ...@@ -249,10 +246,10 @@ export function getSingleSanctionOverview(params) {
*/ */
export function getSingleSanctionEntityCountry(params) { export function getSingleSanctionEntityCountry(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/countryRegion`, url: `/api/sanctionList/statistics/el/countryRegion`,
params, params
}) });
} }
// 单次制裁-制裁概况-制裁背景 // 单次制裁-制裁概况-制裁背景
...@@ -265,10 +262,10 @@ export function getSingleSanctionEntityCountry(params) { ...@@ -265,10 +262,10 @@ export function getSingleSanctionEntityCountry(params) {
*/ */
export function getSingleSanctionBackground(data) { export function getSingleSanctionBackground(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/sanctionList/record/background`, url: `/api/sanctionList/record/background`,
data, data
}) });
} }
// 单次制裁-制裁概况-制裁清单 // 单次制裁-制裁概况-制裁清单
...@@ -283,13 +280,12 @@ export function getSingleSanctionBackground(data) { ...@@ -283,13 +280,12 @@ export function getSingleSanctionBackground(data) {
*/ */
export function getSingleSanctionOverviewList(data) { export function getSingleSanctionOverviewList(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/sanctionList/record/sanList`, url: `/api/sanctionList/record/sanList`,
data, data
}) });
} }
// 单次制裁-数据统计-总量统计 // 单次制裁-数据统计-总量统计
/** /**
* @param {Object} params * @param {Object} params
...@@ -298,10 +294,10 @@ export function getSingleSanctionOverviewList(data) { ...@@ -298,10 +294,10 @@ export function getSingleSanctionOverviewList(data) {
*/ */
export function getSingleSanctionTotalCount(params) { export function getSingleSanctionTotalCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/total`, url: `/api/sanctionList/statistics/el/total`,
params, params
}) });
} }
// 单次制裁-数据统计-制裁实体领域分布情况 // 单次制裁-数据统计-制裁实体领域分布情况
...@@ -314,10 +310,10 @@ export function getSingleSanctionTotalCount(params) { ...@@ -314,10 +310,10 @@ export function getSingleSanctionTotalCount(params) {
*/ */
export function getSingleSanctionDomainCount(params) { export function getSingleSanctionDomainCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/domain`, url: `/api/sanctionList/statistics/el/domain`,
params, params
}) });
} }
// 单次制裁-数据统计-制裁实体类型分布情况 // 单次制裁-数据统计-制裁实体类型分布情况
...@@ -330,13 +326,12 @@ export function getSingleSanctionDomainCount(params) { ...@@ -330,13 +326,12 @@ export function getSingleSanctionDomainCount(params) {
*/ */
export function getSingleSanctionEntityTypeCount(params) { export function getSingleSanctionEntityTypeCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/entityType`, url: `/api/sanctionList/statistics/el/entityType`,
params, params
}) });
} }
// 单次制裁-数据统计-制裁实体国家分布 // 单次制裁-数据统计-制裁实体国家分布
/** /**
* @param {Object} params * @param {Object} params
...@@ -345,13 +340,12 @@ export function getSingleSanctionEntityTypeCount(params) { ...@@ -345,13 +340,12 @@ export function getSingleSanctionEntityTypeCount(params) {
*/ */
export function getSingleSanctionEntityCountryCount(params) { export function getSingleSanctionEntityCountryCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/countryRegion`, url: `/api/sanctionList/statistics/el/countryRegion`,
params, params
}) });
} }
// 单次制裁-数据统计-制裁实体地域分布情况 // 单次制裁-数据统计-制裁实体地域分布情况
/** /**
* @param {Object} params * @param {Object} params
...@@ -362,13 +356,12 @@ export function getSingleSanctionEntityCountryCount(params) { ...@@ -362,13 +356,12 @@ export function getSingleSanctionEntityCountryCount(params) {
*/ */
export function getSingleSanctionEntityRegionCount(params) { export function getSingleSanctionEntityRegionCount(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/statistics/el/region`, url: `/api/sanctionList/statistics/el/region`,
params, params
}) });
} }
// 单次制裁-深度挖掘-本次制裁实体清单列表 // 单次制裁-深度挖掘-本次制裁实体清单列表
/** /**
* @param {Object} params * @param {Object} params
...@@ -380,13 +373,12 @@ export function getSingleSanctionEntityRegionCount(params) { ...@@ -380,13 +373,12 @@ export function getSingleSanctionEntityRegionCount(params) {
*/ */
export function getSingleSanctionEntityList(data) { export function getSingleSanctionEntityList(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/sanctionList/record/sanListByType`, url: `/api/sanctionList/record/sanListByType`,
data, data
}) });
} }
// 单次制裁-深度挖掘-制裁实体供应链信息 // 单次制裁-深度挖掘-制裁实体供应链信息
/** /**
* @param {Object} params * @param {Object} params
...@@ -395,10 +387,10 @@ export function getSingleSanctionEntityList(data) { ...@@ -395,10 +387,10 @@ export function getSingleSanctionEntityList(data) {
*/ */
export function getSingleSanctionEntitySupplyChain(params) { export function getSingleSanctionEntitySupplyChain(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/record/supplyChain`, url: `/api/organization/supplyChain`,
params, params
}) });
} }
// 单次制裁-深度挖掘-制裁实体股权信息 // 单次制裁-深度挖掘-制裁实体股权信息
...@@ -410,13 +402,12 @@ export function getSingleSanctionEntitySupplyChain(params) { ...@@ -410,13 +402,12 @@ export function getSingleSanctionEntitySupplyChain(params) {
*/ */
export function getSingleSanctionEntityEquity(params) { export function getSingleSanctionEntityEquity(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/record/shareholding`, url: `/api/organization/shareholding`,
params, params
}) });
} }
// 单次制裁-影响分析-企业规模-营收 // 单次制裁-影响分析-企业规模-营收
/** /**
* @param {Object} params * @param {Object} params
...@@ -425,13 +416,12 @@ export function getSingleSanctionEntityEquity(params) { ...@@ -425,13 +416,12 @@ export function getSingleSanctionEntityEquity(params) {
*/ */
export function getSingleSanctionEntityRevenue(params) { export function getSingleSanctionEntityRevenue(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/scale/revenue`, url: `/api/organization/scale/revenue`,
params, params
}) });
} }
// 单次制裁-影响分析-企业规模-净利润 // 单次制裁-影响分析-企业规模-净利润
/** /**
* @param {Object} params * @param {Object} params
...@@ -440,13 +430,12 @@ export function getSingleSanctionEntityRevenue(params) { ...@@ -440,13 +430,12 @@ export function getSingleSanctionEntityRevenue(params) {
*/ */
export function getSingleSanctionEntityNetProfit(params) { export function getSingleSanctionEntityNetProfit(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/scale/netProfit`, url: `/api/organization/scale/netProfit`,
params, params
}) });
} }
// 单次制裁-影响分析-企业规模-人员 // 单次制裁-影响分析-企业规模-人员
/** /**
* @param {Object} params * @param {Object} params
...@@ -455,13 +444,12 @@ export function getSingleSanctionEntityNetProfit(params) { ...@@ -455,13 +444,12 @@ export function getSingleSanctionEntityNetProfit(params) {
*/ */
export function getSingleSanctionEntityPersonnel(params) { export function getSingleSanctionEntityPersonnel(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/scale/personnel`, url: `/api/organization/scale/personnel`,
params, params
}) });
} }
// 单次制裁-影响分析-企业市值变化 // 单次制裁-影响分析-企业市值变化
/** /**
* @param {Object} params * @param {Object} params
...@@ -470,13 +458,12 @@ export function getSingleSanctionEntityPersonnel(params) { ...@@ -470,13 +458,12 @@ export function getSingleSanctionEntityPersonnel(params) {
*/ */
export function getSingleSanctionEntityMarketValue(params) { export function getSingleSanctionEntityMarketValue(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/marketValue`, url: `/api/organization/marketValue`,
params, params
}) });
} }
// 单次制裁-影响分析-企业研发投入 // 单次制裁-影响分析-企业研发投入
/** /**
* @param {Object} params * @param {Object} params
...@@ -485,13 +472,12 @@ export function getSingleSanctionEntityMarketValue(params) { ...@@ -485,13 +472,12 @@ export function getSingleSanctionEntityMarketValue(params) {
*/ */
export function getSingleSanctionEntityRDInvestment(params) { export function getSingleSanctionEntityRDInvestment(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/rdInvestment`, url: `/api/organization/rdInvestment`,
params, params
}) });
} }
// 单次制裁-影响分析-企业市场占比 // 单次制裁-影响分析-企业市场占比
/** /**
* @param {Object} params * @param {Object} params
...@@ -500,13 +486,12 @@ export function getSingleSanctionEntityRDInvestment(params) { ...@@ -500,13 +486,12 @@ export function getSingleSanctionEntityRDInvestment(params) {
*/ */
export function getSingleSanctionEntityMarketShare(params) { export function getSingleSanctionEntityMarketShare(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/marketShare`, url: `/api/organization/marketShare`,
params, params
}) });
} }
// 单次制裁-影响分析-科研仪器对美依赖情况 // 单次制裁-影响分析-科研仪器对美依赖情况
/** /**
* @param {Object} params * @param {Object} params
...@@ -515,13 +500,12 @@ export function getSingleSanctionEntityMarketShare(params) { ...@@ -515,13 +500,12 @@ export function getSingleSanctionEntityMarketShare(params) {
*/ */
export function getSingleSanctionEntityRDInstrumentDependency(params) { export function getSingleSanctionEntityRDInstrumentDependency(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/instrument/getDependencyUS`, url: `/api/organization/instrument/getDependencyUS`,
params, params
}) });
} }
// 单次制裁-影响分析-科研仪器进口国分布 // 单次制裁-影响分析-科研仪器进口国分布
/** /**
* @param {Object} params * @param {Object} params
...@@ -530,13 +514,12 @@ export function getSingleSanctionEntityRDInstrumentDependency(params) { ...@@ -530,13 +514,12 @@ export function getSingleSanctionEntityRDInstrumentDependency(params) {
*/ */
export function getSingleSanctionEntityRDInstrumentImportCountry(params) { export function getSingleSanctionEntityRDInstrumentImportCountry(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/instrument/getOriginCount`, url: `/api/organization/instrument/getOriginCount`,
params, params
}) });
} }
// 单次制裁-影响分析-新增国际合作项目 // 单次制裁-影响分析-新增国际合作项目
/** /**
* @param {Object} params * @param {Object} params
...@@ -546,13 +529,12 @@ export function getSingleSanctionEntityRDInstrumentImportCountry(params) { ...@@ -546,13 +529,12 @@ export function getSingleSanctionEntityRDInstrumentImportCountry(params) {
*/ */
export function getSingleSanctionEntityInternationalCooperation(params) { export function getSingleSanctionEntityInternationalCooperation(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/project/icCount`, url: `/api/organization/project/icCount`,
params, params
}) });
} }
// 单次制裁-影响分析-新增国际合作论文 // 单次制裁-影响分析-新增国际合作论文
/** /**
* @param {Object} params * @param {Object} params
...@@ -562,26 +544,26 @@ export function getSingleSanctionEntityInternationalCooperation(params) { ...@@ -562,26 +544,26 @@ export function getSingleSanctionEntityInternationalCooperation(params) {
*/ */
export function getSingleSanctionEntityInternationalPaper(params) { export function getSingleSanctionEntityInternationalPaper(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/organization/paper/icCount`, url: `/api/organization/paper/icCount`,
params, params
}) });
} }
// 商业管制清单-CCL清单简介-基本信息 // 商业管制清单-CCL清单简介-基本信息
export function getCCLInfo() { export function getCCLInfo() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/sanctionList/baseInfo/ccl` url: `/api/sanctionList/baseInfo/ccl`
}) });
} }
// 商业管制清单-CCL清单简介-出口管制分类编码 // 商业管制清单-CCL清单简介-出口管制分类编码
export function getECCN() { export function getECCN() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/ccl/eccn` url: `/api/ccl/eccn`
}) });
} }
// 商业管制清单-CCL清单简介-出口管制分类编码信息列表 // 商业管制清单-CCL清单简介-出口管制分类编码信息列表
...@@ -592,34 +574,34 @@ export function getECCN() { ...@@ -592,34 +574,34 @@ export function getECCN() {
*/ */
export function getECCNList(params) { export function getECCNList(params) {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/ccl/eccn/rank`, url: `/api/ccl/eccn/rank`,
params, params
}) });
} }
// 商业管制清单-CCL清单列表-类别字典 // 商业管制清单-CCL清单列表-类别字典
export function getECCNCategory() { export function getECCNCategory() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/commonDict/ccl/eccnCategory` url: `/api/commonDict/ccl/eccnCategory`
}) });
} }
// 商业管制清单-CCL清单列表-科技领域字典 // 商业管制清单-CCL清单列表-科技领域字典
export function getAreaType() { export function getAreaType() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/commonDict/areaType` url: `/api/commonDict/areaType`
}) });
} }
// 商业管制清单-CCL清单列表-管控原因字典 // 商业管制清单-CCL清单列表-管控原因字典
export function getControlReason() { export function getControlReason() {
return request({ return request({
method: 'GET', method: "GET",
url: `/api/commonDict/ccl/controlReason` url: `/api/commonDict/ccl/controlReason`
}) });
} }
// 商业管制清单-CCL清单简介-CCL清单查询 // 商业管制清单-CCL清单简介-CCL清单查询
...@@ -634,8 +616,8 @@ export function getControlReason() { ...@@ -634,8 +616,8 @@ export function getControlReason() {
*/ */
export function getCclQuery(data) { export function getCclQuery(data) {
return request({ return request({
method: 'POST', method: "POST",
url: `/api/ccl/query`, url: `/api/ccl/query`,
data, data
}) });
} }
...@@ -1084,7 +1084,8 @@ const processRankingData = rawData => { ...@@ -1084,7 +1084,8 @@ const processRankingData = rawData => {
// 新增字段 // 新增字段
domains: item.domainList ? item.domainList.map(d => d.name) : [], domains: item.domainList ? item.domainList.map(d => d.name) : [],
date: formattedDate, date: formattedDate,
member: item.keyMember || "-" member: item.keyMember || "-",
province: item.province || ""
}; };
}); });
}; };
......
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
<div class="warning"> <div class="warning">
<div class="warning-title"> <div class="warning-title">
<img src="./assets/warning.png" alt /> <img src="./assets/warning.png" alt />
<span>新增排华联盟预警1</span> <span>新增排华联盟预警</span>
</div> </div>
<div class="warning-content"> <div class="warning-content">
<div class="content-item" v-for="(item, index) in warningList" :key="index"> <div class="content-item" v-for="(item, index) in warningList" :key="index">
......
...@@ -469,43 +469,45 @@ const handleIndicatorChange = indicator => { ...@@ -469,43 +469,45 @@ const handleIndicatorChange = indicator => {
{ {
name: "中国", name: "中国",
type: "line", type: "line",
symbolSize: 10, symbolSize: 8,
smooth: true,
itemStyle: { itemStyle: {
color: "#CE4F51" color: "#CE4F51"
}, },
areaStyle: { // areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ // {
offset: 0, // offset: 0,
color: "rgb(206, 79, 81, .8)" // color: "rgb(206, 79, 81, .8)"
}, // },
{ // {
offset: 1, // offset: 1,
color: "rgb(206, 79, 81, .3)" // color: "rgb(206, 79, 81, .3)"
} // }
]) // ])
}, // },
data: chinaValues data: chinaValues
}, },
{ {
name: "美国", name: "美国",
type: "line", type: "line",
symbolSize: 10, smooth: true,
symbolSize: 8,
itemStyle: { itemStyle: {
color: "#055FC2" color: "#055FC2"
}, },
areaStyle: { // areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{ // {
offset: 0, // offset: 0,
color: "rgb(5, 95, 194,.8)" // color: "rgb(5, 95, 194,.8)"
}, // },
{ // {
offset: 1, // offset: 1,
color: "rgb(5, 95, 194, .3)" // color: "rgb(5, 95, 194, .3)"
} // }
]) // ])
}, // },
data: usaValues data: usaValues
} }
]; ];
...@@ -540,22 +542,25 @@ const lineOption = ref({ ...@@ -540,22 +542,25 @@ const lineOption = ref({
xAxis: { xAxis: {
type: "category", type: "category",
boundaryGap: false, boundaryGap: false,
minInterval: 1,
scale: true,
axisLine: { axisLine: {
lineStyle: { lineStyle: {
color: "#ccc", color: "#e0e0e0",
width: 1 width: 1
} }
}, },
axisTick: { axisTick: {
show: true, show: false,
lineStyle: { lineStyle: {
color: "#ccc" color: "#ccc"
} }
}, },
axisLabel: { axisLabel: {
color: "#ccc", color: "#666",
fontSize: 16, fontSize: 13,
fontWeight: 400 fontWeight: 500,
margin: 12
}, },
data: ["2021", "2022", "2023", "2024", "2025"] data: ["2021", "2022", "2023", "2024", "2025"]
}, },
...@@ -571,9 +576,9 @@ const lineOption = ref({ ...@@ -571,9 +576,9 @@ const lineOption = ref({
padding: [0, 0, 10, 0] padding: [0, 0, 10, 0]
}, },
axisLine: { axisLine: {
show: false, show: true,
lineStyle: { lineStyle: {
color: "#ccc", color: "#e0e0e0",
width: 1 width: 1
} }
}, },
......
...@@ -34,10 +34,10 @@ defineProps({ ...@@ -34,10 +34,10 @@ defineProps({
.overview-card { .overview-card {
height: 450px; height: 450px;
box-sizing: border-box; box-sizing: border-box;
border: 1px solid rgba(234, 236, 238, 1); border: 1px solid var(--border-black-5);
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
overflow: hidden; overflow: hidden;
.overview-card-header { .overview-card-header {
......
...@@ -260,7 +260,7 @@ const handleClickTab = tab => { ...@@ -260,7 +260,7 @@ const handleClickTab = tab => {
} }
}; };
const releaseTime = ref(true); const releaseTime = ref(false);
const releaseTimeList = ref([{ label: "正序", value: true }, { label: "倒序", value: false }]); const releaseTimeList = ref([{ label: "正序", value: true }, { label: "倒序", value: false }]);
const isInvolveCn = ref("Y"); const isInvolveCn = ref("Y");
...@@ -712,7 +712,7 @@ onMounted(() => { ...@@ -712,7 +712,7 @@ onMounted(() => {
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
padding: 0 20px; padding: 0 20px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 400; font-weight: 400;
...@@ -726,11 +726,11 @@ onMounted(() => { ...@@ -726,11 +726,11 @@ onMounted(() => {
.btnActive { .btnActive {
background: var(--color-main-active); background: var(--color-main-active);
color: #fff; color: var(--bg-white-100);
font-weight: 700; font-weight: 700;
&:hover { &:hover {
color: #fff; color: var(--bg-white-100);
background: var(--color-main-active); background: var(--color-main-active);
} }
} }
...@@ -760,7 +760,7 @@ onMounted(() => { ...@@ -760,7 +760,7 @@ onMounted(() => {
border: 1px solid rgba(234, 236, 238, 1); border: 1px solid rgba(234, 236, 238, 1);
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
.select-box { .select-box {
margin-top: 20px; margin-top: 20px;
...@@ -780,7 +780,7 @@ onMounted(() => { ...@@ -780,7 +780,7 @@ onMounted(() => {
.title { .title {
color: var(--color-main-active); color: var(--color-main-active);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 24px; line-height: 24px;
letter-spacing: 1px; letter-spacing: 1px;
...@@ -802,8 +802,8 @@ onMounted(() => { ...@@ -802,8 +802,8 @@ onMounted(() => {
margin-bottom: 4px; margin-bottom: 4px;
:deep(.el-checkbox__label) { :deep(.el-checkbox__label) {
color: rgb(95, 101, 108); color: var(--text-primary-65-color);
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
line-height: 24px; line-height: 24px;
...@@ -852,9 +852,9 @@ onMounted(() => { ...@@ -852,9 +852,9 @@ onMounted(() => {
} }
:deep(.el-checkbox__label) { :deep(.el-checkbox__label) {
color: #5f656c; color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
padding-left: 10px; padding-left: 10px;
...@@ -885,7 +885,7 @@ onMounted(() => { ...@@ -885,7 +885,7 @@ onMounted(() => {
box-sizing: border-box; box-sizing: border-box;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: #fff; background: var(--bg-white-100);
overflow: hidden; overflow: hidden;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
...@@ -931,7 +931,7 @@ onMounted(() => { ...@@ -931,7 +931,7 @@ onMounted(() => {
box-sizing: border-box; box-sizing: border-box;
object-fit: contain; object-fit: contain;
border-radius: 50%; border-radius: 50%;
background: #fff; background: var(--bg-white-100);
} }
.member-main { .member-main {
...@@ -949,7 +949,7 @@ onMounted(() => { ...@@ -949,7 +949,7 @@ onMounted(() => {
} }
.member-name { .member-name {
color: rgb(59, 65, 75); color: var(--text-primary-80-color);
font-family: "Source Han Sans CN"; font-family: "Source Han Sans CN";
font-size: 18px; font-size: 18px;
font-weight: 700; font-weight: 700;
...@@ -962,15 +962,15 @@ onMounted(() => { ...@@ -962,15 +962,15 @@ onMounted(() => {
.member-link { .member-link {
flex-shrink: 0; flex-shrink: 0;
color: #1459bb; color: #1459bb;
font-size: 16px; font-size: var(--font-size-base);
line-height: 24px; line-height: 24px;
} }
.member-meta, .member-meta,
.member-committee { .member-committee {
margin-top: 6px; margin-top: 6px;
color: #5f656c; color: var(--text-primary-65-color);
font-size: 16px; font-size: var(--font-size-base);
line-height: 24px; line-height: 24px;
font-weight: 400; font-weight: 400;
white-space: nowrap; white-space: nowrap;
...@@ -989,8 +989,8 @@ onMounted(() => { ...@@ -989,8 +989,8 @@ onMounted(() => {
height: 24px; height: 24px;
padding: 5px 8px; padding: 5px 8px;
border-radius: 4px; border-radius: 4px;
background: rgb(231, 243, 255); background: var(--color-primary-10);
color: rgb(5, 95, 194); color: var(--color-main-active);
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
line-height: 14px; line-height: 14px;
...@@ -1004,8 +1004,8 @@ onMounted(() => { ...@@ -1004,8 +1004,8 @@ onMounted(() => {
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
border-top: 1px solid #eaeced; border-top: 1px solid #eaeced;
color: #5f656c; color: var(--text-primary-65-color);
font-size: 16px; font-size: var(--font-size-base);
cursor: pointer; cursor: pointer;
&:hover { &:hover {
...@@ -1022,9 +1022,9 @@ onMounted(() => { ...@@ -1022,9 +1022,9 @@ onMounted(() => {
} }
.member-arrow { .member-arrow {
font-size: 16px; font-size: var(--font-size-base);
line-height: 1; line-height: 1;
color: #5f656c; color: var(--text-primary-65-color);
} }
.member-info { .member-info {
...@@ -1049,7 +1049,7 @@ onMounted(() => { ...@@ -1049,7 +1049,7 @@ onMounted(() => {
box-sizing: border-box; box-sizing: border-box;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: #fff; background: var(--bg-white-100);
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 12px; gap: 12px;
...@@ -1085,9 +1085,9 @@ onMounted(() => { ...@@ -1085,9 +1085,9 @@ onMounted(() => {
.coop-member-name { .coop-member-name {
max-width: 130px; max-width: 130px;
color: #3b414b; color: var(--text-primary-80-color);
font-family: "Source Han Sans CN"; font-family: "Source Han Sans CN";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 24px; line-height: 24px;
white-space: nowrap; white-space: nowrap;
...@@ -1104,7 +1104,7 @@ onMounted(() => { ...@@ -1104,7 +1104,7 @@ onMounted(() => {
.coop-summary { .coop-summary {
flex: 1; flex: 1;
min-width: 0; min-width: 0;
color: #5f656c; color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1169,7 +1169,7 @@ onMounted(() => { ...@@ -1169,7 +1169,7 @@ onMounted(() => {
display: flex; display: flex;
align-items: center; align-items: center;
gap: 8px; gap: 8px;
color: #3b414b; color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 15px; font-size: 15px;
font-weight: 700; font-weight: 700;
...@@ -1183,7 +1183,7 @@ onMounted(() => { ...@@ -1183,7 +1183,7 @@ onMounted(() => {
.coop-proposal-subtitle { .coop-proposal-subtitle {
margin-top: 2px; margin-top: 2px;
color: #5f656c; color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1199,7 +1199,7 @@ onMounted(() => { ...@@ -1199,7 +1199,7 @@ onMounted(() => {
top: 50%; top: 50%;
transform: translateY(-50%); transform: translateY(-50%);
color: #c0c4cc; color: #c0c4cc;
font-size: 16px; font-size: var(--font-size-base);
line-height: 1; line-height: 1;
} }
} }
...@@ -1211,7 +1211,7 @@ onMounted(() => { ...@@ -1211,7 +1211,7 @@ onMounted(() => {
padding: 20px 24px; padding: 20px 24px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: #fff; background: var(--bg-white-100);
} }
.committee-info { .committee-info {
...@@ -1231,7 +1231,7 @@ onMounted(() => { ...@@ -1231,7 +1231,7 @@ onMounted(() => {
} }
.committee-name { .committee-name {
color: #3b414b; color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -1240,9 +1240,9 @@ onMounted(() => { ...@@ -1240,9 +1240,9 @@ onMounted(() => {
.committee-desc { .committee-desc {
margin-top: 8px; margin-top: 8px;
color: #5f656c; color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
} }
...@@ -1278,7 +1278,7 @@ onMounted(() => { ...@@ -1278,7 +1278,7 @@ onMounted(() => {
box-sizing: border-box; box-sizing: border-box;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
margin-bottom: 16px; margin-bottom: 16px;
overflow: hidden; overflow: hidden;
display: flex; display: flex;
...@@ -1313,18 +1313,18 @@ onMounted(() => { ...@@ -1313,18 +1313,18 @@ onMounted(() => {
} }
.risk-tag-critical { .risk-tag-critical {
background: rgba(206, 79, 81, 0.1); background: var(--color-red-10);
color: rgb(206, 79, 81); color: var(--color-red-100);
} }
.risk-tag-high { .risk-tag-high {
background: rgba(255, 149, 77, 0.1); background: var(--color-orange-10);
color: rgb(255, 149, 77); color: var(--color-orange-100);
} }
.risk-tag-medium { .risk-tag-medium {
background: rgba(232, 189, 11, 0.1); background: var(--color-yellow-10);
color: rgb(232, 189, 11); color: var(--color-yellow-100);
} }
.bill-cover { .bill-cover {
...@@ -1342,7 +1342,7 @@ onMounted(() => { ...@@ -1342,7 +1342,7 @@ onMounted(() => {
right: 0; right: 0;
bottom: 0; bottom: 0;
height: 33.333%; height: 33.333%;
background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.92) 60%, rgba(255, 255, 255, 1)); background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.92) 60%, var(--bg-white-100));
pointer-events: none; pointer-events: none;
} }
} }
...@@ -1365,7 +1365,7 @@ onMounted(() => { ...@@ -1365,7 +1365,7 @@ onMounted(() => {
justify-content: center; justify-content: center;
padding: 0 12px; padding: 0 12px;
box-sizing: border-box; box-sizing: border-box;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: "Source Han Sans CN"; font-family: "Source Han Sans CN";
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -1395,7 +1395,7 @@ onMounted(() => { ...@@ -1395,7 +1395,7 @@ onMounted(() => {
.title { .title {
cursor: pointer; cursor: pointer;
height: 26px; height: 26px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -1410,9 +1410,9 @@ onMounted(() => { ...@@ -1410,9 +1410,9 @@ onMounted(() => {
.en-title { .en-title {
margin-top: 8px; margin-top: 8px;
height: 24px; height: 24px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
...@@ -1434,9 +1434,9 @@ onMounted(() => { ...@@ -1434,9 +1434,9 @@ onMounted(() => {
.item-left { .item-left {
width: 88px; width: 88px;
color: rgb(59, 65, 75); color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 24px; line-height: 24px;
letter-spacing: 1px; letter-spacing: 1px;
...@@ -1446,9 +1446,9 @@ onMounted(() => { ...@@ -1446,9 +1446,9 @@ onMounted(() => {
.item-right { .item-right {
max-width: 1000px; max-width: 1000px;
margin-left: 10px; margin-left: 10px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
...@@ -1466,7 +1466,7 @@ onMounted(() => { ...@@ -1466,7 +1466,7 @@ onMounted(() => {
line-height: 24px; line-height: 24px;
padding: 0 8px; padding: 0 8px;
border-radius: 4px; border-radius: 4px;
background: rgba(231, 243, 255, 1); background: var(--color-primary-10);
color: var(--color-main-active); color: var(--color-main-active);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 14px; font-size: 14px;
...@@ -1484,8 +1484,8 @@ onMounted(() => { ...@@ -1484,8 +1484,8 @@ onMounted(() => {
height: 24px; height: 24px;
line-height: 22px; line-height: 22px;
padding: 0 10px 0 30px; padding: 0 10px 0 30px;
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
color: rgb(95, 101, 108); color: var(--text-primary-65-color);
border-top: 1px solid rgb(234, 236, 238); border-top: 1px solid rgb(234, 236, 238);
border-bottom: 1px solid rgb(234, 236, 238); border-bottom: 1px solid rgb(234, 236, 238);
position: relative; position: relative;
...@@ -1518,16 +1518,16 @@ onMounted(() => { ...@@ -1518,16 +1518,16 @@ onMounted(() => {
} }
&:last-child { &:last-child {
background: rgb(59, 65, 75); background: var(--text-primary-80-color);
color: rgba(255, 255, 255, 1); color: var(--bg-white-100);
border-color: rgb(59, 65, 75); border-color: var(--text-primary-80-color);
padding-right: 10px; padding-right: 10px;
border-radius: 0; border-radius: 0;
border-right: none; border-right: none;
&::after { &::after {
display: block; display: block;
border-color: rgb(59, 65, 75); border-color: var(--text-primary-80-color);
box-shadow: none; box-shadow: none;
} }
} }
...@@ -1536,9 +1536,9 @@ onMounted(() => { ...@@ -1536,9 +1536,9 @@ onMounted(() => {
margin-left: 0; margin-left: 0;
padding: 0 10px; padding: 0 10px;
border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px;
background: rgb(59, 65, 75); background: var(--text-primary-80-color);
color: rgba(255, 255, 255, 1); color: var(--bg-white-100);
border: 1px solid rgb(59, 65, 75); border: 1px solid var(--text-primary-80-color);
border-right: none; border-right: none;
} }
} }
...@@ -1556,9 +1556,9 @@ onMounted(() => { ...@@ -1556,9 +1556,9 @@ onMounted(() => {
padding-top: 12px; padding-top: 12px;
.footer-left { .footer-left {
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 32px; line-height: 32px;
} }
......
...@@ -955,7 +955,7 @@ onUnmounted(() => { ...@@ -955,7 +955,7 @@ onUnmounted(() => {
.search-header { .search-header {
width: 100%; width: 100%;
// height: 144px; // height: 144px;
background: #fff; background: var(--bg-white-100);
// overflow: hidden; // overflow: hidden;
box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1); box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
...@@ -974,7 +974,7 @@ onUnmounted(() => { ...@@ -974,7 +974,7 @@ onUnmounted(() => {
border-radius: 10px; border-radius: 10px;
// box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1); // box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
border: 1px solid var(--color-primary-35); border: 1px solid var(--color-primary-35);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
box-sizing: border-box; box-sizing: border-box;
padding: 1px; padding: 1px;
position: relative; position: relative;
...@@ -1009,9 +1009,9 @@ onUnmounted(() => { ...@@ -1009,9 +1009,9 @@ onUnmounted(() => {
.search-text { .search-text {
margin-left: 8px; margin-left: 8px;
height: 22px; height: 22px;
color: #fff; color: var(--bg-white-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 22px; line-height: 22px;
} }
...@@ -1033,7 +1033,7 @@ onUnmounted(() => { ...@@ -1033,7 +1033,7 @@ onUnmounted(() => {
border: 1px solid #aed6ff; border: 1px solid #aed6ff;
box-sizing: border-box; box-sizing: border-box;
border-radius: 24px; border-radius: 24px;
background: #e7f3ff; background: var(--color-primary-10);
cursor: pointer; cursor: pointer;
position: relative; position: relative;
...@@ -1106,7 +1106,7 @@ onUnmounted(() => { ...@@ -1106,7 +1106,7 @@ onUnmounted(() => {
height: 48px; height: 48px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1); box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
background: rgba(255, 255, 255, 0.65); background: var(--bg-white-65);
box-sizing: border-box; box-sizing: border-box;
padding: 1px; padding: 1px;
position: relative; position: relative;
...@@ -1142,9 +1142,9 @@ onUnmounted(() => { ...@@ -1142,9 +1142,9 @@ onUnmounted(() => {
.search-text { .search-text {
margin-left: 8px; margin-left: 8px;
height: 22px; height: 22px;
color: #fff; color: var(--bg-white-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 22px; line-height: 22px;
} }
...@@ -1176,9 +1176,9 @@ onUnmounted(() => { ...@@ -1176,9 +1176,9 @@ onUnmounted(() => {
.item-footer { .item-footer {
margin-top: 10px; margin-top: 10px;
height: 30px; height: 30px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 30px; line-height: 30px;
} }
...@@ -1201,7 +1201,7 @@ onUnmounted(() => { ...@@ -1201,7 +1201,7 @@ onUnmounted(() => {
border: 1px solid #aed6ff; border: 1px solid #aed6ff;
box-sizing: border-box; box-sizing: border-box;
border-radius: 24px; border-radius: 24px;
background: #e7f3ff; background: var(--color-primary-10);
cursor: pointer; cursor: pointer;
position: relative; position: relative;
...@@ -1254,7 +1254,7 @@ onUnmounted(() => { ...@@ -1254,7 +1254,7 @@ onUnmounted(() => {
height: 450px; height: 450px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1); box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
background: #fff; background: var(--bg-white-100);
box-sizing: border-box; box-sizing: border-box;
position: relative; position: relative;
...@@ -1331,7 +1331,7 @@ onUnmounted(() => { ...@@ -1331,7 +1331,7 @@ onUnmounted(() => {
height: 48px; height: 48px;
background: var(--color-main-active); background: var(--color-main-active);
margin-left: 21px; margin-left: 21px;
color: #fff; color: var(--bg-white-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -1390,16 +1390,16 @@ onUnmounted(() => { ...@@ -1390,16 +1390,16 @@ onUnmounted(() => {
width: 4px; width: 4px;
height: 4px; height: 4px;
border-radius: 2px; border-radius: 2px;
background: rgba(132, 136, 142, 1); background: var(--text-primary-50-color);
} }
.info1-box-left { .info1-box-left {
margin-left: 18px; margin-left: 18px;
width: 100px; width: 100px;
height: 30px; height: 30px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 30px; line-height: 30px;
} }
...@@ -1407,9 +1407,9 @@ onUnmounted(() => { ...@@ -1407,9 +1407,9 @@ onUnmounted(() => {
.info1-box-right { .info1-box-right {
margin-left: 40px; margin-left: 40px;
height: 30px; height: 30px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 30px; line-height: 30px;
} }
...@@ -1428,7 +1428,7 @@ onUnmounted(() => { ...@@ -1428,7 +1428,7 @@ onUnmounted(() => {
top: 15px; top: 15px;
left: 4px; left: 4px;
width: 2px; width: 2px;
background: #e6e7e8; background: var(--bg-black-10);
} }
.info2-item { .info2-item {
...@@ -1444,7 +1444,7 @@ onUnmounted(() => { ...@@ -1444,7 +1444,7 @@ onUnmounted(() => {
left: 4px; left: 4px;
top: 18px; top: 18px;
width: 2px; width: 2px;
background: #e6e7e8; background: var(--bg-black-10);
height: 34px; height: 34px;
} }
...@@ -1474,9 +1474,9 @@ onUnmounted(() => { ...@@ -1474,9 +1474,9 @@ onUnmounted(() => {
margin-left: 15px; margin-left: 15px;
width: 147px; width: 147px;
height: 30px; height: 30px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 30px; line-height: 30px;
} }
...@@ -1485,9 +1485,9 @@ onUnmounted(() => { ...@@ -1485,9 +1485,9 @@ onUnmounted(() => {
margin-left: 10px; margin-left: 10px;
width: 320px; width: 320px;
height: 30px; height: 30px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 30px; line-height: 30px;
overflow: hidden; overflow: hidden;
...@@ -1526,9 +1526,9 @@ onUnmounted(() => { ...@@ -1526,9 +1526,9 @@ onUnmounted(() => {
.inner-box-title { .inner-box-title {
flex: 9; flex: 9;
color: rgba(255, 255, 255, 1); color: var(--bg-white-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 30px; line-height: 30px;
overflow: hidden; overflow: hidden;
...@@ -1539,7 +1539,7 @@ onUnmounted(() => { ...@@ -1539,7 +1539,7 @@ onUnmounted(() => {
.inner-box-time { .inner-box-time {
flex: 2; flex: 2;
height: 30px; height: 30px;
color: rgba(255, 255, 255, 0.65); color: var(--bg-white-65);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1554,7 +1554,7 @@ onUnmounted(() => { ...@@ -1554,7 +1554,7 @@ onUnmounted(() => {
width: 100%; width: 100%;
height: 40px; height: 40px;
overflow: hidden; overflow: hidden;
color: rgba(255, 255, 255, 0.8); color: var(--bg-white-80);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1570,7 +1570,7 @@ onUnmounted(() => { ...@@ -1570,7 +1570,7 @@ onUnmounted(() => {
height: 450px; height: 450px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1); box-shadow: 0px 0px 15px 0px rgba(22, 119, 255, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
position: relative; position: relative;
.box2-header { .box2-header {
...@@ -1596,13 +1596,13 @@ onUnmounted(() => { ...@@ -1596,13 +1596,13 @@ onUnmounted(() => {
margin-left: 18px; margin-left: 18px;
width: 148px; width: 148px;
height: 48px; height: 48px;
background: rgba(206, 79, 81, 1); background: var(--color-red-100);
display: flex; display: flex;
.text { .text {
margin-left: 16px; margin-left: 16px;
height: 22px; height: 22px;
color: #fff; color: var(--bg-white-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -1680,9 +1680,9 @@ onUnmounted(() => { ...@@ -1680,9 +1680,9 @@ onUnmounted(() => {
.text { .text {
width: 315px; width: 315px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 47px; line-height: 47px;
overflow: hidden; overflow: hidden;
...@@ -1694,7 +1694,7 @@ onUnmounted(() => { ...@@ -1694,7 +1694,7 @@ onUnmounted(() => {
width: 88px; width: 88px;
margin-left: 5px; margin-left: 5px;
line-height: 47px; line-height: 47px;
color: rgba(132, 136, 142, 1); color: var(--text-primary-50-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1752,13 +1752,14 @@ onUnmounted(() => { ...@@ -1752,13 +1752,14 @@ onUnmounted(() => {
margin-top: 21px; margin-top: 21px;
height: 450px; height: 450px;
display: flex; display: flex;
gap:16px;
.box3 { .box3 {
width: 792px; width: 792px;
height: 450px; height: 450px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(25, 69, 130, 0.2); box-shadow: 0px 0px 15px 0px rgba(25, 69, 130, 0.2);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
.box3-header { .box3-header {
height: 48px; height: 48px;
...@@ -1857,9 +1858,9 @@ onUnmounted(() => { ...@@ -1857,9 +1858,9 @@ onUnmounted(() => {
.title { .title {
width: 440px; width: 440px;
height: 24px; height: 24px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 24px; line-height: 24px;
overflow: hidden; overflow: hidden;
...@@ -1871,7 +1872,7 @@ onUnmounted(() => { ...@@ -1871,7 +1872,7 @@ onUnmounted(() => {
flex: 1; flex: 1;
text-align: right; text-align: right;
height: 24px; height: 24px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
...@@ -1883,9 +1884,9 @@ onUnmounted(() => { ...@@ -1883,9 +1884,9 @@ onUnmounted(() => {
.right-footer { .right-footer {
width: 657px; width: 657px;
height: 24px; height: 24px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
overflow: hidden; overflow: hidden;
...@@ -1903,7 +1904,7 @@ onUnmounted(() => { ...@@ -1903,7 +1904,7 @@ onUnmounted(() => {
height: 450px; height: 450px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 15px 0px rgba(25, 69, 130, 0.2); box-shadow: 0px 0px 15px 0px rgba(25, 69, 130, 0.2);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
.box4-header { .box4-header {
width: 792px; width: 792px;
...@@ -2062,9 +2063,9 @@ onUnmounted(() => { ...@@ -2062,9 +2063,9 @@ onUnmounted(() => {
.box8-desc { .box8-desc {
height: 24px; height: 24px;
line-height: 24px; line-height: 24px;
color: rgb(206, 79, 81); color: var(--color-red-100);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
} }
...@@ -2115,7 +2116,7 @@ onUnmounted(() => { ...@@ -2115,7 +2116,7 @@ onUnmounted(() => {
height: 42px; height: 42px;
line-height: 42px; line-height: 42px;
padding: 0 20px; padding: 0 20px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 400; font-weight: 400;
...@@ -2131,11 +2132,11 @@ onUnmounted(() => { ...@@ -2131,11 +2132,11 @@ onUnmounted(() => {
.btnActive { .btnActive {
background: var(--color-main-active); background: var(--color-main-active);
color: #fff; color: var(--bg-white-100);
font-weight: 700; font-weight: 700;
&:hover { &:hover {
color: #fff; color: var(--bg-white-100);
background: var(--color-main-active); background: var(--color-main-active);
} }
} }
...@@ -2173,7 +2174,7 @@ onUnmounted(() => { ...@@ -2173,7 +2174,7 @@ onUnmounted(() => {
border: 1px solid rgba(234, 236, 238, 1); border: 1px solid rgba(234, 236, 238, 1);
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
.select-box { .select-box {
margin-top: 20px; margin-top: 20px;
...@@ -2216,8 +2217,8 @@ onUnmounted(() => { ...@@ -2216,8 +2217,8 @@ onUnmounted(() => {
margin-bottom: 4px; margin-bottom: 4px;
:deep(.el-checkbox__label) { :deep(.el-checkbox__label) {
color: rgb(95, 101, 108); color: var(--text-primary-65-color);
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
line-height: 24px; line-height: 24px;
...@@ -2252,7 +2253,7 @@ onUnmounted(() => { ...@@ -2252,7 +2253,7 @@ onUnmounted(() => {
padding-bottom: 24px; padding-bottom: 24px;
border-radius: 10px; border-radius: 10px;
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
margin-bottom: 16px; margin-bottom: 16px;
overflow: hidden; overflow: hidden;
...@@ -2268,7 +2269,7 @@ onUnmounted(() => { ...@@ -2268,7 +2269,7 @@ onUnmounted(() => {
.title { .title {
cursor: pointer; cursor: pointer;
height: 26px; height: 26px;
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 20px; font-size: 20px;
font-weight: 700; font-weight: 700;
...@@ -2283,9 +2284,9 @@ onUnmounted(() => { ...@@ -2283,9 +2284,9 @@ onUnmounted(() => {
.en-title { .en-title {
margin-top: 8px; margin-top: 8px;
height: 24px; height: 24px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
...@@ -2309,9 +2310,9 @@ onUnmounted(() => { ...@@ -2309,9 +2310,9 @@ onUnmounted(() => {
.item-left { .item-left {
width: 100px; width: 100px;
// height: 24px; // height: 24px;
color: rgb(59, 65, 75); color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 700; font-weight: 700;
line-height: 24px; line-height: 24px;
letter-spacing: 1px; letter-spacing: 1px;
...@@ -2321,9 +2322,9 @@ onUnmounted(() => { ...@@ -2321,9 +2322,9 @@ onUnmounted(() => {
.item-right { .item-right {
max-width: 1000px; max-width: 1000px;
margin-left: 10px; margin-left: 10px;
color: rgba(95, 101, 108, 1); color: var(--text-primary-65-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 24px; line-height: 24px;
letter-spacing: 0px; letter-spacing: 0px;
...@@ -2340,7 +2341,7 @@ onUnmounted(() => { ...@@ -2340,7 +2341,7 @@ onUnmounted(() => {
line-height: 24px; line-height: 24px;
padding: 0 8px; padding: 0 8px;
border-radius: 4px; border-radius: 4px;
background: rgba(231, 243, 255, 1); background: var(--color-primary-10);
color: var(--color-main-active); color: var(--color-main-active);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 14px; font-size: 14px;
...@@ -2357,8 +2358,8 @@ onUnmounted(() => { ...@@ -2357,8 +2358,8 @@ onUnmounted(() => {
height: 24px; height: 24px;
line-height: 22px; line-height: 22px;
padding: 0 10px 0 30px; padding: 0 10px 0 30px;
background: rgba(255, 255, 255, 1); background: var(--bg-white-100);
color: rgb(95, 101, 108); color: var(--text-primary-65-color);
border-top: 1px solid rgb(234, 236, 238); border-top: 1px solid rgb(234, 236, 238);
border-bottom: 1px solid rgb(234, 236, 238); border-bottom: 1px solid rgb(234, 236, 238);
position: relative; position: relative;
...@@ -2391,16 +2392,16 @@ onUnmounted(() => { ...@@ -2391,16 +2392,16 @@ onUnmounted(() => {
} }
&:last-child { &:last-child {
background: rgb(59, 65, 75); background: var(--text-primary-80-color);
color: rgba(255, 255, 255, 1); color: rgba(255, 255, 255, 1);
border-color: rgb(59, 65, 75); border-color: var(--text-primary-80-color);
padding-right: 10px; padding-right: 10px;
border-radius: 0; border-radius: 0;
border-right: none; border-right: none;
&::after { &::after {
display: block; display: block;
border-color: rgb(59, 65, 75); border-color: var(--text-primary-80-color);
box-shadow: none; box-shadow: none;
} }
} }
...@@ -2409,9 +2410,9 @@ onUnmounted(() => { ...@@ -2409,9 +2410,9 @@ onUnmounted(() => {
margin-left: 0; margin-left: 0;
padding: 0 10px; padding: 0 10px;
border-radius: 4px 0 0 4px; border-radius: 4px 0 0 4px;
background: rgb(59, 65, 75); background: var(--text-primary-80-color);
color: rgba(255, 255, 255, 1); color: rgba(255, 255, 255, 1);
border: 1px solid rgb(59, 65, 75); border: 1px solid var(--text-primary-80-color);
border-right: none; border-right: none;
} }
} }
...@@ -2429,9 +2430,9 @@ onUnmounted(() => { ...@@ -2429,9 +2430,9 @@ onUnmounted(() => {
padding-top: 12px; padding-top: 12px;
.footer-left { .footer-left {
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 32px; line-height: 32px;
} }
...@@ -2448,9 +2449,9 @@ onUnmounted(() => { ...@@ -2448,9 +2449,9 @@ onUnmounted(() => {
justify-content: space-between; justify-content: space-between;
.footer-left { .footer-left {
color: rgba(59, 65, 75, 1); color: var(--text-primary-80-color);
font-family: "Microsoft YaHei"; font-family: "Microsoft YaHei";
font-size: 16px; font-size: var(--font-size-base);
font-weight: 400; font-weight: 400;
line-height: 32px; line-height: 32px;
} }
......
...@@ -25,7 +25,7 @@ const getWordCloudChart = (data = []) => { ...@@ -25,7 +25,7 @@ const getWordCloudChart = (data = []) => {
// shape: 'star' // 星形 // shape: 'star' // 星形
// shape: 'cardioid' // 心形 // shape: 'cardioid' // 心形
gridSize: 15, // 网格大小,影响词间距。 gridSize: 15, // 网格大小,影响词间距。
sizeRange: [10, 30], // 定义词云中文字大小的范围 sizeRange: [16, 36], // 定义词云中文字大小的范围
rotationRange: [0, 0], rotationRange: [0, 0],
rotationStep: 15, rotationStep: 15,
drawOutOfBound: false, // 是否超出画布 drawOutOfBound: false, // 是否超出画布
......
...@@ -246,7 +246,7 @@ ...@@ -246,7 +246,7 @@
</template> </template>
<script setup> <script setup>
import { ref, onMounted, watch, computed } from "vue"; import { ref, onMounted, watch, computed, nextTick } from "vue";
import { getBillPoliContribution, getBillMainPoliContribution, getBillPersonPoliContribution } from "@/api/deepdig"; import { getBillPoliContribution, getBillMainPoliContribution, getBillPersonPoliContribution } from "@/api/deepdig";
import setChart from "@/utils/setChart"; import setChart from "@/utils/setChart";
...@@ -488,6 +488,27 @@ const chart2Data = ref([]); ...@@ -488,6 +488,27 @@ const chart2Data = ref([]);
const chart2ColorList = ref(["#4096FF", "#FFA39E", "#ADC6FF", "#FFC069", "#B5F5EC", "#B37FEB", "#D6E4FF"]); const chart2ColorList = ref(["#4096FF", "#FFA39E", "#ADC6FF", "#FFC069", "#B5F5EC", "#B37FEB", "#D6E4FF"]);
// 使用静态行业分布数据,用于“政治献金领域分布”模块展示
const useStaticIndustryData = true;
const staticChart2Data = [
{ name: "集成电路", value: 21 },
{ name: "能源", value: 18 },
{ name: "量子科技", value: 16 },
{ name: "航空航天", value: 14 },
{ name: "通信设备", value: 12 },
{ name: "生物科技", value: 11 },
{ name: "其他", value: 8 }
];
const staticAreaList = [
{ name: "集成电路", amount: 186000, insNum: 8 },
{ name: "能源", amount: 180000, insNum: 5 },
{ name: "量子科技", amount: 171000, insNum: 2 },
{ name: "航空航天", amount: 75000, insNum: 3 },
{ name: "通信设备", amount: 70000, insNum: 2 }
];
const sankeyColors = [ const sankeyColors = [
"#5470c6", "#5470c6",
"#91cc75", "#91cc75",
...@@ -617,7 +638,7 @@ const getMainPoliContribution = async () => { ...@@ -617,7 +638,7 @@ const getMainPoliContribution = async () => {
const fullSourceList = ref([]); const fullSourceList = ref([]);
const showAllSankeyData = ref(false); const showAllSankeyData = ref(false);
const renderSankeyChart = () => { const renderSankeyChart = async () => {
const sourceList = showAllSankeyData.value ? fullSourceList.value : fullSourceList.value.slice(0, 5); const sourceList = showAllSankeyData.value ? fullSourceList.value : fullSourceList.value.slice(0, 5);
if (sourceList.length > 0) { if (sourceList.length > 0) {
...@@ -626,33 +647,39 @@ const renderSankeyChart = () => { ...@@ -626,33 +647,39 @@ const renderSankeyChart = () => {
const totalAmount = sourceList.reduce((sum, item) => sum + (item.amount || 0), 0); const totalAmount = sourceList.reduce((sum, item) => sum + (item.amount || 0), 0);
const orgNodes = sourceList.map((item, index) => ({
name: item.orgNameZh || item.orgName || `机构${index + 1}`,
value: item.amount,
itemStyle: {
color: sankeyColors[index % sankeyColors.length]
}
}));
const nodes = [ const nodes = [
...orgNodes,
{ {
name: personName, name: personName,
value: totalAmount, value: totalAmount,
label: { position: "left" },
itemStyle: { itemStyle: {
color: "#FF1493" color: "#34C38F"
} }
},
...sourceList.map((item, index) => ({
name: item.orgNameZh,
value: item.amount,
itemStyle: {
color: sankeyColors[index % sankeyColors.length]
} }
}))
]; ];
const links = sourceList.map(item => ({ const links = sourceList
source: item.orgNameZhZh, .map((item, index) => ({
source: item.orgNameZh || item.orgName || `机构${index + 1}`,
target: personName, target: personName,
value: item.amount value: item.amount
})); }))
.filter(item => !!item.source && !!item.target);
// `chart1` 容器由 v-if/v-else 动态渲染,必须等 DOM 挂载后再 init
await nextTick();
let chart1 = getSankeyChart(nodes, links); let chart1 = getSankeyChart(nodes, links);
setChart(chart1, "chart1"); setChart(chart1, "chart1");
} else { } else {
await nextTick();
let chart1 = getSankeyChart([], []); let chart1 = getSankeyChart([], []);
setChart(chart1, "chart1"); setChart(chart1, "chart1");
} }
...@@ -678,25 +705,37 @@ const getPersonPoliContribution = async personId => { ...@@ -678,25 +705,37 @@ const getPersonPoliContribution = async personId => {
if (res.code === 200 && res.data) { if (res.code === 200 && res.data) {
personPoliContribution.value = res.data; personPoliContribution.value = res.data;
// 政治献金流向:始终使用真实接口数据渲染桑基图
fullSourceList.value = res.data.sourceList || []; fullSourceList.value = res.data.sourceList || [];
showAllSankeyData.value = false; // Reset to default (top 5) showAllSankeyData.value = false; // Reset to default (top 5)
renderSankeyChart(); renderSankeyChart();
// Update Industry List (Chart 2 and List) // 政治献金领域分布:根据配置选择静态数据或接口数据
if (useStaticIndustryData) {
// 饼图数据(左侧圆环)
chart2Data.value = staticChart2Data;
const chart2Static = getPieChart(chart2Data.value, chart2ColorList.value);
setChart(chart2Static, "chart2");
// 右侧列表(Top5 领域)
areaList.value = staticAreaList.map(item => ({
name: item.name,
num: item.amount,
numtext: `$${item.amount.toLocaleString()}`,
insNum: item.insNum
}));
} else {
// 使用接口返回的行业分布
const industries = res.data.industryList || []; const industries = res.data.industryList || [];
// Update Chart 2 Data
chart2Data.value = industries.map(item => ({ chart2Data.value = industries.map(item => ({
name: item.industryName, name: item.industryName,
value: item.amount value: item.amount
})); }));
// Re-render Chart 2 const chart2Dynamic = getPieChart(chart2Data.value, chart2ColorList.value);
let chart2 = getPieChart(chart2Data.value, chart2ColorList.value); setChart(chart2Dynamic, "chart2");
setChart(chart2, "chart2");
// Update List Data
// Sort by amount desc to ensure first item is max for progress bar
const sortedIndustries = [...industries].sort((a, b) => (b.amount || 0) - (a.amount || 0)); const sortedIndustries = [...industries].sort((a, b) => (b.amount || 0) - (a.amount || 0));
areaList.value = sortedIndustries.map(item => ({ areaList.value = sortedIndustries.map(item => ({
...@@ -705,6 +744,7 @@ const getPersonPoliContribution = async personId => { ...@@ -705,6 +744,7 @@ const getPersonPoliContribution = async personId => {
numtext: `$${(item.amount || 0).toLocaleString()}`, numtext: `$${(item.amount || 0).toLocaleString()}`,
insNum: item.orgNum insNum: item.orgNum
})); }));
}
} else { } else {
personPoliContribution.value = []; personPoliContribution.value = [];
fullSourceList.value = []; fullSourceList.value = [];
...@@ -712,8 +752,8 @@ const getPersonPoliContribution = async personId => { ...@@ -712,8 +752,8 @@ const getPersonPoliContribution = async personId => {
chart2Data.value = []; chart2Data.value = [];
areaList.value = []; areaList.value = [];
let chart2 = getPieChart([], chart2ColorList.value); const chart2Empty = getPieChart([], chart2ColorList.value);
setChart(chart2, "chart2"); setChart(chart2Empty, "chart2");
} }
} catch (error) { } catch (error) {
console.error(error); console.error(error);
...@@ -723,8 +763,8 @@ const getPersonPoliContribution = async personId => { ...@@ -723,8 +763,8 @@ const getPersonPoliContribution = async personId => {
chart2Data.value = []; chart2Data.value = [];
areaList.value = []; areaList.value = [];
let chart2 = getPieChart([], chart2ColorList.value); const chart2Error = getPieChart([], chart2ColorList.value);
setChart(chart2, "chart2"); setChart(chart2Error, "chart2");
} }
}; };
......
...@@ -8,30 +8,87 @@ const getSankeyChart = (data = [], links = []) => { ...@@ -8,30 +8,87 @@ const getSankeyChart = (data = [], links = []) => {
}, },
series: { series: {
type: 'sankey', type: 'sankey',
layout: 'none', // 禁止鼠标拖拽/缩放平移,避免图表被交互改变
left: '1%', draggable: false,
right: '1%', roam: false,
top: '5%', left: 16,
bottom: '5%', right: 16,
top: 14,
bottom: 14,
nodeAlign: 'right', // 目标效果:人名贴右侧
emphasis: { emphasis: {
focus: 'adjacency' focus: 'adjacency'
}, },
nodeWidth: 50, // 所有色块宽度增加三倍
nodeGap: 2, nodeWidth: 54,
nodeGap: 10,
layoutIterations: 32, layoutIterations: 32,
lineStyle: { lineStyle: {
color: 'source', color: 'rgba(0, 0, 0, 0.08)', // 浅灰“行背景带”的基色
curveness: 0.5 opacity: 1,
curveness: 0.2
}, },
label: { label: {
show: true, show: true,
formatter: function (params) { formatter: function (params) {
return `${params.name} $${params.value.toLocaleString()}`; return `${params.name}`;
}, },
position: 'right', position: 'right',
fontSize: 16, fontSize: 16,
color: '#555' color: '#303133',
overflow: 'truncate',
width: 140
}, },
edgeLabel: {
show: true,
formatter: function (params) {
const val = params.value || 0;
return `$${Number(val).toLocaleString()}`;
},
color: '#303133',
fontSize: 16,
overflow: 'truncate',
width: 140,
align: 'center'
},
itemStyle: {
borderWidth: 0
},
nodeSort: 'descending',
levels: [
// depth = 0(机构节点)
{
depth: 0,
itemStyle: {
borderWidth: 0
},
label: {
position: 'right',
color: '#303133',
fontSize: 16,
overflow: 'truncate',
width: 140
}
},
// depth = 1(人物节点)
{
depth: 1,
itemStyle: {
color: '#34C38F'
},
label: {
// 人物名称移至色块左侧
position: 'left',
// 让文字最右侧紧贴绿色色块左侧
distance: 5,
color: '#303133',
fontSize: 16,
overflow: 'truncate',
width: 120,
align: 'right'
}
}
],
data: data, data: data,
links: links links: links
} }
......
...@@ -2049,6 +2049,7 @@ onMounted(async () => { ...@@ -2049,6 +2049,7 @@ onMounted(async () => {
margin-top: 21px; margin-top: 21px;
height: 450px; height: 450px;
display: flex; display: flex;
gap:16px;
.box3 { .box3 {
width: 792px; width: 792px;
......
...@@ -274,7 +274,7 @@ ...@@ -274,7 +274,7 @@
<el-row :gutter="20" style="width: 1600px; margin: 0 auto; height: 528px; margin-top: 64px"> <el-row :gutter="20" style="width: 1600px; margin: 0 auto; height: 528px; margin-top: 64px">
<CustomTitle id="position3" title="数据总览" /> <CustomTitle id="position3" title="数据总览" />
<el-col :span="24"> <el-col :span="24">
<custom-container title="发布频度" :titleIcon="box3Icon" height="450px"> <custom-container title="发布频度" :titleIcon="box3Icon" height="400px">
<template #default> <template #default>
<div class="box3"> <div class="box3">
<div class="box3-content"> <div class="box3-content">
......
<template> <template>
<div class="deep-mining" :class="{ deepMiningChartmode: isInChart }"> <div class="deep-mining" :class="{ deepMiningChartmode: isInChart }">
<div class="side-nav"> <div class="side-nav">
<div v-for="(item, index) in activeTab" :key="index" class="tab-item" :class="{ active: index === activeIndex }" <div
@click="activeIndex = index"> v-for="(item, index) in activeTab"
:key="index"
class="tab-item"
:class="{ active: index === activeIndex }"
@click="activeIndex = index"
>
{{ item }} {{ item }}
<span v-if="index === activeIndex" class="arrow"></span> <span v-if="index === activeIndex" class="arrow"></span>
</div> </div>
...@@ -47,8 +52,13 @@ ...@@ -47,8 +52,13 @@
<span class="group-count">{{ group.count }}家</span> <span class="group-count">{{ group.count }}家</span>
</div> </div>
<div class="group-children custom-scrollbar" v-show="group.expanded"> <div class="group-children custom-scrollbar" v-show="group.expanded">
<div class="entity-item" v-for="item in group.children" :key="item.id" <div
:class="{ active: activeEntityId === item.id }" @click="selectEntity(item)"> class="entity-item"
v-for="item in group.children"
:key="item.id"
:class="{ active: activeEntityId === item.id }"
@click="selectEntity(item)"
>
<div class="item-icon"> <div class="item-icon">
<img :src="defaultTitle" alt="" class="item-img" /> <img :src="defaultTitle" alt="" class="item-img" />
</div> </div>
...@@ -63,12 +73,19 @@ ...@@ -63,12 +73,19 @@
<div class="right" @mouseenter="handleMouseEnter" @mouseleave="handleMouseLeave"> <div class="right" @mouseenter="handleMouseEnter" @mouseleave="handleMouseLeave">
<div class="title-com custom-right-header"> <div class="title-com custom-right-header">
<div class="toggle-group"> <div class="toggle-group">
<div class="toggle-btn" :class="{ active: rightActiveTab === 'supplyChain' }" <div
@click="rightActiveTab = 'supplyChain'"> class="toggle-btn"
:class="{ active: rightActiveTab === 'supplyChain' }"
@click="rightActiveTab = 'supplyChain'"
>
<img :src="rightActiveTab === 'supplyChain' ? icon01Active : icon01" alt="" /> <img :src="rightActiveTab === 'supplyChain' ? icon01Active : icon01" alt="" />
<span>供应链</span> <span>供应链</span>
</div> </div>
<div class="toggle-btn" :class="{ active: rightActiveTab === 'equity' }" @click="rightActiveTab = 'equity'"> <div
class="toggle-btn"
:class="{ active: rightActiveTab === 'equity' }"
@click="rightActiveTab = 'equity'"
>
<img :src="rightActiveTab === 'equity' ? icon02Active : icon02" alt="" /> <img :src="rightActiveTab === 'equity' ? icon02Active : icon02" alt="" />
<span>股权</span> <span>股权</span>
</div> </div>
...@@ -115,8 +132,8 @@ import { ...@@ -115,8 +132,8 @@ import {
getSingleSanctionEntitySupplyChain, getSingleSanctionEntitySupplyChain,
getSingleSanctionEntityEquity getSingleSanctionEntityEquity
} from "@/api/exportControlV2.0"; } from "@/api/exportControlV2.0";
import RelationGraph from './components/RelationGraph.vue'; import RelationGraph from "./components/RelationGraph.vue";
import AnalysisBox from '@/components/base/boxBackground/analysisBox.vue'; import AnalysisBox from "@/components/base/boxBackground/analysisBox.vue";
const sanRecordId = ref(""); const sanRecordId = ref("");
const activeTab = ref(["实体穿透分析"]); const activeTab = ref(["实体穿透分析"]);
...@@ -170,11 +187,11 @@ const handleMouseLeave = () => { ...@@ -170,11 +187,11 @@ const handleMouseLeave = () => {
isInChart.value = false; isInChart.value = false;
}; };
const handleNodeClick = (node) => { const handleNodeClick = node => {
selectedNode.value = node; selectedNode.value = node;
}; };
const handleLayoutChange = (type) => { const handleLayoutChange = type => {
controlActive.value = type; controlActive.value = type;
if (type !== 2) { if (type !== 2) {
isInChart.value = true; isInChart.value = true;
...@@ -184,9 +201,8 @@ const handleLayoutChange = (type) => { ...@@ -184,9 +201,8 @@ const handleLayoutChange = (type) => {
}; };
const updateGraphData = () => { const updateGraphData = () => {
const data = rightActiveTab.value === 'supplyChain' const data =
? singleSanctionEntitySupplyChainData.value rightActiveTab.value === "supplyChain" ? singleSanctionEntitySupplyChainData.value : singleSanctionEntityEquityData.value;
: singleSanctionEntityEquityData.value;
if (!data) return; if (!data) return;
...@@ -214,7 +230,7 @@ const updateGraphData = () => { ...@@ -214,7 +230,7 @@ const updateGraphData = () => {
links.push({ links.push({
source: `p-${item.id || index}`, source: `p-${item.id || index}`,
target: "0", target: "0",
name: rightActiveTab.value === 'supplyChain' ? "供应商" : (item.type || "持股") name: rightActiveTab.value === "supplyChain" ? "供应商" : item.type || "持股"
}); });
}); });
...@@ -231,14 +247,14 @@ const updateGraphData = () => { ...@@ -231,14 +247,14 @@ const updateGraphData = () => {
links.push({ links.push({
source: "0", source: "0",
target: `c-${item.id || index}`, target: `c-${item.id || index}`,
name: rightActiveTab.value === 'supplyChain' ? "客户" : (item.type || "投资") name: rightActiveTab.value === "supplyChain" ? "客户" : item.description || "投资"
}); });
}); });
graphData.value = { nodes, links }; graphData.value = { nodes, links };
}; };
const updateTreeData = (data) => { const updateTreeData = data => {
if (!data) return; if (!data) return;
treeData.value = { treeData.value = {
...@@ -318,17 +334,17 @@ const getSingleSanctionEntityListRequest = async () => { ...@@ -318,17 +334,17 @@ const getSingleSanctionEntityListRequest = async () => {
} }
}; };
watch(rightActiveTab, async (newTab) => { watch(rightActiveTab, async newTab => {
if (newTab === 'supplyChain') { if (newTab === "supplyChain") {
await getSingleSanctionEntitySupplyChainRequest(); await getSingleSanctionEntitySupplyChainRequest();
} else { } else {
await getSingleSanctionEntityEquityRequest(); await getSingleSanctionEntityEquityRequest();
} }
}); });
watch(activeEntityId, async (newId) => { watch(activeEntityId, async newId => {
if (newId) { if (newId) {
if (rightActiveTab.value === 'supplyChain') { if (rightActiveTab.value === "supplyChain") {
await getSingleSanctionEntitySupplyChainRequest(); await getSingleSanctionEntitySupplyChainRequest();
} else { } else {
await getSingleSanctionEntityEquityRequest(); await getSingleSanctionEntityEquityRequest();
...@@ -337,7 +353,7 @@ watch(activeEntityId, async (newId) => { ...@@ -337,7 +353,7 @@ watch(activeEntityId, async (newId) => {
}); });
watch(is50PercentRule, async () => { watch(is50PercentRule, async () => {
if (rightActiveTab.value === 'equity') { if (rightActiveTab.value === "equity") {
await getSingleSanctionEntityEquityRequest(); await getSingleSanctionEntityEquityRequest();
} }
}); });
...@@ -857,7 +873,6 @@ onMounted(async () => { ...@@ -857,7 +873,6 @@ onMounted(async () => {
} }
.title-com.custom-right-header { .title-com.custom-right-header {
.box, .box,
.text { .text {
display: none; display: none;
......
...@@ -12,8 +12,13 @@ ...@@ -12,8 +12,13 @@
<div class="home-top-bg"></div> <div class="home-top-bg"></div>
<div class="home-main-header"> <div class="home-main-header">
<div class="home-main-header-center"> <div class="home-main-header-center">
<SearchContainer style="margin-bottom: 0; height: fit-content" v-if="containerRef" placeholder="搜索投融资限制政策" <SearchContainer
:containerRef="containerRef" areaName="" /> style="margin-bottom: 0; height: fit-content"
v-if="containerRef"
placeholder="搜索投融资限制政策"
:containerRef="containerRef"
areaName=""
/>
<!-- <el-input <!-- <el-input
v-model="searchKey" v-model="searchKey"
style="width: 100%; height: 48px" style="width: 100%; height: 48px"
...@@ -110,9 +115,17 @@ ...@@ -110,9 +115,17 @@
</div> </div>
<div class="box1-top-content-item"> <div class="box1-top-content-item">
<span class="box1-top-content-item-title">· 涉及领域:</span> <span class="box1-top-content-item-title">· 涉及领域:</span>
<div class="box1-top-content-item-tags" v-for="item in ['航空航天', '人工智能', '集成电路']" :key="item"> <div
<el-tag :type="item === '航空航天' ? 'primary' : item === '人工智能' ? 'danger' : 'info' class="box1-top-content-item-tags"
">{{ item }}</el-tag> v-for="item in ['航空航天', '人工智能', '集成电路']"
:key="item"
>
<el-tag
:type="
item === '航空航天' ? 'primary' : item === '人工智能' ? 'danger' : 'info'
"
>{{ item }}</el-tag
>
</div> </div>
</div> </div>
</div> </div>
...@@ -170,8 +183,14 @@ ...@@ -170,8 +183,14 @@
</template> </template>
</custom-container> --> </custom-container> -->
<RiskSignal :list="warningList" @item-click="handleToRiskSignalDetail" @more-click="handleToMoreRiskSignal" <RiskSignal
riskLevel="status" postDate="time" name="title" /> :list="warningList"
@item-click="handleToRiskSignalDetail"
@more-click="handleToMoreRiskSignal"
riskLevel="status"
postDate="time"
name="title"
/>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20" style="width: 1600px; margin: 0 auto"> <el-row :gutter="20" style="width: 1600px; margin: 0 auto">
...@@ -195,11 +214,22 @@ ...@@ -195,11 +214,22 @@
<div class="center-center"> <div class="center-center">
<div class="center-center-news"> <div class="center-center-news">
<NewsList :newsList="customNewsData" @item-click="handleNewsInfoClick" @more-click="handleToMoreNews" <NewsList
from='from' content="description" title="title" img="image" /> :newsList="customNewsData"
</div> @item-click="handleNewsInfoClick"
<MessageBubble :messageList="messageList" @person-click="handlePerClick" imageUrl="avatar" @more-click="handleToMoreNews"
@more-click="handleToSocialDetail" /> from="from"
content="description"
title="title"
img="image"
/>
</div>
<MessageBubble
:messageList="messageList"
@person-click="handlePerClick"
imageUrl="avatar"
@more-click="handleToSocialDetail"
/>
<!-- <div class="boxs4"> <!-- <div class="boxs4">
<custom-container title="社交媒体" :titleIcon="dialogIcon" height="450px"> <custom-container title="社交媒体" :titleIcon="dialogIcon" height="450px">
<template #default> <template #default>
...@@ -225,7 +255,6 @@ ...@@ -225,7 +255,6 @@
</div> --> </div> -->
</div> </div>
<el-row :gutter="20" style="width: 1600px; margin: 0 auto"> <el-row :gutter="20" style="width: 1600px; margin: 0 auto">
<CustomTitle id="position3" title="数据总览" style="margin-top: 64px" /> <CustomTitle id="position3" title="数据总览" style="margin-top: 64px" />
<el-col :span="24"> <el-col :span="24">
...@@ -240,18 +269,27 @@ ...@@ -240,18 +269,27 @@
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span> <span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span>
<el-progress :percentage="scope.row.percent * 100" :show-text="false" <el-progress
:status="getStatus(scope.row.percent)" /> :percentage="scope.row.percent * 100"
:show-text="false"
:status="getStatus(scope.row.percent)"
/>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="重点领域" width="180"> <el-table-column label="重点领域" width="180">
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center; gap: 5px"> <div style="display: flex; align-items: center; gap: 5px">
<el-tag v-for="tag in scope.row.tags" :key="tag" :type="tag === '通信网络' <el-tag
v-for="tag in scope.row.tags"
:key="tag"
:type="
tag === '通信网络'
? 'primary' ? 'primary'
: TAGTYPE[Math.floor(Math.random() * 5)] : TAGTYPE[Math.floor(Math.random() * 5)]
">{{ tag }}</el-tag> "
>{{ tag }}</el-tag
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -265,18 +303,27 @@ ...@@ -265,18 +303,27 @@
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span> <span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span>
<el-progress :percentage="scope.row.percent * 100" :show-text="false" <el-progress
:status="getStatus(scope.row.percent)" /> :percentage="scope.row.percent * 100"
:show-text="false"
:status="getStatus(scope.row.percent)"
/>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="重点领域" width="180"> <el-table-column label="重点领域" width="180">
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center; gap: 5px"> <div style="display: flex; align-items: center; gap: 5px">
<el-tag v-for="tag in scope.row.tags" :key="tag" :type="tag === '通信网络' <el-tag
v-for="tag in scope.row.tags"
:key="tag"
:type="
tag === '通信网络'
? 'primary' ? 'primary'
: TAGTYPE[Math.floor(Math.random() * 5)] : TAGTYPE[Math.floor(Math.random() * 5)]
">{{ tag }}</el-tag> "
>{{ tag }}</el-tag
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -290,18 +337,27 @@ ...@@ -290,18 +337,27 @@
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span> <span style="margin-right: 10px; width: 40px">{{ scope.row.num }}</span>
<el-progress :percentage="scope.row.percent * 100" :show-text="false" <el-progress
:status="getStatus(scope.row.percent)" /> :percentage="scope.row.percent * 100"
:show-text="false"
:status="getStatus(scope.row.percent)"
/>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="重点领域" width="180"> <el-table-column label="重点领域" width="180">
<template #default="scope"> <template #default="scope">
<div style="display: flex; align-items: center; gap: 5px"> <div style="display: flex; align-items: center; gap: 5px">
<el-tag v-for="tag in scope.row.tags" :key="tag" :type="tag === '通信网络' <el-tag
v-for="tag in scope.row.tags"
:key="tag"
:type="
tag === '通信网络'
? 'primary' ? 'primary'
: TAGTYPE[Math.floor(Math.random() * 5)] : TAGTYPE[Math.floor(Math.random() * 5)]
">{{ tag }}</el-tag> "
>{{ tag }}</el-tag
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -358,7 +414,8 @@ ...@@ -358,7 +414,8 @@
</div> </div>
</div> </div>
<div class="box4-footer"> <div class="box4-footer">
<el-button type="primary" link :icon="DownRight">查看更多 <el-button type="primary" link :icon="DownRight"
>查看更多
<el-icon> <el-icon>
<DArrowRight /> <DArrowRight />
</el-icon> </el-icon>
...@@ -375,8 +432,15 @@ ...@@ -375,8 +432,15 @@
</template> </template>
<template #default> <template #default>
<div class="box5"> <div class="box5">
<el-table :data="paginatedData" class="sanction-table" stripe empty-text="暂无数据" height="700px" <el-table
header-row-class-name="table-header" row-class-name="table-row"> :data="paginatedData"
class="sanction-table"
stripe
empty-text="暂无数据"
height="700px"
header-row-class-name="table-header"
row-class-name="table-row"
>
<!-- <el-table-column prop="index" label="序号" width="80" align="center"> <!-- <el-table-column prop="index" label="序号" width="80" align="center">
<template #default="scope"> <template #default="scope">
{{ scope.$index + 1 + (currentPage - 1) * pageSize }} {{ scope.$index + 1 + (currentPage - 1) * pageSize }}
...@@ -385,12 +449,14 @@ ...@@ -385,12 +449,14 @@
<el-table-column prop="name" label="实体名称" min-width="200"> <el-table-column prop="name" label="实体名称" min-width="200">
<template #default="scope"> <template #default="scope">
<div style=" <div
style="
font-weight: 700; font-weight: 700;
font-size: 16px; font-size: 16px;
color: rgba(59, 65, 75, 1); color: rgba(59, 65, 75, 1);
font-family: Microsoft YaHei; font-family: Microsoft YaHei;
"> "
>
{{ scope.row.name }} {{ scope.row.name }}
</div> </div>
</template> </template>
...@@ -399,8 +465,12 @@ ...@@ -399,8 +465,12 @@
<el-table-column prop="domains" label="涉及领域" min-width="180"> <el-table-column prop="domains" label="涉及领域" min-width="180">
<template #default="scope"> <template #default="scope">
<div class="domain-tags"> <div class="domain-tags">
<el-tag v-for="tag in scope.row.domains" :key="tag" <el-tag
:type="tag === '通信网络' ? 'primary' : 'danger'">{{ tag }}</el-tag> v-for="tag in scope.row.domains"
:key="tag"
:type="tag === '通信网络' ? 'primary' : 'danger'"
>{{ tag }}</el-tag
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -436,7 +506,9 @@ ...@@ -436,7 +506,9 @@
<el-table-column prop="revenue" label="50%规则子企业" width="140" align="right"> <el-table-column prop="revenue" label="50%规则子企业" width="140" align="right">
<template #default="scope"> <template #default="scope">
<span :class="['revenue-cell', scope.row.revenue === '无营收数据' ? 'no-revenue' : '']"> <span
:class="['revenue-cell', scope.row.revenue === '无营收数据' ? 'no-revenue' : '']"
>
{{ scope.row.revenue }} {{ scope.row.revenue }}
</span> </span>
</template> </template>
...@@ -447,8 +519,14 @@ ...@@ -447,8 +519,14 @@
<!-- <div class="pagination-info"> <!-- <div class="pagination-info">
第{{ currentPage }}页,共{{ totalPages }}页 第{{ currentPage }}页,共{{ totalPages }}页
</div> --> </div> -->
<el-pagination v-model:current-page="currentPage" :page-size="pageSize" :total="total" <el-pagination
:pager-count="5" layout="prev, pager, next" background /> v-model:current-page="currentPage"
:page-size="pageSize"
:total="total"
:pager-count="5"
layout="prev, pager, next"
background
/>
</div> </div>
</div> </div>
</template> </template>
...@@ -531,7 +609,8 @@ const messageList = ref([ ...@@ -531,7 +609,8 @@ const messageList = ref([
name: "唐纳德·特朗普", name: "唐纳德·特朗普",
time: "2025-05-12 16:02:37", time: "2025-05-12 16:02:37",
source: "真实社交", source: "真实社交",
content: "埃隆·马斯克在强力支持我竞选总统之前,早就知道我强烈反对‘电动汽车强制令’。这太荒谬了,这一直是我竞选活动的主要部分。电动汽车没问题,但不应该强迫每个人都拥有一辆。埃隆获得的补贴可能远远超过历史上任何一个人。如果没有补贴,埃隆可能不得不关门大吉,回到南非老家。" content:
"埃隆·马斯克在强力支持我竞选总统之前,早就知道我强烈反对‘电动汽车强制令’。这太荒谬了,这一直是我竞选活动的主要部分。电动汽车没问题,但不应该强迫每个人都拥有一辆。埃隆获得的补贴可能远远超过历史上任何一个人。如果没有补贴,埃隆可能不得不关门大吉,回到南非老家。"
}, },
{ {
avatar: elongAvatar, avatar: elongAvatar,
...@@ -1218,7 +1297,7 @@ const handleGetHylyList = async () => { ...@@ -1218,7 +1297,7 @@ const handleGetHylyList = async () => {
hylymc: "全部分类" hylymc: "全部分类"
}; };
categoryList.value = [obj, ...categoryList.value]; categoryList.value = [obj, ...categoryList.value];
} catch (error) { } } catch (error) {}
}; };
const chart1Data = ref({ const chart1Data = ref({
...@@ -1264,7 +1343,7 @@ const handleGetBillsByType = async () => { ...@@ -1264,7 +1343,7 @@ const handleGetBillsByType = async () => {
img: bill1 img: bill1
}; };
}); });
} catch (error) { } } catch (error) {}
}; };
// 查看社交媒体详情 // 查看社交媒体详情
const handleToSocialDetail = item => { const handleToSocialDetail = item => {
...@@ -1805,7 +1884,9 @@ onMounted(async () => { ...@@ -1805,7 +1884,9 @@ onMounted(async () => {
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
background: rgba(255, 255, 255, 0.65); background: rgba(255, 255, 255, 0.65);
position: relative; position: relative;
transition: transform 0.3s ease, box-shadow 0.3s ease; transition:
transform 0.3s ease,
box-shadow 0.3s ease;
cursor: pointer; cursor: pointer;
&:hover { &:hover {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论