销售管理商品销售管理系统面向对象程序设计.docx

上传人:b****2 文档编号:3522947 上传时间:2023-05-06 格式:DOCX 页数:36 大小:1.97MB
下载 相关 举报
销售管理商品销售管理系统面向对象程序设计.docx_第1页
第1页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第2页
第2页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第3页
第3页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第4页
第4页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第5页
第5页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第6页
第6页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第7页
第7页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第8页
第8页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第9页
第9页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第10页
第10页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第11页
第11页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第12页
第12页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第13页
第13页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第14页
第14页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第15页
第15页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第16页
第16页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第17页
第17页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第18页
第18页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第19页
第19页 / 共36页
销售管理商品销售管理系统面向对象程序设计.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

销售管理商品销售管理系统面向对象程序设计.docx

《销售管理商品销售管理系统面向对象程序设计.docx》由会员分享,可在线阅读,更多相关《销售管理商品销售管理系统面向对象程序设计.docx(36页珍藏版)》请在冰点文库上搜索。

销售管理商品销售管理系统面向对象程序设计.docx

销售管理商品销售管理系统面向对象程序设计

(销售管理)商品销售管理系统面向对象程序设计

目  录

1引言1

1.1课程设计选题1

1.2课程设计的目的1

1.3本选题的设计背景1

2需求分析2

2.1功能需求2

2.2系统的开发运行环境4

3总体设计4

3.1系统体系结构设计4

3.2系统功能模块及主要类设计4

3.3数据库设计7

4详细设计与实现9

4.1登录模块9

4.2公共模块11

4.3基础信息模块12

4.4进货管理模块16

4.5查询统计模块17

4.6库存管理模块…………………………………………………………............21

4.7销售管理模块……….………………………………………………………...22

4.8系统管理模块....……………………………………………………………....24

5小结和展望26

参考文献28

附录28

使用说明书28

源程序清单30

1引言

1.1课程设计选题

《商品销售管理系统》

1.2课程设计的目的

使学生巩固和加深以Java语言为基础的面向对象编程技术理论知识的理解,提高实际动手编程能力的培养,掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。

1.3本选题的设计背景

当今社会是一个信息社会,优胜劣汰是市场经济不变的法则,竞争优势源于对营销活动的科学管理,一套好的管理软件是加强管理的必要保障。

大多数中小企业计算机辅助管理水平较低,但面对的市场竞争又非常激烈。

为提高这些企业营销管理水平,使其在市场中确立竞争优势,作者特别编制了这套《商品销售管理系统》。

商品销售管理系统是一般企业生产管理环节中重要的一环,需要对商品的基本信息管理、商品调配信息等进行完整的监控。

因此,企业必须加强自身的信息基础建设,通过企业基础数据的信息化,企业基本业务流程和事物处理的信息化,企业内部控制及实施控制过程的信息化,人的行为规范管理等企业基础管理信息化工程,确保在规模不断扩大和业务迅速发展的过程中保持坚实的管理基础和繁殖内核,促进企业的可持续发展。

随着计算机在各个领域的不断普及与发展,计算机的应用从最初的科学计算、实时控制等,发展到数据处理,又迅速扩展到非数值型的企事业管理与办公自动化领域,而数据库技术更加被广泛应用于各个领域。

在现代企业中,信息管理工作将发挥越来越重要的作用。

企业信息管理工作已经渗透到日常工作的许多方面,无论是其自身还是所发挥的作用,都为企业的创新,发展以及经济效益,做出了显著的贡献。

本选题完成的功能可以提高企业的管理水平和工作效率,它能最大限度地减少手工操作带来的失误,作为一个跨平台的应用程序,商品销售管理体统能够实现各项业务的信息化管理。

使用计算机对商品销售信息进行管理,具有手工管理所无法比拟的诸多优点,例如:

检索迅速、方便查找、可靠性高、保密性好、使用时间长、成本低等。

这些优点能够极大地提高商品销售信息管理的效率,也是企业科学化、正规化管理及世界接轨的重要条件。

从小的方面来说,是对每个企业业务效率的调高,大方向,则是对整个社会生产速率的大提高,对社会有着重要的推进作用。

需求分析

