zhangjie 1 жил өмнө
parent
commit
c3f257c9fd

+ 9 - 1
src/modules/login/views/Login.vue

@@ -208,7 +208,15 @@ export default {
   },
   methods: {
     async getSchool() {
-      this.loginModel.schoolCode = this.$route.params.code || getOrgCode();
+      if (this.$route.params.code) {
+        this.loginModel.schoolCode = this.$route.params.code;
+        window.sessionStorage.setItem(
+          "routeDomainCode",
+          this.$route.params.code
+        );
+      } else {
+        this.loginModel.schoolCode = getOrgCode();
+      }
       const data = await getSchoolInfo(this.loginModel.schoolCode);
       this.$ls.set("schoolLogo", data.logo);
       this.$ls.set("schoolName", data.name);

+ 6 - 14
src/modules/stmms/components/markParam/ModifyMarkParams.vue

@@ -5,9 +5,9 @@
     top="0"
     :close-on-click-modal="false"
     :close-on-press-escape="false"
+    :show-close="false"
     append-to-body
     fullscreen
-    :before-close="beforeClose"
     @open="initData"
   >
     <div slot="title">
@@ -15,6 +15,7 @@
       <span
         >课程名称:{{ instance.courseName }}({{ instance.courseCode }})</span
       >
+      <button class="el-dialog__headerbtn" @click="cancel"></button>
     </div>
 
     <div class="mb-4 tab-btns">
@@ -131,9 +132,6 @@ export default {
       "initStore",
     ]),
     async initData() {
-      this.initStore();
-      this.selectMenu("structure");
-
       const basicPaperInfo = {
         ...this.instance,
         openClassReading: !!this.instance.openClassReading,
@@ -185,6 +183,7 @@ export default {
       );
       this.setObjectiveStructure(objectiveStructure);
 
+      this.selectMenu("structure");
       this.dataReady = true;
     },
     async updateMarkStatus() {
@@ -330,21 +329,14 @@ export default {
       }).catch(() => {});
       if (res !== "confirm") return;
 
+      this.initStore();
+      this.dataReady = false;
+      this.$emit("modified");
       this.modalIsShow = false;
     },
     open() {
       this.modalIsShow = true;
     },
-    async beforeClose(done) {
-      const res = await this.$confirm("确定要退出阅卷参数编辑吗?", "提示", {
-        type: "warning",
-      }).catch(() => {});
-      if (res !== "confirm") return;
-
-      this.dataReady = false;
-      this.$emit("modified");
-      done();
-    },
     confirm() {
       if (this.isLastStep) {
         this.selectMenu(this.tabs[0].val);

+ 4 - 0
src/plugins/axios.js

@@ -180,8 +180,12 @@ const errorDataCallback = (response) => {
         Vue.ls.clear();
         const paramDomainCode =
           window.sessionStorage.getItem("paramDomainCode");
+        const routeDomainCode =
+          window.sessionStorage.getItem("routeDomainCode");
         if (paramDomainCode) {
           router.push({ name: "Login", query: { code: paramDomainCode } });
+        } else if (routeDomainCode) {
+          router.push({ name: "Login", params: { code: routeDomainCode } });
         } else {
           router.push({ name: "Login" });
         }

+ 3 - 0
src/router.js

@@ -108,8 +108,11 @@ router.beforeEach((to, from, next) => {
 
     Vue.ls.clear();
     const paramDomainCode = window.sessionStorage.getItem("paramDomainCode");
+    const routeDomainCode = window.sessionStorage.getItem("routeDomainCode");
     if (paramDomainCode) {
       next({ name: "Login", query: { code: paramDomainCode } });
+    } else if (routeDomainCode) {
+      next({ name: "Login", params: { code: routeDomainCode } });
     } else {
       next({ name: "Login" });
     }

+ 3 - 0
src/views/Home.vue

@@ -430,8 +430,11 @@ export default {
 
       this.$ls.clear();
       const paramDomainCode = window.sessionStorage.getItem("paramDomainCode");
+      const routeDomainCode = window.sessionStorage.getItem("routeDomainCode");
       if (paramDomainCode) {
         this.$router.push({ name: "Login", query: { code: paramDomainCode } });
+      } else if (routeDomainCode) {
+        this.$router.push({ name: "Login", params: { code: routeDomainCode } });
       } else {
         this.$router.push({ name: "Login" });
       }