ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:2.05MB ,
资源ID:8937043      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/8937043.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(易成超市管理系统的设计与实现.docx)为本站上传会员【pc****0】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

易成超市管理系统的设计与实现.docx

1、 报告编号:第一组 综合课程设计报告 易成超市管理系统的设计与实现 学生姓名: 指导教师: 所 在 系: 电 子 信 息 系 所学专业: 计算机科学与技术 年 级:

2、 2012年12月 目 录 摘 要 1 第一章 前言 2 第二章 需求分析 3 2.1 登录管理 3 2.2 进货管理 3 2.3 人员管理 3 2.4 销售管理 3 2.5 库存管理 3 第三章 概要设计 4 3.1 总体设计 4 3.2 数据库设计 5 3.2.1 数据库概念结构设计 5 3.2.2 数据库表格的设计 5 第四章 详细设计 6 4.1 登录模块的设计 6 4.2 进货模块的设计 8 4.3 人员模块的设计 13 4.4 销售模块的设计 16

3、4.5 库存模块的设计 20 4.6 设计中问题的解决 23 第五章 系统实现 24 第六章 总结 35 参考文献 36 易成超市管理系统的设计与实现 摘 要 随着小型超市的规模不断发展扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长,传统的人工记忆方式以渐渐不适应时代的发展。而随着现代科学技术的迅猛发展,计算机技术已渗透到各个领域,所以利用计算机管理数据库显得尤为迫切。 在以前系统运做中存在很多问题,所有的进货单,出货单都是人工填写,耗时而且易出现错误;库存也是人工记帐,无法随时掌握最准确的存货情况;对于销售数据,往往要花好多时间和精力去计算每个业务员的销

4、售业绩,每项商品的销售状况,为了解决上述问题,提高经济效益,准备导入超市管理系统进行采购,销售,库存等的计算机化管理。只需点击几次鼠标就能完成所有的功能,这样一来既省时又省力,大大提高超市员工的工作效率和管理水平。鉴于超市管理系统中现实存在的多种问题,所有我们系统研究了超市管理的流程,利用面向对象的Java语言和数据库SQL语句对系统做了全面的设计。 本超市管理系统包括系统模块、进货模块、销售模块、库存模块和人员管理模块,在我们实训期间已经基本完成了超市管理系统的功能。 一个完整的管理系统当然离不开后台数据库的支持,在这次设计中,我们用的是Structured Query Language

5、SQL)数据库作为基础,实现该系统的开放。 关键词:小型超市 管理模块 java语言 SQL数据库 第一章 前言 我们这组所选的课题是“易成超市管理系统的设计与使用”。 目前市场上的超市管理系统,大部分为基于分布式数据库的网络管理系统,对于规模较小的超市没有必要花巨资来购买这样功能全面的管理系统,此外,对于那样功能齐全的管理系统也需要花大精力来维护。基于这种情况,我们用所学的java知识,可以开发一种既能节约资金,又能完成小超市日常的管理任务。 本系统所包括的模块主要有:系统管理模块(主要是用户登录以及密码修改)、进货管理模块、销售管理模块、人员信息管理模块和库存

6、管理模块。 在系统的设计中,系统管理模块可以管理登录本系统的人员,主要包括:管理员、采购员、营业员和库存管理员;进货管理模块主要涉及到进货厂商信息的管理、进货单的管理以及商品的管理;销售管理模块主要完成各类商品的销售,金额的统计以及相关的信息查询;人员信息管理模块包括了对超市工作人员信息的整合与查询;库存管理模块完成了对仓库中商品的数量管理,并与销售和进货模块联系紧密,可以提供有用的信息。 系统的安全性方面,我们规定了不同权限的登录用户,管理员可以登录到任何一个管理模块,而其他类型的超市人员只能登录到属于自己权限之内的模块,在进入自己所属的模块后,可以修改自己的密码。通过这样的权限限制就可

