功能管理:从功能类型来看,不属于用户使用的功能,而属于系统维护使用的功能,因为对于用户来说,是不可见的。功能管理的作用是定义一套规则,用来处理权限等业务,比如常见的菜单权限控制、按钮权限控制等情景

在设计方面,为了简化功能数据模型,涉及到几个概念

模块(Module):功能集合,用于给整个系统的功能按照子系统的结构分模块,比如“系统管理“等

功能(Function):实际的业务功能单元,对应一个完整的业务相关的所有业务操作的集合,比如“流水号管理”等

操作(Operation):一个完整业务所包含的所有操作类型,比如“新增”、“修改”、“删除”等

它们之间的关系简单表示如下图:

功能树结构如下图:

根节点是所有模块的虚拟父节点,因此不能通过右键菜单进行”修改“和”删除“等其他操作

模块的操作如下图:

单击之后,右侧会出现编辑模块的页面

功能的操作如下图所示:

单击之后,右侧会出现编辑功能的页面

此外,还可以通过功能的右键菜单”操作管理“来维护功能的操作列表,如下图所示:

无论是模块、还是功能,都可以通过右键菜单”刷新“来重新加载所有的子节点,实现方式是先删除所有的子节点,然后再重新查询所有子节点的数据

由于模块、功能的数据都没有保存在一张数据库表里,因此在使用ligerTree控件的时候,需要将模块和功能的数据进行组装,符合ligerTree树的数据格式要求

经过一段时间的开发,已经有一部分功能陆续完成,待一期开发计划完成之后,将会开放所有源代码,敬请期待~

Xianfeng轻量级Java中间件平台:功能管理的更多相关文章

  1. Xianfeng轻量级Java中间件平台:权限管理

    权限管理:是通过系统对用户的行为进行控制的一套业务规则,可以做得很简单,比如通过硬编码的方式进行控制,也可以做得很复杂,比如通过一些复杂的权限模型去实现一些复杂的权限控制,比如菜单访问权限.按钮操作权 ...

  2. Xianfeng轻量级Java中间件平台:一期开发计划

    关于Xianfeng轻量级Java中间件平台,考虑到需要控制开发周期,通过分期开发的方式来实现一些基础的.常用的功能,这样有利于跟踪开发计划.一期的开发计划,主要实现的目标如下: 系统架构: 1.确定 ...

  3. Xianfeng轻量级Java中间件平台:菜单管理

    通过菜单管理,可以实现系统菜单的权限控制.用户个性化菜单功能等,当然很多系统支持在线开发,不用专门的开发工具编写代码,通过一些简单的设置就能开发出新的功能,有新功能增加到系统中,菜单管理功能也是必不可 ...

  4. Xianfeng轻量级Java中间件平台:流水号管理、组织机构管理

    流水号管理:现实中,经常都会和流水号打交道,至于什么是流水号,简而言之,就是按照特定格式要求产生的一个号码,并且总是按照递增的规则生成的,对于要求比较高的业务,需要流水号是连续的,比如移动营业厅排号小 ...

  5. Xianfeng轻量级Java中间件平台:用户管理

    用户管理:简单地说,就是管理系统用户的账号信息.在典型的业务系统中,用户管理往往不包含用户隶属组织机构相关属性(比如部门.岗位等)的维护,而是由组织机构管理专门去维护.因此在用户管理的功能中,主要就维 ...

  6. Xianfeng轻量级Java中间件平台:属性管理、字典管理

    属性管理:主要功能是维护一些系统定义的.业务定义的属性数据,至于属性是什么,简单的说就是由键key和值value组成的数据,属性查询列表页面如下: 表格实现了直接编辑的功能 字典管理:主要功能是维护一 ...

  7. Xianfeng轻量级Java中间件平台:基于RBAC模型实现权限控制的原理

    首先,白话一下RBAC模型.RBAC是基于角色的访问控制(Role-Based Access Control)的简称.RBAC认为权限授权实际上是Who.What.How的问题.在RBAC模型中,wh ...

  8. 淘宝JAVA中间件Diamond详解之简介&快速使用 管理持久配置的系统

    http://my.oschina.net/u/435621/blog/270483?p=1 淘宝JAVA中间件Diamond详解(一)---简介&快速使用 大家好,今天开始为大家带来我们通用 ...

  9. Java生鲜电商平台-用户管理的架构与实战

    Java生鲜电商平台-用户管理的架构与实战 在电商后台中,用户管理是运营人员管理用户的模块.这里的用户区别于运营人员,会在权限的角色管理中分别阐述.这里的用户包含平台的一般用户,会员用户等.本文将分享 ...

随机推荐

  1. 【delphi】TStringList类常用属性方法详解

    TStringList 常用方法与属性 var List: TStringList; i: Integer; begin List := TStringList.Create; List.Add('S ...

  2. crontab入门

    参数 crontab是一个处理定时任务的命令,在终端输入man crontab可以得到使用方法提示,主要参数如下: crontab -u # 指定运行的账户,默认为当前账户 crontab -l # ...

  3. Centos7 ss搭建

    1.安装pip Pip 是 Python 的包管理工具,下载ss十分方便,但是centos是没有pip的,我们需要安装一个. yum install python-setuptools & e ...

  4. 使用jQuery清空file文件域的解决方案

    使用jQuery清空file文件域的解决方案 var file = $("#file") file.after(file.clone().val("")); f ...

  5. Python调用jar包中的方法

    [本文出自天外归云的博客园] 需求 最近在后台项目代码中一段自定义的AES加解密的程序在平时的测试工作中应用频繁.因为写脚本经常会需要使用,而经过各种尝试,比如jpype等,都不尽如人意.最后转换思路 ...

  6. ios9 之后使用CFNumberGetValue出错

    将编译源类型设置为根据文件而定:

  7. xss绕过htmlspecialchars实体编码的姿势

    倘若是在script.input标签当中,即可突破.Payload ' oninput=alert`1` //      当要在input中输入内容时触发事件' oninput=alert`1` ' ...

  8. 分布式唯一id生成器的想法

    0x01 起因 前端时间遇到一个问题,怎么快速生成唯一的id,后来采用了hashid的方法.最近在网上读到了美团关于分布式唯一id生成器的解决方案, 其中提到了三种生成法:(建议看一下这篇文章,写得很 ...

  9. angularjs去掉加载时的{{}}

    添加css <style>        .ng-cloak {display: none;}    </style> 在body头文件中加上class=ng-cloak &l ...

  10. 手写体识别中用到的Tensorflow函数复习

    tf.truncated_normal(shape, stddev=0.1) 从截断的正态分布中输出随机值. 生成的值服从具有指定平均值和标准偏差的正态分布,如果生成的值大于平均值2个标准偏差的值则丢 ...