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. 阿里云ECS部署ES

    背景 最近越来越多的公司把业务搬迁到云上,公司也有这个计划,自己抽时间在阿里云和Azure上做了一些小的尝试,现在把阿里云上部署ES和kibana记录下来.为以后做一个参考,也希望对其他人有帮助. 这 ...

  2. 问题: 数据流中位数 求解 时间复杂度度 java

    今天练习了一题: 数据流中位数 问题描述:数字是不断进入数组的,在每次添加一个新的数进入数组的同时返回当前新数组的中位数. 案例: 持续进入数组的数的列表为:[1, 2, 3, 4, 5],则返回[1 ...

  3. javascript一些比较难理解的知识点

    原文出处:https://segmentfault.com/a/1190000010371988 看了一下这篇文章,自己也手敲了一遍 //1. 立即执行函数 作用:将var变量的作用域限制于函数内,这 ...

  4. CY7C68013A控制传输

    大家好,你们的大熊又回来了.本篇文章我们来重点了解一下USB设备的四大传输方式之一--控制传输.不同于其他三种传输方式,控制传输有其独特的作用和功能,是一个USB设备必须支持的传输方式.控制传输对带宽 ...

  5. python+selenium自动化软件测试(第5章):Selenium Gird

    5.1 分布式(Grid) Selenium grid是用来分布式执行测试用例脚本的工具,比如测试人员经常要测试多浏览器的兼容性,那就可以用到grid了.下面就来介绍如何在多个浏览器上运行同一份脚本. ...

  6. 基于SSM框架的文件上传

    我整理了一下,这个办法在Servlet上应该也用得上.其实文件上传主要的问题是在于存储路径的拼接. 这里我是把东西存在Web项目的WebContent目录下的 下面贴一些代码 目标应该是这样一个格式 ...

  7. jQuery菜单示例(全选,反选,取消)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. [2012-06-29]sed根据行号范围执行替换

    测试数据: personball@vostro:SHELL$cat aaa <instrumentation android:name="aaa" android:name= ...

  9. jmeter性能测试 套路二

    1.一般我们不会通过下面这种去跑性能测试 2.我们会通过这种方式去跑性能测试 3.录制自动化 就用新的 4.录制性能测试  就用

  10. App测试中 ----------------Android和IOS测试区别

    1 . Android长按home键呼出应用列表和切换应用,然后右滑则终止应用:2. 多分辨率测试,Android端20多种,ios较少:3. 手机操作系统,Android较多,ios较少且不能降级, ...