Kaynağa Gözat

元宇宙昵称修改

lidongze 3 yıl önce
ebeveyn
işleme
b346885229

+ 2 - 0
src/main/java/com/izouma/nineth/domain/UserDetail.java

@@ -7,6 +7,7 @@ import lombok.NoArgsConstructor;
 
 
 import javax.persistence.Entity;
 import javax.persistence.Entity;
 import javax.persistence.Id;
 import javax.persistence.Id;
+import javax.persistence.Transient;
 
 
 @Data
 @Data
 @AllArgsConstructor
 @AllArgsConstructor
@@ -19,6 +20,7 @@ public class UserDetail extends BaseEntityNoID {
     private Long userId;
     private Long userId;
 
 
     @ApiModelProperty("昵称")
     @ApiModelProperty("昵称")
+    @Transient
     private String nickname;
     private String nickname;
 
 
     @ApiModelProperty("头像")
     @ApiModelProperty("头像")

+ 17 - 0
src/main/java/com/izouma/nineth/service/UserService.java

@@ -144,6 +144,23 @@ public class UserService {
         return userRepo.save(user);
         return userRepo.save(user);
     }
     }
 
 
+    public User metaUpdate(Long userId, String nickname) {
+        if (StringUtils.isBlank(nickname)) {
+            throw new BusinessException("用户昵称为空");
+        }
+        User user = userRepo.findById(userId).orElse(null);
+        if (Objects.isNull(user)) {
+            throw new BusinessException("用户信息为空");
+        }
+        if (!nickname.equals(user.getNickname())) {
+            if (!contentAuditService.auditText(nickname)) {
+                throw new BusinessException("昵称包含非法内容");
+            }
+        }
+        user.setNickname(nickname);
+        return save(user);
+    }
+
     public User update(Long userId, String nickname, String avatar, String sex, String bg, String intro,
     public User update(Long userId, String nickname, String avatar, String sex, String bg, String intro,
                        Boolean useCollectionPic, Boolean riskWarning, Integer level, Boolean isPublicShow) {
                        Boolean useCollectionPic, Boolean riskWarning, Integer level, Boolean isPublicShow) {
         User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));
         User user = userRepo.findById(userId).orElseThrow(new BusinessException("用户不存在"));

+ 15 - 5
src/main/java/com/izouma/nineth/web/UserDetailController.java

@@ -1,5 +1,6 @@
 package com.izouma.nineth.web;
 package com.izouma.nineth.web;
 
 
+import com.izouma.nineth.domain.User;
 import com.izouma.nineth.domain.UserDetail;
 import com.izouma.nineth.domain.UserDetail;
 import com.izouma.nineth.dto.MetaRestResult;
 import com.izouma.nineth.dto.MetaRestResult;
 import com.izouma.nineth.dto.PageQuery;
 import com.izouma.nineth.dto.PageQuery;
@@ -7,6 +8,8 @@ import com.izouma.nineth.exception.BusinessException;
 import com.izouma.nineth.repo.UserDetailRepo;
 import com.izouma.nineth.repo.UserDetailRepo;
 import com.izouma.nineth.service.ContentAuditService;
 import com.izouma.nineth.service.ContentAuditService;
 import com.izouma.nineth.service.UserDetailService;
 import com.izouma.nineth.service.UserDetailService;
+import com.izouma.nineth.service.UserService;
+import com.izouma.nineth.utils.SecurityUtils;
 import com.izouma.nineth.utils.excel.ExcelUtils;
 import com.izouma.nineth.utils.excel.ExcelUtils;
 import lombok.AllArgsConstructor;
 import lombok.AllArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -25,17 +28,27 @@ public class UserDetailController extends BaseController {
     private UserDetailService userDetailService;
     private UserDetailService userDetailService;
     private UserDetailRepo userDetailRepo;
     private UserDetailRepo userDetailRepo;
     private ContentAuditService contentAuditService;
     private ContentAuditService contentAuditService;
+    private UserService userService;
 
 
     //@PreAuthorize("hasRole('ADMIN')")
     //@PreAuthorize("hasRole('ADMIN')")
     @PostMapping("/save")
     @PostMapping("/save")
     public UserDetail save(@RequestBody UserDetail record) {
     public UserDetail save(@RequestBody UserDetail record) {
-
+        if (Objects.isNull(record)) {
+            throw new BusinessException("参数为空");
+        }
         if (StringUtils.isNotBlank(record.getAutograph())) {
         if (StringUtils.isNotBlank(record.getAutograph())) {
             if (!contentAuditService.auditText(record.getAutograph())) {
             if (!contentAuditService.auditText(record.getAutograph())) {
                 throw new BusinessException("简介包含非法内容");
                 throw new BusinessException("简介包含非法内容");
             }
             }
         }
         }
-        return userDetailRepo.save(record);
+        UserDetail newUserDetail = userDetailRepo.save(record);
+        if (StringUtils.isNotBlank(record.getNickname())) {
+            User user = userService.metaUpdate(SecurityUtils.getAuthenticatedUser().getId(), record.getNickname());
+            if (Objects.nonNull(user)) {
+                newUserDetail.setNickname(user.getNickname());
+            }
+        }
+        return newUserDetail;
     }
     }
 
 
     @PostMapping("/meta/save")
     @PostMapping("/meta/save")
@@ -103,9 +116,6 @@ public class UserDetailController extends BaseController {
         if(StringUtils.isNotBlank(userDetail.getMail())) {
         if(StringUtils.isNotBlank(userDetail.getMail())) {
             return true;
             return true;
         }
         }
-        if(StringUtils.isNotBlank(userDetail.getNickname())) {
-            return true;
-        }
         if(StringUtils.isNotBlank(userDetail.getOccupation())) {
         if(StringUtils.isNotBlank(userDetail.getOccupation())) {
             return true;
             return true;
         }
         }