Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
Y
ybf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xulili
ybf
Commits
16290f19
Commit
16290f19
authored
Jan 14, 2020
by
xd
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://114.67.93.201/xulili/ybf
parents
27477f5d
d1304930
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
40 additions
and
144 deletions
+40
-144
account.js
ybf_admin/src/store/modules/d2admin/modules/account.js
+17
-23
page.vue
ybf_admin/src/views/system/login/page.vue
+23
-121
No files found.
ybf_admin/src/store/modules/d2admin/modules/account.js
View file @
16290f19
import
{
Message
,
MessageBox
}
from
'element-ui'
import
util
from
'@/libs/util.js'
import
router
from
'@/router'
import
{
AccountLogin
}
from
'@api/sys.login'
//
import { AccountLogin } from '@api/sys.login'
import
{
ApiLoginSubmit
}
from
"@api/login/main"
;
export
default
{
namespaced
:
true
,
actions
:
{
...
...
@@ -14,31 +14,28 @@ export default {
* @param {Object} payload route {Object} 登录成功后定向的路由对象 任何 vue-router 支持的格式
*/
login
({
dispatch
},
{
usern
ame
=
''
,
passwor
d
=
''
loginN
ame
=
''
,
loginPw
d
=
''
}
=
{})
{
return
new
Promise
((
resolve
,
reject
)
=>
{
// 开始请求登录接口
A
ccountLogin
({
usern
ame
,
passwor
d
A
piLoginSubmit
({
loginN
ame
,
loginPw
d
})
.
then
(
async
res
=>
{
// 设置 cookie 一定要存 uuid 和 token 两个 cookie
// 整个系统依赖这两个数据进行校验和存储
// uuid 是用户身份唯一标识 用户注册的时候确定 并且不可改变 不可重复
// token 代表用户当前登录状态 建议在网络请求中携带 token
// 如有必要 token 需要定时更新,默认保存一天
util
.
cookies
.
set
(
'uuid'
,
res
.
uuid
)
util
.
cookies
.
set
(
'token'
,
res
.
token
)
// 设置 vuex 用户信息
await
dispatch
(
'd2admin/user/set'
,
{
name
:
res
.
name
},
{
root
:
true
})
// 用户登录后从持久化数据加载一系列的设置
await
dispatch
(
'load'
)
// 结束
resolve
()
if
(
res
.
result
==
'fail'
){
console
.
log
(
'err: '
,
res
.
errorMsg
)
reject
(
res
)
}
else
{
util
.
cookies
.
set
(
'token'
,
res
.
data
)
// 用户登录后从持久化数据加载一系列的设置
await
dispatch
(
'load'
)
// 结束
resolve
()
}
})
.
catch
(
err
=>
{
console
.
log
(
'err: '
,
err
)
...
...
@@ -58,9 +55,6 @@ export default {
async
function
logout
()
{
// 删除cookie
util
.
cookies
.
remove
(
'token'
)
util
.
cookies
.
remove
(
'uuid'
)
// 清空 vuex 用户信息
await
dispatch
(
'd2admin/user/set'
,
{},
{
root
:
true
})
// 跳转路由
router
.
push
({
name
:
'login'
...
...
ybf_admin/src/views/system/login/page.vue
View file @
16290f19
...
...
@@ -7,8 +7,7 @@
</div>
<div
class=
"page-login--layer page-login--layer-time loginbktime"
flex=
"main:center cross:center"
style=
"border: 2px solid red;"
>
flex=
"main:center cross:center"
>
{{
time
}}
</div>
<div
class=
"page-login--layer"
>
...
...
@@ -24,7 +23,9 @@
class=
"page-login--content-main"
flex=
"dir:top main:center cross:center"
>
<!-- logo -->
<img
class=
"page-login--logo"
src=
"./image/logo@2x.png"
>
<div>
<p
style=
"font-size: 30px;margin-bottom: 20px ;color: #545252"
>
亿佰分管理系统
</p>
</div>
<!-- form -->
<div
class=
"page-login--form"
>
<el-card
shadow=
"never"
>
...
...
@@ -50,23 +51,6 @@
<i
slot=
"prepend"
class=
"fa fa-keyboard-o"
></i>
</el-input>
</el-form-item>
<el-form-item
prop=
"code"
>
<!--
<el-input
type=
"text"
v-model=
"formLogin.code"
placeholder=
"验证码"
>
<template
slot=
"append"
>
<img
class=
"login-code"
src=
"./image/login-code.png"
>
</
template
>
</el-input>
-->
</el-form-item>
<!-- <el-button
size="default"
@click="submit"
type="primary"
class="button-login">
登录
</el-button> -->
<el-button
size=
"default"
@
click=
"loginSubmit"
...
...
@@ -79,53 +63,13 @@
<p
class=
"page-login--options"
flex=
"main:justify cross:center"
>
<!-- <span><d2-icon name="question-circle"/> 忘记密码</span> -->
<!-- <span>注册用户</span> -->
</p>
<!-- quick login -->
<!-- <el-button class="page-login--quick" size="default" type="info" @click="dialogVisible = true">
快速选择用户(测试功能)
</el-button> -->
</div>
</div>
<div
class=
"page-login--content-footer"
>
<!-- <p class="page-login--content-footer-locales">
<a
v-for="language in $languages"
:key="language.value"
@click="onChangeLocale(language.value)">
{{ language.label }}
</a>
</p>
<p class="page-login--content-footer-copyright">
Copyright
<d2-icon name="copyright"/>
2018 D2 Projects 开源组织出品
<a href="https://github.com/FairyEver">
@FairyEver
</a>
</p>
<p class="page-login--content-footer-options">
<a href="#">帮助</a>
<a href="#">隐私</a>
<a href="#">条款</a>
</p> -->
</div>
</div>
</div>
<!-- <el-dialog
title="快速选择用户"
:visible.sync="dialogVisible"
width="400px">
<el-row :gutter="10" style="margin: -20px 0px -10px 0px;">
<el-col v-for="(user, index) in users" :key="index" :span="8">
<div class="page-login--quick-user" @click="handleUserBtnClick(user)">
<d2-icon name="user-circle-o"/>
<span>{{user.name}}</span>
</div>
</el-col>
</el-row>
</el-dialog> -->
</div>
</
template
>
...
...
@@ -146,28 +90,9 @@ export default {
time
:
dayjs
().
format
(
'HH:mm:ss'
),
// 快速选择用户
dialogVisible
:
false
,
users
:
[
{
name
:
'Admin'
,
username
:
'admin'
,
password
:
'admin'
},
{
name
:
'Editor'
,
username
:
'editor'
,
password
:
'editor'
},
{
name
:
'User1'
,
username
:
'user1'
,
password
:
'user1'
}
],
// 表单
formLogin
:
{
username
:
'admin'
,
password
:
'admin'
,
code
:
'v9am'
username
:
'18888888888'
,
password
:
'admin123'
,
},
// 表单校验
rules
:
{
...
...
@@ -184,13 +109,6 @@ export default {
message
:
'请输入密码'
,
trigger
:
'blur'
}
],
code
:
[
{
required
:
true
,
message
:
'请输入验证码'
,
trigger
:
'blur'
}
]
}
}
...
...
@@ -208,51 +126,35 @@ export default {
'login'
]),
loginSubmit
(){
let
postData
=
{
loginName
:
this
.
formLogin
.
username
,
loginPwd
:
md5
(
this
.
formLogin
.
password
),
}
ApiLoginSubmit
(
postData
)
.
then
(
res
=>
{
if
(
res
.
result
===
'success'
){
console
.
log
(
'--->login: res ='
,
res
)
this
.
$router
.
replace
(
this
.
$route
.
query
.
redirect
||
'/'
)
// this.$router.push('/')
}
})
},
// loginSubmit(){
// let postData = {
// loginName: this.formLogin.username,
// loginPwd: md5(this.formLogin.password),
// }
// ApiLoginSubmit(postData)
// .then(res => {
// if(res.result === 'success'){
// console.log('--->login: res =', res)
// this.$router.replace(this.$route.query.redirect || '/')
// }
// })
// },
refreshTime
()
{
this
.
time
=
dayjs
().
format
(
'HH:mm:ss'
)
},
/**
* @description 接收选择一个用户快速登录的事件
* @param {Object} user 用户信息
*/
handleUserBtnClick
(
user
)
{
this
.
formLogin
.
username
=
user
.
username
this
.
formLogin
.
password
=
user
.
password
this
.
submit
()
},
/**
* @description 提交表单
*/
// 提交登录信息
s
ubmit
()
{
loginS
ubmit
()
{
this
.
$refs
.
loginForm
.
validate
((
valid
)
=>
{
if
(
valid
)
{
// 登录
// 注意 这里的演示没有传验证码
// 具体需要传递的数据请自行修改代码
this
.
login
({
usern
ame
:
this
.
formLogin
.
username
,
password
:
this
.
formLogin
.
password
loginN
ame
:
this
.
formLogin
.
username
,
loginPwd
:
md5
(
this
.
formLogin
.
password
)
})
.
then
(()
=>
{
// 重定向对象不存在则返回顶层路径
...
...
@@ -518,6 +420,6 @@ export default {
<
style
scoped
>
.loginbktime
{
border
:
2px
solid
red
;
/*border: 2px solid red;*/
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment