提交 4569b019 authored 作者: coderBryanFu's avatar coderBryanFu

feat:新增goToPage.js文件

上级 84861ffe
流水线 #589 已通过 于阶段
in 2 分 0 秒
......@@ -5,11 +5,16 @@ import router from "@/router/index";
export const goToBill = (id, tabName) => {
window.sessionStorage.setItem("billId", id);
window.sessionStorage.setItem("curTabName", tabName);
const route = router.resolve({
path: "/billLayout",
query: {
const param = {
billId: id
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/billLayout",
query: base64
});
window.open(route.href, "_blank");
};
......@@ -18,11 +23,14 @@ export const goToBill = (id, tabName) => {
export const goToDecree = (id, tabName) => {
window.sessionStorage.setItem("decreeId", id);
window.sessionStorage.setItem("curTabName", tabName);
const route = router.resolve({
path: "/decreeLayout",
query: {
const param = {
id: id
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/decreeLayout",
query: base64
});
window.open(route.href, "_blank");
};
......@@ -30,10 +38,11 @@ export const goToDecree = (id, tabName) => {
// 跳转智库详情
export const goToThinkTank = (id, tabName) => {
window.sessionStorage.setItem("curTabName", tabName);
const base64 = btoa(encodeURIComponent(id));
const curRoute = router.resolve({
name: "ThinkTankDetail",
params: {
id: id
id: base64
}
});
window.open(curRoute.href, "_blank");
......@@ -51,14 +60,191 @@ export const goToThinkTankReport = (id, tabName) => {
window.open(route.href, "_blank");
}
// 跳转实体清单
export const goToEntityList = () => {
const param = {
sanTypeId: 1
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: '/exportControl/entityList',
query: base64
});
window.open(route.href, "_blank");
}
// 跳转实体清单事件
export const goToSingleEntityEvent = (id, tabName, date) => {
window.sessionStorage.setItem("curTabName", tabName);
const param = {
id: id,
sanTypeId: 1,
date: date
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/exportControl/singleSanction",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转商业管制清单
export const goToCCLList = () => {
const param = {
sanTypeId: 13,
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/exportControl/commercialControlList",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转SDN清单
export const goToSDNList = () => {
const param = {
sanTypeId: 2,
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/finance/sdnlistoverview",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转SDN清单事件
export const goToSingleSDNEvent = (id, tabName, date) => {
window.sessionStorage.setItem("curTabName", tabName);
const param = {
id: id,
sanTypeId: 2,
date: date
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/finance/singleSanction",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转232调查概览页
export const goToCase232 = () => {
window.sessionStorage.setItem("curTabName", '232调查');
const param = {
id: 232,
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketAccessLayout/case",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转232调查详情页
export const goToCaseDetail232 = (searchId, tabName) => {
window.sessionStorage.setItem("curTabName", tabName);
const param = {
id: 232,
searchId: searchId
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketSingleCaseLayout/overview",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转301调查概览页
export const goToCase301 = () => {
window.sessionStorage.setItem("curTabName", '301调查');
const param = {
id: 301,
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketAccessLayout/case",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转301调查详情页
export const goToCaseDetail301 = (searchId, tabName) => {
window.sessionStorage.setItem("curTabName", tabName);
const param = {
id: 301,
searchId: searchId
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketSingleCaseLayout/overview",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转337调查概览页
export const goToCase337 = () => {
window.sessionStorage.setItem("curTabName", '337调查');
const param = {
id: 337,
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketAccessLayout/case",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转337调查详情页
export const goToCaseDetail337 = (searchId, tabName) => {
window.sessionStorage.setItem("curTabName", tabName);
const param = {
id: 337,
searchId: searchId
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/marketSingleCaseLayout/overview",
query: base64
});
window.open(route.href, "_blank");
}
// 跳转机构详情
export const goToInstitution = (id, tabName) => {
window.sessionStorage.setItem('curTabName', tabName)
const curRoute = router.resolve({
path: "/institution",
query: {
const param = {
id: id
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const curRoute = router.resolve({
path: "/institution",
query: base64
});
window.open(curRoute.href, "_blank");
}
......@@ -72,6 +258,18 @@ export const goToCharacterPage = async (id, tabName) => {
const params = {
personId: id
}
const param1 = {
personId: item.id
}
const jsonStr1 = JSON.stringify(param1);
const base64_1 = btoa(encodeURIComponent(jsonStr1));
const param2 = {
personId: item.id
}
const jsonStr2 = JSON.stringify(param2);
const base64_2 = btoa(encodeURIComponent(jsonStr2));
// 先获取人物全局信息
try {
const res = await getPersonSummaryInfo(params)
......@@ -91,28 +289,21 @@ export const goToCharacterPage = async (id, tabName) => {
personTypeName = "其他类型";
const route = router.resolve({
path: "/characterPage",
query: {
personId: item.id
}
query: base64_1
});
window.open(route.href, "_blank");
return;
}
const route = router.resolve({
path: "/characterPage",
query: {
type: type, // type=1为科技企业领袖,2为国会议员,3为智库研究人员
personId: item.id
}
query: base64_2
});
window.open(route.href, "_blank");
} else {
personTypeName = "";
const route = router.resolve({
path: "/characterPage",
query: {
personId: item.id
}
query: base64_1
});
window.open(route.href, "_blank");
return;
......@@ -120,9 +311,7 @@ export const goToCharacterPage = async (id, tabName) => {
} else {
const route = router.resolve({
path: "/characterPage",
query: {
personId: item.id
}
query: base64_1
});
window.open(route.href, "_blank");
return;
......@@ -130,9 +319,7 @@ export const goToCharacterPage = async (id, tabName) => {
} catch (error) {
const route = router.resolve({
path: "/characterPage",
query: {
personId: item.id
}
query: base64_1
});
window.open(route.href, "_blank");
return;
......@@ -142,11 +329,14 @@ export const goToCharacterPage = async (id, tabName) => {
// 跳转企业
export const goToCompanyPage = (id, tabName) => {
window.sessionStorage.setItem('curTabName', tabName)
const route = router.resolve({
name: "companyPages",
params: {
const param = {
id: id
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
name: "companyPages",
params: base64
});
window.open(route.href, "_blank");
}
......@@ -154,11 +344,14 @@ export const goToCompanyPage = (id, tabName) => {
// 跳转新闻详情
export const goToNewsPage = (id, tabName) => {
window.sessionStorage.setItem("curTabName", tabName);
const route = router.resolve({
path: "/newsAnalysis",
query: {
const param = {
newsId: id
}
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const route = router.resolve({
path: "/newsAnalysis",
query: base64
});
window.open(route.href, "_blank");
}
......@@ -166,7 +359,7 @@ export const goToNewsPage = (id, tabName) => {
// 跳转搜索详情页
export const goToSearch = (tabName, areaName, billSearchType) => {
window.sessionStorage.setItem("curTabName", tabName);
// if (!areaName) return;
const query = {
searchText: tabName,
areaName: areaName
......@@ -174,9 +367,14 @@ export const goToSearch = (tabName, areaName, billSearchType) => {
if (enableBillTypeSwitch) {
query.billSearchType = billSearchType
}
const param = query
const jsonStr = JSON.stringify(param);
const base64 = btoa(encodeURIComponent(jsonStr));
const curRoute = router.resolve({
path: "/searchResults",
query
query: base64
});
window.open(curRoute.href, "_blank");
}
......@@ -199,10 +397,11 @@ export const goToDataCountryBill = (selectParam) => {
}
// 解码
// 解码-------------------------------------------!!!!!
export const getDecodedParams = () => {
const urlParams = new URLSearchParams(window.location.search);
const encoded = urlParams.get('data');
if (window.location.search) {
const urlParams = new URLSearchParams(window.location.search)
const encoded = urlParams.get('data')
if (!encoded) return null;
......@@ -215,6 +414,20 @@ export const getDecodedParams = () => {
console.error('解码失败', e);
return null;
}
} else {
const obj = router.currentRoute.value.params
const encoded = Object.values(obj)[0]
if (!encoded) return null;
try {
// Base64 解码
const decoded = atob(encoded);
const jsonStr = decodeURIComponent(decoded);
return jsonStr;
} catch (e) {
console.error('解码失败', e);
return null;
}
}
}
......
......@@ -322,6 +322,7 @@ import iconILetter from "./assets/icons/icon-iLetter.png";
import { ElMessage } from "element-plus";
import { useGotoNewsDetail } from "@/router/modules/news";
import { goToBill } from "@/utils/goToPage";
// 跳转人物主页(MessageBubble 的 person-click 传入整条列表项,需取 personId)
const handleClickToCharacter = async item => {
......@@ -518,11 +519,12 @@ const handleClickToDetail = () => {
};
// 查看详情 传递参数
const handleClickToDetailO = item => {
window.sessionStorage.setItem("billId", item.billId);
window.sessionStorage.setItem("curTabName", item.name || item.signalTitle);
const route = router.resolve("/billLayout?billId=" + item.billId);
window.open(route.href, "_blank");
// window.sessionStorage.setItem("billId", item.billId);
// window.sessionStorage.setItem("curTabName", item.name || item.signalTitle);
// const route = router.resolve("/billLayout?billId=" + item.billId);
// window.open(route.href, "_blank");
// router.push("/billLayout?billId=" + item.billId)
goToBill(item.billId, item.signalTitle)
};
const isRiskOverviewDetailOpen = ref(false);
......
......@@ -64,6 +64,7 @@ import PolicyTracking from "./PolicyTracking/index.vue";
import ThinkInfo from "./thinkInfo/index.vue";
import { getThinkTankSummary } from "@/api/thinkTank/overview";
import { useRouter } from "vue-router";
import { getDecodedParams } from "@/utils/goToPage";
const router = useRouter();
const tabActiveName = ref("智库动态");
......@@ -74,9 +75,13 @@ const switchTab = name => {
const thinkTank = ref({});
// 获取智库基本信息
const handleGetThinkTankSummary = async () => {
const id = getDecodedParams()
try {
const parmas = {
id: router.currentRoute._value.params.id
id: id
};
const res = await getThinkTankSummary(parmas);
console.log("智库信息", res);
......
......@@ -515,6 +515,7 @@ import { setCanvasCreator } from "echarts/core";
import { ElMessage } from "element-plus";
import { useRouter } from 'vue-router';
import { useGotoNewsDetail } from '@/router/modules/news';
import { goToThinkTank } from "@/utils/goToPage";
const gotoNewsDetail = useGotoNewsDetail()
const containerRef = ref(null);
const isRiskDetailVisible = ref(false);
......@@ -2284,14 +2285,17 @@ const handleGetetThinkTankReport = async () => {
const handleClick = tank => {
console.log(tank);
window.sessionStorage.setItem("curTabName", tank.name + "概览");
// router.push({ name: "ThinkTankDetail", params: { id: tank.id } });
if (!tank.id) {
ElMessage.warning("当前智库id为空,无法进入详情页");
return;
}
const curRoute = router.resolve({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } });
window.open(curRoute.href, "_blank");
goToThinkTank(tank.id, tank.name + "概览")
// window.sessionStorage.setItem("curTabName", tank.name + "概览");
// const curRoute = router.resolve({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } });
// window.open(curRoute.href, "_blank");
// router.push({ name: "ThinkTankDetail", params: { id: tank.id, name: tank.name } })
};
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论