版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第页农资管理系统的设计与实现目录TOC\o"1-2"\h\u183391绪论 2311331.1课题的意义 2232761.2可行性分析 346671.3课题所需的关键技术 3224712需求分析 433722.1功能分析 4167832.2用例分析 4129602.3性能分析 5207212.4系统数据分析 632973概要设计 746303.1系统结构设计 777693.2操作流程设计 843803.3功能性分析 9288293.4系统数据库设计 10285254详细设计 1233154.1用户登录模块 12206584.2入库模块 13127854.3出库模块 15175224.4添加操作员模块 16304994.5操作员管理模块 17147534.6出库入库记录模块 18222405系统测试 19132265.1测试用例 1960615.2测试方法 20298745.3系统功能测试 2066306系统环境 25120826.1软件环境 25295726.2最低硬件环境 258471结论 2621305参考文献 27摘要随着农业的高速发展。农资企业规模不断的扩大。管理是信息技术工作中的一个极为重要的内容,传统人工的方式往往工作效率低、工作强度大、易出错。为了满足现代企业管理的需求,进行对农资管理系统的开发,实现信息化、高效化的农资管理。系统的设计使采用MVC的设计模式,前台使用JSP技术,后台使用JAVA语言。系统实现了是对农资产品的出库、入库、库存信息等的管理。本文介绍了系统开发过程中应用的关键技术。农资管理系统的开发显著提高农资管理人员的工作效率。农资管理系统的操作简单,只需要简单鼠标点击操作就能完成产品的出库和入库,大大的节省了人力和工作效率。可以通过库存列表,随时的查看仓库里面的库存信息,使得对农资的管理更加高效化,合理化关键词:农资,系统开发,管理系统,JSP1绪论1.1课题的意义在全面信息化的时代,信息化的对库存信息进行管理与传统人工管理方式有着巨大的优势,如:安全性高、操作方便、不易出错等。相比以往传统的人工管理方式,因为整个过程都需要人工操作,所有往往存在着各种各样的问题,操作的过程复杂,工作的效率低下,已经不适合当前的信息化时代,所以实现全面信息化、自动化管理,提高工作效率已经势在必行。企业要想抓住在市场上未来发展的优势,必须淘汰传统的人工记录的方法,进行科学得信息化的管理。农资管理系统的开发,可以更好的对农资进行科学的管理,提供了对农资的类型,数量,批号等信息的全方面的科学管理。用户可以随时查看农资的库存详细信息和出库入库的记录,快速的农资的信息进行管理和维护。极大的提高了资源的利用率,方便快捷的对各种信息进行管理和维护,极大的减少人工的成本。1.2可行性分析农资管理系统可以用最少的时间进行对农资产品实现管理和维护。技术可行性:农资管理系统使用eclipse作为系统的开发工具。农资管理系统的前台页面使用html+css等技术,后台通过servlet来对所使用的MySQL数据库进行操作。开发语言选择使用Java,来实现农资管理系统的业务,如库存信息管理和农资产品的入库出库操作模块,农资信息管理模块和入库出库记录查询模块。服务器选择使用开源免费的tomcat服务器。操作可行性:农资管理系统页面整齐,系统的功能都是通过鼠标来进行的,实际工作起来方便快捷。由于计算机的大面积普及,现在基本上大部分人都具备一些简单的操作电脑的知识,因此只需要对使用者进行简单系统使用方面的培训学习就能完全熟练使用农资管理系统对农资产品进行全面细致的管理。经济可行性:农资管理系统采用的是JSP技术,使用工具如:eclipse,Mysql等都是开源的,因此不需要资金的投入,所以系统的开发需要考虑资金的问题,因为系统是自己独立完成,人力方面也不需要考虑。1.3课题所需的关键技术关键技术:JSP技术可以进行动态web资源的开发,可以通过在前台的html页面中添加Java的代码,来实现网页当中的动态资源。JavaScript运行在浏览器上的脚本语言,是一种动态脚步语言。JavaScript的解释器就是其引擎。它的主要功能是给HTML网页的增加各种各样的动态的功能,使网页更加漂亮美观,增加用户的浏览体验。Tomcat主要是用来装载servlet和JSP的web容器,也是一种Web服务器,包含了Web服务器的部分功能,用来对服务器上的HTML文档提供访问权限控制。2需求分析在项目开发中,用户的需求是软件开发的核心。因此,需要对系统进行需求分析需求分析是系统开发的首要步骤,直接影响系统整体性能和功能的最主要的步骤[5]。系统的需求分析主要是对系统的三个方面进行分析:功能分析、用例分析、性能分析。合理的需求分析可以提高系统开发的开发效率,大大减少系统开发的时间和资金。2.1功能分析登录验证界面:为了确保农资管理系统信息的安全性,用户必须在对应的输入栏内填入正确的内容才能正常访问。在对用户填写的内容开始检测,当检测输入的内容和数据库中的用户表内容相同时,就可以正常的访问系统。当填入的内容与用户表内容有出入时,系统会对警告用户其输入的信息有误,并提醒输入无误的信息。农资入库的管理功能:操作员可以通过农资产品入库的菜单项,通过输入农资产品的产品信息来进行农资产品的入库操作,如果库存中已经存在,也可以直接通过库存列表进行入库操作。账号管理功能:当管理员用户进入系统时,跳转的是管理员的页面,能够进行查询操作员的账号信息,通过选中账号可以对其信息进行维护,主要包括添加新的操作员账户,查看操作员的账户信息,对账号列表里面的账号进行注销和更新密码等功能。出库入库记录查询:操作员通过选择出库记录查询的菜单项可以查看农资产品的出库入库的日期时间、操作账号、数量等信息。2.2用例分析当使用图形化来对整个的系统的需求开始分析时,通常会把用例图来作为描述系统和其子系统的图形化的选择。通过用例图可以对系统的模型进行更清晰的描述,用例图可以很好的显示出用户的需要和用户的群体,有利于提高开发的工作效率,更快的实现这些业务。2.2.1管理员用例农资管理系统分为系统管理员和操作员两种不同种类的用户角色。管理员模块的主要功能包括查看和修改库存信息,添加和删除操作员账号,农资库存的操作记录查询等功能,如图2.2.1所示。图2.2.1管理员用例图2.2.2操作员用例操作员在登录后可以进行农资产品进行管理,比如可以对农资产品进行入库、出库。查看库存中的所有产品。系统会自动记录操作员的操作信息。图2-2操作员用例图模型:进行入库操作进行入库操作操作员操作员进行出库操作进行出库操作库存信息查询库存信息查询记录操作员的操作记录记录操作员的操作记录图2.2.2操作员用例图2.3性能分析系统在设计的过程中要考虑到有些用户没有接触过类似的系统,所以系统的界面要设计的简洁明了,系统的功能方面要设计的操作简单,而不是把时间浪费在熟悉系统上,让用户能够快速的上手使用。农资管理系统的数据库对信息处理的响应时间设为秒级,数据库的响应时间变短短,这样所拿到最新的数据,更加的全面准确。系统对操作员和管理员进行权限区分,来保障系统安全性。2.4系统数据分析在次结构的设计过程当中,E-R模型法是最常见的设计方法。该系统有三个实体,即用户、产品、管理。每个实体被不同的属性所描述,本章节通过使用E-R图来划分实体的属性。用户实体拥有四个具体属性分别为:用户的ID、用户名、用户的密码、账号的权限标记。下图用户的E-R图:图2.4用户E-R图管理有出库、入库、查询、修改、删除五个属性。其E-R图如图2.5所示。修改查询入库修改查询入库删除出库删除出库管理管理图2.5管理E-R图产品具有产品的名称、编号、类型、数量四个属性。其E-R图如图2.6所示。产品类型产品编号产品类型产品编号产品名称产品数量产品名称产品数量产品产品图2.6产品E-R图3概要设计3.1系统结构设计农资管理系统结构分为三个模块:登录模块、操作员模块和管理员模块。当用户登录系统成功时,系统会进行用户权限标识的检测,不同的权限标识进入的功能页面也有不同。当用户权限标识是2时进入的是管理员页面;否则进入的是操作员页面。农资管理系统登录模块:实现了系统的登录功能。操作员模块:操作员用户可以通过系统对产品实现出库、入库、库存信息查询等功能。管理员模块:管理员用户可以进行更新新的操作员用户和对操作员用用信息的维护、查询出库入库记录等功能。系统模块图如下图3.1所示。农资管理系统登录管理员操作员登录管理员操作员登录账号登录账号添加操作员账号操作员账号管理操作记录查询产品入库库存查询产品入库添加操作员账号操作员账号管理操作记录查询产品入库库存查询产品入库图3.1农资管理系统的组织架构3.2操作流程设计当进行使用农资管理系统的操作时,用户需要输入的登录系统所需要的信息才可以进行系统的登录,登录模块会判断用户输入的内容是否正确,如果输入的信息无误,则进行判断账号权限来认定账号是操作员或管理员,根据不同的账号类型进入不同的程序主页面。当用户点击窗体关闭时,程序终止。如下图所示。图3.2农资管理系统的操作流程3.3功能性分析农资管理系统主要有三个页面所组成:登录页面、操作员页面和管理员页面。登录页面主要是实现系统的登录和用户权限的验证。操作员窗体中设计出库、入库和库存信息查询功能。管理员窗体中设计出库入库操作记录查询、添加操作员账号、操作员账号查询管理和库存信息管理功能。登录页面:在使用时,首先需要进行系统来进行登录,在对应在文本框内输入所需要的数据。通过把文本框内的数据和数据库中相应的用户表相比照,通过对比之后,当输入的内容正确,会根据用户类型登入对应的窗口页面。如果输入的账号密码不正确,则显示账号或密码错误。农资入库功能:操作员登录成功后可以进行入库的操作包,操作员输入农资产品的相关信息后点击入库,系统就能在数据库中更新库存表,同时系统会记录进行入库操作的账号,时间,农资产品的信息。库存信息管理功能:操作员登录成功后能够进行查询库存的农资产品的详细信息和出库的操作,通过进行搜索查询具体的农资产品信息来找到需要进行出库的目标,来进行出库操作,同时系统会记录进行出库操作的账号,时间,农资产品的信息。操作员账号添加功能:作为管理员登录时,可以单击菜单项“添加操作员”来添加操作员帐户,管理员单击“添加操作员”选项后,可以在相应的输入字段中输入要添加的帐号和密码。输入完成之后点击添加,系统可以更新数据库中的用户表。账号信息管理功能:作为管理员登录时,单击菜单项“操作员列表”查看所有操作员帐号信息,并对账号的信息进行维护。管理员可以选中操作员的账号可以对其密码进行更新,删除账号等操作。入库出库记录查询功能:操作员在进行入库和出库操作时,系统会自动记录操作员的操作信息和时间,在数据库中更新入库记录表和出库记录表。3.4系统数据库设计农资管理系统所包含的数据库有四种类型相关的数据表:(1)用户表里面的主键是账户ID。Zh表示账户的名称,mima表示登录所需要的口令、weight表示用户的权限等级。如下表所示。表3.4.1用户信息表列名说明数据类型标注Id账户编号Int主键zhanghu账户的名称varchar不能为空mimaweight登录口令权限标识1管理员||2操作员VarcharInt不能为空不能为空(2)库存表里面的关系主键是库存ID。库存表分为五个字段:ID、chanpin、pinzhong、biaohao、number。分别代表着库存ID、产品名称、所属类别、产品编号、数量、入库日期、入库时间,长度默认。如表3.2所示。表3.4.2库存表列名说明数据类型标注Id库存编号Int主键chanpin产品名称varchar不能为空pinzhong产品分类varchar不能为空Bianhao产品编号varchar不能为空(3)库存表里面的关系主键是出库ID。库存表分为五个字段:ID、nianfen、mingcheng、zhanghao、geti。分别代表着出库ID、入库时间、操作账号、产品名称、产品数量。如表3.4.3所示。表3.4.3入库时间表列名说明数据类型标注Id库存编号Int主键nianfen入库日期datatime不能为空mingcheng产品名称varchar不能为空zhanghao操作账号varchar不能为空geti入库数量Int不能为空(4)库存表里面的关系主键是入库ID。库存表分为五个字段:ID、nianfen2、mingcheng2、zhanghao2、geti2。分别代表着入库ID、出库日期、操作账号、产品名称、产品数量。如下表所示。表3.4.4出库时间表列名说明数据类型标注Id2库存编号Int主键Nianfen2出库日期datatime不能为空Mingchen2产品名称varchar不能为空Zhanghao2操作账号varchar不能为空Geti2出库数量Int不能为空4详细设计4.1用户登录模块农资管理系统中有两个不同的角色。用户需要在输入栏内输入相应的信息,系统会判断所输入内容与数据库用户表中的内容是否对应一致,当输入内容正确,则可以成功的登录系统,系统会对输入的账号的权限标识进行检测。如果用户权限标识为2,则进入管理员界面,否则进入操作员页面。用户的信息需要对数据库的连接才可以进行读取,因此需要对数据库进行连接。系统登录页面没有用户注册的功能,管理员账号登录所需的用账号信息已经存在用户表中,操作员的账号则通过管理员来进行进行添加的。如图4.1系统的登录页面:图4.1登录界面登录界面的核心代码:Stringzhanghu=request.getParameter("zhanghu");
Stringmima=request.getParameter("mima");intbiaojihe=USERDao.selectBY(zhanghu,mima);if(biaojihe>0){USERyonghubiao=USERDao.selectBY(zhanghu,mima);HttpSessionsession=request.getSession();if(yonghubiao.Weight()==2){session.setAttribute("isAdminLogin","1");response.sendRedirect("guanli.jsp");}else{response.sendRedirect("caozuo.jsp");}}else{PrintWriterout=response.getWriter();out.write("<script>");out.write("alert(‘密码错误!’);");out.write("location.href=‘denglu.jsp’");out.write("</script>");out.close();}4.2入库模块农资管理系统的入库方式有两种形式:如果库存中没有需要入库的产品时,选择入库的菜单项,通过输入产品的参数来进行添加新的产品。如在库存中已经存在的产品时,可以在农资库存列表里选择查询需要入库的产品选择进行直接入库的操作。入库图片如图4.2:图4.2对现有的产品入库界面对新的农资产品入库时,操作员需点击页面上的农资产品入库的选项。对新的产品进行入库操作。在输入栏中输入所有入库的产品的信息,产品的信息填写完成,点击入库的按钮,系统会自动将算填写的产品的信息更新到库存信息的数据表中。如下图图4.3新的产品入库入库功能的核心代码:ID、nianfen、mingcheng、zhanghao、getiStringchanpin=request.getParameter(chanpin");
Stringpinzhong=request.getParameter("pinzhong");Stringbiaohao=request.getParameter("biaohao");Stringgeti=request.getParameter("geti");KUCUN_USERu=newKUCUN(name,fenlei,biaohao,number);intblanc=USERDao.selectBY(u);if(blanc>0){PrintWriterout=response.getWriter();out.write("<script>");out.write("alert(‘入库成功!’);");out.write("location.href=‘caozuo.jsp’");out.write("</script>");}4.3出库模块农资管理系统出库方式是对库存表中已经有的产品进行出库的操作。如果在出库时输入出库的数量大于库存中的产品数量时,系统就会自动显示出库存数量不足。出库时输入出库的数量小于库存中的产品数量时,则可以正常出库,库存中剩余的产品数量也会自动更新。图4.4出库界面出库界面的核心代码:publicstaticKUCUN_USERselectBy[int,id]{KUCUNcommun=null;ResultSetnombre=null;Connectioncommun=Basedao.getconn();PreparedStatementptade=null;try{Stringsql="select*fromKUCUNwherenumber=?";ptade=conn.prepareStatemeng(sql);ptade.setInt(1,id);nombre=ps.executeQuery();while(nombre.next()){blanc=newKUCUN{nombre.getInt("ID"),nombre.getInt(geti");}}}catch(SQLexceptioncate){cate.printStackTrace();}finally{Basedao.closezli(commun,nombre);}}returnblanc;}intgeti1=request.getParameter("geti");intgeti2=request.setParameter("geti");geti2.setNumeber(geti2.getNumeber-geti1.setNumeber);KUCUN_USERcate=newKUCUN_USER("number");USERDao.selectBY.update(cate);response.senRedirect("admin_cateselect");4.4添加操作员模块管理员登录农资管理系统后在管理列表中选择增加操作员帐号选项,可以增加新的操作员账号,在添加账号的过程中需要输入需要注册的用户名,点击添加选项后。系统会将账号的信息添加到用户表中。如下图4.5所示。图4.4添加操作员功能增加操作员帐号模块的核心代码:Stringmedecine=request.getParameter("name");
Stringprocedure=request.getParameter("pass");USERu=newUSER(medecine,procedure);intanticonstit=USERDao.selectBY(c);if(anticonstit>0){printWriterout=response.getWriter();out.write("<script>");out.write("alert(‘添加操作员账号成功!’);");out.write("location.href=‘index2.jsp’");out.write("</script>");}4.5操作员管理模块管理员登录农资管理系统后点击”操作员列表”的菜单项,能够审查所有的操作员账号,通过鼠标点击能够实现对操作员的维护和管理。比如更新新的账号密码,删除账号等操作。如下图4.5所示。图4.5操作员管理模块操作员帐号管理模块的核心代码:publicstaticUSERselectBy[int,id]{USERmasseuse=null;ResultSetansthesiste=null;Connectioncommun=Basedao.getconn();PreparedStatementpraticien=null;try{Stringsql="select*fromUSERwherenumber=?";praticien=conn.prepareStatemeng(sql);praticien.setInt(1,id);ansthesiste=praticien.executeQuery();while(ansthesiste.next()){masseuse=newUSER{ansthesiste.getInt("ID"),ansthesiste.getString("varchar");}}}catch(SQLexceptionmasseuse){masseuse.printStackTrace();}finally{Basedao.closezli(ansthesiste,ps_1);}}returnmasseuse;}intnumber=request.getParameter("number");USERmasseuse=newUSER("number");USERDao.selectBY.update(masseuse);response.senRedirect("admin_cateselect");4.6出库入库记录模块操作员在进行入库和出库的操作时,系统会自动记录操作的时间,操作的产品名称以及出库入库的数量,将这些记录分别添加到入库记录表和出库记录表之中,这些操作的记录可以通过登录管理员账号来进行查看。如图4.6,4.7所示。图4.6入库记录模块图4.7出库记录模块5系统测试系统测试是软件设计过程中最后的一部分,检测系统是否可以运行,是否存在漏洞等等,绝对这软件最终的质量。一套严谨的、规范的、完善的测试过程将大大提高软件的质量、可信度、可靠性,降低软件的出错率,降低用户风险系数[13]。本次使用的是黑盒测试。5.1测试用例测试用例按照功能模块来进行设计,包括登录,入库,出库,修改密码,添加账号等等。(1)登录测试用例,为了验证登录的安全性,测试账号和密码采用多种不同的方式组合输入以观察最终的结果。如下图所示:表5.1用户登录模块测试表测试编号测试功能估计结果最终结果1未输入用户名与和登录口令提醒填写登录信息提醒填写登录信息2未输入登录口令提醒登录口令提醒登录口令3未输入用户名提醒填写用户名提醒填写用户名4用户名错误,登录口令正确提醒填写内容不对提醒填写内容不对5用户名正确,登录口令错误提醒填写内容不对提醒填写内容不对6全部正确顺利登录顺利登录(2)出库用例测试,对产品进行出库操作,当输入的出库数量小于库存当中数量商品,点击出库可以成功的出库,库存中的产品信息也会自动的进行更新。当进行出库时,输入的出库的数量大于库存中的产品数量时,点击出库系统会自动弹出警告框提示剩余库存不足,出库失败。如下表所示。表5.2出库模块测试表测试编号测试功能测试操作估计结果最终结果1出库数量比库存多出库数量:999库存:99提示库存不足提示库存不足2出库数量比库存少出库数量:9库存:99入库后跳转库存信息页面入库后跳转库存信息页面3出库数量为0出库数量:0库存:99没有任何响应没有任何响应5.2测试方法功能测试根据系统的操作方法和功能方案,进行测试系统的功能可否满足用户的需求,通过测试用例的分析,通过手工测试的方法对系统的功能进行功能测试。5.3系统功能测试5.3.1登陆模块测试:在进入农资管理系统时,第一个页面是登陆账号的界面,在根据输入框提示输入需要的内容,如果用户的内容和数据库对比正确,这时点击登录系统会检测输入的账号的权限标识,来自动的进入的与账号权限相对应的界面。当用户的输入的内容不正确,则会弹出提示请输入登录信息有误。模块之下的测试用例图如下:图5.1登录错误账号和密码如果输入栏没有输入内容,则会提示用户对空的输入栏进行输入。图5.2登录账号和密码为空图5.3登录密码为空图5.4登录账号为空5.3.2出库模块测试:操作员在进行出库操作时,在库存列表里面选中需要出库的产品,然后在输入栏中输入的出库数量,当比库存中的数量大时,点击出库时会出库失败,会弹出库存不足的提示框,无法进行出库。该模块之下的测试用例图如下:图8.5出库的数量比库存中的数量多当输入的出库的产品的的数量比库存中商品数量少的话,则成功出库。图8.6出库的数量比库存中的数量少当产品成功出库,库存的信息会相的对应进行更新,99数量的库存在通过8数量的出库操作后,剩余库存自动更新为91。图8.7出库的数量进行更新6系统环境6.1软件环境操作系统:Windows7/8/10系统。运行库:Java8及以上版本。数据库:Mysql8级以上版本。6.2最低硬件环境硬盘空间:50G以上。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年升级版:外墙清洗与保养合同协议(2024年订制)2篇
- 2024年度重庆二手房屋买卖合同终止义务3篇
- 城市污水处理工程勘察设计招标合同三篇
- 二零二四年度深圳智能家居产品研发与销售合同3篇
- 2024年度软件开发合同:C公司定制D公司企业级协同办公软件协议3篇
- 2024年度建筑施工工程进度报告与分析合同3篇
- 班级同伴互助学习的推广计划
- 地产开发合同三篇
- 2024年度广告发布合同的广告内容与发布平台2篇
- 二零二四年度软件开发项目合作框架协议3篇
- 《现代汉语》(增订6版)笔记和课后习题(含考研真题)详解
- 卫生院中药饮片处方点评点评细则和汇总表
- 《港口物流》课程教学大纲
- 浪河特大桥钢栈桥计算书(6m宽桥面)最新
- DFMEA全解(完整版)
- 搞笑小品剧本《家长驾到》台词完整版 金牌喜剧班李海银高海宝盛伟
- 《天然药物新药研究指导原则(征求意见稿)》
- 徕卡D LUX5中文使用说明书
- 教学管理系统业务流程图
- 150万吨直接还原铁项目可研报告
- 桃花源记剧本
评论
0/150
提交评论