RDIFramework.NET ━ 9.3 用户管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架
9.3 用户管理 -Web部分
用户管理模块主要是对可登录系统的用户进行管理。后续的工作如:用户归属角色、权限的分配、用户所拥有的相应功能模块、各业务系统权限的分配、协同办公等都是以此为基础。用户管理的主要功能有:新增用户、修改用户、删除用户、设置用户的默认角色、设置用户密码、设置用户的有效性、用户数据导出等。用户管理主界面如下图所示:

相比以前的版本,现在新版本的“用户管理”主界面增加了按组织机构来进行分类用户管理,更加的清晰与直观,展示速度也更快,同时使用了全新的分页技术进行大数据量下用户的分页管理,支持多种数据库。同时用户管理主界面中对于无效的用户进行了灰色展示。
在用户管理主界面,有用户管理相应操作权限的登录用户可以添加、修改、删除(单个或批量删除)、设置密码、查询用户。此模块一般分配给具有系统管理员角色的用户,以防误操作,超级管理员用户不允许被修改与删除。当然,对于框架核心数据删除操作都是逻辑删除而非物理删除。即删除是在相应记录上打上了删除标志。若要恢复误删的数据,可以联系具有操作数据库的用户(如:DBA)进行数据恢复。在此界面上仅实现了用户管理服务接口部分常用功能,其他功能在服务层都已完美实现,用户可做相应的扩展,具体可参考框架的服务接口帮助文件。
9.3.1、用户添加
添加用户界面如下图所示:

9.3.2、用户修改
修改用户如下图所示:

在修改用户界面,操作员可对用户的相应信息进行修改,对登录用户名的修改需要谨慎,以免修改后用户不能正常登录,如果一定要修改登录用户名,则要告诉相应的用户登录用户名已变更。修改用户时不允许重复用户名,若输入了编号,编号不允许重复,系统会自动会检测数据是否已经重复,已被设置为删除标志的用户不再重复验证的范围内,系统中的登录用户名也可以由管理员进行修改。
9.3.3、设置用户密码
设置用户密码如下图所示,根据操作员的选择可以单个或批量设置用户的密码。在添加用户时可以先让用户的密码为空,待所有用户添加完成后再进行批量统一设置密码,这样不仅可以节省操作时间,也可防止出错。在“设置用户密码”界面,操作员可以删除密码、设置默认密码,设置为新的密码。

9.3.4、删除用户
对于离职的用户可以进行删除(在框架中是逻辑删除)。
员工离职时不建议直接删除用户,例如员工离职了,很多系统中的历史真实数据记录不应该被删除,,应该将用户设置为停用状态(取消有效状态),员工离职后,就把用户删除了,可能会引发一些数据关联性、引用上的错误,例如人辞职了,以前的工资数据、工作日志数据、项目数据等等都已是发生过的真实数据,不应该把这个用户给删除了,相关数据都应该作为历史数据保留下来、留下历史痕迹才是正确的做法。按理,一切数据都不应该物理删除,而是进行逻辑删除才对,例如进行了删除操作,只是给数据打上一个删除标志(例如我们框架数据表里的DELETEMARK字段标志设置为1、表示已经被删除了),若真需要删除数据,应该由数据库管理员进行真正的物理删除操作,物理删除一条数据是非常容易,但是由于误删了一条数据,想把这条数据再恢复过来的代价往往是非常昂贵的,切记!
在操作员对选择的用户执行删除操作前,应对其进行询问是否真要进行删除,以防误删,这是必须的,如下图所示。

