商品销售管理系统-面向对象程序设计
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.1.1
根据当前的企业管理体制,一般企业的销售管理系统,总是根据掌握的商品类别,相应分成几个科室来进行商品的销售,进货,核销托收,验收入库,并随时按期进行库存盘点,作台帐,根据企业自身管理的需要按月,季,年进行统计分析,产生相应的报表。但是这样的人工操作管理既浪费人力,财力,又浪费时间,严重影响了企业的效率。根据当前的企业机制,把企业销售管理系统划分为如下几个功能:交易管理,包括进货登记管理,销售登记管理,退货登记管理;进货统计管理,其中包括有关进货的各种统计数据表,销售统计管理,其中包括有关销售的各种统计数据表,同时,为了能够更好的了解企业各方面情况,以便于经营管理。还需要几个信息表来显示诸如库存,生产厂商信息。基于安全性的考虑,本系统还将提供一个管理员登录的功能。在没有登陆的情况下,各个功能是不可用的。用户的需求具体体现在各种信息的提供、保存、更新和查询上,这就要求数据库结构能充分满足各种数据的输出和输入,收集和查询,考虑到将来的功能上的扩展,设计如下的数据项和数据结构。
总体设计
3.1
根据企业商品销售管理系统的特点,可以将该系统分为基础信息,进货管理,销售管理,库存管理,查询统计,系统管理等六大部分。制定系统要实现目标如下:界面设计简洁,操作简单,快捷方便,数据存储安全,信息分类清晰,强大的查询功能,提供灵活的、方便的权限设置管理功能,对用户输入的数据,系统进行严格的数据检验,从而尽可能的排除任务的错误。
在此阶段,我主要是做了一些了解商品销售方面的数据的调查工做,多多参考书本中的销售实例,从而更加了解商品销售的过程。在切身的体会中,将自己转换成用户,然后考虑对系统非功能性的需求。
2.2
本系统开发平台:Java+sqlserver2008
本系统集成开发环境:MyEclipse
本系统运行环境:windowsxp
3.2.3
相关文字描述:最对系统做了详细的需求调查与分析之后,对于目标系统,我的方案是:基于java为设计语言并以SQL Server 2008为数据库进行企业信息的管理。
主要类如下:创建主窗体,则创建JXCFrame类 ,在类中创建并初始化窗体对象,为窗体添加桌面面板,并设计背景图片;在编写公共模块时,编写Dao公共类,主要负责有关数据库的操作,该类在静态代码中驱动并连接数据库,然后将所有的数据库访问方法定考虑,用户肯定是想得到一个功能完善,涵盖企业销售情况,进货情况等尽可能多方面业务,专业性较强,能针对企业的专业特点和管理特点;功能使用方便灵活,功能可选择强,可拓展性强;应用环境要求低;另外就是要操作方便容易,界面人性化。下面从功能和非功能性需求两方面来做详细的阐述。商品销售体统的开发主要包括后台数据库的建立和维护已经应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求应用程序功能完备,操作简单等。
2.界面设计
登录模块用java中的SWING组件,在窗体中添加面板,然后添加按钮,并为按钮添加监听器,有事件触发则会做出相应的反应。如下图:
3模块算法(或重要代码段)
publicLogin() {
setTitle("登录商品销售管理系统");窗体的标题设置
finalJPanel panel =newLoginPanel();
1.功能设计
登录模块是进入该系统的桥梁,通过此登录窗口,用户可以进入系统进行对系统的管理与使用,当然这是有安全设置的,如果用户名或者密码不正确,则无法顺利进入系统的窗口。用户登录窗体的作用是保证系统的安全性。即通过登录辨别是否是非法登录。它有分别对用户名和密码识别的功一项数据与数据库中的已有数据不符,则无法登录,其它可用。
随着计算机在各个领域的不断普及与发展,计算机的应用从最初的科学计算、实时控制等,发展到数据处理,又迅速扩展到非数值型的企事业管理与办公自动化领域,而数据库技术更加被广泛应用于各个领域。在现代企业中,信息管理工作将发挥越来越重要的作用。企业信息管理工作已经渗透到日常工作的许多方面,无论是其自身还是所发挥的作用,都为企业的创新,发展以及经济效益,做出了显著的贡献。本选题完成的功能可以提高企业的管理水平和工作效率,它能最大限度地减少手工操作带来的失误,作为一个跨平台的应用程序,商品销售管理体统能够实现各项业务的信息化管理。使用计算机对商品销售信息进行管理,具有手工管理所无法比拟的诸多优点,例如:检索迅速、方便查找、可靠性高、保密性好、使用时间长、成本低等。这些优点能够极大地提高商品销售信息管理的效率,也是企业科学化、正规化管理及世界接轨的重要条件。从小的方面来说,是对每个企业业务效率的调高,大方向,则是对整个社会生产速率的大提高,对社会有着重要的推进作用。
3.3
在前面提到的商品销售系统的各种功能的实现都离不开数据库的支持,因此数据库的设计作为本系统的设计的一部分不可缺少。开发本系统中使用的数据库系统是SQL Server 2008。商品销售管理系统是一个桌面应用程序,可以直接在本地计算机中运行,而不需要部署到指定的服务器中。其中数据库命名如下:为了遵循见名知意的原则,并提高程序的阅读性,则将该数据库命名为:db_JXC,同时在对表名,字段名也都遵循相同的命名规则,采用英文单词或词组命名,如找不到专业的英文单词或词组可以用相同意义的英文单词或词组代替。
库存管理:显示库存商品的详细信息;价格调整,对商品的单价进行调整。
系统管理:即安全管理。操作员管理,操作员的增加和删除;更改密码,是对每个操作员密码的管理;权限管理,是实现对管理员及操作员的信息更改功能。
3.2.2
商品销售管理系统流程图如下:
在仔细分析调查有关企业销售信息需求的基础上,能得到如下图所示的企业销售管理系统几个主要功能的数据流程。
1.3
当今社会是一个信息社会,优胜劣汰是市场经济不变的法则,竞争优势源于对营销活动的科学管理,一套好的管理软件是加强管理的必要保障。大多数中小企业计算机辅助管理水平较低,但面对的市场竞争又非常激烈。为提高这些企业营销管理水平,使其在市场中确立竞争优势,作者特别编制了这套《商品销售管理系统》。商品销售管理系统是一般企业生产管理环节中重要的一环,需要对商品的基本信息管理、商品调配信息等进行完整的监控。因此,企业必须加强自身的信息基础建设,通过企业基础数据的信息化,企业基本业务流程和事物处理的信息化,企业内部控制及实施控制过程的信息化,人的行为规范管理等企业基础管理信息化工程,确保在规模不断扩大和业务迅速发展的过程中保持坚实的管理基础和繁殖内核,促进企业的可持续发展。
商品销售记录:销售票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,销售日期,操作员,经手人和结算方式。
销售排行:商品编号,商品名称,销售金额,销售数量,简称,产地,单位,规格,包装,批号,批准文号,简介和供应商。
销售退货:销退票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,退货日期,操作员,经手人和结算方式。
login.setText("登录");exit.setText("退出");
login.setBounds(180, 195, 60, 18);exit.setBounds(260, 195, 60, 18);
panel.add(login);
4调试与测试
因为本系统设置的管理员用户名为:tsoft,密码为:111。所以只有输入正确才能进入系统的主页面。测试中,开始怎么也登录不上,后来发现是数据库的问题,是数据库中的一些功能关闭导致无法连接实例,经过同学的帮助,最终能够成功登录,我也复习了数据库的相关知识,更加熟悉了sqlserver2008。
目 录
4.6库存管理模块…………………………………………………………............21
4.7销售管理模块……….………………………………………………………...22
4.8系统管理模块....……………………………………………………………....24
1
1.1
《商品销售管理系统》
1.2
使学生巩固和加深以Java语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。
该系统主要实现从进货、库存到销售的一体化信息管理,涉及商品信息、商品的供应商、购买商品的客户等多个实体。下面简单介绍几个关键的实体E-R图。
客户实体E-R图
商品销售管理系统记录了所有的客户信息,在进行销售、退货等操作时,将直接引用该客户的实体属性。
供应商实体E-R图
商品实体E-R图
详细设计与实现
4.1
3.2
3.2.1
基础信息管理功能:对客户信息进行管理,商品信息的管理,供应商信息的管理。
进货管理:进货单能添加商品,使得商品入库;进货退货功能,能够实现退货的功能以及商品信息的显示。
销售管理:销售单可以处理销售商品的信息,销售退货则可以实现退货商品信息的显示。
查询统计:客户查询功能,根据一定的查询条件显示查询的客户信息;商品查询,根据一定的查询条件显示商品详细信息;供应商查询,根据一定的查询条件显示供应商的详细信息;销售查询,根据查询条件显示销售的商品的信息;销售退货查询,根据查询条件,显示销退的商品信息;入库查询,根据一定的查询信息,显示入库的商品的详细信息;入库退货查询,根据一定的查询功能,显示退货的商品信息;销售排行,根据年份,升降方式等显示销售商品的排行具体信息。
userLabel =newJLabel();
userLabel.setText("用户名:");
userLabel.setBounds(100, 135, 200, 18);
passLabel =newJLabel();
passLabel.setText("密码:");
passLabel.setBounds(100, 165, 200, 18);
4.2
1.功能设计
此处的信息是公用的,所以此处作为一个单独的模块进行介绍。
2.界面设计
编写Dao公共类,编写addGys()方法,用于添加供应商的基础信息,getUser()方法读取用户信息,addKeHu()方法增加客户信息的方法,updateKeHu()实现修改客户信息的方法,updateKucunDj()实现修改库存的方法,updateGys()实现修供应商信息的方法,addSp()实现添加商品的方法,updateSp()实现更新商品的方法,getSpInfo()实现读取商品信息的方法,getKucun()实现获取库存信息的方法;编写Item类,它是系统的公共类之一,主要用于封装和传递参数信息,是典型命令模式的实现。
3模块算法(主要代码)如下:
publicclassDao {
protectedstaticStringdbClassName= "com.microsoft.sqlserver.jdbc.SQLServerDriver";
1.1.2
任何一个系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远的影响。因此,必须分析系统的数据需求,这是软件需求分析的一个重要任务。对于非功能的需求,则是对软件自身功能可拓展性,简单易操作性,和用户界面的友好型的需求。
复杂的数据由许多基本的数据元素组成,数据结构表示数据元素之间的关系。利用数据字典何以全面准确的定义数据,但是数据字典的缺点是不够形象直观。因此,数据流程图能够很方便的表明整个系统的功能,数据在系统中传输的路径。需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数据,所以要在此阶段就要充分考虑到可能的扩充和改变,使设计易于更改,系统易于扩充。另外,在数据分析阶段,必须强调用户的参与,要与用户保持密切的联系,任何调查研究没有用户的积极参加是寸步难行的。
商品基本信息:包括客户ID,商品名称,简称,产地,单位,规格,包装,批号,批准文号,供应商全称和备注。
商品供应商信息:供应商ID,供应商全称,简称,邮政编码,地址,电话,传真,联系人,联系人电话,开户银行,电子邮箱。
客户基本信息:客户ID,客户地址,客户简称,邮政编码,电话,传真,联系人,联系电话,E-Mail,开户银行和银行账号。
根据当前的企业管理体制,一般企业的销售管理系统,总是根据掌握的商品类别,相应分成几个科室来进行商品的销售,进货,核销托收,验收入库,并随时按期进行库存盘点,作台帐,根据企业自身管理的需要按月,季,年进行统计分析,产生相应的报表。但是这样的人工操作管理既浪费人力,财力,又浪费时间,严重影响了企业的效率。根据当前的企业机制,把企业销售管理系统划分为如下几个功能:交易管理,包括进货登记管理,销售登记管理,退货登记管理;进货统计管理,其中包括有关进货的各种统计数据表,销售统计管理,其中包括有关销售的各种统计数据表,同时,为了能够更好的了解企业各方面情况,以便于经营管理。还需要几个信息表来显示诸如库存,生产厂商信息。基于安全性的考虑,本系统还将提供一个管理员登录的功能。在没有登陆的情况下,各个功能是不可用的。用户的需求具体体现在各种信息的提供、保存、更新和查询上,这就要求数据库结构能充分满足各种数据的输出和输入,收集和查询,考虑到将来的功能上的扩展,设计如下的数据项和数据结构。
总体设计
3.1
根据企业商品销售管理系统的特点,可以将该系统分为基础信息,进货管理,销售管理,库存管理,查询统计,系统管理等六大部分。制定系统要实现目标如下:界面设计简洁,操作简单,快捷方便,数据存储安全,信息分类清晰,强大的查询功能,提供灵活的、方便的权限设置管理功能,对用户输入的数据,系统进行严格的数据检验,从而尽可能的排除任务的错误。
在此阶段,我主要是做了一些了解商品销售方面的数据的调查工做,多多参考书本中的销售实例,从而更加了解商品销售的过程。在切身的体会中,将自己转换成用户,然后考虑对系统非功能性的需求。
2.2
本系统开发平台:Java+sqlserver2008
本系统集成开发环境:MyEclipse
本系统运行环境:windowsxp
3.2.3
相关文字描述:最对系统做了详细的需求调查与分析之后,对于目标系统,我的方案是:基于java为设计语言并以SQL Server 2008为数据库进行企业信息的管理。
主要类如下:创建主窗体,则创建JXCFrame类 ,在类中创建并初始化窗体对象,为窗体添加桌面面板,并设计背景图片;在编写公共模块时,编写Dao公共类,主要负责有关数据库的操作,该类在静态代码中驱动并连接数据库,然后将所有的数据库访问方法定考虑,用户肯定是想得到一个功能完善,涵盖企业销售情况,进货情况等尽可能多方面业务,专业性较强,能针对企业的专业特点和管理特点;功能使用方便灵活,功能可选择强,可拓展性强;应用环境要求低;另外就是要操作方便容易,界面人性化。下面从功能和非功能性需求两方面来做详细的阐述。商品销售体统的开发主要包括后台数据库的建立和维护已经应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求应用程序功能完备,操作简单等。
2.界面设计
登录模块用java中的SWING组件,在窗体中添加面板,然后添加按钮,并为按钮添加监听器,有事件触发则会做出相应的反应。如下图:
3模块算法(或重要代码段)
publicLogin() {
setTitle("登录商品销售管理系统");窗体的标题设置
finalJPanel panel =newLoginPanel();
1.功能设计
登录模块是进入该系统的桥梁,通过此登录窗口,用户可以进入系统进行对系统的管理与使用,当然这是有安全设置的,如果用户名或者密码不正确,则无法顺利进入系统的窗口。用户登录窗体的作用是保证系统的安全性。即通过登录辨别是否是非法登录。它有分别对用户名和密码识别的功一项数据与数据库中的已有数据不符,则无法登录,其它可用。
随着计算机在各个领域的不断普及与发展,计算机的应用从最初的科学计算、实时控制等,发展到数据处理,又迅速扩展到非数值型的企事业管理与办公自动化领域,而数据库技术更加被广泛应用于各个领域。在现代企业中,信息管理工作将发挥越来越重要的作用。企业信息管理工作已经渗透到日常工作的许多方面,无论是其自身还是所发挥的作用,都为企业的创新,发展以及经济效益,做出了显著的贡献。本选题完成的功能可以提高企业的管理水平和工作效率,它能最大限度地减少手工操作带来的失误,作为一个跨平台的应用程序,商品销售管理体统能够实现各项业务的信息化管理。使用计算机对商品销售信息进行管理,具有手工管理所无法比拟的诸多优点,例如:检索迅速、方便查找、可靠性高、保密性好、使用时间长、成本低等。这些优点能够极大地提高商品销售信息管理的效率,也是企业科学化、正规化管理及世界接轨的重要条件。从小的方面来说,是对每个企业业务效率的调高,大方向,则是对整个社会生产速率的大提高,对社会有着重要的推进作用。
3.3
在前面提到的商品销售系统的各种功能的实现都离不开数据库的支持,因此数据库的设计作为本系统的设计的一部分不可缺少。开发本系统中使用的数据库系统是SQL Server 2008。商品销售管理系统是一个桌面应用程序,可以直接在本地计算机中运行,而不需要部署到指定的服务器中。其中数据库命名如下:为了遵循见名知意的原则,并提高程序的阅读性,则将该数据库命名为:db_JXC,同时在对表名,字段名也都遵循相同的命名规则,采用英文单词或词组命名,如找不到专业的英文单词或词组可以用相同意义的英文单词或词组代替。
库存管理:显示库存商品的详细信息;价格调整,对商品的单价进行调整。
系统管理:即安全管理。操作员管理,操作员的增加和删除;更改密码,是对每个操作员密码的管理;权限管理,是实现对管理员及操作员的信息更改功能。
3.2.2
商品销售管理系统流程图如下:
在仔细分析调查有关企业销售信息需求的基础上,能得到如下图所示的企业销售管理系统几个主要功能的数据流程。
1.3
当今社会是一个信息社会,优胜劣汰是市场经济不变的法则,竞争优势源于对营销活动的科学管理,一套好的管理软件是加强管理的必要保障。大多数中小企业计算机辅助管理水平较低,但面对的市场竞争又非常激烈。为提高这些企业营销管理水平,使其在市场中确立竞争优势,作者特别编制了这套《商品销售管理系统》。商品销售管理系统是一般企业生产管理环节中重要的一环,需要对商品的基本信息管理、商品调配信息等进行完整的监控。因此,企业必须加强自身的信息基础建设,通过企业基础数据的信息化,企业基本业务流程和事物处理的信息化,企业内部控制及实施控制过程的信息化,人的行为规范管理等企业基础管理信息化工程,确保在规模不断扩大和业务迅速发展的过程中保持坚实的管理基础和繁殖内核,促进企业的可持续发展。
商品销售记录:销售票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,销售日期,操作员,经手人和结算方式。
销售排行:商品编号,商品名称,销售金额,销售数量,简称,产地,单位,规格,包装,批号,批准文号,简介和供应商。
销售退货:销退票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,退货日期,操作员,经手人和结算方式。
login.setText("登录");exit.setText("退出");
login.setBounds(180, 195, 60, 18);exit.setBounds(260, 195, 60, 18);
panel.add(login);
4调试与测试
因为本系统设置的管理员用户名为:tsoft,密码为:111。所以只有输入正确才能进入系统的主页面。测试中,开始怎么也登录不上,后来发现是数据库的问题,是数据库中的一些功能关闭导致无法连接实例,经过同学的帮助,最终能够成功登录,我也复习了数据库的相关知识,更加熟悉了sqlserver2008。
目 录
4.6库存管理模块…………………………………………………………............21
4.7销售管理模块……….………………………………………………………...22
4.8系统管理模块....……………………………………………………………....24
1
1.1
《商品销售管理系统》
1.2
使学生巩固和加深以Java语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。
该系统主要实现从进货、库存到销售的一体化信息管理,涉及商品信息、商品的供应商、购买商品的客户等多个实体。下面简单介绍几个关键的实体E-R图。
客户实体E-R图
商品销售管理系统记录了所有的客户信息,在进行销售、退货等操作时,将直接引用该客户的实体属性。
供应商实体E-R图
商品实体E-R图
详细设计与实现
4.1
3.2
3.2.1
基础信息管理功能:对客户信息进行管理,商品信息的管理,供应商信息的管理。
进货管理:进货单能添加商品,使得商品入库;进货退货功能,能够实现退货的功能以及商品信息的显示。
销售管理:销售单可以处理销售商品的信息,销售退货则可以实现退货商品信息的显示。
查询统计:客户查询功能,根据一定的查询条件显示查询的客户信息;商品查询,根据一定的查询条件显示商品详细信息;供应商查询,根据一定的查询条件显示供应商的详细信息;销售查询,根据查询条件显示销售的商品的信息;销售退货查询,根据查询条件,显示销退的商品信息;入库查询,根据一定的查询信息,显示入库的商品的详细信息;入库退货查询,根据一定的查询功能,显示退货的商品信息;销售排行,根据年份,升降方式等显示销售商品的排行具体信息。
userLabel =newJLabel();
userLabel.setText("用户名:");
userLabel.setBounds(100, 135, 200, 18);
passLabel =newJLabel();
passLabel.setText("密码:");
passLabel.setBounds(100, 165, 200, 18);
4.2
1.功能设计
此处的信息是公用的,所以此处作为一个单独的模块进行介绍。
2.界面设计
编写Dao公共类,编写addGys()方法,用于添加供应商的基础信息,getUser()方法读取用户信息,addKeHu()方法增加客户信息的方法,updateKeHu()实现修改客户信息的方法,updateKucunDj()实现修改库存的方法,updateGys()实现修供应商信息的方法,addSp()实现添加商品的方法,updateSp()实现更新商品的方法,getSpInfo()实现读取商品信息的方法,getKucun()实现获取库存信息的方法;编写Item类,它是系统的公共类之一,主要用于封装和传递参数信息,是典型命令模式的实现。
3模块算法(主要代码)如下:
publicclassDao {
protectedstaticStringdbClassName= "com.microsoft.sqlserver.jdbc.SQLServerDriver";
1.1.2
任何一个系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远的影响。因此,必须分析系统的数据需求,这是软件需求分析的一个重要任务。对于非功能的需求,则是对软件自身功能可拓展性,简单易操作性,和用户界面的友好型的需求。
复杂的数据由许多基本的数据元素组成,数据结构表示数据元素之间的关系。利用数据字典何以全面准确的定义数据,但是数据字典的缺点是不够形象直观。因此,数据流程图能够很方便的表明整个系统的功能,数据在系统中传输的路径。需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数据,所以要在此阶段就要充分考虑到可能的扩充和改变,使设计易于更改,系统易于扩充。另外,在数据分析阶段,必须强调用户的参与,要与用户保持密切的联系,任何调查研究没有用户的积极参加是寸步难行的。
商品基本信息:包括客户ID,商品名称,简称,产地,单位,规格,包装,批号,批准文号,供应商全称和备注。
商品供应商信息:供应商ID,供应商全称,简称,邮政编码,地址,电话,传真,联系人,联系人电话,开户银行,电子邮箱。
客户基本信息:客户ID,客户地址,客户简称,邮政编码,电话,传真,联系人,联系电话,E-Mail,开户银行和银行账号。