从这一节开始我们来设计并完成一个自定义模块。我们先来确定一个独立的模块的所能定义的一些模块信息。以下信息只是我自己在开发过程中想到或用到的,希望有新的想法的或者有建议的跟贴回复。

一个独立模块包含以下信息:

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(十)自定义模块的设计的更多相关文章

  1. 手把手教你mysql(十)索引

    手把手教你mysql(十)索引 一:索引的引入 索引定义:索引是由数据库表中一列或者多列组合而成,其作用是提高对表中数据的查询速度. 类似于图书的目录,方便快速定位,寻找指定的内容,如一本1000页的 ...

  2. 跟我extjs5(38--单个模块的设计[6获得模块列表数据])

    跟我extjs5(38--单个模块的设计[6获得模块列表数据])         在程序的前一个表以及,据的执行过程. 在菜单中选择 "系统管理"--"模块分组" ...

  3. 跟我一起学extjs5(37--单个模块的设计[5取得模块列表数据])

    跟我一起学extjs5(37--单个模块的设计[5取得模块列表数据])         写了几个月,总算有点盼头了,最终要从后台取得数据了.后台的spring mvc 和 service 仅仅能简单的 ...

  4. 20、手把手教你Extjs5(二十)模块Grid的多列表方案

    对于有很多字段的模块在一个grid中显示所有的字段,会显得很臃肿,对于不同的用户其侧重的字段类型也不尽相同,因此就有必要为Grid的列表设计多个方案.在这个自定义系统进行设计的时候,我已经将这部分内容 ...

  5. 19、手把手教你Extjs5(十九)模块Grid的其他功能的设想

    经过对自定义模块和Grid的设计和编码,现在已经能对一个有配置信息的模块来生成界面并进行一些简单的CURD操作.由于这是一个全解释性的前台的架构,因此你想到的任何新主意都可以放到所有的模块中. 比如对 ...

  6. 11、手把手教你Extjs5(十一)模块界面的总体设计

    上一节中设计了一些模块自定义中用到的要素,为了直观起见,这一节先建立一个模块的主界面.看过我 模块管理常规功能自定义系统的设计与实现 博客的人应该会有所了解了.一个模块的主界面是一个Grid,在其上方 ...

  7. 22、手把手教你Extjs5(二十二)模块Form的自定义的设计[1]

    下面开始设计和完成一个简单的Form的自定义过程.先准备数据,在ModuleModel.js中的data属性下面,加入自定义Form的参数定义,下面的代码中定义了一个新的属性tf_formScheme ...

  8. 24、手把手教你Extjs5(二十四)模块Form的自定义的设计[3]

    自定义的Form已经可以运行了,下面改一下配置,把Form里面的FieldSet放在Tab之下.修改一下ModuleModel.js中的data下的tf_FormSchemes下的方案,增加一个属性. ...

  9. 23、手把手教你Extjs5(二十三)模块Form的自定义的设计[2]

    在本节中将要加入各种类型的字段,在加入字段的时候由于可以一行加入多个字段,因此层次结构又多了一层fieldcontainer.form里面的主要层次结构如下: form -- fieldSet -- ...

随机推荐

  1. PHP全选择删除功能

    <script type="text/javascript" language="javascript"> function selectBox(s ...

  2. 2015年4月29日 dayofweek

    #include <stdio.h>#include <stdlib.h>int DayofYear(int year, int month, int day);#define ...

  3. Intent之间无法传递大数据的替代方法

    /** * TODO: Activity之间传递list,对象等工具类 * * @author * @date 2014-9-12 下午5:35:38 * @version 0.1.0 */ publ ...

  4. Chapter 1 First Sight——12

    Breakfast with Charlie was a quiet event. 和查理斯吃早饭时一件安静的事情 He wished me good luck at school. I thanke ...

  5. jq的遍历节点

    1.child()方法 该方法用于取得匹配元素的子元素集合 2.next() 该方法用于取得匹配元素后面紧邻的同辈元素, 3.prev() 该方法用于取得匹配元素前面紧邻的同辈元素 4.sibling ...

  6. plsql找外键约束关联的表的方法

    直接Ctrl + 鼠标左键 表名 就可以找到参照表(关联表)的名称 下面的是复杂的方法 这个就是关联的表 这里右键查看 可以查看到参照的表

  7. ibus用上搜狗拼音词库

    1.下载搜狗拼音词库 wget http://hslinuxextra.googlecode.com/files/sougou-phrases-full.7z 2.用sougou-phrases-fu ...

  8. msf常用命令

    msf > search -r great -t exploits search命令查找rank为great的exploit msf > setg RHOST 192.168.1.102 ...

  9. android复习-AnsyTask

    AnsyTask是一种类似Thread+Hander机制的处理耗时操作的类, 通过在UI线程中excute()启动操作, 在AnsyTask中 doInBackground()中处理耗时操作(运行在自 ...

  10. PAT (Advanced Level) 1063. Set Similarity (25)

    读入之后先排序. 询问的时候可以o(m)效率得到答案. #include<cstdio> #include<cstring> #include<cmath> #in ...