2.1功能需求

总的来说,从用户角度来考虑,用户肯定是想得到一个功能完善,涵盖企业销售情况,进货情况等尽可能多方面业务,专业性较强,能针对企业的专业特点和管理特点;功能使用方便灵活,功能可选择强,可拓展性强;应用环境要求低;另外就是要操作方便容易,界面人性化。

下面从功能和非功能性需求两方面来做详细的阐述。

商品销售体统的开发主要包括后台数据库的建立和维护已经应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库,而对于后者则要求应用程序功能完备,操作简单等。

1.1.1分析系统的功能性需求

根据当前的企业管理体制,一般企业的销售管理系统,总是根据掌握的商品类别,相应分成几个科室来进行商品的销售,进货,核销托收,验收入库,并随时按期进行库存盘点,作台帐,根据企业自身管理的需要按月,季,年进行统计分析,产生相应的报表。

但是这样的人工操作管理既浪费人力,财力,又浪费时间,严重影响了企业的效率。

根据当前的企业机制,把企业销售管理系统划分为如下几个功能:

交易管理,包括进货登记管理,销售登记管理,退货登记管理;进货统计管理,其中包括有关进货的各种统计数据表,销售统计管理,其中包括有关销售的各种统计数据表,同时,为了能够更好的了解企业各方面情况,以便于经营管理。

还需要几个信息表来显示诸如库存,生产厂商信息。

基于安全性的考虑,本系统还将提供一个管理员登录的功能。

在没有登陆的情况下,各个功能是不可用的。

用户的需求具体体现在各种信息的提供、保存、更新和查询上,这就要求数据库结构能充分满足各种数据的输出和输入,收集和查询,考虑到将来的功能上的扩展,设计如下的数据项和数据结构。

商品基本信息:

包括客户ID,商品名称,简称,产地,单位,规格,包装,批号,批准文号,供应商全称和备注。

商品供应商信息:

供应商ID,供应商全称,简称,邮政编码,地址,电话,传真,联系人,联系人电话,开户银行,电子邮箱。

客户基本信息:

客户ID,客户地址,客户简称,邮政编码,电话,传真,联系人,联系电话,E-Mail,开户银行和银行账号。

商品销售记录:

销售票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,销售日期,操作员,经手人和结算方式。

销售排行:

商品编号,商品名称,销售金额,销售数量,简称,产地,单位,规格,包装,批号,批准文号,简介和供应商。

销售退货:

销退票号,商品编号,商品名称,规格,单价,数量,金额,客户全程,退货日期,操作员,经手人和结算方式。

1.1.2分析系统的非功能性需求

任何一个系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌,对软件设计有深远的影响。

因此,必须分析系统的数据需求,这是软件需求分析的一个重要任务。

对于非功能的需求,则是对软件自身功能可拓展性,简单易操作性,和用户界面的友好型的需求。

复杂的数据由许多基本的数据元素组成,数据结构表示数据元素之间的关系。

利用数据字典何以全面准确的定义数据,但是数据字典的缺点是不够形象直观。

因此,数据流程图能够很方便的表明整个系统的功能,数据在系统中传输的路径。

需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数据,所以要在此阶段就要充分考虑到可能的扩充和改变,使设计易于更改,系统易于扩充。

另外,在数据分析阶段,必须强调用户的参与,要与用户保持密切的联系,任何调查研究没有用户的积极参加是寸步难行的。

在此阶段,我主要是做了一些了解商品销售方面的数据的调查工做,多多参考书本中的销售实例,从而更加了解商品销售的过程。

在切身的体会中,将自己转换成用户,然后考虑对系统非功能性的需求。

2.2系统的开发运行环境

本系统开发平台:

Java+sqlserver2008

本系统集成开发环境:

MyEclipse

本系统运行环境:

windowsxp

总体设计

3.1系统体系结构设计

根据企业商品销售管理系统的特点,可以将该系统分为基础信息,进货管理,销售管理,库存管理,查询统计,系统管理等六大部分。

制定系统要实现目标如下:

界面设计简洁,操作简单,快捷方便,数据存储安全,信息分类清晰,强大的查询功能,提供灵活的、方便的权限设置管理功能,对用户输入的数据,系统进行严格的数据检验,从而尽可能的排除任务的错误。

