Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
civil-bigdata
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
civil
civil-bigdata
Commits
7f8dde2b
Commit
7f8dde2b
authored
Dec 22, 2021
by
韦华德
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
民政单点登录:增加手机验证码,注册去掉邮箱
parent
a0aef069
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
53 additions
and
4 deletions
+53
-4
sys-server/src/main/java/com/zq/system/modules/system/domain/User.java
+1
-1
sys-server/src/main/java/com/zq/system/modules/system/domain/vo/SsoRegisterVo.java
+15
-0
sys-server/src/main/java/com/zq/system/modules/system/rest/SsoController.java
+10
-1
sys-server/src/main/java/com/zq/system/modules/system/service/SsoService.java
+27
-2
No files found.
sys-server/src/main/java/com/zq/system/modules/system/domain/User.java
View file @
7f8dde2b
...
...
@@ -75,7 +75,7 @@ public class User extends BaseEntity implements Serializable {
private
String
nickName
;
@Email
@NotBlank
//
@NotBlank
@ApiModelProperty
(
value
=
"邮箱"
)
private
String
email
;
...
...
sys-server/src/main/java/com/zq/system/modules/system/domain/vo/SsoRegisterVo.java
0 → 100644
View file @
7f8dde2b
package
com
.
zq
.
system
.
modules
.
system
.
domain
.
vo
;
import
com.zq.system.modules.system.domain.User
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@Data
public
class
SsoRegisterVo
extends
User
{
@ApiModelProperty
(
value
=
"手机验证码"
)
private
String
phoneVerificationCode
;
@ApiModelProperty
(
value
=
"手机验证码uuid"
)
private
String
uuId
;
}
sys-server/src/main/java/com/zq/system/modules/system/rest/SsoController.java
View file @
7f8dde2b
...
...
@@ -7,6 +7,7 @@ import com.zq.common.vo.IdVo;
import
com.zq.common.vo.ResultVo
;
import
com.zq.system.modules.system.domain.User
;
import
com.zq.system.modules.system.domain.vo.SsoLoginVo
;
import
com.zq.system.modules.system.domain.vo.SsoRegisterVo
;
import
com.zq.system.modules.system.service.AuthUserDto
;
import
com.zq.system.modules.system.service.SsoService
;
import
io.swagger.annotations.Api
;
...
...
@@ -59,11 +60,19 @@ public class SsoController {
@ApiOperation
(
"注册单点登录用户"
)
@AnonymousPostMapping
(
value
=
"/register"
)
public
ResultVo
register
(
@Validated
(
User
.
Create
.
class
)
@RequestBody
User
resources
)
{
public
ResultVo
register
(
@RequestBody
SsoRegisterVo
resources
)
{
AssertUtils
.
hasText
(
resources
.
getPhoneVerificationCode
(),
"手机验证码未填写"
);
ssoService
.
register
(
resources
);
return
ResultVo
.
success
(
"注册成功"
);
}
@ApiOperation
(
"获取手机验证码"
)
@AnonymousGetMapping
(
value
=
"/getPhoneVerificationCode/{phoneNumber}"
)
public
ResultVo
getPhoneVerificationCode
(
@PathVariable
(
"phoneNumber"
)
String
phoneNumber
)
{
return
ResultVo
.
success
(
ssoService
.
getPhoneVerificationCode
(
phoneNumber
));
}
@ApiOperation
(
"用户绑定系统"
)
@PostMapping
(
value
=
"/bindSystem"
)
public
ResultVo
bindSystem
(
@RequestBody
SsoLoginVo
vo
)
{
...
...
sys-server/src/main/java/com/zq/system/modules/system/service/SsoService.java
View file @
7f8dde2b
...
...
@@ -22,6 +22,7 @@ import com.zq.system.modules.system.domain.Job;
import
com.zq.system.modules.system.domain.Role
;
import
com.zq.system.modules.system.domain.User
;
import
com.zq.system.modules.system.domain.vo.SsoLoginVo
;
import
com.zq.system.modules.system.domain.vo.SsoRegisterVo
;
import
com.zq.system.modules.system.entity.BindUserInfo
;
import
com.zq.system.modules.system.entity.SysInfo
;
import
com.zq.system.modules.system.repository.DeptRepository
;
...
...
@@ -29,9 +30,11 @@ import com.zq.system.modules.system.repository.JobRepository;
import
com.zq.system.modules.system.repository.RoleRepository
;
import
com.zq.system.modules.system.repository.UserRepository
;
import
com.zq.system.modules.system.service.dto.UserDto
;
import
com.zq.system.utils.MobileSmsUtils
;
import
com.zq.system.utils.RsaUtils
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.security.authentication.UsernamePasswordAuthenticationToken
;
import
org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder
;
import
org.springframework.security.core.Authentication
;
...
...
@@ -67,16 +70,27 @@ public class SsoService {
private
final
AuthenticationManagerBuilder
authenticationManagerBuilder
;
private
final
TokenProvider
tokenProvider
;
public
void
register
(
User
resources
)
{
public
void
register
(
SsoRegisterVo
vo
)
{
String
passwd
=
null
;
try
{
passwd
=
RsaUtils
.
decryptByPrivateKey
(
RsaProperties
.
privateKey
,
resources
.
getPassword
());
passwd
=
RsaUtils
.
decryptByPrivateKey
(
RsaProperties
.
privateKey
,
vo
.
getPassword
());
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
AssertUtils
.
hasText
(
passwd
,
"密码解密失败"
);
String
phoneVerificationCode
=
redisUtils
.
getStr
(
vo
.
getUuId
());
// AssertUtils.hasText(phoneVerificationCode,"验证码已过期");
// AssertUtils.isTrue(vo.getPhoneVerificationCode().equals(phoneVerificationCode),"验证码错误");
User
resources
=
new
User
();
resources
.
setPassword
(
passwordEncoder
.
encode
(
passwd
));
resources
.
setDept
(
vo
.
getDept
());
resources
.
setEnabled
(
vo
.
getEnabled
());
resources
.
setGender
(
vo
.
getGender
());
resources
.
setNickName
(
vo
.
getNickName
());
resources
.
setPhone
(
vo
.
getPhone
());
resources
.
setUsername
(
vo
.
getUsername
());
List
<
Role
>
roleList
=
roleRepository
.
findAllById
(
Collections
.
singletonList
(
8L
));
resources
.
setRoles
(
new
HashSet
<>(
roleList
));
...
...
@@ -87,6 +101,8 @@ public class SsoService {
deptRepository
.
findById
(
8L
).
ifPresent
(
resources:
:
setDept
);
userService
.
create
(
resources
);
redisUtils
.
deleteStr
(
vo
.
getUuId
());
}
public
List
<
BindUserInfo
>
getBindSysList
()
{
...
...
@@ -228,4 +244,13 @@ public class SsoService {
data
.
put
(
"username"
,
userDto
.
getUsername
());
return
data
;
}
public
String
getPhoneVerificationCode
(
String
phoneNumber
)
{
String
code
=
String
.
valueOf
((
int
)((
Math
.
random
()*
9
+
1
)*
100000
));
MobileSmsUtils
.
sendMsg
(
phoneNumber
,
"【民政统一登录平台】验证码:"
+
code
+
"(有效期为3分钟),请勿泄露给他人,如非本人操作,请忽略此信息。"
);
String
uuid
=
properties
.
getCodeKey
()
+
IdUtil
.
simpleUUID
();
//3分钟
redisUtils
.
setStr
(
uuid
,
code
,
180000
);
return
uuid
;
}
}
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