# zyfGenCode **Repository Path**: zengyufei/zyf-gen-code ## Basic Information - **Project Name**: zyfGenCode - **Description**: zyfGenCode - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 8 - **Forks**: 5 - **Created**: 2022-05-06 - **Last Updated**: 2022-05-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 初衷 一直想要这么一款代码生成器, 我是一个后端, 由于前端技术不成熟,一直拖,到现在前端技术有那么一点进步了, 在某天看到某程序代码生成器截图, 一股想要做的心就喷涌而出, 就一梭子干这个出来. ## 解决什么问题 划分两个区域: 属性 + 模板 属性: 都是从页面上面配置的, 支持自定义配置; 但是每个人要求的属性不一样, 如果属性不够或者不能满足你, 请自行改造. 模板: 模板都是从后端读取的, 只要按照一定的规则去命名即可, 数量随意, 名字随意. 你只需要管好模板的内容与属性匹配得上就行. 属性和模板都准备好了,可以像工厂一样生产,正如物料和工人. ## 名词,概念 数据集: 就是一堆默认值, 可以叫做方案, 看你使用哪个方案去初始化数据, 初始化后的数据可以应用到这张表上. 数据源: 你的数据库, 可以通过程序去读取数据库获取数据库里面的表. 数据源表: 指定数据源获取的table表. 生成表: 数据源表+数据集 = 生成表, 一份生成表可以设置基础信息/生成信息/后端自定义信息/前端信息/前端自定义信息/SQL信息 生成字段集合: 数据源表的所有列+初始化默认值(程序内写死) = 生成字段集合,可以设置组件类型/CURD页面是否显示等 ### 如何使用 1 修改 application-dev.yml 数据库连接 2 创建数据库 sp-dev 3 导入 /doc/sp-dev.sql 脚本 4 启动 SpServerApplication 5 双击打开 dengdeng/index.html 6 点击"新增",默认当前是库, 点击"新增数据源",添加自己想要链接的数据库 7 切换数据库后点击查询即可 ### 场景玩法 1 业务方需要不少前端都是树形结构,可以提供不同的树形的模板,多套多样丰富的前端模板、后端模板这样,在代码预览和下载那里进行选择并下载。 2 (未实现)如果选择了主从结构,可以使用 BeanSearcher 生成专用 VO,并提供一个接口出来,把这些都可以通过模板展示出来。 ## 部分功能预览图: ![首页](https://s1.ax1x.com/2022/05/10/Ot0CjI.png) 首页 ![读取数据库表](https://s1.ax1x.com/2022/05/10/Ot09gA.png) 读取数据库表 ![新增数据源](https://s1.ax1x.com/2022/05/10/Ot0iut.png) 新增数据源 ![使用数据源](https://s1.ax1x.com/2022/05/10/Ot0p3d.png) 使用数据源 ![数据集列表](https://s1.ax1x.com/2022/05/10/Ot0kHf.png) 数据集列表 ![新增数据集](https://s1.ax1x.com/2022/05/10/Ot0VUS.png) 新增数据集 ![拷贝数据集](https://s1.ax1x.com/2022/05/10/Ot0EE8.png) 拷贝数据集(PS: 包含自定义字段,使用者可以自行添加字段,在模板那边直接使用) ![编辑数据集](https://s1.ax1x.com/2022/05/10/Ot0Z4g.png) 编辑数据集 ![使用数据集](https://s1.ax1x.com/2022/05/10/Ot0mCQ.png) 使用数据集 ![查看新的生成表](https://s1.ax1x.com/2022/05/10/Ot0n3j.png) 查看新的生成表 ![编辑生成表信息](https://s1.ax1x.com/2022/05/10/Ot0Quq.png) 编辑生成表信息 ![查看生成表字段信息](https://s1.ax1x.com/2022/05/10/Ot0ugs.png) 查看生成表字段信息 ![没有注释解释](https://s1.ax1x.com/2022/05/10/Ot0Kvn.png) 没有注释解释 ![更多表字段编辑](https://s1.ax1x.com/2022/05/10/Ot0lD0.png) 更多表字段编辑 ![代码预览](https://s1.ax1x.com/2022/05/10/Ot01bV.png) 代码预览 ![模板文件结构说明](https://s1.ax1x.com/2022/05/10/Ot08ET.png) 模板文件结构说明 ![在线写模板](https://s1.ax1x.com/2022/05/11/Oa4aTS.png) 在线写模板 ![写模板的参数列表](https://s1.ax1x.com/2022/05/11/Oa4wFg.png) 写模板的参数列表 ![模板参数列表](https://s1.ax1x.com/2022/05/10/Ot0GUU.png) 模板参数列表 ![主键信息列表](https://s1.ax1x.com/2022/05/10/Ot0J5F.png) 主键信息列表 ![控制生成模板和下载](https://s1.ax1x.com/2022/05/10/Ot0tC4.png) 控制生成模板和下载 ## 未来功能 1 菜单所属应用 自定义数据源和sql和返回结构,那么应该是提供function了,首先提供数据源选择,sql输入,在线编辑返回值function。 上级菜单 同上。 2 自定义属性优化,目前仅提供输入型,后续提供下拉,单选,多选可以通过对象解析枚举,但是不支持请求后端的功能,这个更复杂,将来可能会考虑做。 3 主从结构方式优化,需要一个界面提供用户进行表与表之间的字段属性关联(可能多次多个),通过这个用户操作之后,我就拿到了关联的字段列表,然后开放出来给用户。 4 生成字段方案化,提供默认的生成字段方案,可以勾选或者同名应用,这样就不用每张表都重新设置一堆字段的属性。