7、以方便的控制系统的安全性。 总之,小型超市管理系统是一个经济、实惠的应用软件,适合小规模的商店和超市。操作难度小,易学易用。 第二章 需求分析 2.1 登录管理 在设计中,我们设置了四种人员类型:管理员、营业员、采购员和库存管理员,每种类型的人员拥有自己的用户名和密码,并且通过参数传递,可以进入属于自己的页面并可以在当前界面修改自己的密码。 2.2 进货管理 在设计中,这个模块主要包括三大块:厂商信息管理、进货单管理、商品信息管理。厂商信息管理中包含对厂商信息的增加、删除、修改和浏览;进货单管理中包含对进货单的填写和浏览,在进货过程中,要动态地增加该商品在仓库的库存量;商品信息管理

8、中包含对商品的添加、删除、修改和浏览,并具有对商品信息查询的三种方式:商品编号查询、商品种类查询和商品进价查询。 2.3 人员管理 这个模块的功能比较简单,主要就是实现对超市工作人员信息的管理,包括增添、删除、修改和浏览,并具有对这些信息的三种查询方式:工号查询、人员类型查询和工资查询。 2.4 销售管理 此模块分为前台和后台操作。前台主要完成收银操作,不仅要显示出所卖商品的有关信息,还得完成金额的应收、实收和找零功能,并动态地减少相应商品的库存量,在收银过程结束之前中可以随时终止并删除交易记录;后台主要执行查询功能,包括对所有交易记录的查询、按指定日期查询和按商品编号查询。 2.5

9、 库存管理 库存管理模块主要是与进货模块以及销售模块联系在一起,库存量是这个模块里最重要的变量,它会动态地随着销售和进货而改变自己的值。在设计当中,主要包括对库存量的几种查询方式:商品编号查询、厂商编号查询、商品种类查询和商品库存量动态查询,此模块中还有一个重要功能,就是库存预警功能,用户可以自己手动设置库存安全值,然后就可以查看哪些商品积压过多或是货量短缺,超市可以根据这些情况制定相应措施,如打折销售或是赶快进货。 第三章 概要设计 3.1 总体设计 我们为了这次课程设计,在工作开始前就画了系统模块图图,使得整个系统更加明了化,系统采用三级选择操作,由用户进行操作选择不同结构的栈

10、类、选择测试的数据类型、选择该数据的操作。系统模块图如图3.1所示: 系统模块 进货模块 库存模块 销售模块 人员模块 登陆模块 修改密码 厂商信息管理, 进 货 货物查询 货物交易 收银操作 查询信息 库存浏览 库存预警 员工信息管理 查询信息 易成超市管理系统 图3.1 系统模块图 3.2 数据库设计 3.2.1 数据库概念结构设计

11、n m n m 管理员 营业员 人员 库存管理员 采购员 查看 进货 仓库 商品 厂商 库存管理 m 1 m n m 1 m 1 图3.2 E—R图 3.2.2 数据库表格的设计 (1)厂商信息表 (厂商编号,厂商名称, 地址, 联系电话, 联系人) (2)商品表 (商品编号, 商品名称, 商品种类, 计量单位, 进价, 售价, 备注) (3)进货单表 (ID,商品编号, 商品名称, 商品种类, 厂商编号, 厂商名称,计量单位, 进价, 数量, 金额, 进货日期, 采购员, 备注)

12、 (4)用户表 (用户名, 密码, 类型) (5)销售表 (商品编号, 商品名称,计量单位, 售价, 销售数量,金额, 销售日期, 销售员, 备注) (6)人员信息表(工号, 员工类型, 姓名, 性别, 工资, 出生日期) (7)库存表 (商品编号, 商品名称, 商品种类, 库存量,计量单位, 厂商编号, 厂商名称, 备注) 第四章 详细设计 4.1 登录模块的设计 这个模块的设计当中,主要有几个要点:使不同类型的人员进入自己的主页面;三次错误登录后报错;修改密码。 在实现第一个功能的时候,采取了参数传递的措施

