zhoutg 6 роки тому
батько
коміт
c1873dc8b9

+ 1 - 0
user-service/src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -31,6 +31,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/userver/getSmsWithRegister").permitAll()
                 .antMatchers("/userver/getSmsWithResetPassword").permitAll()
                 .antMatchers("/userver/verifySmsVerification").permitAll()
+                .antMatchers("/user/resetPassword").permitAll()
                 .antMatchers("/**").authenticated();
 //        .antMatchers("/**").permitAll();
     }

+ 3 - 0
user-service/src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -33,7 +33,9 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/webjars/**", request)
                 || matchers("/user/login/**", request)
                 || matchers("/user/registry/**", request)
+                || matchers("/user/resetPassword", request)
                 || matchers("/user/test/**", request)
+                || matchers("/user/resetPassword", request)
                 || matchers("/druid/**", request)
                 || matchers("/actuator/**", request)
                 || matchers("/hystrix/**", request)
@@ -44,6 +46,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/userver/getSmsWithRegister", request)
                 || matchers("/userver/getSmsWithResetPassword", request)
                 || matchers("/userver/verifySmsVerification", request)
+
                 || matchers("/", request)){
                     return;
                 } else {

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

@@ -5,10 +5,12 @@ import com.diagbot.dto.LoginDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.JWT;
 import com.diagbot.entity.User;
+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.UserSaveVO;
@@ -72,7 +74,6 @@ public class UserFacade extends UserServiceImpl {
         if(!passwordEncoder.matches(password,user.getPassword())){
             throw new CommonException(ServiceErrorCode.USER_PASSWORD_ERROR);
         }
-
         JWT jwt = authServiceClient.getToken("Basic dWFhLXNlcnZpY2U6MTIzNDU2", "password", username, password);
         // 获得用户菜单
         if(null==jwt){
@@ -85,6 +86,27 @@ public class UserFacade extends UserServiceImpl {
     }
 
 
+    public RespDTO resetPassword(String username, String password) {
+        if (StringUtil.isBlank(username)){
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL,
+                    "请输入手机号!");
+        }
+        if (StringUtil.isBlank(password)){
+            throw new CommonException(CommonErrorCode.PARAM_IS_NULL,
+                    "请输入密码!");
+        }
+        User user= this.findByName(username);
+        if(null==user){
+            throw new CommonException(ServiceErrorCode.USER_NOT_FOUND);
+        }
+        PasswordEncoder passwordEncoder = PasswordEncoderFactories.createDelegatingPasswordEncoder();
+        String entryPassword= passwordEncoder.encode(password);
+        user.setPassword(entryPassword);
+        user.setGmtModified(new Date());
+        this.updateById(user);
+        return RespDTO.onSuc(true);
+    }
+
 
     //缓存演示
     @CachePut(value = CACHE_NAME, key = "'user:'+#p0['id']")

+ 15 - 0
user-service/src/main/java/com/diagbot/web/UserController.java

@@ -40,6 +40,7 @@ public class UserController {
         return RespDTO.onSuc(user);
     }
 
+
     @ApiOperation(value = "登录", notes = "username|password为必选项")
     @PostMapping("/login")
     @SysLogger("login")
@@ -47,9 +48,19 @@ public class UserController {
         return  userFacade.login(username, password);
     }
 
+
+    @ApiOperation(value = "重置密码", notes = "username|password为必选项")
+    @PostMapping("/resetPassword")
+    @SysLogger("resetPassword")
+    public RespDTO resetPassword(String username, String password){
+        return  userFacade.resetPassword(username, password);
+    }
+
+
     @ApiOperation(value = "根据用户名获取用户", notes = "根据用户名获取用户")
     @PostMapping("/getByUsername")
     @SysLogger("getByUsername")
+    @ApiIgnore
 //    @PreAuthorize("hasAnyAuthority('ROLE_USER')")
     public RespDTO getUserInfo(@RequestParam String username){
         //参数判读省略
@@ -60,6 +71,7 @@ public class UserController {
     @ApiOperation(value = "根据用户id获取用户信息", notes = "根据用户id获取用户信息")
     @PostMapping("/getById")
     @SysLogger("getUserInfoByID")
+    @ApiIgnore
     public RespDTO getUserInfoByID(Long id, Page page){
         //参数判读省略
         Page<Map> mapPage = new Page<>(page.getCurrent(),page.getSize());
@@ -96,6 +108,7 @@ public class UserController {
     @PostMapping("/addUser")
     @SysLogger("addUser")
     @Transactional
+    @ApiIgnore
     public RespDTO addUser(@RequestBody User user){
         //参数判读省略,判读该用户在数据库是否已经存在省略
         userFacade.saveUser(user);
@@ -112,6 +125,7 @@ public class UserController {
     @PostMapping("/updateUser")
     @SysLogger("updateUser")
     @Transactional
+    @ApiIgnore
     public RespDTO updateUser(@RequestBody User user){
         //参数判读省略,判读该用户在数据库是否已经存在省略
         userFacade.updateUser(user);
@@ -141,6 +155,7 @@ public class UserController {
     @PostMapping("/delUser")
     @SysLogger("delUser")
     @Transactional
+    @ApiIgnore
     public RespDTO delUser(Long id){
         return RespDTO.onSuc(userFacade.removeById(id));
     }

+ 2 - 2
user-service/src/main/resources/mapper/UserMapper.xml

@@ -18,7 +18,7 @@
 
     <select id="findByName" resultMap="BaseResultMap" parameterType="java.lang.String">
         select * from sys_user
-        where username = #{username}
+        where username = #{username} and is_deleted = 'N'
     </select>
 
     <select id="selectUserListPage" resultMap="BaseResultMap">
@@ -26,7 +26,7 @@
 		from sys_user u
         LEFT JOIN sys_user_role ur on u.id= ur.user_id
         LEFT JOIN sys_role r on ur.role_id=r.id
-        where 1=1
+        where u.is_deleted = 'N'
         <if test="user.id != null">
             and u.id = #{user.id}
         </if>