1、厚德树人 笃学致用 ***************************************************** 遵义师范学院毕业论文(设计) 题目: 鲜花店业务管理系统 系别 计科系 专业 计算机科学和技术 年级 级 姓名 罗泽丽 学号 指导老师 王亚 4 月 16 日 目 录 目 录 1 摘 要 3 1 引言 1
2、 1.1 背景介绍 1 1.2 系统功效概述 1 1.3 系统开发环境 1 1.3.1 开发环境介绍 1 1.3.2 开发环境搭建 1 1.3.3 系统实现模式 1 2.1 可行性研究 2 2.1.1 经济可行性 2 2.1.2 技术可行性 2 2.2 系统需求分析 3 2.2.1 功效需求分析 3 2.2.2系统性能需求 3 3 系统设计 4 3.1 系统功效设计 4 3.1.1 总体设计 4 3.1.2 具体设计 5 3.2 系统用例分析 6 3.2.1 用例分析 6 3.2.2 用例具体说明 7 3.3 数据库需求分析 8 3.4 创建数据库
3、12 4 系统实现 18 4.1 销售员功效模块实现 18 4.1.1 登录模块实现 18 4.1.2 鲜花销售模块实现 21 4.2 管理员功效模块实现 23 4.2.1 系统管理模块实现 23 4.2.2 鲜花进货模块实现 27 4.2.3 鲜花库存模块实现 29 4.2.4 财务管理模块实现 31 5 系统测试 35 5.1软件测试意义 35 5.2 程序测试 35 5.2.1 测试关键性及目标 35 5.2.2 测试步骤 36 5.2.3 测试关键内容 36 5.3 白盒测试 37 5.3.1 集成测试 37 5.3.2 功效测试 37 5.4 黑
4、盒测试 38 5.4.1 主页登录测试 38 5.4.2 站内搜索测试 38 5.5 测试结果分析 39 结束语 40 致谢 41 参考文件 42 鲜花店业务管理系统 摘 要:现在,科学技术飞速发展,计算机技术已经成为各行各业必不可少工具了,数据信息工处理和传输正在增加,步入信息化时代,这使得深入开发研究显得尤为迫切。 伴随鲜花店规模发展不停扩大,相关鲜花多种信息量也在成倍增加。鲜花店需要对鲜花信息进统计分析。而大型鲜花店管理系统功效过于强大而从降低了鲜花店工作效率。鲜花店管理系统最关键特点是能够实时和正
5、确控制店内销售情况。用户消费要求是期望在鲜花店购物中能基础上全部能购得所需鲜花,而且还要既确保鲜花质量还要享受优质,方便服务。 本系统分析了软件开发背景以过程;首先介绍了软件开发环境,其次软件具体设计过程:数据库设计、各个模块设计和实现,和具体界面设计和功效。介绍了鲜花店管理系统需求分析、总体设计和具体设计过程,并在此基础建立了后台数据库。然后,介绍一个在Web环境下,基于B/S三层结构模式,利用JSP技术关键功效模块及其相关实现技术。和系统有哪些功效模块组成,每个功效模块实现功效全部有哪些。 关键词: 鲜花店管理系统; B/S;数据库; JSP 1 引言 1.1 背景
6、介绍 伴随鲜花店快速发展,早期售货员站柜台形式早已不能满足现有销售业发展,其经营管理也变得越来越复杂,这么就迫切地需要引入新管理技术。 鲜花店形态含有很多优点,但它仍存在着零售业企业共有落后一面,比如:不能有效地管理每种鲜花,轻易出现营业差错,收款结算速度慢,管理人员对立即传输资料要求一直得不到满足等等。伴随鲜花店形态高速发展,原始人工管理已无法应对这复杂市场。在这么背景下,只有依靠现代化计算机信息处理技术来管理鲜花店,快速反应出鲜花进、销、存等情况和多种反馈信息分析,从而减轻劳动,强度才能使管理人员快速对市场改变做出对应决议,加紧鲜花店经营管理效率。 1.2 系统功效概述 针对行业发
7、展现实状况,综合应用所学知识,设计鲜花店综合管理系统。本系统能够实现采购、销售、仓储等鲜花店基础业务综合管理,还能够实现财务综合统计,为鲜花店现代化管理提供便利和可靠保障。 依据不一样业务步骤,将系统进行不一样功效模块划分,每个模块各司其职,完成各自业务管理任务。如鲜花销售模块能够进行鲜花销售和盘点当日销售信息等,财务管理模块能够查询鲜花店综合营业情况,查询销售和进货情况等。它们相互之间共享营业数据,各自又有不一样展现和用户接口形式。表现了功效灵活实现。 1.3 系统开发环境 1.3.1 开发环境介绍 本系统使用MyEclipse为开发工具,使用Tomcat为服务器,使用Interne
8、t Explorer为默认浏览器。 1.3.2 开发环境搭建 安装JDK以支持Java开发环境,整合MyEclipse和Tomcat服务器,有一个统一便利集成开发环境。 1.3.3 系统实现模式 本系统采取B/S结构,使用JSP/Servlet技术,前台使用RIA富用户端ExtJS框架,整体上采取MVC模式来实现。下面具体介绍这些概念。 (1) 在网络程序中,有C/S结构和B/S结构之分,其中C/S是用户端(Client)/服务器(Server)模式,这种模式用户端中需要安装一个用户端软件,用户端软件负责和服务器进行数据交换。B/S是浏览器(Browser)/服务器(Server)模
9、式,用户端只需有一款浏览器就能够和服务器实现数据交互,Web应用程序就是B/S模式。 (2) JSP全称是Java Server Pages,是由Sun Microsystems企业提倡、众多企业参与建立开发一个动态网页技术标准。JSP技术以Java语言作为脚本语言(Java是一个成熟跨平台程序设计语言)。JSP含有很突出跨平台性、开放性和高效性。Servlet是一个Java编程语言类,用来扩展经过响应-请求编程模型服务应用程序访问服务器功效。尽管Servlet能够响应任何类型请求,但它们通常见来扩展由服务器支持应用程序。 2 可行性分析和需求分析 2.1 可行性研究 可行性研究,是指
10、在调查基础上,经过技术分析、市场分析、财务分析和国民经济分析,对多种投资项目标技术可行性和经济合理性进行综合评价。 2.1.1 经济可行性 作为鲜花店管理系统,因为数据量相对较,而且数据处理上不是很复杂,所以从项目开发角度来说其开发周期较短,它开发成本不会很高。因为系统数据量相对较少,对计算机性能要求相对来说也不是很高,所以在其管理上所需费用要相对较少。从本系统投入费用、周期等方面来看,本系统全部是可行。 2.1.2 技术可行性 伴随互联网快速发展,基于InternetB/S架构应用程序逐步被大家所熟知。基于JAVAEE规范系统设计实现已很成熟。是能够很好实现B/S架构软件。 不
11、管是从技术方面还是经济方面分析情况全部能够看出,开发鲜花店管理系统,实现鲜花店管理计算机化是很可行,也是必需。因为使用计算机化鲜花店管理系统能够很有效能够提升工作效率,改变现在鲜花店管理工作现实状况 2.2 系统需求分析 所谓“需求分析”,是指对要搞清楚问题要求,处理问题进行具体分析,包含需要输入什么数据,最终应输出什么,要得到什么结果。在软件工程当中“需求分析”就是确定要计算机“做什么”。 2.2.1 功效需求分析 依据鲜花店实际运行情况进行分析,通常它们没有独立进货,仓库,和销售鲜花全部是在同一场所完成,我们即根据这一实际情况进行系统设计。鲜花店基础业务情况有进货、销售、库存等,另
12、外系统中还要设置用户、鲜花、权限等必需系统信息,能够查看鲜花店运行财务情况。 依据鲜花店业务步骤,必需要设计实现模块有鲜花销售模块,以实现鲜花销售基础业务。采购进货模块,以实现鲜花采购进货基础业务。库存管理模块,实现鲜花综合管理业务。另外能够添加辅助功效模块,系统管理和财务管理,分别实现对系统维护和鲜花店营业情况分析查询。 2.2.2系统性能需求 实用性:方便可快捷实现鲜花在采购、销售和库存等方面信息操作。整个系统由系统管理员集中管理,实现鲜花信息统一编码,能够促进系统管理员并有效降低成本,工作效率和繁琐工作量。 安全性:系统采取不一样权限等级,不一样用户有不一样操作权限,实现了很好安
13、全认证。 易操作性:本系统在销售、鲜花管理等关键步骤,不需输入任何复杂信息,管理员只需经过浏览器便可进行数据查询、录入和修改等工作。 易维护性:能够使用工具导出数据库数据,方便维护系统,清空阶段性数据。实现系统数据处理轻负荷。 适应性:该系统对于软硬件要求并不是趋于高级,能实现广泛应用。本系统是B/S模式,能够实现同时让多个用户访问和操作。同时支持增加鲜花供货商,动态添加基础信息等全部能够随时添加。 3 系统设计 3.1 系统功效设计 3.1.1 总体设计 (1)设计思想: (1)系统分成多个相对独立模块,但这些模块全部进行集中式管理。每个模块全部能够完成自己特定功效,如销售、
14、财务、进货等等。 (2)分层模块化程序设计思想,整个系统采取模块化结构设计。作为应用程序有较强扩展性和可操作性。如程序中操作数据库时,在DAO层中操作数据库完成CRUD操作,在Util层中获取数据库连接。这么使程序便于维护拓展,层次结构分明。 (3)合理数据流设计,在应用系统设计中,相对独立模块间以数据流相互连接,方便系统运行,各模块间耦合性较低,提升系统安全性。 (2)设计标准: 为了使本系统功效齐全完备,从而满足用户实际需要,最大程度提升软件质量,操作简便,在设计开发过程中遵照以下标准: (1)正当性标准:依据鲜花店实际工作情况,进行诸如鲜花进货、销售等工作。 (2)实用性标准
15、适合鲜花信息管理工作实际需求,尽可能预留空间,方便扩充功效,并能够处理部分特殊情况要求。 (3)正确性标准:对输入相关资料建立检错机制,立即报错,使用户能够立即正确输入正当资料(如:类型匹配,长度不超限等)。 (4)易操作标准:要求设计系统功效齐全,操作方便,接口友好,必需地方进行提醒。 (5)安全性标准:该系统管理员含有可修改密码权限,设置登录账户,不一样用户类型有不一样操作权限。 3.1.2 具体设计 本系统除了登录模块外,主页中共实现五个完整功效模块,分别是财务管理、鲜花销售管理、鲜花进货管理、鲜花库存管理和系统管理。系统依据不一样用户角色又有不一样功效模块表现,其中销售人员
16、功效结构图图3-1所表示: 图3-1 销售人员功效结构图 管理员对应系统功效结构图,图3-2所表示。 图3-2 系统功效结构图 (1)财务管理模块包含营业综合统计、收银报表查询、结账单据查询、进货报表查询、进货单据查询。财务管理模块中能够依据设定时间段,查询对应营业信息。 (2)鲜花销售模块包含销售鲜花、今日盘点。鲜花销售模块中系统自动将全部鲜花根据类别分类显示,销售人员能够选定鲜花或直接输入鲜花编号进行销售操作,另外还能够查看当日盘点信息。 (3)鲜花进货模块包含采购进货、今日盘点。鲜花进货模块中会显示全部鲜花,
17、采购人员可选定鲜花进行采购操作,可查看当日进货盘点信息。 (4)鲜花库存模块包含库存预警、库存信息查询、损溢处理、损益查询。鲜花库存模块中可查看库存预警,库存具体信息。进行库存损溢操作,查看损益信息等。基于鲜花店运行实际情况不设置鲜花出库功效。 (5)系统管理模块包含用户设置、鲜花管理、供货商管理、鲜花类别管理、职员管理、权限管理、登录日志、系统信息。系统管理模块中能够设置用户信息,鲜花、鲜花类别、供货商等信息。能够添加职员并设置职员权限。系统会自动查询出登录日志和设定系统信息并做出对应展现。管理员能够添加账户类型,并设置对应权限。 3.2 系统用例分析 3.2.1 用例分析 用例是
18、对包含变量在内一组动作序列描述,系统实施这些动作,并产生可观察到系列结果。我们能够了解为,用例是参与者想要系统做某件事情。 依据用例和角色概念,经过对鲜花店管理系统需求了解,能够得到图3-3所表示分析结果: 图3-3 系统用例图 在图3-3中像人一样图形就是角色,经过对鲜花店管理系统需求分析可知系统默认有管理员角色,管理员拥有全部系统权限,它能够添加其它用户和设置其权限;图中椭圆代表是用例(这里分析是系统整体上功效);中间箭头将角色和用例连接起来,代表是对应角色能够使用用例,有一个箭头就代表对应角色能够使用用例,没有箭头则表示对应角色不能使
19、用该用例。 3.2.2 用例具体说明 光有用例分析是不够,用例只是程序功效界定,需求概述也仅仅对每个功效提了个名字,想要实现系统功效还必需知道每个功效具体内容,深入了解用户在完成系统某个功效时需要做些什么事。下面就让我们来看看图中用例具体说明。 (1)系统登录 全部用户全部能够登录,系统会自动加载和其权限对应主界面。 (2)财务管理 能够依据设定时间段查看鲜花店整体营业情况,查看这一时间内销售或进货报表,查看某一结账单据具体等等。 (3)鲜花销售 能够输入鲜花编号或鲜花树中选择鲜花,进行销售鲜花操作,盘点当日销售情况。 (4)采购进货 能够输入鲜花编号或鲜花树中选择鲜花,进
20、行采购鲜花操作,盘点当日采购情况。 (5)鲜花库存 查看库存预警,鲜花少于一定数量则自动显示在预警页面中。查看库存具体信息。进行库存鲜花损溢操作,查看损益信息等。 (6)系统管理 设置系统运行必需信息,添加鲜花、鲜花类别,供货商信息,添加职员设置权限,查看登录日志,查看系统信息等。 3.3 数据库需求分析 数据库在一个系统中占有很关键地位,数据设计优劣将直接对应用系统效率和实现效果产生影响。合理数据库结构设计能够提升数据存取效率,确保数据完整性和一致性,从而有利于程序实现。设计数据库系统时应该首先充足了解系统需求各个方面需求,包含现有和未来可能增加需求。 在仔细分析和调查系统
21、基础上,针对鲜花店管理系统需求,经过对鲜花店运行步骤和数据进行分析,设计以下所表示数据项和数据结构: 用户信息:包含用户名称、系统启用时间、用户地址、联络电话、营业时间。其对应实体属性图图3-4所表示: 图3-4 用户信息实体属性图 权限信息:包含用户类型编号、用户类型名称、财务管理权限、鲜花销售权限、鲜花进货权限、鲜花库存管理权限、系统管理权限。(其中TRUE=1和FALSE=0)其对应实体属性图图3-5所表示: 图3-5 权限信息实体属性图 职员信息:包含职员工号、职员姓名、职员密码、用户类型。其对应实体属性图图3-6所表示
22、 图3-6 职员信息实体属性图 日志信息:包含日志编号、职员工号、登录时间、退出时间、登录IP。其对应实体属性图图3-7所表示: 图3-7 日志信息实体属性图 供货商信息:包含供货商编号、供货商名称、联络人、联络电话、联络地址。其对应实体属性图图3-8所表示: 图3-8 供货商信息实体属性图 鲜花类别信息:包含类别编号、类别名称、类别说明。其对应实体属性图图3-9所表示: 图3-9 鲜花类别信息实体属性图 鲜花信息:包含鲜花编号、鲜花名称、单位、类别、成本价、单价。其对应实体属性图图3-10所表示:
23、 图3-10 鲜花信息实体属性图 鲜花库存信息:包含鲜花编号、库存数量。其对应实体属性图图3-11所表示: 图3-11 鲜花库存信息实体属性图 损溢信息:包含损溢编号、鲜花编号、供货商、损溢数量、损溢标注、损溢说明、损溢日期、操作员。其对应实体属性图图3-12所表示: 图3-12 损溢信息实体属性图 销售鲜花信息:包含账单号、鲜花编号、销售数量、应收金额、折扣率、实收金额、销售日期、操作员。其对应实体属性图图3-13所表示: 图3-13 销售鲜花信息实体属性图 采购鲜花信息:包含账单号、鲜花
24、编号、供货商、进货数量、支付金额、进货日期、操作员。其对应实体属性图图3-14所表示: 图3-14 采购鲜花信息实体属性图 3.4 创建数据库 我们选择MySQL数据库,首先创建鲜花店管理系统数据库market,创建数据库SQL语句为:create database market default character set utf8;,并使用目前数据库“use market”开始创建表: 其中,用户信息表如表3-1所表示,表名user,主键user_name。 表3-1 用户信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 use
25、r_name varchar 40 P NOT NULL 用户名称 sys_use_time datetime -- -- NOT NULL 系统启用时间 user_addr varchar 40 -- NOT NULL 用户地址 user_phone varchar 20 -- NOT NULL 联络电话 open_time varchar 20 -- NOT NULL 营业时间 用户信息表中存放系统鲜花店名称、地址、联络电话等信息。设定后它会自动加载到主页系统信息上,每次登录时会自动显示出来。 权限信息表如表3-2所表示,表
26、名userlimit,主键user_type_id。 表3-2 权限信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 user_type_id int -- P(auto) NOT NULL 用户类型编号 user_type_name varchar 20 -- NOT NULL 用户类型名称 cw_ctrl int -- -- NOT NULL 财务管理权限 sell_ctrl int -- -- NOT NULL 鲜花销售权限 buy_ctrl int -- -- NOT NULL 鲜花进货权限 stoc
27、k_ctrl int -- -- NOT NULL 库存管理权限 sys_ctrl int -- -- NOT NULL 系统管理权限 权限表中拥有某个权限TRUE=1,没有权限FALSE=0,向权限表中加入初始数据,定义用户类型“admin”管理员拥有全部权限,SQL语句为“insert into userlimit values(null,'admin',1,1,1,1,1);”。 职员信息表如表3-3所表示,表名person,主键per_id。 表3-3 职员信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 per_id int
28、 -- P NOT NULL 职员工号 per_name varchar 20 -- NOT NULL 职员姓名 per_password varchar 20 -- NOT NULL 职员密码 user_type_id int -- F(userlimit) NOT NULL 用户类型 系统默认使用职员工号进行登录,管理员能够添加职员设定其工号和密码,并设置其权限类型。这里向职员表中加入初始数据,加入管理员账户其SQL语句为“insert into person values(1111,'admin','1111',1);”,即管理职员号:11
29、11,密码:1111。这么启用系统后便能够使用此账户进行系统初始化操作了。职员使用其工号登录时,系统会自动依据其用户类型确定其权限,并加载对应UI。 日志信息表如表3-4所表示,表名log,主键log_id。 表3-4 日志信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 log_id int -- P(auto) NOT NULL 日志编号 per_id int -- F(person) NOT NULL 职员工号 login_time datetime -- -- NOT NULL 登录时间 logout_time date
30、time -- -- NOT NULL 退出时间 login_ip varchar 20 -- NOT NULL 登录IP 用户登录时系统会自动统计登录职员工号和其登录时间、登录IP地址等信息,当用户退出时系统会自动统计其时间并更新对应统计。 供货商信息表如表3-5所表示,表名provider,主键pv_id。 表3-5 供货商信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 pv_id int -- P(auto) NOT NULL 供货商编号 pv_name varchar 20 -- NOT NULL 供货商名称
31、 pv_per varchar 20 -- NOT NULL 联络人 pv_addr varchar 40 -- NOT NULL 联络电话 pv_phone varchar 20 -- NOT NULL 联络地址 设定供货商信息,在采购进货时会加载供用户选择,每笔订单中统计全部能够设定各自供货商信息。 鲜花类别信息表如表3-6所表示,表名category,主键cg_id。 表3-6 鲜花类别信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 cg_id int -- P(auto) NOT NULL 类别编号 c
32、g_name varchar 20 -- NOT NULL 类别名称 cg_state varchar 40 -- NOT NULL 类别说明 设定鲜花类别后,添加鲜花时候便能够依据鲜花类别添加,系统也会根据鲜花类别分类显示。 鲜花信息表如表3-7所表示,表名sp,主键sp_id。 表3-7 鲜花信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 sp_id int -- P(auto) NOT NULL 鲜花编号 sp_name varchar 20 -- NOT NULL 鲜花名称 sp_unit varcha
33、r 20 -- -- 单位 cg_id int -- F(category) NOT NULL 类别 sp_cost double -- -- NOT NULL 成本价 sp_price double -- -- NOT NULL 单价 添加鲜花后,进行进货、销售、损溢等操作时系统会自动将全部鲜花根据鲜花类别分类展示出来,供用户选择使用。 鲜花库存信息表如表3-8所表示,表名stock,主键sp_id。 表3-8 鲜花库存信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 sp_id int -- P(auto)
34、F(sp) NOT NULL 鲜花编号 stock_count int -- -- NOT NULL 库存数量 经过查询鲜花库存表能够查看库存预警信息和具体库存信息。表中没有冗余字段查询时候使用表联合查询来实现。 损益信息表如表3-9所表示,表名sy,主键sy_id。 表3-9 损溢信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 sy_id int -- P(auto) NOT NULL 损溢编号 sp_id int -- F(sp) NOT NULL 鲜花编号 pv_id int -- F(provider) N
35、OT NULL 供货商 sy_count int -- -- NOT NULL 损溢数量 sy_bz int -- -- NOT NULL 损溢标注 sy_state varchar 40 -- -- 损溢说明 sy_time datetime -- -- NOT NULL 损溢日期 per_id int -- F(person) NOT NULL 操作员 库存鲜花会有损溢情况,这里设置这个表,产生鲜花损溢时进行统计同时更新鲜花库存表。 销售鲜花信息表如表3-10所表示,表名sell,主键s_bill,sp_id。 表3-
36、10 销售鲜花信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 s_bill varchar 20 P NOT NULL 账单号 sp_id int -- P/F(sp) NOT NULL 鲜花编号 s_count int -- -- NOT NULL 销售数量 s_ys double -- -- NOT NULL 应收金额 s_rate double -- -- -- 折扣率 s_ss double -- -- NOT NULL 实收金额 s_time datetime -- -- NOT
37、 NULL 销售日期 per_id int -- F(person) NOT NULL 操作员 销售鲜花信息表使用联合主键“primary key(s_bill,sp_id)”,经过账单号和鲜花ID能够确定这个表中一条统计。经过这个表能够查询销售统计,形成财务销售信息,借此以辅助提升鲜花店决议水平。 采购鲜花信息表如表3-11所表示,表名buy,主键b_bill,sp_id。 表3-11 采购鲜花信息表 字段名 字段类型 长度 主/外键 约束 对应汉字名 b_bill varchar 20 P NOT NULL 账单号 sp_id int
38、 P/F(sp) NOT NULL 鲜花编号 pv_id int -- F(provider) NOT NULL 供货商 b_count int -- -- NOT NULL 进货数量 b_zf double -- -- NOT NULL 支付金额 b_time datetime -- -- NOT NULL 进货日期 per_id int -- F(person) NOT NULL 操作员 采购鲜花信息表使用联合主键“primary key(b_bill,sp_id)”,经过账单号和鲜花ID能够确定这个表中一条统计。
39、经过这个表能够查询采购统计,形成财务进货信息,借此以辅助提升鲜花店决议水平。 4 系统实现 依据前面分析和设计,以功效模块为单位逐一进行编码实现,这里以不一样用户角色进入系统(这里以销售人员和系统管理员为例进行分析说明),分析其对应各个功效模块实现方法,展示其实现效果。 4.1 销售员功效模块实现 销售人员只是负责鲜花销售工作,她们能够登录系统,并进行鲜花销售和销售盘点工作。这里便介绍登录模块和鲜花销售模块。 4.1.1 登录模块实现 登录页面是系统初始界面,用户只有登录成功才会出现系统主界面,能够进行对应操作。它是系统门户,登录后实现了用户权限区分。
40、实现登录界面和信息验证图4-1所表示: 图4-1 登录界面 用户登录模块会自动校验用户输入信息,符合要求后才能够提交。登录成功自动进入系统主界面(系统依据用户类型对应用户权限,向用户展示出对应操作主界面),登录失败会有对应提醒。登录模块实现步骤图4-2所表示: 图4-2登录模块实现步骤图 本模块遵照MVC模式使用ExtJS实现其前台使用Servlet处理后台逻辑。修改项目中web.xml配置,将欢迎界面改为login.jsp,在项目中创建login.jsp登
41、录页面,引入EXT,使用ExtJS创建登录界面。 创建login.js文件,使用EXT实现登录界面和登录信息校验,及Ajax提交登录信息。系统后台接收登录请求信息并加以处理,ServletLogin.java接收请求并交由业务处理类LoginBean.java进行处理,它调用DAO层各个类,实现登录信息验证,并将验证结果返回。其源代码以下: public boolean action(HttpServletRequest request) { boolean msg = false; int typeid = 0; int per_id = Integer.parseI
42、nt(request.getParameter("per_id")); String pw = request.getParameter("per_password"); PersonDAO pDAO = PersonDAOFactory.getPersonDAOInstance(); try { typeid = pDAO.queryId(per_id, pw); } catch (Exception e) {e.printStackTrace();} if(typeid == 0) { //登录验证失败 return msg;}else
43、{ //登录成功 perid = String.valueOf(per_id); UserlimitDAO ulDAO = UserlimitDAOFactory.getUserlimitDAOInstance(); try { Userlimit ul = ulDAO.query(typeid); //获取用户权限 ulstr = ul.toCtrl(); } catch (Exception e1) {e1.printStackTrace();} LogDAO lDAO = LogDAOFactory.getLo
44、gDAOInstance(); Log l = new Log(); l.setPer_id(per_id); l.setLogin_time(new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); l.setLogout_time(new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); l.setLogin_ip(request.getRemoteAddr());
45、 //获取用户端IP try {logid = lDAO.insert(l); //设定登录日志 } catch (Exception e) {msg = false; e.printStackTrace();} msg = true; }return msg; } … //get/set方法} 完成功效代码后,便可实现系统整个登录过程。、 4.1.2 鲜花销售模块实现 鲜花店系统一个关键功效就是鲜花销售,本系统提供一个简易鲜花销售接口,愈加靠近实际。同时鲜花销售模块中提供今日盘点功效,随时查看销售信息。这里以鲜花销售为例,介绍其具体实现。
46、创建鲜花销售JS文件sellsp.js,其中实现了鲜花信息加载提醒(鲜花树),添加鲜花时信息校验,账单中鲜花查看,账单提交等功效。其中添加鲜花表单和鲜花树和账单鲜花表格之间实现了交互。首先 前台界面运行效果图4-3所表示: 图4-3 鲜花销售管理-鲜花销售界面 销售鲜花时点击左侧鲜花树并选择所需鲜花,其编号会自动加载到添加鲜花表单中,或直接填写鲜花编号也可,再填写鲜花数量设定折扣率等信息后点击添加按钮,鲜花会自动添加上方账单中,添加完成点击提交账单来完成结算。销售鲜花实现步骤图4-4所表示:
47、 图4-4 鲜花销售管理-销售鲜花实现步骤图 使用ExtJS实现前台界面,实现了前台界面后,添加后台代码实现Servlet和业务数据操作。控制器Servlet会调用Model层业务实现类SellspBean.java,其中编码前需要加入处理Json数据jar包。其源代码以下: public class SellspBean { public boolean action(HttpServletRequest request) { String data = request.getParameter("jsonData"); boolean msg = tru
48、e;
List
49、r) jo.get("sp_id")); s.setS_count((Integer) jo.get("s_count")); s.setS_ys(Double.parseDouble((String) jo.get("s_ys"))); s.setS_rate(Double.parseDouble(String.valueOf(jo.get("s_rate")))); s.setS_ss(Double.parseDouble((String) jo.get("s_ss"))); s.setS_time((String) jo.get("s_time")
50、); s.setPer_id(Integer.parseInt((String) request.getSession().getAttribute("per_id"))); sl.add(s); } SellDAO sDAO = SellDAOFactory.getSellDAOInstance(); try { sDAO.insert(sl); //添加销售信息 } catch (Exception e) { msg = false; e.printStackTrace(); } return msg; }}






