登录接口变更
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
687985e66b
commit
e7e373ca37
|
@ -159,14 +159,6 @@ export function GetObjectStoreToken(params) {
|
||||||
method: 'get'
|
method: 'get'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export function loginSelectUserRole(params) {
|
|
||||||
return request({
|
|
||||||
url: `/user/loginSelectUserType`,
|
|
||||||
method: 'get',
|
|
||||||
params
|
|
||||||
})
|
|
||||||
}
|
|
||||||
// 置换token
|
// 置换token
|
||||||
export function TJUserLoginInfo(params) {
|
export function TJUserLoginInfo(params) {
|
||||||
return request({
|
return request({
|
||||||
|
@ -175,4 +167,20 @@ export function TJUserLoginInfo(params) {
|
||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 登陆获取角色
|
||||||
|
export function getUserLoginRoleList(data) {
|
||||||
|
return request({
|
||||||
|
url: `/User/getUserLoginRoleList`,
|
||||||
|
method: 'post',
|
||||||
|
data,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 登陆角色id获取token
|
||||||
|
export function loginSelectUserRole(params) {
|
||||||
|
return request({
|
||||||
|
url: `/User/loginSelectUserRole`,
|
||||||
|
method: 'get',
|
||||||
|
params,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -70,10 +70,7 @@ export default {
|
||||||
if (!this.form.userRoleId)
|
if (!this.form.userRoleId)
|
||||||
return this.$message.warning(this.$t('toggleRole:ruleMessage:select'))
|
return this.$message.warning(this.$t('toggleRole:ruleMessage:select'))
|
||||||
zzSessionStorage.removeItem('lastWorkbench')
|
zzSessionStorage.removeItem('lastWorkbench')
|
||||||
this.$emit('save', {
|
this.$emit('save', this.form.userRoleId)
|
||||||
UserId: this.form.userRoleId,
|
|
||||||
UserTypeId: this.roles.find(item => item.Id === this.form.userRoleId).UserTypeId
|
|
||||||
})
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(err)
|
console.log(err)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import { getToken, setToken, removeToken, setName, removeName } from '@/utils/auth'
|
import { getToken, setToken, removeToken, setName, removeName } from '@/utils/auth'
|
||||||
import { login, getUserMenuTree, getUserPermissions, loginSelectUserRole, TJUserLoginInfo } from '@/api/user'
|
import { login, loginOut, getUserMenuTree, getUserPermissions, loginSelectUserRole, getUserLoginRoleList, TJUserLoginInfo } from '@/api/user'
|
||||||
import { getUser } from '@/api/admin'
|
import { getUser } from '@/api/admin'
|
||||||
import { resetRouter } from '@/router'
|
import { resetRouter } from '@/router'
|
||||||
import md5 from 'js-md5'
|
import md5 from 'js-md5'
|
||||||
|
@ -87,20 +87,29 @@ const actions = {
|
||||||
},
|
},
|
||||||
// user login
|
// user login
|
||||||
login({ commit }, userInfo) {
|
login({ commit }, userInfo) {
|
||||||
const { username, password } = userInfo
|
const { username, password, UserId } = userInfo
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
login({ UserName: username.trim(), Password: md5(password) }).then(async response => {
|
let data = {
|
||||||
|
UserName: username.trim(), Password: md5(password)
|
||||||
|
}
|
||||||
|
if (UserId) {
|
||||||
|
data.UserId = UserId;
|
||||||
|
}
|
||||||
|
getUserLoginRoleList(data).then(async response => {
|
||||||
if (response.IsSuccess) {
|
if (response.IsSuccess) {
|
||||||
zzSessionStorage.removeItem('lastWorkbench')
|
zzSessionStorage.removeItem('lastWorkbench')
|
||||||
zzSessionStorage.setItem('my_username', username.trim())
|
zzSessionStorage.setItem('my_username', username.trim())
|
||||||
zzSessionStorage.setItem('my_password', md5(password))
|
zzSessionStorage.setItem('my_password', md5(password))
|
||||||
|
zzSessionStorage.setItem('my_EMail', response.Result.BasicInfo.EMail)
|
||||||
|
localStorage.setItem('CompanyInfo', JSON.stringify(response.Result.CompanyInfo))
|
||||||
const data = response.Result
|
const data = response.Result
|
||||||
if (data.BasicInfo.IsFirstAdd) {
|
commit('SET_ROLES', data.BasicInfo.AccountList)
|
||||||
|
if (data.BasicInfo.IsFirstAdd || data.BasicInfo.LoginState === 1) {
|
||||||
try {
|
try {
|
||||||
zzSessionStorage.setItem('userId', data.BasicInfo.Id)
|
zzSessionStorage.setItem('userId', data.BasicInfo.Id)
|
||||||
commit('SET_TOKEN', data.JWTStr)
|
commit('SET_TOKEN', data.JWTStr)
|
||||||
setToken(data.JWTStr)
|
setToken(data.JWTStr)
|
||||||
resolve(false)
|
resolve(response.Result)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e)
|
console.log(e)
|
||||||
}
|
}
|
||||||
|
@ -110,25 +119,24 @@ const actions = {
|
||||||
zzSessionStorage.setItem('IsReviewer', data.BasicInfo.IsReviewer)
|
zzSessionStorage.setItem('IsReviewer', data.BasicInfo.IsReviewer)
|
||||||
zzSessionStorage.setItem('userName', data.BasicInfo.UserName)
|
zzSessionStorage.setItem('userName', data.BasicInfo.UserName)
|
||||||
commit('SET_TOKEN', data.JWTStr)
|
commit('SET_TOKEN', data.JWTStr)
|
||||||
commit('SET_NAME', data.BasicInfo.RealName)
|
// commit('SET_NAME', data.BasicInfo.UserName)
|
||||||
zzSessionStorage.setItem('realName', data.BasicInfo.RealName)
|
|
||||||
zzSessionStorage.setItem('isTestUser', data.BasicInfo.IsTestUser)
|
zzSessionStorage.setItem('isTestUser', data.BasicInfo.IsTestUser)
|
||||||
commit('SET_ISTESTUSER', data.BasicInfo.IsTestUser)
|
commit('SET_ISTESTUSER', data.BasicInfo.IsTestUser)
|
||||||
commit('SET_USERNAME', data.BasicInfo.UserName)
|
commit('SET_USERNAME', data.BasicInfo.UserName)
|
||||||
commit('SET_USERID', data.BasicInfo.Id)
|
|
||||||
setToken(data.JWTStr)
|
setToken(data.JWTStr)
|
||||||
setName(data.BasicInfo.RealName)
|
// setName(data.BasicInfo.RealName)
|
||||||
const userString = decodeURIComponent(escape(window.atob(data.JWTStr.split('.')[1].replace(/-/g, '+').replace(/_/g, '/'))))
|
// const userString = decodeURIComponent(escape(window.atob(data.JWTStr.split('.')[1].replace(/-/g, '+').replace(/_/g, '/'))))
|
||||||
const user = JSON.parse(userString)
|
// const user = JSON.parse(userString)
|
||||||
zzSessionStorage.setItem('userTypeShortName', user.userTypeShortName)
|
// zzSessionStorage.setItem('userId', user.identityUserId)
|
||||||
zzSessionStorage.setItem('userId', user.id)
|
// commit('SET_IDENTITYUSERID', user.identityUserId)
|
||||||
zzSessionStorage.setItem('userTypeEnumInt', user.userTypeEnumInt)
|
// zzSessionStorage.setItem('identityUserId', user.identityUserId)
|
||||||
var permissions = await getUserPermissions()
|
// zzSessionStorage.setItem('userTypeEnumInt', user.userTypeEnumInt)
|
||||||
var menuTree = await getUserMenuTree()
|
// var permissions = await getUserPermissions()
|
||||||
commit('SET_TREE', menuTree.Result)
|
// var menuTree = await getUserMenuTree()
|
||||||
commit('SET_PERMISSIONS', permissions.Result)
|
// commit('SET_TREE', menuTree.Result)
|
||||||
zzSessionStorage.setItem('newTree', JSON.stringify(menuTree.Result))
|
// commit('SET_PERMISSIONS', permissions.Result)
|
||||||
zzSessionStorage.setItem('permissions', JSON.stringify(permissions.Result))
|
// zzSessionStorage.setItem('newTree', JSON.stringify(menuTree.Result))
|
||||||
|
// zzSessionStorage.setItem('permissions', JSON.stringify(permissions.Result))
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e)
|
console.log(e)
|
||||||
}
|
}
|
||||||
|
@ -161,16 +169,15 @@ const actions = {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
loginByRole({ commit }, userInfo) {
|
loginByRole({ commit }, userInfo) {
|
||||||
const { UserId, UserTypeId } = userInfo
|
const { userRoleId } = userInfo
|
||||||
let params = {
|
let params = {
|
||||||
UserId, UserTypeId
|
userRoleId
|
||||||
}
|
}
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
|
||||||
loginSelectUserRole(params).then(async response => {
|
loginSelectUserRole(params).then(async response => {
|
||||||
if (response.IsSuccess) {
|
if (response.IsSuccess) {
|
||||||
const data = response.Result.JWTStr
|
const data = response.Result.JWTStr
|
||||||
|
|
||||||
try {
|
try {
|
||||||
commit('SET_TOKEN', data)
|
commit('SET_TOKEN', data)
|
||||||
setToken(data)
|
setToken(data)
|
||||||
|
@ -247,12 +254,22 @@ const actions = {
|
||||||
commit('SET_NAME', zzSessionStorage.getItem('realName'))
|
commit('SET_NAME', zzSessionStorage.getItem('realName'))
|
||||||
},
|
},
|
||||||
// user logout
|
// user logout
|
||||||
logout({ commit, state }) {
|
async logout({ commit, state }) {
|
||||||
removeToken() // must remove token first
|
try {
|
||||||
resetRouter()
|
removeToken() // must remove token first
|
||||||
removeName()
|
await loginOut({
|
||||||
zzSessionStorage.clear()
|
UserRoleId: zzSessionStorage.getItem('userId'),
|
||||||
commit('RESET_STATE')
|
IdentityUserId: zzSessionStorage.getItem('identityUserId'),
|
||||||
|
})
|
||||||
|
resetRouter()
|
||||||
|
removeName()
|
||||||
|
let lang = zzSessionStorage.getItem('lang')
|
||||||
|
zzSessionStorage.clear()
|
||||||
|
zzSessionStorage.setItem('lang', lang)
|
||||||
|
commit('RESET_STATE')
|
||||||
|
} catch (e) {
|
||||||
|
console.log(e)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
setToken({ commit }, token) {
|
setToken({ commit }, token) {
|
||||||
commit('SET_TOKEN', token)
|
commit('SET_TOKEN', token)
|
||||||
|
|
|
@ -87,9 +87,9 @@ service.interceptors.response.use(
|
||||||
console.log(err)
|
console.log(err)
|
||||||
}
|
}
|
||||||
router.push(`/login`)
|
router.push(`/login`)
|
||||||
this.$i18n.locale = 'zh'
|
// this.$i18n.locale = 'zh'
|
||||||
this.setLanguage('zh')
|
// this.setLanguage('zh')
|
||||||
this.$updateDictionary()
|
// this.$updateDictionary()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
switch (status) {
|
switch (status) {
|
||||||
|
@ -119,9 +119,9 @@ service.interceptors.response.use(
|
||||||
}
|
}
|
||||||
store.dispatch('user/logout').then(() => {
|
store.dispatch('user/logout').then(() => {
|
||||||
router.push(`/login`)
|
router.push(`/login`)
|
||||||
this.$i18n.locale = 'zh'
|
// this.$i18n.locale = 'zh'
|
||||||
this.setLanguage('zh')
|
// this.setLanguage('zh')
|
||||||
this.$updateDictionary()
|
// this.$updateDictionary()
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
Message({
|
Message({
|
||||||
|
|
|
@ -125,7 +125,7 @@
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<toggleRole v-if="toggleRoleVisible" :visible.sync="toggleRoleVisible" :loading="toggleRoleLoading"
|
<toggleRole v-if="toggleRoleVisible" :visible.sync="toggleRoleVisible" :loading="toggleRoleLoading"
|
||||||
@save="loginByRole" />
|
@save="loginByRole" @cancel="cancel" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -237,62 +237,11 @@ export default {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations({ setLanguage: 'lang/setLanguage' }),
|
...mapMutations({ setLanguage: 'lang/setLanguage' }),
|
||||||
loginByRole(row) {
|
cancel() {
|
||||||
let { UserId, UserTypeId } = row
|
this.showCode = true
|
||||||
if (this.$store.state.user.userId === UserId) {
|
this.loading = false
|
||||||
this.toggleRoleVisible = false
|
this.toggleRoleLoading = false
|
||||||
this.toggleRoleLoading = false
|
// this.toggleRoleVisible = false
|
||||||
return false
|
|
||||||
}
|
|
||||||
this.toggleRoleLoading = true
|
|
||||||
this.$store
|
|
||||||
.dispatch('user/loginByRole', { UserId, UserTypeId })
|
|
||||||
.then((res) => {
|
|
||||||
if (res) {
|
|
||||||
this.$store
|
|
||||||
.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
|
|
||||||
if (this.loginType === 'DevOps') {
|
|
||||||
this.$router.replace({ path: res[0].path })
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (this.hasPermi(['role:radmin'])) {
|
|
||||||
this.$router.replace({ path: res[0].path })
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (
|
|
||||||
this.hasPermi(['role:pm', 'role:oa', 'role:admin', 'role:dev'])
|
|
||||||
) {
|
|
||||||
history.replaceState(null, null, '/trials/trials-inspection')
|
|
||||||
history.go(0)
|
|
||||||
} else {
|
|
||||||
history.replaceState(null, null, '/trials/trials-list')
|
|
||||||
history.go(0)
|
|
||||||
}
|
|
||||||
this.toggleRoleVisible = false
|
|
||||||
this.toggleRoleLoading = false
|
|
||||||
this.$EventBus.$emit('reload')
|
|
||||||
} else {
|
|
||||||
// 此账户暂未配置菜单权限,请联系管理员处理后再登录。
|
|
||||||
this.toggleRoleLoading = false
|
|
||||||
this.$message.warning(this.$t('login:message:login2'))
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch((err) => {
|
|
||||||
this.toggleRoleLoading = false
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
this.toggleRoleLoading = false
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(() => {
|
|
||||||
this.toggleRoleLoading = false
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
// 置换token
|
// 置换token
|
||||||
async TJUserLoginInfo(Token) {
|
async TJUserLoginInfo(Token) {
|
||||||
|
@ -385,7 +334,10 @@ export default {
|
||||||
this.$store
|
this.$store
|
||||||
.dispatch('user/login', this.loginForm)
|
.dispatch('user/login', this.loginForm)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (!res) {
|
if (res.BasicInfo.LoginState === 2) {
|
||||||
|
this.$message.warning(this.$t('login:message:login4'))
|
||||||
|
}
|
||||||
|
if (res.BasicInfo.IsFirstAdd) {
|
||||||
// 当前用户为首次登录,请先修改密码之后再次登录
|
// 当前用户为首次登录,请先修改密码之后再次登录
|
||||||
this.$message.success(this.$t('login:message:login1'))
|
this.$message.success(this.$t('login:message:login1'))
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
@ -394,39 +346,108 @@ export default {
|
||||||
})
|
})
|
||||||
}, 500)
|
}, 500)
|
||||||
return
|
return
|
||||||
|
} else if (res.BasicInfo.NeedChangePassWord) {
|
||||||
|
// 请先修改密码后再登录!
|
||||||
|
this.$alert(
|
||||||
|
this.$t('login:message:login3'),
|
||||||
|
this.$t('common:title:warning'),
|
||||||
|
{
|
||||||
|
callback: (action) => {
|
||||||
|
this.$router.push({
|
||||||
|
path: `/recompose?userName=${this.loginForm.username}`,
|
||||||
|
})
|
||||||
|
return
|
||||||
|
},
|
||||||
|
}
|
||||||
|
)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
this.$store.dispatch('permission/generateRoutes').then((res) => {
|
zzSessionStorage.removeItem('userId')
|
||||||
this.loading = false
|
zzSessionStorage.removeItem('identityUserId')
|
||||||
if (res && res.length > 0) {
|
this.changeRoleLogin()
|
||||||
this.$store.dispatch('global/getNoticeList')
|
|
||||||
this.$router.addRoutes(res)
|
|
||||||
if (this.loginType === 'DevOps') {
|
|
||||||
this.$router.replace({ path: res[0].path })
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (this.hasPermi(['role:radmin'])) {
|
|
||||||
this.$router.replace({ path: res[0].path })
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (
|
|
||||||
this.hasPermi(['role:pm', 'role:oa', 'role:admin', 'role:dev'])
|
|
||||||
) {
|
|
||||||
this.$router.replace({ path: '/trials/trials-inspection' })
|
|
||||||
} else if (this.hasPermi(['role:oa'])) {
|
|
||||||
this.$router.replace({ path: '/system' })
|
|
||||||
} else {
|
|
||||||
this.$router.replace({ path: '/trials' })
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// 此账户暂未配置菜单权限,请联系管理员处理后再登录。
|
|
||||||
this.$message.warning(this.$t('login:message:login2'))
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
changeRoleLogin() {
|
||||||
|
if (
|
||||||
|
Array.isArray(this.$store.state.user.roles) &&
|
||||||
|
this.$store.state.user.roles.length === 1
|
||||||
|
) {
|
||||||
|
this.loginByRole(this.$store.state.user.roles[0].Id)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
Array.isArray(this.$store.state.user.roles) &&
|
||||||
|
this.$store.state.user.roles.filter((item) => item.IsUserRoleDisabled)
|
||||||
|
.length ===
|
||||||
|
this.$store.state.user.roles.length - 1
|
||||||
|
) {
|
||||||
|
let role = this.$store.state.user.roles.find(
|
||||||
|
(item) => !item.IsUserRoleDisabled
|
||||||
|
)
|
||||||
|
this.loginByRole(role.Id)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
return (this.toggleRoleVisible = true)
|
||||||
|
},
|
||||||
|
loginByRole(userRoleId) {
|
||||||
|
this.toggleRoleLoading = true
|
||||||
|
this.$store
|
||||||
|
.dispatch('user/loginByRole', { userRoleId })
|
||||||
|
.then((res) => {
|
||||||
|
this.toggleRoleLoading = false
|
||||||
|
if (res) {
|
||||||
|
this.$store
|
||||||
|
.dispatch('permission/generateRoutes')
|
||||||
|
.then((res) => {
|
||||||
|
this.loading = false
|
||||||
|
if (res && res.length > 0) {
|
||||||
|
this.$store.dispatch('global/getNoticeList')
|
||||||
|
this.$router.addRoutes(res)
|
||||||
|
// if (this.LoginState === 2) {
|
||||||
|
// this.$message.warning(this.$t('login:message:login4'))
|
||||||
|
// }
|
||||||
|
if (this.loginType === 'DevOps') {
|
||||||
|
this.$router.replace({ path: res[0].path })
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.hasPermi(['role:radmin'])) {
|
||||||
|
this.$router.replace({ path: res[0].path })
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
this.hasPermi([
|
||||||
|
'role:air',
|
||||||
|
'role:rpm',
|
||||||
|
'role:rcrc',
|
||||||
|
'role:rir',
|
||||||
|
])
|
||||||
|
) {
|
||||||
|
this.$router.replace({ path: '/trials/trials-list' })
|
||||||
|
} else {
|
||||||
|
this.$router.replace({ path: '/trials' })
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.toggleRoleLoading = false
|
||||||
|
// 此账户暂未配置菜单权限,请联系管理员处理后再登录。
|
||||||
|
this.$message.warning(this.$t('login:message:login2'))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
this.toggleRoleLoading = false
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.toggleRoleLoading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
this.showCode = true
|
||||||
|
this.loading = false
|
||||||
|
this.toggleRoleLoading = false
|
||||||
|
})
|
||||||
|
},
|
||||||
onSuccess() {
|
onSuccess() {
|
||||||
this.isShow = false
|
this.isShow = false
|
||||||
this.loginIn()
|
this.loginIn()
|
||||||
|
|
Loading…
Reference in New Issue