Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
BCDH-APP
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
首开风险隐患双控平台
BCDH-APP
Commits
1a7f5bc0
Commit
1a7f5bc0
authored
Sep 29, 2022
by
13841799530
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug修复
20220927
parent
a017932f
Pipeline
#8871
passed with stage
in 4 minutes and 58 seconds
Changes
4
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
231 additions
and
9 deletions
+231
-9
src/App.vue
src/App.vue
+1
-1
src/router/index.js
src/router/index.js
+3
-3
src/views/Login2.vue
src/views/Login2.vue
+9
-5
src/views/resetPasTwo.vue
src/views/resetPasTwo.vue
+218
-0
No files found.
src/App.vue
View file @
1a7f5bc0
...
...
@@ -49,7 +49,7 @@ export default {
"
confirmNote
"
,
],
// 不需要展示底部tabbar的页面
noTab
:[
"
login
"
,
"
login2
"
,
"
choose-people
"
,
"
scan
"
,
'
success
'
,
'
fail
'
,
'
warn
'
,
'
center
'
],
noTab
:[
"
login
"
,
"
login2
"
,
"
choose-people
"
,
"
scan
"
,
'
success
'
,
'
fail
'
,
'
warn
'
,
'
center
'
,
'
reset-pas-two
'
],
// cachePage预先定义的缓存页面
otherCache
:
[],
// 专门处理列表缓存的页面,这些页面缓存逻辑与其他缓存不一样去详情返回列表缓存,但是进入列表必须刷新,如何有需要缓存的列表请放到这里来。
...
...
src/router/index.js
View file @
1a7f5bc0
...
...
@@ -791,13 +791,13 @@ const routes = [{
component
:
()
=>
import
(
'
@/views/my/resetPas
'
)
},
{
path
:
'
/
my-
reset-pas-two
'
,
name
:
'
my-
reset-pas-two
'
,
path
:
'
/reset-pas-two
'
,
name
:
'
reset-pas-two
'
,
meta
:
{
title
:
'
修改密码
'
,
index
:
1
},
component
:
()
=>
import
(
'
@/views/
my/
resetPasTwo
'
)
component
:
()
=>
import
(
'
@/views/resetPasTwo
'
)
},
{
path
:
'
/matrix-grad
'
,
...
...
src/views/Login2.vue
View file @
1a7f5bc0
...
...
@@ -110,6 +110,7 @@ export default {
getFun
(
'
check/token
'
,
obj
).
then
((
Response
)
=>
{
if
(
Response
.
code
==
0
){
this
.
$toast
.
clear
()
setToken
(
Response
.
data
)
postFun
(
'
mobile/user
'
).
then
((
Response2
)
=>
{
var
userInfo
=
{
avatar
:
Response2
.
data
.
avatar
,
...
...
@@ -122,12 +123,15 @@ export default {
}
/* 存储用户信息 */
setUserInfo
(
userInfo
)
localStorage
.
setItem
(
'
pwd
'
,
encrypt
(
this
.
password
))
localStorage
.
setItem
(
'
username
'
,
this
.
username
)
if
(
!
Response2
.
data
.
initializePassword
){
this
.
$router
.
push
(
'
/save-workbench
'
)
}
else
{
this
.
$router
.
push
(
'
/reset-pas-two
'
)
}
})
localStorage
.
setItem
(
'
pwd
'
,
encrypt
(
this
.
password
))
localStorage
.
setItem
(
'
username
'
,
this
.
username
)
setToken
(
Response
.
data
)
this
.
$router
.
push
(
'
/my-reset-pas-two
'
)
// this.$router.push('/save-workbench')
}
else
if
(
Response
.
code
==
301
){
this
.
$toast
.
clear
()
this
.
$toast
.
fail
({
...
...
src/views/resetPasTwo.vue
0 → 100644
View file @
1a7f5bc0
<
template
>
<div>
<!-- 修改密码页面 -->
<!-- 头部标签 -->
<LHeader
:text=
"$route.meta.title"
></LHeader>
<van-form
@
submit=
"onSubmit"
:scroll-to-error=
"true"
:show-error=
"false"
validate-trigger=
"onSubmit"
>
<van-field
v-model=
"form.oldPassword"
required
type=
"text"
name=
"oldPassword"
label=
"旧密码"
placeholder=
"请输入旧密码"
:rules=
"[
{ required: true, message: '请填写密码' }]"
/>
<van-field
required
v-model=
"form.newPassword"
type=
"password"
name=
"newPassword"
label=
"新密码"
@
input=
"checkPassword()"
placeholder=
"请输入新密码"
:rules=
"[
{ required: true, message: '请填写密码' },
{
message: '密码必须大于8个字符小于30个字符',
validator: (val) => {
return val['length'] >= 8
&&
val['length']
<
30
;
},
},
]"
/>
<!-- 密码等级提示 -->
<van-cell-group>
<div
class=
"intensity"
>
<div
style=
"width: 8.2em;"
></div>
<div>
<div
class=
"pass-level"
>
<span
class=
"psdText"
>
密码强度
</span>
<span
class=
"line"
:class=
"[level.includes('low') ? 'low' : '']"
></span>
<span
class=
"line"
:class=
"[level.includes('middle') ? 'middle' : '']"
></span>
<span
class=
"line"
:class=
"[level.includes('high') ? 'high' : '']"
></span>
</div>
</div>
</div>
</van-cell-group>
<van-field
required
v-model=
"form.confirm"
type=
"password"
name=
"confirm"
label=
"再次输入"
placeholder=
"再次输入新密码"
:rules=
"[
{ validator, required: true, message: '二次密码输入不一致' },
{
message: '密码必须大于等于8个字符小于30个字符',
validator: (val) => {
return val['length'] >= 8
&&
val['length']
<
30
;
},
},
]"
/>
<div
style=
"margin: 16px"
>
<van-button
round
block
type=
"info"
native-type=
"submit"
>
提交
</van-button>
</div>
</van-form>
</div>
</
template
>
<
script
>
import
LHeader
from
"
@/components/header.vue
"
;
import
{
encrypt
,
decrypt
}
from
'
@/utils/jsencrypt
'
import
{
getFun
,
postFun
}
from
"
@/service/table.js
"
;
import
{
getUserInfo
}
from
"
@/utils/userInfo
"
;
import
{
removeToken
}
from
"
@/utils/auth
"
;
// get token from cookie
export
default
{
components
:
{
LHeader
,
},
data
()
{
return
{
form
:
{
oldPassword
:
""
,
newPassword
:
""
,
confirm
:
""
,
},
level
:
[]
};
},
mounted
()
{
console
.
log
(
getUserInfo
());
},
methods
:
{
validator
(
val
)
{
return
this
.
form
.
newPassword
==
val
;
},
onSubmit
(
val
)
{
// 判断level数组是否含有middle
let
isMiddleLevel
=
this
.
level
.
includes
(
'
high
'
)
if
(
!
isMiddleLevel
){
this
.
$toast
.
fail
(
"
密码等级较低
"
)
return
}
this
.
$toast
.
loading
({
message
:
"
请求中...
"
,
forbidClick
:
true
,
loadingType
:
"
spinner
"
,
duration
:
0
,
});
postFun
(
"
/mobile/resetPwd
"
,
this
.
obj2formdata
(
val
)).
then
((
data
)
=>
{
if
(
data
.
code
==
0
)
{
this
.
$toast
.
clear
();
this
.
$toast
.
success
(
"
密码修改成功!
"
);
localStorage
.
setItem
(
'
pwd
'
,
encrypt
(
this
.
form
.
newPassword
))
this
.
$router
.
push
(
'
/save-workbench
'
)
}
});
},
obj2formdata
(
data
)
{
console
.
log
(
data
,
"
fasfasdfsd
"
);
let
fd
=
new
FormData
();
for
(
let
k
in
data
)
{
if
(
data
[
k
])
{
fd
.
append
(
k
,
data
[
k
]);
}
}
return
fd
;
},
// 密码等级校验
checkPassword
()
{
this
.
level
=
[];
// 校验是数字
const
regex1
=
/^
\d
+$/
;
// 校验字母
const
regex2
=
/^
[
A-Za-z
]
+$/
;
// 校验符号
const
regex3
=
/^
[
`~!@#$%^&*()_
\-
+=<>?:"{}|,.
\/
;'
\\
[
\]
·~!@#¥%……&*()——
\-
+={}|《》?:“”【】、;‘',。、
]
+$/
;
if
(
regex1
.
test
(
this
.
form
.
newPassword
))
{
this
.
level
.
push
(
"
low
"
);
}
else
if
(
regex2
.
test
(
this
.
form
.
newPassword
))
{
this
.
level
.
push
(
"
low
"
);
}
else
if
(
regex3
.
test
(
this
.
form
.
newPassword
))
{
this
.
level
.
push
(
"
low
"
);
}
else
if
(
/^
[
A-Za-z
\d]
+$/
.
test
(
this
.
form
.
newPassword
))
{
this
.
level
.
push
(
"
low
"
);
this
.
level
.
push
(
"
middle
"
);
}
else
if
(
/^
[
`~!@#$%^&*()_
\-
+=<>?:"{}|,.
\/
;'
\\
[
\]
·~!@#¥%……&*()——
\-
+={}|《》?:“”【】、;‘',。、
\d]
+$/
.
test
(
this
.
form
.
newPassword
)
)
{
this
.
level
.
push
(
"
low
"
);
this
.
level
.
push
(
"
middle
"
);
}
else
if
(
/^
[
`~!@#$%^&*()_
\-
+=<>?:"{}|,.
\/
;'
\\
[
\]
·~!@#¥%……&*()——
\-
+={}|《》?:“”【】、;‘',。、A-Za-z
]
+$/
.
test
(
this
.
form
.
newPassword
)
)
{
this
.
level
.
push
(
"
low
"
);
this
.
level
.
push
(
"
middle
"
);
}
else
if
(
/^
[
`~!@#$%^&*()_
\-
+=<>?:"{}|,.
\/
;'
\\
[
\]
·~!@#¥%……&*()——
\-
+={}|《》?:“”【】、;‘',。、A-Za-z
\d]
+$/
.
test
(
this
.
form
.
newPassword
)
)
{
this
.
level
.
push
(
"
low
"
);
this
.
level
.
push
(
"
middle
"
);
this
.
level
.
push
(
"
high
"
);
}
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.intensity {
display: flex;
padding: 0.26667rem 0.42667rem;
line-height: 0.64rem;
.psdText {
font-size: 14px;
margin-right: 10px;
}
.line {
display: inline-block;
width: 48px;
height: 4px;
background: #d8d8d8;
border-radius: 3px;
margin-right: 8px;
}
.low {
background: #f4664a;
}
.middle {
background: #ffb700;
}
.high {
background: #2cbb79;
}
}
</
style
>
\ No newline at end of file
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