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

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12900715.html】到电脑端继续下载(重复下载不扣费)。

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(企业进销存管理系统.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

企业进销存管理系统.docx

1、企业进销存管理系统 Java程序设计课程设计题 目 企业进销存管理系统 学 院 姓 名 专 业 计算机科学与技术 学 号 指导教师 摘要【摘要】随着国家的政治经济政策的优化改革,使得国内中小企业得以蓬勃发展。可是随着企业的发展,客户数量的的为断增多,财务工作繁杂化,库存产品零乱等一系列问题也接踵而至,给企业经营者运作带来了很大的困扰。信息技术的迅猛发展,科学经营管理观念的迅速传播,使中小企业经营者逐渐认识到转变企业经营管理理念,改善企业经营管理模式是企业适应时代的发展急需解决的问题。现代管理,应该建立在真实、有效的数据信息基础之上,应该是一种科学的、理性的管理体制,而这种管理与经营的联系与互助

2、,又必须依赖于计算机的强大的数据统计功能,计算机管理系统便是实际的企业进销问题与计算机强大数据统计功能相结合的产物。管理系统解决的了商业企业商品的进、销、存、退、换、盘、损、残、调、借、赠等一系列操作流程中的数据信息的处理问题,提供一系列的数据分析,帮助经营者合理的调整各个经营运作环节的运作节奏,并对商品流转过程进行了全程跟踪管理、相应款项流通的全程记录管理和票据信息统计的管理。因此进销存管理系统的全面应用,规范业务流程、提高了企业的管理水平,提高资金流动的透明度,加快商品资金周转速度,进而全面提高了企业的经营水平、进而全面提升了企业的经济效益。【关键词】企业进销存管理系统引言企业经营如逆水行

3、舟不进则退。每一个努力发展的企业都明白,先进管理的重要作用,引进先进管理系统使企业经营变得规范、合理。进销存管理系统无论是在功能设计还是业务流程上都尽可能做到满足经营管理运作流程的需求,并且操作方便、功能强大,即使操作者对计算机知识一窍不通也能一用就会。它强化库存管理,规范业务流程,提高资金管理的透明度,加快商品资金周转,是企业经营管理中数据分析中必不可少的管理工具。1 系统需求分析根据市场的需求,要求系统具有以下功能: 系统操作简单,界面友好。 规范、完善的基础信息设置。 支持多人操作,要求有权限分配功能。 为了方便用户,要求系统支持多条件查询。 对销售信息提供销售排行。 支持销售退货和入库

4、退货功能。 批量填写进货单及销售单。 支持库存价格调整功能。 当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。2 总体设计2.1 项目规划根据需求分析,设计系统框架。销进销存管理系统由等8部分组成。设计各部分具体功能如下: 基础信息模块基础信息模块包括商品信息、员工信息、供应商信息和客户信息4部分。 销售模块销售模块由销售登记、销售退货、销售查询、销售退货查询4部分。 入库模块入库模块主要由入库登记、入库退货、入库查询、入库退货查询4组成。 调货模块调货模块包含调货登记和调货查询两部分。 库存模块库存模块由库存盘点、库存查询、仓库管理3部分组成。 结账模块结账模块主要

5、包括销售结账、销售退货结账、入库结账、入库退货结账。 系统管理模块系统管理模块由修改用户密码、修改用户权限、修改用户3部分组成。2.2 系统功能结构进销存管理系统的功能结构如图所示。进销存管理系统功能架构图2.3 设计目标本系统是根据中小企业的实际需求而开发的,完全能够实现商品入库、销售管理,通过本系统可以达到以下目标: 界面设计简洁、友好、美观大方。 操作简单、快捷方便。 数据存储安全、可靠。 信息分类清晰、准确。 强大的查询功能,保证数据查询的灵活性。 提供销售排行榜,为管理员提供真实的数据信息。 提供灵活、方便的权限设置功能,使整个系统的管理分工明确。 对用户输入的数据,系统进行严格的数

6、据检验,尽可能排除人为的错误。3 系统设计3.1 开发及运行环境 操作系统:Windows 7(SP1)。 Java开发包:JDK 1.7。 数据库:MySql 5.6。 分辨率:最佳效果为1024768像素。3.2 数据库设计1数据库概要说明本系统采用MySQL5.6 数据库,系统数据库名为db_jxc,中共包含20个表。数据存储表:tb_gysinfo、tb_jsr、tb_kcdb、tb_khinfo、tb_kucun、tb_rkdd_detail、tb_rkdd_main、tb_rkth_detail、tb_rkth_main、tb_ruku_detail、tb_ruku_main、tb

7、_sell_detail、tb_sell_main、tb_spinfo、tb_user、tb_xsqd_detail、tb_xsqd_main、tb_xsth_detail、tb_xsth_main、tb_yginfo。企业进销存管理系统主要实现从进货、库存到销售的一体化信息管理,涉及商品信息、商品的供应商、购买商品的客户等多个实体。下面简单介绍几个关键的实体 E-R 图。 客户实体 E-R 图企业进销存管理系统将记录所有的客户信息,在销售、退货等操作时,将直接引用该客户的进销存实体属性。客户实体包括客户编号、客户名称、简称、地址、电话、邮政编码、联系人、联系人电话、传真、开户行和账号等属性,

8、客户实体 E-R 图如图所示。 供应商实体 E-R 图不同的供应商可以为企业提供不同的商品,在商品信息中将引用商品供应商的实体属性。供应商实体包括编号、名称、简称、地址、电话、邮政编码、传真、联系人、联系电话、开户行和E-mail 属性,供应商实体 E-R 图如图所示。 商品实体 E-R 图商品信息是进销存管理系统中的基本信息,系统将维护商品的进货、退货、销售、入库等操作。商品实体包括编号、商品名称、商品简称、产地、单位、规格、包装、批号、批准文号、商品简介和供应商属性,商品实体 E-R 图如图所示。2主要数据表的结构3数据库对象命名规则 数据库命名规则数据库命名以字母“db”开头(小写),后

9、面加数据库相关英文单词或缩写。下面将举例说明,如表1所示。表1 数据库命名数据库名称描 述db_jxc企业进销存管理系统数据库 注意:在设计数据库时,为使数据库更容易理解,数据库命名时要注意大小写。 数据表命名规则数据表以字母“tb”开头(小写),后面加数据库相关英文单词或缩写和数据表名,多个单词间用“_”分隔。下面将举例说明,如表2所示。表2 数据表命名数据表名称描 述tb_sell_main销售主表tb_sell_detail销售明细表 字段命名规则字段一律采用英文单词或词组(可利用翻译软件)命名,如找不到专业的英文单词或词组可以用相同意义的英文单词或词组代替。下面将举例说明,如表3所示。

10、表3 字段命名字 段 名 称描 述ID流水号Name名称ProductInfo商品信息 注意:在命名数据表的字段时,应注意字母的大小写。4业务编码规则 供应商编号供应商的ID编号是进销存管理系统中供应商的唯一标识,不同的供应商可以通过该编号来区分。该编号是供应商信息表的主键。在本系统中对该编号的编码规则:以字符串“gys”为编号前缀,加上4位数字作编号的后缀,这4位数字从1000开始。例如(gys1001)。 客户编号和供应商编号类似,客户的ID编号也是客户的唯一标识,不同的客户将以该编号进行区分。该编号作为客户信息表的主键,有数据的唯一性的约束条件,所以,在客户信息表中不可能有两个相同的客户

11、编号。企业进销存管理系统对客户编号的编码规则:以字符串“kh”为编号的前缀,加上4位数字作编号的后缀,这4位数字从1000开始。例如(kh1002)。 商品编号商品编号是商品的唯一标识,它是商品信息表的主键,用于区分不同的商品。即使商品名称、单价、规格等信息相同,其ID编号也是不可能相同的,因为主键约束不可以存在相同的ID值。商品编号的编码规则和客户编号、供应商编号的编码规则相同,但是前缀使用了“sp”字符串。例如(sp2045)。 销售单编号销售单编号用于区分不同的销售凭据。销售单编号的命名规则:以“XS”字符串为前缀,加上销售单的销售日期,再以3位数字作后缀。例如(XS2007120500

12、1)。 入库编号入库编号用于区分不同的商品入库信息。入库编号的命名规则:以“RK”字符串为前缀,加上商品的入库日期,再以3位数字作后缀。例如(RK20071109003)。 入库退货编号入库退货编号用于区分不同的入库退货信息。入库退货编号的命名规则:以“RT”字符串为前缀,加上商品入库的退货日期,再以3位数字作后缀。例如(RT20071109001)。4 功能模块设计4.1 主窗口设计进销存管理系统主窗口由菜单、工具栏、客户区域和状态栏四部分组成,效果如图所示。1菜单设计(1)创建MainDaohangFrame 类,在类中创建并初始化窗体对象,为窗体添加桌面面板,并设置背景图片。(2)编写i

13、nitComponents()方法,在该方法中初始化背景标签,背景设置了主窗体的背景图片,该图片将随主窗体的大小自动缩放。(3)在MainDaohangFrame类中编写 launch ()方法,在该方法中创建选项卡面板对象。为突出选项卡的立体效果,设置该选项卡使用边框效果,然后依次创建基本信息管理、入库管理、销售管理、退货管理、库存管理和系统维护的选项卡。(4)同上,可以设计其他主菜单及菜单项。最后得到如图所示的菜单界面。2客户区设计主窗体界面也是该系统的欢迎界面。应用程序的主窗体必须设计层次清晰的系统菜单和工具栏,其中系统菜单包含系统中所有功能的菜单项,而工具栏主要提供常用功能的快捷访问按

14、钮。企业进销存管理系统采用导航面板综合了系统菜单和工具栏的优点,而且导航面板的界面更加美观,操作更快捷。主窗体的运行结果如图所示。4.2 系统登录管理1实现目标程序启动后,首先进入系统登录程序验证用户密码。系统登录程序主要实现如下功能。 输入密码的控件采用文本框。密码如果输入正确,取得用户权限并进入系统,否则,将提示错误,并返回密码输入框。 记录错误次数,录入密码错误3次将自动退出系统。 用户按下Enter键,控制焦点的移动。系统登录程序运行结果如图所示。系统登录窗口4.3 基础信息管理企业进销存管理系统中的基础信息模块主要包括客户管理、商品管理和供应商管理 3 部分,由于它们的实现方法基本相

15、似,以供应商管理部分为主,介绍基础信息模块对本系统的意义和实现的业务逻辑。1供应商添加供应商添加功能主要负责为系统添加新的供应商记录。在企业进销存管理系统中,商品是主要的管理对象,而系统中所有的商品都由不同的供应商提供,这就需要把不同的供应商信息添加到系统中,在商品信息中会关联系统中对应的供应商信息。供应商添加功能的程序界面如图所示。2供应商修改与删除供应商的修改与删除功能主要用于维护系统中的供应商信息。在供应商的联系方式发生改变时,必须更新系统中的记录,以提供供应商的最新信息。另外,当不再与某家供应商合作时,需要从系统中删除供应商的记录信息。程序运行界面如图所示。3. 基础信息模块技术分析基

16、础信息模块中使用了 Java Swing 的 JTabbedPane 选项卡面板组件分别为客户信息管理、商品信息管理和供应商信息管理提供了多个操作界面,例如供应商信息管理中分别存在供应商添加和供应商修改与删除界面,而这两个界面都存在于一个窗体中,可以通过选择顶部的两个选项卡,在不同的界面中来回切换。4.4 采购入库管理1 实现目标企业进销存管理系统中的库存管理模块包括库存盘点和价格调整两个功能。价格调整功能主要用于调整库存中指定商品的单价,当用户选择了指定的商品,价格调整功能的界面会显示该商品在库存中的单价、库存数量、库存金额、单位、产地等信息。程序界面如图所示。用户可以修改商品价格并单击“确

17、定”按钮,调整该商品在库存中的单价。 系统自动生成入库时间及入库票号。 确定用户输入数据完毕后,可提交给数据库。 自动核算入库金额。 删除当前指针所对应的记录信息。入库登记模块运行结果如图所示。2设计步骤企业进销存管理系统中的库存管理模块包括库存盘点和价格调整两个功能,其中库存盘点涉及的技术比较简单,它将库存信息显示在表格中,由操作员输入盘点的商品数量,然后程序自动计算损益值。价格调整功能涉及下拉列表框的选择事件监听和事件处理技术,这在使用 Java Swing 技术进行程序开发的过程中,非常重要。为防止用户的错误输入,程序界面经常需要将可枚举的输入内容封装在下拉列表框中,限制用户的输入。但是

18、,要知晓下拉列表框的改变,还需要为下拉列表框添加相应的事件监听器。进货管理模块使用 JDBC 实现事务操作,因为进货和退货的业务逻辑涉及到 3 个数据表,为保证数据的完整性,将 3 个数据表的操作放在事务中实现,如果对任何一个数据表的操作出现错误或是不可执行的操作,那么整个事务中的所有操作都将取消,并恢复到事务执行之前的数据状态;否则 3 个数据表的操作全部执行。使用 JDBC 实现事务操作的关键方法。1 2 3 4 4.1 4.2 4.3 4.4 4.5 单元测试在现代软件开发过程中,测试不再作为一个独立的生命周期,单元测试成为与编写代码同步进行的开发活动。单元测试能够提高程序员对程序的信心

19、,保证程序的质量,加快软件开发速度,使程序易于维护。1单元测试概述单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立工作单元将在与程序的其他部分相隔离的情况下进行测试。在一种传统的结构化编程语言中,如 Java 语言,要进行测试的工作单元一般是方法。在像 C+这样的面向对象的语言中,要进行测试的基本单元是类。单元测试不仅仅是作为无错编码的一种辅助手段,在一次性的开发过程中使用,单元测试还必须是可重复的,无论是在软件修改或是移植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行。2什么是单元测试 它是一种验证行为。程序中的每一项功能都可以

20、通过单元测试来验证其正确性。它为以后的开发提供支持。就算是开发后期,也可以轻松地增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东西。而且它为代码的重构提供了保障。这样,我们就可以更自由地对程序进行改进。 它是一种设计行为。编写单元测试将使我们从调用者的角度观察、思考。特别是先写测试(test-first),迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。 它是一种编写文档的行为。单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。这份文档是可编译、可运行的,它永远保持与代码同步。3越到项目后期,单元测试为何越难进行 在很多项目的初期,项目中的大部分程序员

21、都能够自觉地编写单元测试。随着项目的进展、任务的加重,离交付时间越来越近,不能按时完成项目的风险越来越大,单元测试就往往成为牺牲品了。项目经理因为进度的压力也不重视了,程序员也因为编码的压力和无人看管而不再为代码编写单元测试了。笔者亲身经历的项目都或多或少地发生过类似这样的事情。越是在项目的后期,能够坚持编写单元测试的程序员在整个项目组中所占比例越来越低。为了追赶项目进度,多数程序员将没有经过任何测试的程序代码上传到版本控制系统,项目经理也不再追问,照单全收。这样做的结果就是在项目后期,技术骨干人员只好加班加点进行系统集成。集成完了之后,下发给测试人员测试时,Bug 的报告数量翻倍增长。程序员开始修改 Bug,但有非常多的Bug 隐藏得很深,一直潜伏到生产环境中去。附录 参考文献1程杰.大话设计模式M. 清华大学出版社2王家华.软件工程M. 东北大学出版社3Brown.JAVA编程指南(第二版)M. 电子工业出版社4清宏计算机工作室. JAVA编程技巧M. 机械工业出版社5赛奎春.JAVA工程应用与项目实践M. 机械工业出版社6. 林邦杰.彻底研究javaM. 电子工业出版社7. 毕广吉.Java程序设计实例教程M. 冶金工业出版社

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2