实验室预约系统设计与实现

实验室预约系统的设计

摘  要

目前各大学的实验项目日益繁多,如何合理预约实验室,已经成为当今各个大学实验室课程预约的难题。因此,这个实验室预约系统就是研究实验室预约的相关问题。实验室预约系统的设计主要是基于B/S模型,在Windows系统下,运用ASP.NET平台和SQLServer2000数据库实现实验室预约功能。该设计主要实现了实验室的预约和管理功能。预约功能包括老师对实验室信息、实验项目和实验预约情况的查询以及对实验室的预约;学生对老师预约情况和实验项目预约情况的查询以及学生对实验的预约。管理功能包括教师、学生、管理员三者的登录、注册、个人资料管理,管理员对实验室的管理与对学生和教师预约信息的删除功能。最后通过调试、完善该系统,基本实现了高校实验室预约、管理功能,为各大学的实验室预约系统提供有用的模版参考。

关键词实验室预约;B/S;SQL Server2000数据库;VB.NET。

The Design of Laboratory Reservation System

Abstract

At present, the laboratory courses of every university are growing day by day. How to arrange the laboratory courses reasonably has become the serious problem of the Course Scheduling of laboratories in university. Therefore, the laboratory reservation system should do some related study about the appointment about laboratory courses. The B/S model is used by the system based on Windows, and the system implements the functions of laboratory appointment and the inquiries through ASP.NET and SQLServer2000. The functions of Lab's reservation and administration have been realized in this design .The functions of Lab's reservation include lab’s information, experiment items and information of laboratory reservation which can be queried and requested by teachers, and the teacher booking information and experiment project booking information which can be queried by students. There are four functions in administration module. They are logging, registering, data management and deleting information about library and teacher’s querying. Finally, this system is tested and debugged, and there is no problems existed. The basic functions of Lab's reservation and administration are realized. The design is very useful about the model of every university similar system designed.

Key words: Laboratory reservation; B/S; SQL Server2000 database;VB.NET.

  1. 引言
    1. 课题背景

现在B/S模式的设计与研发在网上十分流行,大学学校的资源也都通过这种形式展现出来,实验室预约系统就是各种B/S模式之中最明显的一个例子。实验室预约系统是通过服务器和客户端浏览器来实现数据的传输,它通过客户端实现管理、申请、提交用户信息,来完成实验项目的预约、查询、资料管理等各种功能。随着计算机应用水平和Internet网的迅速发展,各种资源实现网络化,已经成为必然趋势。实验室预约系统利用这个优势,来完成繁琐的人工操作,从而既改变了过去实验室传统的管理模式又提高办事的效率。

现在网上已经有这方面的材料,但具体问题要具体分析,不同的学校有不同的环境。

    1. 课题研究的目的

(1)掌握B/S模式的结构和框架,了解B/S模式存在的优势和必然原因。

(2)熟悉ASP.NET编程语言及.net平台的应用。

(3)熟悉一种或几种图画制作工具,并且把它运用在实际当中。

(4) 进一步熟悉SQL server2000数据库的功能,合理利用数据库。

(5)认真培养自学和独立能力,从大量资料中能够选取所需资料。

    1. 本课题研究的意义

实验课已经是各个高等学校不可缺少的一部分,如何充分利用学校现有的实验室资源是一个排课难题,也是本课题研究的主题。实验室预约系统的设计主要是通过学生和老师对实验资源的网上预约,实现实验室资源的合理利用,在有限的资源里充分发挥各个学校现有实验室资源的优势。

    1. 本课题的研究方法

实验室预约系统的设计采用的是B/S结构。基于Windows平台下,采用.net技术+SQL Server2000数据库完成的设计。首先本文先从分析实验室预约系统实现的功能入手,简单地描述出实验室预约系统准备实现的各种功能。其次是对开发环境和工具的介绍、了解、熟悉及掌握使用它们的方法,再次运用以往学过的知识和现在准备的知识进行对数据库的逻辑设计和物理结构的设计。最后,在.net平台下,选择熟悉的语言进行实验室预约系统的详细设计,对本课题进行系统的测试,找出问题,总结经验。记录所有的这一切过程,为毕业论文的规划和书写打下坚实的基础。本资料来源于 http://www.bylw168.com 毕业设计论文资料网

    1. 研究内容

运用以往学到的知识,开发一个实验室预约系统。它主要实现老师和学生对实验室的预约、查询等服务。研究的内容简要概括如下:

(1)各个级别的人实现对自己的内容的管理和修改,侧重数据库的合理利用。

(2)学生和老师对实验的时间预约,主要从简单明了入手。

(3)在系统设计开发中,学生和老师在系统中的查询是重点之一。

(4)学生、管理员、教师对资料的管理和管理员对实验室的管理和预约情况的管理。

  1. 功能描述

本课题主要研究对象有三个:学生、教师、管理员。

    1. 学生功能

学生主要是四个功能。注册功能、查询功能、预约功能、学生资料管理功能。

(1)注册功能。学生进入登录界面后,如果没有注册,要先注册。注册的用户名是学生的学号。注册后才可以登录,学生在此功能里还能够修改、删除个人资料。

(2)查询功能。学生在进入主界面后,能够对想预约的课程查询或教师查询。由于老师可能教多个课程,所以有个二级选择目录。

