Browse Source

注册业务

zhoutg 6 years ago
parent
commit
6a8a2f8517

+ 11 - 1
user-service/src/main/java/com/diagbot/facade/UserFacade.java

@@ -9,8 +9,11 @@ import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
 import com.diagbot.exception.ServiceErrorCode;
 import com.diagbot.service.impl.UserServiceImpl;
+import com.diagbot.util.BeanUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.util.UserUtils;
+import com.diagbot.vo.ImgVerVerVO;
+import com.diagbot.vo.UserImgVerVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cache.annotation.CacheEvict;
 import org.springframework.cache.annotation.CachePut;
@@ -32,8 +35,14 @@ public class UserFacade extends UserServiceImpl {
 
     @Autowired
     AuthServiceClient authServiceClient;
+    @Autowired
+    VerFacade verFacade;
 
-    public User createUser(User user){
+    public User createUser(UserImgVerVO userImgVerVO){
+        User user = new User();
+        BeanUtil.copyProperties(userImgVerVO, user);
+        ImgVerVerVO imgVerVerVO = new ImgVerVerVO();
+        BeanUtil.copyProperties(userImgVerVO, imgVerVerVO);
         User bean = findByName(user.getUsername());
         if(bean != null) {
             throw new CommonException(ServiceErrorCode.USER_EXIST);
@@ -44,6 +53,7 @@ public class UserFacade extends UserServiceImpl {
         if(StringUtil.isEmpty(user.getEmail())) {
             throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "请输入邮箱!");
         }
+        verFacade.verifyImgVerification(imgVerVerVO); //保存时再次校验图形验证码,主要是为了防止跳过前端校验直接调用接口
 
         PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
         String entryPassword= passwordEncoder.encode(user.getPassword());

+ 2 - 2
user-service/src/main/java/com/diagbot/service/impl/ImgVerServiceImpl.java

@@ -132,9 +132,9 @@ public class ImgVerServiceImpl implements ImgVerService {
                     "图片验证码唯一标志不一致!");
         }
         if (!(imgVerInfoRes.getCode()).equals(imgVerInfo.getCode().toUpperCase())) {
-            log.info("用户图片验证码不一致!验证码:{}", imgVerInfo.getCode());
+            log.info("输入图形验证码有误!验证码:{}", imgVerInfo.getCode());
             throw new CommonException(CommonErrorCode.PARAM_IS_ERROR,
-                    "用户图片验证码不一致!");
+                    "输入图形验证码有误!");
         }
         //判断是否过期
         if (!DateUtil.after(imgVerInfoRes.getExpireTime(), DateUtil.now())) {

+ 13 - 14
user-service/src/main/java/com/diagbot/web/UserController.java

@@ -4,9 +4,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.User;
-import com.diagbot.exception.CommonErrorCode;
-import com.diagbot.exception.CommonException;
 import com.diagbot.facade.UserFacade;
+import com.diagbot.vo.UserImgVerVO;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -36,9 +35,9 @@ public class UserController {
     @PostMapping("/registry")
     @SysLogger("registry")
     @Transactional
-    public RespDTO createUser(@RequestBody User user){
+    public RespDTO createUser(@RequestBody UserImgVerVO userImgVerVO){
         //参数判读省略,判读该用户在数据库是否已经存在省略
-        userFacade.createUser(user);
+        User user = userFacade.createUser(userImgVerVO);
 //        throw new CommonException(ErrorCode.FAIL);
         return RespDTO.onSuc(user);
     }
@@ -73,16 +72,16 @@ public class UserController {
         return RespDTO.onSuc(user);
     }
 
-    @ApiOperation(value = "注册事务", notes = "username和password为必选项")
-    @PostMapping("/registryTran")
-    @SysLogger("registryTran")
-    @Transactional
-    public RespDTO createUserTran(@RequestBody User user){
-        //参数判读省略,判读该用户在数据库是否已经存在省略
-        userFacade.createUser(user);
-        throw new CommonException(CommonErrorCode.FAIL);
-//        return RespDTO.onSuc(user);
-    }
+//    @ApiOperation(value = "注册事务", notes = "username和password为必选项")
+//    @PostMapping("/registryTran")
+//    @SysLogger("registryTran")
+//    @Transactional
+//    public RespDTO createUserTran(@RequestBody User user){
+//        //参数判读省略,判读该用户在数据库是否已经存在省略
+//        userFacade.createUser(user);
+//        throw new CommonException(CommonErrorCode.FAIL);
+////        return RespDTO.onSuc(user);
+//    }
 
 //    @Autowired
 //    private AmqpTemplate rabbitTemplate;