完善验证码和登录的接口
This commit is contained in:
@@ -3,13 +3,14 @@ package com.jsh.erp.controller;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jsh.erp.constants.BusinessConstants;
|
||||
import com.jsh.erp.constants.ExceptionConstants;
|
||||
import com.jsh.erp.datasource.entities.Tenant;
|
||||
import com.jsh.erp.datasource.entities.User;
|
||||
import com.jsh.erp.datasource.entities.UserEx;
|
||||
import com.jsh.erp.datasource.vo.TreeNodeEx;
|
||||
import com.jsh.erp.exception.BusinessParamCheckingException;
|
||||
import com.jsh.erp.service.log.LogService;
|
||||
import com.jsh.erp.exception.BusinessRunTimeException;
|
||||
import com.jsh.erp.service.redis.RedisService;
|
||||
import com.jsh.erp.service.role.RoleService;
|
||||
import com.jsh.erp.service.tenant.TenantService;
|
||||
@@ -31,6 +32,7 @@ import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import static com.jsh.erp.utils.ResponseJsonUtil.returnJson;
|
||||
|
||||
@@ -63,13 +65,15 @@ public class UserController {
|
||||
|
||||
@PostMapping(value = "/login")
|
||||
@ApiOperation(value = "登录")
|
||||
public BaseResponseInfo login(@RequestBody User userParam,
|
||||
HttpServletRequest request)throws Exception {
|
||||
public BaseResponseInfo login(@RequestBody UserEx userParam, HttpServletRequest request)throws Exception {
|
||||
BaseResponseInfo res = new BaseResponseInfo();
|
||||
try {
|
||||
Map<String, Object> data = userService.login(userParam, request);
|
||||
userService.validateCaptcha(userParam.getCode(), userParam.getUuid());
|
||||
Map<String, Object> data = userService.login(userParam.getLoginName().trim(), userParam.getPassword().trim(), request);
|
||||
res.code = 200;
|
||||
res.data = data;
|
||||
} catch (BusinessRunTimeException e) {
|
||||
throw new BusinessRunTimeException(e.getCode(), e.getMessage());
|
||||
} catch(Exception e){
|
||||
logger.error(e.getMessage(), e);
|
||||
res.code = 500;
|
||||
@@ -91,7 +95,7 @@ public class UserController {
|
||||
res.data = "微信未绑定";
|
||||
} else {
|
||||
logger.info("微信登录:" + user.getLoginName());
|
||||
Map<String, Object> data = userService.login(user, request);
|
||||
Map<String, Object> data = userService.login(user.getLoginName().trim(), user.getPassword().trim(), request);
|
||||
res.code = 200;
|
||||
res.data = data;
|
||||
}
|
||||
@@ -313,6 +317,7 @@ public class UserController {
|
||||
HttpServletRequest request)throws Exception{
|
||||
JSONObject result = ExceptionConstants.standardSuccess();
|
||||
ue.setUsername(ue.getLoginName());
|
||||
userService.validateCaptcha(ue.getCode(), ue.getUuid());
|
||||
userService.checkLoginName(ue); //检查登录名
|
||||
ue = userService.registerUser(ue,manageRoleId,request);
|
||||
return result;
|
||||
@@ -408,13 +413,13 @@ public class UserController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取随机校验码
|
||||
* 获取随机校验码【后续会废弃】
|
||||
* @param response
|
||||
* @param key
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/randomImage/{key}")
|
||||
@ApiOperation(value = "获取随机校验码")
|
||||
@ApiOperation(value = "获取随机校验码【后续会废弃】")
|
||||
public BaseResponseInfo randomImage(HttpServletResponse response,@PathVariable String key){
|
||||
BaseResponseInfo res = new BaseResponseInfo();
|
||||
try {
|
||||
@@ -433,6 +438,34 @@ public class UserController {
|
||||
return res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取随机校验码
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/randomImage")
|
||||
@ApiOperation(value = "获取随机校验码")
|
||||
public BaseResponseInfo randomImage(HttpServletResponse response){
|
||||
BaseResponseInfo res = new BaseResponseInfo();
|
||||
try {
|
||||
Map<String, Object> data = new HashMap<>();
|
||||
String uuid = UUID.randomUUID().toString().replaceAll("-", "") + "";
|
||||
String verifyKey = BusinessConstants.CAPTCHA_CODE_KEY + uuid;
|
||||
String codeNum = Tools.getCharAndNum(4);
|
||||
redisService.storageCaptchaObject(verifyKey, codeNum);
|
||||
String base64 = RandImageUtil.generate(codeNum);
|
||||
data.put("uuid", uuid);
|
||||
data.put("base64", base64);
|
||||
res.code = 200;
|
||||
res.data = data;
|
||||
} catch (Exception e) {
|
||||
logger.error(e.getMessage(), e);
|
||||
res.code = 500;
|
||||
res.data = "获取失败";
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量设置状态-启用或者禁用
|
||||
* @param jsonObject
|
||||
|
||||
Reference in New Issue
Block a user