3.2系统功能模块及主要类设计

3.2.1系统的功能描述

基础信息管理功能:

对客户信息进行管理,商品信息的管理,供应商信息的管理。

进货管理:

进货单能添加商品,使得商品入库;进货退货功能,能够实现退货的功能以及商品信息的显示。

销售管理:

销售单可以处理销售商品的信息,销售退货则可以实现退货商品信息的显示。

查询统计:

客户查询功能,根据一定的查询条件显示查询的客户信息;商品查询,根据一定的查询条件显示商品详细信息;供应商查询,根据一定的查询条件显示供应商的详细信息;销售查询,根据查询条件显示销售的商品的信息;销售退货查询,根据查询条件,显示销退的商品信息;入库查询,根据一定的查询信息,显示入库的商品的详细信息;入库退货查询,根据一定的查询功能,显示退货的商品信息;销售排行,根据年份,升降方式等显示销售商品的排行具体信息。

库存管理:

显示库存商品的详细信息;价格调整,对商品的单价进行调整。

系统管理:

即安全管理。

操作员管理,操作员的增加和删除;更改密码,是对每个操作员密码的管理;权限管理,是实现对管理员及操作员的信息更改功能。

3.2.2总体结构图如下:

商品销售管理系统流程图如下:

在仔细分析调查有关企业销售信息需求的基础上,能得到如下图所示的企业销售管理系统几个主要功能的数据流程。

3.2.3

相关文字描述:

最对系统做了详细的需求调查与分析之后,对于目标系统,我的方案是:

基于java为设计语言并以SQLServer2008为数据库进行企业信息的管理。

主要类如下:

创建主窗体,则创建JXCFrame类,在类中创建并初始化窗体对象,为窗体添加桌面面板,并设计背景图片;在编写公共模块时,编写Dao公共类,主要负责有关数据库的操作,该类在静态代码中驱动并连接数据库,然后将所有的数据库访问方法定义为静态的。

3.3数据库设计

在前面提到的商品销售系统的各种功能的实现都离不开数据库的支持,因此数据库的设计作为本系统的设计的一部分不可缺少。

开发本系统中使用的数据库系统是SQLServer2008。

商品销售管理系统是一个桌面应用程序,可以直接在本地计算机中运行,而不需要部署到指定的服务器中。

其中数据库命名如下:

为了遵循见名知意的原则,并提高程序的阅读性,则将该数据库命名为:

db_JXC,同时在对表名,字段名也都遵循相同的命名规则,采用英文单词或词组命名,如找不到专业的英文单词或词组可以用相同意义的英文单词或词组代替。

该系统主要实现从进货、库存到销售的一体化信息管理,涉及商品信息、商品的供应商、购买商品的客户等多个实体。

下面简单介绍几个关键的实体E-R图。

客户实体E-R图

商品销售管理系统记录了所有的客户信息,在进行销售、退货等操作时,将直接引用该客户的实体属性。

供应商实体E-R图

商品实体E-R图

详细设计与实现

4.1登录模块

1.功能设计

登录模块是进入该系统的桥梁,通过此登录窗口,用户可以进入系统进行对系统的管理与使用,当然这是有安全设置的,如果用户名或者密码不正确,则无法顺利进入系统的窗口。

用户登录窗体的作用是保证系统的安全性。

即通过登录辨别是否是非法登录。

它有分别对用户名和密码识别的功一项数据与数据库中的已有数据不符,则无法登录,其它可用。

2.界面设计

登录模块用java中的SWING组件,在窗体中添加面板,然后添加按钮,并为按钮添加监听器,有事件触发则会做出相应的反应。

如下图:

3模块算法(或重要代码段)

