提交 294eb4d9 authored 作者: 付康's avatar 付康

合并分支 'fk-dev' 到 'pre'

Fk dev 查看合并请求 !395
流水线 #648 已通过 于阶段
in 4 分 36 秒
...@@ -62,7 +62,7 @@ import { ref, nextTick, watchEffect } from "vue"; ...@@ -62,7 +62,7 @@ import { ref, nextTick, watchEffect } from "vue";
import { useContainerScroll } from "@/hooks/useScrollShow"; import { useContainerScroll } from "@/hooks/useScrollShow";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore"; import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore";
import { goToSearch } from "@/utils/goToPage"; import goToPage from "@/utils/goToPage";
const store = useWrittingAsstaintStore(); const store = useWrittingAsstaintStore();
const router = useRouter(); const router = useRouter();
...@@ -129,9 +129,9 @@ const handleSearch = () => { ...@@ -129,9 +129,9 @@ const handleSearch = () => {
// window.open(curRoute.href, "_blank"); // window.open(curRoute.href, "_blank");
if (enableBillTypeSwitch) { if (enableBillTypeSwitch) {
goToSearch(store.searchBillText, areaName, billSearchType.value) goToPage.goToSearch(store.searchBillText, areaName, billSearchType.value)
} else { } else {
goToSearch(store.searchBillText, areaName) goToPage.goToSearch(store.searchBillText, areaName)
} }
}; };
......
...@@ -102,6 +102,7 @@ import Tool1 from './tool1.svg' ...@@ -102,6 +102,7 @@ import Tool1 from './tool1.svg'
import Tool2 from './tool2.svg' import Tool2 from './tool2.svg'
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore"; import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore";
import goToPage from "@/utils/goToPage";
const store = useWrittingAsstaintStore(); const store = useWrittingAsstaintStore();
let isShowSearchBar = computed(() => { let isShowSearchBar = computed(() => {
return store.isShowSearchBar; return store.isShowSearchBar;
...@@ -151,8 +152,8 @@ const handleGetSsoUserInfo = async () => { ...@@ -151,8 +152,8 @@ const handleGetSsoUserInfo = async () => {
}; };
// 概览页标题列表 // 概览页标题列表
const homeTitleList = computed(() => { const homeTitleList = ref(
const mainTitleList = [ [
{ {
name: "首页", name: "首页",
path: "/ZMOverView", path: "/ZMOverView",
...@@ -174,20 +175,7 @@ const homeTitleList = computed(() => { ...@@ -174,20 +175,7 @@ const homeTitleList = computed(() => {
path: "/dataLibrary", path: "/dataLibrary",
disabled: false disabled: false
}] }]
const dataLibraryTitleList = [{ )
name: "数据资源库",
path: "/dataLibrary",
disabled: false
}]
// if (route.path.includes('/dataLibrary')) {
// return dataLibraryTitleList
// } else {
// return mainTitleList
// }
return mainTitleList
});
const homeActiveTitleIndex = computed(() => { const homeActiveTitleIndex = computed(() => {
let activeIndex = 1 let activeIndex = 1
...@@ -406,8 +394,10 @@ const handleToModule = (item, index) => { ...@@ -406,8 +394,10 @@ const handleToModule = (item, index) => {
}; };
const handleClickTitle = (item, index) => { const handleClickTitle = (item, index) => {
if (index === 0 || index === 3) { if (index === 0) {
router.push(item.path) router.push(item.path)
} else if(index === 3) {
goToPage.goToDataLibrary()
} }
}; };
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
import { onMounted, ref, computed, onUnmounted, nextTick, watch, watchEffect } from "vue"; import { onMounted, ref, computed, onUnmounted, nextTick, watch, watchEffect } from "vue";
import router from "@/router/index"; import router from "@/router/index";
import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore"; import { useWrittingAsstaintStore } from "@/stores/writtingAsstaintStore";
import { goToSearch } from "@/utils/goToPage"; import goToPage from "@/utils/goToPage";
const store = useWrittingAsstaintStore(); const store = useWrittingAsstaintStore();
const handleSearch = () => { const handleSearch = () => {
...@@ -63,7 +63,7 @@ const handleSearch = () => { ...@@ -63,7 +63,7 @@ const handleSearch = () => {
// } // }
// }); // });
// window.open(curRoute.href, "_blank"); // window.open(curRoute.href, "_blank");
goToSearch(store.searchBillText, store.searchData.areaName) goToPage.goToSearch(store.searchBillText, store.searchData.areaName)
}; };
let containerRef = computed(() => store.searchData.containerRef); let containerRef = computed(() => store.searchData.containerRef);
......
差异被折叠。
...@@ -11,7 +11,9 @@ export const goToCompanyPage = (id, tabName) => { ...@@ -11,7 +11,9 @@ export const goToCompanyPage = (id, tabName) => {
const base64 = btoa(encodeURIComponent(jsonStr)); const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({ const route = router.resolve({
name: "companyPages", name: "companyPages",
params: base64 params: {
id: base64
}
}); });
window.open(route.href, "_blank"); window.open(route.href, "_blank");
} }
\ No newline at end of file
// 数据资源库 // 数据资源库
import router from "@/router/index"; import router from "@/router/index";
export const goToDataLibrary = () => {
const route = router.resolve({
path: "/dataLibrary",
});
window.open(route.href, "_blank");
}
// 跳转数据资源库-国家法案 // 跳转数据资源库-国家法案
export const goToDataCountryBill = (selectParam) => { export const goToDataCountryBill = (selectParam) => {
// const codeParam = new URLSearchParams(selectParam) // const codeParam = new URLSearchParams(selectParam)
......
// 解码 // 解码
import router from "@/router";
export const getDecodedParams = () => { export const getDecodedParams = () => {
if (window.location.search) { if (window.location.search) {
const urlParams = new URLSearchParams(window.location.search) const urlParams = new URLSearchParams(window.location.search)
......
...@@ -3,15 +3,15 @@ import router from "@/router/index"; ...@@ -3,15 +3,15 @@ import router from "@/router/index";
// 跳转新闻详情 // 跳转新闻详情
export const goToNewsPage = (id, tabName) => { export const goToNewsPage = (id, tabName) => {
window.sessionStorage.setItem("curTabName", tabName); window.sessionStorage.setItem("curTabName", tabName);
const param = { // const param = {
newsId: id // newsId: id
} // }
const jsonStr = JSON.stringify(param); // const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr)); const base64 = btoa(encodeURIComponent(id));
const route = router.resolve({ const route = router.resolve({
path: "/newsAnalysis", name: "newsDetail",
query: { params: {
data: base64 id: base64
} }
}); });
window.open(route.href, "_blank"); window.open(route.href, "_blank");
......
...@@ -11,17 +11,11 @@ export const goToCharacterPage = async (id, tabName) => { ...@@ -11,17 +11,11 @@ export const goToCharacterPage = async (id, tabName) => {
personId: id personId: id
} }
const param1 = { const param1 = {
personId: item.id personId: id
} }
const jsonStr1 = JSON.stringify(param1); const jsonStr1 = JSON.stringify(param1);
const base64_1 = btoa(encodeURIComponent(jsonStr1)); const base64_1 = btoa(encodeURIComponent(jsonStr1));
const param2 = {
personId: item.id
}
const jsonStr2 = JSON.stringify(param2);
const base64_2 = btoa(encodeURIComponent(jsonStr2));
// 先获取人物全局信息 // 先获取人物全局信息
try { try {
const res = await getPersonSummaryInfo(params) const res = await getPersonSummaryInfo(params)
...@@ -48,6 +42,12 @@ export const goToCharacterPage = async (id, tabName) => { ...@@ -48,6 +42,12 @@ export const goToCharacterPage = async (id, tabName) => {
window.open(route.href, "_blank"); window.open(route.href, "_blank");
return; return;
} }
const param2 = {
personId: id,
type: type
}
const jsonStr2 = JSON.stringify(param2);
const base64_2 = btoa(encodeURIComponent(jsonStr2));
const route = router.resolve({ const route = router.resolve({
path: "/characterPage", path: "/characterPage",
query: { query: {
......
...@@ -16,10 +16,11 @@ export const goToThinkTank = (id, tabName) => { ...@@ -16,10 +16,11 @@ export const goToThinkTank = (id, tabName) => {
// 跳转智库报告详情 // 跳转智库报告详情
export const goToThinkTankReport = (id, tabName) => { export const goToThinkTankReport = (id, tabName) => {
window.sessionStorage.setItem("curTabName", tabName); window.sessionStorage.setItem("curTabName", tabName);
const base64 = btoa(encodeURIComponent(id));
const route = router.resolve({ const route = router.resolve({
name: "ReportDetail", name: "ReportDetail",
params: { params: {
id: id id: base64
} }
}); });
window.open(route.href, "_blank"); window.open(route.href, "_blank");
......
...@@ -132,7 +132,7 @@ import { getPersonSummaryInfo } from "@/api/common/index"; ...@@ -132,7 +132,7 @@ import { getPersonSummaryInfo } from "@/api/common/index";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import TimeSortSelectBox from '@/components/base/TimeSortSelectBox/index.vue' import TimeSortSelectBox from '@/components/base/TimeSortSelectBox/index.vue'
import AreaTag from '@/components/base/AreaTag/index.vue' import AreaTag from '@/components/base/AreaTag/index.vue'
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode"; import goToPage from "@/utils/goToPage";
const route = useRoute(); const route = useRoute();
const container = ref(null) const container = ref(null)
...@@ -598,7 +598,7 @@ const handleToPage = async item => { ...@@ -598,7 +598,7 @@ const handleToPage = async item => {
}; };
onMounted(() => { onMounted(() => {
const routeQuery = getDecodedParams() const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery',routeQuery); console.log('routeQuery',routeQuery);
......
...@@ -173,7 +173,6 @@ import { getPostOrgList, getPostMemberList } from '@/api/bill/billHome' ...@@ -173,7 +173,6 @@ import { getPostOrgList, getPostMemberList } from '@/api/bill/billHome'
import { search, getStatusList } from '@/api/comprehensiveSearch' import { search, getStatusList } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getDecodedParams } from '@/utils/goToPage/methods/getDecode'
import goToPage from '@/utils/goToPage/index' import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
...@@ -1156,7 +1155,7 @@ const initParam = () => { ...@@ -1156,7 +1155,7 @@ const initParam = () => {
const routeQuery = goToPage.getDecodedParams() const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery',routeQuery); console.log('routeQuery',routeQuery);
const hasQuery = Object.keys(routeQuery).length > 0; const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (routeQuery.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(routeQuery.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
...@@ -1214,30 +1213,11 @@ const initParam = () => { ...@@ -1214,30 +1213,11 @@ const initParam = () => {
// 跳转法案详情 // 跳转法案详情
const handleClickToDetail = (curBill) => { const handleClickToDetail = (curBill) => {
// console.log('curBill', curBill);
// window.sessionStorage.setItem("billId", curBill.id);
// window.sessionStorage.setItem("curTabName", curBill.title);
// const route = router.resolve({
// path: "/billLayout",
// query: {
// billId: curBill.id
// }
// });
// window.open(route.href, "_blank");
goToPage.goToBill(curBill.id, curBill.title) goToPage.goToBill(curBill.id, curBill.title)
}; };
// 跳转人物详情 // 跳转人物详情
const handlePerClick = item => { const handlePerClick = item => {
// window.sessionStorage.setItem("curTabName", item.sponsorPersonName);
// const route = router.resolve({
// path: "/characterPage",
// query: {
// type: 2,
// personId: item.personId
// }
// });
// window.open(route.href, "_blank");
goToPage.goToCharacterPage(item.personId, item.sponsorPersonName) goToPage.goToCharacterPage(item.personId, item.sponsorPersonName)
}; };
......
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
</el-table-column> </el-table-column>
<el-table-column label="所属国家地区"> <el-table-column label="所属国家地区">
<template #default="scope"> <template #default="scope">
<span class="person-item text-compact" @click="handleOrgClick(scope.row)">{{ scope.row.organizationName <span class="person-item text-compact">{{ scope.row.organizationName
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
...@@ -172,6 +172,7 @@ import { ElMessage } from 'element-plus' ...@@ -172,6 +172,7 @@ import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getCountryList, getBusinessType } from '@/api/comprehensiveSearch/index' import { getCountryList, getBusinessType } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -1055,29 +1056,17 @@ const initParam = () => { ...@@ -1055,29 +1056,17 @@ const initParam = () => {
const handleClickToDetail = (item) => { const handleClickToDetail = (item) => {
console.log('item', item); console.log('item', item);
window.sessionStorage.setItem('curTabName', item.originalTitle) // window.sessionStorage.setItem('curTabName', item.originalTitle)
const route = router.resolve({ // const route = router.resolve({
name: "companyPages", // name: "companyPages",
params: { // params: {
id: item.id // id: item.id
} // }
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToCompanyPage(item.id, item.originalTitle)
}; };
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
};
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
......
...@@ -186,7 +186,6 @@ import { ElMessage } from 'element-plus' ...@@ -186,7 +186,6 @@ import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getDepartmentList } from "@/api/decree/home"; import { getDepartmentList } from "@/api/decree/home";
import { getDecodedParams } from '@/utils/goToPage/methods/getDecode'
import goToPage from '@/utils/goToPage/index' import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
...@@ -978,7 +977,7 @@ const handleDownloadCurChartData = () => { ...@@ -978,7 +977,7 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const routeQuery = goToPage.getDecodedParams() const routeQuery = goToPage.getDecodedParams()
const hasQuery = Object.keys(routeQuery).length > 0; const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (routeQuery.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(routeQuery.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
...@@ -1026,30 +1025,13 @@ const initParam = () => { ...@@ -1026,30 +1025,13 @@ const initParam = () => {
// 跳转政令详情 // 跳转政令详情
const handleClickToDetail = (curDecree) => { const handleClickToDetail = (curDecree) => {
console.log('curDecree', curDecree); console.log('curDecree', curDecree);
goToPage.goToDecree(curDecree.id, curDecree.title)
window.sessionStorage.setItem("decreeId", curDecree.id);
window.sessionStorage.setItem("curTabName", curDecree.title);
const route = router.resolve({
path: "/decreeLayout",
query: {
id: curDecree.id
}
});
window.open(route.href, "_blank");
}; };
// 跳转机构详情 // 跳转机构详情
const handleOrgClick = item => { const handleOrgClick = item => {
console.log('item', item); console.log('item', item);
goToPage.goToInstitution(item.id, item.title)
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 导出 // 导出
......
...@@ -9,8 +9,9 @@ ...@@ -9,8 +9,9 @@
@update:custom-time="handleCustomDate" /> @update:custom-time="handleCustomDate" />
<SelectBox v-if="isFolderAll" :placeholder-name="typePlaceHolder" select-title="物项类别" :select-list="typeList" <SelectBox v-if="isFolderAll" :placeholder-name="typePlaceHolder" select-title="物项类别" :select-list="typeList"
:select-name="selectedType" @update:select-text="handleSelectType" /> :select-name="selectedType" @update:select-text="handleSelectType" />
<SelectBox v-if="isFolderAll" :placeholder-name="updateFlagPlaceHolder" select-title="变动标识" :select-list="updateFlagList" <SelectBox v-if="isFolderAll" :placeholder-name="updateFlagPlaceHolder" select-title="变动标识"
:select-name="selectedUpdateFlag" @update:select-text="handleSelectUpdateFlag" /> :select-list="updateFlagList" :select-name="selectedUpdateFlag"
@update:select-text="handleSelectUpdateFlag" />
<SelectBox v-if="isFolderAll" :placeholder-name="controlReasonPlaceHolder" select-title="管控原因" <SelectBox v-if="isFolderAll" :placeholder-name="controlReasonPlaceHolder" select-title="管控原因"
:select-list="controlReasonList" :select-name="selectedControlReason" :select-list="controlReasonList" :select-name="selectedControlReason"
@update:select-text="handleSelectControlReason" /> @update:select-text="handleSelectControlReason" />
...@@ -114,7 +115,7 @@ ...@@ -114,7 +115,7 @@
<el-table-column type="selection" width="40" /> <el-table-column type="selection" width="40" />
<el-table-column label="物项名称"> <el-table-column label="物项名称">
<template #default="scope"> <template #default="scope">
<span class="title-item text-compact-bold" @click="handleClickToDetail(scope.row)">{{ <span class="title-item text-compact-bold">{{
scope.row.originalTitle scope.row.originalTitle
}}</span> }}</span>
</template> </template>
...@@ -163,7 +164,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -163,7 +164,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getMaterialCategory, getControlReason } from '@/api/comprehensiveSearch/index' import { getMaterialCategory, getControlReason } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
// 图表/数据 // 图表/数据
...@@ -920,24 +921,25 @@ const handleDownloadCurChartData = () => { ...@@ -920,24 +921,25 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
selectedType.value = route.query.orgnizationName ? route.query.orgnizationName : '全部类别' selectedType.value = routeQuery.orgnizationName ? routeQuery.orgnizationName : '全部类别'
selectedUpdateFlag.value = route.query.updateFlag ? route.query.updateFlag : '全部标识' selectedUpdateFlag.value = routeQuery.updateFlag ? routeQuery.updateFlag : '全部标识'
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('commerceRouteQuery', JSON.stringify(query)); sessionStorage.setItem('commerceRouteQuery', JSON.stringify(query));
} }
...@@ -958,25 +960,6 @@ const initParam = () => { ...@@ -958,25 +960,6 @@ const initParam = () => {
} }
// 跳转政令详情
const handleClickToDetail = (curDecree) => {
};
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
};
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
if (!selectedCount.value) { if (!selectedCount.value) {
...@@ -1276,12 +1259,12 @@ onMounted(async () => { ...@@ -1276,12 +1259,12 @@ onMounted(async () => {
.title-item { .title-item {
color: var(--text-primary-80-color); color: var(--text-primary-80-color);
cursor: pointer; // cursor: pointer;
&:hover { // &:hover {
color: var(--color-primary-100); // color: var(--color-primary-100);
text-decoration: underline; // text-decoration: underline;
} // }
} }
.person-item { .person-item {
......
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
<el-table-column type="selection" width="40" /> <el-table-column type="selection" width="40" />
<el-table-column label="事件名称"> <el-table-column label="事件名称">
<template #default="scope"> <template #default="scope">
<span class="title-item text-compact-bold" @click="handleClickToDetail(scope.row)">{{ <span class="title-item text-compact-bold">{{
scope.row.originalTitle scope.row.originalTitle
}}</span> }}</span>
</template> </template>
...@@ -151,7 +151,7 @@ import router from '@/router' ...@@ -151,7 +151,7 @@ import router from '@/router'
import { search } from '@/api/comprehensiveSearch' import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
// 图表/数据 // 图表/数据
...@@ -804,23 +804,24 @@ const handleDownloadCurChartData = () => { ...@@ -804,23 +804,24 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
isInvolveCnOnly.value = route.query.isInvolveCnOnly ? true : false isInvolveCnOnly.value = routeQuery.isInvolveCnOnly ? true : false
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('commerceEventRouteQuery', JSON.stringify(query)); sessionStorage.setItem('commerceEventRouteQuery', JSON.stringify(query));
} }
...@@ -842,25 +843,6 @@ const initParam = () => { ...@@ -842,25 +843,6 @@ const initParam = () => {
} }
// 跳转政令详情
const handleClickToDetail = (curDecree) => {
};
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
};
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
if (!selectedCount.value) { if (!selectedCount.value) {
...@@ -1157,12 +1139,12 @@ onMounted(async () => { ...@@ -1157,12 +1139,12 @@ onMounted(async () => {
.title-item { .title-item {
color: var(--text-primary-80-color); color: var(--text-primary-80-color);
cursor: pointer; // cursor: pointer;
&:hover { // &:hover {
color: var(--color-primary-100); // color: var(--color-primary-100);
text-decoration: underline; // text-decoration: underline;
} // }
} }
.person-item { .person-item {
......
...@@ -142,7 +142,7 @@ ...@@ -142,7 +142,7 @@
</el-table-column> </el-table-column>
<el-table-column label="上市地点"> <el-table-column label="上市地点">
<template #default="scope"> <template #default="scope">
<span class="person-item text-compact" @click="handleOrgClick(scope.row)">{{ scope.row.organizationName <span class="person-item text-compact">{{ scope.row.organizationName
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
...@@ -188,7 +188,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -188,7 +188,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index' import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
const isShowProvinceBox = computed(() => { const isShowProvinceBox = computed(() => {
...@@ -1063,34 +1063,35 @@ const handleDownloadCurChartData = () => { ...@@ -1063,34 +1063,35 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
selectedProvince.value = route.query.selectedProvince ? provinceList.value.filter(item => item.name.indexOf(route.query.selectedProvince) > -1)[0].name : '全部省份' selectedProvince.value = routeQuery.selectedProvince ? provinceList.value.filter(item => item.name.indexOf(routeQuery.selectedProvince) > -1)[0].name : '全部省份'
isHalfRule.value = route.query.isHalfRule === 'true' ? true : false isHalfRule.value = routeQuery.isHalfRule === 'true' ? true : false
isCnEntityOnly.value = route.query.isCnEntityOnly ? true : false isCnEntityOnly.value = routeQuery.isCnEntityOnly ? true : false
if (isCnEntityOnly.value) { if (isCnEntityOnly.value) {
selectedCountry.value = '0101' selectedCountry.value = '0101'
} else { } else {
selectedCountry.value = route.query.selectedCountryId ? route.query.selectedCountryId : '全部国家' selectedCountry.value = routeQuery.selectedCountryId ? routeQuery.selectedCountryId : '全部国家'
} }
selectedEntityType.value = route.query.selectedEntityType ? entityTypeList.value.filter(item => item.name === route.query.selectedEntityType)[0].id : '全部实体类型' selectedEntityType.value = routeQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === routeQuery.selectedEntityType)[0].id : '全部实体类型'
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('entityRouteQuery', JSON.stringify(query)); sessionStorage.setItem('entityRouteQuery', JSON.stringify(query));
} }
...@@ -1112,7 +1113,7 @@ const initParam = () => { ...@@ -1112,7 +1113,7 @@ const initParam = () => {
if (isCnEntityOnly.value) { if (isCnEntityOnly.value) {
selectedCountry.value = '0101' selectedCountry.value = '0101'
} else { } else {
selectedCountry.value = route.query.selectedCountryId ? route.query.selectedCountryId : '全部国家' selectedCountry.value = savedQuery.selectedCountryId ? routeQuery.selectedCountryId : '全部国家'
} }
selectedEntityType.value = savedQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === savedQuery.selectedEntityType)[0].id : '全部实体类型' selectedEntityType.value = savedQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === savedQuery.selectedEntityType)[0].id : '全部实体类型'
...@@ -1135,29 +1136,16 @@ watch( ...@@ -1135,29 +1136,16 @@ watch(
const handleClickToDetail = (curEntity) => { const handleClickToDetail = (curEntity) => {
console.log('curEntity', curEntity); console.log('curEntity', curEntity);
window.sessionStorage.setItem("decreeId", curEntity.id); // window.sessionStorage.setItem("decreeId", curEntity.id);
window.sessionStorage.setItem("curTabName", curEntity.title); // window.sessionStorage.setItem("curTabName", curEntity.title);
const route = router.resolve({ // const route = router.resolve({
name: "companyPages", // name: "companyPages",
params: { // params: {
id: curEntity.organizationId // id: curEntity.organizationId
} // }
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
}; goToPage.goToCompanyPage(curEntity.id, curEntity.title)
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 导出 // 导出
......
...@@ -152,6 +152,7 @@ import router from '@/router' ...@@ -152,6 +152,7 @@ import router from '@/router'
import { search } from '@/api/comprehensiveSearch' import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import goToPage from '@/utils/goToPage/index'
const route = useRoute(); const route = useRoute();
...@@ -805,23 +806,26 @@ const handleDownloadCurChartData = () => { ...@@ -805,23 +806,26 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
console.log('routequery', routeQuery);
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
isInvolveCnOnly.value = route.query.isInvolveCnOnly ? true : false isInvolveCnOnly.value = routeQuery.isInvolveCnOnly ? true : false
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('entityEventRouteQuery', JSON.stringify(query)); sessionStorage.setItem('entityEventRouteQuery', JSON.stringify(query));
} }
...@@ -847,30 +851,17 @@ const initParam = () => { ...@@ -847,30 +851,17 @@ const initParam = () => {
const handleClickToDetail = (item) => { const handleClickToDetail = (item) => {
console.log('curEntityEvent', item); console.log('curEntityEvent', item);
window.sessionStorage.setItem("curTabName", `${item.date}《${item.originalTitle}》`); // window.sessionStorage.setItem("curTabName", `${item.date}《${item.originalTitle}》`);
const route = router.resolve({ // const route = router.resolve({
path: "/exportControl/singleSanction", // path: "/exportControl/singleSanction",
query: { // query: {
id: item.id, // id: item.id,
sanTypeId: 1, // sanTypeId: 1,
date: item.date // date: item.date
} // }
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
}; goToPage.goToSingleEntityEvent(item.id,`${item.date}《${item.originalTitle}》`, item.date)
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 导出 // 导出
......
...@@ -161,6 +161,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -161,6 +161,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getMaterialCategory, getControlReason } from '@/api/comprehensiveSearch/index' import { getMaterialCategory, getControlReason } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -883,23 +884,26 @@ const handleDownloadCurChartData = () => { ...@@ -883,23 +884,26 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery', routeQuery);
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
selectedType.value = route.query.orgnizationName ? route.query.orgnizationName : '全部类别' selectedType.value = routeQuery.orgnizationName ? routeQuery.orgnizationName : '全部类别'
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('mRListRouteQuery', JSON.stringify(query)); sessionStorage.setItem('mRListRouteQuery', JSON.stringify(query));
} }
...@@ -919,29 +923,9 @@ const initParam = () => { ...@@ -919,29 +923,9 @@ const initParam = () => {
// 跳转企业详情 // 跳转企业详情
const handleClickToDetail = (curEntity) => { const handleClickToDetail = (curEntity) => {
window.sessionStorage.setItem("curTabName", curEntity.title); goToPage.goToCompanyPage(curEntity.organizationId, curEntity.title)
const route = router.resolve({
name: "companyPages",
params: {
id: curEntity.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
};
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
......
...@@ -151,6 +151,7 @@ import router from '@/router' ...@@ -151,6 +151,7 @@ import router from '@/router'
import { search } from '@/api/comprehensiveSearch' import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -804,23 +805,26 @@ const handleDownloadCurChartData = () => { ...@@ -804,23 +805,26 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery',routeQuery);
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
isInvolveCnOnly.value = route.query.isInvolveCnOnly ? true : false isInvolveCnOnly.value = routeQuery.isInvolveCnOnly ? true : false
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('mRListEventRouteQuery', JSON.stringify(query)); sessionStorage.setItem('mRListEventRouteQuery', JSON.stringify(query));
} }
...@@ -842,35 +846,13 @@ const initParam = () => { ...@@ -842,35 +846,13 @@ const initParam = () => {
} }
// 跳转政令详情 // 跳转详情
const handleClickToDetail = (curDecree) => { const handleClickToDetail = (item) => {
console.log('curDecree', curDecree);
window.sessionStorage.setItem("decreeId", curDecree.id);
window.sessionStorage.setItem("curTabName", curDecree.title);
const route = router.resolve({
path: "/decreeLayout",
query: {
id: curDecree.id
}
});
window.open(route.href, "_blank");
};
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item); console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
if (!selectedCount.value) { if (!selectedCount.value) {
......
...@@ -188,6 +188,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -188,6 +188,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index' import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -1063,34 +1064,37 @@ const handleDownloadCurChartData = () => { ...@@ -1063,34 +1064,37 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery',routeQuery);
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
selectedProvince.value = route.query.selectedProvince ? provinceList.value.filter(item => item.name.indexOf(route.query.selectedProvince) > -1)[0].name : '全部省份' selectedProvince.value = routeQuery.selectedProvince ? provinceList.value.filter(item => item.name.indexOf(routeQuery.selectedProvince) > -1)[0].name : '全部省份'
isHalfRule.value = route.query.isHalfRule === 'true' ? true : false isHalfRule.value = routeQuery.isHalfRule === 'true' ? true : false
isCnEntityOnly.value = route.query.isCnEntityOnly ? true : false isCnEntityOnly.value = routeQuery.isCnEntityOnly ? true : false
if (isCnEntityOnly.value) { if (isCnEntityOnly.value) {
selectedCountry.value = '0101' selectedCountry.value = '0101'
} else { } else {
selectedCountry.value = route.query.selectedCountryId ? route.query.selectedCountryId : '全部国家' selectedCountry.value = routeQuery.selectedCountryId ? routeQuery.selectedCountryId : '全部国家'
} }
selectedEntityType.value = route.query.selectedEntityType ? entityTypeList.value.filter(item => item.name === route.query.selectedEntityType)[0].id : '全部实体类型' selectedEntityType.value = routeQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === routeQuery.selectedEntityType)[0].id : '全部实体类型'
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('sDNListRouteQuery', JSON.stringify(query)); sessionStorage.setItem('sDNListRouteQuery', JSON.stringify(query));
} }
...@@ -1112,7 +1116,7 @@ const initParam = () => { ...@@ -1112,7 +1116,7 @@ const initParam = () => {
if (isCnEntityOnly.value) { if (isCnEntityOnly.value) {
selectedCountry.value = '0101' selectedCountry.value = '0101'
} else { } else {
selectedCountry.value = route.query.selectedCountryId ? route.query.selectedCountryId : '全部国家' selectedCountry.value = savedQuery.selectedCountryId ? routeQuery.selectedCountryId : '全部国家'
} }
selectedEntityType.value = savedQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === savedQuery.selectedEntityType)[0].id : '全部实体类型' selectedEntityType.value = savedQuery.selectedEntityType ? entityTypeList.value.filter(item => item.name === savedQuery.selectedEntityType)[0].id : '全部实体类型'
......
...@@ -152,6 +152,7 @@ import router from '@/router' ...@@ -152,6 +152,7 @@ import router from '@/router'
import { search } from '@/api/comprehensiveSearch' import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -805,23 +806,26 @@ const handleDownloadCurChartData = () => { ...@@ -805,23 +806,26 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
console.log('routeQuery',routeQuery);
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
if (route.query.selectedAreaList) { if (routeQuery.selectedAreaList) {
selectedArea.value = JSON.parse(route.query.selectedAreaList) selectedArea.value = JSON.parse(routeQuery.selectedAreaList)
} else { } else {
selectedArea.value = route.query.domains ? [route.query.domains] : ['全部领域'] selectedArea.value = routeQuery.domains ? [routeQuery.domains] : ['全部领域']
} }
if (route.query.selectedDate && Array.isArray(JSON.parse(route.query.selectedDate)) && JSON.parse(route.query.selectedDate).length) { if (routeQuery.selectedDate && Array.isArray(JSON.parse(routeQuery.selectedDate)) && JSON.parse(routeQuery.selectedDate).length) {
selectedDate.value = '自定义' selectedDate.value = '自定义'
customTime.value = JSON.parse(route.query.selectedDate) customTime.value = JSON.parse(routeQuery.selectedDate)
} }
isInvolveCnOnly.value = route.query.isInvolveCnOnly ? true : false isInvolveCnOnly.value = routeQuery.isInvolveCnOnly ? true : false
const query = route.query; const query = routeQuery;
if (Object.keys(query).length > 0) { if (Object.keys(query).length > 0) {
sessionStorage.setItem('sDNListEventRouteQuery', JSON.stringify(query)); sessionStorage.setItem('sDNListEventRouteQuery', JSON.stringify(query));
} }
...@@ -874,19 +878,6 @@ const handleClickToDetail = (curEntityEvent) => { ...@@ -874,19 +878,6 @@ const handleClickToDetail = (curEntityEvent) => {
// window.open(routeData.href, "_blank"); // window.open(routeData.href, "_blank");
}; };
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
};
// 导出 // 导出
const handleExport = () => { const handleExport = () => {
......
...@@ -149,7 +149,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -149,7 +149,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index' import { getProvinceList, getCountryList, getEntityTypes } from '@/api/comprehensiveSearch/index'
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
// 图表/数据 // 图表/数据
...@@ -793,14 +793,15 @@ const initParam = () => { ...@@ -793,14 +793,15 @@ const initParam = () => {
// 跳转机构详情 // 跳转机构详情
const handleClickToDetail = (item) => { const handleClickToDetail = (item) => {
console.log('item', item); console.log('item', item);
window.sessionStorage.setItem("curTabName", item.originalTitle); // window.sessionStorage.setItem("curTabName", item.originalTitle);
const route = router.resolve({ // const route = router.resolve({
path: "/institution", // path: "/institution",
query: { // query: {
id: item.id // id: item.id
} // }
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToInstitution(item.id, item.originalTitle)
}; };
......
...@@ -154,6 +154,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -154,6 +154,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import getDateRange from '@/utils/getDateRange' import getDateRange from '@/utils/getDateRange'
import { useGotoNewsDetail } from "@/router/modules/news"; import { useGotoNewsDetail } from "@/router/modules/news";
import goToPage from '@/utils/goToPage'
const gotoNewsDetail = useGotoNewsDetail(); const gotoNewsDetail = useGotoNewsDetail();
const route = useRoute(); const route = useRoute();
...@@ -819,16 +820,11 @@ const initParam = () => { ...@@ -819,16 +820,11 @@ const initParam = () => {
const handleClickToDetail = (item) => { const handleClickToDetail = (item) => {
console.log('item', item); console.log('item', item);
window.sessionStorage.setItem("curTabName", item.originalTitle); // window.sessionStorage.setItem("curTabName", item.originalTitle);
gotoNewsDetail(item.id); // gotoNewsDetail(item.id);
// const route = router.resolve({
// path: "/newsAnalysis", goToPage.goToNewsPage(item.id, item.originalTitle)
// query: {
// newsId: item.id
// }
// });
// window.open(route.href, "_blank");
}; };
// 导出 // 导出
......
...@@ -156,6 +156,7 @@ import { search } from '@/api/comprehensiveSearch' ...@@ -156,6 +156,7 @@ import { search } from '@/api/comprehensiveSearch'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
import { getPersonType, getCountryList, getThinkTankList } from "@/api/comprehensiveSearch/index" import { getPersonType, getCountryList, getThinkTankList } from "@/api/comprehensiveSearch/index"
import goToPage from '@/utils/goToPage'
const route = useRoute(); const route = useRoute();
...@@ -872,28 +873,15 @@ const initParam = () => { ...@@ -872,28 +873,15 @@ const initParam = () => {
// 跳转人物详情 // 跳转人物详情
const handleClickToDetail = (item) => { const handleClickToDetail = (item) => {
window.sessionStorage.setItem('curTabName', item.name) // window.sessionStorage.setItem('curTabName', item.name)
const routeData = router.resolve({ // const routeData = router.resolve({
path: "/characterPage", // path: "/characterPage",
query: { // query: {
personId: item.id // personId: item.id
} // }
}); // });
window.open(routeData.href, "_blank"); // window.open(routeData.href, "_blank");
}; goToPage.goToCharacterPage(item.id, item.name)
// 跳转机构详情
const handleOrgClick = item => {
console.log('item', item);
window.sessionStorage.setItem("curTabName", item.organizationName);
const route = router.resolve({
path: "/institution",
query: {
id: item.organizationId
}
});
window.open(route.href, "_blank");
}; };
// 导出 // 导出
......
...@@ -172,13 +172,13 @@ import InputBox from "../components/InputBox/index.vue"; ...@@ -172,13 +172,13 @@ import InputBox from "../components/InputBox/index.vue";
import DataChartSwitchBox from '../components/dataChartSwitchBox/index.vue' import DataChartSwitchBox from '../components/dataChartSwitchBox/index.vue'
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
import router from "@/router"; import router from "@/router";
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode";
import { search, getThinkTankList } from "@/api/comprehensiveSearch"; import { search, getThinkTankList } from "@/api/comprehensiveSearch";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import getDateRange from "@/utils/getDateRange"; import getDateRange from "@/utils/getDateRange";
import { getDepartmentList } from "@/api/decree/home"; import { getDepartmentList } from "@/api/decree/home";
import goToPage from "@/utils/goToPage";
const route = useRoute(); const route = useRoute();
...@@ -911,9 +911,10 @@ const handleDownloadCurChartData = () => { ...@@ -911,9 +911,10 @@ const handleDownloadCurChartData = () => {
// 跳转到当前页 初始化筛选条件 // 跳转到当前页 初始化筛选条件
const initParam = () => { const initParam = () => {
const hasQuery = Object.keys(route.query).length > 0; const routeQuery = goToPage.getDecodedParams()
const hasQuery = routeQuery ? Object.keys(routeQuery).length > 0 : false
if (hasQuery) { if (hasQuery) {
const decodedQuery = route.query.data ? (getDecodedParams() || {}) : null; const decodedQuery = route.query.data ? (goToPage.getDecodedParams() || {}) : null;
const query = decodedQuery && typeof decodedQuery === "object" ? decodedQuery : route.query; const query = decodedQuery && typeof decodedQuery === "object" ? decodedQuery : route.query;
if (query.selectedAreaList) { if (query.selectedAreaList) {
...@@ -975,29 +976,31 @@ const encodeBase64Param = (val) => { ...@@ -975,29 +976,31 @@ const encodeBase64Param = (val) => {
const handleClickToDetail = curReport => { const handleClickToDetail = curReport => {
console.log("curReport", curReport); console.log("curReport", curReport);
window.sessionStorage.setItem("billId", curReport.id); // window.sessionStorage.setItem("billId", curReport.id);
window.sessionStorage.setItem("curTabName", curReport.title); // window.sessionStorage.setItem("curTabName", curReport.id);
const encodedId = encodeBase64Param(curReport?.id); // const encodedId = encodeBase64Param(curReport?.id);
if (!encodedId) return; // if (!encodedId) return;
const route = router.resolve({ // const route = router.resolve({
name: "ReportDetail", // name: "ReportDetail",
params: { // params: {
id: encodedId // id: encodedId
} // }
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToThinkTankReport(curReport.id, curReport.id)
}; };
// 跳转智库详情 // 跳转智库详情
const handlePerClick = item => { const handlePerClick = item => {
const curRoute = router.resolve({ // const curRoute = router.resolve({
name: "ThinkTankDetail", // name: "ThinkTankDetail",
params: { // params: {
id: item.organizationId, // id: item.organizationId,
name: item.organizationName // name: item.organizationName
} // }
}); // });
window.open(curRoute.href, "_blank"); // window.open(curRoute.href, "_blank");
goToPage.goToThinkTank(item.organizationId, item.organizationName)
}; };
// 导出 // 导出
......
...@@ -21,23 +21,29 @@ ...@@ -21,23 +21,29 @@
<script setup> <script setup>
import infoIcon from "../assets/icons/info-icon.png"; import infoIcon from "../assets/icons/info-icon.png";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import goToPage from "@/utils/goToPage/index";
const router = useRouter() const router = useRouter()
const emits = defineEmits(['num-click']) const emits = defineEmits(['num-click'])
const handleClickNum = (item) => { const handleClickNum = (item) => {
if (item === '实体清单') { if (item === '实体清单') {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// isCnEntityOnly: true
// }
// });
// window.open(route.href, "_blank");
const params = {
isCnEntityOnly: true isCnEntityOnly: true
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
} else if (item === '商业管制清单') { } else if (item === '商业管制清单') {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataCommerceControlList", // path: "/dataLibrary/dataCommerceControlList",
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataCCLList()
} }
} }
...@@ -157,7 +163,8 @@ const desMap = { ...@@ -157,7 +163,8 @@ const desMap = {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: flex-end; align-items: flex-end;
&:hover{
&:hover {
text-decoration: underline; text-decoration: underline;
background: var(--color-primary-2); background: var(--color-primary-2);
} }
......
...@@ -105,12 +105,8 @@ ...@@ -105,12 +105,8 @@
</div> </div>
</template> </template>
<!-- <div class="echarts" ref="sanctionCountChartRef"></div> --> <!-- <div class="echarts" ref="sanctionCountChartRef"></div> -->
<EChart <EChart :option="sanctionCountChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
:option="sanctionCountChartOption" @chart-click="handleToDataLibrary4" />
autoresize
:style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary4"
/>
<!-- <div class="bottom"> <!-- <div class="bottom">
<div class="ai"> <div class="ai">
<div class="left"> <div class="left">
...@@ -132,11 +128,8 @@ ...@@ -132,11 +128,8 @@
<!-- <AiButton /> <!-- <AiButton />
<AiPane :aiContent="sanctionCountChart.interpretation" /> --> <AiPane :aiContent="sanctionCountChart.interpretation" /> -->
<AiButton @mouseenter="handleShowAiPane('sanctionCountChart')" /> <AiButton @mouseenter="handleShowAiPane('sanctionCountChart')" />
<AiPane <AiPane v-if="aiPaneVisible?.sanctionCountChart" :aiContent="overviewAiContent.sanctionCountChart"
v-if="aiPaneVisible?.sanctionCountChart" @mouseleave="handleHideAiPane('sanctionCountChart')" />
:aiContent="overviewAiContent.sanctionCountChart"
@mouseleave="handleHideAiPane('sanctionCountChart')"
/>
</div> </div>
</AnalysisBox> </AnalysisBox>
</div> </div>
...@@ -150,22 +143,14 @@ ...@@ -150,22 +143,14 @@
<div class="map-wrapper"> <div class="map-wrapper">
<div class="map-chart" ref="mapChartRef"></div> <div class="map-chart" ref="mapChartRef"></div>
<div class="rank-list"> <div class="rank-list">
<div <div class="rank-item" v-for="(item, index) in rankData" :key="index" @click="handleToDataLibrary5(item)">
class="rank-item"
v-for="(item, index) in rankData"
:key="index"
@click="handleToDataLibrary5(item)"
>
<div class="rank-index" :class="'rank-' + (index + 1)">{{ index + 1 }}</div> <div class="rank-index" :class="'rank-' + (index + 1)">{{ index + 1 }}</div>
<div class="rank-name">{{ item.name }}</div> <div class="rank-name">{{ item.name }}</div>
<div class="rank-bar-bg"> <div class="rank-bar-bg">
<div <div class="rank-bar-fill" :style="{
class="rank-bar-fill"
:style="{
width: (item.value / maxRankValue) * 100 + '%', width: (item.value / maxRankValue) * 100 + '%',
background: getBarColor(index) background: getBarColor(index)
}" }"></div>
></div>
</div> </div>
<div class="rank-value">{{ item.value }}家</div> <div class="rank-value">{{ item.value }}家</div>
</div> </div>
...@@ -181,11 +166,8 @@ ...@@ -181,11 +166,8 @@
<!-- <AiButton /> <!-- <AiButton />
<AiPane :aiContent="rankChart.interpretation" /> --> <AiPane :aiContent="rankChart.interpretation" /> -->
<AiButton @mouseenter="handleShowAiPane('rankChart')" /> <AiButton @mouseenter="handleShowAiPane('rankChart')" />
<AiPane <AiPane v-if="aiPaneVisible?.rankChart" :aiContent="overviewAiContent.rankChart"
v-if="aiPaneVisible?.rankChart" @mouseleave="handleHideAiPane('rankChart')" />
:aiContent="overviewAiContent.rankChart"
@mouseleave="handleHideAiPane('rankChart')"
/>
</div> </div>
</AnalysisBox> </AnalysisBox>
</div> </div>
...@@ -197,12 +179,8 @@ ...@@ -197,12 +179,8 @@
</el-select> </el-select>
</template> </template>
<!-- <div class="echarts" ref="domainChartRef"></div> --> <!-- <div class="echarts" ref="domainChartRef"></div> -->
<EChart <EChart :option="domainChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
:option="domainChartOption" @chart-click="handleToDataLibrary6" />
autoresize
:style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary6"
/>
<div class="data-origin-box"> <div class="data-origin-box">
<div class="data-origin-icon"> <div class="data-origin-icon">
<img :src="tipsIcon" alt="" /> <img :src="tipsIcon" alt="" />
...@@ -213,11 +191,8 @@ ...@@ -213,11 +191,8 @@
<!-- <AiButton /> <!-- <AiButton />
<AiPane :aiContent="domainChart.interpretation" /> --> <AiPane :aiContent="domainChart.interpretation" /> -->
<AiButton @mouseenter="handleShowAiPane('domainChart')" /> <AiButton @mouseenter="handleShowAiPane('domainChart')" />
<AiPane <AiPane v-if="aiPaneVisible?.domainChart" :aiContent="overviewAiContent.domainChart"
v-if="aiPaneVisible?.domainChart" @mouseleave="handleHideAiPane('domainChart')" />
:aiContent="overviewAiContent.domainChart"
@mouseleave="handleHideAiPane('domainChart')"
/>
</div> </div>
</AnalysisBox> </AnalysisBox>
</div> </div>
...@@ -229,12 +204,8 @@ ...@@ -229,12 +204,8 @@
</el-select> </el-select>
</template> </template>
<!-- <div class="echarts" ref="typeChartRef"></div> --> <!-- <div class="echarts" ref="typeChartRef"></div> -->
<EChart <EChart :option="typeChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
:option="typeChartOption" @chart-click="handleToDataLibrary7" />
autoresize
:style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary7"
/>
<div class="data-origin-box"> <div class="data-origin-box">
<div class="data-origin-icon"> <div class="data-origin-icon">
<img :src="tipsIcon" alt="" /> <img :src="tipsIcon" alt="" />
...@@ -245,11 +216,8 @@ ...@@ -245,11 +216,8 @@
<!-- <AiButton /> <!-- <AiButton />
<AiPane :aiContent="typeChart.interpretation" /> --> <AiPane :aiContent="typeChart.interpretation" /> -->
<AiButton @mouseenter="handleShowAiPane('typeChart')" /> <AiButton @mouseenter="handleShowAiPane('typeChart')" />
<AiPane <AiPane v-if="aiPaneVisible?.typeChart" :aiContent="overviewAiContent.typeChart"
v-if="aiPaneVisible?.typeChart" @mouseleave="handleHideAiPane('typeChart')" />
:aiContent="overviewAiContent.typeChart"
@mouseleave="handleHideAiPane('typeChart')"
/>
</div> </div>
</AnalysisBox> </AnalysisBox>
</div> </div>
...@@ -277,6 +245,7 @@ import tipsIcon from "../../../assets/icons/info-icon.png"; ...@@ -277,6 +245,7 @@ import tipsIcon from "../../../assets/icons/info-icon.png";
import AiButton from "@/components/base/Ai/AiButton/index.vue"; import AiButton from "@/components/base/Ai/AiButton/index.vue";
import AiPane from "@/components/base/Ai/AiPane/index.vue"; import AiPane from "@/components/base/Ai/AiPane/index.vue";
import { useChartInterpretation } from "@/views/exportControl/utils/common"; import { useChartInterpretation } from "@/views/exportControl/utils/common";
import goToPage from "@/utils/goToPage/index";
// const sanctionCountChart = useChartInterpretation(); // const sanctionCountChart = useChartInterpretation();
const domainChart = useChartInterpretation(); const domainChart = useChartInterpretation();
const typeChart = useChartInterpretation(); const typeChart = useChartInterpretation();
...@@ -658,11 +627,12 @@ const updateMapChart = () => { ...@@ -658,11 +627,12 @@ const updateMapChart = () => {
selectedDate: selectedDate:
regionTime.value === "all" ? null : JSON.stringify([regionTime.value + "-01-01", regionTime.value + "-12-31"]) regionTime.value === "all" ? null : JSON.stringify([regionTime.value + "-01-01", regionTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: param // query: param
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(param)
}); });
}; };
...@@ -1047,11 +1017,12 @@ const handleToDataLibrary4 = val => { ...@@ -1047,11 +1017,12 @@ const handleToDataLibrary4 = val => {
? JSON.stringify([val.name + "-01-01", val.name + "-12-31"]) ? JSON.stringify([val.name + "-01-01", val.name + "-12-31"])
: JSON.stringify([val.name, val.name]) : JSON.stringify([val.name, val.name])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
// 制裁实体各省分布情况 // 制裁实体各省分布情况
...@@ -1062,11 +1033,12 @@ const handleToDataLibrary5 = item => { ...@@ -1062,11 +1033,12 @@ const handleToDataLibrary5 = item => {
selectedDate: selectedDate:
regionTime.value === "all" ? null : JSON.stringify([regionTime.value + "-01-01", regionTime.value + "-12-31"]) regionTime.value === "all" ? null : JSON.stringify([regionTime.value + "-01-01", regionTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
// 制裁实体领域分布情况 // 制裁实体领域分布情况
...@@ -1077,11 +1049,12 @@ const handleToDataLibrary6 = val => { ...@@ -1077,11 +1049,12 @@ const handleToDataLibrary6 = val => {
selectedDate: selectedDate:
domainTime.value === "all" ? null : JSON.stringify([domainTime.value + "-01-01", domainTime.value + "-12-31"]) domainTime.value === "all" ? null : JSON.stringify([domainTime.value + "-01-01", domainTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
// 制裁实体类型分布情况 // 制裁实体类型分布情况
...@@ -1091,53 +1064,71 @@ const handleToDataLibrary7 = val => { ...@@ -1091,53 +1064,71 @@ const handleToDataLibrary7 = val => {
selectedEntityType: val.name, selectedEntityType: val.name,
selectedDate: typeTime.value === "all" ? null : JSON.stringify([typeTime.value + "-01-01", typeTime.value + "-12-31"]) selectedDate: typeTime.value === "all" ? null : JSON.stringify([typeTime.value + "-01-01", typeTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
// 跳转到数据资源库 // 跳转到数据资源库
const handleToDataLibrary = () => { const handleToDataLibrary = () => {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// isCnEntityOnly: true
// }
// });
// window.open(route.href, "_blank");
const params = {
isCnEntityOnly: true isCnEntityOnly: true
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
}; };
const handleToDataLibrary1 = () => { const handleToDataLibrary1 = () => {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// isCnEntityOnly: true,
// isHalfRule: true
// }
// });
// window.open(route.href, "_blank");
const params = {
isCnEntityOnly: true, isCnEntityOnly: true,
isHalfRule: true isHalfRule: true
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
}; };
const handleToDataLibrary2 = () => { const handleToDataLibrary2 = () => {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// selectedDate: JSON.stringify([currentYear + "01-01", currentYear + "12-31"])
// }
// });
// window.open(route.href, "_blank");
const params = {
selectedDate: JSON.stringify([currentYear + "01-01", currentYear + "12-31"]) selectedDate: JSON.stringify([currentYear + "01-01", currentYear + "12-31"])
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
}; };
const handleToDataLibrary3 = time => { const handleToDataLibrary3 = time => {
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// selectedDate: JSON.stringify([time, time])
// }
// });
// window.open(route.href, "_blank");
const params = {
selectedDate: JSON.stringify([time, time]) selectedDate: JSON.stringify([time, time])
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
}; };
const requestAiPaneContent = async key => { const requestAiPaneContent = async key => {
...@@ -1308,6 +1299,7 @@ onMounted(() => { ...@@ -1308,6 +1299,7 @@ onMounted(() => {
box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1); box-shadow: 0px 0px 20px 0px rgba(25, 69, 130, 0.1);
position: relative; position: relative;
cursor: pointer; cursor: pointer;
&:hover { &:hover {
background: var(--color-primary-2); background: var(--color-primary-2);
} }
......
...@@ -173,7 +173,7 @@ import { ArrowDown } from "@element-plus/icons-vue"; ...@@ -173,7 +173,7 @@ import { ArrowDown } from "@element-plus/icons-vue";
import CommonPrompt from "../../../../../commonPrompt/index.vue"; import CommonPrompt from "../../../../../commonPrompt/index.vue";
import { getEntityInfo, getPublishInfo, getPublishOrgInfo, getEntityUpdateInfo } from "@/api/exportControlV2.0.js"; import { getEntityInfo, getPublishInfo, getPublishOrgInfo, getEntityUpdateInfo } from "@/api/exportControlV2.0.js";
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
import goToPage from "@/utils/goToPage/index";
const route = useRoute(); const route = useRoute();
// 处理点击发布机构的方法 // 处理点击发布机构的方法
const handleClickOrg = item => { const handleClickOrg = item => {
...@@ -410,11 +410,12 @@ const handleToDataLibrary = item => { ...@@ -410,11 +410,12 @@ const handleToDataLibrary = item => {
selectedDate: JSON.stringify([item.postDate, item.postDate]) selectedDate: JSON.stringify([item.postDate, item.postDate])
}; };
} }
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
onMounted(() => { onMounted(() => {
......
...@@ -192,6 +192,7 @@ import { getExportControlList, get50PercentEntityCount } from "@/api/exportContr ...@@ -192,6 +192,7 @@ import { getExportControlList, get50PercentEntityCount } from "@/api/exportContr
import CommonPrompt from "@/views/exportControl/commonPrompt/index.vue"; import CommonPrompt from "@/views/exportControl/commonPrompt/index.vue";
import { useGotoCompanyPages } from "@/router/modules/company"; import { useGotoCompanyPages } from "@/router/modules/company";
import TimeSortSelectBox from "@/components/base/TimeSortSelectBox/index.vue"; import TimeSortSelectBox from "@/components/base/TimeSortSelectBox/index.vue";
import goToPage from "@/utils/goToPage/index";
const gotoCompanyPages = useGotoCompanyPages(); const gotoCompanyPages = useGotoCompanyPages();
const router = useRouter(); const router = useRouter();
...@@ -531,22 +532,24 @@ const handlToDataLibrary = () => { ...@@ -531,22 +532,24 @@ const handlToDataLibrary = () => {
const params = { const params = {
isCnEntityOnly: true isCnEntityOnly: true
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
const handlToDataLibrary1 = () => { const handlToDataLibrary1 = () => {
const params = { const params = {
isCnEntityOnly: true, isCnEntityOnly: true,
isHalfRule: true isHalfRule: true
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
</script> </script>
......
...@@ -243,7 +243,7 @@ import { ...@@ -243,7 +243,7 @@ import {
} from "@/api/exportControlV2.0"; } from "@/api/exportControlV2.0";
import RuleSubsidiaryDialog from "../../../v2.0EntityList/components/sanctionsOverview/components/listPage/RuleSubsidiaryDialog.vue"; import RuleSubsidiaryDialog from "../../../v2.0EntityList/components/sanctionsOverview/components/listPage/RuleSubsidiaryDialog.vue";
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
import goToPage from "@/utils/goToPage/index";
import { useGotoCompanyPages } from "@/router/modules/company"; import { useGotoCompanyPages } from "@/router/modules/company";
const gotoCompanyPages = useGotoCompanyPages(); const gotoCompanyPages = useGotoCompanyPages();
...@@ -570,14 +570,19 @@ const handleToDataLibrary = item => { ...@@ -570,14 +570,19 @@ const handleToDataLibrary = item => {
(_, y, m, d) => `${y}-${m.padStart(2, "0")}-${d.padStart(2, "0")}` (_, y, m, d) => `${y}-${m.padStart(2, "0")}-${d.padStart(2, "0")}`
); );
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: { // query: {
// selectedDate: JSON.stringify([dateStr, dateStr]),
// selectedCountryId: item.id
// }
// });
// window.open(route.href, "_blank");
const params = {
selectedDate: JSON.stringify([dateStr, dateStr]), selectedDate: JSON.stringify([dateStr, dateStr]),
selectedCountryId: item.id selectedCountryId: item.id
} }
}); goToPage.goToDataEntityList(params)
window.open(route.href, "_blank");
}; };
onMounted(() => { onMounted(() => {
......
...@@ -104,7 +104,8 @@ ...@@ -104,7 +104,8 @@
</div> </div>
</div> </div>
</template> </template>
<EChart :option="sanctionCountChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }" @chart-click="handleToDataLibrary4" /> <EChart :option="sanctionCountChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary4" />
<div class="data-origin-box"> <div class="data-origin-box">
<div class="data-origin-icon"> <div class="data-origin-icon">
...@@ -165,7 +166,8 @@ ...@@ -165,7 +166,8 @@
<el-option v-for="item in timeOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in timeOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</template> </template>
<EChart :option="domainChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }" @chart-click="handleToDataLibrary6" /> <EChart :option="domainChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary6" />
<div class="data-origin-box"> <div class="data-origin-box">
<div class="data-origin-icon"> <div class="data-origin-icon">
...@@ -199,7 +201,8 @@ ...@@ -199,7 +201,8 @@
</div> </div>
</div> </div>
</template> </template>
<EChart :option="domainNumChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }" @chart-click="handleToDataLibrary5" /> <EChart :option="domainNumChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary5" />
<div class="data-origin-box"> <div class="data-origin-box">
<div class="data-origin-icon"> <div class="data-origin-icon">
...@@ -223,7 +226,8 @@ ...@@ -223,7 +226,8 @@
</el-select> </el-select>
</template> </template>
<!-- <div class="echarts" ref="typeChartRef"></div> --> <!-- <div class="echarts" ref="typeChartRef"></div> -->
<EChart :option="typeChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }" @chart-click="handleToDataLibrary7" /> <EChart :option="typeChartOption" autoresize :style="{ height: '300px', padding: '0 20px' }"
@chart-click="handleToDataLibrary7" />
<!-- <div class="bottom"> <!-- <div class="bottom">
<div class="ai"> <div class="ai">
<div class="left"> <div class="left">
...@@ -275,6 +279,7 @@ import tipsIcon from "../../../assets/icons/info-icon.png"; ...@@ -275,6 +279,7 @@ import tipsIcon from "../../../assets/icons/info-icon.png";
import AiButton from "@/components/base/Ai/AiButton/index.vue"; import AiButton from "@/components/base/Ai/AiButton/index.vue";
import AiPane from "@/components/base/Ai/AiPane/index.vue"; import AiPane from "@/components/base/Ai/AiPane/index.vue";
import { useChartInterpretation } from "@/views/exportControl/utils/common"; import { useChartInterpretation } from "@/views/exportControl/utils/common";
import goToPage from "@/utils/goToPage/index";
const sanctionCountChart = useChartInterpretation(); const sanctionCountChart = useChartInterpretation();
const domainChart = useChartInterpretation(); const domainChart = useChartInterpretation();
const domainNumChart = useChartInterpretation(); const domainNumChart = useChartInterpretation();
...@@ -1352,11 +1357,12 @@ const handleToDataLibrary6 = val => { ...@@ -1352,11 +1357,12 @@ const handleToDataLibrary6 = val => {
selectedDate: selectedDate:
domainTime.value === "all" ? null : JSON.stringify([domainTime.value + "-01-01", domainTime.value + "-12-31"]) domainTime.value === "all" ? null : JSON.stringify([domainTime.value + "-01-01", domainTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
}; };
// 制裁实体类型分布情况 // 制裁实体类型分布情况
...@@ -1367,11 +1373,12 @@ const handleToDataLibrary7 = val => { ...@@ -1367,11 +1373,12 @@ const handleToDataLibrary7 = val => {
selectedEntityType: val.name, selectedEntityType: val.name,
selectedDate: typeTime.value === "all" ? null : JSON.stringify([typeTime.value + "-01-01", typeTime.value + "-12-31"]) selectedDate: typeTime.value === "all" ? null : JSON.stringify([typeTime.value + "-01-01", typeTime.value + "-12-31"])
}; };
const route = router.resolve({ // const route = router.resolve({
path: "/dataLibrary/dataEntityList", // path: "/dataLibrary/dataEntityList",
query: params // query: params
}); // });
window.open(route.href, "_blank"); // window.open(route.href, "_blank");
goToPage.goToDataEntityList(params)
} }
onMounted(() => { onMounted(() => {
...@@ -1837,6 +1844,7 @@ onMounted(() => { ...@@ -1837,6 +1844,7 @@ onMounted(() => {
right: 0px; right: 0px;
bottom: 15px; bottom: 15px;
z-index: 999; z-index: 999;
:deep(.ai-pane-wrapper) { :deep(.ai-pane-wrapper) {
display: none; display: none;
} }
......
...@@ -43,13 +43,6 @@ ...@@ -43,13 +43,6 @@
</el-tooltip> </el-tooltip>
</div> </div>
<!-- <div class="ai-btn" @click="openAiBox">
<div class="icon">
<img src="@/assets/icons/ai-icon.png" alt="" />
</div>
<div class="text">智能问答</div>
</div> -->
<div class="ai-dialog" v-if="isShowAiBox"> <div class="ai-dialog" v-if="isShowAiBox">
<AiBox @close="closeAiBox" /> <AiBox @close="closeAiBox" />
</div> </div>
...@@ -66,18 +59,7 @@ import { getPersonType } from "@/api/common/index"; ...@@ -66,18 +59,7 @@ import { getPersonType } from "@/api/common/index";
// import { useDraggable } from "@vueuse/core"; // import { useDraggable } from "@vueuse/core";
import ModuleHeader from '@/components/base/moduleHeader/index.vue' import ModuleHeader from '@/components/base/moduleHeader/index.vue'
import Menu1 from "@/assets/icons/overview/menu1.png";
import Menu2 from "@/assets/icons/overview/menu2.png";
import Menu3 from "@/assets/icons/overview/menu3.png";
import Menu4 from "@/assets/icons/overview/menu4.png";
import Menu5 from "@/assets/icons/overview/menu5.png";
import Menu6 from "@/assets/icons/overview/menu6.png";
import Menu7 from "@/assets/icons/overview/menu7.png";
import Menu8 from "@/assets/icons/overview/menu8.png";
import Menu9 from "@/assets/icons/overview/menu9.png";
import Menu10 from "@/assets/icons/overview/menu10.png";
import Menu11 from "@/assets/icons/overview/menu11.png";
import Menu12 from "@/assets/icons/overview/menu12.png";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
const router = useRouter(); const router = useRouter();
...@@ -97,10 +79,6 @@ const closeAiBox = () => { ...@@ -97,10 +79,6 @@ const closeAiBox = () => {
isShowAiBox.value = false; isShowAiBox.value = false;
}; };
const openAiBox = () => {
isShowAiBox.value = true;
};
const personTypeList = ref([]); const personTypeList = ref([]);
// 获取人物类别 // 获取人物类别
...@@ -117,115 +95,6 @@ const handleGetPersonType = async () => { ...@@ -117,115 +95,6 @@ const handleGetPersonType = async () => {
} catch (error) { } } catch (error) { }
}; };
const isCurrentOverview = computed(() => {
if (route.path === "/ZMOverView") {
return true;
} else {
return false;
}
});
const isShowMenu = ref(false);
const handleShowMenu = (index, isShow) => {
if (index === 0) {
isShowMenu.value = isShow;
}
};
const handleHoverMenu = isShow => {
isShowMenu.value = isShow;
};
const menuList = ref([
{
title: "中美科技博弈概览",
icon: Menu1,
path: "/ZMOverView"
},
{
title: "科技法案",
icon: Menu2,
path: "/billHome"
},
{
title: "科技政令",
icon: Menu3,
path: "/decree"
},
{
title: "美国科技智库",
icon: Menu4,
path: "/thinkTank"
},
{
title: "出口管制",
icon: Menu5,
path: "/exportControl"
},
{
title: "科研合作限制",
icon: Menu6,
path: "/cooperationRestrictions"
},
{
title: "投融资限制",
icon: Menu7,
path: "/finance"
},
{
title: "市场准入限制",
icon: Menu8,
path: "/marketAccessRestrictions"
},
{
title: "规则限制",
icon: Menu9,
path: "/ruleRestrictions"
},
{
title: "美国科技人物观点",
icon: Menu10,
path: "/technologyFigures"
},
{
title: "美国主要创新主体动向",
icon: Menu11,
path: "/innovationSubject"
},
{
title: "美国科研资助体系",
icon: Menu12,
path: "/scientificFunding"
}
]);
const handleToModule = item => {
const curRoute = router.resolve({
path: item.path
});
window.open(curRoute.href, "_blank");
};
const searchText = ref("");
const handleSearch = () => {
const curRoute = router.resolve({
path: "/searchResults",
query: {
searchText: searchText.value
}
});
window.open(curRoute.href, "_blank");
};
const handleClickTitle = item => {
if (item.name === "主要国家科技动向感知" || item.name === "主要国家竞争科技安全") {
ElMessage.warning("当前功能正在开发中,敬请期待!");
}
};
const handleOpenPage = page => { const handleOpenPage = page => {
const pageObj = { const pageObj = {
znwd: "/chat", znwd: "/chat",
......
...@@ -293,10 +293,10 @@ import defaultNewsIcon from "@/assets/icons/default-icon-news.png"; ...@@ -293,10 +293,10 @@ import defaultNewsIcon from "@/assets/icons/default-icon-news.png";
import AreaTag from "@/components/base/AreaTag/index.vue"; import AreaTag from "@/components/base/AreaTag/index.vue";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode"; import goToPage from "@/utils/goToPage";
const router = useRouter(); const router = useRouter();
const thinkTankId = computed(() => getDecodedParams()); const thinkTankId = computed(() => goToPage.getDecodedParams());
const loading = ref(false); const loading = ref(false);
const pageScrollRef = ref(null); const pageScrollRef = ref(null);
......
...@@ -64,7 +64,7 @@ import PolicyTracking from "./PolicyTracking/index.vue"; ...@@ -64,7 +64,7 @@ import PolicyTracking from "./PolicyTracking/index.vue";
import ThinkInfo from "./thinkInfo/index.vue"; import ThinkInfo from "./thinkInfo/index.vue";
import { getThinkTankSummary } from "@/api/thinkTank/overview"; import { getThinkTankSummary } from "@/api/thinkTank/overview";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode"; import goToPage from "@/utils/goToPage";
const router = useRouter(); const router = useRouter();
// 兼容 getDecodedParams 内部直接使用全局 router 的写法 // 兼容 getDecodedParams 内部直接使用全局 router 的写法
...@@ -77,7 +77,7 @@ const switchTab = name => { ...@@ -77,7 +77,7 @@ const switchTab = name => {
const thinkTank = ref({}); const thinkTank = ref({});
// 获取智库基本信息 // 获取智库基本信息
const handleGetThinkTankSummary = async () => { const handleGetThinkTankSummary = async () => {
const decoded = getDecodedParams(); const decoded = goToPage.getDecodedParams();
// getDecodedParams: 有时返回对象(来自 ?data=),有时返回字符串(来自 params) // getDecodedParams: 有时返回对象(来自 ?data=),有时返回字符串(来自 params)
const id = typeof decoded === "object" && decoded !== null ? decoded.id : decoded; const id = typeof decoded === "object" && decoded !== null ? decoded.id : decoded;
......
...@@ -78,11 +78,11 @@ import { ...@@ -78,11 +78,11 @@ import {
getResourceLibraryReportDateRangeFromTimeSelection getResourceLibraryReportDateRangeFromTimeSelection
} from "../../utils/resourceLibraryFilters"; } from "../../utils/resourceLibraryFilters";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode";
import ThinkTankReport from "./ThinkTankReport/index.vue"; import ThinkTankReport from "./ThinkTankReport/index.vue";
import CongressHearing from "./CongressHearing/index.vue"; import CongressHearing from "./CongressHearing/index.vue";
import goToPage from "@/utils/goToPage";
const router = useRouter(); const router = useRouter();
const thinkTankId = computed(() => getDecodedParams()); const thinkTankId = computed(() => goToPage.getDecodedParams());
const isThinkTankReport = ref(true); const isThinkTankReport = ref(true);
const isSurveyForm = ref(false); const isSurveyForm = ref(false);
const isCongressHearing = ref(false); const isCongressHearing = ref(false);
......
...@@ -259,8 +259,6 @@ import { ref, onMounted, nextTick, computed } from "vue"; ...@@ -259,8 +259,6 @@ import { ref, onMounted, nextTick, computed } from "vue";
import setChart from "@/utils/setChart"; import setChart from "@/utils/setChart";
import getPieChart from "./utils/piechart"; import getPieChart from "./utils/piechart";
import getTreeMapChart from "./utils/treeMapChart"; import getTreeMapChart from "./utils/treeMapChart";
import { getDecodedParams } from "@/utils/goToPage/methods/getDecode";
import { ElMessage } from "element-plus";
import { import {
getThinkTankInfoBasic, getThinkTankInfoBasic,
getThinkTankInfoBranch, getThinkTankInfoBranch,
...@@ -274,9 +272,10 @@ import { useRouter } from "vue-router"; ...@@ -274,9 +272,10 @@ import { useRouter } from "vue-router";
import DefaultIcon1 from '@/assets/icons/default-icon1.png' import DefaultIcon1 from '@/assets/icons/default-icon1.png'
import { getPersonSummaryInfo } from "@/api/common/index"; import { getPersonSummaryInfo } from "@/api/common/index";
import goToPage from "@/utils/goToPage";
const totalPersonNumber = ref(0) const totalPersonNumber = ref(0)
const router = useRouter(); const router = useRouter();
const thinkTankId = getDecodedParams(); const thinkTankId = goToPage.getDecodedParams();
import InfoImg from "./images/img.png"; import InfoImg from "./images/img.png";
import Icon1 from "./images/icon1.png"; import Icon1 from "./images/icon1.png";
import Icon2 from "./images/icon2.png"; import Icon2 from "./images/icon2.png";
......
...@@ -502,8 +502,7 @@ import { setCanvasCreator } from "echarts/core"; ...@@ -502,8 +502,7 @@ import { setCanvasCreator } from "echarts/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { useGotoNewsDetail } from '@/router/modules/news'; import { useGotoNewsDetail } from '@/router/modules/news';
import { goToThinkTank } from "@/utils/goToPage/methods/thinkTank.js"; import goToPage from "@/utils/goToPage";
import { goToDataThinkTank } from "@/utils/goToPage/methods/dataLibrary.js";
const gotoNewsDetail = useGotoNewsDetail() const gotoNewsDetail = useGotoNewsDetail()
const containerRef = ref(null); const containerRef = ref(null);
const isRiskDetailVisible = ref(false); const isRiskDetailVisible = ref(false);
...@@ -2310,7 +2309,7 @@ const handleClick = tank => { ...@@ -2310,7 +2309,7 @@ const handleClick = tank => {
ElMessage.warning("当前智库id为空,无法进入详情页"); ElMessage.warning("当前智库id为空,无法进入详情页");
return; return;
} }
goToThinkTank(tank.id, tank.name + "概览") goToPage.goToThinkTank(tank.id, tank.name + "概览")
// window.sessionStorage.setItem("curTabName", tank.name + "概览"); // window.sessionStorage.setItem("curTabName", tank.name + "概览");
// const curRoute = router.resolve({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } }); // const curRoute = router.resolve({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } });
// window.open(curRoute.href, "_blank"); // window.open(curRoute.href, "_blank");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论