diff --git a/README.md b/README.md index 380bcb3..c069fd9 100644 --- a/README.md +++ b/README.md @@ -12,10 +12,11 @@ ### 功能界面 ![1](https://s2.ax1x.com/2020/03/06/3bQbMd.png) -### 技术架构 -springBoot+mybatis-plus+redis+shiro+hutool+layuimini+jenkins +### swaggerAPI管理界面 +## 技术架构 +### springBoot+mybatis-plus+redis+shiro+hutool+layui+jenkins+swagger+freemarker 实现功能: 1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 @@ -42,7 +43,6 @@ springBoot+mybatis-plus+redis+shiro+hutool+layuimini+jenkins * Javascript 工具库:static/lib/lodash.min.js * Layui 树形表格插件 * https://gitee.com/whvse/treetable-lay - * 图标库使用 * http://www.fontawesome.com.cn/faicons * 发送 ajax 示例:[详情](./docs/ajax.md) @@ -53,10 +53,7 @@ springBoot+mybatis-plus+redis+shiro+hutool+layuimini+jenkins * 不同模块下的枚举:如 com.songpeng.sparchetype.system.enums * 请求参数 * 每张表的分页查询参数,严格按照一张表对应一个请求参数对象进行开发,如系统用户分页查询参数:com.songpeng.sparchetype.system.request.SysUserPageReq - * - - - + # 总结 Q群87652870 欢迎想一起开发的小伙伴。。本人前端太弱,都是自己乱摸索。还请有一个前端选手能一起弄 diff --git a/scripts/sql/MySQL-sparchetype_20200228.sql b/scripts/sql/MySQL-sparchetype_20200228.sql index 62a1e41..00e478c 100644 --- a/scripts/sql/MySQL-sparchetype_20200228.sql +++ b/scripts/sql/MySQL-sparchetype_20200228.sql @@ -209,6 +209,26 @@ CREATE TABLE `sp_sys_user_role` ( PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; +-- ---------------------------- +-- Table structure for sp_table_manager +-- ---------------------------- +DROP TABLE IF EXISTS `sp_table_manager`; +CREATE TABLE `sp_table_manager` ( + `id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键', + `table_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '表名称', + `table_desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '表描述', + `create_time` datetime(0) NOT NULL COMMENT '创建时间', + `create_username` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + `update_time` datetime(0) NOT NULL COMMENT '最后更新时间', + `update_username` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最后更新人', + `is_deleted` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '逻辑删除:1 表示删除,0 表示未删除,2 表示禁用', + `permission` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '\"\"' COMMENT '授权(多个用逗号分隔,如:sys:menu:list,sys:menu:create)', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `index1`(`table_name`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; + -- ---------------------------- -- Records of sp_sys_user_role -- ---------------------------- diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerController.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerController.java new file mode 100644 index 0000000..e3a0971 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerController.java @@ -0,0 +1,48 @@ +package com.songpeng.sparchetype.basedata.controller; + + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.songpeng.sparchetype.basedata.request.SpTableManagerReq; +import com.songpeng.sparchetype.basedata.service.ISpTableManagerService; +import com.songpeng.sparchetype.blog.controller.admin.BlogController; +import com.songpeng.sparchetype.common.Result; +import com.songpeng.sparchetype.system.request.SysMenuPageReq; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import com.songpeng.sparchetype.common.BaseController; +import org.springframework.web.bind.annotation.ResponseBody; + +/** + *

