登录增加选择公司
This commit is contained in:
parent
acf42d6e9e
commit
2a0c34f7ad
|
|
@ -1,4 +1,4 @@
|
||||||
|
|
||||||
VUE_APP_API_BASE_URL=http://192.168.31.166:46000
|
VUE_APP_API_BASE_URL=http://zxx4.f3322.net:46000
|
||||||
VUE_APP_USER_MODEL=AdminUser
|
VUE_APP_USER_MODEL2=AdminUser
|
||||||
VUE_APP_USER_MODEL2=BaseAdmin
|
VUE_APP_USER_MODEL=BaseAdmin
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
</a-input>
|
</a-input>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item v-if="!isMiddleAdmin()">
|
<a-form-item v-if="false">
|
||||||
<a-input-search placeholder="选择公司" enter-button @search="onCompanySearch" />
|
<a-input-search placeholder="选择公司" enter-button @search="onCompanySearch" />
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
|
|
@ -74,12 +74,12 @@
|
||||||
</div>
|
</div>
|
||||||
</a-form>
|
</a-form>
|
||||||
|
|
||||||
<vxe-modal v-model="companyShow" width="600" show-footer>
|
<vxe-modal v-model="companyShow" @confirm="confirmEvent" width="600" show-footer>
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>选择公司</span>
|
<span>选择公司</span>
|
||||||
</template>
|
</template>
|
||||||
<template #default>
|
<template #default>
|
||||||
<vxe-table show-overflow auto-resize height="300" :rowConfig="{ isCurrent: true, isHover: true }"
|
<vxe-table ref="xTable" show-overflow auto-resize height="300" :rowConfig="{ isCurrent: true, isHover: true }"
|
||||||
:data="companyData">
|
:data="companyData">
|
||||||
<vxe-column type="seq" width="60"></vxe-column>
|
<vxe-column type="seq" width="60"></vxe-column>
|
||||||
<vxe-column field="title" title="公司名"></vxe-column>
|
<vxe-column field="title" title="公司名"></vxe-column>
|
||||||
|
|
@ -100,7 +100,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import CommonLayout from '@/layouts/CommonLayout'
|
import CommonLayout from '@/layouts/CommonLayout'
|
||||||
import { login, getUserInfo, getRoutesConfig, getPermission, getSettings, getCompany, getProject, getProject2 } from '@/services/base/user'
|
import { login, switchCompany, getUserInfo, getRoutesConfig, getPermission, getSettings, getCompany, getProject } from '@/services/base/user'
|
||||||
import { setAuthorization, setCompany } from '@/utils/request'
|
import { setAuthorization, setCompany } from '@/utils/request'
|
||||||
import { loadRoutes } from '@/utils/routerUtil'
|
import { loadRoutes } from '@/utils/routerUtil'
|
||||||
import { mapMutations } from 'vuex'
|
import { mapMutations } from 'vuex'
|
||||||
|
|
@ -108,9 +108,6 @@ import Cookie from 'js-cookie'
|
||||||
import { USER_MODEL } from '@/services/base/api.js';
|
import { USER_MODEL } from '@/services/base/api.js';
|
||||||
|
|
||||||
|
|
||||||
var axios = require('axios');
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
@ -129,7 +126,7 @@ export default {
|
||||||
companyShow: false,
|
companyShow: false,
|
||||||
companyData: [],
|
companyData: [],
|
||||||
company: Cookie.get('company'),
|
company: Cookie.get('company'),
|
||||||
|
loginResult: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
|
@ -141,9 +138,7 @@ export default {
|
||||||
const project = result.data.data
|
const project = result.data.data
|
||||||
this.setProject(project) // 将项目信息存入vuex
|
this.setProject(project) // 将项目信息存入vuex
|
||||||
})
|
})
|
||||||
getProject2().then(result => { // 获取项目信息
|
|
||||||
console.log(result)
|
|
||||||
})
|
|
||||||
// 设置界面设置 的默认值
|
// 设置界面设置 的默认值
|
||||||
Cookie.set(process.env.VUE_APP_LAYOUT_KEY, 'side')
|
Cookie.set(process.env.VUE_APP_LAYOUT_KEY, 'side')
|
||||||
Cookie.set(process.env.VUE_APP_THEME_MODE_KEY, 'dark')
|
Cookie.set(process.env.VUE_APP_THEME_MODE_KEY, 'dark')
|
||||||
|
|
@ -163,42 +158,47 @@ export default {
|
||||||
}, 1000)
|
}, 1000)
|
||||||
}) // loadsh的pick方法
|
}) // loadsh的pick方法
|
||||||
|
|
||||||
setTimeout(() => {
|
|
||||||
this.testLogin();
|
|
||||||
}, 2000);
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapMutations('account', ['setUid', 'setUser', 'setPermissions', 'setRoutesConfig', 'setSettings', 'setCompany', 'setProject']),
|
...mapMutations('account', ['setUid', 'setUser', 'setPermissions', 'setRoutesConfig', 'setSettings', 'setCompany', 'setProject']),
|
||||||
|
|
||||||
|
|
||||||
testLogin() {
|
|
||||||
|
|
||||||
var data = JSON.stringify({
|
|
||||||
"mobile": "18607684660",
|
|
||||||
"password": "888888"
|
|
||||||
});
|
|
||||||
var config = {
|
|
||||||
method: 'post',
|
|
||||||
url: 'http://192.168.31.166:46000/BaseAdmin/v1/login',
|
|
||||||
headers: {
|
|
||||||
//'Beid': '1',
|
|
||||||
'Authorization': '',
|
|
||||||
'Content-Type': 'application/json',
|
|
||||||
'Accept': '*/*'
|
|
||||||
},
|
|
||||||
data: data
|
|
||||||
};
|
|
||||||
axios(config)
|
|
||||||
.then(function (response) {
|
|
||||||
console.log(JSON.stringify(response.data));
|
|
||||||
})
|
|
||||||
.catch(function (error) {
|
|
||||||
console.log(error);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
onCompanySearch() {
|
onCompanySearch() {
|
||||||
this.companyShow = true;
|
this.companyShow = true;
|
||||||
|
},
|
||||||
|
confirmEvent() {
|
||||||
|
let row = this.$refs.xTable.getCurrentRecord();
|
||||||
|
|
||||||
|
//没有选择公司,或者选择了第一个公司,直接登录
|
||||||
|
if (!row || row.id == this.companyData[0].id) {
|
||||||
|
this.afterLoginSuccess({
|
||||||
|
token: this.loginResult.data.access_token,
|
||||||
|
access_expire: this.loginResult.data.access_expire,
|
||||||
|
uid: this.loginResult.data.uid,
|
||||||
|
loginResMsg: this.loginResult.msg
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//选择了其他公司
|
||||||
|
else {
|
||||||
|
|
||||||
|
setAuthorization({
|
||||||
|
token: this.loginResult.data.access_token,
|
||||||
|
expireAt: new Date(this.loginResult.data.access_expire * 1000)
|
||||||
|
})
|
||||||
|
|
||||||
|
switchCompany(row.id).then(result => {
|
||||||
|
result = result.data;
|
||||||
|
this.afterLoginSuccess({
|
||||||
|
token: result.data.access_token,
|
||||||
|
access_expire: result.data.access_expire,
|
||||||
|
uid: result.data.uid,
|
||||||
|
loginResMsg: this.loginResult.msg
|
||||||
|
});
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
},
|
},
|
||||||
isMiddleAdmin() {
|
isMiddleAdmin() {
|
||||||
console.log(USER_MODEL)
|
console.log(USER_MODEL)
|
||||||
|
|
@ -220,55 +220,19 @@ export default {
|
||||||
this.logging = false
|
this.logging = false
|
||||||
const loginRes = res.data
|
const loginRes = res.data
|
||||||
if (loginRes.code == 200) {
|
if (loginRes.code == 200) {
|
||||||
const uid = loginRes.data.uid
|
if (!this.isMiddleAdmin()) {
|
||||||
if(!this.isMiddleAdmin()){
|
|
||||||
this.companyShow = true;
|
this.companyShow = true;
|
||||||
|
this.companyData = loginRes.data.company_switch;
|
||||||
|
this.loginResult = loginRes;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.companyData = res.data.company_switch;
|
|
||||||
|
|
||||||
setAuthorization({ token: loginRes.data.access_token, expireAt: new Date(loginRes.data.access_expire * 1000) }) // 设置token
|
this.afterLoginSuccess({
|
||||||
this.setUid(uid) // 设置用户id
|
token: loginRes.data.access_token,
|
||||||
|
access_expire: loginRes.data.access_expire,
|
||||||
|
uid: loginRes.data.uid,
|
||||||
getUserInfo().then(result => { // 获取用户信息
|
loginResMsg: loginRes.msg
|
||||||
if (result.data.data != null) {
|
});
|
||||||
const UserInfo = result.data.data.user_info
|
|
||||||
this.setUser(UserInfo)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
getPermission().then(result => { // 获取权限
|
|
||||||
if (result.data.data != null) {
|
|
||||||
const Permission = result.data.data.setPermissions
|
|
||||||
this.setPermissions(Permission)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
getRoutesConfig().then(result => { // 获取路由配置
|
|
||||||
if (result.data.data != null) {
|
|
||||||
const routesConfig = result.data.data
|
|
||||||
this.setRoutesConfig(routesConfig)
|
|
||||||
loadRoutes([routesConfig])
|
|
||||||
this.$router.push('/dashboard/workplace')
|
|
||||||
this.$message.success(loginRes.msg, 3)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
getSettings().then(result => { // 获取系统配置
|
|
||||||
if (result.data.data != null) {
|
|
||||||
const settings = result.data.data
|
|
||||||
this.setSettings(settings)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
getCompany().then(result => { // 获取公司信息
|
|
||||||
if (result.data.data != null) {
|
|
||||||
const company = result.data.data
|
|
||||||
this.setCompany(company) // 将公司信息存入vuex
|
|
||||||
setCompany(company.company_info) // 将公司信息存入cookies
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -276,6 +240,54 @@ export default {
|
||||||
this.error = loginRes.message
|
this.error = loginRes.message
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
afterLoginSuccess({ token, access_expire, uid, loginResMsg }) {
|
||||||
|
|
||||||
|
|
||||||
|
setAuthorization({ token: token, expireAt: new Date(access_expire * 1000) }) // 设置token
|
||||||
|
|
||||||
|
this.setUid(uid) // 设置用户id
|
||||||
|
|
||||||
|
|
||||||
|
getUserInfo().then(result => { // 获取用户信息
|
||||||
|
if (result.data.data != null) {
|
||||||
|
const UserInfo = result.data.data.user_info
|
||||||
|
this.setUser(UserInfo)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
getPermission().then(result => { // 获取权限
|
||||||
|
if (result.data.data != null) {
|
||||||
|
const Permission = result.data.data.setPermissions
|
||||||
|
this.setPermissions(Permission)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
getRoutesConfig().then(result => { // 获取路由配置
|
||||||
|
if (result.data.data != null) {
|
||||||
|
const routesConfig = result.data.data
|
||||||
|
this.setRoutesConfig(routesConfig)
|
||||||
|
loadRoutes([routesConfig])
|
||||||
|
this.$router.push('/dashboard/workplace')
|
||||||
|
this.$message.success(loginResMsg, 3)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
getSettings().then(result => { // 获取系统配置
|
||||||
|
if (result.data.data != null) {
|
||||||
|
const settings = result.data.data
|
||||||
|
this.setSettings(settings)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
getCompany().then(result => { // 获取公司信息
|
||||||
|
if (result.data.data != null) {
|
||||||
|
const company = result.data.data
|
||||||
|
this.setCompany(company) // 将公司信息存入vuex
|
||||||
|
setCompany(company.company_info) // 将公司信息存入cookies
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ module.exports = {
|
||||||
method:METHOD.POST
|
method:METHOD.POST
|
||||||
}, // 获取项目信息
|
}, // 获取项目信息
|
||||||
LOGIN: {url:`${BASE_URL}/${USER_MODEL}/v1/login`, method:METHOD.POST}, // 登录
|
LOGIN: {url:`${BASE_URL}/${USER_MODEL}/v1/login`, method:METHOD.POST}, // 登录
|
||||||
|
SWITCHCOMPANY: {url:`${BASE_URL}/${USER_MODEL}/v1/switch/company`, method:METHOD.POST}, // 登录
|
||||||
ROUTERS: {url:`${BASE_URL}/${USER_MODEL}/v1/routers`, method:METHOD.POST}, // 获取路由配置
|
ROUTERS: {url:`${BASE_URL}/${USER_MODEL}/v1/routers`, method:METHOD.POST}, // 获取路由配置
|
||||||
USERINFO: {url:`${BASE_URL}/${USER_MODEL}/v1/userinfo`, method:METHOD.POST}, // 获取用户信息
|
USERINFO: {url:`${BASE_URL}/${USER_MODEL}/v1/userinfo`, method:METHOD.POST}, // 获取用户信息
|
||||||
COMPANY: {url:`${BASE_URL}/${USER_MODEL}/v1/company`, method:METHOD.POST}, // 获取公司信息
|
COMPANY: {url:`${BASE_URL}/${USER_MODEL}/v1/company`, method:METHOD.POST}, // 获取公司信息
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import {LOGIN, ROUTERS, USERINFO,PERMISSION,SETTINGS,PROJECT,COMPANY} from '@/services/base/api'
|
import { LOGIN, SWITCHCOMPANY , ROUTERS, USERINFO, PERMISSION, SETTINGS, PROJECT, COMPANY } from '@/services/base/api'
|
||||||
import {request, removeAuthorization} from '@/utils/request'
|
import { request, removeAuthorization } from '@/utils/request'
|
||||||
/**
|
/**
|
||||||
* 登录服务
|
* 登录服务
|
||||||
* @param name 账户名
|
* @param name 账户名
|
||||||
|
|
@ -7,10 +7,15 @@ import {request, removeAuthorization} from '@/utils/request'
|
||||||
* @returns {Promise<AxiosResponse<T>>}
|
* @returns {Promise<AxiosResponse<T>>}
|
||||||
*/
|
*/
|
||||||
export async function login(name, password) {
|
export async function login(name, password) {
|
||||||
return request(LOGIN.url, LOGIN.method, {
|
|
||||||
|
let params = {
|
||||||
mobile: name,
|
mobile: name,
|
||||||
password: password
|
password: password
|
||||||
})
|
}
|
||||||
|
if (process.env.VUE_APP_USER_MODEL != "AdminUser") {
|
||||||
|
params.beid = parseInt(process.env.VUE_APP_BEID)
|
||||||
|
}
|
||||||
|
return request(LOGIN.url, LOGIN.method, params)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -24,6 +29,13 @@ export async function getUserInfo() { // 获取用户信息
|
||||||
uid: userId
|
uid: userId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function switchCompany(company_id) { // 获取用户信息
|
||||||
|
return request(SWITCHCOMPANY.url, SWITCHCOMPANY.method, {
|
||||||
|
company_id: company_id
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取路由配置
|
* 获取路由配置
|
||||||
* @param uid
|
* @param uid
|
||||||
|
|
@ -32,7 +44,7 @@ export async function getUserInfo() { // 获取用户信息
|
||||||
export async function getRoutesConfig() { // 获取路由配置
|
export async function getRoutesConfig() { // 获取路由配置
|
||||||
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
||||||
return request(ROUTERS.url, ROUTERS.method, {
|
return request(ROUTERS.url, ROUTERS.method, {
|
||||||
uid:userId
|
uid: userId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -44,7 +56,7 @@ export async function getRoutesConfig() { // 获取路由配置
|
||||||
export async function getPermission() { // 获取权限配置
|
export async function getPermission() { // 获取权限配置
|
||||||
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
||||||
return request(PERMISSION.url, PERMISSION.method, {
|
return request(PERMISSION.url, PERMISSION.method, {
|
||||||
uid:userId
|
uid: userId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -56,7 +68,7 @@ export async function getPermission() { // 获取权限配置
|
||||||
export async function getSettings() { // 获取用户设置
|
export async function getSettings() { // 获取用户设置
|
||||||
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
||||||
return request(SETTINGS.url, SETTINGS.method, {
|
return request(SETTINGS.url, SETTINGS.method, {
|
||||||
uid:userId
|
uid: userId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -67,13 +79,7 @@ export async function getSettings() { // 获取用户设置
|
||||||
*/
|
*/
|
||||||
export async function getProject() { // 获取项目信息
|
export async function getProject() { // 获取项目信息
|
||||||
return request(PROJECT.url, PROJECT.method, {
|
return request(PROJECT.url, PROJECT.method, {
|
||||||
//beid:parseInt(process.env.VUE_APP_BEID)
|
beid: parseInt(process.env.VUE_APP_BEID)
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function getProject2() { // 获取项目信息
|
|
||||||
return request(PROJECT.url, PROJECT.method, {
|
|
||||||
//beid:parseInt(process.env.VUE_APP_BEID)
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -86,7 +92,7 @@ export async function getProject2() { // 获取项目信息
|
||||||
export async function getCompany() { // 获取公司信息
|
export async function getCompany() { // 获取公司信息
|
||||||
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
const userId = parseInt(localStorage.getItem(process.env.VUE_APP_UID_KEY)) // 获取用户id并转换为整数
|
||||||
return request(COMPANY.url, COMPANY.method, {
|
return request(COMPANY.url, COMPANY.method, {
|
||||||
uid: userId
|
uid: userId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -111,6 +117,6 @@ export default {
|
||||||
getUserInfo,
|
getUserInfo,
|
||||||
getSettings,
|
getSettings,
|
||||||
getProject,
|
getProject,
|
||||||
getProject2,
|
|
||||||
getCompany,
|
getCompany,
|
||||||
|
switchCompany
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -41,13 +41,13 @@ async function request(url, method, params, config) { // 请求方法
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(USER_MODEL != "AdminUser"){
|
//if(USER_MODEL != "AdminUser"){
|
||||||
axios.defaults.headers.common[beidHeaderName] = parseInt(APP_BEID)
|
// axios.defaults.headers.common[beidHeaderName] = parseInt(APP_BEID)
|
||||||
}else{
|
//}else{
|
||||||
if(beidHeaderName in axios.defaults.headers.common){
|
// if(beidHeaderName in axios.defaults.headers.common){
|
||||||
delete axios.defaults.headers.common[beidHeaderName];
|
// delete axios.defaults.headers.common[beidHeaderName];
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
||||||
|
|
||||||
if (Cookie.get(xsrfHeaderName)) { // 检查cookie中是否存在认证信息
|
if (Cookie.get(xsrfHeaderName)) { // 检查cookie中是否存在认证信息
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue