dzzoffice的树型结构用户管理设计
在DzzOffice1.1的开发中,针对用户使用群体重新设计了,机构、部门、用户管理应用。
传统OA,企业相关程序,一般是设置机构-设置部门-设置职位-添加用户这样的步骤。每个步骤分为不同的管理界面。用户管理采用列表的形式,每页显示10条、20条或更多。用户的管理,移动等操作会在不同的界面中切换。感觉操作过程会很繁琐,显示也不直观。
DzzOffice主要针对几人至几百人的中小型团队和企业使用设计,要实现的功能目标主要是:
便捷增 删 移 机构、部门、子部门
便捷增 删 移 用户
批量导入用户
批量导出用户
机构、部门多级管理员设置,减轻系统管理员负担,每个机构部门也可更灵活实现自己的需要。
组织架构、人员信息能直观显示,操作便捷
针对以上目标,最终决定采用树形的结构来设计。
最终开发完成结果截图
通过左上角的图标按钮用户很容看明白,添加机构、添加部门、添加人员、导入用户、搜索、帮助。基本上不需要看操作说明,便可以完成所有的设置操作。用户,部门等移动,只用使用鼠标拖动到需要的位置。包括部门管理员的设置,只需要把人员从左侧人员列表中,拖到右侧框架页面内即可。
首页,操作说明页面。操作说明并不多,主要是介绍拖动与Ctrl建组合可批量操作。
人员管理
搜索
批量导入EXCEL
采用树型结构的管理方式缺点是如果用户数量太多不合适,操作会不方便。整个树的效率也会是问题。开发中测试,整个树结构上万用户操作效率还能接受。拖动操作由于树太长,操作体验会比较难用。但对于一般几十到几百人的管理使用是很方便的。
另外是由于操作太方便,容易造成误操作。例如拖动用户,容易托错位置。好处是,再把他拖回来也很容易。呵呵。
DzzOffice本身的设计,所有的管理功能也都是以应用的方式接入。将来如果又需要,也可以再开发另外一款用户管理的应用来用于大用户量的情况。用户可以根据自己企业的情况来选择使用那款用户管理应用。
dzzoffice的树型结构用户管理设计的更多相关文章
- java树型结构的数据展现设计
在做一个需求管理的页面时,需求的展现是不限层级树型结构,需求下还可以分拆任务,页面要展现的字段有20多个,而且需求采用通用表单设计,db采用大宽表存储,有一百多个字段.目前数据量不大,第一版采用普通的 ...
- JSP中的一个树型结构
看方力勋的javaWeb,采用左右值来表示树型结构(就是俺门的多级分类)表结构 页面代码 <%@ page language="java" import="java ...
- 20-Ubuntu-文件和目录命令-查看目录树型结构-tree
tree 以树状图列出当前目录下的文件目录结构 选项 含义 -d 只显示当前目录的子目录树型结构 显示当前目录的子目录和文件树型结构 例: 1.查看文档目录下的子目录和文件树型结构 2.查看文档目 ...
- 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计
前言 近来公司需要构建一套 EMM(Enterprise Mobility Management)的管理平台,就这种面向企业的应用管理本身需要考虑的需求是十分复杂的,技术层面管理端和服务端构建是架构核 ...
- java实现树型结构样式
import javax.swing.*; import javax.swing.event.*; import javax.swing.tree.*; public class Root exten ...
- Delphi实现树型结构
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...
- SQL Server 通过“with as”方法查询树型结构
一.with as 公用表表达式 类似VIEW,但是不并没有创建对象,WITH AS 公用表表达式不创建对象,只能被后随的SELECT语句,其作用: 1. 实现递归查询(树形结构) 2. 可以在一个 ...
- Delphi实现树型结构具体实例
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...
- web api+递归树型结构
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Ne ...
随机推荐
- 配置Linux系统网卡连接网络
本实验需要两台虚拟机来完成,环境如下: 主机名称 操作系统 ip地址 本地主机 RHEL7_64 192.168.157.134 -> 192.168.129.127 远程主机 CentOS 6 ...
- ActionResult
ActionResult public abstract class ActionResult { public abstract void ExecuteResult(ControllerConte ...
- Oracle ->> 查看分区表的每个分区的数据行分布情况
ora_hash函数用来返回分区号,而dbms_rowid.rowid_object()函数用来返回object_id , ) part_id ,count(*) from sales_fact_pa ...
- angular todo
<!DOCTYPE HTML> <html lang="en-US" ng-app> <head> <meta charset=" ...
- Android之开发杂记(三)
一.popup 弹出框 在onCreate中创建时异常 Unable to add window -- token null is not valid; is your activity runnin ...
- 石阶 VS 石像
山庙有尊雕刻精美的佛像,前来拜佛的人络绎不绝. 铺在山路上的石阶开始抱怨:“大家同是石头,凭什么我被人蹬来踩去,你却被人供在殿堂?” 佛像笑了笑:“当年你只挨六刀,做了一方石阶,而我经历了千刀万凿之后 ...
- msmq中消息的数量
using System.Diagnostics; PerformanceCounter objCounter = new PerformanceCounter("MSMQ Queue&qu ...
- Sales Order Flow Statuses
OE_ORDER_LINES_ALL.flow_status_code column values execute the below query to see the values. SELECT ...
- java获取系统指定时间年月日
java获取系统指定时间年月日 private String setDateTime(String falg) { Calendar c = Calendar.getInstance(); c.set ...
- Qt之QHeaderView排序
简述 在Windows中我们经常会遇到表头排序,比如可以对文件按照名称.修改日期.类型.大小进行排序,方便我们统一的归类查找. Qt中,我们可以通过点击表头来对QTableView或QTreeView ...