|
@@ -9,6 +9,7 @@ import com.ym.mec.auth.web.controller.queryInfo.SysUserQueryInfo;
|
|
|
import com.ym.mec.common.controller.BaseController;
|
|
|
import com.ym.mec.common.security.AuthUser;
|
|
|
import com.ym.mec.common.security.SecurityUtils;
|
|
|
+import com.ym.mec.common.validcode.SmsCodeService;
|
|
|
import io.swagger.annotations.*;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -29,6 +30,8 @@ public class UserController extends BaseController {
|
|
|
private SysRoleService sysRoleService;
|
|
|
@Autowired
|
|
|
private SysUserRoleService sysUserRoleService;
|
|
|
+ @Autowired
|
|
|
+ private SmsCodeService smsCodeService;
|
|
|
|
|
|
/*@ApiOperation("根据用户名查询用户信息接口")
|
|
|
@ApiImplicitParam(name = "username", value = "用户名", required = true, dataType = "String", paramType = "path")
|
|
@@ -59,14 +62,71 @@ public class UserController extends BaseController {
|
|
|
@ApiOperation(value = "新增用户")
|
|
|
@PostMapping("/add")
|
|
|
public Object add(@RequestBody SysUser sysUser) {
|
|
|
- Date date = new Date();
|
|
|
- sysUser.setCreateTime(date);
|
|
|
- sysUser.setUpdateTime(date);
|
|
|
- sysUser.setPassword(new BCryptPasswordEncoder().encode(sysUser.getPassword()));
|
|
|
+// sysUser.setPassword(new BCryptPasswordEncoder().encode(sysUser.getPassword()));
|
|
|
sysUserService.insert(sysUser);
|
|
|
return succeed();
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "设置密码")
|
|
|
+ @PostMapping("/setPassword")
|
|
|
+ @ApiImplicitParams({ @ApiImplicitParam(name = "mobile", value = "手机号", required = true, dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "authCode", value = "验证码", required = true, dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "password", value = "密码", required = true, dataType = "String") })
|
|
|
+ public Object setPassword(@RequestBody HashMap<String,String> param) {
|
|
|
+ String mobile = param.get("mobile");
|
|
|
+ String authCode = param.get("authCode");
|
|
|
+ String password = param.get("password");
|
|
|
+ if(StringUtils.isEmpty(mobile) || StringUtils.isEmpty(authCode) || StringUtils.isEmpty(password)){
|
|
|
+ return failed();
|
|
|
+ }
|
|
|
+ SysUser sysUser = sysUserService.queryByPhone(mobile);
|
|
|
+ if(sysUser == null){
|
|
|
+ return failed("用户不存在");
|
|
|
+ }
|
|
|
+ if(smsCodeService.verifyValidCode(mobile, authCode)){
|
|
|
+ password = new BCryptPasswordEncoder().encode(password);
|
|
|
+ sysUserService.updatePassword(mobile,password);
|
|
|
+ return succeed();
|
|
|
+ }else {
|
|
|
+ return failed("验证码错误");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation(value = "修改密码")
|
|
|
+ @PostMapping("/updatePassword")
|
|
|
+ @ApiImplicitParams({ @ApiImplicitParam(name = "mobile", value = "手机号", required = true, dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "authCode", value = "验证码", required = true, dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "newPassword", value = "新密码", required = true, dataType = "String"),
|
|
|
+ @ApiImplicitParam(name = "password", value = "旧密码", required = true, dataType = "String") })
|
|
|
+ public Object updatePassword(@RequestBody HashMap<String,String> param) {
|
|
|
+ String mobile = param.get("mobile");
|
|
|
+ String authCode = param.get("authCode");
|
|
|
+ String password = param.get("password");
|
|
|
+ String newPassword = param.get("newPassword");
|
|
|
+ if(StringUtils.isEmpty(mobile) || StringUtils.isEmpty(authCode) || StringUtils.isEmpty(password) || StringUtils.isEmpty(newPassword)){
|
|
|
+ return failed("参数校验异常");
|
|
|
+ }
|
|
|
+ SysUser sysUser = sysUserService.queryByPhone(mobile);
|
|
|
+ if(sysUser == null){
|
|
|
+ return failed("用户不存在");
|
|
|
+ }
|
|
|
+ if(smsCodeService.verifyValidCode(mobile, authCode)){
|
|
|
+ if(StringUtils.equals(password,newPassword)){
|
|
|
+ return failed("新密码与旧密码一致");
|
|
|
+ }
|
|
|
+ BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
|
|
|
+ newPassword = bCryptPasswordEncoder.encode(newPassword);
|
|
|
+ if(bCryptPasswordEncoder.matches(password,sysUser.getPassword())){
|
|
|
+ sysUserService.updatePassword(mobile,newPassword);
|
|
|
+ return succeed();
|
|
|
+ }else {
|
|
|
+ return failed("密码错误");
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ return failed("验证码错误");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/*@ApiOperation(value = "删除用户")
|
|
|
@DeleteMapping("/del/{id}")
|
|
|
public Object del(@ApiParam(value = "用户编号", required = true) @PathVariable("id") Integer id) {
|
|
@@ -81,7 +141,6 @@ public class UserController extends BaseController {
|
|
|
Date date = new Date();
|
|
|
sysUser.setId(user.getUserId());
|
|
|
sysUser.setUpdateTime(date);
|
|
|
- sysUser.setPassword(new BCryptPasswordEncoder().encode(sysUser.getPassword()));
|
|
|
sysUserService.update(sysUser);
|
|
|
return succeed();
|
|
|
}
|