FoxOne---一个快速高效的BS框架--(1)

FoxOne---一个快速高效的BS框架--(2)

FoxOne---一个快速高效的BS框架--(3)

FoxOne---一个快速高效的BS框架--(4)

FoxOne---一个快速高效的BS框架--WEB控件属性编辑器

FoxOne---一个快速高效的BS框架--数据访问(Dao)

在这一节我将演示如何根据数据表自动生成一个增删改查的模块,在此我用的是MYSQL数据库,表结构如下:

这是一张用于存储员工请假数据的表结构,我在建表时把各字段的注释也写好了,因为是演示,所以字段类型和长度的就随意了……

首先运行FOXONE,打开“应用设计”--》“数据库表”页面,在这个页面中可以直接看到wf_form_leaveapproval的表结构,如下:

从截图中可以看到FOXONE已经自动识别了各字段的类型,长度,以及注释,我们要做的就是改一下“页面标题”然后点击“生成”:

然后,一个简单的增删改查就做好了,我们打开“应用设计”可以看到刚生成的列表页和表单页:

对应的增删改查的SQL语句则在“增删改查列表”中:

回到“应用设计”的“页面设计”,选中左边树控件的“请假申请信息编辑”,点击右边的“Design",我们来优化一下编辑页:

表单中有几个需求需要修改的:

1.Id不用填写,直接生成;

2.请假人和所属部门应该是默认当前登陆用户的信息,并且可以点选,不应该填写;

3.请假理由用多行文本框;

4.请假天数必填且输入的值必须为integer;

5.请假类型改为下拉框选择,并且以后可以自由增删请假类型;

下面我们一一来实现:

首先点击左下角红色的“编辑”链接,进入,选中“表单字段”,选中“ID”然后点击“批量删除",第一个需求就实现了

点击“CreatorId"的编辑链接,进入字段的控件编辑,选择控件为”KV文本框“,填写红色框如下:(UserSelector_Copy)是我提前已经做好的一个页面,如何定制选择器页面会在下一节详述。

Value中填写的”$User.Id$"为环境变量表达式,表示默认值为当前用户的意思,当前用户所属部门的表达式为:$User.DepartmentId$

点击保存后回来看看页面长什么样了:

可以看到此时的”请假人“已经从输入框变成的点选框,对于”所属部门“也执行同样的操作,只是选择器的名称改为”DepartmentSelector",DepartmentSelector同样是我提前做好的树型选择页。

这样需求2也就实现完了,

需求3把请假理由变为多行文本框,与上面的操作类型,只是选择的控件为“多行文本框”:

(注意重新选择了控件为Label和Rank值要重新填一下)

现在来看看页面的效果:

第3个需求也OK了,第4个:请假天数必填且输入的值必须为integer,还是先进“表单字段”选项卡,点击“LeaveDays”的“编辑”链接,填写validator的值如下:

这样第4个需求也实现了,最后一个需求,请假类型改为下拉框选择,并且以后可以自由增删请假类型,首先在“系统管理”中的“数据字典管理”中新增“请假类型”的字典

接到回到请假表单的设计页面,点开编辑进到“表单字段”选项卡,选中“Type”点编辑,选控件为“下拉框”,点“保存”,

再选择“数据源“选项卡,选择”数据字典数据源“,

这样就实现了所有需求了,现在再看看表单长成啥样了:

表单页的修改就算完成了,对于列表页的修改请参照第一篇FOXONE的文章:FoxOne---一个快速高效的BS框架--(1)

无非就是去掉多余的搜索条件,表格列应用一下转换器,删除不想显示的列,然后就长成下面这样了:

至此一个增删改查的页面也就算基本完成了。

顺便再提一点,如果在“流程应用管理”中,把刚才设计好的编辑页配置进去,则页面可以当成流程表单在流程引擎中流转(但工作流当前还没开源,完善好后再上传git):

可以看到上面的“保存”和“重置”多出来了,可以在设计页中把这两个按钮删除掉,这样在流程容器中保存就可以了。

如果有兴趣的可以加入群里来交流一下,群号:581523872

github:https://github.com/gameking0124/FoxOne

