import { ElMessage } from "element-plus"; import { params, preventReload } from "../env"; import * as platform from "./enter-shared"; import { asyncTimeout } from "@/utils/shared"; import { getEmptyStoreData } from "@/core/store/store"; import { defaultLayer } from "@/constant"; import { tableTitleKey } from "../constant"; import { getBaseItem } from "@/core/components/util"; import { getRealPixel } from "./views/tabulation/gen-tab"; import { getPaperConfig, paperConfigs } from "../components/slide/actions"; window.platform = { ...platform }; let isLoging = false; window.platform.login = (isBack = true) => { if (isLoging) { throw "登录中"; } isLoging = true; if (import.meta.env.DEV) { platform .post("/service/manage/login", { password: "JwiuK95dExMjM0NTY=7nHGf5ySQWSuC4G1An", username: "super-admin", userName: "super-admin", }) .then((res) => { params.value.token = res.token; setTimeout(() => location.reload(), 1000); isLoging = false; }); return; } return platform.login(isBack); }; // 场景码+楼层 转绘图id const sceneTransform = async (m: string, subGroup: string = "0") => { const data = await platform.get("fusion/caseOverview/info", { num: m, subGroup, }); if (data?.id) { params.value.overviewId = data.id; delete params.value.m; delete params.value.floor; preventReload(); } await asyncTimeout(10); }; const m = params.value.m; const subgroup = params.value.floor; window.platform.sceneDraw = m && !!params.value.sceneDraw; if (window.platform.sceneDraw) { sceneTransform(m, subgroup).then(() => { /* @vite-ignore */ import(import.meta.env.VITE_ENTRY_EXAMPLE); }); window.platform.saveOverviewData = async (id: any, data: any) => { const result = await platform.saveOverviewData(id, { ...data, num: m, subGroup: subgroup, }); const key = `${m}-${subgroup}-draw-kankan-cover`; localStorage.setItem(key, data.kankanCover); return result; }; } else { /* @vite-ignore */ import(import.meta.env.VITE_ENTRY_EXAMPLE); } window.platform.getTabulationData = async (...args: any[]) => { const result = await platform.getTabulationData.apply(this, args as any); if (!result.title && platform.getTableTemp().title) { result.title = platform.getTableTemp().title; } if (!result.store) { result.store = { ...getEmptyStoreData(), }; } if (result.title) { let texts = result.store.layers[defaultLayer].text; if (!texts) { texts = result.store.layers[defaultLayer].text = [] } let title = texts.find((title: any) => title.key === tableTitleKey); if (title) { title.content = result.title; } else { const { margin, size } = getPaperConfig( (paperConfigs as any)[result.paperKey].size, (paperConfigs as any)[result.paperKey].scale ); const title = { ...getBaseItem(), content: result.title, width: getRealPixel(90, result.paperKey), heihgt: getRealPixel(14.4, result.paperKey), fontSize: getRealPixel(12, result.paperKey), key: tableTitleKey, align: "center", mat: [1, 0, 0, 1, 0, 0], }; const pos = { x: (size.width - margin[3]) / 2 - getRealPixel(40, result.paperKey) + margin[3], y: getRealPixel(15, result.paperKey) + margin[0], }; title.mat[4] = pos.x; title.mat[5] = pos.y; texts.push(title) } } return result; }; window.platform.saveTabulationData = (id: any, data: any) => { const texts = data.store.layers[defaultLayer].text; let title = texts.find((title: any) => title.key === tableTitleKey); let content = title ? title.content : '' return platform.saveTabulationData(id, {...data, title: content}) } // 登录检测 setTimeout(() => { if (!platform.getHeaders().token) { ElMessage.error("当前用户未登录"); window.platform.login(); } else { console.log("0.0"); platform.getSceneList("").next(); } }, 500);