mirror of
https://gitee.com/huangge1199_admin/vue-pro.git
synced 2024-11-25 16:51:52 +08:00
将 tool 合并到 infra 模块
This commit is contained in:
parent
716bbb9813
commit
5a2169b688
44
README.md
44
README.md
@ -22,7 +22,7 @@
|
|||||||
* 集成阿里云、腾讯云、云片等短信渠道,集成阿里云、腾讯云、七牛云等云存储服务。
|
* 集成阿里云、腾讯云、云片等短信渠道,集成阿里云、腾讯云、七牛云等云存储服务。
|
||||||
|
|
||||||
| 项目名 | 说明 | 传说门 |
|
| 项目名 | 说明 | 传说门 |
|
||||||
| ---- |------------------------| ---- |
|
|--------------------|------------------------|-------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| `ruoyi-vue-pro` | Spring Boot 多模块 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-pro)** [Github](https://github.com/YunaiV/ruoyi-vue-pro) |
|
| `ruoyi-vue-pro` | Spring Boot 多模块 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-pro)** [Github](https://github.com/YunaiV/ruoyi-vue-pro) |
|
||||||
| `ruoyi-vue-cloud` | Spring Cloud 微服务 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-cloud)** [Github](https://github.com/YunaiV/onemall) |
|
| `ruoyi-vue-cloud` | Spring Cloud 微服务 | **[Gitee](https://gitee.com/zhijiantianya/ruoyi-vue-cloud)** [Github](https://github.com/YunaiV/onemall) |
|
||||||
| `Spring-Boot-Labs` | Spring Boot & Cloud 入门 | **[Gitee](https://gitee.com/zhijiantianya/SpringBoot-Labs)** [Github](https://github.com/YunaiV/SpringBoot-Labs) |
|
| `Spring-Boot-Labs` | Spring Boot & Cloud 入门 | **[Gitee](https://gitee.com/zhijiantianya/SpringBoot-Labs)** [Github](https://github.com/YunaiV/SpringBoot-Labs) |
|
||||||
@ -45,7 +45,6 @@
|
|||||||
* 支付系统
|
* 支付系统
|
||||||
* 商城系统
|
* 商城系统
|
||||||
* 基础设施
|
* 基础设施
|
||||||
* 研发工具
|
|
||||||
|
|
||||||
> 友情提示:本项目基于 RuoYi-Vue 修改,**重构优化**后端的代码,**美化**前端的界面。
|
> 友情提示:本项目基于 RuoYi-Vue 修改,**重构优化**后端的代码,**美化**前端的界面。
|
||||||
>
|
>
|
||||||
@ -57,7 +56,7 @@
|
|||||||
### 系统功能
|
### 系统功能
|
||||||
|
|
||||||
| | 功能 | 描述 |
|
| | 功能 | 描述 |
|
||||||
| --- | --- | --- |
|
|-----|-------|---------------------------------|
|
||||||
| | 用户管理 | 用户是系统操作者,该功能主要完成系统用户配置 |
|
| | 用户管理 | 用户是系统操作者,该功能主要完成系统用户配置 |
|
||||||
| ⭐️ | 在线用户 | 当前系统中活跃用户状态监控,支持手动踢下线 |
|
| ⭐️ | 在线用户 | 当前系统中活跃用户状态监控,支持手动踢下线 |
|
||||||
| | 角色管理 | 角色菜单权限分配、设置角色按机构进行数据范围权限划分 |
|
| | 角色管理 | 角色菜单权限分配、设置角色按机构进行数据范围权限划分 |
|
||||||
@ -76,7 +75,7 @@
|
|||||||
### 工作流程
|
### 工作流程
|
||||||
|
|
||||||
| | 功能 | 描述 |
|
| | 功能 | 描述 |
|
||||||
| --- | --- | --- |
|
|-----|-------|----------------------------------------|
|
||||||
| 🚀 | 流程模型 | 配置工作流的流程模型,支持文件导入与在线设计流程图,提供 7 种任务分配规则 |
|
| 🚀 | 流程模型 | 配置工作流的流程模型,支持文件导入与在线设计流程图,提供 7 种任务分配规则 |
|
||||||
| 🚀 | 流程表单 | 拖动表单元素生成相应的工作流表单,覆盖 Element UI 所有的表单组件 |
|
| 🚀 | 流程表单 | 拖动表单元素生成相应的工作流表单,覆盖 Element UI 所有的表单组件 |
|
||||||
| 🚀 | 用户分组 | 自定义用户分组,可用于工作流的审批分组 |
|
| 🚀 | 用户分组 | 自定义用户分组,可用于工作流的审批分组 |
|
||||||
@ -88,7 +87,7 @@
|
|||||||
### 支付系统
|
### 支付系统
|
||||||
|
|
||||||
| | 功能 | 描述 |
|
| | 功能 | 描述 |
|
||||||
| --- | --- | --- |
|
|-----|------|---------------------------|
|
||||||
| 🚀 | 商户信息 | 管理商户信息,支持 Saas 场景下的多商户功能 |
|
| 🚀 | 商户信息 | 管理商户信息,支持 Saas 场景下的多商户功能 |
|
||||||
| 🚀 | 应用信息 | 配置商户的应用信息,对接支付宝、微信等多个支付渠道 |
|
| 🚀 | 应用信息 | 配置商户的应用信息,对接支付宝、微信等多个支付渠道 |
|
||||||
| 🚀 | 支付订单 | 查看用户发起的支付宝、微信等的【支付】订单 |
|
| 🚀 | 支付订单 | 查看用户发起的支付宝、微信等的【支付】订单 |
|
||||||
@ -110,7 +109,11 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 基础设施
|
### 基础设施
|
||||||
|
|
||||||
| | 功能 | 描述 |
|
| | 功能 | 描述 |
|
||||||
| --- | --- | --- |
|
|-----|----------|----------------------------------------------|
|
||||||
|
| 🚀 | 代码生成 | 前后端代码的生成(Java、Vue、SQL、单元测试),支持 CRUD 下载 |
|
||||||
|
| 🚀 | 系统接口 | 基于 Swagger 自动生成相关的 RESTful API 接口文档 |
|
||||||
|
| 🚀 | 数据库文档 | 基于 Screw 自动生成数据库文档,支持导出 Word、HTML、MD 格式 |
|
||||||
|
| | 表单构建 | 拖动表单元素生成相应的 HTML 代码,支持导出 JSON、Vue 文件 |
|
||||||
| 🚀 | 配置管理 | 对系统动态配置常用参数,支持 SpringBoot 加载 |
|
| 🚀 | 配置管理 | 对系统动态配置常用参数,支持 SpringBoot 加载 |
|
||||||
| ⭐️ | 定时任务 | 在线(添加、修改、删除)任务调度包含执行结果日志 |
|
| ⭐️ | 定时任务 | 在线(添加、修改、删除)任务调度包含执行结果日志 |
|
||||||
| 🚀 | 文件服务 | 支持本地文件存储,同时支持兼容 Amazon S3 协议的云服务、开源组件 |
|
| 🚀 | 文件服务 | 支持本地文件存储,同时支持兼容 Amazon S3 协议的云服务、开源组件 |
|
||||||
@ -127,15 +130,6 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
| 🚀 | 日志服务 | 轻量级日志中心,查看远程服务器的日志 |
|
| 🚀 | 日志服务 | 轻量级日志中心,查看远程服务器的日志 |
|
||||||
| 🚀 | 单元测试 | 基于 JUnit + Mockito 实现单元测试,保证功能的正确性、代码的质量等 |
|
| 🚀 | 单元测试 | 基于 JUnit + Mockito 实现单元测试,保证功能的正确性、代码的质量等 |
|
||||||
|
|
||||||
### 研发工具
|
|
||||||
|
|
||||||
| | 功能 | 描述 |
|
|
||||||
| --- | --- | --- |
|
|
||||||
| 🚀 | 代码生成 |前后端代码的生成(Java、Vue、SQL、单元测试),支持 CRUD 下载 |
|
|
||||||
| 🚀 | 系统接口 | 基于 Swagger 自动生成相关的 RESTful API 接口文档 |
|
|
||||||
| 🚀 | 数据库文档 | 基于 Screw 自动生成数据库文档,支持导出 Word、HTML、MD 格式 |
|
|
||||||
| | 表单构建 | 拖动表单元素生成相应的 HTML 代码,支持导出 JSON、Vue 文件 |
|
|
||||||
|
|
||||||
## 🐨 技术栈
|
## 🐨 技术栈
|
||||||
|
|
||||||
| 项目 | 说明 |
|
| 项目 | 说明 |
|
||||||
@ -155,7 +149,7 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 后端
|
### 后端
|
||||||
|
|
||||||
| 框架 | 说明 | 版本 | 学习指南 |
|
| 框架 | 说明 | 版本 | 学习指南 |
|
||||||
| --- | --- |----------| --- |
|
|---------------------------------------------------------------------------------------------|------------------|----------|----------------------------------------------------------------|
|
||||||
| [Spring Boot](https://spring.io/projects/spring-boot) | 应用开发框架 | 2.5.10 | [文档](https://github.com/YunaiV/SpringBoot-Labs) |
|
| [Spring Boot](https://spring.io/projects/spring-boot) | 应用开发框架 | 2.5.10 | [文档](https://github.com/YunaiV/SpringBoot-Labs) |
|
||||||
| [MySQL](https://www.mysql.com/cn/) | 数据库服务器 | 5.7 | |
|
| [MySQL](https://www.mysql.com/cn/) | 数据库服务器 | 5.7 | |
|
||||||
| [Druid](https://github.com/alibaba/druid) | JDBC 连接池、监控组件 | 1.2.8 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
|
| [Druid](https://github.com/alibaba/druid) | JDBC 连接池、监控组件 | 1.2.8 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
|
||||||
@ -181,7 +175,7 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 前端
|
### 前端
|
||||||
|
|
||||||
| 框架 | 说明 | 版本 |
|
| 框架 | 说明 | 版本 |
|
||||||
| --- | --- | --- |
|
|------------------------------------------------------------------------------|---------------|--------|
|
||||||
| [Vue](https://cn.vuejs.org/index.html) | JavaScript 框架 | 2.6.12 |
|
| [Vue](https://cn.vuejs.org/index.html) | JavaScript 框架 | 2.6.12 |
|
||||||
| [Vue Element Admin](https://panjiachen.github.io/vue-element-admin-site/zh/) | 后台前端解决方案 | - |
|
| [Vue Element Admin](https://panjiachen.github.io/vue-element-admin-site/zh/) | 后台前端解决方案 | - |
|
||||||
|
|
||||||
@ -190,7 +184,7 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 系统功能
|
### 系统功能
|
||||||
|
|
||||||
| 模块 | biu | biu | biu |
|
| 模块 | biu | biu | biu |
|
||||||
| --- | --- |------------------------------------------------------------------| --- |
|
|----------|--------------------------------------------------------------------|------------------------------------------------------------------|------------------------------------------------------------------|
|
||||||
| 登录 & 首页 | ![登录](https://static.iocoder.cn/images/ruoyi-vue-pro/登录.jpg) | ![首页](https://static.iocoder.cn/images/ruoyi-vue-pro/首页.jpg) | ![个人中心](https://static.iocoder.cn/images/ruoyi-vue-pro/个人中心.jpg) |
|
| 登录 & 首页 | ![登录](https://static.iocoder.cn/images/ruoyi-vue-pro/登录.jpg) | ![首页](https://static.iocoder.cn/images/ruoyi-vue-pro/首页.jpg) | ![个人中心](https://static.iocoder.cn/images/ruoyi-vue-pro/个人中心.jpg) |
|
||||||
| 用户 | ![用户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/用户管理.jpg) | ![在线用户](https://static.iocoder.cn/images/ruoyi-vue-pro/在线用户.jpg) | - |
|
| 用户 | ![用户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/用户管理.jpg) | ![在线用户](https://static.iocoder.cn/images/ruoyi-vue-pro/在线用户.jpg) | - |
|
||||||
| 租户 & 套餐 | ![租户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/租户管理.jpg) | ![租户套餐](https://static.iocoder.cn/images/ruoyi-vue-pro/租户套餐.png) | - |
|
| 租户 & 套餐 | ![租户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/租户管理.jpg) | ![租户套餐](https://static.iocoder.cn/images/ruoyi-vue-pro/租户套餐.png) | - |
|
||||||
@ -204,7 +198,7 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 工作流程
|
### 工作流程
|
||||||
|
|
||||||
| 模块 | biu | biu | biu |
|
| 模块 | biu | biu | biu |
|
||||||
| --- | --- | --- | --- |
|
|---------|------------------------------------------------------------------------|------------------------------------------------------------------------|------------------------------------------------------------------------|
|
||||||
| 流程模型 | ![流程模型-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-列表.jpg) | ![流程模型-设计](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-设计.jpg) | ![流程模型-定义](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-定义.jpg) |
|
| 流程模型 | ![流程模型-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-列表.jpg) | ![流程模型-设计](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-设计.jpg) | ![流程模型-定义](https://static.iocoder.cn/images/ruoyi-vue-pro/流程模型-定义.jpg) |
|
||||||
| 表单 & 分组 | ![流程表单](https://static.iocoder.cn/images/ruoyi-vue-pro/流程表单.jpg) | ![用户分组](https://static.iocoder.cn/images/ruoyi-vue-pro/用户分组.jpg) | - |
|
| 表单 & 分组 | ![流程表单](https://static.iocoder.cn/images/ruoyi-vue-pro/流程表单.jpg) | ![用户分组](https://static.iocoder.cn/images/ruoyi-vue-pro/用户分组.jpg) | - |
|
||||||
| 我的流程 | ![我的流程-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-列表.jpg) | ![我的流程-发起](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-发起.jpg) | ![我的流程-详情](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-详情.jpg) |
|
| 我的流程 | ![我的流程-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-列表.jpg) | ![我的流程-发起](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-发起.jpg) | ![我的流程-详情](https://static.iocoder.cn/images/ruoyi-vue-pro/我的流程-详情.jpg) |
|
||||||
@ -214,23 +208,19 @@ ps:核心功能已经实现,正在对接微信小程序中...
|
|||||||
### 支付系统
|
### 支付系统
|
||||||
|
|
||||||
| 模块 | biu | biu | biu |
|
| 模块 | biu | biu | biu |
|
||||||
| --- | --- | --- | --- |
|
|---------|------------------------------------------------------------------|------------------------------------------------------------------------|------------------------------------------------------------------------|
|
||||||
| 商家 & 应用 | ![商户信息](https://static.iocoder.cn/images/ruoyi-vue-pro/商户信息.jpg) | ![应用信息-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/应用信息-列表.jpg) | ![应用信息-编辑](https://static.iocoder.cn/images/ruoyi-vue-pro/应用信息-编辑.jpg) |
|
| 商家 & 应用 | ![商户信息](https://static.iocoder.cn/images/ruoyi-vue-pro/商户信息.jpg) | ![应用信息-列表](https://static.iocoder.cn/images/ruoyi-vue-pro/应用信息-列表.jpg) | ![应用信息-编辑](https://static.iocoder.cn/images/ruoyi-vue-pro/应用信息-编辑.jpg) |
|
||||||
| 支付 & 退款 | ![支付订单](https://static.iocoder.cn/images/ruoyi-vue-pro/支付订单.jpg) | ![退款订单](https://static.iocoder.cn/images/ruoyi-vue-pro/退款订单.jpg) | --- |
|
| 支付 & 退款 | ![支付订单](https://static.iocoder.cn/images/ruoyi-vue-pro/支付订单.jpg) | ![退款订单](https://static.iocoder.cn/images/ruoyi-vue-pro/退款订单.jpg) | --- |
|
||||||
|
|
||||||
### 基础设施
|
### 基础设施
|
||||||
|
|
||||||
| 模块 | biu | biu | biu |
|
| 模块 | biu | biu | biu |
|
||||||
| --- | --- | --- | --- |
|
|---------------|----------------------------------------------------------------------|--------------------------------------------------------------------|------------------------------------------------------------------|
|
||||||
|
| 代码生成 | ![代码生成](https://static.iocoder.cn/images/ruoyi-vue-pro/代码生成.jpg) | ![生成效果](https://static.iocoder.cn/images/ruoyi-vue-pro/生成效果.jpg) | - |
|
||||||
|
| 文档 | ![系统接口](https://static.iocoder.cn/images/ruoyi-vue-pro/系统接口.jpg) | ![数据库文档](https://static.iocoder.cn/images/ruoyi-vue-pro/数据库文档.jpg) | - |
|
||||||
| 文件 & 配置 | ![文件管理](https://static.iocoder.cn/images/ruoyi-vue-pro/文件管理.jpg) | ![配置管理](https://static.iocoder.cn/images/ruoyi-vue-pro/配置管理.jpg) | - |
|
| 文件 & 配置 | ![文件管理](https://static.iocoder.cn/images/ruoyi-vue-pro/文件管理.jpg) | ![配置管理](https://static.iocoder.cn/images/ruoyi-vue-pro/配置管理.jpg) | - |
|
||||||
| 定时任务 | ![定时任务](https://static.iocoder.cn/images/ruoyi-vue-pro/定时任务.jpg) | ![任务日志](https://static.iocoder.cn/images/ruoyi-vue-pro/任务日志.jpg) | - |
|
| 定时任务 | ![定时任务](https://static.iocoder.cn/images/ruoyi-vue-pro/定时任务.jpg) | ![任务日志](https://static.iocoder.cn/images/ruoyi-vue-pro/任务日志.jpg) | - |
|
||||||
| API 日志 | ![访问日志](https://static.iocoder.cn/images/ruoyi-vue-pro/访问日志.jpg) | ![错误日志](https://static.iocoder.cn/images/ruoyi-vue-pro/错误日志.jpg) | - |
|
| API 日志 | ![访问日志](https://static.iocoder.cn/images/ruoyi-vue-pro/访问日志.jpg) | ![错误日志](https://static.iocoder.cn/images/ruoyi-vue-pro/错误日志.jpg) | - |
|
||||||
| MySQL & Redis | ![MySQL](https://static.iocoder.cn/images/ruoyi-vue-pro/MySQL.jpg) | ![Redis](https://static.iocoder.cn/images/ruoyi-vue-pro/Redis.jpg) | - |
|
| MySQL & Redis | ![MySQL](https://static.iocoder.cn/images/ruoyi-vue-pro/MySQL.jpg) | ![Redis](https://static.iocoder.cn/images/ruoyi-vue-pro/Redis.jpg) | - |
|
||||||
| 监控平台 | ![Java监控](https://static.iocoder.cn/images/ruoyi-vue-pro/Java监控.jpg) | ![链路追踪](https://static.iocoder.cn/images/ruoyi-vue-pro/链路追踪.jpg) | ![日志中心](https://static.iocoder.cn/images/ruoyi-vue-pro/日志中心.jpg) |
|
| 监控平台 | ![Java监控](https://static.iocoder.cn/images/ruoyi-vue-pro/Java监控.jpg) | ![链路追踪](https://static.iocoder.cn/images/ruoyi-vue-pro/链路追踪.jpg) | ![日志中心](https://static.iocoder.cn/images/ruoyi-vue-pro/日志中心.jpg) |
|
||||||
|
|
||||||
### 研发工具
|
|
||||||
|
|
||||||
| 模块 | biu | biu | biu |
|
|
||||||
| --- | --- | --- | --- |
|
|
||||||
| 代码生成 | ![代码生成](https://static.iocoder.cn/images/ruoyi-vue-pro/代码生成.jpg) | ![生成效果](https://static.iocoder.cn/images/ruoyi-vue-pro/生成效果.jpg) | - |
|
|
||||||
| 文档 | ![系统接口](https://static.iocoder.cn/images/ruoyi-vue-pro/系统接口.jpg) | ![数据库文档](https://static.iocoder.cn/images/ruoyi-vue-pro/数据库文档.jpg) | - |
|
|
||||||
|
1
pom.xml
1
pom.xml
@ -17,7 +17,6 @@
|
|||||||
<module>yudao-module-bpm</module>
|
<module>yudao-module-bpm</module>
|
||||||
<module>yudao-module-system</module>
|
<module>yudao-module-system</module>
|
||||||
<module>yudao-module-infra</module>
|
<module>yudao-module-infra</module>
|
||||||
<module>yudao-module-tool</module>
|
|
||||||
<module>yudao-module-pay</module>
|
<module>yudao-module-pay</module>
|
||||||
</modules>
|
</modules>
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -17,8 +17,9 @@
|
|||||||
|
|
||||||
<name>${project.artifactId}</name>
|
<name>${project.artifactId}</name>
|
||||||
<description>
|
<description>
|
||||||
infra 包下,我们放基础设施的运维与管理,支撑上层的通用与核心业务。
|
infra 模块,主要提供两块能力:
|
||||||
例如说:定时任务的管理、服务器的信息等等
|
1. 我们放基础设施的运维与管理,支撑上层的通用与核心业务。 例如说:定时任务的管理、服务器的信息等等
|
||||||
|
2. 研发工具,提升研发效率与质量。 例如说:代码生成器、接口文档等等
|
||||||
</description>
|
</description>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
@ -32,4 +32,18 @@ public interface ErrorCodeConstants {
|
|||||||
ErrorCode FILE_NOT_EXISTS = new ErrorCode(1001003001, "文件不存在");
|
ErrorCode FILE_NOT_EXISTS = new ErrorCode(1001003001, "文件不存在");
|
||||||
ErrorCode FILE_IS_EMPTY = new ErrorCode(1001003002, "文件为空");
|
ErrorCode FILE_IS_EMPTY = new ErrorCode(1001003002, "文件为空");
|
||||||
|
|
||||||
|
// ========== 代码生成器 1001004000 ==========
|
||||||
|
ErrorCode CODEGEN_TABLE_EXISTS = new ErrorCode(1003001000, "表定义已经存在");
|
||||||
|
ErrorCode CODEGEN_IMPORT_TABLE_NULL = new ErrorCode(1003001001, "导入的表不存在");
|
||||||
|
ErrorCode CODEGEN_IMPORT_COLUMNS_NULL = new ErrorCode(1003001002, "导入的字段不存在");
|
||||||
|
ErrorCode CODEGEN_PARSE_SQL_ERROR = new ErrorCode(1003001003, "解析 SQL 失败,请检查");
|
||||||
|
ErrorCode CODEGEN_TABLE_NOT_EXISTS = new ErrorCode(1003001004, "表定义不存在");
|
||||||
|
ErrorCode CODEGEN_COLUMN_NOT_EXISTS = new ErrorCode(1003001005, "字段义不存在");
|
||||||
|
ErrorCode CODEGEN_SYNC_COLUMNS_NULL = new ErrorCode(1003001006, "同步的字段不存在");
|
||||||
|
ErrorCode CODEGEN_SYNC_NONE_CHANGE = new ErrorCode(1003001007, "同步失败,不存在改变");
|
||||||
|
|
||||||
|
// ========== 字典类型(测试) 1003000000 ==========
|
||||||
|
ErrorCode TEST_DEMO_NOT_EXISTS = new ErrorCode(1003000000, "测试示例不存在");
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -13,8 +13,9 @@
|
|||||||
|
|
||||||
<name>${project.artifactId}</name>
|
<name>${project.artifactId}</name>
|
||||||
<description>
|
<description>
|
||||||
infra 模块,我们放基础设施的运维与管理,支撑上层的通用与核心业务。
|
infra 模块,主要提供两块能力:
|
||||||
例如说:定时任务的管理、服务器的信息等等
|
1. 我们放基础设施的运维与管理,支撑上层的通用与核心业务。 例如说:定时任务的管理、服务器的信息等等
|
||||||
|
2. 研发工具,提升研发效率与质量。 例如说:代码生成器、接口文档等等
|
||||||
</description>
|
</description>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
@ -88,6 +89,11 @@
|
|||||||
<artifactId>yudao-spring-boot-starter-excel</artifactId>
|
<artifactId>yudao-spring-boot-starter-excel</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.apache.velocity</groupId>
|
||||||
|
<artifactId>velocity-engine-core</artifactId> <!-- 实现代码生成 -->
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>cn.smallbun.screw</groupId>
|
<groupId>cn.smallbun.screw</groupId>
|
||||||
<artifactId>screw-core</artifactId> <!-- 实现数据库文档 -->
|
<artifactId>screw-core</artifactId> <!-- 实现数据库文档 -->
|
||||||
|
@ -1,21 +1,20 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen;
|
||||||
|
|
||||||
import cn.hutool.core.io.IoUtil;
|
import cn.hutool.core.io.IoUtil;
|
||||||
import cn.hutool.core.util.ZipUtil;
|
import cn.hutool.core.util.ZipUtil;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenDetailRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenDetailRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenPreviewRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenPreviewRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.SchemaTableRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.SchemaTableRespVO;
|
import cn.iocoder.yudao.module.infra.convert.codegen.CodegenConvert;
|
||||||
import cn.iocoder.yudao.module.tool.convert.codegen.CodegenConvert;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.service.codegen.CodegenService;
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.CodegenService;
|
|
||||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
||||||
import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
|
import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@ -41,7 +40,7 @@ import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUti
|
|||||||
|
|
||||||
@Api(tags = "管理后台 - 代码生成器")
|
@Api(tags = "管理后台 - 代码生成器")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/tool/codegen")
|
@RequestMapping("/infra/codegen")
|
||||||
@Validated
|
@Validated
|
||||||
public class CodegenController {
|
public class CodegenController {
|
||||||
|
|
||||||
@ -54,7 +53,7 @@ public class CodegenController {
|
|||||||
@ApiImplicitParam(name = "tableName", value = "表名,模糊匹配", required = true, example = "yudao", dataTypeClass = String.class),
|
@ApiImplicitParam(name = "tableName", value = "表名,模糊匹配", required = true, example = "yudao", dataTypeClass = String.class),
|
||||||
@ApiImplicitParam(name = "tableComment", value = "描述,模糊匹配", required = true, example = "芋道", dataTypeClass = String.class)
|
@ApiImplicitParam(name = "tableComment", value = "描述,模糊匹配", required = true, example = "芋道", dataTypeClass = String.class)
|
||||||
})
|
})
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:query')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:query')")
|
||||||
public CommonResult<List<SchemaTableRespVO>> getSchemaTableList(
|
public CommonResult<List<SchemaTableRespVO>> getSchemaTableList(
|
||||||
@RequestParam(value = "tableName", required = false) String tableName,
|
@RequestParam(value = "tableName", required = false) String tableName,
|
||||||
@RequestParam(value = "tableComment", required = false) String tableComment) {
|
@RequestParam(value = "tableComment", required = false) String tableComment) {
|
||||||
@ -68,7 +67,7 @@ public class CodegenController {
|
|||||||
|
|
||||||
@GetMapping("/table/page")
|
@GetMapping("/table/page")
|
||||||
@ApiOperation("获得表定义分页")
|
@ApiOperation("获得表定义分页")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:query')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:query')")
|
||||||
public CommonResult<PageResult<CodegenTableRespVO>> getCodeGenTablePage(@Valid CodegenTablePageReqVO pageReqVO) {
|
public CommonResult<PageResult<CodegenTableRespVO>> getCodeGenTablePage(@Valid CodegenTablePageReqVO pageReqVO) {
|
||||||
PageResult<CodegenTableDO> pageResult = codegenService.getCodegenTablePage(pageReqVO);
|
PageResult<CodegenTableDO> pageResult = codegenService.getCodegenTablePage(pageReqVO);
|
||||||
return success(CodegenConvert.INSTANCE.convertPage(pageResult));
|
return success(CodegenConvert.INSTANCE.convertPage(pageResult));
|
||||||
@ -77,7 +76,7 @@ public class CodegenController {
|
|||||||
@GetMapping("/detail")
|
@GetMapping("/detail")
|
||||||
@ApiOperation("获得表和字段的明细")
|
@ApiOperation("获得表和字段的明细")
|
||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:query')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:query')")
|
||||||
public CommonResult<CodegenDetailRespVO> getCodegenDetail(@RequestParam("tableId") Long tableId) {
|
public CommonResult<CodegenDetailRespVO> getCodegenDetail(@RequestParam("tableId") Long tableId) {
|
||||||
CodegenTableDO table = codegenService.getCodegenTablePage(tableId);
|
CodegenTableDO table = codegenService.getCodegenTablePage(tableId);
|
||||||
List<CodegenColumnDO> columns = codegenService.getCodegenColumnListByTableId(tableId);
|
List<CodegenColumnDO> columns = codegenService.getCodegenColumnListByTableId(tableId);
|
||||||
@ -88,7 +87,7 @@ public class CodegenController {
|
|||||||
@ApiOperation("基于数据库的表结构,创建代码生成器的表和字段定义")
|
@ApiOperation("基于数据库的表结构,创建代码生成器的表和字段定义")
|
||||||
@ApiImplicitParam(name = "tableNames", value = "表名数组", required = true, example = "sys_user", dataTypeClass = List.class)
|
@ApiImplicitParam(name = "tableNames", value = "表名数组", required = true, example = "sys_user", dataTypeClass = List.class)
|
||||||
@PostMapping("/create-list-from-db")
|
@PostMapping("/create-list-from-db")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:create')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:create')")
|
||||||
public CommonResult<List<Long>> createCodegenListFromDB(@RequestParam("tableNames") List<String> tableNames) {
|
public CommonResult<List<Long>> createCodegenListFromDB(@RequestParam("tableNames") List<String> tableNames) {
|
||||||
return success(codegenService.createCodegenListFromDB(getLoginUserId(), tableNames));
|
return success(codegenService.createCodegenListFromDB(getLoginUserId(), tableNames));
|
||||||
}
|
}
|
||||||
@ -96,14 +95,14 @@ public class CodegenController {
|
|||||||
@ApiOperation("基于 SQL 建表语句,创建代码生成器的表和字段定义")
|
@ApiOperation("基于 SQL 建表语句,创建代码生成器的表和字段定义")
|
||||||
@ApiImplicitParam(name = "sql", value = "SQL 建表语句", required = true, example = "sql", dataTypeClass = String.class)
|
@ApiImplicitParam(name = "sql", value = "SQL 建表语句", required = true, example = "sql", dataTypeClass = String.class)
|
||||||
@PostMapping("/create-list-from-sql")
|
@PostMapping("/create-list-from-sql")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:create')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:create')")
|
||||||
public CommonResult<Long> createCodegenListFromSQL(@RequestParam("sql") String sql) {
|
public CommonResult<Long> createCodegenListFromSQL(@RequestParam("sql") String sql) {
|
||||||
return success(codegenService.createCodegenListFromSQL(getLoginUserId(), sql));
|
return success(codegenService.createCodegenListFromSQL(getLoginUserId(), sql));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("更新数据库的表和字段定义")
|
@ApiOperation("更新数据库的表和字段定义")
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:update')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:update')")
|
||||||
public CommonResult<Boolean> updateCodegen(@Valid @RequestBody CodegenUpdateReqVO updateReqVO) {
|
public CommonResult<Boolean> updateCodegen(@Valid @RequestBody CodegenUpdateReqVO updateReqVO) {
|
||||||
codegenService.updateCodegen(updateReqVO);
|
codegenService.updateCodegen(updateReqVO);
|
||||||
return success(true);
|
return success(true);
|
||||||
@ -112,7 +111,7 @@ public class CodegenController {
|
|||||||
@ApiOperation("基于数据库的表结构,同步数据库的表和字段定义")
|
@ApiOperation("基于数据库的表结构,同步数据库的表和字段定义")
|
||||||
@PutMapping("/sync-from-db")
|
@PutMapping("/sync-from-db")
|
||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:update')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:update')")
|
||||||
public CommonResult<Boolean> syncCodegenFromDB(@RequestParam("tableId") Long tableId) {
|
public CommonResult<Boolean> syncCodegenFromDB(@RequestParam("tableId") Long tableId) {
|
||||||
codegenService.syncCodegenFromDB(tableId);
|
codegenService.syncCodegenFromDB(tableId);
|
||||||
return success(true);
|
return success(true);
|
||||||
@ -124,7 +123,7 @@ public class CodegenController {
|
|||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class),
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class),
|
||||||
@ApiImplicitParam(name = "sql", value = "SQL 建表语句", required = true, example = "sql", dataTypeClass = String.class)
|
@ApiImplicitParam(name = "sql", value = "SQL 建表语句", required = true, example = "sql", dataTypeClass = String.class)
|
||||||
})
|
})
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:update')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:update')")
|
||||||
public CommonResult<Boolean> syncCodegenFromSQL(@RequestParam("tableId") Long tableId,
|
public CommonResult<Boolean> syncCodegenFromSQL(@RequestParam("tableId") Long tableId,
|
||||||
@RequestParam("sql") String sql) {
|
@RequestParam("sql") String sql) {
|
||||||
codegenService.syncCodegenFromSQL(tableId, sql);
|
codegenService.syncCodegenFromSQL(tableId, sql);
|
||||||
@ -134,7 +133,7 @@ public class CodegenController {
|
|||||||
@ApiOperation("删除数据库的表和字段定义")
|
@ApiOperation("删除数据库的表和字段定义")
|
||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:delete')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:delete')")
|
||||||
public CommonResult<Boolean> deleteCodegen(@RequestParam("tableId") Long tableId) {
|
public CommonResult<Boolean> deleteCodegen(@RequestParam("tableId") Long tableId) {
|
||||||
codegenService.deleteCodegen(tableId);
|
codegenService.deleteCodegen(tableId);
|
||||||
return success(true);
|
return success(true);
|
||||||
@ -143,7 +142,7 @@ public class CodegenController {
|
|||||||
@ApiOperation("预览生成代码")
|
@ApiOperation("预览生成代码")
|
||||||
@GetMapping("/preview")
|
@GetMapping("/preview")
|
||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:preview')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:preview')")
|
||||||
public CommonResult<List<CodegenPreviewRespVO>> previewCodegen(@RequestParam("tableId") Long tableId) {
|
public CommonResult<List<CodegenPreviewRespVO>> previewCodegen(@RequestParam("tableId") Long tableId) {
|
||||||
Map<String, String> codes = codegenService.generationCodes(tableId);
|
Map<String, String> codes = codegenService.generationCodes(tableId);
|
||||||
return success(CodegenConvert.INSTANCE.convert(codes));
|
return success(CodegenConvert.INSTANCE.convert(codes));
|
||||||
@ -152,7 +151,7 @@ public class CodegenController {
|
|||||||
@ApiOperation("下载生成代码")
|
@ApiOperation("下载生成代码")
|
||||||
@GetMapping("/download")
|
@GetMapping("/download")
|
||||||
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "tableId", value = "表编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:codegen:download')")
|
@PreAuthorize("@ss.hasPermission('infra:codegen:download')")
|
||||||
public void downloadCodegen(@RequestParam("tableId") Long tableId,
|
public void downloadCodegen(@RequestParam("tableId") Long tableId,
|
||||||
HttpServletResponse response) throws IOException {
|
HttpServletResponse response) throws IOException {
|
||||||
// 生成代码
|
// 生成代码
|
@ -1,7 +1,7 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.column.CodegenColumnRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column.CodegenColumnRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
@ -1,7 +1,7 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTableBaseVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column.CodegenColumnBaseVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.column.CodegenColumnBaseVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTableBaseVO;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.column;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.column;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table;
|
package cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.doc;
|
package cn.iocoder.yudao.module.infra.controller.admin.doc;
|
||||||
|
|
||||||
import cn.hutool.core.io.FileUtil;
|
import cn.hutool.core.io.FileUtil;
|
||||||
import cn.hutool.core.util.IdUtil;
|
import cn.hutool.core.util.IdUtil;
|
||||||
@ -26,11 +26,10 @@ import javax.servlet.http.HttpServletResponse;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collections;
|
|
||||||
|
|
||||||
@Api(tags = "管理后台 - 数据库文档")
|
@Api(tags = "管理后台 - 数据库文档")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/tool/db-doc")
|
@RequestMapping("/infra/db-doc")
|
||||||
public class DbDocController {
|
public class DbDocController {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
@ -1,12 +1,14 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test;
|
package cn.iocoder.yudao.module.infra.controller.admin.test;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.*;
|
||||||
|
import cn.iocoder.yudao.module.infra.convert.test.TestDemoConvert;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
|
|
||||||
import javax.validation.constraints.*;
|
|
||||||
import javax.validation.*;
|
import javax.validation.*;
|
||||||
import javax.servlet.http.*;
|
import javax.servlet.http.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -21,14 +23,12 @@ import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
|||||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.*;
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.*;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
import cn.iocoder.yudao.module.infra.service.test.TestDemoService;
|
||||||
import cn.iocoder.yudao.module.tool.convert.test.TestDemoConvert;
|
|
||||||
import cn.iocoder.yudao.module.tool.service.test.TestDemoService;
|
|
||||||
|
|
||||||
@Api(tags = "管理后台 - 字典类型")
|
@Api(tags = "管理后台 - 字典类型")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/tool/test-demo")
|
@RequestMapping("/infra/test-demo")
|
||||||
@Validated
|
@Validated
|
||||||
public class TestDemoController {
|
public class TestDemoController {
|
||||||
|
|
||||||
@ -37,13 +37,13 @@ public class TestDemoController {
|
|||||||
|
|
||||||
@PostMapping("/create")
|
@PostMapping("/create")
|
||||||
@ApiOperation("创建字典类型")
|
@ApiOperation("创建字典类型")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:create')") public CommonResult<Long> createTestDemo(@Valid @RequestBody TestDemoCreateReqVO createReqVO) {
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:create')") public CommonResult<Long> createTestDemo(@Valid @RequestBody TestDemoCreateReqVO createReqVO) {
|
||||||
return success(testDemoService.createTestDemo(createReqVO));
|
return success(testDemoService.createTestDemo(createReqVO));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@ApiOperation("更新字典类型")
|
@ApiOperation("更新字典类型")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:update')") public CommonResult<Boolean> updateTestDemo(@Valid @RequestBody TestDemoUpdateReqVO updateReqVO) {
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:update')") public CommonResult<Boolean> updateTestDemo(@Valid @RequestBody TestDemoUpdateReqVO updateReqVO) {
|
||||||
testDemoService.updateTestDemo(updateReqVO);
|
testDemoService.updateTestDemo(updateReqVO);
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
@ -51,7 +51,7 @@ public class TestDemoController {
|
|||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@ApiOperation("删除字典类型")
|
@ApiOperation("删除字典类型")
|
||||||
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:delete')")
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:delete')")
|
||||||
public CommonResult<Boolean> deleteTestDemo(@RequestParam("id") Long id) {
|
public CommonResult<Boolean> deleteTestDemo(@RequestParam("id") Long id) {
|
||||||
testDemoService.deleteTestDemo(id);
|
testDemoService.deleteTestDemo(id);
|
||||||
return success(true);
|
return success(true);
|
||||||
@ -60,7 +60,7 @@ public class TestDemoController {
|
|||||||
@GetMapping("/get")
|
@GetMapping("/get")
|
||||||
@ApiOperation("获得字典类型")
|
@ApiOperation("获得字典类型")
|
||||||
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Long.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:query')")
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:query')")
|
||||||
public CommonResult<TestDemoRespVO> getTestDemo(@RequestParam("id") Long id) {
|
public CommonResult<TestDemoRespVO> getTestDemo(@RequestParam("id") Long id) {
|
||||||
TestDemoDO testDemo = testDemoService.getTestDemo(id);
|
TestDemoDO testDemo = testDemoService.getTestDemo(id);
|
||||||
return success(TestDemoConvert.INSTANCE.convert(testDemo));
|
return success(TestDemoConvert.INSTANCE.convert(testDemo));
|
||||||
@ -69,7 +69,7 @@ public class TestDemoController {
|
|||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
@ApiOperation("获得字典类型列表")
|
@ApiOperation("获得字典类型列表")
|
||||||
@ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
|
@ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:query')")
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:query')")
|
||||||
public CommonResult<List<TestDemoRespVO>> getTestDemoList(@RequestParam("ids") Collection<Long> ids) {
|
public CommonResult<List<TestDemoRespVO>> getTestDemoList(@RequestParam("ids") Collection<Long> ids) {
|
||||||
List<TestDemoDO> list = testDemoService.getTestDemoList(ids);
|
List<TestDemoDO> list = testDemoService.getTestDemoList(ids);
|
||||||
return success(TestDemoConvert.INSTANCE.convertList(list));
|
return success(TestDemoConvert.INSTANCE.convertList(list));
|
||||||
@ -77,14 +77,14 @@ public class TestDemoController {
|
|||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@ApiOperation("获得字典类型分页")
|
@ApiOperation("获得字典类型分页")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:query')") public CommonResult<PageResult<TestDemoRespVO>> getTestDemoPage(@Valid TestDemoPageReqVO pageVO) {
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:query')") public CommonResult<PageResult<TestDemoRespVO>> getTestDemoPage(@Valid TestDemoPageReqVO pageVO) {
|
||||||
PageResult<TestDemoDO> pageResult = testDemoService.getTestDemoPage(pageVO);
|
PageResult<TestDemoDO> pageResult = testDemoService.getTestDemoPage(pageVO);
|
||||||
return success(TestDemoConvert.INSTANCE.convertPage(pageResult));
|
return success(TestDemoConvert.INSTANCE.convertPage(pageResult));
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@ApiOperation("导出字典类型 Excel")
|
@ApiOperation("导出字典类型 Excel")
|
||||||
@PreAuthorize("@ss.hasPermission('tool:test-demo:export')") @OperateLog(type = EXPORT)
|
@PreAuthorize("@ss.hasPermission('infra:test-demo:export')") @OperateLog(type = EXPORT)
|
||||||
public void exportTestDemoExcel(@Valid TestDemoExportReqVO exportReqVO,
|
public void exportTestDemoExcel(@Valid TestDemoExportReqVO exportReqVO,
|
||||||
HttpServletResponse response) throws IOException {
|
HttpServletResponse response) throws IOException {
|
||||||
List<TestDemoDO> list = testDemoService.getTestDemoList(exportReqVO);
|
List<TestDemoDO> list = testDemoService.getTestDemoList(exportReqVO);
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
@ -1,9 +1,7 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
import javax.validation.constraints.*;
|
|
||||||
|
|
||||||
@ApiModel("管理后台 - 字典类型创建 Request VO")
|
@ApiModel("管理后台 - 字典类型创建 Request VO")
|
||||||
@Data
|
@Data
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
@ -1,7 +1,6 @@
|
|||||||
package cn.iocoder.yudao.module.tool.controller.admin.test.vo;
|
package cn.iocoder.yudao.module.infra.controller.admin.test.vo;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
import javax.validation.constraints.*;
|
import javax.validation.constraints.*;
|
||||||
|
|
@ -1,16 +1,16 @@
|
|||||||
package cn.iocoder.yudao.module.tool.convert.codegen;
|
package cn.iocoder.yudao.module.infra.convert.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenDetailRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenDetailRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenPreviewRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenPreviewRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.column.CodegenColumnRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.column.CodegenColumnRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTableRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.SchemaTableRespVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.SchemaTableRespVO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
import org.mapstruct.factory.Mappers;
|
import org.mapstruct.factory.Mappers;
|
||||||
|
|
@ -1,13 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.tool.convert.test;
|
package cn.iocoder.yudao.module.infra.convert.test;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExcelVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoRespVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapper;
|
||||||
import org.mapstruct.factory.Mappers;
|
import org.mapstruct.factory.Mappers;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.*;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字典类型 Convert
|
* 字典类型 Convert
|
@ -1,8 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.dataobject.codegen;
|
package cn.iocoder.yudao.module.infra.dal.dataobject.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenColumnHtmlTypeEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenColumnHtmlTypeEnum;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenColumnListConditionEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenColumnListConditionEnum;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@ -14,7 +14,7 @@ import lombok.experimental.Accessors;
|
|||||||
*
|
*
|
||||||
* @author 芋道源码
|
* @author 芋道源码
|
||||||
*/
|
*/
|
||||||
@TableName(value = "tool_codegen_column", autoResultMap = true)
|
@TableName(value = "infra_codegen_column", autoResultMap = true)
|
||||||
@Data
|
@Data
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
@ -1,8 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.dataobject.codegen;
|
package cn.iocoder.yudao.module.infra.dal.dataobject.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenSceneEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenSceneEnum;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenTemplateTypeEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenTemplateTypeEnum;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@ -13,7 +13,7 @@ import lombok.experimental.Accessors;
|
|||||||
*
|
*
|
||||||
* @author 芋道源码
|
* @author 芋道源码
|
||||||
*/
|
*/
|
||||||
@TableName(value = "tool_codegen_table", autoResultMap = true)
|
@TableName(value = "infra_codegen_table", autoResultMap = true)
|
||||||
@Data
|
@Data
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.dataobject.codegen;
|
package cn.iocoder.yudao.module.infra.dal.dataobject.codegen;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.dataobject.codegen;
|
package cn.iocoder.yudao.module.infra.dal.dataobject.codegen;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Builder;
|
import lombok.Builder;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.dataobject.test;
|
package cn.iocoder.yudao.module.infra.dal.dataobject.test;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
@ -10,7 +10,7 @@ import lombok.*;
|
|||||||
*
|
*
|
||||||
* @author 芋道源码
|
* @author 芋道源码
|
||||||
*/
|
*/
|
||||||
@TableName("tool_test_demo")
|
@TableName("infra_test_demo")
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = true)
|
@EqualsAndHashCode(callSuper = true)
|
||||||
@ToString(callSuper = true)
|
@ToString(callSuper = true)
|
@ -1,7 +1,7 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.codegen;
|
package cn.iocoder.yudao.module.infra.dal.mysql.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
@ -1,10 +1,10 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.codegen;
|
package cn.iocoder.yudao.module.infra.dal.mysql.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.codegen;
|
package cn.iocoder.yudao.module.infra.dal.mysql.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.codegen;
|
package cn.iocoder.yudao.module.infra.dal.mysql.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.QueryWrapperX;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
@ -1,13 +1,14 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.test;
|
package cn.iocoder.yudao.module.infra.dal.mysql.test;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.*;
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字典类型 Mapper
|
* 字典类型 Mapper
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums.codegen;
|
package cn.iocoder.yudao.module.infra.enums.codegen;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums.codegen;
|
package cn.iocoder.yudao.module.infra.enums.codegen;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums.codegen;
|
package cn.iocoder.yudao.module.infra.enums.codegen;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
@ -1,6 +1,5 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums.codegen;
|
package cn.iocoder.yudao.module.infra.enums.codegen;
|
||||||
|
|
||||||
import cn.hutool.core.util.ArrayUtil;
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums.codegen;
|
package cn.iocoder.yudao.module.infra.enums.codegen;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
@ -0,0 +1,4 @@
|
|||||||
|
/**
|
||||||
|
* 占位
|
||||||
|
*/
|
||||||
|
package cn.iocoder.yudao.module.infra.enums;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.framework.codegen.config;
|
package cn.iocoder.yudao.module.infra.framework.codegen.config;
|
||||||
|
|
||||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.framework.codegen.config;
|
package cn.iocoder.yudao.module.infra.framework.codegen.config;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
@ -0,0 +1,4 @@
|
|||||||
|
/**
|
||||||
|
* 代码生成器
|
||||||
|
*/
|
||||||
|
package cn.iocoder.yudao.module.infra.framework.codegen;
|
@ -1,6 +1,7 @@
|
|||||||
/**
|
/**
|
||||||
* infra 包下,我们放基础设施的运维与管理,支撑上层的通用与核心业务。
|
* infra 模块,主要提供两块能力:
|
||||||
* 例如说:定时任务的管理、服务器的信息等等
|
* 1. 我们放基础设施的运维与管理,支撑上层的通用与核心业务。 例如说:定时任务的管理、服务器的信息等等
|
||||||
|
* 2. 研发工具,提升研发效率与质量。 例如说:代码生成器、接口文档等等
|
||||||
*
|
*
|
||||||
* 1. Controller URL:以 /infra/ 开头,避免和其它 Module 冲突
|
* 1. Controller URL:以 /infra/ 开头,避免和其它 Module 冲突
|
||||||
* 2. DataObject 表名:以 infra_ 开头,方便在数据库中区分
|
* 2. DataObject 表名:以 infra_ 开头,方便在数据库中区分
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen;
|
package cn.iocoder.yudao.module.infra.service.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
@ -1,25 +1,25 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen;
|
package cn.iocoder.yudao.module.infra.service.codegen;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.convert.codegen.CodegenConvert;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.CodegenColumnMapper;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.CodegenTableMapper;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.SchemaColumnMapper;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.SchemaTableMapper;
|
||||||
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenImportTypeEnum;
|
||||||
|
import cn.iocoder.yudao.module.infra.framework.codegen.config.CodegenProperties;
|
||||||
|
import cn.iocoder.yudao.module.infra.service.codegen.inner.CodegenBuilder;
|
||||||
|
import cn.iocoder.yudao.module.infra.service.codegen.inner.CodegenEngine;
|
||||||
|
import cn.iocoder.yudao.module.infra.service.codegen.inner.CodegenSQLParser;
|
||||||
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
||||||
import cn.iocoder.yudao.module.tool.framework.codegen.config.CodegenProperties;
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.CodegenUpdateReqVO;
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.codegen.vo.table.CodegenTablePageReqVO;
|
|
||||||
import cn.iocoder.yudao.module.tool.convert.codegen.CodegenConvert;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenColumnMapper;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenTableMapper;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.SchemaColumnMapper;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.SchemaTableMapper;
|
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenImportTypeEnum;
|
|
||||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenBuilder;
|
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenEngine;
|
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenSQLParser;
|
|
||||||
import org.apache.commons.collections4.KeyValue;
|
import org.apache.commons.collections4.KeyValue;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@ -32,7 +32,7 @@ import java.util.Set;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static cn.iocoder.yudao.module.tool.enums.ErrorCodeConstants.*;
|
import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 代码生成 Service 实现类
|
* 代码生成 Service 实现类
|
@ -1,17 +1,17 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen.inner;
|
package cn.iocoder.yudao.module.infra.service.codegen.inner;
|
||||||
|
|
||||||
import cn.hutool.core.map.MapUtil;
|
import cn.hutool.core.map.MapUtil;
|
||||||
import cn.hutool.core.util.ReflectUtil;
|
import cn.hutool.core.util.ReflectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
import cn.iocoder.yudao.module.tool.convert.codegen.CodegenConvert;
|
import cn.iocoder.yudao.module.infra.convert.codegen.CodegenConvert;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenColumnHtmlTypeEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenColumnHtmlTypeEnum;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenColumnListConditionEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenColumnListConditionEnum;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenTemplateTypeEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenTemplateTypeEnum;
|
||||||
import com.google.common.collect.Sets;
|
import com.google.common.collect.Sets;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen.inner;
|
package cn.iocoder.yudao.module.infra.service.codegen.inner;
|
||||||
|
|
||||||
import cn.hutool.core.map.MapUtil;
|
import cn.hutool.core.map.MapUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
@ -20,10 +20,10 @@ import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
|||||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||||
import cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum;
|
import cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.enums.codegen.CodegenSceneEnum;
|
import cn.iocoder.yudao.module.infra.enums.codegen.CodegenSceneEnum;
|
||||||
import cn.iocoder.yudao.module.tool.framework.codegen.config.CodegenProperties;
|
import cn.iocoder.yudao.module.infra.framework.codegen.config.CodegenProperties;
|
||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen.inner;
|
package cn.iocoder.yudao.module.infra.service.codegen.inner;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.SchemaTableDO;
|
||||||
import com.alibaba.druid.DbType;
|
import com.alibaba.druid.DbType;
|
||||||
import com.alibaba.druid.sql.ast.expr.SQLCharExpr;
|
import com.alibaba.druid.sql.ast.expr.SQLCharExpr;
|
||||||
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
|
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
|
@ -1,10 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.test;
|
package cn.iocoder.yudao.module.infra.service.test;
|
||||||
|
|
||||||
import java.util.*;
|
|
||||||
import javax.validation.*;
|
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.*;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字典类型 Service 接口
|
* 字典类型 Service 接口
|
@ -1,19 +1,22 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.test;
|
package cn.iocoder.yudao.module.infra.service.test;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO;
|
||||||
|
import cn.iocoder.yudao.module.infra.convert.test.TestDemoConvert;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
|
import cn.iocoder.yudao.module.infra.dal.mysql.test.TestDemoMapper;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import javax.annotation.Resource;
|
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import java.util.*;
|
import javax.annotation.Resource;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.*;
|
import java.util.Collection;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
import java.util.List;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.convert.test.TestDemoConvert;
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.test.TestDemoMapper;
|
|
||||||
|
|
||||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static cn.iocoder.yudao.module.tool.enums.ErrorCodeConstants.*;
|
import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.TEST_DEMO_NOT_EXISTS;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字典类型 Service 实现类
|
* 字典类型 Service 实现类
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.dal.mysql.codegen;
|
package cn.iocoder.yudao.module.infra.dal.mysql.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest;
|
import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest;
|
@ -0,0 +1,4 @@
|
|||||||
|
/**
|
||||||
|
* 占位
|
||||||
|
*/
|
||||||
|
package cn.iocoder.yudao.module.infra.dal.mysql;
|
@ -0,0 +1,4 @@
|
|||||||
|
/**
|
||||||
|
* 占位
|
||||||
|
*/
|
||||||
|
package cn.iocoder.yudao.module.infra.dal;
|
@ -1,11 +1,11 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen;
|
package cn.iocoder.yudao.module.infra.service.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenColumnDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.codegen.CodegenTableDO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenColumnMapper;
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.CodegenColumnMapper;
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenTableMapper;
|
import cn.iocoder.yudao.module.infra.dal.mysql.codegen.CodegenTableMapper;
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenEngine;
|
import cn.iocoder.yudao.module.infra.service.codegen.inner.CodegenEngine;
|
||||||
import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest;
|
import cn.iocoder.yudao.module.infra.test.BaseDbUnitTest;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
@ -1,14 +1,14 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.codegen;
|
package cn.iocoder.yudao.module.infra.service.codegen;
|
||||||
|
|
||||||
import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenSQLParser;
|
import cn.iocoder.yudao.module.infra.service.codegen.inner.CodegenSQLParser;
|
||||||
import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest;
|
import cn.iocoder.yudao.module.infra.test.BaseDbUnitTest;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
public class CodegenSQLParserTest extends BaseDbUnitTest {
|
public class CodegenSQLParserTest extends BaseDbUnitTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testParse() {
|
public void testParse() {
|
||||||
String sql = "CREATE TABLE `tool_test_demo` (\n" +
|
String sql = "CREATE TABLE `infra_test_demo` (\n" +
|
||||||
" `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n" +
|
" `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n" +
|
||||||
" `name` varchar(100) NOT NULL DEFAULT '' COMMENT '名字',\n" +
|
" `name` varchar(100) NOT NULL DEFAULT '' COMMENT '名字',\n" +
|
||||||
" `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态',\n" +
|
" `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状态',\n" +
|
@ -0,0 +1,20 @@
|
|||||||
|
package cn.iocoder.yudao.module.infra.service.codegen;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.module.infra.test.BaseDbUnitTest;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
class CodegenServiceImplTest extends BaseDbUnitTest {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private CodegenServiceImpl codegenService;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void tetCreateCodegenTable() {
|
||||||
|
codegenService.createCodegen(0L, "infra_test_demo");
|
||||||
|
// infraCodegenService.createCodegenTable("infra_codegen_table");
|
||||||
|
// infraCodegenService.createCodegen("infra_codegen_column");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
/**
|
||||||
|
* 占位
|
||||||
|
*/
|
||||||
|
package cn.iocoder.yudao.module.infra.service;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.test;
|
package cn.iocoder.yudao.module.infra.test;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration;
|
import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration;
|
||||||
import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration;
|
import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration;
|
@ -1,4 +1,4 @@
|
|||||||
package cn.iocoder.yudao.module.tool.test;
|
package cn.iocoder.yudao.module.infra.test;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration;
|
import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration;
|
||||||
import org.redisson.spring.starter.RedissonAutoConfiguration;
|
import org.redisson.spring.starter.RedissonAutoConfiguration;
|
@ -1,15 +1,15 @@
|
|||||||
package cn.iocoder.yudao.module.tool.service.test;
|
package cn.iocoder.yudao.module.infra.service.test;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.common.util.date.DateUtils;
|
import cn.iocoder.yudao.framework.common.util.date.DateUtils;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.TestDemoCreateReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoExportReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.TestDemoExportReqVO;
|
import cn.iocoder.yudao.module.infra.dal.dataobject.test.TestDemoDO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.TestDemoPageReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoCreateReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.controller.admin.test.vo.TestDemoUpdateReqVO;
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoPageReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.dataobject.test.TestDemoDO;
|
import cn.iocoder.yudao.module.infra.controller.admin.test.vo.TestDemoUpdateReqVO;
|
||||||
import cn.iocoder.yudao.module.tool.dal.mysql.test.TestDemoMapper;
|
import cn.iocoder.yudao.module.infra.dal.mysql.test.TestDemoMapper;
|
||||||
import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest;
|
import cn.iocoder.yudao.module.infra.test.BaseDbUnitTest;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.context.annotation.Import;
|
import org.springframework.context.annotation.Import;
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEq
|
|||||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
||||||
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomLongId;
|
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomLongId;
|
||||||
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
|
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
|
||||||
import static cn.iocoder.yudao.module.tool.enums.ErrorCodeConstants.TEST_DEMO_NOT_EXISTS;
|
import static cn.iocoder.yudao.module.infra.enums.ErrorCodeConstants.TEST_DEMO_NOT_EXISTS;
|
||||||
import static org.junit.jupiter.api.Assertions.*;
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
/**
|
/**
|
@ -7,3 +7,4 @@ DELETE FROM "infra_api_error_log";
|
|||||||
DELETE FROM "infra_api_access_log";
|
DELETE FROM "infra_api_access_log";
|
||||||
DELETE FROM "infra_file";
|
DELETE FROM "infra_file";
|
||||||
DELETE FROM "infra_api_error_log";
|
DELETE FROM "infra_api_error_log";
|
||||||
|
DELETE FROM "infra_test_demo";
|
||||||
|
@ -135,3 +135,18 @@ CREATE TABLE IF NOT EXISTS "infra_api_error_log" (
|
|||||||
"tenant_id" bigint not null default '0',
|
"tenant_id" bigint not null default '0',
|
||||||
primary key ("id")
|
primary key ("id")
|
||||||
) COMMENT '系统异常日志';
|
) COMMENT '系统异常日志';
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS "infra_test_demo" (
|
||||||
|
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||||
|
"name" varchar(100) NOT NULL,
|
||||||
|
"status" tinyint NOT NULL,
|
||||||
|
"type" tinyint NOT NULL,
|
||||||
|
"category" tinyint NOT NULL,
|
||||||
|
"remark" varchar(500),
|
||||||
|
"creator" varchar(64) DEFAULT '''',
|
||||||
|
"create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updater" varchar(64) DEFAULT '''',
|
||||||
|
"update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
||||||
|
PRIMARY KEY ("id")
|
||||||
|
) COMMENT '字典类型表';
|
||||||
|
@ -1,24 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<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">
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</parent>
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<modules>
|
|
||||||
<module>yudao-module-tool-api</module>
|
|
||||||
<module>yudao-module-tool-impl</module>
|
|
||||||
</modules>
|
|
||||||
<artifactId>yudao-module-tool</artifactId>
|
|
||||||
<packaging>pom</packaging>
|
|
||||||
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>
|
|
||||||
tool 模块,我们放研发工具,提升研发效率与质量。
|
|
||||||
例如说:代码生成器、接口文档等等
|
|
||||||
</description>
|
|
||||||
|
|
||||||
</project>
|
|
@ -1,26 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<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">
|
|
||||||
<parent>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-module-tool</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</parent>
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<artifactId>yudao-module-tool-api</artifactId>
|
|
||||||
<packaging>jar</packaging>
|
|
||||||
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>
|
|
||||||
tool 模块 API,暴露给其它模块调用
|
|
||||||
</description>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-common</artifactId>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* Tool API 包,定义暴露给其它模块的 API
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.api;
|
|
@ -1,12 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Tool 字典类型的枚举类
|
|
||||||
*
|
|
||||||
* @author 芋道源码
|
|
||||||
*/
|
|
||||||
public interface DictTypeConstants {
|
|
||||||
|
|
||||||
String TEST_DEMO_TYPE = "tool_test_demo_type";
|
|
||||||
|
|
||||||
}
|
|
@ -1,25 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.tool.enums;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.exception.ErrorCode;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Tool 错误码枚举类
|
|
||||||
*
|
|
||||||
* tool 系统,使用 1-003-000-000 段
|
|
||||||
*/
|
|
||||||
public interface ErrorCodeConstants {
|
|
||||||
|
|
||||||
// ========== 字典类型(测试) 1003000000 ==========
|
|
||||||
ErrorCode TEST_DEMO_NOT_EXISTS = new ErrorCode(1003000000, "测试示例不存在");
|
|
||||||
|
|
||||||
// ========== 代码生成器 1003001000 ==========
|
|
||||||
ErrorCode CODEGEN_TABLE_EXISTS = new ErrorCode(1003001000, "表定义已经存在");
|
|
||||||
ErrorCode CODEGEN_IMPORT_TABLE_NULL = new ErrorCode(1003001001, "导入的表不存在");
|
|
||||||
ErrorCode CODEGEN_IMPORT_COLUMNS_NULL = new ErrorCode(1003001002, "导入的字段不存在");
|
|
||||||
ErrorCode CODEGEN_PARSE_SQL_ERROR = new ErrorCode(1003001003, "解析 SQL 失败,请检查");
|
|
||||||
ErrorCode CODEGEN_TABLE_NOT_EXISTS = new ErrorCode(1003001004, "表定义不存在");
|
|
||||||
ErrorCode CODEGEN_COLUMN_NOT_EXISTS = new ErrorCode(1003001005, "字段义不存在");
|
|
||||||
ErrorCode CODEGEN_SYNC_COLUMNS_NULL = new ErrorCode(1003001006, "同步的字段不存在");
|
|
||||||
ErrorCode CODEGEN_SYNC_NONE_CHANGE = new ErrorCode(1003001007, "同步失败,不存在改变");
|
|
||||||
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.tool;
|
|
@ -1,78 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<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">
|
|
||||||
<parent>
|
|
||||||
<artifactId>yudao-module-tool</artifactId>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</parent>
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
<artifactId>yudao-module-tool-impl</artifactId>
|
|
||||||
<packaging>jar</packaging>
|
|
||||||
|
|
||||||
<name>${project.artifactId}</name>
|
|
||||||
<description>
|
|
||||||
tool 模块,我们放研发工具,提升研发效率与质量。
|
|
||||||
例如说:代码生成器、接口文档等等
|
|
||||||
</description>
|
|
||||||
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-module-tool-api</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-module-system-api</artifactId>
|
|
||||||
<version>${revision}</version>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- 业务组件 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-biz-operatelog</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-biz-dict</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Web 相关 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-security</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- DB 相关 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-mybatis</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- Test 测试相关 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-test</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<!-- 工具类相关 -->
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.iocoder.boot</groupId>
|
|
||||||
<artifactId>yudao-spring-boot-starter-excel</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.apache.velocity</groupId>
|
|
||||||
<artifactId>velocity-engine-core</artifactId> <!-- 实现代码生成 -->
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.smallbun.screw</groupId>
|
|
||||||
<artifactId>screw-core</artifactId> <!-- 实现数据库文档 -->
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
|
|
||||||
</project>
|
|
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* 占位,避免 package 无法提交到 Git 仓库
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.controller.app;
|
|
@ -1,6 +0,0 @@
|
|||||||
/**
|
|
||||||
* 提供 RESTful API 给前端:
|
|
||||||
* 1. admin 包:提供给管理后台 yudao-ui-admin 前端项目
|
|
||||||
* 2. app 包:提供给用户 APP yudao-ui-app 前端项目,它的 Controller 和 VO 都要添加 App 前缀,用于和管理后台进行区分
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.controller;
|
|
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* 占位
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.enums;
|
|
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* 代码生成器
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.framework.codegen;
|
|
@ -1,6 +0,0 @@
|
|||||||
/**
|
|
||||||
* 属于 tool 模块的 framework 封装
|
|
||||||
*
|
|
||||||
* @author 芋道源码
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.framework;
|
|
@ -1,8 +0,0 @@
|
|||||||
/**
|
|
||||||
* tool 模块下,我们放研发工具,提升研发效率与质量。
|
|
||||||
* 例如说:代码生成器、接口文档等等
|
|
||||||
*
|
|
||||||
* 1. Controller URL:以 /tool/ 开头,避免和其它 Module 冲突
|
|
||||||
* 2. DataObject 表名:以 tool_ 开头,方便在数据库中区分
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool;
|
|
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* 占位
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.tool.dal.mysql;
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user