Browse Source

add: 修改邮箱

guo00guo 5 years ago
parent
commit
0694dcf992

+ 16 - 6
site/src/main/java/com/mooctest/crowd/site/anticorruption/impl/data/UserCommon.java

@@ -1,18 +1,18 @@
 package com.mooctest.crowd.site.anticorruption.impl.data;
 
+import com.mooctest.crowd.domain.domainobject.User;
+import com.mooctest.crowd.site.command.ModifyEmailCommand;
 import com.mooctest.crowd.site.command.RestPasswordCommand;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import java.lang.reflect.InvocationTargetException;
+
 @Data
 @AllArgsConstructor
 @NoArgsConstructor
 public class UserCommon extends UserInfo {
-   private Long id;
-
-   private String password;
-
    private String verifyCode;
 
    private String password2;
@@ -32,10 +32,20 @@ public class UserCommon extends UserInfo {
    private String unionid;
 
    public UserCommon(RestPasswordCommand command){
-      this.password = command.getPassword();
+      super.setId(command.getId());
+      super.setPassword(command.getPassword());
       this.oldPassword = command.getOldPassword();
       this.verifyCode = command.getVerifyCode();
       this.password2 = command.getPassword2();
-      this.id = command.getId();
+   }
+
+   public UserCommon(User user) throws InvocationTargetException, IllegalAccessException {
+      super(user);
+   }
+
+   public void obtainValue(ModifyEmailCommand command) {
+      super.setId(command.getId());
+      super.setEmail(command.getEmail());
+      this.verifyCode = command.getVerifyCode();
    }
 }

+ 7 - 0
site/src/main/java/com/mooctest/crowd/site/anticorruption/impl/data/UserInfo.java

@@ -3,7 +3,10 @@ package com.mooctest.crowd.site.anticorruption.impl.data;
 import com.mooctest.crowd.domain.domainobject.User;
 import com.mooctest.crowd.domain.factory.UserFactory;
 import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.apache.commons.beanutils.BeanUtils;
 
+import java.lang.reflect.InvocationTargetException;
 import java.sql.Timestamp;
 
 /**
@@ -12,6 +15,7 @@ import java.sql.Timestamp;
  * @date 2019-08-12 01:47
  */
 @Data
+@NoArgsConstructor
 public class UserInfo {
     private Long id;
     private String email;
@@ -43,4 +47,7 @@ public class UserInfo {
         user.setIsDeleted(0);
         return user;
     }
+    public UserInfo(User user) throws InvocationTargetException, IllegalAccessException {
+        BeanUtils.copyProperties(this, user);
+    }
 }

+ 18 - 0
site/src/main/java/com/mooctest/crowd/site/command/ModifyEmailCommand.java

@@ -0,0 +1,18 @@
+package com.mooctest.crowd.site.command;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @Author: xuexb
+ * @Date: 2019.7.5 14:24
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class ModifyEmailCommand {
+    private Long id;
+    private String email;
+    private String verifyCode;
+}

+ 9 - 2
site/src/main/java/com/mooctest/crowd/site/controller/UserController.java

@@ -13,15 +13,14 @@ import com.mooctest.crowd.site.data.vo.BaseAuthVO;
 import com.mooctest.crowd.site.data.vo.EnterpriseAuthVO;
 import com.mooctest.crowd.site.data.vo.PersonalAuthVO;
 import com.mooctest.crowd.site.service.UserService;
-import org.apache.juli.logging.Log;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpRequest;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
+import java.lang.reflect.InvocationTargetException;
 import java.util.List;
 
 /**
@@ -89,6 +88,14 @@ public class UserController extends BaseController {
     }
 
     /**
+     * 绑定邮箱
+     */
+    @RequestMapping(value = "/user/email", method = RequestMethod.PUT)
+    public ResponseVO<UserCommon> updateEmail(@RequestBody ModifyEmailCommand modifyEmailCommand, HttpServletRequest request) throws InvocationTargetException, IllegalAccessException {
+        return new ResponseVO<>(ServerCode.SUCCESS, userService.updateEmail(modifyEmailCommand, request));
+    }
+
+    /**
      * 申请个人实名认证
      *
      * @param userId

File diff suppressed because it is too large
+ 0 - 1
site/src/main/java/com/mooctest/crowd/site/service/UserService.java


File diff suppressed because it is too large
+ 0 - 0
site/src/main/java/com/mooctest/crowd/site/service/impl/UserServiceImpl.java


Some files were not shown because too many files changed in this diff