(3)预约功能。当学生查询好信息后,就要对想要预约的实验开始预约。

(4)学生资料管理功能。学生在注册后,可以通过登录,修改自己的个人信息。

    1. 教师功能

教师也有四个功能。注册功能、查询功能、预约功能,教师的资料管理功能。只是教师和学生所使用功能的方式不一样。

(1)注册功能。老师进入登录界面后,如果没有账号,也要先注册账号,同时可以对自己的资料进行修改、删除、填加。

(2)查询功能。教师的查询功能主要是对实验室类别、项目、预约情况的查询。类别查询主要是查询实验室房间的信息;项目查询主要是查看能实验该项目的房间信息;预约查询主要是对实验室预约状况的查询,以便预约。

(3)预约功能。当老师查询好预约信息后,就可以开始实验室预约了。

(4)教师的资料管理。管理教师自己的个人资料。

    1. 管理员功能

管理员的功能有三个,资料管理功能、房间信息管理功能、实验预约信息管理功能。

(1)资料管理功能。管理员不需要注册,资料管理功能就是对管理员自己的资料管理。

(2)房间信息管理功能。管理员通过页面对房间的信息进行添加,修改,从而实现对房间的管理。

(3)预约信息管理功能。管理员对已经预约的信息进行管理,包括单个房间、多个房间、教师、学生预约情况的管理。

    1. 实验室预约系统的流程图

实验室预约系统主要是学生和老师通过网络对实验资源的管理,主要功能流程图如图1。在首页开始里有两部分,注册、登录。注册分教师和学生两类;登录分学生、教师、管理员三类。当登录成功后将进入相应的界面进行属于自己权限范围内的应用范畴。学生主要是对个人资料的管理、实验信息的查询及预约功能。教师也是资料管理、实验信息查询、实验时间的预约,和学生的类似,只不过侧重点不同。管理员主要是管理实验室的各种各样资料。

图1 实验室预约系统流程图 本资料来源于 http://www.bylw168.com 毕业设计论文资料网

  1. 开发环境和工具
    1. 环境要求

本课题的开发主要是基于.NET2003平台,运用Asp.net和vb.net语言实现功能的主体开发。本系统由于是在服务器上运行的,所以服务器上的软件环境是IIS5.0和SQL Server2000,对硬件的要求不高,但CPU的处理速度要快,来增加访问速度。

    1. 开发工具简介
      1. .NET平台简介

.NET 是 Microsoft研发的,用于创建 XML Web 服务的平台,该平台将信息、设备和人以一种统一的、个性化的方式联系起来。借助于 .NET 平台,可以创建和使用基于 XML 的应用程序、进程和 Web 站点以及服务,它们之间可以按设计、在任何平台或智能设备上共享和组合信息与功能,以向单位和个人提供定制好的解决方案。.NET 是一个全面的产品家族,它建立在行业标准和 Internet 标准之上,提供开发(工具)、管理(服务器)、使用(构造块服务和智能客户端)以及 XML Web 服务体验(丰富的用户体验)。.NET 将成为您今天正在使用的 Microsoft 应用程序、工具和服务器的一部分,同时,新产品不断扩展 XML Web 的服务能力以满足您的所有业务需求。

      1. SQL Serser2000简介

SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。

SQL Server 2000, 是Microsoft 公司推出的SQL Server 数据库管理系统的新版本。该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98 的膝上型电脑,到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。

    1. 非开发性要求

