hejianhao
2026-01-24 e4c17fe22b99efc2cec3a44b981e0bdd674868d1
screen/src/App.vue
@@ -6,6 +6,7 @@
<script>
import autofit from "autofit.js";
import { getLoginInfo } from "./view/login/service";
export default {
  name: "app",
@@ -26,9 +27,11 @@
    let projectId = "";
    let projectName = "";
    const hash = window.location.hash;
    let queryPart = null;
    let params = null;
    if (hash && hash.indexOf("?") !== -1) {
      const queryPart = hash.split("?")[1];
      const params = new URLSearchParams(queryPart);
      queryPart = hash.split("?")[1];
      params = new URLSearchParams(queryPart);
      token = params.get("token");
      type = params.get("type");
      if (type == 2) {
@@ -36,25 +39,43 @@
        projectName = params.get("projectName");
      }
    }
    if (token) {
      localStorage.setItem("token", token);
      if (type == 1) {
        this.$router.replace({
          path: "/home",
        });
        return;
      }
      if (type == 2) {
        this.$router.replace({
          path: "/projectHome",
          query: {
            projectId,
            projectName,
          },
        });
        return;
      }
      getLoginInfo({
        id: type == 1 ? params.get("clientId") : params.get("projectId"),
        type,
      }).then((r) => {
        localStorage.setItem(
          "permissionClient",
          JSON.stringify(
            r.permissionClient ? r.permissionClient.split(",") : []
          )
        );
        localStorage.setItem(
          "permissionProject",
          JSON.stringify(
            r.permissionProject ? r.permissionProject.split(",") : []
          )
        );
        if (type == 1) {
          localStorage.setItem("clientId", params.get("clientId"));
          localStorage.setItem("clientName", params.get("clientName"));
          localStorage.setItem("clientLogo", r.logo);
          this.$router.replace({
            path: "/home",
          });
          return;
        } else if (type == 2) {
          this.$router.replace({
            path: "/projectHome",
            query: {
              projectId,
              projectName,
            },
          });
          return;
        }
      });
    }
    if (!localStorage.getItem("token")) {
      this.$router.replace("/");