publicLogin(){

setTitle("登录商品销售管理系统");窗体的标题设置

finalJPanelpanel=newLoginPanel();

userLabel=newJLabel();

userLabel.setText("用户名:

");

userLabel.setBounds(100,135,200,18);

passLabel=newJLabel();

passLabel.setText("密码:

");

passLabel.setBounds(100,165,200,18);

login.setText("登录");exit.setText("退出");

login.setBounds(180,195,60,18);exit.setBounds(260,195,60,18);

panel.add(login);

4调试与测试

因为本系统设置的管理员用户名为:

tsoft,密码为:

111。

所以只有输入正确才能进入系统的主页面。

测试中,开始怎么也登录不上,后来发现是数据库的问题,是数据库中的一些功能关闭导致无法连接实例,经过同学的帮助,最终能够成功登录,我也复习了数据库的相关知识,更加熟悉了sqlserver2008。

4.2公共模块

1.功能设计

此处的信息是公用的,所以此处作为一个单独的模块进行介绍。

2.界面设计

编写Dao公共类,编写addGys()方法,用于添加供应商的基础信息,getUser()方法读取用户信息,addKeHu()方法增加客户信息的方法,updateKeHu()实现修改客户信息的方法,updateKucunDj()实现修改库存的方法,updateGys()实现修供应商信息的方法,addSp()实现添加商品的方法,updateSp()实现更新商品的方法,getSpInfo()实现读取商品信息的方法,getKucun()实现获取库存信息的方法;编写Item类,它是系统的公共类之一,主要用于封装和传递参数信息,是典型命令模式的实现。

3模块算法(主要代码)如下:

publicclassDao{

protectedstaticStringdbClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver";

protectedstaticStringdbUrl="jdbc:

sqlserver:

//127.0.0.1:

1433;"+"DatebaseName=db_JXC;SelectMethod=Cursor";

protectedstaticStringdbUser="abc";设置用户名

protectedstaticStringdbPwd="123";设置登录密码

protectedstaticStringsecond=null;

publicstaticConnectionconn=null;

static{

try{

if(conn==null){

Class.forName(dbClassName).newInstance();

conn=DriverManager.getConnection(dbUrl,dbUser,dbPwd);

}

}catch(Exceptionee){

ee.printStackTrace();

}

}

privateDao(){

}

//读取所有客户信息

publicstaticListgetKhInfos(){

Listlist=findForList("selectid,khnamefromtb_khinfo");

returnlist;

}

//修改客户信息的方法

publicstaticintupdateKeHu(TbKhinfokhinfo){

returnupdate("updatetb_khinfosetjian='"+khinfo.getJian()

+"',address='"+khinfo.getAddress()+"',bianma='"

+khinfo.getBianma()+"',tel='"+khinfo.getTel()+"',fax='"

+khinfo.getFax()+"',lian='"+khinfo.getLian()+"',ltel='"

+khinfo.getLtel()+"',mail='"+khinfo.getMail()

+"',xinhang='"+khinfo.getXinhang()+"',hao='"

+khinfo.getHao()+"'whereid='"+khinfo.getId()+"'");

}

4调试与测试

在这段程序的编写与修改过程中,我是借鉴了参考书和网上的一些资料完成的,相对比较顺利,因为方法比较多,所以因为粗心常导致输入的错误,在一步步的修改后,最终使得这一模块没有了错误。

4.3基础信息模块

1.功能设计

基础信息模块用于管理商品销售管理系统中的客户、商品和供应商信息,其功能主要是对这些基础信息进行添加、修改和删除。

供应商添加功能主要负责为系统添加新的供应商记录,供应商添加功能的程序界面见图1.供应商的修改和删除功能主要用于维护系统中的供应商信息,其程序运行界面如图2。

.另外客户的信息部分同供应商,添加新的客户界面图见图3,客户的修改和删除功能界面图见图4;添加新商品的界面图见图5,修改和删除商品的界面图见图6.

2.界面设计

图1

图2

图3

图4

图5

图6

3模块算法(或重要代码段)

classTjActionListenerimplementsActionListener{//添加按钮的事件监听类

publicvoidactionPerformed(finalActionEvente){

if(diZhiF.getText().equals("")||quanChengF.getText().equals("")

||chuanZhenF.getText().equals("")

||jianChengF.getText().equals("")

||yinHangF.getText().equals("")

||bianMaF.getText().equals("")

||diZhiF.getText().equals("")

||lianXiRenF.getText().equals("")

||lianXiRenDianHuaF.getText().equals("")

||EMailF.getText().equals("")

||dianHuaF.getText().equals("")){

JOptionPane.showMessageDialog(GysTianJiaPanel.this,"请填写全部信息");return;}

4调试与测试

之前对添加按钮的事件监听器有所遗忘,在查阅了书籍后,经过反复的修改,使得调试成功,后来又完善了下用try-catch语句捕捉异常,使得功能更加完善。

4.4进货管理模块

1.功能设计

进货管理模块是商品销售管理系统中不可缺少的重要组成部分之一,它主要负责为系统记录进货单及其退货信息,相应的进货商品会添加到库存管理中。

进货单功能主要负责记录企业的商品进货信息,界面见图3,;进货退货功能主要负责记录进货管理中的退货信息,界面见图4.

2.界面设计

图3

图4

3模块算法(或重要代码段)

用两个类实现两个功能,在进货单中,设置进货时间、经手人、联系人、票号等几个文本域,然后设置组件位置并添加到容器中,添加监听器,同时启动进货时间线程。

选择“进货管理”/“进货单”按钮,在弹出的窗体中进行添加进货单、商品入库信息操作。

选择“进货管理”/“进货退货”按钮,在弹出的窗体中进行添加退货信息操作。

4调试与测试

在调试时,选择进货单时,没有添加上,后来发现是没有给添加按钮添加相应的监听器,使得在触发Click事件时没有产生相应的功能,经过改正,测试取得了成功。

4.5查询统计模块

1.功能设计

商品销售管理系统中的查询模块包括客户查询、商品查询、供应商查询、销售查询、销售退货查询、入库查询、入库退货查询和销售排行功能。

销售查询功能主要用于查询系统中的销售信息,其查询方式可以按照客户全称、销售票号进行匹配查询和模糊查询,另外,还可以指定销售日期查询,界面见图1.,客户查询界面见图2,商品查询界面图3,供应商查询界面见图4,销售退货查询界面见图5,入库查询界面见图6,入口退货查询界面见图7。

2.界面设计

图1

图2

图3

图4

图5

图6

图8

3模块算法(重要代码段)

publicXiaoShouChaXun(){

addInternalFrameListener(newInternalFrameAdapter(){

publicvoidinternalFrameActivated(finalInternalFrameEvente){

java.sql.Datedate=newjava.sql.Date(System.currentTimeMillis());

endDate.setText(date.toString());

startDate.setText(date.toString());

}

});

显示查询出的结果的项目:

dftm=(DefaultTableModel)table.getModel();

String[]tableHeads=newString[]{"销售票号","商品编号","商品名称","规格","单价",

"数量","金额","客户全称","销售日期","操作员","经手人","结算方式"};

4调试与测试

查询因为涉及的方面很多,所以我采用借鉴移植的方法,从参考书上找到模板,然后进行整理,例如更新表格数据的方法自己不是很懂,所以自己是在学习他人程序的基础上完成的调试。

4.6库存管理模块

1.功能设计

商品销售管理系统中的库存管理模块提供了库存盘点和价格调整两大功能。

价格调整主要用于调整库存中指定商品的单价,当用户选择了指定的商品,但价格调整界面中会显示该商品在库存中的单价、库存数量、库存金额、单位等信息,界面见图1,库存盘点的界面设计见图2。

2.界面设计

图1

图2

3模块算法

该模块也是分为了两个部分,库存盘点部分,用Login.getUser()方法得到登录用户的信息,同时同步显示盘点时间,品种数,初始化表格后,DefaultCellEditorpdEditor=newDefaultCellEditor(pdField);DefaultCellEditorreadOnlyEditor=newDefaultCellEditor(readOnlyField);将表格单元设置为只读格式,初始化表格内容,最后设置组件位置并添加到容器中。

价格调整部分,如setupComponet(newJLabel("商品名称:

"),0,0,1,1,false);依次设置价格调整,规格,产地,简称,包装,单位和单价,库存数量,库存金额,然后设置组件位置并添加到容器中。

4调试与测试

调试时,应在数据库中的相应表格中写些信息内容,在库存盘点时能正确显示。

4.7销售管理模块

1.功能设计

销售管理模块由销售单和销售退货两部分组成,销售单完成对销售商品信息的显示功能,其中

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

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

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