本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括可读性、可修改性、可测试性等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制条件下(时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。

  1. 数据库详细设计
    1. 逻辑设计

根据系统需求分析定义系统实体,本系统主要涉及到的用户角色有学生、教师、管理员。系统涉及的实体有实验、班级、教室。

    1. 物理结构设计

根据要求设计预约系统需求的数据表

(1)学生注册数据库表:存储学生的注册信息,有学号、注册姓名(本人真实姓名)、注册密码、注册邮箱、联系电话、系别班级、籍贯7列。学生的学号是主键,注册邮箱、联系电话、籍贯三者允许为空,详细信息如表1。

表1  学生信息表(Student_information)

列名

类型

长度

是否为空

主键

是否外键

备注

S_ID

char

10

Y

学生学号

S_name

varchar

6

注册姓名

S_pwd

varchar

15

注册密码

S_mail

varchar

15

Y

注册邮箱

S_phone

char

10

Y

联系电话

S_class

char

15

系别班级

S_native

varchar

5

Y

籍贯

(2)教师注册数据库表:存储教师的个人信息,有教师ID、注册昵称、真实姓名、注册密码、注册邮箱、联系电话6列。其中教师ID是主键,并且由系统自动生成的,注册邮箱和联系电话两者允许为空,详细信息如表2。

表2  教师信息表(Teacher_information)

列名

数据类型

长度

可否为空

是否主键

是否外键

备注

T_ID

int

4

Y

教师ID

T_name

varchar

10

注册昵称

True_name

varchar

15

真实姓名

T_pwd

varchar

15

注册密码

T_mail

varchar

15

Y

注册邮箱

T_phone

char

10

Y

联系电话

(3)管理员信息数据库表:由于管理员只是少数几个教师,所以可以不需要注册,设计几个固定的用户名,供管理员使用。在该数据库表里有管理员ID、管理员的注册姓名、管理员的注册密码、管理员的注册邮箱和管理员的联系电话5列。管理员的ID 也是系统自动生成的 ,它被设成主键。同上,管理员的注册邮箱和联系电话允许为空,详细信息如表3。

表3  管理员信息表(Administrator_information)

列名

数据类型

长度

可否为空

是否主键

是否外键

备注

A_ID

int

4

Y

ID

A_name

char

10

注册姓名

A_pwd

varchar

15

注册密码

A_mail

char

15

Y

注册邮箱

A_phone

char

10

Y

联系电话

(4)实验室房间信息数据库表格:存储实验室的基本情况和最新更新的情况,包括实验室的房间号(如6304)、实验室类别(如网络实验室)、可用设备数目、允许的实验项目、容纳的人数、备注6列。房间号是主键。并且在查询过程中,可用设备数要小于总人数,备注可以为空,详细信息如表本资料来源于 http://www. bylw168 .com 毕业设计论文资料网4。

表4  实验室信息表(Lab_information)

列名

数据类型

长度

可否为空

是否主键

是否外键

备注

L_ID

char

15

Y

房间号

L_class

char

20

实验室类别

L_equip

char

10

可用设

备台数

L_ exper

varchar

800

实验项目

L_number

char

10

总人数

L_mem

varchar

150

Y

备注

(5)教师预约数据库信息表格:该表里包括房间号、预约课程的星期、课节信息、预约的实验项目、预约实验的教师姓名、完成的周次、授课的班级和预约的时间。其中房间号,星期和课节信息为组合主键,同时房间号是外键。完成周次是实验项目结束的时间,详细如表5。

表5  教师预约信息表(Tbooking_ information)

列名

数据类型

长度

可否为空

是否主键

是否外键

备注

L_ID

char

4

Y

Y

房间号

L_week

char

10

Y

星期

L_lesson

char

10

Y

课节信息

L_ exper

Varchar

30

实验项目

True_name

Varchar

15

预约教师

L_achtime

char

10

完成周次

S_class

char

30

班级

B_date

datatime

8

预约时间

(6)学生预约数据库表格:该表格包括课程名、教师姓名、房间号、学生学号、预约时间5列。课程名和教师名为组合主键,详细信息如表6。

表6  学生预约表(Sbooking_information)

列名

数据类型

长度

可否为空

是否主键

是否外键

备注

L_exper

 char

30

Y

课程名

True_name

varchar

30

Y

教师名

L_ID

char

15

房间号

S_ID

char

10

学生学号

B_date

datetime

8

预约时间

  1. 预约系统详细设计
    1. 登录页面设计
      1. 登录页面

该页面是一个简单的登录界面,如图2。

图2 登录界面

当用户来到开始页面,输入用户名和密码,并且要在底下选择相应的登录身份,教师、学生还是管理员,然后点击登录。就开始执行登录检测代码,当代码在数据库搜索到信息时,就返回消息,登录成功,进入相应的界面,如果未搜索到消息,也返回一个信息。该页面通过简单的查询比较语句实现学生、教师、管理员三者的登录功能。在页面的右边有一个注册链接。当用户(教师,学生)进入登录界面时,如果没有账号,要先注册账号。首先选择注册身份,点击“注册”按钮,进入相应的注册界面。实现登录主要代码是通过一个IF语句实现三者身份的判断。部分代码如下:

        Dim conn As New SqlConnection

        Dim cmd As New SqlCommand

        Dim objReader As System.Data.SqlClient.SqlDataReader

        conn.ConnectionString = "Data Source=localhost;Initial Catalog=Booking;Integrated Security=SSPI;Packet Size=4096;User ID=sa;Password=''"

        conn.Open()

        cmd.Connection = conn         

………………

以上代码段是打开数据库代码,在以下的程序中经常用到。

        Dim name As String = TextBox1.Text

        Dim pwd As String = TextBox2.Text

        If RadioButtonList1.Items(0).Selected = True Then

            cmd.CommandText = "Select * from Teacher_information"

            objReader = cmd.ExecuteReader()

            Do While objReader.Read()

                Dim sqlname As String = objReader.GetString(1).Trim()

                Dim sqlpwd As String = objReader.GetString(3).Trim()

                If sqlname = name And sqlpwd = pwd Then

                    Session("names") = TextBox1.Text

                    Session("pwds") = TextBox2.Text

                    Response.Redirect("admintea.aspx")

                    Exit Do

                End If

            Loop

            Response.Redirect("error.aspx")

………………

以上这段是查询数据库里的数据进行比较,并且用一个Session控件记录用户名和密码,上面的代码是实现教师登录的代码段。实现学生、教师、管理员三者登录的选择要用到一个IF语句。当判断正确后,转到相关的页面。

      1. 注册页面

教师的注册代码和学生的注册代码及页面都相类似,主要都是实现数据信息的插入到数据库表格里。不同之处在于学生的用户名是学生的学号,这是一个唯一标识,不需要再自己起名字,并且他有一定的长度限制6-12之间,在这个长度区间内的值才是有效的,要是想输入固定长度值,可以修改代码信息来完成。用户名、密码、真实姓名,都是学生和老师必填字段,而学生还有一个必填字段,就是系别班级,它是教师授课预约里的一个字段。由于老师可能有重名的时候,所以老师的用户名是自己起的。在填写老师用户名后,可以检查是否已经被人用过,如果没用过可以继续使用,填写其他信息,如果用户名已存在数据库里就会弹出个提示,要重新输入用户名。当填写好信息后,点击提交就可以注册账号了,如果不小心填错一些信息,可以点击“重填”按钮,重新填写资料。把注册信息数据插入到数据库表格里的代码如下:

If S_ID.Text.Length < 5 Or S_ID.Text.Length > 13 Or S_name.Text.Length < 1 Or S_pwd.Text.Length < 1 Or S_class.Text.Length < 1 Then

            Label1.Visible = True

        Else

            cmd.CommandText = "Insert into Student_information values(@S_ID,@S_name,@S_pwd,@S_mail,@S_phone,@S_class,@S_native)"

            cmd.Parameters.Add(New SqlParameter("@S_ID", SqlDbType.Char, 10))

            cmd.Parameters.Add(New SqlParameter("@S_name", SqlDbType.VarChar, 6))

            cmd.Parameters.Add(New SqlParameter("@S_pwd", SqlDbType.VarChar, 15))

            cmd.Parameters.Add(New SqlParameter("@S_mail", SqlDbType.VarChar, 15))

            cmd.Parameters.Add(New SqlParameter("@S_phone", SqlDbType.Char, 10))

            cmd.Parameters.Add(New SqlParameter("@S_class", SqlDbType.Char, 15))

            cmd.Parameters.Add(New SqlParameter("@S_native", SqlDbType.VarChar, 5))

            cmd.Parameters("@S_ID").Value = Request("S_ID")

            cmd.Parameters("@S_name").Value = Request("S_name")

            cmd.Parameters("@S_pwd").Value = Request("S_pwd")

            cmd.Parameters("@S_mail").Value = Request("S_mail")

            cmd.Parameters("@S_phone").Value = Request("S_phone")

            cmd.Parameters("@S_class").Value = Request("S_class")

            cmd.Parameters("@S_native").Value = Request("S_native")

            cmd.ExecuteNonQuery()

            conn.Close()

            Label2.Text = "你已经注册成功"

            fh.Visible = True

        End If

注册界面如图3。

图3  注册界面

    1. 管理页面设计
      1. 教师管理主页面

该页面如图4。

图4  老师主页面

页面最上面一排显示用户的用户类别、用户名。下面是老师能够操作的各种功能,主要是各种查询功能。老师有三种信息查询功能:一是实验室信息查询。该查询主要是查询实验室房间信息,有什么设备、可以做什么样的实验项目、能容纳多少人、可用设备的台数等信息,为老师预约房间提供参考;二是实验项目查询,该查询就是查找某个实验项目能在哪些实验室里做实验,即显示能做某个项目的房间个别信息;三是实验室预约查询,就是当老师查到某个实验室时,想了解该房间已经预约的具体情况的操作,该房间里哪些课节已经预约了,哪些课节空闲。三个功能的实现代码都类似,都是通过SQL 语句来查找数据库里的相关信息,然后把查到的信息通过绑定控件显示到页面上,供查询者了解信息。同时还有几个链接按钮,用来跳转到实验预约,修改资料,信息查询等相关页面。

实验室信息查询的代码如下:本资料来源于 http://www. bylw168 .com 毕业设计论文资料网

cmd.CommandText = "Select * from Lab_information"

        objReader = cmd.ExecuteReader()

        Do While objReader.Read()

            Dim LabID As String = objReader.GetString(0).Trim()

            If LabID = TextBox1.Text Then

                name = LabID

                Exit Do

            End If

        Loop

        If TextBox1.Text = name Then

            bindlist1()

        Else

            Label2.Text = "此实验室尚未添加"

        End If

…………Datalist绑定代码如下:

Sub bindlist1()

        Dim conn As New SqlConnection

        Dim cmd As New SqlCommand

        Dim ds As New DataSet

        conn.ConnectionString = "Data Source=localhost;Initial Catalog=Booking;Integrated Security=SSPI;Packet Size=4096;User ID=sa;Password=''"

        conn.Open()

        cmd.Connection = conn

        Dim sqlstr As String = "select * from Lab_information where L_ID='" & Session("L_ID") + "'"

        cmd.CommandText = sqlstr

        Dim objadpt As New SqlDataAdapter(cmd)

        Dim tablename As String = "L_ID"

        objadpt.Fill(ds, tablename)

        Lab1.DataSource = ds.Tables(tablename)

        Lab1.DataBind()

        conn.Close()

End Sub

      1. 学生管理主页面

学生的这个界面主要是查询,是对老师和课程预约情况的查询。不过还有预约功能也在此页面实现,预约功能在后面5.3.1节介绍。学生管理页面如图5。

图5  学生主页面

最上面同样是学生的身份、学生的唯一标识。下面是查询功能选项卡,学生的查询主要有两个方面:一个是对实验项目的查询,它主要是查询某个实验项目的信息,主要包括有哪几位老师正在上这门实验课、都在什么实验室、什么时间上课这门课等等。二是老师查询,当知道了上某一门实验课的老师是哪一位时,就可以通过此项查询。由于现在大多数老师都不仅仅教授一门课程,所以有可能有多样的实验课,如老师既教数据库知识,又教操作系统,做实验时就既有操作系统实验课,又有数据库实验课,这时需要一个二级目录的查询,当先输入老师名字时,在后面就会用下拉表单列出老师实验课的信息,然后选择要查的实验课,电击“查询”按钮,才在底下显示具体信息,操作如图6。该操作的代码和老师的查询代码类似,只是在操作中有个下拉菜单的操作。由于要打开数据库,所以涉及数据库打开数据库代码如5.1.1节所叙述,此处不在重复。

图6  学生查询教师实验二级目录的实现

下拉菜单实现的代码如下:

Dim objReader As System.Data.SqlClient.SqlDataReader

        Session("True_name") = TextBox1.Text

      

        cmd.CommandText = "Select * from Tbooking_information"

        objReader = cmd.ExecuteReader()

        Do While objReader.Read()

            Dim sqlname As String = objReader.GetString(4).Trim()

            Dim sqlexper As String = objReader.GetString(3).Trim()

            If sqlname = TextBox1.Text Then

                exper.Items.Add("" & sqlexper + "")

            End If

        Loop

        TextBox2.Visible = False

            exper.Visible = True    

      1. 管理员管理主页面

管理员的这个页面主要有三个功能,一是添加房间信息,二是修改房间信息,三是删除学生和老师的预约信息。

(1)添加房间信息。在该页面,要输入实验室房间的详细信息,主要有房间号、实验室类别、总人数(总的计算机台数)、可用设备数(能够做实验的计算机台数)、都能够实现哪些项目的上机操作和备注,这一些必要的字段。此页面有三个按钮:一个是提交、一个是重填、一个是继续添加。提交就是把浏览器里输入的信息插入到数据库表格里,重填就是信息的清除,继续添加也是类似信息的清除。从操作过程知道此操作的代码段主要是信息的插入,所以在此不在列出此段代码。本资料来源于 http://www. bylw168 .com 毕业设计论文资料网

(2)修改房间信息界面主要是实现对实验室的信息单项修改。要先填写房间号,系统根据这个填写的信息继续做后面的操作,可以修改实验室类别、总人数、可用设备数(上机人数)、实验项目、备注等各项。页面如图7。

图7  房间修改信息界面

(3)删除预约信息。页面如图8。

图8  管理员删除界面

此操作是按分类操作的,分四类:一个删除房间信息,它又分删除一个房间信息和删除多个房间信息,当填写房间号或房间号的区间时,就可以执行此操作。二是删除房间的预约信息,可以删除一个房间或多个房间的预约信息。三是删除老师的预约信息,当输入老师姓名时就删除老师的预约信息。四是删除学生的预约信息,删除学生预约信息通常是一个班或一个专业的,所以主要是使用区间,删除一段学号的学生预约信息。当点击删除时,如果成功就会在后面显示删除成功。否则,就提示输入错误字段。在页面下面是简单的介绍如何操作删除功能的。

此页面有个‘继续操作’按钮,当点击它时,就会清空上面的填入信息,同时还有个链接按钮,用来返回到管理员的主界面。删除功能很简单,就是先打开数据库,用一条delete语句,删除相应的数据库表格里的某一列字段或整个字段,就可以完成此操作。代码如下:

Dim conn As New SqlConnection

        Dim cmd As New SqlCommand

        Dim ds As New DataSet

        conn.ConnectionString = "Data Source=localhost;Initial Catalog=Booking;Integrated Security=SSPI;Packet Size=4096;User ID=sa;Password=''"

        conn.Open()

        cmd.Connection = conn

        cmd.CommandText = "delete  from Lab_information where L_ID >='" & TextBox8.Text + "'and L_ID<='" & Textbox9.Text + "'"

        Label3.Text = "删除成功"

        cmd.ExecuteNonQuery()

        conn.Close()

    1. 预约页面的实现
    1. 学生预约页面

这个在学生的管理主页面上,如图5学生主页面。主要是向数据库里学生预约表格里填加一些学生预约信息。在输入框里输入学生要预约的房间号,授课教师的真实姓名,学生的学号,实验项目,执行此操作的时间,点提交就可以实现学生的预约。下面有三个按钮,一个是重填,一个是预约,一个是取消预约,当点取消预约时,系统会根据当前用户输入的信息(用户名或学号等)执行预约信息删除操作。

    1. 教师预约页面

教师预约的页面是一个单独的页面,在此页面上方同样是用户类别和用户标识,下面输入框是要预约所填写的必要信息字段,有预约实验室的房间号、上课的星期、课节、实验项目名称、教师真实姓名、完成实验项目的上课周次、预约信息的时间、教师授课的班级。星期和课节字段是两个下拉框的表格,通过下拉框选择是星期几,第几节课。代码也是插入数据的代码,在此不在重复代码段。页面如图9。

图9  教师预约界面

    1. 其它页面的实现
  1. 个人资料管理页面

此功能是学生、教师、管理员三者都需要实现的。所以他们实现的方式相同,管理资料的页面也相同。如管理员的个人资料管理页面如图10。

图10  管理员资料管理界面

密码框里要填入旧的密码,新密码和对新密码的确认,才能修改信息。邮箱和电话是当用户登录后就显示出来的,你可以根据自己信息对它们进行相关的修改,点修改按钮,进行此操作,无论成功与否都有提示,实现代码如下:

If pwd1.Text = Session("pwds") Then

            If pwd2.Text = pwd3.Text Then

                cmd.CommandText = "UPDATE Teacher_information SET T_pwd='" & pwd2.Text + "' where T_name='" & Session("names") + "'"

                Label1.Text = "修改成功"

            Else

                Label1.Text = "密码不一致"

            End If

        Else

            Label1.Text = "旧密码不正确"

        End If

  1. 退出系统功能的实现

此操作就是删除在登录记录的Session值,学生、教师、管理员的退出系统功能都是如此实现。把Session的值设置为空,返回到开始界面即可。代码简单明了,如管理员的代码如下:

Session("namea") = ""

        Session("pwda") = ""

        Response.Redirect("homepage.aspx")

    1. 主页面格调代码实现

主页面的格调主要是用HTML代码实现。它主要包括实现主题背景的颜色、图片的插入、各种表格属性的设计和嵌套、字体的对齐方式等各方面内容。

  1. 系统测试

经过几次的修改,实验室预约系统的设计终于得以完成,通过这段时间的努力,实验室预约系统完成了它的基本功能。在登录页面输入账户和密码选择身份后,单击“登录”按钮能够成功登录。在学生和老师管理页面里输入相应的查询信息,通过操作,能够清晰地显示查询结果。三者的管理页面通过输入要修改的自己信息,能够修改自己的信息。管理员的删除功能通过输入的房间和预约信息达到删除各种信息的功能。数据库表格内容设计的简单明了,能从中了解整个系统的数据库思路,并且各个模块的协调性比较融洽,相互制约。

结    论

通过一段时间的设计和编写,终于完成了实验室预约系统的设计。这个系统实现了学生和老师的注册功能;学生、老师和管理员三者的登录和资料管理功能;学生对教师实验的查询和对实验项目的查询功能;教师对实验室资料的查询、对实验项目的查询以及对实验预约情况的查询功能;管理员主要实现了对实验室资料的管理以及对教师和学生预约实验室情况的管理,可以删除、增加、修改实验室信息等。但是还存在许多问题,这主要是优化方面的问题。

(1)由于在研究本课题时,它被看成一个独立的系统。所以对用户的注册没有具体的限制(即是本校师生,还是校外的人),不过如果可以连接到教务处数据库,就可以通过一个数据库Select语句把它设置一下。

(2)冲突问题,当几个老师同一时间预约同一个课节上课时,就会发生冲突,这个问题,由于时间原因没有解决,可以通过一个退让算法来解决这个问题

(3)由于上课的周次填写是固定的,就不能活泛的利用实验室资源,这个如果要是在实际操作中要给予重点考虑。

(4)学生预约管理问题,当预约某一时间段的人过多时,可以由老师分配到别的时间段(在本次研究中就是这么考虑的。)但是如果要是在大学的网站,可以通过系统自动调整,既把超过某个实验室的学生调整到其他也做该实验的老师课节里。

参考文献

[1] 肖金秀,冯沃辉,陈少涌.ASP.NET程序设计教程[M].北京:冶金工业出版社,2003。

[2] 林锦雀.最新XML入门与应用[M].武汉:中国铁路出版社,2001。

[3] 吉根林,崔海源. ASP.NET程序设计教程[M].北京:电子工业出版社,2004.8。

[4] 方睿,刁仁宏,吴四九.网络数据库原理及应用[M].成都:四川大学出版社,2005.8。

[5] 李印清. Visual Basic.NET程序设计实用教程[M].北京:清华大学出版社,2006.5。

[6] 周洪政,陈斌. Dreamweaver MX网页制作全新教程[M].上海:上海科学普及出版社,2004.5。

[7] 普悠玛.ASP.NET程序设计示例导学[M].北京:北京科海电子出版社,2003.2

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
基于java的实验室网上预约系统设计实现 技术:后端:java,前端:html+js+css 框架:springBoot SSM 运行工具:idea 数据库:mysql 源码:详见文章最后 1、    登录页面: 2、首页 3、用户管理  4、添加用户  5、角色管理  6、添加角色  7、编辑角色 8、预约管理  9、新增预约  10、数据统计 数据库脚本如下: CREATE TABLE `sys_user_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `role_id` VARCHAR(500) NULL DEFAULT NULL COMMENT '角色ID', `user_id` VARCHAR(50) NOT NULL COMMENT '用户ID', `user_name` VARCHAR(100) NOT NULL COMMENT '用户名', `status` VARCHAR(50) NOT NULL COMMENT '是否有效0:false\\\\\\\\1:true', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(100) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(100) NULL DEFAULT NULL, `password` VARCHAR(128) NOT NULL, `tenantcode` VARCHAR(50) NOT NULL, `diskId` VARCHAR(500) NULL DEFAULT NULL, `remarks` VARCHAR(500) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COMMENT='系统用户表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=52 ; CREATE TABLE `sys_role_t` ( `role_id` INT(11) NOT NULL COMMENT '角色ID', `role_name` VARCHAR(200) NOT NULL COMMENT '权限名称', `status` INT(11) NOT NULL COMMENT '是否有效0:true\\\\1:false', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(100) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(100) NULL DEFAULT NULL ) COMMENT='系统角色表' COLLATE='utf8_general_ci' ENGINE=InnoDB ; CREATE TABLE `sys_menu_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '序列', `parent_id` VARCHAR(50) NOT NULL COMMENT '父节点ID', `menu_id` VARCHAR(50) NOT NULL COMMENT '菜单ID', `menu_name` VARCHAR(200) NOT NULL COMMENT '菜单名称', `menu_url` VARCHAR(200) NULL DEFAULT NULL COMMENT '菜单URL', `status` INT(11) NOT NULL COMMENT '有效(0有效,1失效)', `create_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `create_by` VARCHAR(200) NULL DEFAULT NULL, `last_update_date` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP, `last_update_by` VARCHAR(200) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COMMENT='菜单表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=33 ; CREATE TABLE `client_manager_t` ( `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '序列', `clientId` VARCHAR(50) NULL DEFAULT NULL COMMENT '客户编号', `clientName` VARCHAR(50) NULL DEFAULT NULL COMMENT '客户姓名', `address` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户住址', `source` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户所属公司', `sourceDate` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户发展时间', `status` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户级别', `clientNum` VARCHAR(200) NULL DEFAULT NULL COMMENT '拜访客户次数', `isTrue` VARCHAR(200) NULL DEFAULT NULL COMMENT '客户是否有效', PRIMARY KEY (`id`) ) COMMENT='客户人员信息表' COLLATE='utf8_general_ci' ENGINE=InnoDB AUTO_INCREMENT=47 ;
软件名称:实验室仪器预约管理系统 软件版本号:2.9.8 软件类型:(国产) 软件语言:(中文) 软件属性:(安装版) 软件授权:(免费) 软件大小:(9500kb) 应用平台:(windwos,ios...) 联系方式:(QQ21398125) 官方网站:(www.25175.com) 官方下载连接:http://www.25175.com/UploadFile/1/Files/20150816/25175Release20150816225311-0922.rar 软件系列 :25175实验室仪器预约管理系统(v2.9.8) 开发公司: 慈溪市顺通网络技术有限公司 公司网址:http://www.shuntun.com 在线演示:http://saas.25175.com 更新时间:2015/8/7 在线下载:http://www.25175.com/UploadFile/1/Files/20150816/25175Release20150816225311-0922.rar 1.本套软件适合于人员在5000人以内的学校预约管理。没有复杂的操作,普通人员都很容易上手实践。并且在软件上不需要投入很多的人力培训进行操作。 2.推荐使用操作系统:win2008及以上 调试平台:IIS7.0及以上 推荐环境:asp.net4.5+sql2008 3.第一次使用务必请先注册,http://您的地址/MAA/login/Register.aspx ,请输入正确的信息并提交,就可以使用了,如果信息不正确或非法有可能无法使用。 兼容浏览器:IE8+ FireFox, Safari, Chrome, Opera and more. 官方网站:http://www.shuntun.com/ 程序演示:http://www.25175.com/ 软件视频:http://edu.25175.com 软件开发部:王工 开发 页面设计:25175 设计 简介: 该实验室在线预约系统,采用了BS架构开发,利用.NET技术和sqlserver数据库进行了系统的开发,系统是一款专业的实验室预约管理软件。灵活调度手段可以即时进行预订,并且自动通知和与会者确认。所有用户无需安装和繁琐的配置,因为我们的预约管理运行在服务器上.使用时所有要做的就是登录系统。 管理调度软件可以提高您预约的生产力和效率。对于学校来说,时间就是金钱 - 生产率的提高,可以促使节约更多的成本。 使用说明: 一,登陆。 普通学生/老师 注册审核通过后就可以预约。 填入用户名跟密码后进入下面 点击网上预约后进入下面 接下来选择你要预约的仪器,点击(我要预约),进入下面的页面 所有预约的列表 预约公告 二、管理员登录 管理员内部预约 仪器设置
传统的实验室管理方式,积累量大,易出错,在实验室开放方面,学生很难查看实验室的空闲时段,管理员也很难为学生预备实验条件。在选择实验课方面,总是以班级或者专业为单位进行排课,使得教学缺乏自主化,人性化,而且往往会师生之间相互不了解而产生的盲目教学等情况,影响学生、老师的积极性,从而影响实验教学的效果。所以,需要开发一套开放实验室实验预约系统来代替传统的管理方法。 开放实验室预约系统包含管理员放课子系统,老师排课子系统,学生选课子系统三块。在放课子系统中,管理员根据该学期的实际需要发放本学期的实验项目批次,同时管理员可以统计所有实验项目批次的选课情况。在排课子系统中,老师根据管理员发放的实验项目批次,确定实验的时间、地点、容纳人数等基本信息,同时老师可以查看自己排课情况。在选课子系统中,学生根据自己的实际情况和老师排课的基本情况来选择自己的实验项目批次,同时学生可以查询老师的信息,课程的信息和自己的课表。 系统采用B/S架构,符合操作简单,界面友好,灵活,实用,安全的要求,能够完成开放实验室预约管理的全过程。系统的最大特点就是打破了传统意义上的实验室管理方式,使得学生、老师在整个教学过程中更加自主,不断提高了两者的积极性,同时也提高了教与学的质量,提高了实验教学管理的效率。
摘 要 传统的实验室管理方式,积累量大,易出错,在实验室开放方面,学生很难查看实验室的空闲时段,管理员也很难为学生预备实验条件。在选择实验课方面,总是以班级或者专业为单位进行排课,使得教学缺乏自主化,人性化,而且往往会师生之间相互不了解而产生的盲目教学等情况,影响学生、老师的积极性,从而影响实验教学的效果。所以,需要开发一套开放实验室实验预约系统来代替传统的管理方法。 开放实验室预约系统包含管理员放课子系统,老师排课子系统,学生选课子系统三块。在放课子系统中,管理员根据该学期的实际需要发放本学期的实验项目批次,同时管理员可以统计所有实验项目批次的选课情况。在排课子系统中,老师根据管理员发放的实验项目批次,确定实验的时间、地点、容纳人数等基本信息,同时老师可以查看自己排课情况。在选课子系统中,学生根据自己的实际情况和老师排课的基本情况来选择自己的实验项目批次,同时学生可以查询老师的信息,课程的信息和自己的课表。 系统采用B/S架构,符合操作简单,界面友好,灵活,实用,安全的要求,能够完成开放实验室预约管理的全过程。系统的最大特点就是打破了传统意义上的实验室管理方式,使得学生、老师在整个教学过程中更加自主,不断提高了两者的积极性,同时也提高了教与学的质量,提高了实验教学管理的效率。 【关键字】管理自动化 预约管理系统 查询 信息。 ABSTRACT Traditional laboratory management, accumulated a large amount of error-prone, and opening up in the lab, the students it is difficult to view the free laboratory sessions, the administrator it is very difficult for students to prepare experimental conditions. In the choice of the experimental classes, the always professional classes or arranging schedule for the units, making the teaching of the lack of autonomy, of human nature, but also between teachers and students are often caused by lack of understanding and teaching the blind, the impact on students and teachers the enthusiasm of , thus affecting the effectiveness of experimental teaching. Therefore, the need to develop an open laboratory system to replace the traditional appointment of the management. The open laboratory appointment system contains the manager class break subsystem, teacher arranges the class subsystem, the student chooses class subsystem three. In the class break subsystem, the manager provides this semester according to this semester's actual need the experiment project raid, simultaneously the manager may count all experiment project raid to choose the class situation. In the row of class subsystem, teacher the experiment project raid which provides according to the manager, determined that experiment's time, the place, the accommodation population and so on basic information, simultaneously teacher may examine oneself platoon class situation. In chooses in the class subsystem, the student acts according to own actual situation and teacher arranges the class the basic situation to choose own experiment project raid, simultaneously the student may inquire teacher's information, the curriculum information and own class schedule. The system uses the B/S construction, conforms to the simplicity of operator, the contact surface is friendly, nimble, practical, safe request, can complete opens the laboratory appointment management the entire process. System's most major characteristic has broken in the traditional significance laboratory mode of administration, causes the student, teacher to be even more independent in the entire teaching process, enhanced both's enthusiasm unceasingly, simultaneously also improved teaches with study the quality, raised the experiment teaching management efficiency. 【Keywords】 management automation appointment management system inquiry service information. 目 录 前 言 - 1 - 第一章 开放实验室预约管理系统概述 - 2 - 第一节 开发系统背景 - 2 - 第二节 系统目标 - 2 - 第三节 论文的主要工作 - 4 - 第四节 本章小结 - 4 - 第二章 需求分析 - 5 - 第一节 总体需求分析 - 5 - 第二节 可行性分析 - 5 - 一、技术可行性 - 6 - 二、经济可行性 - 6 - 三、操作可行性 - 7 - 四、开发环境可行性 - 7 - 第三节 应用现状调查 - 7 - 第四节 业务流程需求分析 - 8 - 第五节 运行环境需求 - 9 - 第六节 本章小结 - 9 - 第三章 系统分析与设计 - 10 - 第一节 总体设计 - 10 - 第二节 系统功能分析 - 10 - 一、图形工具 - 12 - 二、系统的逻辑模型 - 16 - 第三节 详细设计 - 20 - 一、程序流程图 - 21 - 二、数据库设计 - 22 - 第四节 本章小结 - 24 - 第四章 系统实现 - 25 - 第一节 实现工具 - 25 - 一、PHP5动态语言 - 25 - 二、Mysql数据库 - 25 - 三、开发平台 - 26 - 四、数据库系统工作结构图 - 26 - 第二节 功能实现 - 27 - 第三节 本章小结 - 29 - 第五章 测试与维护 - 30 - 第一节 测试结果 - 30 - 一、后台登陆模块 - 30 - 二、前台主界面模块 - 30 - 三、后台主界面模块 - 35 - 第二节 本章小结 - 37 - 结 论 - 38 - 致 谢 - 39 - 参考文献 - 40 - 附 录 - 41 - 一、英文原文 - 41 - The Hitchhikers Guide to PHP Load Balancing - 41 - 二、中文翻译 - 47 - PHP负载均衡指南 - 47 - 三、工程设计图纸: - 51 - 四、源程序: - 51 - 五、其他: - 51 -
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等天晴i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值