9.3.5、导出用户数据
在“用户管理”界面,我们可以对用户进行导出操作。
相关文章:
RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录
RDIFramework.NET ━ 9.3 用户管理 ━ Web部分的更多相关文章
- RDIFramework.NET ━ 9.2 员工管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.2 员工管理 -Web部分 员工(职员)管理主要是对集团.企事业内部员工进行管理.在后面的章节可以看到有一个用户管理,这两者 ...
- RDIFramework.NET ━ 9.4 角色管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.4 角色管理 -Web部分 角色管理模块主要为了方便框架权限的分配,提高权限分配的效率,减少重复设置权限的工作量.角色(用户组 ...
- RDIFramework.NET ━ 9.5 组织机构管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.5 组织机构管理 -Web部分 组织机构管理模块提供直观方便的组织机构管理,以树型结构显示单位和部门的机构体系,可根据需要进行 ...
- RDIFramework.NET ━ 9.11 数据字典管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.11 数据字典管理 -Web部分 数据字典模块主要对框架所需数据字典(即选项数据)进行管理,整个数据字典数据为框架所共享, ...
- RDIFramework.NET ━ 9.14 数据库连接管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.14 数据库连接管理 -Web部分 我们经常可以看到很多软件直接把数据库连接字符串放在软件执行目录下的配置文件中,这种直接把 ...
- RDIFramework.NET ━ 9.8 用户权限管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.8 用户权限管理 -Web部分 在实际应用中我们会发现,权限控制会经常变动,如:需要调整角色的分配,需要收回与授予某些角色.用 ...
- RDIFramework.NET ━ 9.6 模块(菜单)管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.6 模块(菜单)管理 -Web部分 模块(菜单)管理是整个框架的核心,主要面向系统管理人员与开发人员,对普通用户建议不要授 ...
- RDIFramework.NET ━ 9.7 操作权限项管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.7 操作权限项管理 -Web部分 随着经济全球化趋势的发展和企业间竞争的加剧,企业对管理要求不断变化.提高,越来越多的信息都表 ...
- RDIFramework.NET ━ 9.9 角色权限管理 ━ Web部分
RDIFramework.NET ━ .NET快速信息化系统开发框架 9.9 角色权限管理 -Web部分 角色权限管理模块主要是对角色的相应权限进行集中设置.在角色权限管理模块中,管理员可以添加或移 ...
随机推荐
- 51Nod 1001 数组中和等于K的数对 Label:Water
给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K的数对.例如K = 8,数组A:{-1,6,5,3,4,2,9,0,8},所有和等于8的数对包括(-1,9),(0 ...
- 洛谷 P2661 信息传递 Label:并查集||强联通分量
题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的生日.之后每一 ...
- 【BZOJ】3239: Discrete Logging
http://www.lydsy.com/JudgeOnline/problem.php?id=3239 题意:原题很清楚了= = #include <bits/stdc++.h> usi ...
- 崩溃恢复(crash recovery)与 AUTORESTART参数
关于这个参数设置的影响,在生产系统中经历过两次: 第一次是有套不太重要的系统安装在虚拟机,这套系统所有应用(DB2 WAS IHS)都配置到/etc/rc.local中,每次启动机器会自 ...
- BZOJ2097[Usaco2010 Dec] 奶牛健美操
我猜我这样继续做水题会狗带 和模拟赛的题很像,贪心搞一下. #include<bits/stdc++.h> using namespace std; int read(){ ,f=;cha ...
- Implement strStr()
Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle ...
- [zt]OJ常见的Judge Status
Queuing : 提交太多了,OJ无法在第一时间给所有提交以评判结果,后面提交的程序将暂时处于排队状态等待OJ的评判.不过这个过程一般不会很长. Compiling : 您提交的代码正在被编译. R ...
- hdu Is It A Tree?
判定给定的边序列是否过程一棵树.我用到的判定方法是:第一步:判定 边数是否等于顶点数-1 第二:判定是否只有一个根节点 .当然还要考虑是否为空树的情况. 但是代码交上去,好几遍都是Runtime ...
- 无法分配超出32(XXX)的MINEXTENTS报错的解决方法
今天在创建新表的时候,遇到该报错:ORA-01659 无法分配超出32(XXX)的MINEXTENTS 解决方法:修改表空间大小. 命令如下: ALTER DATABASE DATAFILE ''D: ...
- js 获取中文的拼音
es6 + 模块化封装 "use strict"; module.exports = { //参数,中文字符串 //返回值:拼音首字母串数组 makePy (str) { if ( ...