10、手把手教你Extjs5(十)自定义模块的设计
从这一节开始我们来设计并完成一个自定义模块。我们先来确定一个独立的模块的所能定义的一些模块信息。以下信息只是我自己在开发过程中想到或用到的,希望有新的想法的或者有建议的跟贴回复。
一个独立模块包含以下信息:
1、模块的基本信息
- 模块ID号:一个数字的ID号,可以根据此ID号的顺序将相同分组的模块放在一块。
- 模块分组:模块分到哪个组里,比如说业务模块1、业务模块2、系统设置、系统管理等。
- 模块标识:系统中唯一的模块的标识,一般这个标识等同于数据库中的表名和java中的java Bean的名字。如合同模块此标识为Agreement,其在数据库中的表名也是这个值,其java Bean名字为Agreement.java。
- 模块名称:能够描述此模块信息的名称。
- 模块简称:如果名称过长,有些地方可以用简称来代替。
- 模块英文名称:万一要制作英文版,可以用英文名称。
- 模块英文简称:可以用作生成编码字段。
- glyph值:模块的图标字符的值。如果设置的话,会用前几节讲到的图标字符来显示在模块前面。
- 模块描述:
- 备注:
2、模块的附加信息
- 主键字段名:这个模块的主键字段。(现在只支持单个主键字段,不支持复合主键字段,复合主键请改为约束)
- 显示标志字段名:可以用于明确描述模块该记录的字段,比如说用记的用户姓名,单位的单位名称,合同的合同名称等。
- 记录标题tpl:对于不能用一个字段明确描述记录的,可以设置几个字段来描述。比如某合同有个年度的付款计划,合同名称无法明确描述记录,必须加上年度才行。
- 编码字段:如合同编码字段,可以在新增的时候对编码字段设置一个默认的生成规则。
- 顺序号字段:对记录顺序敏感的模块设置,设置了此字段,可以在grid中拖动记录来改变此字段的值。
- 日期字段:这个字段主要用于综合查询中,可以在此字段上设置各种年月日的条件。
- 年度字段:
- 月度字段:
- 季度字段:
- 文件字段:此模块如果有文件字段,可以上传文件放到此字段中。
- 编码级次:如果此字段的主键可以有编码级次,则设置,编码类似于财务软件中的科目编码,如级次为2,2,那么编码可以为 00 ,0001,0002,0003,01,0101,0102,0103。编码级次会在后台进行管理,如果没有上级编码,则不允许加入下级编码。
- 默认排序字段:在grid 加载的时候默认的排序
- 联动模块:设置一些模块,在此模块的记录值改变过后,必要的时候,刷新已经打开的联动模块,值其值为最新的。
- 是否有附件:此模块是否有附件。
3、权限信息
- 可用:设置成不可用将会在系统中禁用此模块。
- 可浏览:设置成不可浏览,将禁止此模块显示在菜单里。
- 可增加:
- 可修改:
- 可删除:
- 可权限设置:可以在此模块上加上权限设置,比如说对于承建单位,可以设置权限,使某些人只能查看指定的单位和其子模块的信息。这个是一个重点,会有单独章节来讲解。
- 可excel导入:可以对此模块的数据进行excel的批量导入。
- 可excel修改:可以对此模块的数据导出后excel修改后,再导入。
- 可图表:可以对此模块进行图表分析。
- 可审核:系统里内置的审核功能。
- 可审批:系统里内置的一个简易的审批流程。
权限信息为此模块的可设置的权限,并不是用户的权限,用户的权限要在模块已有的权限上进行设置才有。
以上信息是暂时能想到的关于一个模块中可以设置的信息。在系统的数据库中会有一个模块表,用于存放所有的这些信息,可以在前台修改后直接生效。也就是说你的客户要修改一个模块的名称,要给某个无附件的模块加上附件功能,或是可以显示图表,只要在前台设置一下就可以完成。不用去改后台的代码和服务器上的程序。自定义是这个系统开发的宗旨,能在前台修改的全部在前台修改。
定义好了模块以后,我们需要定义模块中的字段,以及gird列表,form列表等等一系列参数。
10、手把手教你Extjs5(十)自定义模块的设计的更多相关文章
- 手把手教你mysql(十)索引
手把手教你mysql(十)索引 一:索引的引入 索引定义:索引是由数据库表中一列或者多列组合而成,其作用是提高对表中数据的查询速度. 类似于图书的目录,方便快速定位,寻找指定的内容,如一本1000页的 ...
- 跟我extjs5(38--单个模块的设计[6获得模块列表数据])
跟我extjs5(38--单个模块的设计[6获得模块列表数据]) 在程序的前一个表以及,据的执行过程. 在菜单中选择 "系统管理"--"模块分组" ...
- 跟我一起学extjs5(37--单个模块的设计[5取得模块列表数据])
跟我一起学extjs5(37--单个模块的设计[5取得模块列表数据]) 写了几个月,总算有点盼头了,最终要从后台取得数据了.后台的spring mvc 和 service 仅仅能简单的 ...
- 20、手把手教你Extjs5(二十)模块Grid的多列表方案
对于有很多字段的模块在一个grid中显示所有的字段,会显得很臃肿,对于不同的用户其侧重的字段类型也不尽相同,因此就有必要为Grid的列表设计多个方案.在这个自定义系统进行设计的时候,我已经将这部分内容 ...
- 19、手把手教你Extjs5(十九)模块Grid的其他功能的设想
经过对自定义模块和Grid的设计和编码,现在已经能对一个有配置信息的模块来生成界面并进行一些简单的CURD操作.由于这是一个全解释性的前台的架构,因此你想到的任何新主意都可以放到所有的模块中. 比如对 ...
- 11、手把手教你Extjs5(十一)模块界面的总体设计
上一节中设计了一些模块自定义中用到的要素,为了直观起见,这一节先建立一个模块的主界面.看过我 模块管理常规功能自定义系统的设计与实现 博客的人应该会有所了解了.一个模块的主界面是一个Grid,在其上方 ...
- 22、手把手教你Extjs5(二十二)模块Form的自定义的设计[1]
下面开始设计和完成一个简单的Form的自定义过程.先准备数据,在ModuleModel.js中的data属性下面,加入自定义Form的参数定义,下面的代码中定义了一个新的属性tf_formScheme ...
- 24、手把手教你Extjs5(二十四)模块Form的自定义的设计[3]
自定义的Form已经可以运行了,下面改一下配置,把Form里面的FieldSet放在Tab之下.修改一下ModuleModel.js中的data下的tf_FormSchemes下的方案,增加一个属性. ...
- 23、手把手教你Extjs5(二十三)模块Form的自定义的设计[2]
在本节中将要加入各种类型的字段,在加入字段的时候由于可以一行加入多个字段,因此层次结构又多了一层fieldcontainer.form里面的主要层次结构如下: form -- fieldSet -- ...
随机推荐
- Webkit之HTML解析
加载部分HTML文本(即主资源)后便可以开始解析HTML元素(对输入字节流进行逐字扫描,识别HTML元素),最后生成DOM树,本文只讲HTML解析. HTML解析部分时序图: 其中最为重要的过程是(1 ...
- Setting DPDK+OVS+QEMU on CentOS
Environment Build Step: these packages are needed for building dpdk+ovs: yum install -y make gcc gli ...
- Java Interrupt Related
In Java, the main process can have several threads at a time, but only a few of them can run concurr ...
- 文本格式ANSI,Unicode等有什么区别
首先DBCS是亚洲的字符集,包含了ANSI,ANSI也就是ASCII值为0-255之间的字符,当字符为ANSI时,存放于文件中占用的是一个字节.如果是非ANSI的呢,则占用两字节.用VB的ASC函数可 ...
- KVC 实战浅析
KVC 就是 key value coding,废话! 今天我们研究的是如何使用它! key value coding : 间接通过字符串类型的key取出对应的属性值 KVC的价值 1.可以访问私有成 ...
- jQuery Mobile 学习
jQuery Mobile 学习系列 http://blog.csdn.net/bao990423420/article/details/13995021
- 快学Scala-第四章 映射和元组
知识点: 1.构造映射,映射是对偶的集合 val scores1 = Map("Alice" -> 10, "Bob" -> 7, "Ci ...
- overflow:hidden
超出之后隐藏,比如有一个div,高度和宽度都是100像素,当里面的内容很多,div里撑不下时,如果设置overflow:hidden,就会把超出的内容隐藏掉不显示
- 初探JavaScript魅力(四)
选项卡 <title>无标题文档</title> <style> #div1 .active{background:#FF0;} #div1 div{width:2 ...
- ios 基础学习二
1:@property @synthesize 属性(类似java里的get set) 上面那个类原先的实现是这样: #import @interface Photo : NSObject { NS ...