diff --git a/dolphin-commons/dolphin-common-core/pom.xml b/dolphin-commons/dolphin-common-core/pom.xml
index 03e1d0c..b66d716 100644
--- a/dolphin-commons/dolphin-common-core/pom.xml
+++ b/dolphin-commons/dolphin-common-core/pom.xml
@@ -16,6 +16,10 @@
org.springframework.boot
spring-boot-starter-web
+
+ cn.hutool.v7
+ hutool-all
+
org.projectlombok
lombok
diff --git a/dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionAdvice.java b/dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionHandler.java
similarity index 72%
rename from dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionAdvice.java
rename to dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionHandler.java
index 1a5e3e6..6ecc4e5 100644
--- a/dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionAdvice.java
+++ b/dolphin-commons/dolphin-common-core/src/main/java/day/gitlab/dolphin/common/core/exception/GlobalExceptionHandler.java
@@ -1,13 +1,11 @@
package day.gitlab.dolphin.common.core.exception;
import day.gitlab.dolphin.common.core.entity.Result;
-import org.springframework.stereotype.Component;
-import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
-@Component
-@ControllerAdvice
-public class GlobalExceptionAdvice {
+@RestControllerAdvice
+public class GlobalExceptionHandler {
@ExceptionHandler(value = BusinessException.class)
public Result handleBusinessException(BusinessException e) {
diff --git a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/AuthenticationFilter.java b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/AuthenticationFilter.java
index 5f67a8b..9a4b0cd 100644
--- a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/AuthenticationFilter.java
+++ b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/AuthenticationFilter.java
@@ -40,6 +40,7 @@ public class AuthenticationFilter extends OncePerRequestFilter {
// 在未启用或是忽略校验的地址时直接放行
if (!securityConfig.isEnabled() || authorityIgnoreInitializer.isIgnoreUrl(request)) {
filterChain.doFilter(request, response);
+ return;
}
try {
@@ -51,6 +52,11 @@ public class AuthenticationFilter extends OncePerRequestFilter {
response.setContentType(MediaType.APPLICATION_JSON_VALUE);
response.setCharacterEncoding("UTF-8");
response.getWriter().write(new ObjectMapper().writeValueAsString(Result.failure(e)));
+ } catch (Exception e) {
+ response.setStatus(500);
+ response.setContentType(MediaType.APPLICATION_JSON_VALUE);
+ response.setCharacterEncoding("UTF-8");
+ response.getWriter().write(new ObjectMapper().writeValueAsString(Result.failure(e.getMessage())));
} finally {
SecurityContextHolder.clearAuthentication();
}
diff --git a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/annotation/AuthorityIgnoreInitializer.java b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/annotation/AuthorityIgnoreInitializer.java
index 8e81a2b..3b584bc 100644
--- a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/annotation/AuthorityIgnoreInitializer.java
+++ b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/annotation/AuthorityIgnoreInitializer.java
@@ -2,6 +2,7 @@ package day.gitlab.dolphin.common.security.annotation;
import day.gitlab.dolphin.common.security.config.SecurityConfig;
import jakarta.servlet.http.HttpServletRequest;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
@@ -21,6 +22,7 @@ import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
+@Slf4j
@Component
public class AuthorityIgnoreInitializer implements ApplicationContextAware {
@@ -34,6 +36,8 @@ public class AuthorityIgnoreInitializer implements ApplicationContextAware {
RequestMappingHandlerMapping requestMappingHandlerMapping = ctx.getBean(RequestMappingHandlerMapping.class);
Map handlerMethods = requestMappingHandlerMapping.getHandlerMethods();
+ log.info("authorityIgnoreInitialize begin, contextPath: {}", contextPath);
+
if (StringUtils.hasText(securityConfig.getIgnoreUrls())) {
Arrays.stream(securityConfig.getIgnoreUrls().split(","))
.filter(StringUtils::hasText)
@@ -45,6 +49,7 @@ public class AuthorityIgnoreInitializer implements ApplicationContextAware {
.map(IgnoreUrl::new)
.forEach(this.ignoreUrls::add);
}
+ log.info("authorityIgnoreInitialize default urls: {}", this.ignoreUrls);
for (RequestMappingInfo mappingInfo : handlerMethods.keySet()) {
HandlerMethod handlerMethod = handlerMethods.get(mappingInfo);
@@ -75,11 +80,19 @@ public class AuthorityIgnoreInitializer implements ApplicationContextAware {
urlPrefix.add(prefixUrl);
}
- urlPrefix.stream()
+ List methodIgnoreUrls = urlPrefix.stream()
.flatMap(sub -> mappingInfo.getPatternValues().stream().filter(StringUtils::hasText).map(s -> sub + s))
.map(IgnoreUrl::new)
- .forEach(this.ignoreUrls::add);
+ .toList();
+ log.info("authorityIgnoreInitialize class [{}] method [{}] urls: {}", beanClass.getCanonicalName(), handlerMethod.getMethod().getName(), methodIgnoreUrls);
+ if (!methodIgnoreUrls.isEmpty()) {
+ ignoreUrls.addAll(methodIgnoreUrls);
+ }
}
+
+ log.info("authorityIgnoreInitialize current urls: {}", this.ignoreUrls);
+
+ log.info("authorityIgnoreInitialize end");
}
public boolean isIgnoreUrl(HttpServletRequest request) {
diff --git a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/jwt/Jwt.java b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/jwt/Jwt.java
index e77de70..207ff48 100644
--- a/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/jwt/Jwt.java
+++ b/dolphin-commons/dolphin-common-security/src/main/java/day/gitlab/dolphin/common/security/jwt/Jwt.java
@@ -1,5 +1,6 @@
package day.gitlab.dolphin.common.security.jwt;
+import cn.hutool.v7.crypto.digest.DigestUtil;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.security.Keys;
@@ -64,7 +65,7 @@ public class Jwt {
}
private SecretKey getSigningKey() {
- byte[] keyBytes = secret.getBytes(StandardCharsets.UTF_8);
+ byte[] keyBytes = DigestUtil.sha256(secret);
return Keys.hmacShaKeyFor(keyBytes);
}
}
diff --git a/dolphin-compose/pom.xml b/dolphin-compose/pom.xml
index 1ef58f7..d1d55a9 100644
--- a/dolphin-compose/pom.xml
+++ b/dolphin-compose/pom.xml
@@ -15,7 +15,7 @@
day.gitlab
- dolphin-common-security
+ dolphin-module-core
${project.version}
@@ -23,6 +23,11 @@
dolphin-module-rbac
${project.version}
+
+ day.gitlab
+ dolphin-module-auth
+ ${project.version}
+
org.springframework.boot
@@ -52,6 +57,19 @@
postgresql
runtime
+
+
+ io.jsonwebtoken
+ jjwt-api
+
+
+ io.jsonwebtoken
+ jjwt-impl
+
+
+ io.jsonwebtoken
+ jjwt-jackson
+
org.projectlombok
diff --git a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/dto/LoginDTO.java b/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/dto/LoginDTO.java
deleted file mode 100644
index c867800..0000000
--- a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/dto/LoginDTO.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package day.gitlab.dolphin.authorize.entity.dto;
-
-import lombok.Data;
-
-@Data
-public class LoginDTO {
-
- private String username;
-
- private String password;
-}
diff --git a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/vo/LoginVO.java b/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/vo/LoginVO.java
deleted file mode 100644
index 18b8e66..0000000
--- a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/entity/vo/LoginVO.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package day.gitlab.dolphin.authorize.entity.vo;
-
-import lombok.Data;
-
-@Data
-public class LoginVO {
-
- private String accessToken;
-
- private String refreshToken;
-}
diff --git a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/AuthorizeService.java b/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/AuthorizeService.java
deleted file mode 100644
index ff0dff6..0000000
--- a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/AuthorizeService.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package day.gitlab.dolphin.authorize.service;
-
-import day.gitlab.dolphin.authorize.entity.dto.LoginDTO;
-import day.gitlab.dolphin.authorize.entity.vo.LoginVO;
-import day.gitlab.dolphin.common.security.AuthenticationProvider;
-
-public interface AuthorizeService extends AuthenticationProvider {
-
- LoginVO login(LoginDTO loginDTO);
-}
diff --git a/dolphin-modules/dolphin-module-auth/pom.xml b/dolphin-modules/dolphin-module-auth/pom.xml
new file mode 100644
index 0000000..cca468d
--- /dev/null
+++ b/dolphin-modules/dolphin-module-auth/pom.xml
@@ -0,0 +1,65 @@
+
+
+ 4.0.0
+
+ day.gitlab
+ dolphin-modules
+ 0.0.1-SNAPSHOT
+
+
+ dolphin-module-auth
+ jar
+
+
+
+
+ day.gitlab
+ dolphin-common-security
+ ${project.version}
+
+
+ day.gitlab
+ dolphin-common-mybatis
+ ${project.version}
+
+
+ day.gitlab
+ dolphin-module-rbac
+ ${project.version}
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+
+ com.mybatis-flex
+ mybatis-flex-spring-boot3-starter
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+
+
diff --git a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/controller/AuthorizeController.java b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/controller/AuthController.java
similarity index 61%
rename from dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/controller/AuthorizeController.java
rename to dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/controller/AuthController.java
index df33daf..5957b8f 100644
--- a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/controller/AuthorizeController.java
+++ b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/controller/AuthController.java
@@ -1,7 +1,7 @@
-package day.gitlab.dolphin.authorize.controller;
+package day.gitlab.dolphin.auth.controller;
-import day.gitlab.dolphin.authorize.entity.dto.LoginDTO;
-import day.gitlab.dolphin.authorize.service.AuthorizeService;
+import day.gitlab.dolphin.auth.entity.dto.LoginDTO;
+import day.gitlab.dolphin.auth.service.AuthService;
import day.gitlab.dolphin.common.core.entity.Result;
import day.gitlab.dolphin.common.security.annotation.AuthorityIgnore;
import jakarta.annotation.Resource;
@@ -11,15 +11,15 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
-@RequestMapping("/authorize")
-public class AuthorizeController {
+@RequestMapping("/auth")
+public class AuthController {
@Resource
- private AuthorizeService authorizeService;
+ private AuthService authService;
@AuthorityIgnore
@PostMapping("/login")
public Result login(@RequestBody LoginDTO loginDTO) {
- return Result.success(authorizeService.login(loginDTO));
+ return Result.success(authService.login(loginDTO));
}
}
diff --git a/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/dto/LoginDTO.java b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/dto/LoginDTO.java
new file mode 100644
index 0000000..231658e
--- /dev/null
+++ b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/dto/LoginDTO.java
@@ -0,0 +1,14 @@
+package day.gitlab.dolphin.auth.entity.dto;
+
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+
+@Data
+public class LoginDTO {
+
+ @NotNull
+ private String username;
+
+ @NotNull
+ private String password;
+}
diff --git a/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/vo/LoginVO.java b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/vo/LoginVO.java
new file mode 100644
index 0000000..6ee1acf
--- /dev/null
+++ b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/entity/vo/LoginVO.java
@@ -0,0 +1,17 @@
+package day.gitlab.dolphin.auth.entity.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class LoginVO {
+
+ private String accessToken;
+
+ private String refreshToken;
+}
diff --git a/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/AuthService.java b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/AuthService.java
new file mode 100644
index 0000000..2735034
--- /dev/null
+++ b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/AuthService.java
@@ -0,0 +1,9 @@
+package day.gitlab.dolphin.auth.service;
+
+import day.gitlab.dolphin.auth.entity.dto.LoginDTO;
+import day.gitlab.dolphin.auth.entity.vo.LoginVO;
+
+public interface AuthService {
+
+ LoginVO login(LoginDTO loginDTO);
+}
diff --git a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/impl/AuthorizeServiceImpl.java b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/impl/AuthServiceImpl.java
similarity index 57%
rename from dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/impl/AuthorizeServiceImpl.java
rename to dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/impl/AuthServiceImpl.java
index b09ce1b..cfa0175 100644
--- a/dolphin-compose/src/main/java/day/gitlab/dolphin/authorize/service/impl/AuthorizeServiceImpl.java
+++ b/dolphin-modules/dolphin-module-auth/src/main/java/day/gitlab/dolphin/auth/service/impl/AuthServiceImpl.java
@@ -1,16 +1,16 @@
-package day.gitlab.dolphin.authorize.service.impl;
+package day.gitlab.dolphin.auth.service.impl;
import cn.hutool.v7.crypto.digest.BCrypt;
-import com.mybatisflex.core.query.QueryCondition;
-import day.gitlab.dolphin.authorize.entity.dto.LoginDTO;
-import day.gitlab.dolphin.authorize.entity.vo.LoginVO;
-import day.gitlab.dolphin.authorize.service.AuthorizeService;
+import day.gitlab.dolphin.auth.entity.dto.LoginDTO;
+import day.gitlab.dolphin.auth.entity.vo.LoginVO;
+import day.gitlab.dolphin.auth.service.AuthService;
import day.gitlab.dolphin.common.core.exception.BusinessException;
+import day.gitlab.dolphin.common.security.AuthenticationProvider;
import day.gitlab.dolphin.common.security.UserPrincipal;
import day.gitlab.dolphin.common.security.jwt.JwtInfo;
+import day.gitlab.dolphin.rbac.constants.UserEnabled;
import day.gitlab.dolphin.rbac.entity.Role;
import day.gitlab.dolphin.rbac.entity.User;
-import day.gitlab.dolphin.rbac.entity.table.UserTableDef;
import day.gitlab.dolphin.rbac.mapper.UserMapper;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
@@ -20,7 +20,7 @@ import java.util.List;
import java.util.stream.Collectors;
@Service
-public class AuthorizeServiceImpl implements AuthorizeService {
+public class AuthServiceImpl implements AuthService, AuthenticationProvider {
@Resource
private UserMapper userMapper;
@@ -28,6 +28,22 @@ public class AuthorizeServiceImpl implements AuthorizeService {
@Resource
private JwtInfo jwtInfo;
+ @Override
+ public LoginVO login(LoginDTO loginDTO) {
+ User dbUser = userMapper.findByUsername(loginDTO.getUsername());
+ if (dbUser == null || !BCrypt.checkpw(loginDTO.getPassword(), dbUser.getPassword())) {
+ throw new BusinessException("Username or password is incorrect");
+ }
+ if (!UserEnabled.ENABLED.equals(dbUser.getEnabled())) {
+ throw new BusinessException("User is not enabled");
+ }
+
+ return LoginVO.builder()
+ .accessToken(jwtInfo.generateAccessToken(dbUser.getId()))
+ .refreshToken(jwtInfo.generateRefreshToken(dbUser.getId()))
+ .build();
+ }
+
@Override
public UserPrincipal getUserPrincipal(String userId) {
User user = userMapper.selectOneById(userId);
@@ -50,22 +66,4 @@ public class AuthorizeServiceImpl implements AuthorizeService {
return roles.stream().map(Role::getCode).collect(Collectors.toList());
}
-
- @Override
- public LoginVO login(LoginDTO loginDTO) {
- QueryCondition queryCondition = UserTableDef.USER.USERNAME.eq(loginDTO.getUsername());
- User user = userMapper.selectOneByCondition(queryCondition);
-
- if (user == null || !BCrypt.checkpw(loginDTO.getPassword(), user.getPassword())) {
- throw new BusinessException("User name or password is incorrect");
- }
- if (!"1".equalsIgnoreCase(user.getEnabled())) {
- throw new BusinessException("User has been disabled");
- }
-
- LoginVO loginVO = new LoginVO();
- loginVO.setAccessToken(jwtInfo.generateAccessToken(user.getId()));
- loginVO.setRefreshToken(jwtInfo.generateRefreshToken(user.getId()));
- return loginVO;
- }
}
diff --git a/dolphin-modules/dolphin-module-core/pom.xml b/dolphin-modules/dolphin-module-core/pom.xml
index 0dd3670..1344611 100644
--- a/dolphin-modules/dolphin-module-core/pom.xml
+++ b/dolphin-modules/dolphin-module-core/pom.xml
@@ -12,6 +12,7 @@
jar
+
day.gitlab
dolphin-common-security
@@ -22,20 +23,25 @@
dolphin-common-mybatis
${project.version}
-
+
org.springframework.boot
spring-boot-starter-web
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
org.springframework.boot
spring-boot-starter-jdbc
+
com.mybatis-flex
mybatis-flex-spring-boot3-starter
-
+
org.projectlombok
lombok
diff --git a/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/Dictionary.java b/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/Dictionary.java
index 0c89c81..ce87921 100644
--- a/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/Dictionary.java
+++ b/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/Dictionary.java
@@ -7,8 +7,10 @@ import java.sql.Timestamp;
import java.io.Serial;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 字典 实体类。
@@ -18,6 +20,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_core_dictionary")
public class Dictionary implements Serializable {
diff --git a/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/DictionaryItem.java b/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/DictionaryItem.java
index 74bbcf4..a5aadd2 100644
--- a/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/DictionaryItem.java
+++ b/dolphin-modules/dolphin-module-core/src/main/java/day/gitlab/dolphin/core/entity/DictionaryItem.java
@@ -7,8 +7,10 @@ import java.sql.Timestamp;
import java.io.Serial;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 字典项 实体类。
@@ -18,6 +20,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_core_dictionary_item")
public class DictionaryItem implements Serializable {
diff --git a/dolphin-modules/dolphin-module-rbac/pom.xml b/dolphin-modules/dolphin-module-rbac/pom.xml
index 6041428..690eade 100644
--- a/dolphin-modules/dolphin-module-rbac/pom.xml
+++ b/dolphin-modules/dolphin-module-rbac/pom.xml
@@ -12,12 +12,36 @@
jar
+
day.gitlab
- dolphin-module-core
+ dolphin-common-security
${project.version}
-
+
+ day.gitlab
+ dolphin-common-mybatis
+ ${project.version}
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+
+ com.mybatis-flex
+ mybatis-flex-spring-boot3-starter
+
+
org.projectlombok
lombok
diff --git a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/constants/UserEnabled.java b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/constants/UserEnabled.java
new file mode 100644
index 0000000..0b1f5a1
--- /dev/null
+++ b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/constants/UserEnabled.java
@@ -0,0 +1,8 @@
+package day.gitlab.dolphin.rbac.constants;
+
+public class UserEnabled {
+
+ public static final String ENABLED = "1";
+
+ public static final String DISABLED = "0";
+}
diff --git a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Department.java b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Department.java
index b54323c..8556800 100644
--- a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Department.java
+++ b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Department.java
@@ -7,8 +7,10 @@ import java.sql.Timestamp;
import java.io.Serial;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 部门表 实体类。
@@ -18,6 +20,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_rbac_department")
public class Department implements Serializable {
diff --git a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Region.java b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Region.java
index a2535e5..e9f6436 100644
--- a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Region.java
+++ b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Region.java
@@ -7,8 +7,10 @@ import java.sql.Timestamp;
import java.io.Serial;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 区划项 实体类。
@@ -18,6 +20,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_rbac_region")
public class Region implements Serializable {
diff --git a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Role.java b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Role.java
index 778d4c1..6e8c01c 100644
--- a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Role.java
+++ b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/Role.java
@@ -7,8 +7,10 @@ import java.sql.Timestamp;
import java.io.Serial;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 角色表 实体类。
@@ -18,6 +20,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_rbac_role")
public class Role implements Serializable {
diff --git a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/User.java b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/User.java
index c9d7e3e..b7cfe5d 100644
--- a/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/User.java
+++ b/dolphin-modules/dolphin-module-rbac/src/main/java/day/gitlab/dolphin/rbac/entity/User.java
@@ -9,8 +9,10 @@ import java.sql.Timestamp;
import java.io.Serial;
import java.util.List;
+import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
+import lombok.NoArgsConstructor;
/**
* 用户表 实体类。
@@ -20,6 +22,8 @@ import lombok.Data;
*/
@Data
@Builder
+@NoArgsConstructor
+@AllArgsConstructor
@Table("sys_rbac_user")
public class User implements Serializable {
diff --git a/dolphin-modules/pom.xml b/dolphin-modules/pom.xml
index 4fa272e..19a6dbc 100644
--- a/dolphin-modules/pom.xml
+++ b/dolphin-modules/pom.xml
@@ -14,5 +14,6 @@
dolphin-module-core
dolphin-module-rbac
+ dolphin-module-auth