13、比如:当选择了“管理员”这个登录类型并通过验证后,会通过构造函数传递参数,在我们这个这个程序里面,用的是用户名,同时在管理员的主界面中,通过构造函数里的参数接受传过来的用户名参数,并赋给当前类中所设置的另一个参数,这时进入的页面就是管理员页面了。 在登录时,设置了一个变量,起到控制出错次数的作用,当输入的用户名或密码产生错误并达到三次以上,就会跳出警告信息,流程图如图4.1所示。 修改密码,也是用参数传递,管理员页面已用参数接收到了管理员用户名,在调用修改密码方法时,将参数通过构造函数传递,在密码修改这个类中,设置了密码参数来接收传过来的参数,这时管理员修改的就是自己的密码了。流程图如图

14、4.2所示 开始 判断是否为空 连接数据库 num +1 判断是否匹配 进入流程 结束 给出提示 返回判断 清空文本框 返回判断 N Y Y N 图4.1 登录流程图 开始 通过参数传递得到用户名 输入旧密码 是否正确 输入第一次新密码 长度小于6位 输入第二次新密码 长度小于6位 两次密码输 相同 修改成功 结束 密码错误 返回 N N Y Y N N Y Y 图4.2 修改密码流程图 4.2 进货模块的设计 进货模块中,所涉及到的内容较多,但功能其实并不复杂,涉

15、及到厂商管理、进货单管理和商品管理。 厂商管理中,有增删改查四个功能,在删除和修改这两个功能的实现中,我们本来是想通过对厂商编号查询,等确认信息后再执行删除和修改,可是后来觉得,随着厂商的数目增多,编码并不是最好的查询方式,后来我们就直接用厂商名称来做这个枢纽,这样更方便一些。流程图如图4.3所示。 在进货单管理中,有填写和查询进货单两个功能。在实现填写进货单这个功能时,考虑到了几个项目的联动,比如当输入商品编号和厂商编号后,按下确定,会自动显示出和此商品、此厂商有关的信息,商品名称、厂商名称、进货价格等等;当选择进货日期时,我们利用了Java中的Calendar类和它所自带的方法,这样就

16、可以使年月日相互匹配了,例如闰年的判断、大月小月的天数判断,2月天数的变化等等;在下拉表中选择采购员时,下拉表中的项目可以随着数据库的变动而变动。流程图如图4.4所示。 在商品管理中,也出现了和厂商管理一样的问题,本来是用商品编号作为枢纽来完成对商品信息的删除和修改,最后出于对用户使用方便的考虑,将商品类型和商品名称联动起来作为枢纽,即选择一个商品种类后,属于该种类的商品也就随之显现出来,便于用户选择。流程图如图4.5所示。 在对商品查询的方式中,有编号、种类和进价查询,较为重要的是进价查询。这是一个动态查询,用户可以自己输入想查询的进价范围,并且我们还对输入的内容进行了限制,比如:不能为

17、零,不能超过某个金额范围,只能输入数字,高进价不能小于等于低进价等等。流程图如图4.6所示。 N 添加厂商信息 是否小于4位 填写厂商名称 大于20位 填写厂商地址 大于20位 填写电话号码 11位 填写联系人 字母或数字 确定添加 添加成功 结束 删除厂商信息 修改厂商信息 选择厂商信息 是否正确 点击查询 点击删除 删除成功 N Y Y N Y N 选择厂商名称 确定修改 点击查询 确定修改 N Y N Y N N N Y N Y 开始 操作 图4.3 厂商信息管理流程图 开始 填

18、写商品编号 选择厂商编号或厂商名称 填写数量 选择进货日期和采购员 确认 商品编号为整数且小于5 数量为整数且小于1000 提交进货单 结束 Y N N Y 图4.4 填写进货单流程图 N N N N Y Y N N Y N Y Y Y 商品编号>5 输入商品编号 输入商品名称 商品名称>20 选择商品种类和计量单位 输入进价、售价 0<进价<售价< 100000 新增货物 删除货物 修改货物信息 浏览货物信息 添加备注 添加成功 结束 开始 选择商品种类 选择商品名称 存在该商品 删除数据库中商品

