网上教材管理系统的设计与实现—毕业设计论文内容摘要:

体的 int 类型的行数。 rowFirst 方法用来返回一个 object 类型的查询后的第一行的第一列的结果。 代码和上面的两个方法类似,只是执行 ExecuteScalar 方法来取得第一行的第一列的结果。 登录操作 登录页面的功能主要是供合法的用户根据自己的用户类型进行登录。 网上教 第 10 页 共 34 页 材管理系统登录模块运行的结果如图 41 所示。 图 41 网上教材管理系统登录模块运行 的结果 如果用户在没有登录的情况下选择其它功能模块会退回到登录界面。 如果用户已经登录,可以在登录模块进行退出登录的操作。 在登录到这个页面或者刷新这个页面的时候,首先要进行一次 session 的判断。 在输入用户名密码后,先确认输入框中有数据,将把输入框中的数据和数据库中的数据进行比较验证。 如果一 切通过,将产生两个 session 分别用来存放用户名和用户类型。 之后跳转到相应的登录成功的页面。 订书操作 网上教材管理系统订书模块分为三个子模块,分别是学生订书模块、教师订书模块、教材科订书模块。 主要功能是完成各类用户的订书操作。 网上教材管理系统学生订书模块运行 的结果 如图 42 所示。 第 11 页 共 34 页 图 42 网上教材管理系统学生订书模块运行 的结果 当教材科工作人员以教材科类型用户登录到系统后,可进行教材的订书操作。 首先填写教材使用的学年度,然后选择使用的系和班级,再选择使用的教材名,最后填写订书的数量,如果确 认无误后,就可以点击确定订书。 在进入到这个模块时,首先还是判断是否有 session 存在,没有的情况下返回登录页面。 存在 session 时,判断用户类型是否属于教材科用户,如果不是,跳转到管理页面。 在输入了订书信息选择确定后,如果一切无误,会进行插入操作。 订购信息会先后插入到订书表和领书表。 但是在领书表中不会插入领书时间、操作者、领书标记这些信息。 成功后会返回订书模块。 具体的实现代码如下。 string sql_dingshu = insert into dingshu +(number,time,name,class,department,xnd,jiaocaike,bookname) +values(39。 + number + 39。 ,39。 + time + 39。 ,39。 + name + 39。 ,39。 + classname + 39。 ,39。 + department + 39。 ,39。 + xnd + 39。 ,39。 + jiaocaike + 39。 ,39。 + bookname + 39。 )。 (sql_dingshu)。 string sql_lingshu = insert into lingshu + (number,class,department,xnd,jiaocaike,bookname,tag) + values(39。 + number + 39。 ,39。 + classname + 39。 ,39。 + department + 39。 ,39。 + xnd + 39。 ,39。 + jiaocaike + 39。 ,39。 + bookname + 39。 ,39。 + tag + 39。 )。 (sql_lingshu)。 ()。 第 12 页 共 34 页 领书操作 网上教材管理系统领书模块分为两个子模块,分别是学生领书模块、教师领书模块。 主要功能是完成学生和老师的领书操作。 网上教材管理系统学生领书模块运行 的结果 如图 43 所示。 图 43 网上教材管理系统学生领书模块运行 的结果图 如是学生领书操作,只需要选择相应的系和班级,点击查询后就可以看到已经领了的教材和需要领取的教材。 教师领书模块操作类似,不同的只是根据教师名字选择。 在进行订书操作的时候,首先会判断用户是否选择了要领取的教材。 如果没有选择具体的教材就进行领书 操作,会弹出错误提示,之后返回。 实现代码如下: //判断是否选择了书 if ( == 1 amp。 amp。 == 1) { (script lanuage=javascriptalert(39。 没有选择图书。 39。 )。 location=39。 javascript:(1)39。 /script)。 return。 } string ID1。 if ( == true) { 第 13 页 共 34 页 ID1 = ()。 } else { D1 = ()。 } 如果选择了具体的教材,接下来会通过领书标记判断选择的教材是否已经被领取了。 如果书已经被领取了,也会弹出出错提示,之后返回。 具体代码如下: //加一个判断领书是否已经发生 string sql_1=select tag from lingshu where tag=39。 +true+39。 and ls_ID=39。 +ID1+39。 if (((sql_1))) { (script lanuage=javascriptalert(39。 书已经领取。 39。 )。 location=39。 javascript:(1)39。 /script)。 return。 } 如果一切没有问题,会把领书的时间、操作者、领书标记填入领书记录中。 然后返回领书模块。 具体代码如下: string sql=update lingshu set time=39。 ++39。 ,name=39。 +name+39。 ,tag=39。 +true+39。 where ls_ID=39。 +ID1+39。 (sql)。 ()。 报损 换书 零售操作 报损是当教材因教材科的原因造成损坏时,选择对相应的书进行报损处理。 换书是书已经发给学生或教师后,因书自身的问题进行换书处理。 零售是针对部分学生因各种原因需 要再次购买教材时进行教材零售。 网上教材管理系统的教材零售模块运行 的结果 如图 44 所示。 第 14 页 共 34 页 图 44 材库存管理系统教材零售模块运行 的结果图 报损、换书、零售其实都是特殊的领书过程,只对应于教材科的领书领书操作。 如果教材科没有订购教材,这些操作则都不能进行。 退换和报损处理的操作几乎相同,选择需要报损或退换的教材,在有足够库存的情况下进行报损或退换操作,分别记入报损表中和退换表中,领书表中教材科领书的相应项目数量减少。 在库存少于规定的阀值的时候会进行报警。 在没有库存的时候会显示“无库存”并且禁止对此教材进行 相应的报损、换书、零售处理。 零售模块与报损、换书不同的是 ,在选择好教材进行点击查询后会显示教材的价格。 在购买后会显示购买的总价格并写入表中。 首先在点击查询之后,通过数据库得到报警阀值。 代码如下: = false。 database db = new database()。 //SqlCommand cmd = new SqlCommand()。 = true。 // = false。 string number = select number from number。 object test = (number)。 decimal test_de = (test)。 得到报警阀值后,与得到的库存教材数量进行比较,如果小于库存阀值就会 第 15 页 共 34 页 出现“库存不足”的报警。 如果领书标记显示为真表示该教材已经没有库存了。 通过参数化查询得到教材的价格。 string price = select price from jiaocai where bookname=39。 ++39。 = (price).ToString()。 pirce_de = ()。 在点击了确定购买按钮后,首先判断是否选择了教材,然后判断是否输入了购买的数量。 之后会做一个防止过量购买的安全检查,根据输入的购买数量看是根本没有库存还是库存不足。 如果通过会根据购买的数量计算总的价格,购买后会对教材科领书的数量做相应的处理,如果该图书被购买完了,会做上领书标记防止再被 购买。 查询汇总 汇总是根据教材使用的学年度,通过教材名或者系,对教材的订购情况进行汇总统计。 网上教材管理系统教材汇总模块运行 的结果 如图 45 所示。 教材查询模块是一个面向所有用户的模块。 在这个模块中可以通过组合查询、班级订购教材查询、授课教师查询来查询到自己需要的教材。 网上教材管理系统教材查询模块运行 的结果 如图 46 所示。 图 45 网上教材管理系统教材汇总模块运行 的结果 第 16 页 共 34 页 图 46 网上教材管理系统教材查询模块运行 的结果 系统管理 这是本系统的系统管理部分。 需要在登录的时候选择 管理员才可以进入。 图书管理主要是对图书信息的添加、删除、修改。 网上教材管理系统图书管理模块运行 的结果 如图 47。 系统管理主要作用是设置报警阀值、添加删除修改用户、添加删除班级和系。 网上教材管理系统系统管理模块运行 的结果 如图 48。 第 17 页 共 34 页 图 47 网上教材管理系统教材管理模块运行 的结果 图 48 网上教材管理系统系统管理模块运行 的结果 教材管理模块可以对教材进行添加、删除、修改操作。 进入模块后,可以直接点击“添加新教材”打开一个新的页面来输入教材的相关信息,在确认输入无误后点击确定,通过一个 insert 语句把新教材的数据放入数据库的教材表。 另 第 18 页 共 34 页 外,在进入教材管理功能模块的时,有一个“显示所有教材”按钮,可以选择教材对一些信息进行修改,之后用 UPDATA 使修改后的数据写入数据表,也可以选择删除来删除错误的教材数据。 另一个重要的模块是系统管理模块,虽然在功能上相对简单,但是在整个系统各个模块中起着重要作用。 该模块的主要功能是管理用户,设置用户的类型。 这些 user 在多个表中需要作为一个值被插入,也用于 session 判断中。 另一个功能设置报警的阀值,以便教材科可以根据需要及时补充教材。 还有一个功能是添加新的系和班 级,这样由管理员输入到数据库再由教材课使用的时候被调用,可以减少教材科的工作量,也避免了出错。 5 测试 在系统制作完成后对系统的功能和健壮性进行了测试。 建议使用的硬件环境: ● 处理器: Inter Pentium 4 或更高。 ● 内存: 256M 以上 ● 硬盘空间: 20GB 以上 ● 显卡: SVGA 显示适配器 建议使用的软件环境: ● 操作系统: Windows XP ● 数据库: SQL Server 2020 Express 下面是功能测试: ( 1)系统管理部分,可以按相应身份登录到系统,可以添加、修改、 删除教材,可以添加、删除、修改用户,可以设置报警阀值。 ( 2)库存管理部分,可以以学生、教师、教材科的类型进行订书操作。 可以以学生、教师的类型进行领书操作。 可以在教材科有订书的情况下进行报损、换书、零售的操作。 可以按班级和书名统计某学年度内订书的数量。 可以按照相关的条件进行图书查询。 由于操作此系统的非计算机专业人员,在操作的过程中容易发生错误。 所以在设计系统的时候考虑了很多鲁棒性方面的问题。 下面是错误操作测试: ( 1) 登录的时候输入错误用户或者不输入用户会报错提示。 ( 2) 订书的时候不输入数量、学年度、教师姓名时候 会报错提示。 ( 3) 领书的时候不选择图书、重复领书会报错提示。 ( 4) 报损、换书、零售时候不选择图书、不填写数量、过量领书会报错提示。 第 19 页 共 34 页 通过对系统功能测试和错误操作测试,基本都达到了预期的效果。 结 论 这个网上教材管理系统成功的实现了教材订购、教材领取、报损、换书、零售、统计、库存报警等主要功能。 系统的最大的特点是操作简单,部署方便,并且较好的防止错误操作发生,尽可能多的给用户提示信息。 这样面对非计算机专业的教材科管理人员能很快上手,极大的提高教材科工作的效率和服务的质量。 但本系统也存在设计上的不足,首先因为 初次设计制作完整的系统,在初期阶段需求分析和考虑数据库设计的时候都做的不全面,以至不能很好的保证数据的完整性,在长时间使用删除一些数据后,会有一些脏数据留存,也可能有其他一些问题发生。 其次,仍然有一些地方没有及时的给用户反馈,没有做操作可逆的处理。 另外,对教材科工作的了解不够深入,会有些功能和操作方式还没有考虑到。 参考文献 [1] BRADLEY [美 ]. 21天学通 C[M]. 信达工作室 译 北京: 人民邮电出版社 ,2020。 [2] 求是科技 . [M]. 北京: 人民邮电出版社 ,2020。 [3] Christian Nagel[美 ]. C高级编程 [M] 李敏波 译 . 北京: 清华大学出版社 ,2020。 [4] Jesse Liberty[美 ]. Programming [M] 瞿杰 赵立东 译 . 北京: 电子工业出版社 ,2020。 [5] 张树亮 李超 . +SQL Server 网络应用系统开发案例精解 [M]. 北京: 清华大学出版社 ,2020。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。