FoxOne---一个快速高效的BS框架--生成增删改查的更多相关文章

  1. FoxOne---一个快速高效的BS框架--数据访问(Dao)

    FoxOne---一个快速高效的BS框架--(1) FoxOne---一个快速高效的BS框架--(2) FoxOne---一个快速高效的BS框架--(3) FoxOne---一个快速高效的BS框架-- ...

  2. FoxOne---一个快速高效的BS框架--(2)

    FoxOne---一个快速高效的BS框架--(1) FoxOne---一个快速高效的BS框架--(2) FoxOne---一个快速高效的BS框架--(3) FoxOne---一个快速高效的BS框架-- ...

  3. FoxOne---一个快速高效的BS框架

    FoxOne---一个快速高效的BS框架--(1) FoxOne---一个快速高效的BS框架--(2) FoxOne---一个快速高效的BS框架--(3) FoxOne---一个快速高效的BS框架-- ...

  4. FoxOne---一个快速高效的BS框架--WEB控件属性编辑器

    FoxOne---一个快速高效的BS框架--(1) FoxOne---一个快速高效的BS框架--(2) FoxOne---一个快速高效的BS框架--(3) FoxOne---一个快速高效的BS框架-- ...

  5. FoxOne---一个快速高效的BS框架--(4)

    FoxOne---一个快速高效的BS框架--(1) FoxOne---一个快速高效的BS框架--(2) FoxOne---一个快速高效的BS框架--(3) FoxOne---一个快速高效的BS框架-- ...

  6. Magicodes.WeiChat——ASP.NET Scaffolding生成增删改查、分页、搜索、删除确认、批量操作、批量删除等业务代码

    关于T4代码生成这块,我之前写过几篇帖子,如:<Magicodes.NET框架之路——让代码再飞一会(ASP.NET Scaffolding)>(http://www.cnblogs.co ...

  7. tp框架的增删改查

    首先,我们来看一下tp框架里面的查询方法: 查询有很多种,代码如下: <?php namespace Admin\Controller; use Think\Controller; class ...

  8. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  9. Yii2.0高级框架数据库增删改查的一些操作

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

随机推荐

  1. 一起来学Go --- (go的变量)

    变量 变量是几乎所有编程语言中最基本的组成元素,从根本上说,变量相当于是一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间.go语言中的变 ...

  2. Java基础二

    1 关键字 定义:被java语言赋予了特殊含义的单词. 特点:关键字中的所有字母都为小写. 用于定义数据类型的关键字 class.interface.byte.short.int.long.float ...

  3. # hadoop入门第六篇:Hive实例

    前言   前面已经讲了如何部署在hadoop集群上部署hive,现在我们就做一个很小的实例去熟悉HIVE QL.使用的数据是视频播放数据包括视频编码,播放设备编码,用户账号编码等,我们在这个数据基础上 ...

  4. python+selenium自动化软件测试(第8章) :多线程

    前戏:线程的基础 运行多个线程同时运行几个不同的程序类似,但具有以下优点:进程内共享多线程与主线程相同的数据空间,如果他们是独立的进程,可以共享信息或互相沟通更容易.线程有时称为轻量级进程,他们并不需 ...

  5. Atomic类和CAS

    说Atomic类之前,先聊一聊volatile. 对volatile的第一印象就是可见性.所谓可见性,就是一个线程对共享变量的修改,别的线程能够感知到. 但是对于原子性,volatile是不能保证的. ...

  6. fzu1969 GCD Extreme 类似于uva10561

    Description Given the value of N, you will have to find the value of G. The meaning of G is given in ...

  7. 早期MyBatis开发与接口式Mybatis开发的简介

    早期MyBatis开发与接口式Mybatis开发的简介 一.早期版本的myBatis使用 导jar包            1.配置mybatis.xml的配置文件                1) ...

  8. DateTable转化为泛型集合

    public class ListUtil { public static List<T> ToList<T>(DataTable dt) { List<T> li ...

  9. h5video标签

    在video标签中,我们可以使用属性:videoWidth & videoHeight,它获取的是video的宽度和高度(媒体本身).虽然不能直接使用,但是可以通过计算宽高比得到 video ...

  10. CPU和GPU的差别

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt317 首先需要解释CPU和GPU这两个缩写分别代表什么.CPU即中央处理器, ...