19、表里该商品信息 选择商品种类 选择商品名称 存在该商品 商品编号>5 输入修改信息 0<进价<售价< 100000 修改成功 查询数据库中商品表的信息 提取信息返回二维表格中并显示出来 浏览成功 Y 选择操作 图4.5 商品管理流程图 Y N Y N Y N Y N 商品表中存在该商品 选择的类是否存在 最低进价和最高进价都是double 型 查询商品表中所有为该类的商品信息 提取信息并返回二维数组表格中显示出来 输入商品编号 查询商品表中为该商品号的商品信息 提取信息并将值返回对应的文本框中 输入最低及最高进价 选择货物

20、种类 最低进价<=最高进价 查询商品表中满足该条件的商品信息 提取信息并返回二维数组表格中显示出来 开始 按货物种类查询 按商品编号查询 按货物进价查询 查看货物信息 结束 货物操作 图4.6 商品查询流程图 4.3 人员模块的设计 人员管理模块中,主要有对人员信息的增删改查功能和查询信息功能。 在对人员信息进行删除和修改时,我们人员类型和员工姓名作为联动纽带,具体流程图如图4.7所示。在查询功能中,有三种查询:工号、人员类型和工资查询。工号、人员类型查询属于静态查询,工资查询属动态查询,和前面所说的一样,我们也对用户输入的内容进行了判断控制,比如:输

21、入的内容必须是数字(整数或浮点数),输入不能为空、不能等于零及不能大于10000,在对最低工资和最高工资的比较中,又有高工资里输入的数字不能小于等于低工资;在点击清空按钮时,不仅文本框中的内容会清空,表里原来显示的内容也会同时被清空。流程图如图4.8所示。 N 添加人员信息 输入工号 是否为数字 提示出错 返回 小于5位 选择员工类型 输入姓名 字母或汉字 输入工资 大于一万 选择出生日期 结束 提示出错 返回 提示出错 返回 提示出错 返回 Y N Y Y Y N N N 开始 删除修改员工信息 选择员工类型 选择姓名

22、 点击查询 信息正确 确定删除或修改 取消退出 Y N 选择操作 图4.7 员工信息管理流程图 查询员工信息 按工资查询 点击查询 输入最高工资 输入最低工资 等于0或大于一万 开始 结束 等于0或大于一万 最高工资小于最低工资 Y N N Y N Y 按工号查询 输入工号 点击查询 是否存在 N Y 查询类型 图4.8 员工信息查询流程图 4.4 销售模块的设计 销售模块是超市系统中最为重要的环节,其收银界面也是包含功能最多的界面。 收银时,输入商品编号和销售数量后,按下确认,会首先出现待

23、确认的信息,如:商品编号、商品名称、计量单位、售价、数量、总金额、销售日期等等,这个时侯,如果营业员确认了这些销售信息,就可以进行收银,在收银时,如果因购买的东西过多过贵导致所付现金过大时,会提示信息,建议刷卡或是去后台交易,当所付金额少了,也会有相应的提示信息;若是收银员在确认信息时发现错误,可以立即停止交易并能删除这一项交易记录,但不会改变数据库中的值。流程图如图4.9和图4.10所示。 销售模块分为两个子模块,一是前面所说的前台收银,二是后台查询子模块。 在查询销售信息的功能实现中,主要有商品编号查询、交易日期查询和全部信息查询,三种方式使得此模块更为全面。流程图如图4.11所示。

