This commit is contained in:
caozehui
2024-11-18 10:23:50 +08:00
parent f4109275d7
commit 8206a51c6c
10 changed files with 82 additions and 56 deletions

View File

@@ -71,4 +71,12 @@ public interface DeviceValidMessage {
String PROTOCOL_FORMAT_ERROR = "通讯协议格式错误请检查protocol参数";
String PLAN_ID_FORMAT_ERROR = "检测计划ID格式错误请检查planId参数";
String STANDARD_TIME_FORMAT_ERROR = "标准推行时间格式错误请检查standardTime参数";
String SCRIPT_TYPE_NOT_BLANK = "检测脚本类型不能为空请检查scriptType参数";
String STANDARD_NAME_NOT_BLANK = "参照标准名称不能为空请检查standardName参数";
String STANDARD_TIME_NOT_BLANK = "标准推行时间不能为空请检查standardTime参数";
}

View File

@@ -6,9 +6,9 @@ spring:
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/pqs9100?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=CTT
url: jdbc:mysql://192.168.1.24:13306/pqs9100?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=CTT
username: root
password: 123456
password: njcnpqs
#初始化建立物理连接的个数、最小、最大连接数
initial-size: 5
min-idle: 5

View File

@@ -28,7 +28,11 @@
<version>2.3.12</version>
</dependency>
<dependency>
<groupId>com.njcn.gather</groupId>
<artifactId>user</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>

View File

@@ -1,16 +1,42 @@
package com.njcn.gather.system.auth.controller;
import cn.hutool.core.util.StrUtil;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
import com.njcn.common.pojo.constant.SecurityConstants;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.JwtUtil;
import com.njcn.common.utils.LogUtil;
import com.njcn.gather.system.auth.pojo.Token;
import com.njcn.gather.user.pojo.constant.UserValidMessage;
import com.njcn.gather.user.user.pojo.param.SysUserParam;
import com.njcn.gather.user.user.pojo.po.SysUser;
import com.njcn.gather.user.user.service.ISysUserService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.utils.HttpResultUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.logging.log4j.util.Strings;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
@Slf4j
@RestController
@RequestMapping("admin")
public class AuthController {
@Api(tags = "登录/注销")
@RequestMapping("/admin")
@RequiredArgsConstructor
public class AuthController extends BaseController {
private final ISysUserService sysUserService;
@RequestMapping("/login")
public HttpResult<Token> login() {
@@ -31,4 +57,36 @@ public class AuthController {
result.setData("退出成功");
return result;
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.AUTHENTICATE)
@PostMapping("/login1")
@ApiOperation("登录")
public HttpResult<Object> login(@RequestBody SysUserParam.LoginParam param) {
String methodDescribe = getMethodDescribe("login");
LogUtil.njcnDebug(log, "{},登录参数为:{}", methodDescribe, param);
SysUser user = sysUserService.getUserByLoginNameAndPassword(param.getUsername(), param.getPassword());
if (user == null) {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, UserValidMessage.LOGIN_FAILED, methodDescribe);
} else {
String tokenStr = JwtUtil.generateToken(user.getId());
Token token = new Token();
token.setAccessToken(tokenStr);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, token, methodDescribe);
}
}
@OperateInfo(info = LogEnum.SYSTEM_SERIOUS, operateType = OperateType.LOGOUT)
@ApiOperation("注销登录")
@PostMapping("/logout1")
public HttpResult<Object> logout(HttpServletRequest request) {
String methodDescribe = getMethodDescribe("logout");
LogUtil.njcnDebug(log, "{},注销登录", methodDescribe);
String authorization = request.getHeader(SecurityConstants.AUTHORIZATION_KEY);
if (StrUtil.isNotBlank(authorization)) {
String token = authorization.replace(SecurityConstants.AUTHORIZATION_PREFIX, Strings.EMPTY);
JwtUtil.invalidateToken(token);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, false, methodDescribe);
}
}

View File

