diff --git a/src/api/login.js b/src/api/login.js
index d2ef9a5f..695083cc 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -1,38 +1,93 @@
import axios from '@/utils/request'
+import { getToken, setToken, removeToken,getCacheUserInfo,setCacheUserInfo,removeCacheUserInfo} from '@/utils/auth'
+
import config from '@/common/config'
let base=config.getOauth2LoginBasePath();
//let base='';
-export function loginByUsername(username, password,deptid) {
+export function doLoginByUserloginid(userloginid, password,grantType,authType,deptid) {
+ removeToken();
const data = {
- userloginid: username,
+ userloginid: userloginid,
password: password,
- authType:'password_display_userid',
+ authType:authType,
deptid:deptid
}
return axios({
- url: base+'/login/token?grantType=password',
+ url: base+'/login/token?grantType='+grantType,
method: 'post',
data
})
}
-export function loginByPhoneno(phoneno, smsCode,isAdmin,deptid) {
+export function checkUserid(userid ) {
+ removeToken();
const data = {
- userloginid: phoneno,
- password: smsCode,
- authType:'sms',
- isAdmin:true,
- deptid:deptid
+ userid: userid
+ }
+ return axios({
+ url: base+'/user/check/userid',
+ method: 'post',
+ data
+ })
+}
+export function checkDisplayUserid(displayUserid ) {
+ removeToken();
+ const data = {
+ displayUserid: displayUserid
+ }
+ return axios({
+ url: base+'/user/check/displayUserid',
+ method: 'post',
+ data
+ })
+}
+
+export function checkPhoneno(phoneno ) {
+ removeToken();
+ const data = {
+ phoneno: phoneno
+ }
+ return axios({
+ url: base+'/user/check/phoneno',
+ method: 'post',
+ data
+ })
+}
+export function doRegister( userInfo ) {
+ removeToken();
+ const data = {
+ username:userInfo.username,
+ userid:userInfo.displayUserid,
+ displayUserid:userInfo.displayUserid,
+ password:userInfo.password,
+ phoneno:userInfo.phoneno,
+ smsCode:userInfo.smsCode,
+ deptid:userInfo.deptid
}
return axios({
- url: base+'/login/token?grantType=password',
+ url: base+'/user/register',
+ method: 'post',
+ data
+ })
+}
+
+export function resetPasswordByPhoneno( userInfo ) {
+ removeToken();
+ const data = {
+ newPassword:userInfo.newPassword,
+ phoneno:userInfo.phoneno,
+ smsCode:userInfo.smsCode,
+ }
+ return axios({
+ url: base+'/user/password/reset?type=sms',
method: 'post',
data
})
}
export function logout() {
+ removeToken();
/**
return axios({
url: base+'/logout',
@@ -54,21 +109,3 @@ export function getUserInfo(params) {
data
})
}
-export function getUserDepts(userid) {
- if( !userid ){
- params={
- userid:userid
- }
- }else{
- return
- }
- const data= { params: params };
- return axios({
- url: base+'/user/depts',
- method: 'get',
- data
- })
-}
-export function switchDept(params) {
- return axios.post( base+'/login/switch', params )
- }
diff --git a/src/mock/index.js b/src/mock/index.js
index 78ebb69e..a731b515 100644
--- a/src/mock/index.js
+++ b/src/mock/index.js
@@ -9,7 +9,7 @@ import transactionAPI from './transaction'
// })
// 登录相关
-//Mock.mock(/\/login\/login/, 'post', loginAPI.loginByUsername)
+//Mock.mock(/\/login\/login/, 'post', loginAPI.loginByUserloginid)
//Mock.mock(/\/login\/logout/, 'post', loginAPI.logout)
//Mock.mock(/\/user\/info\.*/, 'get', loginAPI.getUserInfo)
diff --git a/src/mock/login.js b/src/mock/login.js
index b9694f09..4e567a25 100644
--- a/src/mock/login.js
+++ b/src/mock/login.js
@@ -18,7 +18,7 @@ const userMap = {
}
export default {
- loginByUsername: config => {
+ loginByUserloginid: config => {
const { username } = JSON.parse(config.body)
return userMap[username]
},
diff --git a/src/store/modules/app.js b/src/store/modules/app.js
index bd44d2f9..9042f48e 100644
--- a/src/store/modules/app.js
+++ b/src/store/modules/app.js
@@ -3,7 +3,7 @@ import Cookies from 'js-cookie'
const app = {
state: {
sidebar: {
- opened: !+Cookies.get('sidebarStatus')
+ opened: Cookies.get('sidebarStatus')==1?true:false
},
language: Cookies.get('language') || 'zh'
},
@@ -11,10 +11,10 @@ const app = {
TOGGLE_SIDEBAR: (state,toOpen) => {
if(toOpen==true){
Cookies.set('sidebarStatus', 1)
- state.sidebar.opened =1
+ state.sidebar.opened =true
}else if(toOpen==false){
Cookies.set('sidebarStatus', 0)
- state.sidebar.opened =0
+ state.sidebar.opened =false
}else{
if (state.sidebar.opened) {
Cookies.set('sidebarStatus', 1)
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index e9a20997..c32a9566 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -1,5 +1,5 @@
-import { loginByUsername, loginByPhoneno, logout, getUserInfo, switchDept } from '@/api/login'
-import { getToken, setToken, removeToken } from '@/utils/auth'
+import { doLoginByUserloginid, logout, getUserInfo } from '@/api/login'
+import { getToken, setToken, removeToken,getCacheUserInfo,setCacheUserInfo,removeCacheUserInfo} from '@/utils/auth'
const user = {
state: {
@@ -98,10 +98,10 @@ const user = {
actions: {
// 用户名登录
- LoginByUsername({ commit }, userInfo) {
- const username = userInfo.username.trim()
+ LoginByUserloginid({ commit }, loginParams) {
+ removeToken();
return new Promise((resolve, reject) => {
- loginByUsername(username, userInfo.password,userInfo.deptid).then(res => {
+ doLoginByUserloginid(loginParams.userloginid, loginParams.password,loginParams.grantType,loginParams.authType,loginParams.deptid).then(res => {
if(res.data.tips.isOk==true){
let data = res.data
let userInfo=data.userInfo;
@@ -137,234 +137,113 @@ const user = {
})
})
},
- // 用户名登录
- LoginByPhoneno({ commit }, userInfo) {
- return new Promise((resolve, reject) => {
- loginByPhoneno(userInfo.phoneno, userInfo.smsCode, userInfo.isAdmin,userInfo.deptid).then(res => {
- if(res.data.tips.isOk==true){
- let data = res.data
- let userInfo=data.userInfo;
- let roles=data.roles;
- if(roles!=null && roles.length>0){
- roles.forEach(role=>{
- if(role.roleid=='superAdmin'){
- userInfo.isSuperAdmin=true
- }
- if(role.roleid=='platformAdmin'){
- userInfo.isPlatformAdmin=true
- }
- if(role.roleid=='branchAdmin'){
- userInfo.isBranchAdmin=true
- }
- if(role.roleid=='shopAdmin'){
- userInfo.isShopAdmin=true
- }
- if(role.roleid=='locationAdmin'){
- userInfo.isLocationAdmin=true
- }
- });
- }
- commit('SET_USER_INFO', userInfo)
- commit('SET_ROLES', roles)
- commit('SET_QXS', data.qxs)
- commit('SET_TOKEN', data.data.accessToken.tokenValue)
- setToken( data.data.accessToken.tokenValue)
- }
- resolve(res)
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 获取用户信息
- GetUserInfo({ commit, state }) {
+
+
+ ParseUserInfo({commit},res){
return new Promise((resolve, reject) => {
- getUserInfo({userid:state.userInfo.userid}).then(res=>{
- if(res.data.tips.isOk==true){
- let userInfo = res.data.userInfo;
- let roles = res.data.roles;
- let qxs=res.data.qxs;
-
- if(roles!=null && roles.length>0){
- roles.forEach(role=>{
- if(role.roleid=='superAdmin'){
- userInfo.isSuperAdmin=true
- }
- if(role.roleid=='platformAdmin'){
- userInfo.isPlatformAdmin=true
- }
- if(role.roleid=='branchAdmin'){
- userInfo.isBranchAdmin=true
- }
- if(role.roleid=='shopAdmin'){
- userInfo.isShopAdmin=true
- }
- if(role.roleid=='locationAdmin'){
- userInfo.isLocationAdmin=true
- }
- });
- }
-
-
- let branchs=res.data.branchs==null?[]:res.data.branchs;
- let depts=res.data.depts==null?[]:res.data.depts;
- let shops=res.data.shops==null?[]:res.data.shops;
- let locations=res.data.locations==null?[]:res.data.locations
- locations.forEach(l=>{
- shops.forEach(s=>{
- if(s.shopId==l.shopId){
- l.shopName=s.shopName
- }
- })
- depts.forEach(d=>{
- if(d.deptid==l.deptid){
- l.deptName=d.deptName
- l.branchName=d.branchName
- }
- })
- })
- let posts=res.data.posts==null?[]:res.data.posts;
- posts.forEach(post=>{
- depts.forEach(dept=>{
- if(dept.deptid==post.deptid){
- post.deptName=dept.deptName
- post.branchId=dept.branchId
- post.branchName=dept.branchName
- }
- })
- })
- depts.forEach(d=>{
+ if(res.data.tips.isOk==true){
+ let userInfo = res.data.userInfo;
+ let roles = res.data.roles;
+ let qxs=res.data.qxs;
+
+ if(roles!=null && roles.length>0){
+ roles.forEach(role=>{
+ if(role.roleid=='superAdmin'){
+ userInfo.isSuperAdmin=true
+ }
+ if(role.roleid=='platformAdmin'){
+ userInfo.isPlatformAdmin=true
+ }
+ if(role.roleid=='branchAdmin'){
+ userInfo.isBranchAdmin=true
+ }
+ if(role.roleid=='shopAdmin'){
+ userInfo.isShopAdmin=true
+ }
+ if(role.roleid=='locationAdmin'){
+ userInfo.isLocationAdmin=true
+ }
+ });
+ }
+
+
+ let branchs=res.data.branchs==null?[]:res.data.branchs;
+ let depts=res.data.depts==null?[]:res.data.depts;
+ let shops=res.data.shops==null?[]:res.data.shops;
+ let locations=res.data.locations==null?[]:res.data.locations
+ locations.forEach(l=>{
+ shops.forEach(s=>{
+ if(s.shopId==l.shopId){
+ l.shopName=s.shopName
+ }
+ })
+ depts.forEach(d=>{
+ if(d.deptid==l.deptid){
+ l.deptName=d.deptName
+ l.branchName=d.branchName
+ }
+ })
+ })
+ let posts=res.data.posts==null?[]:res.data.posts;
+ posts.forEach(post=>{
+ depts.forEach(dept=>{
+ if(dept.deptid==post.deptid){
+ post.deptName=dept.deptName
+ post.branchId=dept.branchId
+ post.branchName=dept.branchName
+ }
+ })
+ })
+ depts.forEach(d=>{
var branch=branchs.find(b=>b.branchId==d.branchId)
if(branch){
d.branchName=branch.branchName
}
})
- commit('SET_MYBRANCHS',branchs);
- commit('SET_MYDEPTS',depts);
- commit('SET_MYLOCATIONS',locations);
- commit('SET_MYMENUS',res.data.menus);
- commit('SET_MYPOSTS', posts);
- commit('SET_USER_INFO',userInfo);
- commit('SET_ROLES', roles)
- commit('SET_QXS', qxs)
- //commit('SET_TOKEN', res.data.access_token);
- commit('SET_WORK_SHOP',userInfo);
- commit('SET_IS_LOAD_OK', true)
- }
- resolve(res);
- }).catch(error => {
- reject(error)
- });
- /**
- getUserInfo(state.access_token).then(response => {
- if (!response.data) { // 由于mockjs 不支持自定义状态码只能这样hack
- reject('error')
- }
- const data = response.data
- commit('SET_USER_INFO', data.userInfo)
- commit('SET_ROLES', data.roles)
- commit('SET_TOKEN', data.userInfo.jsessionid)
- setToken(data.userInfo.jsessionid)
- resolve(response)
- }).catch(error => {
- reject(error)
- })
- */
+ commit('SET_MYBRANCHS',branchs);
+ commit('SET_MYDEPTS',depts);
+ commit('SET_MYLOCATIONS',locations);
+ commit('SET_MYMENUS',res.data.menus);
+ commit('SET_MYPOSTS', posts);
+ commit('SET_USER_INFO',userInfo);
+ commit('SET_ROLES', roles)
+ commit('SET_QXS', qxs)
+ commit('SET_WORK_SHOP',userInfo);
+ commit('SET_IS_LOAD_OK', true)
+ resolve(res);
+ }else{
+ reject(res)
+ }
})
+
},
// 获取用户信息
- SwitchDept({ commit,state } ,dept) {
- return new Promise((resolve, reject) => {
- let userInfo=state.userInfo;
- let params={deptName:dept.deptName,deptid:dept.deptid,branchId:dept.branchId,branchName:dept.branchName,userid:userInfo.userid}
- switchDept(params).then(res=>{
- if(res.data.tips.isOk==true){
- let userInfo = res.data.userInfo;
- let roles = res.data.roles;
- let qxs=res.data.qxs;
-
- if(roles!=null && roles.length>0){
- roles.forEach(role=>{
- if(role.roleid=='superAdmin'){
- userInfo.isSuperAdmin=true
- }
- if(role.roleid=='platformAdmin'){
- userInfo.isPlatformAdmin=true
- }
- if(role.roleid=='branchAdmin'){
- userInfo.isBranchAdmin=true
- }
- if(role.roleid=='shopAdmin'){
- userInfo.isShopAdmin=true
- }
- if(role.roleid=='locationAdmin'){
- userInfo.isLocationAdmin=true
- }
- });
- }
-
-
- let branchs=res.data.branchs==null?[]:res.data.branchs;
- let depts=res.data.depts==null?[]:res.data.depts;
- let shops=res.data.shops==null?[]:res.data.shops;
- let locations=res.data.locations==null?[]:res.data.locations
- locations.forEach(l=>{
- shops.forEach(s=>{
- if(s.shopId==l.shopId){
- l.shopName=s.shopName
- }
- })
- depts.forEach(d=>{
- if(d.deptid==l.deptid){
- l.deptName=d.deptName
- l.branchName=d.branchName
- }
- })
- })
- let posts=res.data.posts==null?[]:res.data.posts;
- posts.forEach(post=>{
- depts.forEach(dept=>{
- if(dept.deptid==post.deptid){
- post.deptName=dept.deptName
- post.branchId=dept.branchId
- post.branchName=dept.branchName
- }
- })
- })
-
- commit('SET_MYBRANCHS',branchs);
- commit('SET_MYDEPTS',depts);
- commit('SET_MYLOCATIONS',locations);
- commit('SET_MYMENUS',res.data.menus);
- commit('SET_MYPOSTS', posts);
- commit('SET_USER_INFO',userInfo);
- commit('SET_ROLES', roles)
- commit('SET_QXS', qxs)
- commit('SET_TOKEN', res.data.access_token)
- commit('SET_WORK_SHOP',JSON.parse(JSON.stringify(userInfo)));
- commit('SET_IS_LOAD_OK', true)
- }
- resolve(res);
- }).catch((res)=>{
- reject(res);
- });
- });
+ GetUserInfo({ commit, state }) {
+ return new Promise((resolve, reject) => {
+ var cacheUserInfo=getCacheUserInfo();
+ if(cacheUserInfo){
+ this.dispatch("ParseUserInfo",cacheUserInfo).then(res2=>{
+ resolve(res2);
+ }).catch(error2=>{
+ reject(error2)
+ });
+
+ }else{
+ getUserInfo().then(res=>{
+ this.dispatch("ParseUserInfo",res).then(res2=>{
+ setCacheUserInfo(res);
+ resolve(res2);
+ }).catch(error2=>{
+ reject(error2)
+ });
+ }).catch(error => {
+ reject(error)
+ });
+ }
+ })
},
-
- // 第三方验证登录
- // LoginByThirdparty({ commit, state }, code) {
- // return new Promise((resolve, reject) => {
- // commit('SET_CODE', code)
- // loginByThirdparty(state.status, state.email, state.code).then(response => {
- // commit('SET_TOKEN', response.data.access_token)
- // setToken(response.data.access_token)
- // resolve()
- // }).catch(error => {
- // reject(error)
- // })
- // })
- // },
+
// 登出
LogOut({ commit, state }) {
return new Promise((resolve, reject) => {
@@ -377,17 +256,16 @@ const user = {
commit('SET_MYPOSTS', [])
commit('SET_USER_INFO', {})
removeToken()
+ removeCacheUserInfo();
resolve()
- logout(state.token)
+ logout()
})
},
// 前端 登出
FedLogOut({ commit }) {
- return new Promise(resolve => {
- commit('SET_TOKEN', '')
- removeToken()
- resolve()
+ return new Promise((resolve, reject) => {
+ resolve()
})
},
diff --git a/src/utils/auth.js b/src/utils/auth.js
index 0915a9e6..c9413018 100644
--- a/src/utils/auth.js
+++ b/src/utils/auth.js
@@ -13,3 +13,17 @@ export function setToken(token) {
export function removeToken() {
return localStorage.removeItem(TokenKey)
}
+
+export function getCacheUserInfo(){
+ var userInfo= localStorage.getItem(localStorage.getItem(TokenKey));
+ return JSON.parse(userInfo);
+}
+export function setCacheUserInfo(userInfo){
+ var tokenValue=localStorage.getItem(TokenKey)
+ localStorage.setItem(tokenValue, JSON.stringify(userInfo))
+ return;
+}
+export function removeCacheUserInfo() {
+ var tokenValue=localStorage.getItem(TokenKey)
+ return localStorage.removeItem(tokenValue)
+}
\ No newline at end of file
diff --git a/src/views/login/index.vue b/src/views/login/index.vue
index 5dcda67b..875db930 100644
--- a/src/views/login/index.vue
+++ b/src/views/login/index.vue
@@ -1,57 +1,54 @@
-
+
+
-
{{$t('login.title')}}
+
+

+
+
{{$t('login.title')}}
+
+
-
-
-
-
- 账户密码登录
- 短信验证码快速登录
+
+
+ 账户密码登录
+ 短信验证码快速登录
+
-
-
-
-
-
+
+
+ 账号
+
-
-
-
-
-
-
-
-
+
+
+ 密码
+
+
+
+
-
-
-
-
-
+
+
+ 手机号码
+ 发送验证码
+
-
-
-
-
- 发送验证码
+
+
+ 短信验证码
+ 六位验证码
+
{{$t('login.logIn')}}
-
-
-
-
-
-
-
-
-
-
- {{$t('login.thirdparty')}}
+
+ 新用户注册
+ 忘记密码
+ {{$t('login.thirdparty')}}
+
-
+
+
+
+
+
+
+
+
@@ -86,53 +90,88 @@
-
-
-
+
\ No newline at end of file
diff --git a/src/views/login/register.vue b/src/views/login/register.vue
new file mode 100644
index 00000000..8c9f4cd1
--- /dev/null
+++ b/src/views/login/register.vue
@@ -0,0 +1,332 @@
+
+
+
+
+
+

+
+
{{$t('login.title')}}
+
+
+
+
+
+ 发送验证码
+
+
+
+
+ 六位验证码
+
+
+
+
+
+
+
+
+ 检测是否已注册
+
+
+
+
+
+
+
+
+
+
+ 注册
+
+
+
+
+ {{d.deptName}}({{d.branchName}})
+
+
+
+
+ 取 消
+ 确 定
+
+
+
+
+
+
+ {{$t('login.thirdpartyTips')}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/login/resetPassword.vue b/src/views/login/resetPassword.vue
new file mode 100644
index 00000000..4a2e4700
--- /dev/null
+++ b/src/views/login/resetPassword.vue
@@ -0,0 +1,285 @@
+
+
+
+
+
+

+
+
{{$t('login.title')}}
+
+
+
+
+
+ 发送验证码
+
+
+
+
+ 六位验证码
+
+
+
+
+
+
+
+
+
+ 重置密码
+
+
+
+
+ {{d.deptName}}({{d.branchName}})
+
+
+
+
+ 取 消
+ 确 定
+
+
+
+
+
+
+ {{$t('login.thirdpartyTips')}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file