diff --git a/src/permission.js b/src/permission.js
index 185ace75..a5bb41b2 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -1,4 +1,5 @@
import router from './router'
+import { resetRouter } from '@/router'
import store from './store'
// import { Message } from 'element-ui'
import NProgress from 'nprogress'
@@ -80,6 +81,7 @@ router.beforeEach(async (to, from, next) => {
await store.dispatch('user/getInfo')
await store.dispatch('user/getUserInfo')
const accessRoutes = await store.dispatch('permission/generateRoutes')
+ resetRouter()
router.addRoutes(accessRoutes)
next({ ...to, replace: true })
} catch (error) {
diff --git a/src/store/getters.js b/src/store/getters.js
index 6ab90e66..eb877042 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -3,6 +3,7 @@ const getters = {
device: state => state.app.device,
token: state => state.user.token,
name: state => state.user.name,
+ userTypeShortName: state => state.user.userTypeShortName,
permissions: state => state.user.permissions,
tree: state => state.user.tree,
userName: state => state.user.userName,
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 5d725e21..dae8780b 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -8,6 +8,7 @@ const getDefaultState = () => {
return {
token: getToken(),
name: '',
+ userTypeShortName: "",
userName: '',
userId: '',
identityUserId: '',
@@ -40,6 +41,9 @@ const mutations = {
SET_NAME: (state, name) => {
state.name = name
},
+ SET_USERTYPESHORTNAME: (state, userTypeShortName) => {
+ state.userTypeShortName = userTypeShortName
+ },
SET_USERNAME: (state, name) => {
state.userName = name
},
@@ -176,6 +180,7 @@ const actions = {
const userString = decodeURIComponent(escape(window.atob(data.split('.')[1].replace(/-/g, '+').replace(/_/g, '/'))))
const user = JSON.parse(userString)
zzSessionStorage.setItem('userTypeShortName', user.userTypeShortName)
+ commit('SET_USERTYPESHORTNAME', user.userTypeShortName)
commit('SET_NAME', user.fullName)
setName(user.fullName)
var permissions = await getUserPermissions()
@@ -222,6 +227,7 @@ const actions = {
commit('SET_ISTESTUSER', zzSessionStorage.getItem('isTestUser'))
const user = JSON.parse(userString)
commit('SET_NAME', zzSessionStorage.getItem('Name'))
+ commit('SET_USERTYPESHORTNAME', user.userTypeShortName)
commit('SET_IDENTITYUSERID', user.identityUserId)
commit('SET_USERID', user.userRoleId)
commit('SET_USERNAME', zzSessionStorage.getItem('userName'))
@@ -255,7 +261,8 @@ const actions = {
try {
removeToken() // must remove token first
await loginOut({
- Userd: zzSessionStorage.getItem('userId')
+ UserRoleId: zzSessionStorage.getItem('userId'),
+ IdentityUserId: zzSessionStorage.getItem('identityUserId'),
})
resetRouter()
removeName()
diff --git a/src/views/email-recompose/index.vue b/src/views/email-recompose/index.vue
index ba74eceb..21c1ce7b 100644
--- a/src/views/email-recompose/index.vue
+++ b/src/views/email-recompose/index.vue
@@ -29,9 +29,9 @@
-
+
diff --git a/src/views/trials/trials-layout/components/trialsNavbar.vue b/src/views/trials/trials-layout/components/trialsNavbar.vue
index e8404a87..44b1e9b1 100644
--- a/src/views/trials/trials-layout/components/trialsNavbar.vue
+++ b/src/views/trials/trials-layout/components/trialsNavbar.vue
@@ -116,6 +116,7 @@
import { mapGetters, mapMutations } from 'vuex'
import TopLang from './topLang'
import NoticeMarquee from './noticeMarquee'
+import { resetRouter } from '@/router'
import toggleRole from '@/components/toggleRole'
export default {
components: { TopLang, NoticeMarquee, toggleRole },
@@ -123,7 +124,7 @@ export default {
return {
activeIndex: '2',
isReviewer: false,
- userTypeShortName: zzSessionStorage.getItem('userTypeShortName'),
+ // userTypeShortName: zzSessionStorage.getItem('userTypeShortName'),
notice: '',
VUE_APP_OSS_CONFIG_REGION: process.env.VUE_APP_OSS_CONFIG_REGION,
NODE_ENV: process.env.NODE_ENV,
@@ -139,6 +140,7 @@ export default {
'device',
'TotalNeedSignSystemDocCount',
'language',
+ 'userTypeShortName',
]),
roles() {
return this.$store.state.user.roles
@@ -244,6 +246,7 @@ export default {
.dispatch('permission/generateRoutes')
.then(async (res) => {
if (res && res.length > 0) {
+ resetRouter()
await this.$store.dispatch('global/getNoticeList')
this.$router.addRoutes(res)
this.toggleRoleLoading = false
@@ -263,11 +266,19 @@ export default {
'role:rir',
])
) {
- this.$router.replace({ path: '/trials/trials-list' })
+ history.replaceState(null, null, '/trials/trials-list')
+ history.go(0)
+ // this.$router.replace({ path: '/trials/trials-list' })
} else {
- this.$router.replace({ path: '/trials' })
+ history.replaceState(null, null, '/trials')
+ history.go(0)
+ // this.$router.replace({ path: '/trials/trials-workbench' })
}
- window.location.reload()
+ this.toggleRoleVisible = false
+ this.toggleRoleLoading = false
+ this.$nextTick(() => {
+ window.location.reload()
+ })
} else {
// 此账户暂未配置菜单权限,请联系管理员处理后再登录。
this.toggleRoleLoading = false
diff --git a/src/views/trials/trials-panel/visit/crc-upload/index.vue b/src/views/trials/trials-panel/visit/crc-upload/index.vue
index b04baaec..a0ed9df3 100644
--- a/src/views/trials/trials-panel/visit/crc-upload/index.vue
+++ b/src/views/trials/trials-panel/visit/crc-upload/index.vue
@@ -742,10 +742,10 @@
-
+