24、 N Y N N Y Y N N Y 商品编号存在 销售数量为整数且<库存量 备注字符数<=20 动态数组添加一行表格 将日期、销售员名字等一起提取出来,放在新生成的表格中 计算出刚交易的商品的总金额Money 计算出所有商品的总金额Total并放入总计文本框中 界面表格为空 弹出没有交易可删除对话框 弹出确认删除对话框 将总计中金额数除去删除的商品金额数 删除表格中最后一项交易 Y 成功添加交易 删除成功 结束 添加交易 删除交易 输入商品编号 输入销售数量 输入备注 不做任何操作 开始 数据操作 货物交易

25、 图4.9 货物交易流程图 N Y N Y 求出新的库存量 提取表格中的数据 在销售表数据库中添加表格中的信息 提取表格中的商品编号及该商品的销售数量 查询库存表中对应商品编号的库存量并提取 计算找零 找零非空 实收>=应收,且为float型 增加数据库中销售表的数据 修改数据库中库存表中的库存量 收银 开始 增加成功 修改成功 结束 输入实收 图4.10 收银流程图 Y N Y N Y N 商品编号不为空 查询数据库中的销售表 提取销售表中的信息并返回到二维数组表中显示出来 查询的日期销售表中存在 查询数据库中所

26、有是该日期的交易 销售表中存在该商品 查询数据库中所有是该日期的交易 提取销售表中的信息并返回到二维数组表中显示出来 提取销售表中的信息并返回到二维数组表中显示出来 开始 售后查询 按商品编号查询 按销售日期查询 浏览全部交易 实现浏览 结束 输入商品编号 选择日期 操作类型 图4.11 售后查询流程图 4.5 库存模块的设计 库存模块设计中,也是分为两个子模块,一是查询功能,而是预警功能。 查询方式主要有四种:商品编号、厂商编号、商品种类和库存量查询。前三种被设计为对库存量的静态查询,最后一种查询是对库存量的动态查询,这里的功能设计与前面所说

27、的进价查询和工资查询差不多,都对用户输入的内容进行了判断控制,唯一不同的是,前面两种都是规定不准输入超过预先设好的值,但在这里,我们是动态地利用了数据库,也就是如果输入的值大于数据库中当前最大的库存量值,就会报错。流程图如图4.12—图4.15所示。 预警功能是我们这个系统中较为新颖的功能。这个功能的设置主要是防6仓库中货物囤积过多或所剩不多这两种情况。在预警界面中,用户可以自己设置安全值,也就是设置库存量的最大值和最小值,超市管理人员可以根据自己超市的实际情况设置,如有某些商品积压过多,超市可以考虑打折出售,若商品数量过少,则需继续进货。流程图如图4.16所示。 库存管理与进货管理、销售

28、管理是息息相关的,一种货物数量的增加和减少,都会带动库存量的变化。 进入相关界面 输入商品编号 输入格式是否正确 查询商品编号对应的库存信息 信息是否存在 返回结果 Y 是否退出 Y 图4.12 按商品编号查询流程图 弹出提示对话框 N Y N N 进入相关界面 选择商品种类 返回结果集 是否退出 Y N 图4.13 按种类查询流程图 开始 结束 开始 结束 进入相关界面 输入厂商编号 输入格式是否正确 查询该编号对应的厂商名称 信息是否存在 返回厂商名称 Y 是否退出 Y 弹出提示对话框 N Y

29、 N 返回对应商品的结果集 图4.14 按厂商编号查询流程图 图4.15 按库存量查询流程图 N 进入相关界面 输入库存范围 输入格式是否正确 返回符合条件的结果集 是否退出 Y Y N 开始 结束 开始 结束 N 开始 今日预警界面 选择要查看的预警类型 库存紧缺预警 库存积压预警 返回结果集 安全值是否需重设 结束 N 重新输入安全值 Y 图4.16 库存预警流程图 4.6 设计中问题的解决 在实现联动功能的时候,我们遇到了一个问题,以人员管理为例,当选择了人员类型后,员工姓名时常不能正确的显示出来,或是

