办公自动化管理系统的设计与实现—计算机毕业设计(论文)内容摘要:
DY TEXT 文档注释 CREATEDATE DATETIME 文档创建时间 UPDATEDATE DATETIME 文档修改时间 LASTVIEWDATE DATETIME 最后查看时间 VIEWCOUNT INT 文档查看次数 AUTHOR VARCHAR(200) 文档作者 部门表( Department) 表 4 部门表 短信表 (Message) 表 5 短信表 字段名称 数据类型 字段说明 键引用 备注 DEPARTMENTID INT 部门 ID PK 主键(自动增 1) NAME VARCHAR(200) 部门名称 DESN TEXT 部门描述 PHONE VARCHAR(200) 联系电话 PARENTID INT 上级部门编号 REMARK TEXT 备注 字段名称 数据类型 字段说明 键引用 备注 MESSAGEID INT 短信 ID PK 主键(自动增 1) SENDER VARCHAR(200) 发送者 RECIEVER VARCHAR(200) 接收者 MSGTYPE INT 短信类型 SENDDATE INT 发送日期 员工表( Employ) 表 6 员工表 BODY TEXT 短信的主要内容 ISREAD INT 是否已经读 MOBILE INT 移动电话 字段名称 数据类型 字段说明 键引用 备注 EMPLOYID INT 员工 ID PK 主键(自动增 1) EMPLOYNAME VARCHAR(200) 员工名称 EMPLOYNO VARCHAR(200) 员工编号 SEX INT 性别 NATIONALITY VARCHAR(200) 民族 BIRTHDAY DATETIME 生日 POLITICAL VARCHAR(200) 政治面貌 CULTURE VARCHAR(200) 文化层次 MARITAL INT 婚姻状况 FAMILYPLACE VARCHAR(200) 籍贯 IDCARD VARCHAR(200) 身份证号码 PHONE VARCHAR(200) 办公电话 MOBILE VARCHAR(200) 移动电话 HIREDATE DATETIME 雇用日期 POSITION VARCHAR(200) 职务 STATE INT 员工状态 BANKNAME VARCHAR(200) 工资卡名称 ACCOUNTNO VARCHAR(200) 工资卡帐号 PUBNAME VARCHAR(200) 填表用户 PUBDATE DATETIME 填表日期 DEPARTMENTID NT 部门编号 FK 引用部门表 DEPARTMENTID字段 4 系统功能的设计与实现 整个系统的设计包括了登录界面设计、用户管理模块、部门管理模块、员工管理模块、员工文档管理模块和内部短信管理模块。 每个模块中都有两个或者两个以上的子模块,用于完成其对应的功能。 具体如下: 系统 登录 界面的设计 界面 系统 登录 界面也是本办公自动化管理系统的第一个界面,其界面如下 : 图 3 登录界面 此 界面 是系统管理员进入系统首先需要经过的 界面 ,管理员可以通过这个界面进入主页面与 其它 模块进行接触,对 企业的各个信息进行修改、添加、 删 除操作。 同样,在主页面中,管理员可以修改自己密码,或者添加用户、 删除用户等操作。 为了提高系统的安全性能,防止暴力破解, 本 登录 界面设计验证码。 页面加载 功能是由函数 Page_Load(object sender,EventArgs e)实现。 其中, 验证码 是 由随机数函数 GetRandomint()创建一个 4 位数的整数,并使用 Image 控件显示。 关键代码如下: if (!) { sValidator = GetRandomint()。 //创建随机数 = sValidatorImageUrl + sValidator。 } private String GetRandomint() //创建随机数 函数 { Random random = new Random()。 return ((1000,9999).ToString())。 } 登录 功能的实现 登录 功能由 LoginBtn 按钮控件实现。 它触发 LoginBtn_Click(object sender, EventArgs e ) 事件。 该事件验证用户输入的用户名称、密码和验证码是否正确。 只有当 3个信息全部正确时,用户才能够 登录 到系统中,否则页面将通过 Message 控件显示相关错误信息。 用户登录成功后,系统将跳转到 主页面。 如果验证码输入错误,则重新产生 新的验证码,并输出错误信息。 验证用户名称和密码时, 首先 从数据库中获取 用户 ID 信息, 如果 ID为空,则用户 登录 失败。 如果从数据库中获取的用户信息和输入的相匹配,就可以成功登录了。 用户登录 成功后,使用 Session 变量保存用户的 ID信息。 关键 程序代码如下: 在通过语句 if ( == true)判断页面输入是否合法后,执行下列语句: if ( != sValidator) { = 验证码输入错误,请重新输入验证码。 sValidator = GetRandomint()。 = sValidatorImageUrl + sValidator。 return。 } 再通过定义 类 user,用函数 GetUserLogin() 获取用户的 登录 信息 : user = new ()。 SqlDataReader recu = ((), .(())。 然后执行语句 if (()),如果读到了用户信息,从数据库中获取用户 ID信息。 通过语句 userId = recu[UserID].ToString(),把获取的用户ID信息的数据集转换成字符型后,赋给 userId。 然后执行语句 ()关闭数据库。 最后执行语句 if ((userId != null) amp。 amp。 (userId != )),验证用户合法性。 如果执行成功,执行下列语句: (~/DesktopModules/)。 跳转到登录后的第一个页面。 用户管理模块设计 初始化页面功能实现 添加用户信息页面主要实现对新用户的信息进行添加的功能。 因为本系统涉及到对员工以及部门的信息进行相关的管理,这些信息对于企业来说应该是相当 机密相当重要的。 所以,本系统添加的用户都是能够完成对系统进行管理的管理员用户。 同时,考虑到系统的扩展性,企业在以后运 用中有可能增加一些可以对一般用户开放的模块。 所以,本页面设置了角色的下拉列表,在以后需要的情况下,可以由系统管理员从数据库中添加新的角色。 从下图图 4中,我们可以看到添加用户信息的界面中的各个需要添加的信息项: 图 4 添加用户信息 页面初始化功能主要实现绑定角色下拉列表控件 RoleList 的数据,同时设置添加按钮 AddBtn 的可用性。 该功能由函数 Page_Load(object sender, EventArgs e)实现。 该函数调用函数 BindRoleData() 从数据库的 角色表 Role中获取所有角色信息,并绑定到控件 Text 属性域和 ID 属性域分别为 RoleName 和 RoleID. 在通过 if (!)判断页面是否为第一次打开后,执行函数BindRoleData()。 绑定控件的数据。 再执行语句 = 0 ? true : false。 来 设置按钮的可用性。 具体 绑定控件 数据的代码如下: private void BindRoleData() { //获取数据源 role = new Role()。 SqlDataReader recr = ()。 //设定控件的数据源, Text 域属性、 value 域属性 = recr。 = RoleName。 = RoleID。 //绑定控件的数据 ()。 //关闭数据源和数据库的链接 ()。 } 添加用户功能实现 添加新用户功能由 AddBtn 按钮控件实现,单击 此 按钮,它触发事件AddBtn_Click(object sender, EventArgs e)。 该事件调用函数 AddUser()实现添加新用户的功能,并把用户信息储存到数据库中。 如果操作成功,则显示提示信息;否则弹出失败对话框。 在判断 页面输入内容合法 以后,定义类 User,然后开始添加新用户,添加用户的关键代码如下: try { //添加新用户 ((),(), ()), (),(),(), ())。 //显示操作结果信息 ( )。 } catch (Exception ex) { //显示添加操作中的失败、错误信息 ()。 } 部门管理模块设计 对于部门的管理对于一个企业来说致关重要的。 因为在企业的不断发展过程中,可能会随时调整企业自身的部门设置以及部门的任务,用以满足企业的发展的需要。 考虑到这样的问题,本系统的部门管理模块设计了三个子模块 ,其主要功能是对企业各个部门的信息进行添加、修改、删除操作。 三个子模块之间关系图如下示: 图 5 部门管理模块关系图 添加部门信息 在企业管理的实际工作中,根据实际情况对企业的部门进行增添是企业一件很平常的事情。 同时, 对新增添的部门的信息添加也就显得相当的重要了。 添加部门信息子模块内容包括:部门名称、部门详细描述、部门的联系电话、隶属的上级部门和相关备注这几项。 当管理员按照要求填写了文本框中的内容后,点击添加按钮,即可完成对部门信息的添加。 图 6 添加部门信息 添加部门信息页面调用函数 Page_Load(object sender, e) 进 行 初 始 化 , 该 函 数 调 用 函 数 BindDepartmentData() 绑 定 控 件DepartmentList 的数据 ,即显示所有部门的名称。 函数调用数据访问层的函数从表 Department 获取所有部门的信息,然后使用 DataReader 对象保存从数据库获取的结果,并把该 DataReader 对象设为控件DepartmentList 的数据源。 关键 程序如下: private void BindDepartmentData() { //定义获取数据的类 depart = new 部门管理模块 添 加 部 门 信 息 修 改 部 门 信 息 删 除 部 门 信 息 ()。 SqlDataReader recd = ()。 //设定控件的数据源 = recd。 //设定控件的 Text属性和 Value 属性 = Name。 = DepartmentID。 //绑定控件的数据 ()。 //关闭数据读取器和数据库的连接 ()。 } 添加功能实现:单击页面中的添加按钮,实现部门的添加功能,该按钮触发事件 AddBtn_Click(),事件首先判定用户的输入是否合法,如果输入合法,则调用数据访问层的函数 AddDepartment()实现部门的 添加功能,并显示添加操作结果的信息;如果输入不合法,则中止事件。 首先通过 if ( == true)判断页面输入是否合法以后, 定义类Department。 然后开始添加新的部门信息。 添加部门信息的关键代码: ((), , (), 1 ?。办公自动化管理系统的设计与实现—计算机毕业设计(论文)
相关推荐
握一节课的重点难点了。 听了这些话我明白自己有进步了一点。 三、板书不发愁 上课的过程中板 书是不可或缺的,由于在实习之前我没有很好的练板书以至于刚开始时都搞不清楚 ...... 本文来自公务员之家,查看正文请使用公务员之家站内搜索查看正文。 第 17 页 第六篇 :大学生顶岗实习总结 一、实习目的 顶岗实习是我们大学期间的最重要的一门课程,不知不觉我们已经走过大半大学时光,在这个时候
2020 年常州市中考满分作文 “ 你在我心里 ”命题作文 你在我心里 红了希望,绿了梦想,只因你在我心里 —— 我的语文。 那是你吗。 语文。 美丽、华贵、优柔„„我无法用任何词藻来修饰你。 李白的云帆点缀了沧海,辛弃疾的双眼迷离了剑光,文天祥的激情回荡了整个零丁„„因为你在我心里,语文,我读懂了抱负、执著、爱国。 邀明月之满怀,举酒觥之高远,我徜徉在你的诗词之中,看落红化 为春泥,叹国破山河
后期售后服务配件价格: 名称 单价(给客户价格*) 面板型号 面板价格(给客户价格*) 15 33MN1 面板 40 33HA1 面板 35 33MNH1 面板 45 33HA2 面板 35 36MN1 面板 80 33HA3 面板 40 36MNH1 面板 90 33MA1 面板 35 33MA2 面板 45 36DN1 面板 58 33MB2 面板 45 36DHN1 面板 58
的单词与词组总结 2020年 Text 1 键榆臆 兄企氨雁地痊悦骑来贞纤捕叶庇俏松载神阑忌甲矣噎吏障七栓衙目彪到催员方外垃孕么怯句携签寓宛凸京貉箕鲁柔摘陡彩尾禽吸纸铸蹋王亮 factor 心理因素 Br jvsia考研英语真题历年真题中出现的单词与词组总结 (吐血推荐 ) Time wil pier ce the surface or youth, wi l be on the beauty
........................................................................................ 161 84.溴甲烷 ...................................................................................................