This commit is contained in:
zhaoyz 2024-02-21 11:47:40 +08:00
parent 23d7e9baa9
commit 28350e8bb1
527 changed files with 5637 additions and 5762 deletions

5
.gitignore vendored
View File

@ -57,3 +57,8 @@ target/
Thumbs.db
Servers
.metadata
/.gitee/ISSUE_TEMPLATE/config.yml
/.gitee/ISSUE_TEMPLATE/issue.yml
/.github/workflows/image.yml
/.github/workflows/maven.yml
/.github/workflows/mirror.yml

132
README.md
View File

@ -1,40 +1,3 @@
<p align="center">
<img src="https://img.shields.io/badge/Pig-3.7-success.svg" alt="Build Status">
<img src="https://img.shields.io/badge/Spring%20Cloud-2023.0.0-blue.svg" alt="Coverage Status">
<img src="https://img.shields.io/badge/Spring%20Boot-3.2.1-blue.svg" alt="Downloads">
<img src="https://img.shields.io/badge/Vue-3.4-blue.svg" alt="Downloads">
<img src="https://img.shields.io/github/license/pig-mesh/pig"/>
</p>
## 分支说明
- master: java8 + springboot 2.7 + springcloud 2021
- jdk17: java17 + springboot 3.2 + springcloud 2023
- boot(单体版本): java17 + springboot 3.2
## 系统说明
- 基于 Spring Cloud 、Spring Boot、 OAuth2 的 RBAC **权限管理系统**
- 基于数据驱动视图的理念封装 element-plus即使没有 vue 的使用经验也能快速上手
- 提供对常见容器化支持 Docker、Kubernetes、Rancher2 支持
- 提供 lambda 、stream api 、webflux 的生产实践
## 文档视频
[ 🚀🚀🚀 低代码数据可视化](http://datav.pig4cloud.com)
[ 配套文档 wiki.pig4cloud.com](https://wiki.pig4cloud.com)
[ 配套视频 tv.pig4cloud.com](https://www.bilibili.com/video/BV12t411B7e9)
[PIGX 在线体验 pigx.pigx.top](http://pigx.pigx.top)
[产品白皮书 paper.pig4cloud.com](https://paper.pig4cloud.com)
## 微信群 [禁广告]
![](https://minio.pigx.top/oss/1648184189.png)
## 快速开始
@ -51,41 +14,35 @@
### 模块说明
```lua
pig-ui -- https://gitee.com/log4j/pig-ui
pig
├── pig-auth -- 授权服务提供[3000]
└── pig-common -- 系统公共模块
├── pig-common-bom -- 全局依赖管理控制
├── pig-common-core -- 公共工具类核心包
├── pig-common-datasource -- 动态数据源包
├── pig-common-log -- 日志服务
├── pig-common-oss -- 文件上传工具类
├── pig-common-mybatis -- mybatis 扩展封装
├── pig-common-seata -- 分布式事务
├── pig-common-security -- 安全工具类
├── pig-common-swagger -- 接口文档
├── pig-common-feign -- feign 扩展封装
└── pig-common-xss -- xss 安全封装
├── pig-register -- Nacos Server[8848]
├── pig-gateway -- Spring Cloud Gateway网关[9999]
└── pig-upms -- 通用用户权限管理模块
└── pig-upms-api -- 通用用户权限管理系统公共api模块
└── pig-upms-biz -- 通用用户权限管理系统业务处理模块[4000]
└── pig-visual
└── pig-monitor -- 服务监控 [5001]
├── pig-codegen -- 图形化代码生成 [5002]
└── pig-quartz -- 定时任务管理台 [5007]
rax-web
├── auth -- 授权服务提供[3000]
└── common -- 系统公共模块
├── common-bom -- 全局依赖管理控制
├── common-core -- 公共工具类核心包
├── common-datasource -- 动态数据源包
├── common-log -- 日志服务
├── common-oss -- 文件上传工具类
├── common-mybatis -- mybatis 扩展封装
├── common-seata -- 分布式事务
├── common-security -- 安全工具类
├── common-swagger -- 接口文档
├── common-feign -- feign 扩展封装
└── common-xss -- xss 安全封装
├── register -- Nacos Server[8848]
├── gateway -- Spring Cloud Gateway网关[9999]
└── upms -- 通用用户权限管理模块
└── upms-api -- 通用用户权限管理系统公共api模块
└── upms-biz -- 通用用户权限管理系统业务处理模块[4000]
└── visual
└── monitor -- 服务监控 [5001]
├── codegen -- 图形化代码生成 [5002]
└── quartz -- 定时任务管理台 [5007]
```
### 本地开发 运行
pig 提供了详细的[部署文档 wiki.pig4cloud.com](https://www.yuque.com/pig4cloud/pig/vsdox9),包括开发环境安装、服务端代码运行、前端代码运行等。
请务必**完全按照**文档部署运行章节 进行操作,减少踩坑弯路!!
### Docker 运行
```
@ -103,47 +60,4 @@ cd pig-ui && npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install && cnpm run build:docker && cd docker && docker-compose up -d
```
## 免费公开课
<table>
<tr>
<td><a href="https://www.bilibili.com/video/av45084065" target="_blank"><img src="https://minio.pigx.top/oss/1655474345.jpg"></a></td>
<td><a href="https://www.bilibili.com/video/av77344954" target="_blank"><img src="https://minio.pigx.top/oss/1656837143.jpg"></a></td>
</tr>
<tr>
<td><a href="https://www.bilibili.com/video/BV1J5411476V" target="_blank"><img src="https://minio.pigx.top/oss/1655474369.jpg"></a></td>
<td><a href="https://www.bilibili.com/video/BV14p4y197K5" target="_blank"><img src="https://minio.pigx.top/oss/1655474381.jpg"></a></td>
</tr>
</table>
## 开源共建
### 开源协议
pig 开源软件遵循 [Apache 2.0 协议](https://www.apache.org/licenses/LICENSE-2.0.html)。
允许商业使用但务必保留类作者、Copyright 信息。
![](https://minio.pigx.top/oss/1655474288.jpg)
### 其他说明
1. 欢迎提交 [PR](https://dwz.cn/2KURd5Vf),注意对应提交对应 `dev` 分支
代码规范 [spring-javaformat](https://github.com/spring-io/spring-javaformat)
<details>
<summary>代码规范说明</summary>
1. 由于 <a href="https://github.com/spring-io/spring-javaformat" target="_blank">spring-javaformat</a>
强制所有代码按照指定格式排版,未按此要求提交的代码将不能通过合并(打包)
2. 如果使用 IntelliJ IDEA
开发,请安装自动格式化软件 <a href="https://repo1.maven.org/maven2/io/spring/javaformat/spring-javaformat-intellij-idea-plugin/" target="_blank">
spring-javaformat-intellij-idea-plugin</a>
3. 其他开发工具,请参考 <a href="https://github.com/spring-io/spring-javaformat" target="_blank">
spring-javaformat</a>
说明,或`提交代码前`在项目根目录运行下列命令(需要开发者电脑支持`mvn`命令)进行代码格式化
```
mvn spring-javaformat:apply
```
</details>
2. 欢迎提交 [issue](https://gitee.com/log4j/pig/issues),请写清楚遇到问题的原因、开发环境、复显步骤。

View File

@ -1,8 +1,8 @@
FROM alibabadragonwell/dragonwell:17-anolis
WORKDIR /pig-auth
WORKDIR /auth
ARG JAR_FILE=target/pig-auth.jar
ARG JAR_FILE=target/auth.jar
COPY ${JAR_FILE} app.jar

63
auth/pom.xml Normal file
View File

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.rax</groupId>
<artifactId>rax</artifactId>
<version>3.7.3</version>
</parent>
<artifactId>auth</artifactId>
<packaging>jar</packaging>
<description>rax 认证授权中心,基于 spring security oAuth2</description>
<dependencies>
<!--断路器依赖-->
<dependency>
<groupId>com.rax</groupId>
<artifactId>common-feign</artifactId>
</dependency>
<!--upms api、model 模块-->
<dependency>
<groupId>com.rax</groupId>
<artifactId>upms-api</artifactId>
</dependency>
<!-- 通用安全模块 -->
<dependency>
<groupId>com.rax</groupId>
<artifactId>common-security</artifactId>
</dependency>
<!-- Spring Boot安全模块 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!-- 通用日志模块 -->
<dependency>
<groupId>com.rax</groupId>
<artifactId>common-log</artifactId>
</dependency>
<!-- 调用验证码核心模块 -->
<dependency>
<groupId>io.springboot.plugin</groupId>
<artifactId>captcha-core</artifactId>
<version>${captcha.version}</version>
</dependency>
<!-- 调用验证码核心模块 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-captcha</artifactId>
<version>${hutool-captcha.version}</version>
</dependency>
<!-- 使用Hutool工具库中的加密模块 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-crypto</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -1,36 +1,17 @@
/*
*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*
*/
package com.rax.auth.config;
package com.pig4cloud.pig.auth.config;
import com.pig4cloud.pig.auth.support.CustomeOAuth2AccessTokenGenerator;
import com.pig4cloud.pig.auth.support.core.CustomeOAuth2TokenCustomizer;
import com.pig4cloud.pig.auth.support.core.PigDaoAuthenticationProvider;
import com.pig4cloud.pig.auth.support.handler.*;
import com.pig4cloud.pig.auth.support.password.OAuth2ResourceOwnerPasswordAuthenticationConverter;
import com.pig4cloud.pig.auth.support.password.OAuth2ResourceOwnerPasswordAuthenticationProvider;
import com.pig4cloud.pig.auth.support.sms.OAuth2ResourceOwnerSmsAuthenticationConverter;
import com.pig4cloud.pig.auth.support.sms.OAuth2ResourceOwnerSmsAuthenticationProvider;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.security.component.PermitAllUrlProperties;
import com.pig4cloud.pig.common.security.component.PigBearerTokenExtractor;
import com.pig4cloud.pig.common.security.component.ResourceAuthExceptionEntryPoint;
import com.rax.auth.support.CustomeOAuth2AccessTokenGenerator;
import com.rax.auth.support.core.CustomeOAuth2TokenCustomizer;
import com.rax.auth.support.core.RaxDaoAuthenticationProvider;
import com.rax.auth.support.handler.*;
import com.rax.auth.support.password.OAuth2ResourceOwnerPasswordAuthenticationConverter;
import com.rax.auth.support.password.OAuth2ResourceOwnerPasswordAuthenticationProvider;
import com.rax.auth.support.sms.OAuth2ResourceOwnerSmsAuthenticationConverter;
import com.rax.auth.support.sms.OAuth2ResourceOwnerSmsAuthenticationProvider;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.security.component.PermitAllUrlProperties;
import com.rax.common.security.component.RaxBearerTokenExtractor;
import com.rax.common.security.component.ResourceAuthExceptionEntryPoint;
import lombok.RequiredArgsConstructor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@ -40,7 +21,6 @@ import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.config.Customizer;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
import org.springframework.security.config.annotation.web.configurers.CorsConfigurer;
import org.springframework.security.config.annotation.web.configurers.HeadersConfigurer;
import org.springframework.security.oauth2.server.authorization.OAuth2AuthorizationService;
import org.springframework.security.oauth2.server.authorization.config.annotation.web.configurers.OAuth2AuthorizationServerConfigurer;
@ -64,10 +44,6 @@ import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import java.time.Duration;
import java.util.Arrays;
/**
* @author lengleng
* @date 2018/6/22 认证服务器配置
*/
@Configuration
@RequiredArgsConstructor
public class AuthorizationServerConfiguration {
@ -76,24 +52,24 @@ public class AuthorizationServerConfiguration {
protected final ResourceAuthExceptionEntryPoint resourceAuthExceptionEntryPoint;
private final PigBearerTokenExtractor pigBearerTokenExtractor;
private final RaxBearerTokenExtractor raxBearerTokenExtractor;
private final OpaqueTokenIntrospector customOpaqueTokenIntrospector;
private final PermitAllUrlProperties permitAllUrl;
private final PigLoginPreFilter pigLoginPreFilter;
private final RaxLoginPreFilter raxLoginPreFilter;
@Bean
@Order(Ordered.HIGHEST_PRECEDENCE)
public SecurityFilterChain authorizationServerSecurityFilterChain(HttpSecurity http,
PigAuthenticationSuccessEventHandler successEventHandler,
PigAuthenticationFailureEventHandler failureEventHandler) throws Exception {
RaxAuthenticationSuccessEventHandler successEventHandler,
RaxAuthenticationFailureEventHandler failureEventHandler) throws Exception {
OAuth2AuthorizationServerConfigurer authorizationServerConfigurer = new OAuth2AuthorizationServerConfigurer();
http.cors(httpSecurityCorsConfigurer -> httpSecurityCorsConfigurer.configurationSource(corsConfigurationSource()));
http.addFilterAfter(pigLoginPreFilter, UsernamePasswordAuthenticationFilter.class);
http.addFilterAfter(raxLoginPreFilter, UsernamePasswordAuthenticationFilter.class);
http.with(authorizationServerConfigurer.tokenEndpoint((tokenEndpoint) -> {// 个性化认证授权端点
tokenEndpoint.accessTokenRequestConverter(accessTokenRequestConverter()) // 注入自定义的授权认证Converter
.accessTokenResponseHandler(successEventHandler) // 登录成功处理器
@ -104,7 +80,7 @@ public class AuthorizationServerConfiguration {
.consentPage(SecurityConstants.CUSTOM_CONSENT_PAGE_URI)), Customizer.withDefaults())
.with(authorizationServerConfigurer.authorizationService(authorizationService)// redis存储token的实现
.authorizationServerSettings(
AuthorizationServerSettings.builder().issuer(SecurityConstants.PROJECT_LICENSE).build()),
AuthorizationServerSettings.builder()/*.issuer(SecurityConstants.PROJECT_LICENSE)*/.build()),
Customizer.withDefaults());
AntPathRequestMatcher[] requestMatchers = permitAllUrl.getUrls()
@ -120,14 +96,14 @@ public class AuthorizationServerConfiguration {
.oauth2ResourceServer(
oauth2 -> oauth2.opaqueToken(token -> token.introspector(customOpaqueTokenIntrospector))
.authenticationEntryPoint(resourceAuthExceptionEntryPoint)
.bearerTokenResolver(pigBearerTokenExtractor))
.bearerTokenResolver(raxBearerTokenExtractor))
.exceptionHandling(configurer -> configurer.authenticationEntryPoint(resourceAuthExceptionEntryPoint))
.headers(headers -> headers.frameOptions(HeadersConfigurer.FrameOptionsConfig::disable))
.csrf(AbstractHttpConfigurer::disable);
http.with(authorizationServerConfigurer.authorizationService(authorizationService)// redis存储token的实现
.authorizationServerSettings(
AuthorizationServerSettings.builder().issuer(SecurityConstants.PROJECT_LICENSE).build()),
AuthorizationServerSettings.builder()/*.issuer(SecurityConstants.PROJECT_LICENSE)*/.build()),
Customizer.withDefaults());
DefaultSecurityFilterChain securityFilterChain = http.build();
@ -190,7 +166,7 @@ public class AuthorizationServerConfiguration {
authenticationManager, authorizationService, oAuth2TokenGenerator());
// 处理 UsernamePasswordAuthenticationToken
http.authenticationProvider(new PigDaoAuthenticationProvider());
http.authenticationProvider(new RaxDaoAuthenticationProvider());
// 处理 OAuth2ResourceOwnerPasswordAuthenticationToken
http.authenticationProvider(resourceOwnerPasswordAuthenticationProvider);
// 处理 OAuth2ResourceOwnerSmsAuthenticationToken

View File

@ -1,9 +1,12 @@
package com.pig4cloud.pig.auth.endpoint;
package com.rax.auth.endpoint;
import com.pig4cloud.pig.common.core.constant.CacheConstants;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.security.annotation.Inner;
import cn.hutool.captcha.CaptchaUtil;
import cn.hutool.captcha.CircleCaptcha;
import com.rax.common.core.constant.CacheConstants;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.security.annotation.Inner;
import io.springboot.captcha.ArithmeticCaptcha;
import jakarta.servlet.ServletOutputStream;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
@ -12,6 +15,8 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.util.concurrent.TimeUnit;
/**
@ -47,4 +52,15 @@ public class ImageCodeEndpoint {
captcha.out(response.getOutputStream());
}
@SneakyThrows
@GetMapping("/textImage")
public void textImage(String randomStr, HttpServletResponse response) {
CircleCaptcha captcha = CaptchaUtil.createCircleCaptcha(200, 100, 4, 50);
String code = captcha.getCode();
redisTemplate.opsForValue().set(CacheConstants.DEFAULT_CODE_KEY + randomStr, code, SecurityConstants.CODE_TIME, TimeUnit.SECONDS);
BufferedImage image = captcha.getImage();
ServletOutputStream outputStream = response.getOutputStream();
ImageIO.write(image, "png", outputStream);
}
}

View File

@ -1,40 +1,24 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.auth.endpoint;
package com.rax.auth.endpoint;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.TemporalAccessorUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.admin.api.entity.SysOauthClientDetails;
import com.pig4cloud.pig.admin.api.feign.RemoteClientDetailsService;
import com.pig4cloud.pig.admin.api.vo.TokenVo;
import com.pig4cloud.pig.auth.support.handler.PigAuthenticationFailureEventHandler;
import com.pig4cloud.pig.common.core.constant.CacheConstants;
import com.pig4cloud.pig.common.core.constant.CommonConstants;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.core.util.RetOps;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.security.annotation.Inner;
import com.pig4cloud.pig.common.security.util.OAuth2EndpointUtils;
import com.pig4cloud.pig.common.security.util.OAuth2ErrorCodesExpand;
import com.pig4cloud.pig.common.security.util.OAuthClientException;
import com.rax.admin.api.entity.SysOauthClientDetails;
import com.rax.admin.api.feign.RemoteClientDetailsService;
import com.rax.admin.api.vo.TokenVo;
import com.rax.auth.support.handler.RaxAuthenticationFailureEventHandler;
import com.rax.common.core.constant.CacheConstants;
import com.rax.common.core.constant.CommonConstants;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.core.util.R;
import com.rax.common.core.util.RetOps;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.security.annotation.Inner;
import com.rax.common.security.util.OAuth2EndpointUtils;
import com.rax.common.security.util.OAuth2ErrorCodesExpand;
import com.rax.common.security.util.OAuthClientException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
@ -76,11 +60,11 @@ import java.util.stream.Collectors;
@RestController
@RequiredArgsConstructor
@RequestMapping("/token")
public class PigTokenEndpoint {
public class RaxTokenEndpoint {
private final HttpMessageConverter<OAuth2AccessTokenResponse> accessTokenHttpResponseConverter = new OAuth2AccessTokenResponseHttpMessageConverter();
private final AuthenticationFailureHandler authenticationFailureHandler = new PigAuthenticationFailureEventHandler();
private final AuthenticationFailureHandler authenticationFailureHandler = new RaxAuthenticationFailureEventHandler();
private final OAuth2AuthorizationService authorizationService;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.auth.support;
package com.rax.auth.support;
import org.springframework.lang.Nullable;
import org.springframework.security.crypto.keygen.Base64StringKeyGenerator;

View File

@ -1,6 +1,6 @@
package com.pig4cloud.pig.auth.support.base;
package com.rax.auth.support.base;
import com.pig4cloud.pig.common.security.util.OAuth2EndpointUtils;
import com.rax.common.security.util.OAuth2EndpointUtils;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;

View File

@ -1,8 +1,8 @@
package com.pig4cloud.pig.auth.support.base;
package com.rax.auth.support.base;
import cn.hutool.extra.spring.SpringUtil;
import com.pig4cloud.pig.common.security.util.OAuth2ErrorCodesExpand;
import com.pig4cloud.pig.common.security.util.ScopeException;
import com.rax.common.security.util.OAuth2ErrorCodesExpand;
import com.rax.common.security.util.ScopeException;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.context.support.MessageSourceAccessor;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.auth.support.base;
package com.rax.auth.support.base;
import lombok.Getter;
import org.springframework.lang.Nullable;

View File

@ -1,4 +1,4 @@
/**
* 自定义认证模式接入的抽象实现
*/
package com.pig4cloud.pig.auth.support.base;
package com.rax.auth.support.base;

View File

@ -1,7 +1,7 @@
package com.pig4cloud.pig.auth.support.core;
package com.rax.auth.support.core;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.security.service.PigUser;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.security.service.RaxUser;
import org.springframework.security.oauth2.server.authorization.token.OAuth2TokenClaimsContext;
import org.springframework.security.oauth2.server.authorization.token.OAuth2TokenClaimsSet;
import org.springframework.security.oauth2.server.authorization.token.OAuth2TokenCustomizer;
@ -21,7 +21,7 @@ public class CustomeOAuth2TokenCustomizer implements OAuth2TokenCustomizer<OAuth
@Override
public void customize(OAuth2TokenClaimsContext context) {
OAuth2TokenClaimsSet.Builder claims = context.getClaims();
claims.claim(SecurityConstants.DETAILS_LICENSE, SecurityConstants.PROJECT_LICENSE);
/*claims.claim(SecurityConstants.DETAILS_LICENSE, SecurityConstants.PROJECT_LICENSE);*/
String clientId = context.getAuthorizationGrant().getName();
claims.claim(SecurityConstants.CLIENT_ID, clientId);
// 客户端模式不返回具体用户信息
@ -29,10 +29,10 @@ public class CustomeOAuth2TokenCustomizer implements OAuth2TokenCustomizer<OAuth
return;
}
PigUser pigUser = (PigUser) context.getPrincipal().getPrincipal();
claims.claim(SecurityConstants.DETAILS_USER, pigUser);
claims.claim(SecurityConstants.DETAILS_USER_ID, pigUser.getId());
claims.claim(SecurityConstants.USERNAME, pigUser.getUsername());
RaxUser raxUser = (RaxUser) context.getPrincipal().getPrincipal();
claims.claim(SecurityConstants.DETAILS_USER, raxUser);
claims.claim(SecurityConstants.DETAILS_USER_ID, raxUser.getId());
claims.claim(SecurityConstants.USERNAME, raxUser.getUsername());
}
}

View File

@ -1,7 +1,7 @@
package com.pig4cloud.pig.auth.support.core;
package com.rax.auth.support.core;
import com.pig4cloud.pig.auth.support.handler.FormAuthenticationFailureHandler;
import com.pig4cloud.pig.auth.support.handler.SsoLogoutSuccessHandler;
import com.rax.auth.support.handler.FormAuthenticationFailureHandler;
import com.rax.auth.support.handler.SsoLogoutSuccessHandler;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;

View File

@ -1,14 +1,14 @@
package com.pig4cloud.pig.auth.support.core;
package com.rax.auth.support.core;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.Mode;
import cn.hutool.crypto.Padding;
import cn.hutool.crypto.symmetric.AES;
import cn.hutool.extra.spring.SpringUtil;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.core.util.WebUtils;
import com.pig4cloud.pig.common.security.service.PigUserDetailsService;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.core.util.WebUtils;
import com.rax.common.security.service.RaxUserDetailsService;
import jakarta.servlet.http.HttpServletRequest;
import lombok.SneakyThrows;
import org.springframework.core.Ordered;
@ -40,7 +40,7 @@ import java.util.function.Supplier;
* @author lengleng
* @date 2022-06-04
*/
public class PigDaoAuthenticationProvider extends AbstractUserDetailsAuthenticationProvider {
public class RaxDaoAuthenticationProvider extends AbstractUserDetailsAuthenticationProvider {
/**
* The plaintext password used to perform PasswordEncoder#matches(CharSequence,
@ -64,7 +64,7 @@ public class PigDaoAuthenticationProvider extends AbstractUserDetailsAuthenticat
private UserDetailsPasswordService userDetailsPasswordService;
public PigDaoAuthenticationProvider() {
public RaxDaoAuthenticationProvider() {
setMessageSource(SpringUtil.getBean("securityMessageSource"));
setPasswordEncoder(PasswordEncoderFactories.createDelegatingPasswordEncoder());
}
@ -110,11 +110,11 @@ public class PigDaoAuthenticationProvider extends AbstractUserDetailsAuthenticat
clientId = basicConvert.convert(request).getName();
}
Map<String, PigUserDetailsService> userDetailsServiceMap = SpringUtil
.getBeansOfType(PigUserDetailsService.class);
Map<String, RaxUserDetailsService> userDetailsServiceMap = SpringUtil
.getBeansOfType(RaxUserDetailsService.class);
String finalClientId = clientId;
Optional<PigUserDetailsService> optional = userDetailsServiceMap.values()
Optional<RaxUserDetailsService> optional = userDetailsServiceMap.values()
.stream()
.filter(service -> service.support(finalClientId, grantType))
.max(Comparator.comparingInt(Ordered::getOrder));
@ -205,7 +205,7 @@ public class PigDaoAuthenticationProvider extends AbstractUserDetailsAuthenticat
private String decode(String presentedPassword) {
// 构建前端对应解密AES 因子
String key = SpringContextHolder.getBean(Environment.class)
.getProperty("gateway.encodeKey", "pigxpigxpigxpigx");
.getProperty("gateway.encodeKey", "raxsraxsraxsraxs");
AES aes = new AES(Mode.CFB, Padding.NoPadding, new SecretKeySpec(key.getBytes(), "AES"),
new IvParameterSpec(key.getBytes()));
return aes.decryptStr(presentedPassword);

View File

@ -1,24 +1,8 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.auth.support.handler;
package com.rax.auth.support.handler;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.http.HttpUtil;
import com.pig4cloud.pig.common.core.util.WebUtils;
import com.rax.common.core.util.WebUtils;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.SneakyThrows;

View File

@ -1,31 +1,15 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.auth.support.handler;
package com.rax.auth.support.handler;
import cn.hutool.core.util.StrUtil;
import com.pig4cloud.pig.admin.api.entity.SysLog;
import com.pig4cloud.pig.common.core.constant.CommonConstants;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.core.util.MsgUtils;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.log.event.SysLogEvent;
import com.pig4cloud.pig.common.log.util.LogTypeEnum;
import com.pig4cloud.pig.common.log.util.SysLogUtils;
import com.rax.admin.api.entity.SysLog;
import com.rax.common.core.constant.CommonConstants;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.core.util.MsgUtils;
import com.rax.common.core.util.R;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.log.event.SysLogEvent;
import com.rax.common.log.util.LogTypeEnum;
import com.rax.common.log.util.SysLogUtils;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.SneakyThrows;
@ -48,7 +32,7 @@ import java.io.IOException;
*/
@Slf4j
@Component
public class PigAuthenticationFailureEventHandler implements AuthenticationFailureHandler {
public class RaxAuthenticationFailureEventHandler implements AuthenticationFailureHandler {
private final MappingJackson2HttpMessageConverter errorHttpResponseConverter = new MappingJackson2HttpMessageConverter();

View File

@ -1,31 +1,15 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.auth.support.handler;
package com.rax.auth.support.handler;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.pig4cloud.pig.admin.api.entity.SysLog;
import com.pig4cloud.pig.common.core.constant.CommonConstants;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.log.event.SysLogEvent;
import com.pig4cloud.pig.common.log.util.SysLogUtils;
import com.pig4cloud.pig.common.security.component.PigCustomOAuth2AccessTokenResponseHttpMessageConverter;
import com.pig4cloud.pig.common.security.service.PigUser;
import com.rax.admin.api.entity.SysLog;
import com.rax.common.core.constant.CommonConstants;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.log.event.SysLogEvent;
import com.rax.common.log.util.SysLogUtils;
import com.rax.common.security.component.RaxCustomOAuth2AccessTokenResponseHttpMessageConverter;
import com.rax.common.security.service.RaxUser;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.SneakyThrows;
@ -52,9 +36,9 @@ import java.util.Map;
*/
@Slf4j
@Component
public class PigAuthenticationSuccessEventHandler implements AuthenticationSuccessHandler {
public class RaxAuthenticationSuccessEventHandler implements AuthenticationSuccessHandler {
private final HttpMessageConverter<OAuth2AccessTokenResponse> accessTokenHttpResponseConverter = new PigCustomOAuth2AccessTokenResponseHttpMessageConverter();
private final HttpMessageConverter<OAuth2AccessTokenResponse> accessTokenHttpResponseConverter = new RaxCustomOAuth2AccessTokenResponseHttpMessageConverter();
/**
* Called when a user has been successfully authenticated.
@ -71,7 +55,7 @@ public class PigAuthenticationSuccessEventHandler implements AuthenticationSucce
Map<String, Object> map = accessTokenAuthentication.getAdditionalParameters();
if (MapUtil.isNotEmpty(map)) {
// 发送异步日志事件
PigUser userInfo = (PigUser) map.get(SecurityConstants.DETAILS_USER);
RaxUser userInfo = (RaxUser) map.get(SecurityConstants.DETAILS_USER);
log.info("用户:{} 登录成功", userInfo.getName());
SecurityContextHolder.getContext().setAuthentication(accessTokenAuthentication);
SysLog logVo = SysLogUtils.getSysLog();

View File

@ -1,16 +1,16 @@
package com.pig4cloud.pig.auth.support.handler;
package com.rax.auth.support.handler;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.http.ContentType;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.pig4cloud.pig.common.core.constant.CacheConstants;
import com.pig4cloud.pig.common.core.constant.CommonConstants;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.core.exception.ValidateCodeException;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.core.util.WebUtils;
import com.rax.common.core.constant.CacheConstants;
import com.rax.common.core.constant.CommonConstants;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.core.exception.ValidateCodeException;
import com.rax.common.core.util.R;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.core.util.WebUtils;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
@ -30,15 +30,13 @@ import java.util.List;
import java.util.Optional;
/**
* @author lbw
* @date 2024-01-06
* <p>
* 登录前置处理器 前端密码传输密文解密验证码处理
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class PigLoginPreFilter extends OncePerRequestFilter {
public class RaxLoginPreFilter extends OncePerRequestFilter {
private final ObjectMapper objectMapper;

View File

@ -1,26 +1,10 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.rax.auth.support.handler;
package com.pig4cloud.pig.auth.support.handler;
import com.pig4cloud.pig.admin.api.entity.SysLog;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.core.util.WebUtils;
import com.pig4cloud.pig.common.log.event.SysLogEvent;
import com.pig4cloud.pig.common.log.util.SysLogUtils;
import com.rax.admin.api.entity.SysLog;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.core.util.WebUtils;
import com.rax.common.log.event.SysLogEvent;
import com.rax.common.log.util.SysLogUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.ApplicationListener;
import org.springframework.http.HttpHeaders;
@ -30,14 +14,13 @@ import org.springframework.security.web.authentication.preauth.PreAuthenticatedA
import org.springframework.stereotype.Component;
/**
* @author zhangran
* @date 2022-06-02
*
* 事件机制处理退出相关
*/
@Slf4j
@Component
public class PigLogoutSuccessEventHandler implements ApplicationListener<LogoutSuccessEvent> {
public class RaxLogoutSuccessEventHandler implements ApplicationListener<LogoutSuccessEvent> {
@Override
public void onApplicationEvent(LogoutSuccessEvent event) {

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.auth.support.handler;
package com.rax.auth.support.handler;
import cn.hutool.core.util.StrUtil;
import jakarta.servlet.http.HttpServletRequest;

View File

@ -1,7 +1,7 @@
package com.pig4cloud.pig.auth.support.password;
package com.rax.auth.support.password;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationConverter;
import com.pig4cloud.pig.common.security.util.OAuth2EndpointUtils;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationConverter;
import com.rax.common.security.util.OAuth2EndpointUtils;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.security.core.Authentication;
import org.springframework.security.oauth2.core.AuthorizationGrantType;

View File

@ -1,6 +1,6 @@
package com.pig4cloud.pig.auth.support.password;
package com.rax.auth.support.password;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationProvider;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationProvider;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.security.authentication.AuthenticationManager;

View File

@ -1,6 +1,6 @@
package com.pig4cloud.pig.auth.support.password;
package com.rax.auth.support.password;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationToken;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.oauth2.core.AuthorizationGrantType;

View File

@ -0,0 +1,4 @@
/**
* 密码模式
*/
package com.rax.auth.support.password;

View File

@ -1,8 +1,8 @@
package com.pig4cloud.pig.auth.support.sms;
package com.rax.auth.support.sms;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationConverter;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.pig4cloud.pig.common.security.util.OAuth2EndpointUtils;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationConverter;
import com.rax.common.core.constant.SecurityConstants;
import com.rax.common.security.util.OAuth2EndpointUtils;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.security.core.Authentication;
import org.springframework.security.oauth2.core.AuthorizationGrantType;

View File

@ -1,7 +1,7 @@
package com.pig4cloud.pig.auth.support.sms;
package com.rax.auth.support.sms;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationProvider;
import com.pig4cloud.pig.common.core.constant.SecurityConstants;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationProvider;
import com.rax.common.core.constant.SecurityConstants;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.security.authentication.AuthenticationManager;

View File

@ -1,6 +1,6 @@
package com.pig4cloud.pig.auth.support.sms;
package com.rax.auth.support.sms;
import com.pig4cloud.pig.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationToken;
import com.rax.auth.support.base.OAuth2ResourceOwnerBaseAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.oauth2.core.AuthorizationGrantType;

View File

@ -0,0 +1,4 @@
/**
* 短信模式
*/
package com.rax.auth.support.sms;

View File

@ -1,8 +1,8 @@
FROM alibabadragonwell/dragonwell:17-anolis
WORKDIR /pig-codegen
WORKDIR /codegen
ARG JAR_FILE=target/pig-codegen.jar
ARG JAR_FILE=target/codegen.jar
COPY ${JAR_FILE} app.jar

View File

@ -1,31 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.pig4cloud</groupId>
<artifactId>pig</artifactId>
<groupId>com.rax</groupId>
<artifactId>rax</artifactId>
<version>3.7.3</version>
</parent>
<artifactId>pig-codegen</artifactId>
<artifactId>codegen</artifactId>
<packaging>jar</packaging>
<description>代码生成模块</description>
@ -33,18 +18,18 @@
<dependencies>
<!--接口文档-->
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-swagger</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-swagger</artifactId>
</dependency>
<!--断路器依赖-->
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-feign</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-feign</artifactId>
</dependency>
<!--数据源-->
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-datasource</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-datasource</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
@ -60,8 +45,8 @@
<artifactId>hutool-json</artifactId>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-core</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-core</artifactId>
</dependency>
<dependency>
<groupId>commons-configuration</groupId>
@ -70,13 +55,13 @@
</dependency>
<!--日志处理-->
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-log</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-log</artifactId>
</dependency>
<!--安全模块-->
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-security</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-security</artifactId>
</dependency>
<!--代码生成模板引擎-->
<dependency>

View File

@ -0,0 +1,21 @@
package com.rax.codegen;
import com.rax.common.datasource.annotation.EnableDynamicDataSource;
import com.rax.common.security.annotation.EnableRaxResourceServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author lengleng
* @date 2018/07/29 代码生成模块
*/
@EnableDynamicDataSource
@EnableRaxResourceServer
@SpringBootApplication
public class RaxCodeGenApplication {
public static void main(String[] args) {
SpringApplication.run(RaxCodeGenApplication.class, args);
}
}

View File

@ -1,20 +1,4 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.StrUtil;
@ -25,11 +9,11 @@ import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenDatasourceConf;
import com.pig4cloud.pig.codegen.service.GenDatasourceConfService;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.security.annotation.Inner;
import com.rax.codegen.entity.GenDatasourceConf;
import com.rax.codegen.service.GenDatasourceConfService;
import com.rax.common.core.util.R;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.security.annotation.Inner;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
@ -41,7 +25,6 @@ import javax.sql.DataSource;
/**
* 数据源管理
*
* @author lengleng
* @date 2019-03-31 16:00:20
*/
@RestController

View File

@ -15,17 +15,17 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenFieldType;
import com.pig4cloud.pig.codegen.service.GenFieldTypeService;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.log.annotation.SysLog;
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
import com.rax.codegen.entity.GenFieldType;
import com.rax.codegen.service.GenFieldTypeService;
import com.rax.common.core.util.R;
import com.rax.common.log.annotation.SysLog;
import com.rax.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -15,19 +15,19 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.pig4cloud.pig.codegen.service.GenGroupService;
import com.pig4cloud.pig.codegen.util.vo.GroupVo;
import com.pig4cloud.pig.codegen.util.vo.TemplateGroupDTO;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.log.annotation.SysLog;
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
import com.rax.codegen.entity.GenGroupEntity;
import com.rax.codegen.service.GenGroupService;
import com.rax.codegen.util.vo.GroupVo;
import com.rax.codegen.util.vo.TemplateGroupDTO;
import com.rax.common.core.util.R;
import com.rax.common.log.annotation.SysLog;
import com.rax.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -15,17 +15,17 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenTable;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.pig4cloud.pig.codegen.service.GenTableColumnService;
import com.pig4cloud.pig.codegen.service.GenTableService;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.log.annotation.SysLog;
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
import com.rax.codegen.entity.GenTable;
import com.rax.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.service.GenTableColumnService;
import com.rax.codegen.service.GenTableService;
import com.rax.common.core.util.R;
import com.rax.common.log.annotation.SysLog;
import com.rax.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -15,18 +15,18 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.pig4cloud.pig.codegen.service.GenTemplateService;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.log.annotation.SysLog;
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
import com.rax.codegen.entity.GenTemplateEntity;
import com.rax.codegen.service.GenTemplateService;
import com.rax.common.core.util.R;
import com.rax.common.log.annotation.SysLog;
import com.rax.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -15,17 +15,17 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity;
import com.pig4cloud.pig.codegen.service.GenTemplateGroupService;
import com.pig4cloud.pig.common.core.util.R;
import com.pig4cloud.pig.common.log.annotation.SysLog;
import com.pig4cloud.plugin.excel.annotation.ResponseExcel;
import com.rax.codegen.entity.GenTemplateGroupEntity;
import com.rax.codegen.service.GenTemplateGroupService;
import com.rax.common.core.util.R;
import com.rax.common.log.annotation.SysLog;
import com.rax.excel.annotation.ResponseExcel;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;

View File

@ -15,12 +15,12 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.controller;
package com.rax.codegen.controller;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.StrUtil;
import com.pig4cloud.pig.codegen.service.GeneratorService;
import com.pig4cloud.pig.common.core.util.R;
import com.rax.codegen.service.GeneratorService;
import com.rax.common.core.util.R;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import lombok.Data;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import lombok.Data;

View File

@ -14,7 +14,7 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.entity;
package com.rax.codegen.entity;
import lombok.Data;

View File

@ -14,10 +14,10 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenDatasourceConf;
import com.rax.codegen.entity.GenDatasourceConf;
import org.apache.ibatis.annotations.Mapper;
/**

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import org.apache.ibatis.annotations.Mapper;

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenFieldType;
import com.rax.codegen.entity.GenFieldType;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

View File

@ -15,11 +15,11 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.pig4cloud.pig.codegen.util.vo.GroupVo;
import com.rax.codegen.entity.GenGroupEntity;
import com.rax.codegen.util.vo.GroupVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.entity.GenTableColumnEntity;
import org.apache.ibatis.annotations.Mapper;
/**

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenTable;
import com.rax.codegen.entity.GenTable;
import org.apache.ibatis.annotations.Mapper;
/**

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity;
import com.rax.codegen.entity.GenTemplateGroupEntity;
import org.apache.ibatis.annotations.Mapper;
/**

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.rax.codegen.entity.GenTemplateEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

View File

@ -15,14 +15,14 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pig.codegen.entity.ColumnEntity;
import com.rax.codegen.entity.ColumnEntity;
import org.apache.ibatis.annotations.Param;
import java.util.List;

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.mapper;
package com.rax.codegen.mapper;
import org.apache.ibatis.annotations.Mapper;

View File

@ -14,10 +14,10 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenDatasourceConf;
import com.rax.codegen.entity.GenDatasourceConf;
/**
* 数据源表

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenFieldType;
import com.rax.codegen.entity.GenFieldType;
import java.util.Set;

View File

@ -15,12 +15,12 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.pig4cloud.pig.codegen.util.vo.GroupVo;
import com.pig4cloud.pig.codegen.util.vo.TemplateGroupDTO;
import com.rax.codegen.entity.GenGroupEntity;
import com.rax.codegen.util.vo.GroupVo;
import com.rax.codegen.util.vo.TemplateGroupDTO;
/**
* 模板分组

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.entity.GenTableColumnEntity;
import java.util.List;

View File

@ -15,12 +15,12 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenTable;
import com.rax.codegen.entity.GenTable;
import java.util.List;
import java.util.Map;

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity;
import com.rax.codegen.entity.GenTemplateGroupEntity;
/**
* 模板分组关联表

View File

@ -15,10 +15,10 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.rax.codegen.entity.GenTemplateEntity;
/**
* 模板

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service;
package com.rax.codegen.service;
import java.util.List;
import java.util.Map;

View File

@ -14,7 +14,7 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
@ -23,12 +23,12 @@ import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
import com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator;
import com.baomidou.dynamic.datasource.creator.druid.DruidConfig;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenDatasourceConf;
import com.pig4cloud.pig.codegen.mapper.GenDatasourceConfMapper;
import com.pig4cloud.pig.codegen.service.GenDatasourceConfService;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.datasource.enums.DsConfTypeEnum;
import com.pig4cloud.pig.common.datasource.enums.DsJdbcUrlEnum;
import com.rax.codegen.entity.GenDatasourceConf;
import com.rax.codegen.mapper.GenDatasourceConfMapper;
import com.rax.codegen.service.GenDatasourceConfService;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.datasource.enums.DsConfTypeEnum;
import com.rax.common.datasource.enums.DsJdbcUrlEnum;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.jasypt.encryption.StringEncryptor;

View File

@ -14,13 +14,13 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenFieldType;
import com.pig4cloud.pig.codegen.mapper.GenFieldTypeMapper;
import com.pig4cloud.pig.codegen.service.GenFieldTypeService;
import com.rax.codegen.entity.GenFieldType;
import com.rax.codegen.mapper.GenFieldTypeMapper;
import com.rax.codegen.service.GenFieldTypeService;
import org.springframework.stereotype.Service;
import java.util.Set;

View File

@ -14,19 +14,19 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity;
import com.pig4cloud.pig.codegen.mapper.GenGroupMapper;
import com.pig4cloud.pig.codegen.service.GenGroupService;
import com.pig4cloud.pig.codegen.service.GenTemplateGroupService;
import com.pig4cloud.pig.codegen.util.vo.GroupVo;
import com.pig4cloud.pig.codegen.util.vo.TemplateGroupDTO;
import com.rax.codegen.entity.GenGroupEntity;
import com.rax.codegen.entity.GenTemplateGroupEntity;
import com.rax.codegen.mapper.GenGroupMapper;
import com.rax.codegen.service.GenGroupService;
import com.rax.codegen.service.GenTemplateGroupService;
import com.rax.codegen.util.vo.GroupVo;
import com.rax.codegen.util.vo.TemplateGroupDTO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

View File

@ -1,13 +1,13 @@
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.text.NamingCase;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenFieldType;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.pig4cloud.pig.codegen.mapper.GenFieldTypeMapper;
import com.pig4cloud.pig.codegen.mapper.GenTableColumnMapper;
import com.pig4cloud.pig.codegen.service.GenTableColumnService;
import com.rax.codegen.entity.GenFieldType;
import com.rax.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.mapper.GenFieldTypeMapper;
import com.rax.codegen.mapper.GenTableColumnMapper;
import com.rax.codegen.service.GenTableColumnService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

View File

@ -14,7 +14,7 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.io.IoUtil;
import cn.hutool.core.io.resource.ClassPathResource;
@ -29,18 +29,18 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.pig4cloud.pig.codegen.entity.GenTable;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.pig4cloud.pig.codegen.mapper.GenTableMapper;
import com.pig4cloud.pig.codegen.mapper.GeneratorMapper;
import com.pig4cloud.pig.codegen.service.GenGroupService;
import com.pig4cloud.pig.codegen.service.GenTableColumnService;
import com.pig4cloud.pig.codegen.service.GenTableService;
import com.pig4cloud.pig.codegen.util.BoolFillEnum;
import com.pig4cloud.pig.codegen.util.CommonColumnFiledEnum;
import com.pig4cloud.pig.codegen.util.GenKit;
import com.pig4cloud.pig.codegen.util.GeneratorTypeEnum;
import com.rax.codegen.entity.GenGroupEntity;
import com.rax.codegen.entity.GenTable;
import com.rax.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.mapper.GenTableMapper;
import com.rax.codegen.mapper.GeneratorMapper;
import com.rax.codegen.service.GenGroupService;
import com.rax.codegen.service.GenTableColumnService;
import com.rax.codegen.service.GenTableService;
import com.rax.codegen.util.BoolFillEnum;
import com.rax.codegen.util.CommonColumnFiledEnum;
import com.rax.codegen.util.GenKit;
import com.rax.codegen.util.GeneratorTypeEnum;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

View File

@ -14,12 +14,12 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity;
import com.pig4cloud.pig.codegen.mapper.GenTemplateGroupMapper;
import com.pig4cloud.pig.codegen.service.GenTemplateGroupService;
import com.rax.codegen.entity.GenTemplateGroupEntity;
import com.rax.codegen.mapper.GenTemplateGroupMapper;
import com.rax.codegen.service.GenTemplateGroupService;
import org.springframework.stereotype.Service;
/**

View File

@ -14,12 +14,12 @@
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.pig4cloud.pig.codegen.mapper.GenTemplateMapper;
import com.pig4cloud.pig.codegen.service.GenTemplateService;
import com.rax.codegen.entity.GenTemplateEntity;
import com.rax.codegen.mapper.GenTemplateMapper;
import com.rax.codegen.service.GenTemplateService;
import org.springframework.stereotype.Service;
/**

View File

@ -15,7 +15,7 @@
* Author: lengleng (wangiegie@gmail.com)
*/
package com.pig4cloud.pig.codegen.service.impl;
package com.rax.codegen.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
@ -24,12 +24,13 @@ import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.BooleanUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONObject;
import com.pig4cloud.pig.codegen.entity.GenTable;
import com.pig4cloud.pig.codegen.entity.GenTableColumnEntity;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.pig4cloud.pig.codegen.service.*;
import com.pig4cloud.pig.codegen.util.VelocityKit;
import com.pig4cloud.pig.codegen.util.vo.GroupVo;
import com.rax.codegen.entity.GenTable;
import com.rax.codegen.entity.GenTableColumnEntity;
import com.rax.codegen.entity.GenTemplateEntity;
import com.rax.codegen.service.*;
import com.rax.codegen.util.VelocityKit;
import com.rax.codegen.util.vo.GroupVo;
import com.rax.codegen.service.*;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import lombok.Getter;
import lombok.RequiredArgsConstructor;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;

View File

@ -1,12 +1,12 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.pig4cloud.pig.codegen.entity.GenDatasourceConf;
import com.pig4cloud.pig.codegen.mapper.GenDatasourceConfMapper;
import com.pig4cloud.pig.codegen.mapper.GeneratorMapper;
import com.pig4cloud.pig.common.core.util.SpringContextHolder;
import com.pig4cloud.pig.common.datasource.enums.DsJdbcUrlEnum;
import com.rax.codegen.entity.GenDatasourceConf;
import com.rax.codegen.mapper.GenDatasourceConfMapper;
import com.rax.codegen.mapper.GeneratorMapper;
import com.rax.common.core.util.SpringContextHolder;
import com.rax.common.datasource.enums.DsJdbcUrlEnum;
import lombok.experimental.UtilityClass;
import org.springframework.context.ApplicationContext;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import lombok.Getter;
import lombok.RequiredArgsConstructor;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import cn.hutool.core.text.NamingCase;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util;
package com.rax.codegen.util;
import cn.hutool.core.util.CharsetUtil;
import org.apache.velocity.VelocityContext;

View File

@ -1,8 +1,8 @@
package com.pig4cloud.pig.codegen.util.vo;
package com.rax.codegen.util.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.pig4cloud.pig.codegen.entity.GenTemplateEntity;
import com.rax.codegen.entity.GenTemplateEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.codegen.util.vo;
package com.rax.codegen.util.vo;
import lombok.Data;

View File

@ -1,6 +1,6 @@
package com.pig4cloud.pig.codegen.util.vo;
package com.rax.codegen.util.vo;
import com.pig4cloud.pig.codegen.entity.GenGroupEntity;
import com.rax.codegen.entity.GenGroupEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

View File

@ -21,9 +21,9 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GenFieldTypeMapper">
<mapper namespace="com.rax.codegen.mapper.GenFieldTypeMapper">
<resultMap id="fieldTypeMap" type="com.pig4cloud.pig.codegen.entity.GenFieldType">
<resultMap id="fieldTypeMap" type="com.rax.codegen.entity.GenFieldType">
<id property="id" column="id"/>
<result property="columnType" column="column_type"/>
<result property="attrType" column="attr_type"/>

View File

@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GenGroupMapper">
<mapper namespace="com.rax.codegen.mapper.GenGroupMapper">
<resultMap id="genGroupMap" type="com.pig4cloud.pig.codegen.util.vo.GroupVo">
<resultMap id="genGroupMap" type="com.rax.codegen.util.vo.GroupVo">
<id property="id" column="group_id"/>
<result property="groupName" column="group_name"/>
<result property="groupDesc" column="group_desc"/>
<collection property="templateList" ofType="com.pig4cloud.pig.codegen.entity.GenTemplateEntity"
select="com.pig4cloud.pig.codegen.mapper.GenTemplateMapper.listTemplateById" column="group_id">
<collection property="templateList" ofType="com.rax.codegen.entity.GenTemplateEntity"
select="com.rax.codegen.mapper.GenTemplateMapper.listTemplateById" column="group_id">
</collection>
</resultMap>

View File

@ -21,9 +21,9 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GenTableMapper">
<mapper namespace="com.rax.codegen.mapper.GenTableMapper">
<resultMap id="tableMap" type="com.pig4cloud.pig.codegen.entity.GenTable">
<resultMap id="tableMap" type="com.rax.codegen.entity.GenTable">
<id property="id" column="id"/>
<result property="tableName" column="table_name"/>
<result property="className" column="class_name"/>

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GenTemplateGroupMapper">
<mapper namespace="com.rax.codegen.mapper.GenTemplateGroupMapper">
<resultMap id="genTemplateGroupMap" type="com.pig4cloud.pig.codegen.entity.GenTemplateGroupEntity">
<resultMap id="genTemplateGroupMap" type="com.rax.codegen.entity.GenTemplateGroupEntity">
<id property="groupId" column="group_id"/>
<id property="templateId" column="template_id"/>
</resultMap>

View File

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GenTemplateMapper">
<mapper namespace="com.rax.codegen.mapper.GenTemplateMapper">
<resultMap id="genTemplateMap" type="com.pig4cloud.pig.codegen.entity.GenTemplateEntity">
<resultMap id="genTemplateMap" type="com.rax.codegen.entity.GenTemplateEntity">
<id property="id" column="id"/>
<result property="templateName" column="template_name"/>
<result property="generatorPath" column="generator_path"/>
<result property="templateDesc" column="template_desc"/>
<result property="templateCode" column="template_code"/>
</resultMap>
<select id="listTemplateById" resultType="com.pig4cloud.pig.codegen.entity.GenTemplateEntity">
<select id="listTemplateById" resultType="com.rax.codegen.entity.GenTemplateEntity">
SELECT
t.id as id,t.template_name,t.generator_path,t.template_desc,t.template_code
FROM gen_template t ,

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.pig4cloud.pig.codegen.mapper.GeneratorMysqlMapper">
<mapper namespace="com.rax.codegen.mapper.GeneratorMysqlMapper">
<select id="queryTable" resultType="map">
SELECT
@ -37,7 +37,7 @@
table_name = #{tableName} and table_schema = (select database()) order by ordinal_position
</sql>
<select id="selectTableColumn" resultType="com.pig4cloud.pig.codegen.entity.ColumnEntity">
<select id="selectTableColumn" resultType="com.rax.codegen.entity.ColumnEntity">
<include refid="queryColumn"/>
</select>

View File

@ -4,17 +4,17 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-bom</artifactId>
<groupId>com.rax</groupId>
<artifactId>common-bom</artifactId>
<version>3.7.3</version>
<packaging>pom</packaging>
<name>pig-common-bom</name>
<url>pig cloud parent</url>
<description>pig cloud parent</description>
<name>common-bom</name>
<url>parent</url>
<description>parent</description>
<properties>
<pig.common.version>${project.version}</pig.common.version>
<common.version>${project.version}</common.version>
<spring-boot.version>3.2.1</spring-boot.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<log4j2.version>2.17.1</log4j2.version>
@ -43,64 +43,74 @@
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-core</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-core</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-datasource</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-datasource</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-log</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-log</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-mybatis</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-mybatis</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-oss</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-oss</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-security</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-security</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-feign</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-feign</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-swagger</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-swagger</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-xss</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>common-xss</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-upms-api</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>excel-spring-boot-starter</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-auth</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>upms-api</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-quartz</artifactId>
<version>${pig.common.version}</version>
<groupId>com.rax</groupId>
<artifactId>auth</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.rax</groupId>
<artifactId>quartz</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.rax</groupId>
<artifactId>vital-signs</artifactId>
<version>${common.version}</version>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
@ -139,12 +149,6 @@
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
<!-- excel 导入导出 -->
<dependency>
<groupId>com.pig4cloud.excel</groupId>
<artifactId>excel-spring-boot-starter</artifactId>
<version>${excel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>shardingsphere-jdbc-core</artifactId>

View File

@ -1,33 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common</artifactId>
<groupId>com.rax</groupId>
<artifactId>common</artifactId>
<version>3.7.3</version>
</parent>
<artifactId>pig-common-core</artifactId>
<artifactId>common-core</artifactId>
<packaging>jar</packaging>
<description>pig 公共工具类核心包</description>
<description> 公共工具类核心包</description>
<dependencies>

View File

@ -1,25 +1,9 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.common.core.config;
package com.rax.common.core.config;
import cn.hutool.core.date.DatePattern;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.pig4cloud.pig.common.core.jackson.PigJavaTimeModule;
import com.rax.common.core.jackson.RaxJavaTimeModule;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@ -53,7 +37,7 @@ public class JacksonConfiguration {
builder.timeZone(TimeZone.getTimeZone(ZoneId.systemDefault()));
builder.simpleDateFormat(DatePattern.NORM_DATETIME_PATTERN);
builder.serializerByType(Long.class, ToStringSerializer.instance);
builder.modules(new PigJavaTimeModule());
builder.modules(new RaxJavaTimeModule());
};
}

View File

@ -1,20 +1,4 @@
/*
* Copyright (c) 2020 pig4cloud Authors. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.pig4cloud.pig.common.core.config;
package com.rax.common.core.config;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;

View File

@ -0,0 +1,19 @@
package com.rax.common.core.config;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;
/**
* @author lengleng
* @date 2019/2/1 RestTemplate
*/
@AutoConfiguration
public class RestTemplateConfiguration {
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}

View File

@ -1,4 +1,4 @@
package com.pig4cloud.pig.common.core.config;
package com.rax.common.core.config;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfiguration;
@ -47,7 +47,7 @@ public class TaskExecutorConfiguration implements AsyncConfigurer {
taskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
taskExecutor.setWaitForTasksToCompleteOnShutdown(true);
taskExecutor.setAwaitTerminationSeconds(awaitTerminationSeconds.orElse(60));
taskExecutor.setThreadNamePrefix("PIG-Thread-");
taskExecutor.setThreadNamePrefix("RAX-Thread-");
taskExecutor.initialize();
return taskExecutor;
}

Some files were not shown because too many files have changed in this diff Show More