上一篇介绍了平台对于单表的增删改查通过可以配置可以生成代码的功能。
本篇从代码层讲解实现的过程。
大体思路是 :
创建组件库,创建前端页面模板,创建接口文件模板,
根据配置创建实体,参数实体文件,根据配置取组件代码添加到前端模板中,接口模板占位符替换成新实体
具体如下
一、系统自动读取表字段名称,类型,生成系统的实体类
主要通过
select * from sys.columns c,sys.objects t, sys.types p where t.name = tableName and t.is_ms_shipped = 0 and c.[object_id]= t.[object_id] and p.user_type_id = c.user_type_id 来获取字段类型插入到字段配置表
二、配置项生成代码文件的逻辑实现
这里主要用到了模板,我们针对这个模式创建了很多对应的模板,根据配置系统会选择对应的模板代码组织成新的文件。
1、组件库模板
截图中的文件全是组件的模板,比如编辑页中的checkbox,input,droplist(下拉框),radio,
date控件等,同样也有对应搜索区域的这些控件
我们自定义了模板语法,类似{{X}},生成代码文件时,这些标识会被实际内容替换。
2、前端页面模板
根据配置取到组件库的代码会在前端页面模板中进行拼装
前端页面模板(部分)
3、后台代码模板
service Iservice文件参数文件,实体文件根据字段对象直接生成并继承了用freesql封装的基础操作类
这里已经具有了增删改查,批量删除,批量增加,分页查询,动态切换表的功能
接口层模板