提交 274cb057 authored 作者: 闫鹏's avatar 闫鹏

合并分支 'yp-dev' 到 'master'

Yp dev 查看合并请求 !147
...@@ -417,6 +417,7 @@ const pageSize = ref(5); // 每页显示 5 条 ...@@ -417,6 +417,7 @@ const pageSize = ref(5); // 每页显示 5 条
const handleFieldChange = domainId => { const handleFieldChange = domainId => {
console.log("领域改变", domainId); console.log("领域改变", domainId);
console.log("领域值 =>", selectedFieldForLatest.value); console.log("领域值 =>", selectedFieldForLatest.value);
newsCurrentPage.value = 1;
getUSGovernmentLatestDynamicData(); getUSGovernmentLatestDynamicData();
}; };
......
...@@ -210,7 +210,7 @@ ...@@ -210,7 +210,7 @@
</div> </div>
</div> </div>
<div class="bottom-content"> <div class="bottom-content">
<CalendarHeatmap v-if="timelineData.length > 0" :timelineData="timelineData" /> <CalendarHeatmap v-if="timelineData.length > 0" :timelineData="timelineData" />
<!-- <div class="timeline-container"> <!-- <div class="timeline-container">
<div class="timeline-list"> <div class="timeline-list">
<div v-for="(dept, index) in timelineList" :key="index" class="dept-row"> <div v-for="(dept, index) in timelineList" :key="index" class="dept-row">
...@@ -320,13 +320,11 @@ const monthNum = computed(() => { ...@@ -320,13 +320,11 @@ const monthNum = computed(() => {
} }
}); });
// 全政府-美政府部门对我打压遏制时间线 // 全政府-美政府部门对我打压遏制时间线
const loadingHistory = ref(false); const loadingHistory = ref(false);
const timelineData = ref([]) const timelineData = ref([]);
const getUSGovernmentSanctionHistoryData = async () => { const getUSGovernmentSanctionHistoryData = async () => {
timelineData.value = [] // 初始化数据 timelineData.value = []; // 初始化数据
loadingHistory.value = true; loadingHistory.value = true;
try { try {
const params = { const params = {
...@@ -378,7 +376,7 @@ const getUSGovernmentSanctionHistoryData = async () => { ...@@ -378,7 +376,7 @@ const getUSGovernmentSanctionHistoryData = async () => {
// sanctionId: item.sanctionId // sanctionId: item.sanctionId
// }); // });
// }); // });
// //统计完成后生成新的数组 // //统计完成后生成新的数组
// let fArr = [] // let fArr = []
// rawList.forEach((item)=>{ // rawList.forEach((item)=>{
...@@ -803,12 +801,17 @@ const handleGetSanList = async () => { ...@@ -803,12 +801,17 @@ const handleGetSanList = async () => {
const res = await getSanTypeList(params); const res = await getSanTypeList(params);
console.log("制裁手段列表", res); console.log("制裁手段列表", res);
if (res.code === 200 && res.data) { if (res.code === 200 && res.data) {
methodOptions.value = res.data.map(item => { let _methodOptions = res.data.map(item => {
return { return {
label: item.name, label: item.name,
value: item.id value: item.id
}; };
}); });
_methodOptions.unshift({
label: "全部制裁手段",
value: ""
});
methodOptions.value = _methodOptions;
methodValue.value = ""; methodValue.value = "";
} }
} catch (error) {} } catch (error) {}
......
...@@ -1062,16 +1062,20 @@ const initRightDonut = async () => { ...@@ -1062,16 +1062,20 @@ const initRightDonut = async () => {
{ {
type: "graph", type: "graph",
layout: "circular", layout: "circular",
circular: {
rotateLabel: true
},
symbolSize: 80, symbolSize: 80,
roam: true, roam: true,
label: { label: {
show: true show: true,
position: "outside"
}, },
edgeSymbol: ["circle", ""], edgeSymbol: ["circle", ""],
edgeSymbolSize: [4, 80], edgeSymbolSize: [4, 80],
edgeLabel: { edgeLabel: {
fontSize: 20, fontSize: 20,
show: false show: true
}, },
data: data, data: data,
// links: [], // links: [],
...@@ -1232,7 +1236,12 @@ const getPredictionList = async () => { ...@@ -1232,7 +1236,12 @@ const getPredictionList = async () => {
const res = await getPrediction(); const res = await getPrediction();
if (res && res.code === 200) { if (res && res.code === 200) {
console.log("----getPredictionList", res.data); console.log("----getPredictionList", res.data);
warningList.value = res.data; warningList.value = res.data.map(item => {
return {
...item,
statementList: item.statementList.reverse()
};
});
} }
} catch (error) { } catch (error) {
console.error("获取联盟动态接口失败:", error); console.error("获取联盟动态接口失败:", error);
...@@ -2055,7 +2064,7 @@ watch(activeDate, async () => { ...@@ -2055,7 +2064,7 @@ watch(activeDate, async () => {
.area-left { .area-left {
width: 792px; width: 792px;
height: 500px; height: 520px;
box-sizing: border-box; box-sizing: border-box;
border-radius: var(---10, 10px); border-radius: var(---10, 10px);
/* 业务系统/模块阴影 */ /* 业务系统/模块阴影 */
...@@ -2098,7 +2107,7 @@ watch(activeDate, async () => { ...@@ -2098,7 +2107,7 @@ watch(activeDate, async () => {
.area-right { .area-right {
width: 792px; width: 792px;
height: 500px; height: 520px;
box-sizing: border-box; box-sizing: border-box;
border-radius: var(---10, 10px); border-radius: var(---10, 10px);
/* 业务系统/模块阴影 */ /* 业务系统/模块阴影 */
...@@ -2134,8 +2143,8 @@ watch(activeDate, async () => { ...@@ -2134,8 +2143,8 @@ watch(activeDate, async () => {
.right-content { .right-content {
width: 100%; width: 100%;
height: calc(100% - 48px); height: 450px;
padding: 33px 48px 59px 50px; // padding: 33px 48px 59px 50px;
} }
} }
} }
......
...@@ -1024,16 +1024,19 @@ export const getMultipleBarChart_m = object => { ...@@ -1024,16 +1024,19 @@ export const getMultipleBarChart_m = object => {
type: "value", type: "value",
splitNumber: 5, splitNumber: 5,
alignTicks: false, alignTicks: false,
name: "个", axisLabel: {
nameLocation: "end", formatter: "{value} 个"
nameGap: 10,
nameTextStyle: {
color: "rgba(95, 101, 108, 1)",
fontSize: 14,
fontWeight: 400,
fontFamily: "Microsoft YaHei",
padding: [0, 0, 0, 0]
} }
// name: "个",
// nameLocation: "end",
// nameGap: 10,
// nameTextStyle: {
// color: "rgba(95, 101, 108, 1)",
// fontSize: 14,
// fontWeight: 400,
// fontFamily: "Microsoft YaHei",
// padding: [0, 0, 0, 0]
// }
}, },
series: datas series: datas
}; };
......
...@@ -13,8 +13,13 @@ ...@@ -13,8 +13,13 @@
</div> --> </div> -->
<div class="home-main-header-center"> <div class="home-main-header-center">
<SearchContainer style="margin-bottom: 0; margin-top: 51px; height: fit-content" v-if="containerRef" <SearchContainer
placeholder="搜索智库报告" :containerRef="containerRef" areaName="智库" /> style="margin-bottom: 0; margin-top: 51px; height: fit-content"
v-if="containerRef"
placeholder="搜索智库报告"
:containerRef="containerRef"
areaName="智库"
/>
<!-- <el-input v-model="searchThinktankText" @keyup.enter="handleSearch" <!-- <el-input v-model="searchThinktankText" @keyup.enter="handleSearch"
style="width: 838px; height: 100%" placeholder="搜索智库报告" /> style="width: 838px; height: 100%" placeholder="搜索智库报告" />
<div class="search"> <div class="search">
...@@ -49,8 +54,11 @@ ...@@ -49,8 +54,11 @@
<div class="icon"> <div class="icon">
<img :src="item.logo" alt="" /> <img :src="item.logo" alt="" />
</div> </div>
<div class="rank" :class="{ rank1: item.rank === 1, rank2: item.rank === 2, rank3: item.rank === 3 }"> <!-- <div class="rank" :class="{ rank1: item.rank === 1, rank2: item.rank === 2, rank3: item.rank === 3 }">
{{ "No." + (index + 1) }} {{ "No." + (index + 1) }}
</div> -->
<div class="rank">
{{ item.reportNumber }}
</div> </div>
</div> </div>
<div class="card-title"> <div class="card-title">
...@@ -99,8 +107,14 @@ ...@@ -99,8 +107,14 @@
</div> </div>
<div class="box1-header-right" @click="handleClickToDetail">查看详情 ></div> <div class="box1-header-right" @click="handleClickToDetail">查看详情 ></div>
</div> </div>
<el-carousel ref="carouselRef" height="395px" :autoplay="true" :interval="3000" arrow="never" <el-carousel
indicator-position="none"> ref="carouselRef"
height="395px"
:autoplay="true"
:interval="3000"
arrow="never"
indicator-position="none"
>
<el-carousel-item v-for="(itemData, index) in box1Data" :key="index"> <el-carousel-item v-for="(itemData, index) in box1Data" :key="index">
<div class="box1-main"> <div class="box1-main">
<div class="box1-main-left"> <div class="box1-main-left">
...@@ -112,7 +126,11 @@ ...@@ -112,7 +126,11 @@
<!-- <div class="tag" v-for="(item, index) in itemData?.industryVOList" :key="index"> <!-- <div class="tag" v-for="(item, index) in itemData?.industryVOList" :key="index">
{{ item.industryName }} {{ item.industryName }}
</div> --> </div> -->
<AreaTag v-for="(item, index) in itemData?.industryVOList" :key="index" :tagName="item.industryName" ></AreaTag> <AreaTag
v-for="(item, index) in itemData?.industryVOList"
:key="index"
:tagName="item.industryName"
></AreaTag>
</div> </div>
<div class="content">{{ itemData?.summary }}</div> <div class="content">{{ itemData?.summary }}</div>
<div class="box1-right-footer"> <div class="box1-right-footer">
...@@ -130,15 +148,34 @@ ...@@ -130,15 +148,34 @@
</el-carousel-item> </el-carousel-item>
</el-carousel> </el-carousel>
</div> </div>
<RiskSignal :list="warningList" @more-click="handleToMoreRiskSignal" postDate="time" name="title" <RiskSignal
@item-click="handleClickToDetail" /> :list="warningList"
@more-click="handleToMoreRiskSignal"
postDate="time"
name="title"
@item-click="handleClickToDetail"
/>
</div> </div>
<DivideHeader id="position2" class="divide-header" :titleText="'资讯要闻'"></DivideHeader> <DivideHeader id="position2" class="divide-header" :titleText="'资讯要闻'"></DivideHeader>
<div class="center-center"> <div class="center-center">
<NewsList :newsList="newsList" @item-click="handleToNewsAnalysis" @more-click="handleToMoreNews" <NewsList
img="newsImage" title="newsTitle" content="newsContent" from="from" /> :newsList="newsList"
<MessageBubble :messageList="messageList" imageUrl="personImage" @more-click="handleToSocialDetail" @item-click="handleToNewsAnalysis"
@person-click="handleClickPerson" name="personName" content="remarks" source="orgName" /> @more-click="handleToMoreNews"
img="newsImage"
title="newsTitle"
content="newsContent"
from="from"
/>
<MessageBubble
:messageList="messageList"
imageUrl="personImage"
@more-click="handleToSocialDetail"
@person-click="handleClickPerson"
name="personName"
content="remarks"
source="orgName"
/>
</div> </div>
<DivideHeader id="position3" class="divide-header" :titleText="'数据总览'"></DivideHeader> <DivideHeader id="position3" class="divide-header" :titleText="'数据总览'"></DivideHeader>
<div class="center-footer"> <div class="center-footer">
...@@ -152,8 +189,13 @@ ...@@ -152,8 +189,13 @@
</div> </div>
<div class="box5-select-box"> <div class="box5-select-box">
<el-select v-model="box5selectetedMonths" placeholder="选择时间" style="width: 120px"> <el-select v-model="box5selectetedMonths" placeholder="选择时间" style="width: 120px">
<el-option v-for="item in box5MonthsList" :key="item.value" :label="item.label" :value="item.value" <el-option
@click="changeBox5Data(item.value)" /> v-for="item in box5MonthsList"
:key="item.value"
:label="item.label"
:value="item.value"
@click="changeBox5Data(item.value)"
/>
</el-select> </el-select>
</div> </div>
</div> </div>
...@@ -167,8 +209,13 @@ ...@@ -167,8 +209,13 @@
<div class="header-title">{{ "政策建议领域分布" }}</div> <div class="header-title">{{ "政策建议领域分布" }}</div>
<div class="box6-select-box"> <div class="box6-select-box">
<el-select v-model="box6selectetedYear" placeholder="选择时间" style="width: 120px"> <el-select v-model="box6selectetedYear" placeholder="选择时间" style="width: 120px">
<el-option v-for="item in box6YearList" :key="item.value" :label="item.label" :value="item.value" <el-option
@click="handleBox6()" /> v-for="item in box6YearList"
:key="item.value"
:label="item.label"
:value="item.value"
@click="handleBox6()"
/>
</el-select> </el-select>
</div> </div>
</div> </div>
...@@ -197,21 +244,30 @@ ...@@ -197,21 +244,30 @@
</div> </div>
<div class="box8-select-box"> <div class="box8-select-box">
<el-select v-model="box8selectetedYear" placeholder="选择时间" style="width: 120px"> <el-select v-model="box8selectetedYear" placeholder="选择时间" style="width: 120px">
<el-option v-for="item in box8YearList" :key="item.value" :label="item.label" :value="item.value" <el-option
@click="changeBox8Data(item.value)" /> v-for="item in box8YearList"
:key="item.value"
:label="item.label"
:value="item.value"
@click="changeBox8Data(item.value)"
/>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="box8-main"> <div class="box8-main">
<div class="box8-item" v-for="(item, index) in box8Data" :key="index"> <div class="box8-item" v-for="(item, index) in box8Data" :key="index">
<div class="item-left" <div
:class="{ itemBold1: index === 0, itemBold2: index === 1, itemBold3: index === 2 }"> class="item-left"
:class="{ itemBold1: index === 0, itemBold2: index === 1, itemBold3: index === 2 }"
>
{{ index + 1 }} {{ index + 1 }}
</div> </div>
<!-- <el-popover effect="dark" :content="item.clause" placement="top-start"> <!-- <el-popover effect="dark" :content="item.clause" placement="top-start">
<template #reference> --> <template #reference> -->
<div class="item-center" <div
:class="{ itemBold1: index === 0, itemBold2: index === 1, itemBold3: index === 2 }"> class="item-center"
:class="{ itemBold1: index === 0, itemBold2: index === 1, itemBold3: index === 2 }"
>
{{ item.clause }} {{ item.clause }}
</div> </div>
<!-- </template> <!-- </template>
...@@ -229,8 +285,13 @@ ...@@ -229,8 +285,13 @@
<div class="home-main-footer-header"> <div class="home-main-footer-header">
<div class="btn-box"> <div class="btn-box">
<div class="btn" :class="{ btnActive: activeCate === cate }" v-for="(cate, index) in categoryList" <div
:key="index" @click="handleClickCate(cate)"> class="btn"
:class="{ btnActive: activeCate === cate }"
v-for="(cate, index) in categoryList"
:key="index"
@click="handleClickCate(cate)"
>
{{ cate }} {{ cate }}
</div> </div>
</div> </div>
...@@ -261,12 +322,22 @@ ...@@ -261,12 +322,22 @@
</div> </div>
<div class="select-main"> <div class="select-main">
<div class="checkbox-group"> <div class="checkbox-group">
<el-checkbox v-model="checkAll" :indeterminate="isIndeterminate" class="all-checkbox" <el-checkbox
@change="handleCheckAllChange"> v-model="checkAll"
:indeterminate="isIndeterminate"
class="all-checkbox"
@change="handleCheckAllChange"
>
全部领域 全部领域
</el-checkbox> </el-checkbox>
<el-checkbox v-for="research in areaList" :key="research.id" v-model="selectedAreaList" <el-checkbox
:label="research.id" @change="handleCheckedAreaChange()" class="filter-checkbox"> v-for="research in areaList"
:key="research.id"
v-model="selectedAreaList"
:label="research.id"
@change="handleCheckedAreaChange()"
class="filter-checkbox"
>
{{ research.name }} {{ research.name }}
</el-checkbox> </el-checkbox>
</div> </div>
...@@ -280,13 +351,22 @@ ...@@ -280,13 +351,22 @@
</div> </div>
<div class="select-main"> <div class="select-main">
<div class="checkbox-group"> <div class="checkbox-group">
<el-checkbox v-model="checkAllTime" class="all-checkbox" :indeterminate="isIndeterminateTime" <el-checkbox
@change="handleCheckAllChangeTime"> v-model="checkAllTime"
class="all-checkbox"
:indeterminate="isIndeterminateTime"
@change="handleCheckAllChangeTime"
>
全部时间 全部时间
</el-checkbox> </el-checkbox>
<el-checkbox-group v-model="selectedPubTimeList"> <el-checkbox-group v-model="selectedPubTimeList">
<el-checkbox v-for="time in pubTimeList" :key="time.id" :label="time.id" class="filter-checkbox" <el-checkbox
@change="handleCheckedAreaChangeTime()"> v-for="time in pubTimeList"
:key="time.id"
:label="time.id"
class="filter-checkbox"
@change="handleCheckedAreaChangeTime()"
>
{{ time.name }} {{ time.name }}
</el-checkbox> </el-checkbox>
</el-checkbox-group> </el-checkbox-group>
...@@ -296,8 +376,12 @@ ...@@ -296,8 +376,12 @@
</div> </div>
<div class="right"> <div class="right">
<div class="card-box"> <div class="card-box">
<div class="footer-card" v-for="(item, index) in curFooterList" :key="index" <div
@click="handleToReportDetail(item)"> class="footer-card"
v-for="(item, index) in curFooterList"
:key="index"
@click="handleToReportDetail(item)"
>
<div class="footer-card-top"> <div class="footer-card-top">
<img :src="item.imageUrl" alt="" /> <img :src="item.imageUrl" alt="" />
</div> </div>
...@@ -320,8 +404,14 @@ ...@@ -320,8 +404,14 @@
<div class="right-footer"> <div class="right-footer">
<div class="info">共 {{ total }} 项</div> <div class="info">共 {{ total }} 项</div>
<div class="page-box"> <div class="page-box">
<el-pagination :page-size="12" background layout="prev, pager, next" :total="total" <el-pagination
@current-change="handleCurrentChange" :current-page="currentPage" /> :page-size="12"
background
layout="prev, pager, next"
:total="total"
@current-change="handleCurrentChange"
:current-page="currentPage"
/>
</div> </div>
</div> </div>
</div> </div>
...@@ -394,8 +484,6 @@ import { setCanvasCreator } from "echarts/core"; ...@@ -394,8 +484,6 @@ import { setCanvasCreator } from "echarts/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
const containerRef = ref(null); const containerRef = ref(null);
const searchThinktankText = ref(""); //搜索科技人物及观点 const searchThinktankText = ref(""); //搜索科技人物及观点
// 智库列表 // 智库列表
const cardList = ref([ const cardList = ref([
...@@ -450,7 +538,8 @@ const handleGetThinkTankList = async () => { ...@@ -450,7 +538,8 @@ const handleGetThinkTankList = async () => {
tagList: item.tags, tagList: item.tags,
country: item.country, country: item.country,
desc: item.describe, desc: item.describe,
rank: item.id rank: item.id,
reportNumber: item.reportNumber
}; };
}); });
} }
...@@ -1415,7 +1504,7 @@ const handleClickPerson = async item => { ...@@ -1415,7 +1504,7 @@ const handleClickPerson = async item => {
ElMessage.warning("找不到当前人员的类型值!"); ElMessage.warning("找不到当前人员的类型值!");
return; return;
} }
} catch (error) { } } catch (error) {}
}; };
// 点击新闻条目,跳转到新闻分析页 // 点击新闻条目,跳转到新闻分析页
...@@ -1635,8 +1724,6 @@ onMounted(async () => { ...@@ -1635,8 +1724,6 @@ onMounted(async () => {
padding: 0 160px; padding: 0 160px;
} }
.home-main-header-footer { .home-main-header-footer {
margin-top: 38px; margin-top: 38px;
width: 688px; width: 688px;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论