+ * 前端控制器 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@Controller +@RequestMapping("/basedata/") +public class SpTableManagerController extends BaseController { + @Autowired + private ISpTableManagerService iSpTableManagerService; + Logger log = LoggerFactory.getLogger(SpTableManagerController.class); + + /** + * + * @param req + * @return + */ + @PostMapping("/page") + @ResponseBody + public Result page(SpTableManagerReq req) { + IPage result = iSpTableManagerService.page(req); + return Result.success(result); + } + + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerItemController.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerItemController.java new file mode 100644 index 0000000..f1440f4 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/controller/SpTableManagerItemController.java @@ -0,0 +1,21 @@ +package com.songpeng.sparchetype.basedata.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.stereotype.Controller; +import com.songpeng.sparchetype.common.BaseController; + +/** + *

+ * 前端控制器 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@Controller +@RequestMapping("/basedata/sp-table-manager-item") +public class SpTableManagerItemController extends BaseController { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManager.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManager.java new file mode 100644 index 0000000..0be87d9 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManager.java @@ -0,0 +1,115 @@ +package com.songpeng.sparchetype.basedata.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.songpeng.sparchetype.common.BaseEntity; + +import java.util.List; + +/** + *

+ * + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@TableName("sp_table_manager") +public class SpTableManager extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 表名称 + */ + private String tableName; + + /** + * 表描述 + */ + private String tableDesc; + + /** + * 逻辑删除:1 表示删除,0 表示未删除,2 表示禁用 + */ + private String isDeleted; + + /** + * 授权(多个用逗号分隔,如:sys:menu:list,sys:menu:create) + */ + private String permission; + /** + * 表显示的字段 + */ + private List spTableManagerItems; + /** + * 获取 表名称 + * + * @return tableName 表名称 + */ + public String getTableName() { + return this.tableName; + } + + /** + * 设置 表名称 + * + * @param tableName 表名称 + */ + public void setTableName(String tableName) { + this.tableName = tableName; + } + + /** + * 获取 表描述 + * + * @return tableDesc 表描述 + */ + public String getTableDesc() { + return this.tableDesc; + } + + /** + * 设置 表描述 + * + * @param tableDesc 表描述 + */ + public void setTableDesc(String tableDesc) { + this.tableDesc = tableDesc; + } + + /** + * 获取 逻辑删除:1 表示删除,0 表示未删除,2 表示禁用 + * + * @return isDeleted 逻辑删除:1 表示删除,0 表示未删除,2 表示禁用 + */ + public String getIsDeleted() { + return this.isDeleted; + } + + /** + * 设置 逻辑删除:1 表示删除,0 表示未删除,2 表示禁用 + * + * @param isDeleted 逻辑删除:1 表示删除,0 表示未删除,2 表示禁用 + */ + public void setIsDeleted(String isDeleted) { + this.isDeleted = isDeleted; + } + + /** + * 获取 授权(多个用逗号分隔,如:sys:menu:listsys:menu:create) + * + * @return permission 授权(多个用逗号分隔,如:sys:menu:listsys:menu:create) + */ + public String getPermission() { + return this.permission; + } + + /** + * 设置 授权(多个用逗号分隔,如:sys:menu:listsys:menu:create) + * + * @param permission 授权(多个用逗号分隔,如:sys:menu:listsys:menu:create) + */ + public void setPermission(String permission) { + this.permission = permission; + } +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManagerItem.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManagerItem.java new file mode 100644 index 0000000..4325c23 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/entity/SpTableManagerItem.java @@ -0,0 +1,111 @@ +package com.songpeng.sparchetype.basedata.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.songpeng.sparchetype.common.BaseEntity; + +/** + *

+ * + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@TableName("sp_table_manager_item") +public class SpTableManagerItem extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 表名称id + */ + private String tableNameId; + + /** + * 字段 + */ + private String field; + + /** + * 字段描述 + */ + private String fieldDesc; + + /** + * 排序 + */ + private Integer sortNum; + + + /** + * 获取 表名称id + * + * @return tableNameId 表名称id + */ + public String getTableNameId() { + return this.tableNameId; + } + + /** + * 设置 表名称id + * + * @param tableNameId 表名称id + */ + public void setTableNameId(String tableNameId) { + this.tableNameId = tableNameId; + } + + /** + * 获取 字段 + * + * @return field 字段 + */ + public String getField() { + return this.field; + } + + /** + * 设置 字段 + * + * @param field 字段 + */ + public void setField(String field) { + this.field = field; + } + + /** + * 获取 字段描述 + * + * @return fieldDesc 字段描述 + */ + public String getFieldDesc() { + return this.fieldDesc; + } + + /** + * 设置 字段描述 + * + * @param fieldDesc 字段描述 + */ + public void setFieldDesc(String fieldDesc) { + this.fieldDesc = fieldDesc; + } + + /** + * 获取 排序 + * + * @return sortNum 排序 + */ + public Integer getSortNum() { + return this.sortNum; + } + + /** + * 设置 排序 + * + * @param sortNum 排序 + */ + public void setSortNum(Integer sortNum) { + this.sortNum = sortNum; + } +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerItemMapper.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerItemMapper.java new file mode 100644 index 0000000..be08352 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerItemMapper.java @@ -0,0 +1,16 @@ +package com.songpeng.sparchetype.basedata.mapper; + +import com.songpeng.sparchetype.basedata.entity.SpTableManagerItem; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +public interface SpTableManagerItemMapper extends BaseMapper { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerMapper.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerMapper.java new file mode 100644 index 0000000..cfc57fb --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/mapper/SpTableManagerMapper.java @@ -0,0 +1,16 @@ +package com.songpeng.sparchetype.basedata.mapper; + +import com.songpeng.sparchetype.basedata.entity.SpTableManager; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +public interface SpTableManagerMapper extends BaseMapper { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/request/SpTableManagerReq.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/request/SpTableManagerReq.java new file mode 100644 index 0000000..7dac333 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/request/SpTableManagerReq.java @@ -0,0 +1,9 @@ +package com.songpeng.sparchetype.basedata.request; + +import com.songpeng.sparchetype.common.BasePageReq; + +/** + * + */ +public class SpTableManagerReq extends BasePageReq { +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerItemService.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerItemService.java new file mode 100644 index 0000000..5c1f833 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerItemService.java @@ -0,0 +1,16 @@ +package com.songpeng.sparchetype.basedata.service; + +import com.songpeng.sparchetype.basedata.entity.SpTableManagerItem; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +public interface ISpTableManagerItemService extends IService { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerService.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerService.java new file mode 100644 index 0000000..1921322 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/ISpTableManagerService.java @@ -0,0 +1,16 @@ +package com.songpeng.sparchetype.basedata.service; + +import com.songpeng.sparchetype.basedata.entity.SpTableManager; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +public interface ISpTableManagerService extends IService { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerItemServiceImpl.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerItemServiceImpl.java new file mode 100644 index 0000000..efdc691 --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerItemServiceImpl.java @@ -0,0 +1,20 @@ +package com.songpeng.sparchetype.basedata.service.impl; + +import com.songpeng.sparchetype.basedata.entity.SpTableManagerItem; +import com.songpeng.sparchetype.basedata.mapper.SpTableManagerItemMapper; +import com.songpeng.sparchetype.basedata.service.ISpTableManagerItemService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@Service +public class SpTableManagerItemServiceImpl extends ServiceImpl implements ISpTableManagerItemService { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerServiceImpl.java b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerServiceImpl.java new file mode 100644 index 0000000..333a7fd --- /dev/null +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/basedata/service/impl/SpTableManagerServiceImpl.java @@ -0,0 +1,20 @@ +package com.songpeng.sparchetype.basedata.service.impl; + +import com.songpeng.sparchetype.basedata.entity.SpTableManager; +import com.songpeng.sparchetype.basedata.mapper.SpTableManagerMapper; +import com.songpeng.sparchetype.basedata.service.ISpTableManagerService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author WangZiYang + * @since 2020-03-06 + */ +@Service +public class SpTableManagerServiceImpl extends ServiceImpl implements ISpTableManagerService { + +} diff --git a/sparchetype/src/main/java/com/songpeng/sparchetype/common/util/CodeGenerator.java b/sparchetype/src/main/java/com/songpeng/sparchetype/common/util/CodeGenerator.java index 42212e3..efd7f5d 100644 --- a/sparchetype/src/main/java/com/songpeng/sparchetype/common/util/CodeGenerator.java +++ b/sparchetype/src/main/java/com/songpeng/sparchetype/common/util/CodeGenerator.java @@ -33,18 +33,18 @@ public class CodeGenerator { GlobalConfig gc = new GlobalConfig(); String projectPath = System.getProperty("user.dir"); gc.setOutputDir(projectPath + "/src/main/java"); - gc.setAuthor("SongPeng"); + gc.setAuthor("WangZiYang"); gc.setOpen(false); // gc.setSwagger2(true); 实体属性 Swagger2 注解 mpg.setGlobalConfig(gc); // 数据源配置 DataSourceConfig dsc = new DataSourceConfig(); - dsc.setUrl("jdbc:mysql://127.0.0.1:3306/sparchetype?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT"); + dsc.setUrl("jdbc:mysql://192.168.52.76:3306/sparchetype?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Hongkong&allowPublicKeyRetrieval=true"); // dsc.setSchemaName("public"); dsc.setDriverName("com.mysql.cj.jdbc.Driver"); - dsc.setUsername("root"); - dsc.setPassword("root"); + dsc.setUsername("admin"); + dsc.setPassword("123456"); mpg.setDataSource(dsc); // 包配置 diff --git a/sparchetype/src/main/resources/application.yml b/sparchetype/src/main/resources/application.yml index 20d13d3..be011ba 100644 --- a/sparchetype/src/main/resources/application.yml +++ b/sparchetype/src/main/resources/application.yml @@ -10,9 +10,9 @@ spring: swagger: controller: com.songpeng.sparchetype - description: 后台管理系统 + description: MES接口管理 enable: true - license: 宋鹏 + license: wangziyang licenseUrl: https://www.cnblogs.com title: Api 测试 version: 1.0.0 \ No newline at end of file diff --git a/sparchetype/src/main/resources/mapper/basedata/SpTableManagerItemMapper.xml b/sparchetype/src/main/resources/mapper/basedata/SpTableManagerItemMapper.xml new file mode 100644 index 0000000..c0094a8 --- /dev/null +++ b/sparchetype/src/main/resources/mapper/basedata/SpTableManagerItemMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/sparchetype/src/main/resources/mapper/basedata/SpTableManagerMapper.xml b/sparchetype/src/main/resources/mapper/basedata/SpTableManagerMapper.xml new file mode 100644 index 0000000..7e01102 --- /dev/null +++ b/sparchetype/src/main/resources/mapper/basedata/SpTableManagerMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/sparchetype/src/main/resources/templates/codegenerator/entity.java.ftl b/sparchetype/src/main/resources/templates/codegenerator/entity.java.ftl index 9aabaa9..9ced740 100644 --- a/sparchetype/src/main/resources/templates/codegenerator/entity.java.ftl +++ b/sparchetype/src/main/resources/templates/codegenerator/entity.java.ftl @@ -7,12 +7,6 @@ package ${package.Entity}; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -<#if entityLombokModel> - import lombok.Data; - import lombok.EqualsAndHashCode; - import lombok.experimental.Accessors; - - /** *

* ${table.comment!} @@ -21,15 +15,6 @@ package ${package.Entity}; * @author ${author} * @since ${date} */ -<#if entityLombokModel> - @Data - <#if superEntityClass??> - @EqualsAndHashCode(callSuper = true) - <#else> - @EqualsAndHashCode(callSuper = false) - - @Accessors(chain = true) - <#if table.convert> @TableName("${table.name}")