30、如果第一次正确显示了,当换了另一种类型后,显示出来的姓名却仍是上一次的,当时这个问题让我们很头疼。最后,我们找到了问题所在,确定类型和显示姓名是两个事件,同时发生时会产生冲突,也就会出现错误,于是,我们加了一个“互斥锁”,使这两个事件互斥,处理其中一件事时,会将互斥锁锁上,处理完后,再释放,从而允许另一个事件进来处理。 第五章 系统实现 下面将给出一些系统运行时的画面和与实现某些功能相关代码的介绍 图5.1 登录界面 图5.1展示了系统的登录界面,四种登录类型清晰可见,方便用户选择。在人员类型的版面设计上,主要用到了JRadioButton类。 图5.2 登录错误出现的

31、界面 如果用户输错了用户名或密码,会弹出如图5.2所示的警告窗口。在实现过程中,主要用到了checkLogin()方法,它将用户输入的内容与数据库中的内容作比较,相同则进入系统,不同即报错,此外,还定义了一个checkErrorCount()方法,主要计算出错的次数,当超过三次时,则退出登录界面。 图5.3 管理员界面及快捷方式展示 若用户登录成功,会进入相应人员类型的界面,图5.3以管理员界面为例,用户这时可以用鼠标点选想要操作的功能,也可以直接用快捷方式,利用键盘操作。主要用到的代码为:this.addKeyListener(new KeyAdapter(){ public

32、void keyPressed(KeyEvent ke) { if(ke.isControlDown() && ke.getKeyCode() == KeyEvent.VK_E){ Close(); } } } 上面的代码是以用快捷方式Ctrl+E控制退出这个功能为例的。 图5.4 修改密码界面 图5.4展示了修改密码的界面,用户填错了其中任何一项都会报错,当修改成功时,会出现如图5.5所示的画面。 图5.5 修改密码成功后出现的界面 这里用到的是Change()方法,和登录时一样,实现这个方法时,会将输入的初始密码与数据库中的数值比较是

33、否相同,还会判断输入的新密码和确认新密码是否匹配且是否满足输入条件。 图5.6 四个模块的登录界面 图4.6所展示的四幅漂亮图片,分别是整个超市系统四个大型模块的主界面,其设计会让用户耳目一新,也让系统更加美观。 用代码实现时,主要用到了以下代码:class MyPanel extends JPanel{ Image img=Toolkit.getDefaultToolkit().getImage("4.jpg"); public void paint(Graphics g){ g.drawImage(img,0,0,this);

34、 } } 此外,菜单的设置和快捷方式的设置,也让看似简单的画面充满内涵。 图5.7 商品信息修改过程1 图5.8 商品信息修改过程2 图5.9 商品信息修改过程3 图5.10 商品信息修改过程4 图5.11 商品信息修改过程 图5.7至图5.11展示了进货模块中修改商品信息的过程,可以看到,当用户选择了商品的类型后,商品名称中会自动显示属于该种类的所有商品名称,这样的联动功能方便了用户的操作。当然,整个系统中随处可见联动带来的好处,这里仅以修改商品信息为例。 这里用到的方法主要有 public void init() pub

35、lic void Box1() 上面第一个方法起到的作用是给商品名称(box2)初始化,先移除box2里的原有项目,再从数据库里自动添加商品名称,完成初始化;第二个方法是给商品类型(box1)添加了监听器,完成的功能是:当选定一种商品类型后,box2里会自动筛选出属于这一类的商品名称。通过这两个方法,即实现了联动的功能。 图5.12 前台收银界面 图5.13 收银过程 图5.12和图5.13显示了销售模块中的前台收银界面,清楚的界面设计让营业员和顾客可以一目了然的了解销售情况,交易前的记录删除和交易时的收银找零都在此显现出来。 图 5.14

36、按工资查询界面 图 5.15 输入错误提示 图5.16 查询成功后的画面 图5.14至图5.16展示的是人员模块中的工资查询过程,用户可以按自己的意愿输入内容,但输入的内容同时也受到了限制,只有当输入的内容符合要求时,才可以查看到相应的信息。 此功能的实现过程当中,最重要的是判断用户输入的内容是否合法,如设计当中,我们用了正则表达式来判断输入的是否是数字txt.getText().matches("([0-9]+\\.+[0-9]+)|([0-9]+)")),并通过一系列的if语句来控制最低工资和最高工资之间的关系。 图5.17 库存预警界面 图5.18

