常规功能和模块自定义系统 (cfcmms)—044模块导航功能的重构(2)

044模块导航功能的重构(2)

  经过分析,可以将一级导航的数据类型分为以下几类:

  1、模块实际字段值:例如对于“省份”模块,所属区域是其一个字符串字段,里面放着各个区域的名称。

  2、父模块的导航:例如对于“市”模块,可以用省来对其进行导航。

  3、某个数值字段的数值区间:可以自定义数值区间来完成分组。经过配置可以完成更加复杂的分组。

  4、日期字段根据年,月,日来进行分分组,再可以扩展到比如说最近半月,最近一月,最近半年等的分组。

  对于数值字段和日期字段的分组,可以是基准模块的字段,也可以是父模块中的字段,或者是子模块聚合字段。

  子模块聚合字段的是这次新想到的,比如可以这样加:一个订单可以通过 “订单明细的记录个数”,来进行导航。或者根据“订单明细中最大的货物单价”来进行导航。可以通过自定义字段或者formula来生成一个作为导航的数据。

  上面是一个级次导航的一些数据类型,如果一个导航是有二层的话,那么就会更加复杂,比如上面的1和4的组合导航,在每个地区下面,再按日期展开导航。

  导航的实质就是给模块grid的记录加上一个筛选条件,虽然可以用其他方式完成,但这种方式我认为是最直观的,整个导航树的值中的记录分布一目了然。导航树还可以进行一些复杂的拖动操作,比如将一个省直接拖动到 “地区导航”的某个值上面,就可以实现修改,把这个省的地区值改掉。

  下面这张思维导图就是我的一些文档了。我的设计文档一般都是一些图表,有思路了以后类的组织就是文档,类里面也会有一些注释,再加上这个博客就是所有的文档了。

时间: 2024-11-11 18:05:21

常规功能和模块自定义系统 (cfcmms)—044模块导航功能的重构(2)的相关文章

常规功能和模块自定义系统 (cfcmms)—015模块自定义概述(2权限)

常规功能和模块自定义系统 (cfcmms)-015模块自定义概述(2权限) 模块的权限的自定义也是这个系统的重要部分.在本系统中现在模块的权限有三大类:模块操作权限.记录可视范围限定.附加操作权限. 模块操作权限:可以对模块进行浏览.新增.修改.删除.审核.审批等的设置.可以通过生成和隐藏相应的按钮来具体控制权限的设置.如某人无删除权限,则在该模块的操作界面上没有删除按钮.对于一般的管理系统而言这些功能基本上是够用了. 记录可视范围限定:可以在任意模块加上可视范围的限定.在某个父模块上加上可视范

常规功能和模块自定义系统 (cfcmms)—043模块导航功能的重构(1)

043模块导航功能的重构(1) 模块导航即基于grid的条件限定.可以明确在导航树中导航条件,以及在该导航条件之下当前模块的记录数.在选中某个导航记录时,grid的数据会更新为该导航所设置的条件中.(这个功能应该是一个很好的功能,为什么现在还不太流行呢.可能是我见识的软件太少了) 导航作为引导用户浏览和筛选数据的功能,由于每一个导航记录上都标有记录数,可以很好的体现模块数据的分布情况(为了完成这个目的,可以加入每个导航的记录的百分比).现在来看看现在系统中的一些已有的导航功能. 更加复杂一点的导

常规功能和模块自定义系统 (cfcmms)—041模块附加字段和新的Grid方案设计器

041模块附加字段和新的Grid方案设计器 在整个自定义系统,模块附加字段也是有必要的.对于一个模块来说附加的字段有二种,一种是父模块中的字段,另一种是子模块中的聚合字段.在模块记录生成sql语句的时候,只是生成了该模块的所有基本字段和其直接父模块的id和name的字段.不可能将所有父模块的字段都加进去,只能指定一些必需的字段加入到sql语句中.比如在获取订单数据的时候,最基本的sql语句中只包括了目的的市和始发地市的信息,如果要在grid中显示始发地省和目的地省就需要设置一下附加字段,这是一种

常规功能和模块自定义系统 (cfcmms)—042模块Grid的排序和筛选

042模块Grid的排序和筛选 一.排序 Grid界面排序可以点击列头直接来进行,这个是很方便.但是还有二个问题需要解决:无法取消排序至默认,单字段和多字段排序不可以方便切换.为了解决这二个功能,在pagingtoolbar的前面加了一个SplitButton按钮来控制这二个操作. 在上面的图片中可以看出,新增了一个按钮,下面有一些菜单来控制grid的排序的一些功能.并且显示当前排序的字段以及顺序.下面即是这个控件的源码,这个控件应该可以适用于任何的grid之中.并不是本系统专用. /** *

常规功能和模块自定义系统 (cfcmms)—007Extjs的配置文件和自定义ui

常规功能和模块自定义系统 (cfcmms)-007Extjs的配置文件和自定义ui 一.在自动生成的项目中,文件 app.json 是整个前台系统的配置文件,可以在里面增加或修改配置参数来完成相应的功能.该文件的部分参数如下: { "name": "cfcmms", //项目命名空间 "version": "1.0.0.0", //项目版本号 "indexHtmlPath": "index.htm

常规功能和模块自定义系统 (cfcmms)—018自定义grid方案(2)

常规功能和模块自定义系统 (cfcmms)-018自定义grid方案(2) 下面来看看在系统中如何定义一个grid方案.当前定义grid方案也是采用对记录模块操作的方式,并没有采用所见即所得得的设计方式,以后有时间将会修改成所见即所得得方式. 上图中可以看到在进入了"模块列表方案"后,会显示所有的模块的列表方案,在导航里选择了"省份"这后,会只显示省份的2个列表方案.每个方案都有若干个字段组,选中一条记录以后,按"列表字段分组"可以看到当前方案的

常规功能和模块自定义系统 (cfcmms)—009主界面和菜单的展示和控制(1)

常规功能和模块自定义系统 (cfcmms)-009主界面和菜单的展示和控制(1) 先从主界面和菜单.主tab标签以及一些附加的设置说起. 一个比较传统的管理软件中,一般会包括一个顶部区域.底部区域.菜单条(树状菜单)和主操作区域.本系统亦是如此,只是增加了一点灵活控制的地方.首先来看看本系统中的界面布局和extjs的类之间的对应关系,extjs中的面象对象的功能已经比较完善了,现在开发b/s程序就和我以前用组件开发delphi系统差不多,建好一个个组件类,然后直接使用即可. 和主界面.菜单相关的

常规功能和模块自定义系统 (cfcmms)—008测试试用版(6.0.0)下载及使用

常规功能和模块自定义系统 (cfcmms)-008测试试用版(6.0.0)下载及使用 在经过了一些调试和优化后,现在可以下载和测试试用版(6.0.0).在这个版中本主界面和菜单改用了mvvm方式来显示和控制. 程序和数据下载地址:http://pan.baidu.com/s/1c0sIGPq 所用到的java包下载地址:http://pan.baidu.com/s/1kTF5cIN 安装说明: 程序和数据下载好后解压缩,在eclipse中导入即可.数据库采用mysql,先用命令 CREATE S

常规功能和模块自定义系统(cfcmms)—004可自定义的项目

常规功能和模块自定义系统(cfcmms)-004可自定义的项目 可以在前台浏览器里可进行的配置项目如下图: 版权声明:本文为博主原创文章,未经博主允许不得转载.