diff --git a/common/common-utils/pom.xml b/common/common-utils/pom.xml
index 02dfeea..f9d6d81 100644
--- a/common/common-utils/pom.xml
+++ b/common/common-utils/pom.xml
@@ -32,12 +32,22 @@
com.baomidou
mybatis-plus-generator
- 3.4.1
+ 3.5.6
org.apache.velocity
velocity-engine-core
- 2.0
+ 2.3
+
+
+
+
+
+
+
+
+
+
diff --git a/common/common-utils/src/main/java/cn/bunny/common/CodeGet.java b/common/common-utils/src/main/java/cn/bunny/common/CodeGet.java
deleted file mode 100644
index 1207de1..0000000
--- a/common/common-utils/src/main/java/cn/bunny/common/CodeGet.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package cn.bunny.common;
-
-import com.baomidou.mybatisplus.annotation.DbType;
-import com.baomidou.mybatisplus.generator.AutoGenerator;
-import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
-import com.baomidou.mybatisplus.generator.config.GlobalConfig;
-import com.baomidou.mybatisplus.generator.config.PackageConfig;
-import com.baomidou.mybatisplus.generator.config.StrategyConfig;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-
-public class CodeGet {
- public static void main(String[] args) {
- // 1、创建代码生成器
- AutoGenerator mpg = new AutoGenerator();
-
- // 2、全局配置
- // 全局配置
- GlobalConfig gc = new GlobalConfig();
- // TODO 需要修改路径名称
- gc.setOutputDir("F:\\web项目\\Bunny-Cli\\Java\\java-template\\service" + "/src/main/java");
- gc.setServiceName("%sService"); // 去掉Service接口的首字母I
- gc.setAuthor("bunny");
- gc.setOpen(false);
- mpg.setGlobalConfig(gc);
-
- // 3、数据源配置
- DataSourceConfig dsc = new DataSourceConfig();
- // TODO 需要修改数据库
- dsc.setUrl("jdbc:mysql://106.15.251.123:3305/guigu-oa?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true");
- dsc.setDriverName("com.mysql.cj.jdbc.Driver");
- dsc.setUsername("root");
- dsc.setPassword("02120212");
- dsc.setDbType(DbType.MYSQL);
- mpg.setDataSource(dsc);
-
- // 4、包配置
- PackageConfig pc = new PackageConfig();
- pc.setParent("cn.bunny");
- // TODO 需要修改模块名
- pc.setModuleName("service");
- pc.setController("controller");
- pc.setService("service");
- pc.setMapper("mapper");
- mpg.setPackageInfo(pc);
-
- // 5、策略配置
- StrategyConfig strategy = getStrategyConfig();
- mpg.setStrategy(strategy);
-
- // 6、执行
- mpg.execute();
- }
-
- private static StrategyConfig getStrategyConfig() {
- StrategyConfig strategy = new StrategyConfig();
- // TODO 要生成的表
- strategy.setInclude("sys_menu", "sys_role_menu");
- strategy.setNaming(NamingStrategy.underline_to_camel);// 数据库表映射到实体的命名策略
- strategy.setColumnNaming(NamingStrategy.underline_to_camel);// 数据库表字段映射到实体的命名策略
- strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作
- strategy.setRestControllerStyle(true); // restful api风格控制器
- strategy.setControllerMappingHyphenStyle(true); // url中驼峰转连字符
- return strategy;
- }
-}
diff --git a/common/common-utils/src/main/java/cn/bunny/common/generator/NewCodeGet.java b/common/common-utils/src/main/java/cn/bunny/common/generator/NewCodeGet.java
new file mode 100644
index 0000000..fb3fb5d
--- /dev/null
+++ b/common/common-utils/src/main/java/cn/bunny/common/generator/NewCodeGet.java
@@ -0,0 +1,84 @@
+package cn.bunny.common.generator;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.generator.FastAutoGenerator;
+import com.baomidou.mybatisplus.generator.config.OutputFile;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.Collections;
+
+public class NewCodeGet {
+ // 数据连接
+ public static final String sqlHost = "jdbc:mysql://106.15.251.123:3305/guigu-oa?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true";
+ // 作者名称
+ public static final String author = "Bunny";
+ // 公共路径
+ public static final String outputDir = "G:\\web项目\\Bunny-Cli\\Java\\java-template\\service";
+ // 实体类名称
+ public static final String entity = "Bunny";
+
+ public static void main(String[] args) {
+ Generation("sys_menu");
+ }
+
+ /**
+ * 根据表名生成相应结构代码
+ *
+ * @param tableName 表名
+ */
+ public static void Generation(String... tableName) {
+ // TODO 修改数据库路径、账户、密码
+ FastAutoGenerator.create(sqlHost, "root", "02120212")
+ .globalConfig(builder -> {
+ // 添加作者名称
+ builder.author(author)
+ // 启用swagger
+ .enableSwagger()
+ // 指定输出目录
+ .outputDir(outputDir + "/src/main/java");
+ })
+ .packageConfig(builder -> {
+ builder.entity(entity)// 实体类包名
+ // TODO 父包名。如果为空,将下面子包名必须写全部, 否则就只需写子包名
+ .parent("cn.bunny.service")
+ .controller("controller")// 控制层包名
+ .mapper("mapper")// mapper层包名
+ .service("service")// service层包名
+ .serviceImpl("service.impl")// service实现类包名
+ // 自定义mapper.xml文件输出目录
+ .pathInfo(Collections.singletonMap(OutputFile.xml, outputDir + "/src/main/resources/mapper"));
+ })
+ .strategyConfig(builder -> {
+ // 设置要生成的表名
+ builder.addInclude(tableName)
+ //.addTablePrefix("sys_")// TODO 设置表前缀过滤
+ .entityBuilder()
+ .enableLombok()
+ .enableChainModel()
+ .naming(NamingStrategy.underline_to_camel)// 数据表映射实体命名策略:默认下划线转驼峰underline_to_camel
+ .columnNaming(NamingStrategy.underline_to_camel)// 表字段映射实体属性命名规则:默认null,不指定按照naming执行
+ .idType(IdType.AUTO)// TODO 添加全局主键类型
+ .formatFileName("%s")// 格式化实体名称,%s取消首字母I,
+ .mapperBuilder()
+ .mapperAnnotation(Mapper.class)// 开启mapper注解
+ .enableBaseResultMap()// 启用xml文件中的BaseResultMap 生成
+ .enableBaseColumnList()// 启用xml文件中的BaseColumnList
+ .formatMapperFileName("%sMapper")// 格式化Dao类名称
+ .formatXmlFileName("%sMapper")// 格式化xml文件名称
+ .serviceBuilder()
+ .formatServiceFileName("%sService")// 格式化 service 接口文件名称
+ .formatServiceImplFileName("%sServiceImpl")// 格式化 service 接口文件名称
+ .controllerBuilder()
+ .enableRestStyle();
+ })
+ // .injectionConfig(consumer -> {
+ // Map customFile = new HashMap<>();
+ // // 配置DTO(需要的话)但是需要有能配置Dto的模板引擎,比如freemarker,但是这里我们用的VelocityEngine,因此不多作介绍
+ // customFile.put(outputDir, "/src/main/resources/templates/entityDTO.java.ftl");
+ // consumer.customFile(customFile);
+ // })
+ .execute();
+ }
+}
diff --git a/common/common-utils/src/main/java/cn/bunny/common/generator/OldCodeGet.java b/common/common-utils/src/main/java/cn/bunny/common/generator/OldCodeGet.java
new file mode 100644
index 0000000..d43819c
--- /dev/null
+++ b/common/common-utils/src/main/java/cn/bunny/common/generator/OldCodeGet.java
@@ -0,0 +1,57 @@
+package cn.bunny.common.generator;
+
+public class OldCodeGet {
+ public static void main(String[] args) {
+ // // 1、创建代码生成器
+ // AutoGenerator mpg = new AutoGenerator();
+ //
+ // // 2、全局配置
+ // // 全局配置
+ // GlobalConfig gc = new GlobalConfig();
+ // // TODO 需要修改路径名称
+ // gc.setOutputDir("F:\\web项目\\Bunny-Cli\\Java\\java-template\\service" + "/src/main/java");
+ // gc.setServiceName("%sService"); // 去掉Service接口的首字母I
+ // gc.setAuthor("bunny");
+ // gc.setOpen(false);
+ // mpg.setGlobalConfig(gc);
+ //
+ // // 3、数据源配置
+ // DataSourceConfig dsc = new DataSourceConfig();
+ // // TODO 需要修改数据库
+ // dsc.setUrl("jdbc:mysql://106.15.251.123:3305/guigu-oa?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true");
+ // dsc.setDriverName("com.mysql.cj.jdbc.Driver");
+ // dsc.setUsername("root");
+ // dsc.setPassword("02120212");
+ // dsc.setDbType(DbType.MYSQL);
+ // mpg.setDataSource(dsc);
+ //
+ // // 4、包配置
+ // PackageConfig pc = new PackageConfig();
+ // pc.setParent("cn.bunny");
+ // // TODO 需要修改模块名
+ // pc.setModuleName("service");
+ // pc.setController("controller");
+ // pc.setService("service");
+ // pc.setMapper("mapper");
+ // mpg.setPackageInfo(pc);
+ //
+ // // 5、策略配置
+ // StrategyConfig strategy = getStrategyConfig();
+ // mpg.setStrategy(strategy);
+ //
+ // // 6、执行
+ // mpg.execute();
+ // }
+ //
+ // private static StrategyConfig getStrategyConfig() {
+ // StrategyConfig strategy = new StrategyConfig();
+ // // TODO 要生成的表
+ // strategy.setInclude("sys_menu", "sys_role_menu");
+ // strategy.setNaming(NamingStrategy.underline_to_camel);// 数据库表映射到实体的命名策略
+ // strategy.setColumnNaming(NamingStrategy.underline_to_camel);// 数据库表字段映射到实体的命名策略
+ // strategy.setEntityLombokModel(true); // lombok 模型 @Accessors(chain = true) setter链式操作
+ // strategy.setRestControllerStyle(true); // restful api风格控制器
+ // strategy.setControllerMappingHyphenStyle(true); // url中驼峰转连字符
+ // return strategy;
+ }
+}
diff --git a/service/src/main/java/cn/bunny/service/Bunny/SysMenu.java b/service/src/main/java/cn/bunny/service/Bunny/SysMenu.java
new file mode 100644
index 0000000..9708b6a
--- /dev/null
+++ b/service/src/main/java/cn/bunny/service/Bunny/SysMenu.java
@@ -0,0 +1,70 @@
+package cn.bunny.service.Bunny;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.experimental.Accessors;
+
+/**
+ *
+ * 菜单表
+ *
+ *
+ * @author Bunny
+ * @since 2024-05-06
+ */
+@Getter
+@Setter
+@Accessors(chain = true)
+@TableName("sys_menu")
+@ApiModel(value = "SysMenu对象", description = "菜单表")
+public class SysMenu implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty("编号")
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ @ApiModelProperty("所属上级")
+ private Long parentId;
+
+ @ApiModelProperty("名称")
+ private String name;
+
+ @ApiModelProperty("类型(0:目录,1:菜单,2:按钮)")
+ private Byte type;
+
+ @ApiModelProperty("路由地址")
+ private String path;
+
+ @ApiModelProperty("组件路径")
+ private String component;
+
+ @ApiModelProperty("权限标识")
+ private String perms;
+
+ @ApiModelProperty("图标")
+ private String icon;
+
+ @ApiModelProperty("排序")
+ private Integer sortValue;
+
+ @ApiModelProperty("状态(0:禁止,1:正常)")
+ private Byte status;
+
+ @ApiModelProperty("创建时间")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty("更新时间")
+ private LocalDateTime updateTime;
+
+ @ApiModelProperty("删除标记(0:不可用 1:可用)")
+ private Byte isDeleted;
+}
diff --git a/service/src/main/java/cn/bunny/service/controller/SysMenuController.java b/service/src/main/java/cn/bunny/service/controller/SysMenuController.java
new file mode 100644
index 0000000..a596845
--- /dev/null
+++ b/service/src/main/java/cn/bunny/service/controller/SysMenuController.java
@@ -0,0 +1,18 @@
+package cn.bunny.service.controller;
+
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ *
+ * 菜单表 前端控制器
+ *
+ *
+ * @author Bunny
+ * @since 2024-05-06
+ */
+@RestController
+@RequestMapping("/sysMenu")
+public class SysMenuController {
+
+}
diff --git a/service/src/main/java/cn/bunny/service/mapper/SysMenuMapper.java b/service/src/main/java/cn/bunny/service/mapper/SysMenuMapper.java
new file mode 100644
index 0000000..a65af2d
--- /dev/null
+++ b/service/src/main/java/cn/bunny/service/mapper/SysMenuMapper.java
@@ -0,0 +1,16 @@
+package cn.bunny.service.mapper;
+
+import cn.bunny.service.Bunny.SysMenu;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ *
+ * 菜单表 Mapper 接口
+ *
+ *
+ * @author Bunny
+ * @since 2024-05-06
+ */
+public interface SysMenuMapper extends BaseMapper {
+
+}
diff --git a/service/src/main/java/cn/bunny/service/service/SysMenuService.java b/service/src/main/java/cn/bunny/service/service/SysMenuService.java
new file mode 100644
index 0000000..bcccf1a
--- /dev/null
+++ b/service/src/main/java/cn/bunny/service/service/SysMenuService.java
@@ -0,0 +1,16 @@
+package cn.bunny.service.service;
+
+import cn.bunny.service.Bunny.SysMenu;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ *
+ * 菜单表 服务类
+ *
+ *
+ * @author Bunny
+ * @since 2024-05-06
+ */
+public interface SysMenuService extends IService {
+
+}
diff --git a/service/src/main/java/cn/bunny/service/service/impl/SysMenuServiceImpl.java b/service/src/main/java/cn/bunny/service/service/impl/SysMenuServiceImpl.java
new file mode 100644
index 0000000..5693bd0
--- /dev/null
+++ b/service/src/main/java/cn/bunny/service/service/impl/SysMenuServiceImpl.java
@@ -0,0 +1,20 @@
+package cn.bunny.service.service.impl;
+
+import cn.bunny.service.Bunny.SysMenu;
+import cn.bunny.service.mapper.SysMenuMapper;
+import cn.bunny.service.service.SysMenuService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ * 菜单表 服务实现类
+ *
+ *
+ * @author Bunny
+ * @since 2024-05-06
+ */
+@Service
+public class SysMenuServiceImpl extends ServiceImpl implements SysMenuService {
+
+}
diff --git a/service/src/main/resources/mapper/SysMenuMapper.xml b/service/src/main/resources/mapper/SysMenuMapper.xml
new file mode 100644
index 0000000..6b04cbf
--- /dev/null
+++ b/service/src/main/resources/mapper/SysMenuMapper.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ id, parent_id, name, type, path, component, perms, icon, sort_value, status, create_time, update_time, is_deleted
+
+
+