Skip to content

Commit 986b146

Browse files
committed
用户加入昵称与性别字段,个人中心优化,可修改基本资料
1 parent 4c90303 commit 986b146

17 files changed

Lines changed: 61 additions & 30 deletions

File tree

eladmin-system/src/main/java/me/zhengjie/modules/security/config/SecurityProperties.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,9 @@ public class SecurityProperties {
2424
/** 必须使用最少88位的Base64对该令牌进行编码 */
2525
private String base64Secret;
2626

27-
/** 令牌过期时间 此处单位/ */
27+
/** 令牌过期时间 此处单位/毫秒 */
2828
private Long tokenValidityInSeconds;
2929

30-
/** 记住我模式下的令牌过期时间 此处单位/毫秒 */
31-
private Long tokenValidityInSecondsForRememberMe;
32-
3330
/** 在线用户 key,根据 key 查询 redis 中在线用户的数据 */
3431
private String onlineKey;
3532

eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthController.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,9 +80,8 @@ public ResponseEntity login(@Validated @RequestBody AuthUser authUser, HttpServl
8080

8181
Authentication authentication = authenticationManagerBuilder.getObject().authenticate(authenticationToken);
8282
SecurityContextHolder.getContext().setAuthentication(authentication);
83-
boolean rememberMe = (authUser.getRememberMe() == null) ? false : authUser.getRememberMe();
8483
// 生成令牌
85-
String token = tokenProvider.createToken(authentication, rememberMe);
84+
String token = tokenProvider.createToken(authentication);
8685
final JwtUser jwtUser = (JwtUser) authentication.getPrincipal();
8786
// 保存在线信息
8887
onlineUserService.save(jwtUser, token, request);

eladmin-system/src/main/java/me/zhengjie/modules/security/security/TokenProvider.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,18 +41,13 @@ public void afterPropertiesSet() {
4141
this.key = Keys.hmacShaKeyFor(keyBytes);
4242
}
4343

44-
public String createToken(Authentication authentication, boolean rememberMe) {
44+
public String createToken(Authentication authentication) {
4545
String authorities = authentication.getAuthorities().stream()
4646
.map(GrantedAuthority::getAuthority)
4747
.collect(Collectors.joining(","));
4848

4949
long now = (new Date()).getTime();
50-
Date validity;
51-
if (rememberMe) {
52-
validity = new Date(now + properties.getTokenValidityInSecondsForRememberMe());
53-
} else {
54-
validity = new Date(now + properties.getTokenValidityInSeconds());
55-
}
50+
Date validity = new Date(now + properties.getTokenValidityInSeconds());
5651

5752
return Jwts.builder()
5853
.setSubject(authentication.getName())

eladmin-system/src/main/java/me/zhengjie/modules/security/security/vo/AuthUser.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@ public class AuthUser {
1919
@NotBlank
2020
private String password;
2121

22-
private Boolean rememberMe;
23-
2422
private String code;
2523

2624
private String uuid = "";

eladmin-system/src/main/java/me/zhengjie/modules/security/security/vo/JwtUser.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,14 @@
1818
@AllArgsConstructor
1919
public class JwtUser implements UserDetails {
2020

21-
@JsonIgnore
2221
private final Long id;
2322

2423
private final String username;
2524

25+
private final String nickName;
26+
27+
private final String sex;
28+
2629
@JsonIgnore
2730
private final String password;
2831

eladmin-system/src/main/java/me/zhengjie/modules/security/security/vo/OnlineUser.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ public class OnlineUser {
1616

1717
private String userName;
1818

19+
private String nickName;
20+
1921
private String job;
2022

2123
private String browser;

eladmin-system/src/main/java/me/zhengjie/modules/security/service/OnlineUserService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public void save(JwtUser jwtUser, String token, HttpServletRequest request){
3939
String address = StringUtils.getCityInfo(ip);
4040
OnlineUser onlineUser = null;
4141
try {
42-
onlineUser = new OnlineUser(jwtUser.getUsername(), job, browser , ip, address, EncryptUtils.desEncrypt(token), new Date());
42+
onlineUser = new OnlineUser(jwtUser.getUsername(), jwtUser.getNickName(), job, browser , ip, address, EncryptUtils.desEncrypt(token), new Date());
4343
} catch (Exception e) {
4444
e.printStackTrace();
4545
}

eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ private UserDetails createJwtUser(UserDto user) {
4646
return new JwtUser(
4747
user.getId(),
4848
user.getUsername(),
49+
user.getNickName(),
50+
user.getSex(),
4951
user.getPassword(),
5052
user.getAvatar(),
5153
user.getEmail(),

eladmin-system/src/main/java/me/zhengjie/modules/system/domain/User.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ public class User implements Serializable {
3232
@Column(unique = true)
3333
private String username;
3434

35+
/** 用户昵称 */
36+
@NotBlank
37+
private String nickName;
38+
39+
/** 性别 */
40+
private String sex;
41+
3542
@OneToOne
3643
@JoinColumn(name = "avatar_id")
3744
private UserAvatar userAvatar;

eladmin-system/src/main/java/me/zhengjie/modules/system/rest/UserController.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,18 @@ public ResponseEntity update(@Validated(User.Update.class) @RequestBody User res
119119
return new ResponseEntity(HttpStatus.NO_CONTENT);
120120
}
121121

122+
@Log("修改用户:个人中心")
123+
@ApiOperation("修改用户:个人中心")
124+
@PutMapping(value = "center")
125+
public ResponseEntity center(@Validated(User.Update.class) @RequestBody User resources){
126+
UserDto userDto = userService.findByName(SecurityUtils.getUsername());
127+
if(!resources.getId().equals(userDto.getId())){
128+
throw new BadRequestException("不能修改他人资料");
129+
}
130+
userService.updateCenter(resources);
131+
return new ResponseEntity(HttpStatus.NO_CONTENT);
132+
}
133+
122134
@Log("删除用户")
123135
@ApiOperation("删除用户")
124136
@DeleteMapping(value = "/{id}")

0 commit comments

Comments
 (0)