37、设置安全值 图 5.19 库存紧缺的货物 图5.20 库存积压的货物 图5.17至图5.20展示了库存模块中的库存预警过程,这也是本系统中的一个新颖功能,仓库里哪些货物多了或者少了,想靠人工去慢慢计算是很不现实的,这时,超市管理人员可以按照本超市的实际情况设置安全值,那么只要鼠标一点,哪些货物积压,哪些货物短缺,结果那就一目了然了。 在这个类中,除了公共类StockWarning外,还定义了一个类StockDialog,这是为“设置安全值”的实现写的一个类,其中,我们写了Character.isDigit((strMax.charAt(k)))来判断从用户输入内容中一个个提

38、取出来的字符是否是数字;将TestField里的字符串通过 int max=java.lang.Integer.valueOf(txtMax.getText().trim()).intValue()转换为整型数据,以便接下来判断输入的最大库存量和最小库存量之间的关系。 第六章 总结 这是我们第一次做这样的应用系统管理软件,所以在实训之前,我们组的组员就开始在图书馆查阅相关方面的书籍了,了解了整个系统制作流程和要点。这次的小型超市管理系统,初步实现了小规模超市的一般需求,像登录管理、进货管理、人员管理、销售管理和库存管理,几个模块紧密相连,便于用户操作。 我们这个小型超市管理系统,

39、主要有以下几个优点: 1. 整个系统的界面很美观,在进入登录界面之前,还有一幅欢迎画面闪动,给用户一种耳目一新的感觉,程序运行过程中所展现的几个界面也很漂亮; 2. 整个程序中,联动的功能随处可见,这方便了用户的操作,用户不必总是用键盘输入,因为可以直接用鼠标在下拉框里选择相关内容,轻松且简单; 3. 在每个模块的登录界面上,用户除了可以用鼠标点击选择功能之外,还可以用快捷方式(如Ctrl+E即为退出等)选择,这个功能仍然体现了系统操作的方便优势; 4. 查询方式中,动静皆有,用户既可以直接点击查询,也可以按照自己的意愿从键盘输入数值,动态查询。 当然,虽然系统已经完成,我们仍还有一

40、些问题没有解决: 1. 在每个界面上,当用户点击“退出”按钮或点击叉时,都会跳出一个提示框,询问是否确认退出,这时,如果用户仅用鼠标点击“是”或“否”,都会正常执行,但用户用键盘上的回车键控制时,按是和否所出现的效果是一样的,都会退出; 2. 对在姓名文本框中所输入的内容进行限制时,不知道怎样实现“只能输入汉字”这个功能,最后只好从网上找了相应的正则表达式来控制,但具体的意思却未了解; 3. 本系统没有实现用户注册功能,包括:用户在注册时会通过选择问题并给出答案的方式来记住密码,在忘记密码的时候,可以通过回答问题获得系统赋予的新的默认密码; 4. 还没实现完全用户操作,因为考虑的因素很多,所以会有遗漏。 通过此次实训,我们锻炼了自己的动手能力,巩固了本学期在java课程里所学的知识点,更在整个过程中加强了团队配合的能力。最后谢谢老师的指导! 参考文献: [1] 《面向对象与Java程序设计》 朱福喜 北京:清华大学出版社 2009年3月 [2] 《Java程序设计》郑莉,王行言 北京:清华大学出版社 2006年1月 [3] 《java语言程序设计》陆迟 北京:电子工业出版社 2002年8月 [4] 《java语言应用开发基础》柳西玲,许斌 北京:清华大学出版社 2006年7月

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服