教室管理系统设计说明书.doc_第1页
教室管理系统设计说明书.doc_第2页
教室管理系统设计说明书.doc_第3页
教室管理系统设计说明书.doc_第4页
教室管理系统设计说明书.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘摘 要要 本系统是基于 winform 项目开发的一个应用程序,使用 SQL Server 2005 做为 后台数据库,C#语言做为开发语言,包括了教师和学生注册,教师信息管理,课程 信息管理,学校教室资源管理,教师查询和教室查询等主要功能模块,其主要任务 是实现对学校各院系教师和教学资源的系统管理。 【关键词】系统,数据库 Abstract This system is based on a Winfrom project development application, use SQL Server 2005 as a backend database, c # language as a development language. Including teachers and students for registration, teachers information management, curriculum information management, school classroom resource management, the teacher inquires the and classroom inquiry on main functional modules. Its main task is to realize the teacher and the departments of school management system of teaching resources. 【Key【Key words】words】System,Database 目目 录录 前前 言言.1 1 1 需求分析需求分析2 1.1 调查用户需求.2 1.2 系统功能的设计和划分.4 1.3 可行性分析.5 2 2 系统设计系统设计6 2.1 系统开发准备.6 2.2 系统总体设计.8 2.3 数据库设计.11 3 3 系统的详细设计系统的详细设计16 3.1 设计工程框架.16 3.2 登录模块设计.18 3.3 学生注册界面 .20 3.4 教师注册模块设计 .22 3.5 学生登录成功后主界面模块设计 .23 3.6 教师登入模块设计 .30 3.7 管理员登录主模块。 .30 4 4 系统的测试及运行结果系统的测试及运行结果36 4.1 系统的测试.36 4.2 系统的运行结果.37 5 5 结结 论论.39 总结与体会总结与体会.40 致致 谢谢.41 参考文献参考文献.42 前前 言言 知识经济时代,高效率的管理不仅在企业管理活动中的地位越来越重要,也 在各行各业中广泛的应用。最有效管理方法就是使用管理软件, 这就必须更新观 念, 实现由人力管理到计算机智能管理的转变,在学校里,学校的教室仍然是学 生学习和老师教学的主要场所,教室设备资源的使用情况就直接影响到学生的学 习和教学活动的开展。 保证教室资源的良好使用用率,在学校的管理工作中也就显得十分的必要和 重要。但学校教室的管理也并不是一件很容易的事情,教室设备的使用要结合教 师的课程和学生的选课情况来定,如遇到教室设备有所损坏,则还要及时登记, 修复,否则很可能影响以后教学,造成教学事故。 教室的使用先要经过教务处的课程安排而具有了一定的计划性,如果出现教 室维护等这让教室的使用有了流动性,一个教学班在相应的时间里,所上的课程 和使用的教室是固定的,但是不同的课程在不同的时间里会使用不同的教室,这 与教务处的课程安排是密切相关的。尤其是使用多媒体教室的时候,这就显得比 较麻烦。 为了能够更系统的,更有序的,更合理的,更有效的进行教室管理,有必要 利用计算机来处理各种信息,这也就需要一个更有效的教室管理系统。 为此,经过较详细的调查和慎重的思考,我决定做一个教室管理系统,来解 决这些问题,使管理简化,方便而且更有效。 本系统就是使用 Visual Studio 2008 和 SQL Server 2005 数据库应用系统 开发的一个教室管理系统,避免了许多传统人工的管理方式存在的缺点,解决了 人力管理的实际问题,有效提高教室资源管理工作效率,保障信息提供的时效性 和准确性。 1 1 需求分析需求分析 1.11.1 调查用户需求 .1 学校的组织机构情况学校的组织机构情况 教室管理相关的学校的组织机构有:学生、教师和教室。学校的所有日常工 作都是围绕着这三大部分进行的。 一个学校下设若干学院,如数计学院、电汽学院、人文学院、外语学院等; 一个学院下设若干专业,如外语学院下设多个专业:日语、英语、等;一个专业 有若干班级;一个班级有若干同学。一个专业有若干教师。一个专业开设有若干 课程。 一个学校有若干教学楼,如计算机大楼、一号楼、二号楼等;一个教学楼有 若干楼层,如一号楼有一层十二层;一个楼层有若干教室,如一层有 1101,1102,1103,1104 等教室。 一个教师可以开设若干门课程,一门课程可以由多个老师来教授。一个教室 在不同的时段可以上不同的课程。 .2 调查相关部门的业务活动情况调查相关部门的业务活动情况 教务处需要处理借教室申请信息,使用的数据是纸质版的教室、教师和学生 信息,对提出的借用教室申请采用手动的加工和处理,最后给借教室的人输出的 是批准或拒绝借用教室的信息,即一个纸质的教室使用条。 .3 用户对系统的要求用户对系统的要求 信息要求:由于系统的使用主体是教师和学生,因此对系统的信息要求可分为 以下几个方面: 教师的基本信息,主要包括教师的教师编号,教师姓名,性别,所属院系, 职称,身份证号等;学生的基本信息,主要包括学生的学号,姓名,院系号,身份 证号等;教室的基本信息,主要包括教室的教室编号,教学楼号,楼层号等;教 学楼的基本信息,主要包括教学楼名称,教学楼编号等; 处理要求:教师查询;学生通过这个功能,可以查询相关院系相关教师的个 人信息以及开课信息,以便能更好地了解教师及其开课情况。教室查询;学生通 过这个功能,可以查询相关教学楼相关教室的信息以及该教室在每天任一时段的 使用情况,或者有课,或者有讲座、或者有活动等等。这个功能以便使同学能更 好地了解教室及其使用情况。课程查询;学生通过这个功能,可以查询某一课程 的详细信息,如同一课程可以有多个教师开课,以便更好地了解任一课程的详细 信息。教室借用;学生通过这个功能,可以借教室,即获得教室在某段时间的使 用权,办讲座,开展社团活动等等。我要自习;学生通过这个功能,可以查询当 天某一时段或多个时段的空闲教室,去上自习。 安全性要求:系统应设置访问用户的标识以鉴别是否是合法用户,并要求合 法用户设置其密码,保证用户身份不被盗用;系统应对不同的数据设置不同的访 问级别,限制访问用户可查询和处理数据的类别和内容;系统应对不同用户设置 不同的权限,区分不同的用户,如学生、教师和教务处管理人员。学生(只能查 询教室、教师和课程信息以及提出借用教室申请) ,教师(只能查询教室、教师 和课程信息,以及提出借用教室申请) ,教务处管理人员(可进行日常事务的处 理,如增加、删除、更新课程、教室、教师信息,并批准或拒绝借用教室的申请) 。 完整性要求:首先各种信息记录的完整性,信息记录内容不能为空;其次各 种数据间相互的联系的正确性;在就是相同的数据在不同记录中的一致性。 .4 确定系统的边界确定系统的边界 经对前面的需求调查和初步的分析,确定由计算机完成的工作时对数据进行 各种管理和处理,具体的工作内容见第二部分, 由手工完成的工作主要有对原 始数据的录入;不能由计算机生成的,各种数据的更新,包括数据变化后的修改, 数据的增加,失效数据或无用数据的删除等;以及系统的日常维护。 1.21.2 系统功能的设计和划分 根据用户需求,我们将本系统按照所完成的功能分成以下几个子系统: 教室查询子系统教室查询子系统 教师查询子系统教师查询子系统 课程查询子系统课程查询子系统 教室借用子系统教室借用子系统 我要自习子系统我要自习子系统 各子系统完成的功能如下: .1 教室查询子系统教室查询子系统 关键词搜索:在输入框中直接输入想要查询的教室的编号,即可得到教室在任 一时段的使用信息。目录搜索:根据教学楼教室,帮助同学寻找想要搜索的教 室。进入教室页面后,即可得所查教室在任一时段的使用信息。 .2 教师查询子系统教师查询子系统 关键词搜索在输入框中直接输入想要查询的老师的名字,即可得到教师的个 人信息及开课信息。目录搜索:根据院系教师,帮助同学寻找想要搜索的老师。 进入教师页面后,即可得教师的个人信息及开课信息。 .3 课程查询子系统课程查询子系统 关键词搜索在输入框中直接输入想要查询的课程的名字,即可得到课程的详 细信息。目录搜索根据院系课程,帮助同学寻找想要搜索的课程。进入课程页 面后,即可得课程的详细信息。 .2.4.教室借用子系统教室借用子系统 点击教室借用后,进入一个用户登录界面,学生或者教师需要登录,才能给 予空闲教室,发出借用教室的申请,等待管理员批准。 .2.5.我要自习子系统我要自习子系统 根据教学楼楼层,输入时段,寻找此时的空闲的教室,帮助同学寻找上自习 的教室。进入教室页面后,即可得该教学楼某一时段在任意时段的空闲信息。 1.31.3 可行性分析可行性分析 可行性研究的目的是使用最小的代价在尽可能短的时间里确定问题是否能解 决,通过复杂系统的规模与目标,研究与此类似的系统后,我们具体从下面几个 方面考虑: (1) 技术上的可行性 技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件 配置能否满足开发者需要等,这一特点发挥计算机的数据处理速度快,准确率高 的优势,现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。 系统目前使用 SQL Server 2005 作为数据,这是一个支持多个用户的数据库,适 用于企业的数据量的需求。企业网的建立也为系统服务器/客户端的结构提供了 结构上的支持。 (2) 管理上的可行性 主要是管理人员对开发信息系统是否支持现有管理制度和方法是否科学,规 章制度是否齐全,原始数据是否正确等。企业人力资源管理系统比较完善的规章 制度和管理方法为系统的建设提供了保障。 (3) 社会可行性 社会可行性研究是对系统投入使用后对社会可能带来的影响进行分析,比如 是否为人们所接受,是否为社会带来利益。本系统只是设计为学校的教师资源管 理系统,其成品能够实现对教室的统一,有序的管理,因此在为社会带来利益这 方面是肯定有的。其投入少,特别适合学校。 (4) 经济上的可行性 主要是对项目的经济效益进行评价,一方面是支出的费用,其中包括设备购 置费,软件开发费,管理和维护费,人员工资和培训费等;另一方面是取得的收 益中可以用钱来衡量的那部分。基于学校的现有计算机及配套设备,建设教室管 理系统。不但能大大减少重复性的书面报告,降低办公费用,提高办公室效率, 而且能提高检测数据效用,为学校管理提供方便,节省了金钱和人力。 综上所述,从技术,管理,社会,经济等方面确定了本设计方案的可行性。 2 2 系统设计系统设计 2.12.1 系统开发准备系统开发准备 在系统开发之前,先需要解决系统开发所需的软、硬件环境及系统开发所需 技术条件。 .1 系统开发的软、硬件环境系统开发的软、硬件环境 软件环境:Windows2000/XP 操作系统,SQL Server 2005 数据库,Visual studio 2008 系统开发软件等。 因为本系统是在基于 SQL Server 2005 服务器而开发的,所以在系统设计之 前首先是对 SQL Server 2005 的安装,安装过程中的身份验证模式窗口中,应选 择混合模式(Windows 身份验证和 SQL Server 身份验证)(M)模式,并将密码设为 sa。如果选择“Windows 身份验证模式” ,则表示用户通过 Windows 用户帐户连 接时,SQL Server 使用 Windows 操作系统中的信息验证帐户和密码;而“混合模 式”允许用户使用 Windows 身份验证或 SQL Server 身份验证进行连接。提供 SQL Server 身份验证是为了向后兼容。否则,在数据库连接时,会出现不信任用 户连接或用户登录失败等错误。 .2 配置服务器配置服务器 SQL Server 2005 具有良好的性能、稳定性、便于管理、易于开发等特点, 它继承了数据库软件设计和引擎方面的优势,已经成为新一代网络应用程序的最 佳数据库和分析解决方案之一。 打开 SQL Server2005 服务管理器,然后将其对应的服务启动 如图 2.2 所示。 图 2-1 SQL Server 2005 服务管理器 然后用“企业管理器”登录,身份验证就用 windows 身份验证如图 2.3 所示。 图 2-2 SQL Server 2005 企业管理器 启用 sa 帐号,修改密码为 123456 先用windows 身份登录后,右键点击服务器选 择属性,然后在安全性里选择,SQL 和 windows 身份验证模式这里可以修改 sa 帐号和密码。密码设置为 123456 图 2-3 修改 sa 帐号密码 企业管理器采用 Microsoft 管理控制台(MMC)工具。MMC 提供一个公共的界 面,用来管理 Windows 网络中的不同服务器应用程序。SQL Server 企业管理器是 SQL Server 的主要管理工具。 2.22.2 系统总体设计系统总体设计 .1 教师查询子系统教师查询子系统 这个模块的功能是学生可以通过输入院系和教师姓名,通过这 2 个数据来查 询改院系这个老师的基本信息和该教师开课的信息,还可以通过课程号查询到这 们课程的时间,地点和授课老师。 具体流程图如下: 图 2-4 教师查询子系统流程图 .2 教室查询子系统教室查询子系统 该模块作用是学生先通过教学的选择看到该教学楼的所有教室信息,在通过 教室号的查询,查询到当前教室的使用情况,可查询教师使用情况和学生的使用 情况。 具体流程图如下: 图 2-5 教室查询子系统 .3 课程查询子系统课程查询子系统 课程查询这个模块的功能是学生通过课程名字,查询到该课程的授课老师和 授课的时间,地点等基本属性 具体流程图如下: 图 2-6 课程查询子系统 .4 教室借用子系统教室借用子系统 本模块要完成的功能是学生和老师可以同先输入教学楼号,在选择这个教学 楼里现有的教室,然后输入一个借用时间段,如在个时间段里,没有被借用,则 可以借用成功,如果失败则提示。 具体流程图如下: 图 2-7 教室使用子系统 .5 后台管理子系统后台管理子系统 这个模块要实现的功能是管理员登录,判断登录成功后进入管理员页面。 具体流程图如下: 图 2-8 后台管理子系统 .6 我要自习子系统我要自习子系统 这个模块要完成的功能是学生如果要自习,需要查看空闲状态的教室。只需 要学生输入一个时间段,然后点击查询即可。 具体流程图如下: 图 2.9 我要自习子系统 2.32.3 数据库设计数据库设计 在前面已经比较完整地介绍了学校教室管理系统的功能、模块划分和系统流 程,对系统的整体结构有了全面地认识。 .1 创建数据库创建数据库 在设计数据库表结构之前,首先要创建一个数据库。本系统使用的数据库为: 教学楼管理。 我们可以在企业管理器中创建数据库,也可以在查询分析器中执行 Transact-SQL 语句,就可以在数据库列表中创建教学楼管理这个数据库。 .2 数据库概念结构设计数据库概念结构设计 以下是学生管理信息系统分 E-R 图 图 2-10 学生管理系统 E-R 图 图 2-11 学生管理系统 E-R 图 图 2-12 教室管理系统总 E-R 图 .3 数据表数据表 数据库为 ClassroomManageSystem 包含以下 9 个表:教学楼表 Building、教 室表 Classroom、借用权限表 Bytype、院系表 Departments、.课程表 schedule、 用户数据表 Users,用户性别表 userset,用户权限表 usertype,教室借用表 ByClassroom。 下面分别是这些表的结构: 表 2-1 教学楼表(Building): 属性名存储代码类型长度备注 教学楼 IDIdInt4教学楼号 教学楼名称BuildingnameVarchar50学校教学楼名称 表 2-2 教室表(Classroom): 属性名存储代码类型长度备注 教学楼 IDIdInt4教学楼号 教学楼名称BuildingnIdVarchar50学校教学楼名称 教室楼层ClassroomFloorInt4教室所在楼层 教室号ClassroomNumberVarchar50教室号 表 2-3 借用权限表(Bytype): 属性名存储代码类型长度备注 借用 IDIdInt 4教学楼中教室号 借用人身份BytypenameVarchar50教室所在教学楼号 表 2-4 院系表(Departments) 属性名存储代码类型长度备注 院系 IDIdInt4学校中院系的编号 院系名称DepartmentNameVarchar50学校中院系名称 表 2-5 课程表(schedule) 属性名存储代码类型长度备注 课程 IDIdInt4课程编号 课程名称SchedulenameVarchar50课程名称 教室 IDCclassroomidInt4课程上课的地点 教师 IDTeacherIDInt4该课程的授课教师 课程时间Scheduledatetim e Datetime课程上课的时间 表 2-6 用户数据表(user) 属性名存储代码类型长度备注 用户 IDIdInt4用户编号 用户名UsernameVarchar50用户帐号 用户密码UserpasswrodVarchar50用户密码 用户权限deptIdInt4用户的注册权限 用户姓名UserrealnameVarchar50用户的姓名 用户证号UserNumVarchar50用户的证件号码 用户性别UsersexInt4用户性别男为 1 女为 2 用户类型UsertypeInt41,2,3 分别代表管理员, 教师和学生。 表 2-7 用户性别表(usersex) 属性名存储代码类型长度备注 性别 IDIdInt4用户性别 1 为男,2 为女 性别名称SexnameVarchar50性别 表 2-8 用户权限表(usertype) 属性名存储代码类型长度备注 权限 IDIDInt4用户权限 1 为 admin,2 为教师,3 为学生。 名称TypenameVarchar50管理员,教师,学生 表 2-9 教室借用表(ByClassroom) 属性名存储代码类型长度备注 教室借用 IDIdInt4教室借用的 ID 教室 IDClassroomIdInt4教室表的 ID 使用开始时间Userbegindatetime 使用教室的开始时间 使用结束时间UserEnddatetime使用教室的结束时间 借用用途UseDescriptvcarchar 8000使用教室的用途 借用者权限StatusInt41 代表教师 2 代表学生 .4 逻辑设计逻辑设计 教室管理信息系统的关系模型:教室管理信息系统的关系模型: 1 教学楼(教学楼 ID, 教学楼名称) 2 教室(教学楼 ID,教学楼名称,教学楼层,教室号) 3 借用权限(借用 ID,借用人身份) 4 院系(院系 ID,院系名称) 5 课程(课程 ID,课程名称,教室 ID,课程时间) 6 用户(用户 ID,用户名,用户密码,用户权限,用户姓名,用户证号,用户 性别,用户类型) 7 用户性别(性别 ID,性别名称) 8 用户权限(权限 ID,权限名称) 9 教室借用(教室借用 ID,教室 id,使用开始时间,教室结束时间,借用用途, 借用者权限) 3 3 系统的详细设计系统的详细设计 3.13.1 设计工程框架设计工程框架 系统的设计和准备工作已经非常充分了,系统所需数据库也已建好,这一节将创 建工程并设计工程的框架。 .1 创建工程创建工程 我们首先需要创建工程存储的目录。运行 Visual Stdio 2008 主程序,并选 择新建“Windows 窗体项目”工程,命名为 Classroom.Winform。解决方案名 ClassroomManagerSystem .2 添加添加新的项目新的项目 根据本系统的功能模块的划分原则,本系统将需要创建以下几个新的项目: 1. Cmon 项目,用来管理工程中的各种各样的工具,就是一个 工具类,里面 DbHelper 配置了数据库的连接。 2. ClassRoom.DAL 项目,因为数据库操作是经常要进行的,所以一般习惯将 对数据库的连接和操作单独作一个项目用来读取和修改数据。 3. ClassRoom.Model 项目,用来保存和传递从数据库得到的数据 。 .3 添加新的窗体模块添加新的窗体模块 根据本系统功能的设计原则,我们创建,教室查询,教师查询,课程查询等 模块。 (1) Adminform 窗体,是管理员用来管理的主界面的操作,它包含有:教师信息 管理,教室信息管理管理,退出等 9 大按钮。 (2) budingfrom 窗体,教学楼管理,可以实现教学楼的添加,修改和删除 (3) ByClassroom 窗体,管理员管理教室借用界面,可以查看当前的教室借用信 息和修改当前的教室借用状态; (4) ClassRoom 窗体,教室管理界面,可以完成添加,删除,修改,保存等功能; (5) CourseForm 窗体,课程管理界面,可以完成课程的添加,删除,修改保 存等功能; (6) CourseInfoForm 窗体,课程信息界面,能够查看上课时间,地点,任课 老师等功能; (7) DepartmentForm 窗体,院系管理界面,可以实现添加,修改和删除功能; (8) LoginForm 窗体,登录主界面有学生和教室的注册连接; (9) StudentForm 窗体,学生登录管理界面,可完成教室查询,教师查询, 教室借用等功能; (10) TeacherForm 窗体,教室登录管理界面,可完成教师个人资料修改,教 室借用等功能; (11) TeacherInfoForm 窗体,用来修改,删除,保存教师信息。 完成上面步骤后将出现下图所示效果: 图 3-1 系统工程图 数据关系图: 图 3-2 数据库关系图 3.23.2 登录模块设计登录模块设计 用户要使用本系统,首先必须通过系统的身份认证,这个过程叫做登录。 登录过程需要完成以下任务: 输入帐号; 输入密码。 本系统有个 3 种权限登录管理员帐号为分别是管理帐号 admin,密码 admin,教 室帐号 teacher 密码 123456,学生帐号 test1,密码 123456. 也可以通过自己注册来获得用户名和密码,注册的时候可以选择成学生用 户或教室用户注册。 具体界面如下图所示: 图 3-3 登录界面 这个模块我用到了一个picturebox这个控件,在image属性中导入了西华大学的logo,在用 了2个Linklabel来分别连接学生注册和教师注册。在登录的时候先会自动判断用户的登录权 限,如果权限为1,就登入管理员界面。如果为2,就登入教师登录界面。为3则登入,学生 界面。 主要代码 private void btn_Login_Click(object sender, EventArgs e) string strName = textBox1.Text; string strPwd = textBox2.Text; Model.Users model = new DAL.Users().GetSqlModel(strName, strPwd); if (model != null) Program.UserName = model.UserName; Program.UserType = model.UserType; Program.UserId = model.Id; if (model.UserType = 1)/管理员 AdminForm adminform = new AdminForm(); this.Visible = false; adminform.ShowDialog(); this.Dispose(); if (model.UserType = 2)/教师 TeacherForm teacherForm = new TeacherForm(); this.Visible = false; teacherForm.ShowDialog(); this.Dispose(); if (model.UserType = 3)/学生 StudentForm studentForm = new StudentForm(); this.Visible = false; studentForm.ShowDialog(); this.Dispose(); else MessageBox.Show(“用户名或密码错误!“); / 退出 private void btn_Exit_Click(object sender, EventArgs e) this.Close(); /学生注册 private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) StudentReg studentReg = new StudentReg(); studentReg.ShowDialog(); /教师注册 private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) TeacherReg teacher = new TeacherReg(); teacher.ShowDialog(); 3.33.3 学生注册界面学生注册界面 点击登录界面上的学生注册功能。进入注册界面,需依次填入登录名,性别, 密码,姓名,所属院系和学生编号完成注册功能,2 次密码输入必修一至。登录 名,性别,密码,院系为必填。姓名和编号可以缺省。 图 3-4 学生注册功能界面 这个模块中我密码部分我用了if (!textBox2.Text.Trim(). Equals (text Box6.Text.Trim()来判断匹配2次密码是否相同。相同才能完成注册,不同就 提示输出。用户combox控件绑定了性别和院系,让其成为下拉选项,在进入此页 面的时候就定向给予了3的权限,也就是学生权限(model.UserType = 3)。学 生注册核心代码如下 if (!string.IsNullOrEmpty(textBox2.Text.Trim() if (!textBox2.Text.Trim().Equals(textBox6.Text.Trim() textBox2.Text = “; textBox6.Text = “; MessageBox.Show(“两次密码输入不一样。“, “错误:“, MessageBoxButtons.OK, MessageBoxIcon.Error); return; else model.UserPassword = textBox2.Text.Trim(); else textBox2.Focus(); return; try new DAL.Users().Add(model); MessageBox.Show(“注册成功!“, “提示:“, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); this.Dispose(); catch (Exception ex) MessageBox.Show(ex.Message, “错误:“, MessageBoxButtons.OK, MessageBoxIcon.Error); private void StudentReg_Load(object sender, EventArgs e) /绑定院系 comboBox1.DataSource = new DAL.Departments().GetList(“).Tables0; comboBox1.DisplayMember = “DepartmentName“; comboBox1.ValueMember = “Id“; /绑定性别 comboBox2.DataSource = new DAL.UserSex().GetList(“).Tables0; comboBox2.DisplayMember = “SexName“; comboBox2.ValueMember = “Id“; 3.43.4 教师注册模块设计教师注册模块设计 点击登录界面右下角的教师注册功能。进入注册界面,需依次填入登录名, 性别,密码,姓名,所属院系和教师编号,和所教科目完成注册功能,2 次密码 输入必修一至。登录名,性别,密码,院系为必填。姓名,编号和科目可以缺省。 图 3-5 教师注册界面 这个模块基本技术和上一个学生注册模块中的技术一样,只是在给予权限时权限 为 2(model.UserType = 2;) 。 代码基本和学生注册模块相同。 3.53.5 学生登录成功后主界面模块设计学生登录成功后主界面模块设计 学生登录成功可以进行以下操作:教师查询:教师查询又可以查询教师信息和 该教师的课程表。教室查询,查询教室老师和学生的使用状况,课程查询根据课 程名,查询出上课时间,地点和授课教师。教室借用的主要功能是可以在不同时 间段里借用同一个教室,需要填入教室号和时间。我要自习的功能是输入时间段 后收缩到在这个时间段里的空闲教室。 图 3-6 学生管理模块主界面 本模块中我用到 teb 标签技术,用了 5 个标签来分别代表教师查询,教室查 询,课程查询,课程借用和我要自习。并对前面 4 个进行了数据绑定。 .1 学生管理学生管理- -教师查询子模块教师查询子模块 界面如下图 图 3-7 教师查询模块 该模块有以下功能,在院系下拉栏里选择,所在院系。在教师姓名栏里 选择教师姓名。这里因为我进行了数据绑定,则只能选择,现有的院系和以注册 的老师信息。可查询当前教师的基本信息和该教师的课程安排情况。 核心代码如下: private void tab1_btn_Schedule_Click(object sender, EventArgs e) try if (this.tab1_comBox_Depart.Text.Trim() = “) this.tab1_comBox_Depart.Focus(); else if (this.tab1_comBox_Teacher.Text.Trim() = “) this.tab1_comBox_Teacher.Focus(); else Column11.HeaderText = “课程名称“; Column11.ReadOnly = true; Column12.HeaderText = “教室“; Column12.ReadOnly = true; Column15.HeaderText = “任课老师“; Column16.HeaderText = “上课时间“; ClearDataView(); tab1_dataGridView1.Columns.AddRange(new DataGridViewColumn Column11, Column12, Column15, Column16 ); tab1_dataGridView1.AutoGenerateColumns = false; /绑定数据源 DataTable dt = sql.Select(“SELECT s.ScheduleName, u.UserRealName, b.BuildingName+ +CAST(c.ClassroomFloor AS VARCHAR)+-+CAST(c.ClassroomNumber AS VARCHAR) AS ClassRoomName,s.ScheduleDatetime FROMdbo.Schedule AS s INNER JOINdbo.Classroom AS c ON c.Id = s.ClassroomId INNER JOINdbo.Building AS b ON b.Id = c.BuildingId INNER JOINdbo.Users u ON u.Id = s.TeacherId WHERE s.TeacherId = “ + tab1_comBox_Teacher.SelectedValue).Tables0; tab1_dataGridView1.DataSource = dt; Column11.DataPropertyName = dt.Columns0.ColumnName; Column12.DataPropertyName = dt.Columns2.ColumnName; Column15.DataPropertyName = dt.Columns1.ColumnName; Column16.DataPropertyName = dt.Columns3.ColumnName; catch (SqlException ex) MessageBox.Show(ex.Message, “提示信息!“, MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); /院系选项值改变 private void tab1_comBox_Depart_SelectedValueChanged(object sender, EventArgs e) BindTab1_comBox_Teacher(); private void BindTab1_comBox_Teacher() tab1_comBox_Teacher.DataSource = null; tab1_comBox_Teacher.DataSource = new DAL.Users().GetList(“UserType = 2 and DeptId = “ + tab1_comBox_Depart.SelectedValue).Tables0; tab1_comBox_Teacher.DisplayMember = “UserRealName“; tab1_comBox_Teacher.ValueMember = “Id“; #endregion .2 学生管理学生管理- -教室查询子模块教室查询子模块 模块界面如下图所示 图 3-8 教室查询模块 这个模块功能和教师查询类似:先通过下拉列选择已有的教室楼和教师号, 可查询到这个教室的使用情况,分为教师使用情况和学生使用情况。基本代码和 教师查询模块代码相同,不同的在于数据绑定部分。 #region Tab2 绑定数据 comboBox3.DataSource = new DAL.Building().GetList(“).Tables0; comboBox3.DisplayMember = “BuildingName“; comboBox3.ValueMember = “Id“; boBox3.SelectedValueChanged += new System.EventHandler(this.tab2_comBox_Building_SelectedValueChanged); BindTab2_comBox_ClassRoom(); #endregion 在显示栏的数据绑定如下: /绑定数据源 DataTable dt = sql.Select(“SELECT bc.ClassroomId,bc.UserId, bc.UserBegin, bc.UserEnd, bc.UseDescript, bc.Status FROM dbo.ByClassroom AS bc INNER JOIN dbo.ByType AS bt ON bt.Id = bc.Status INNER JOIN dbo.Classroom AS c ON c.Id = bc.ClassroomId INNER JOIN dbo.Building AS b ON b.Id = c.BuildingId WHERE bc.Status = 1 AND bc.ClassroomId = “ + comboBox4.SelectedValue).Tables0; dataGridView3.DataSource = dt; Column13.DataPropertyName = dt.Columns0.ColumnName; Column12.DataPropertyName = dt.Columns1.ColumnName; Column15.DataPropertyName = dt.Columns2.ColumnName; Column16.DataPropertyName = dt.Columns3.ColumnName; Column17.DataPropertyName = dt.Columns4.ColumnName; Column14.DataPropertyName = dt.Columns5.ColumnName; .3 学生管理学生管理- -课程查询子模块课程查询子模块 模块界面如下图所示 图 3-9 课程查询模块 这个模块的功能是根据课程名查询出这们课程的上课地点,任课老师和上课 时间。用到的技术和教师查询模块基本类似。数据绑定部分代码如下 #region Tab3 绑定数据 comboBox5.DataSource = new DAL.Schedule().GetList(“).Tables0; comboBox5.DisplayMember = “ScheduleName“; comboBox5.ValueMember = “Id“; #endregion 在显示栏的数据绑定如下: DataTable dt = sql.Select(“SELECT s.ScheduleName, u.UserRealName, b.BuildingName+ +CAST(c.ClassroomFloor AS VARCHAR)+-+CAST(c.ClassroomNumber AS VARCHAR) AS ClassRoomName,s.ScheduleDatetime FROMdbo.Schedule AS s INNER JOINdbo.Classroom AS c ON c.Id = s.ClassroomId INNER JOINdbo.Building AS b ON b.Id = c.BuildingId INNER JOINdbo.Users u ON u.Id = s.TeacherId WHERE s.Id = “ + comboBox5.SelectedValue).Tables0; dataGridView4.DataSource = dt; Column11.DataPropertyName = dt.Columns0.ColumnName; Column12.DataPropertyName = dt.Columns2.ColumnName; Column15.DataPropertyName = dt.Columns1.ColumnName; Column16.DataPropertyName = dt.Columns3.ColumnName; .4 学生管理学生管理- -教室借用子模块教室借用子模块 模块界面如下图所示 图 3-10 教室借用界面 该模块有下列功能选定教学楼号和你要借用的教室号,选定你要借用的开始 时间和结束时间。输入描述。比如开会什么的。如果这个教室在这个时间段里为 被借用,则可以借用成功,否则提示输出,此教师此时间段以借用。 用的主要技术大体和前面几个模块的差不多,这里多了个关于时间的控件 datetimepicker,用来手动选择时间。 核心代码如下: #region Tab4 /第四个选项卡,教室借用 private void button6_Click(object sender, EventArgs e) try if (boBox6.Text.Trim() = “)/判断是否填写开始时间 boBox6.Focus(); else if (comboBox7.Text.Trim() = “)/判断是否填写结束时间 comboBox7.Focus(); else Model.ByClassroom model = new Model.ByClassroom(); model.ClassroomId = Convert.ToInt32(comboBox7.SelectedValue); model.UseDescript = textBox2.Text; model.UserBegin = Convert.ToDateTime(dateTimePicker1.Value.ToString(“yyyy- MM-dd “) + dateTimePicker3.Value.ToString(“HH:mm:ss“); model.UserEnd = Convert.ToDateTime(dateTimePicker2.Value.ToString(“yyyy- MM-dd “) + dateTimePicker4.Value.ToString(“HH:mm:ss“); model.UserId = ne

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论