@@ -44,7 +44,7 @@ public class DictTreeController extends BaseController {
private final IDictTreeService dictTreeService;
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/likeName")
@GetMapping("/getTree")
@ApiOperation("按照名称模糊查询字典树")
@ApiImplicitParam(name = "keyword", value = "查询参数", required = true)
public HttpResult<List<DictTree>> getDictTreeByKeyword(@RequestParam String keyword) {
@@ -176,17 +176,6 @@ public class DictTreeController extends BaseController {
List<DictTree> result = dictTreeService.queryAllByType(type);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/queryTree")
@ApiOperation("树形字典树结构展示")
public HttpResult<List<DictTree>> queryTree() {
String methodDescribe = getMethodDescribe("queryTree");
List<DictTree> result = dictTreeService.queryTree();
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
}

View File

@@ -20,7 +20,7 @@ public interface UserValidMessage {
String LOGIN_NAME_NOT_BLANK = "登录名不能为空请检查loginName参数";
String LOGIN_NAME_FORMAT_ERROR = "登录名格式错误需3-16位的英文字母或数字请检查loginName参数";
String LOGIN_NAME_FORMAT_ERROR = "登录名格式错误,需以字母开头,长度为3-16位的字母或数字";
String PASSWORD_NOT_BLANK = "密码不能为空请检查password参数";

View File

@@ -38,7 +38,7 @@ public class SysFunctionController extends BaseController {
private final ISysRoleFunctionService sysRoleFunctionService;
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/likeName")
@GetMapping("/getTree")
@ApiOperation("按照名称模糊查询菜单树")
@ApiImplicitParam(name = "keyword", value = "查询参数", required = true)
public HttpResult<List<SysFunction>> getFunctionTreeByKeyword(@RequestParam @Validated String keyword) {
@@ -48,15 +48,6 @@ public class SysFunctionController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/functionTree")
@ApiOperation("菜单树")
public HttpResult<List<SysFunction>> getFunctionTree() {
String methodDescribe = getMethodDescribe("getFunctionTree");
List<SysFunction> list = sysFunctionService.getFunctionTree(true);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@GetMapping("/functionTreeNoButton")
@ApiOperation("菜单树-不包括按钮")

View File

@@ -43,32 +43,6 @@ public class SysUserController extends BaseController {
private final ISysUserService sysUserService;
@OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.AUTHENTICATE)
@PostMapping("/login")
@ApiOperation("登录")
public HttpResult<Object> login(@RequestBody SysUserParam.LoginParam param) {
String methodDescribe = getMethodDescribe("login");
LogUtil.njcnDebug(log, "{},登录参数为:{}", methodDescribe, param);
SysUser user = sysUserService.getUserByLoginNameAndPassword(param.getLoginName(), param.getPassword());
if (user == null) {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, UserValidMessage.LOGIN_FAILED, methodDescribe);
} else {
String token = JwtUtil.generateToken(user.getId());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, token, methodDescribe);
}
}
@OperateInfo(info = LogEnum.SYSTEM_SERIOUS, operateType = OperateType.LOGOUT)
@ApiOperation("注销登录")
@PostMapping("/logout")
public HttpResult<Object> logout(HttpServletRequest request) {
String methodDescribe = getMethodDescribe("logout");
LogUtil.njcnDebug(log, "{},注销登录", methodDescribe);
String token = request.getHeader("Authorization").replace(SecurityConstants.AUTHORIZATION_PREFIX, Strings.EMPTY);
JwtUtil.invalidateToken(token);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, methodDescribe);
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@PostMapping("/list")
@ApiOperation("分页查询用户列表")

View File

@@ -107,7 +107,7 @@ public class SysUserParam {
@ApiModelProperty("登录名")
@NotBlank(message = UserValidMessage.LOGIN_NAME_NOT_BLANK)
@Pattern(regexp = PatternRegex.LOGIN_NAME_REGEX, message = UserValidMessage.LOGIN_NAME_FORMAT_ERROR)
private String loginName;
private String username;
@ApiModelProperty("密码")
@NotBlank(message = UserValidMessage.PASSWORD_NOT_BLANK)

View File

@@ -176,9 +176,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
@Override
public SysUser getUserByLoginNameAndPassword(String loginName, String password) {
String secretkey = Sm4Utils.globalSecretKey;
Sm4Utils sm4 = new Sm4Utils(secretkey);
return this.lambdaQuery().ne(SysUser::getState, UserState.DELETE)
.eq(SysUser::getLoginName, loginName)
.eq(SysUser::getPassword, password).one();
.eq(SysUser::getPassword, sm4.encryptData_ECB(password)).one();
}
@Override