diff --git a/qing-yu-club-auth/qing-yu-club-auth-api/pom.xml b/qing-yu-club-auth/qing-yu-club-auth-api/pom.xml index acd835c..0abc413 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-api/pom.xml +++ b/qing-yu-club-auth/qing-yu-club-auth-api/pom.xml @@ -19,10 +19,19 @@ - junit - junit - 3.8.1 - test + org.springframework.cloud + spring-cloud-starter-openfeign + 3.0.7 + + + org.springframework.cloud + spring-cloud-loadbalancer + 3.0.6 + + + org.projectlombok + lombok + 1.18.28 diff --git a/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/App.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/App.java deleted file mode 100644 index e623ea3..0000000 --- a/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/App.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.landaiqing; - -/** - * Hello world! - * - */ -public class App -{ - public static void main( String[] args ) - { - System.out.println( "Hello World!" ); - } -} diff --git a/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/api/UserFeignService.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/api/UserFeignService.java new file mode 100644 index 0000000..5755cf0 --- /dev/null +++ b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/api/UserFeignService.java @@ -0,0 +1,22 @@ +package com.landaiqing.auth.api; + +import com.landaiqing.auth.entity.AuthUserDTO; +import com.landaiqing.auth.entity.Result; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; + +/** + * @Classname UserFeignService + * @BelongsProject: qing-yu-club + * @BelongsPackage: com.landaiqing.auth.api + * @Author: landaiqing + * @CreateTime: 2024-03-03 19:57 + * @Description: 用户服务feign + * @Version: 1.0 + */ +@FeignClient("qing-yu-club-auth-dev") +public interface UserFeignService { + @RequestMapping("/user/getUserInfo") + Result getUserInfo(@RequestBody AuthUserDTO authUserDTO); +} diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/dto/AuthUserDTO.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/AuthUserDTO.java similarity index 91% rename from qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/dto/AuthUserDTO.java rename to qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/AuthUserDTO.java index 6120251..6ebd1b9 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/dto/AuthUserDTO.java +++ b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/AuthUserDTO.java @@ -1,4 +1,4 @@ -package com.landaiqing.auth.application.dto; +package com.landaiqing.auth.entity; import lombok.Data; diff --git a/qing-yu-club-auth/qing-yu-club-auth-common/src/main/java/com/landaiqing/auth/common/entity/Result.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/Result.java similarity index 92% rename from qing-yu-club-auth/qing-yu-club-auth-common/src/main/java/com/landaiqing/auth/common/entity/Result.java rename to qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/Result.java index 7abf6ee..aaa8c87 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-common/src/main/java/com/landaiqing/auth/common/entity/Result.java +++ b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/Result.java @@ -1,6 +1,5 @@ -package com.landaiqing.auth.common.entity; +package com.landaiqing.auth.entity; -import com.landaiqing.auth.common.enums.ResultCodeEnum; import lombok.Data; @Data diff --git a/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/ResultCodeEnum.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/ResultCodeEnum.java new file mode 100644 index 0000000..dcedbab --- /dev/null +++ b/qing-yu-club-auth/qing-yu-club-auth-api/src/main/java/com/landaiqing/auth/entity/ResultCodeEnum.java @@ -0,0 +1,29 @@ +package com.landaiqing.auth.entity; + +import lombok.Getter; + +@Getter +public enum ResultCodeEnum { + + SUCCESS(200,"成功"), + FAIL(500,"失败"); + + public int code; + + public String desc; + + ResultCodeEnum(int code,String desc){ + this.code = code; + this.desc = desc; + } + + public static ResultCodeEnum getByCode(int codeVal){ + for(ResultCodeEnum resultCodeEnum : ResultCodeEnum.values()){ + if(resultCodeEnum.code == codeVal){ + return resultCodeEnum; + } + } + return null; + } + +} diff --git a/qing-yu-club-auth/qing-yu-club-auth-api/src/test/java/com/landaiqing/AppTest.java b/qing-yu-club-auth/qing-yu-club-auth-api/src/test/java/com/landaiqing/AppTest.java deleted file mode 100644 index 908567a..0000000 --- a/qing-yu-club-auth/qing-yu-club-auth-api/src/test/java/com/landaiqing/AppTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.landaiqing; - -import junit.framework.Test; -import junit.framework.TestCase; -import junit.framework.TestSuite; - -/** - * Unit test for simple App. - */ -public class AppTest - extends TestCase -{ - /** - * Create the test case - * - * @param testName name of the test case - */ - public AppTest( String testName ) - { - super( testName ); - } - - /** - * @return the suite of tests being tested - */ - public static Test suite() - { - return new TestSuite( AppTest.class ); - } - - /** - * Rigourous Test :-) - */ - public void testApp() - { - assertTrue( true ); - } -} diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/pom.xml b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/pom.xml index e1c2498..5539cf0 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/pom.xml +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/pom.xml @@ -32,6 +32,12 @@ qing-yu-club-auth-domain 1.0-SNAPSHOT + + com.landaiqing + qing-yu-club-auth-api + 1.0-SNAPSHOT + compile + diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/config/GlobalConfig.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/config/GlobalConfig.java index ff64c45..85f5667 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/config/GlobalConfig.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/config/GlobalConfig.java @@ -3,9 +3,11 @@ package com.landaiqing.auth.application.config; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.SerializationFeature; +import com.landaiqing.auth.application.interceptor.LoginInterceptor; import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; import java.util.List; @@ -33,4 +35,9 @@ public class GlobalConfig extends WebMvcConfigurationSupport { MappingJackson2HttpMessageConverter converter=new MappingJackson2HttpMessageConverter(objectMapper); return converter; } + @Override + protected void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(new LoginInterceptor()) + .addPathPatterns("/**"); + } } diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/context/LoginContextHolder.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/context/LoginContextHolder.java new file mode 100644 index 0000000..cb72b71 --- /dev/null +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/context/LoginContextHolder.java @@ -0,0 +1,42 @@ +package com.landaiqing.auth.application.context; + +import java.util.Map; +import java.util.Objects; +import java.util.concurrent.ConcurrentHashMap; + +/** + * @Classname LoginContextHolder + * @BelongsProject: qing-yu-club + * @BelongsPackage: com.landaiqing.subject.application.context + * @Author: landaiqing + * @CreateTime: 2024-03-03 18:11 + * @Description: 登录上下文对象 + * @Version: 1.0 + */ +public class LoginContextHolder { + private static final InheritableThreadLocal > THREAD_LOCAL=new InheritableThreadLocal<>(); + + public static void set(String key,Object val){ + Map map=getThreadLoacalMap(); + map.put(key, val); + } + public static Object get(String key){ + Map threadLoacalMap=getThreadLoacalMap(); + return threadLoacalMap.get(key); + } + public static void remove(){ + THREAD_LOCAL.remove(); + } + + public static String getLoginId(){ + return (String) getThreadLoacalMap().get("loginId"); + } + public static Map getThreadLoacalMap(){ + Map map =THREAD_LOCAL.get(); + if (Objects.isNull(map)){ + map=new ConcurrentHashMap<>(); + THREAD_LOCAL.set(map); + } + return map; + } +} diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/PermissionController.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/PermissionController.java index 37c7aad..8bc95e9 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/PermissionController.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/PermissionController.java @@ -6,7 +6,7 @@ import com.landaiqing.auth.application.convert.AuthPermissionDTOConverter; import com.landaiqing.auth.application.dto.AuthPermissionDTO; import com.landaiqing.auth.domain.entity.AuthPermissionBO; import com.landaiqing.auth.domain.service.AuthPermissionDomainService; -import com.landaiqing.auth.common.entity.Result; +import com.landaiqing.auth.entity.Result; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.web.bind.annotation.RequestBody; diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RoleController.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RoleController.java index 37547fb..50b7f21 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RoleController.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RoleController.java @@ -4,9 +4,9 @@ import com.alibaba.fastjson.JSON; import com.google.common.base.Preconditions; import com.landaiqing.auth.application.convert.AuthRoleDTOConverter; import com.landaiqing.auth.application.dto.AuthRoleDTO; -import com.landaiqing.auth.common.entity.Result; import com.landaiqing.auth.domain.entity.AuthRoleBO; import com.landaiqing.auth.domain.service.AuthRoleDomainService; +import com.landaiqing.auth.entity.Result; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RolePermissionController.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RolePermissionController.java index c99bae1..c0d8611 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RolePermissionController.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/RolePermissionController.java @@ -4,9 +4,9 @@ import com.alibaba.fastjson.JSON; import com.google.common.base.Preconditions; import com.landaiqing.auth.application.convert.AuthRolePermissionDTOConverter; import com.landaiqing.auth.application.dto.AuthRolePermissionDTO; -import com.landaiqing.auth.common.entity.Result; import com.landaiqing.auth.domain.entity.AuthRolePermissionBO; import com.landaiqing.auth.domain.service.AuthRolePermissionDomainService; +import com.landaiqing.auth.entity.Result; import lombok.extern.slf4j.Slf4j; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.RequestBody; diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/UserController.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/UserController.java index 4471a73..8886d0a 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/UserController.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/controller/UserController.java @@ -5,10 +5,10 @@ import cn.dev33.satoken.stp.StpUtil; import com.alibaba.fastjson.JSON; import com.google.common.base.Preconditions; import com.landaiqing.auth.application.convert.AuthUserDTOConverter; -import com.landaiqing.auth.application.dto.AuthUserDTO; -import com.landaiqing.auth.common.entity.Result; import com.landaiqing.auth.domain.entity.AuthUserBO; import com.landaiqing.auth.domain.service.AuthUserDomainService; +import com.landaiqing.auth.entity.AuthUserDTO; +import com.landaiqing.auth.entity.Result; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.web.bind.annotation.*; diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/convert/AuthUserDTOConverter.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/convert/AuthUserDTOConverter.java index 1fd41ad..89b5e28 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/convert/AuthUserDTOConverter.java +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/convert/AuthUserDTOConverter.java @@ -1,7 +1,7 @@ package com.landaiqing.auth.application.convert; -import com.landaiqing.auth.application.dto.AuthUserDTO; import com.landaiqing.auth.domain.entity.AuthUserBO; +import com.landaiqing.auth.entity.AuthUserDTO; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; diff --git a/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/interceptor/LoginInterceptor.java b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/interceptor/LoginInterceptor.java new file mode 100644 index 0000000..0e9dc43 --- /dev/null +++ b/qing-yu-club-auth/qing-yu-club-auth-application/qing-yu-club-auth-application-controller/src/main/java/com/landaiqing/auth/application/interceptor/LoginInterceptor.java @@ -0,0 +1,31 @@ +package com.landaiqing.auth.application.interceptor; + +import com.landaiqing.auth.application.context.LoginContextHolder; +import org.springframework.lang.Nullable; +import org.springframework.web.servlet.HandlerInterceptor; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @Classname LoginInterceptor + * @BelongsProject: qing-yu-club + * @BelongsPackage: com.landaiqing.subject.application.interceptor + * @Author: landaiqing + * @CreateTime: 2024-03-03 18:05 + * @Description: 登录拦截器 + * @Version: 1.0 + */ +public class LoginInterceptor implements HandlerInterceptor { + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { + String loginId = request.getHeader("loginId"); + LoginContextHolder.set("loginId",loginId); + return true; + } + + @Override + public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, @Nullable Exception ex) throws Exception { + LoginContextHolder.remove(); + } +} diff --git a/qing-yu-club-auth/qing-yu-club-auth-infra/src/main/resources/mapper/AuthPermissionDao.xml b/qing-yu-club-auth/qing-yu-club-auth-infra/src/main/resources/mapper/AuthPermissionDao.xml index 63dd0fe..1aa4f84 100644 --- a/qing-yu-club-auth/qing-yu-club-auth-infra/src/main/resources/mapper/AuthPermissionDao.xml +++ b/qing-yu-club-auth/qing-yu-club-auth-infra/src/main/resources/mapper/AuthPermissionDao.xml @@ -24,7 +24,7 @@ select id, name, parent_id, - type, + `type`, menu_url, status, `show`, icon, permission_key, created_by, created_time, update_by, update_time, is_deleted from auth_permission @@ -34,7 +34,7 @@