enter-case.ts 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { ElMessage } from "element-plus";
  2. import type { Scene } from "../../example/platform/platform-resource";
  3. import { token, params, overviewId } from "../env";
  4. import { genLoading } from "../loadding";
  5. import * as shadred from "./enter-shared";
  6. window.platform = { ...shadred };
  7. window.platform.getHeaders = () => ({
  8. ...shadred.getHeaders(),
  9. caseId: params.value.caseId || "",
  10. });
  11. let isLoging = false;
  12. window.platform.login = (isBack = true) => {
  13. if (isLoging) {
  14. throw "登录中";
  15. }
  16. isLoging = true;
  17. if (import.meta.env.DEV) {
  18. if (params.value.caseId) {
  19. shadred
  20. .post("/service/manage/login", {
  21. password: "JwiuK95dExMjM0NTY=7nHGf5ySQWSuC4G1An",
  22. username: "super-admin",
  23. userName: "super-admin",
  24. })
  25. .then((res) => {
  26. params.value.token = res.token;
  27. // setTimeout(() => location.reload(), 1000);
  28. isLoging = false;
  29. });
  30. }
  31. return;
  32. }
  33. return shadred.login(isBack);
  34. };
  35. window.platform.getSceneList = genLoading(
  36. async (keyword: string): Promise<Scene[]> => {
  37. const list = await shadred.post(`fusion/case/sceneListPost`, {
  38. caseId: params.value.caseId,
  39. isMesh: 1,
  40. sceneName: keyword,
  41. });
  42. return list.map((item: any) => ({
  43. type: shadred.SCENE_TYPE.mesh,
  44. m: item.num,
  45. title: item.name,
  46. id: item.id.toString(),
  47. token,
  48. }));
  49. }
  50. );
  51. /* @vite-ignore */
  52. import(import.meta.env.VITE_ENTRY_EXAMPLE);
  53. setTimeout(() => {
  54. if (!params.value.caseId || !token) {
  55. ElMessage.error("当前项目号不存在!");
  56. window.platform.login(!!params.value.caseId);
  57. } else {
  58. window.platform.getSceneList("");
  59. }
  60. }, 500);