diff --git a/backend/src/main/java/io/metersphere/track/service/TestCaseCommentService.java b/backend/src/main/java/io/metersphere/track/service/TestCaseCommentService.java index 3634f16c5e..de1915bd7e 100644 --- a/backend/src/main/java/io/metersphere/track/service/TestCaseCommentService.java +++ b/backend/src/main/java/io/metersphere/track/service/TestCaseCommentService.java @@ -47,7 +47,7 @@ public class TestCaseCommentService { testCaseWithBLOBs = testCaseMapper.selectByPrimaryKey(request.getCaseId()); SaveTestCaseReviewRequest caseReviewRequest = new SaveTestCaseReviewRequest(); List userIds = new ArrayList<>(); - userIds.add(testCaseComment.getAuthor()); + userIds.add(testCaseWithBLOBs.getMaintainer()); mailService.sendHtml(userIds, "comment", caseReviewRequest, request, testCaseWithBLOBs); } diff --git a/frontend/src/business/components/common/router/router.js b/frontend/src/business/components/common/router/router.js index 7ac9c4607e..da7d79e786 100644 --- a/frontend/src/business/components/common/router/router.js +++ b/frontend/src/business/components/common/router/router.js @@ -26,6 +26,9 @@ const router = new VueRouter({ }); router.beforeEach((to, from, next) => { + + redirectLoginPath(to.fullPath); + //解决localStorage清空,cookie没失效导致的卡死问题 if (!localStorage.getItem('Admin-Token')) { axios.get("/signout"); @@ -38,4 +41,17 @@ router.beforeEach((to, from, next) => { } }); +// 登入后跳转至原路径 +function redirectLoginPath(originPath) { + let redirectUrl = sessionStorage.getItem('redirectUrl'); + let loginSuccess = sessionStorage.getItem('loginSuccess'); + sessionStorage.setItem('redirectUrl', originPath); + if (redirectUrl && loginSuccess) { + sessionStorage.removeItem('loginSuccess'); + router.push(redirectUrl); + } + sessionStorage.removeItem('loginSuccess'); +} + + export default router diff --git a/frontend/src/login/Login.vue b/frontend/src/login/Login.vue index 035621590e..e82767a312 100644 --- a/frontend/src/login/Login.vue +++ b/frontend/src/login/Login.vue @@ -143,12 +143,14 @@ normalLogin() { this.result = this.$post("signin", this.form, response => { saveLocalStorage(response); + sessionStorage.setItem('loginSuccess', 'true'); this.getLanguage(response.data.language); }); }, ldapLogin() { this.result = this.$post("ldap/signin", this.form, response => { saveLocalStorage(response); + sessionStorage.setItem('loginSuccess', 'true'); this.getLanguage(response.data.language); }); },