频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

28.10.7 系统管理设置

作者: 明日科技编著 出处:人民邮电出版社  2008-05-21 09:17    砖    好    评论   进入论坛
阅读提示:《C#数据库系统开发完全手册》第28章为大家介绍的企业进销存管理系统,本节主要讲述的是系统管理设置。

28.10.7  系统管理设置

一个系统操作员的权限对任何管理软件都是非常重要的,如果每一个操作员都拥有整个管理系统的所有权限,可以对系统重要数据任意查看和修改,将会给企业带来极大的危害。所以本系统设计了系统管理设置功能,针对本系统操作用户不同的身份和职位,设置不同的权限,这样一来达到了重要数据和机密资料非授权不可使用的目的。

1.窗体设计

新建一个Windows窗体,用于添加、修改和删除系统操作员以及权限设置。在窗体上放置ToolStrip、DataGridView控件。并在ToolStrip控件上添加相关控件如图28.18所示。

 

2.代码设计

创建全局BaseInfo类对象和cPopedom类对象,用于调用业务层中功能方法及权限数据结构,因为类BaseInfo和cPopedom存放在BaseClass目录中,所以在创建类对象时先指明目录名称。完整代码如下:

 using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace EMS.SetSystem
{
public partial class frmSetOP : Form
{
BaseClass.BaseInfo baseinfo = new EMS.BaseClass.BaseInfo();
BaseClass.cPopedom popedom = new EMS.BaseClass.cPopedom();
int ID = 0;
public frmSetOP()
{
InitializeComponent();
}
……编写其他方法和事件代码
}
}
自定义方法SetHeadText用来设置DataGridView控件列标题及列宽度。完整代码如下:
public void SetHeadText()
{
dgvSysUserList.Columns[0].HeaderText = "ID";
dgvSysUserList.Columns[0].Width = 40;
dgvSysUserList.Columns[1].HeaderText = "用户名称";
dgvSysUserList.Columns[2].HeaderText = "用户密码";
dgvSysUserList.Columns[3].HeaderText = "进货管理";
dgvSysUserList.Columns[3].Width = 80;
dgvSysUserList.Columns[4].HeaderText = "销售管理";
dgvSysUserList.Columns[4].Width = 80;
dgvSysUserList.Columns[5].HeaderText = "库存管理";
dgvSysUserList.Columns[5].Width = 80;
dgvSysUserList.Columns[6].HeaderText = "系统管理";
dgvSysUserList.Columns[6].Width = 80;
dgvSysUserList.Columns[7].HeaderText = "基础信息管理";
}
单击【退出】按钮,退出当前窗体。代码如下:
private void tlbtnExit_Click(object sender, EventArgs e)
{
this.Close();
}
单击【添加】按钮,添加系统操作员,新添加系统操作员不具备任何权限。完整代码如下:
private void tlbtnAdd_Click(object sender, EventArgs e)
{
if (tltxtUserName.Text = = string.Empty)
{
MessageBox.Show("用户名称不能为空!","错误提示",MessageBoxButtons.
OK,MessageBoxIcon.Error);
return;
}
if(baseinfo.FindUserName(tltxtUserName.Text))
{
MessageBox.Show("用户名称已经存在,不添加重复的用户名!","错误提示",MessageBox-
Buttons.OK,MessageBoxIcon.Error);
return;
}
baseinfo.AddSysUser(tltxtUserName.Text,tltxtPwd.Text);
MessageBox.Show("系统新用户--添加成功!","成功提示",MessageBoxButtons.
OK,MessageBoxIcon.Information);
dgvSysUserList.DataSource = baseinfo.GetAllUser().Tables[0].DefaultView;
this.SetHeadText();
}
单击【删除】按钮,删除在DataGridView控件中选中的数据。完整代码如下:
private void tlbtnDel_Click(object sender, EventArgs e)
{
if (ID = = 0)
{
MessageBox.Show("请选择将要删除的系统用户!", "错误提示",
MessageBoxButtons.OK, Message-
BoxIcon.Error);
return;
}
baseinfo.DeleteSysUser(ID);
MessageBox.Show("系统用户--删除成功!", "成功提示", MessageBoxButtons.OK,
MessageBoxIcon.Information);
dgvSysUserList.DataSource = baseinfo.GetAllUser().Tables[0].DefaultView;
this.SetHeadText();
}
在窗体的Load事件中主要显示系统所有操作员的用户名、密码及所对应的权限。完整代码如下:
private void frmSetOP_Load(object sender, EventArgs e)
{
dgvSysUserList.DataSource = baseinfo.GetAllUser().Tables[0].DefaultView;
this.SetHeadText();
}
单击【修改】按钮,修改DataGridView控件中选中的记录,并通过该功能为操作员设置权限。完整代码如下:
{
if (ID = = 0)
{
MessageBox.Show("请选择将要修改的系统用户!", "错误提示",
MessageBoxButtons.OK, Message-
BoxIcon.Error);
return;
}
popedom.SysUser = tltxtUserName.Text;
popedom.Password = tltxtPwd.Text;
    baseinfo.UpdateSysUser(popedom);
dgvSysUserList.DataSource = baseinfo.GetAllUser().Tables[0].DefaultView;
this.SetHeadText();
}
当DataGridView控件单元格获得焦点时,获得用户操作的权限,为修改操作员权限做准备。完整代码如下:
private void dgvSysUserList_CellEndEdit(object sender, 
DataGridViewCellEventArgs e)
{
try
{
popedom.Stock = Convert.ToBoolean(dgvSysUserList
[3, e.RowIndex].Value.ToString());
popedom.Vendition = Convert.ToBoolean(dgvSysUserList
[4, e.RowIndex].Value.ToString());
popedom.Storage = Convert.ToBoolean(dgvSysUserList
[5, e.RowIndex].Value.ToString());
popedom.SystemSet = Convert.ToBoolean(dgvSysUserList
[6, e.RowIndex].Value.ToString());
popedom.Base_Info = Convert.ToBoolean(dgvSysUserList
[7, e.RowIndex].Value.ToString());
}
catch { }
}
单击DataGridView控件单元行,获得操作员编号,并将用户名称和密码显示在指定的文本框中,以上数据主要为修改操作员信息做准备。完整代码如下:
private void dgvSysUserList_CellClick(object sender, 
DataGridViewCellEventArgs e)
{
try
{
ID = Convert.ToInt16(dgvSysUserList
[0, e.RowIndex].Value.ToString());
tltxtUserName.Text = dgvSysUserList
[1, e.RowIndex].Value.ToString();
tltxtPwd.Text = dgvSysUserList
[2, e.RowIndex].Value.ToString();
popedom.ID = ID;
}
catch { }
}

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
专题
Sun以10亿美元并购开源数据库厂商MySQL
Oracle数据库开发之PL/SQL基础应用
C#实用基础教程
Oracle数据库开发基础教程
2006年数据库频道热点关注
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
2008年上半年全国软考最新试题、答案及点评
2008年上半年全国软考最新试..
勇闯IT培训黑色围城
勇闯IT培训黑色围城
IPv6协议--拓展网络无限空间
IPv6协议--拓展网络无限空间
· IPv6协议--拓展网络无..
· 了解统一威胁管理(UTM)..
· 调查:十大发现 解秘技..
· 技术人求职简历完备手册
· Vista SP1对决XP SP3
· 运营商封堵ADSL共享 中..
· LAMP技术精解
· PHP开发应用手册
· 解析35岁技术人的价值..
· 汶川大地震 IT技术人在..
· SOA 面向服务架构
· 龙芯要做中国的“奔腾”
· 微软出价446亿美元收购..
· 网管员如何踏上高薪之路
· 主流品牌防火墙配置
· 访问控制列表(ACL)介绍
ARP攻击防范与解决方案
ARP攻击防范与解决方案
iSCSI应用与发展
iSCSI应用与发展
SQL Server 2008/2005全解
SQL Server 2008/2005全解
· SQL Server 2008/2005..
· SOA 面向服务架构
· SQL Server 2008/2005..
· iSCSI应用与发展
· RAID——磁盘阵列基础
· Apache技术专题
· 三层交换技术专题
· SQL Server入门到精通
· Apache技术专题
· 国际文档格式标准开战
· 路由器设置与口令恢复
· 打造安全服务器
· PHP开发应用手册
· SOA 面向服务架构
· 企业数据恢复指南
· ADSL应用面面俱到
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
iSCSI应用与发展
iSCSI应用与发展
· iSCSI应用与发展
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· iSCSI应用与发展
· 三层交换技术专题
· Apache技术专题
· RAID——磁盘阵列基础
· 企业数据恢复指南
· 路由器设置与口令恢复
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· ADSL应用面面俱到
· ADSL应用面面俱到
· 反垃圾邮件技术应用