1、java超市管理系统实训报告1.1课程设计的目的通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据 库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实 用的数据库系统。1.2课程设计的背景和意义1. 2.1课程设计的背景20世纪90年代后期特别是近儿年,我国的超市产业飞速发展,其经营模式更为复杂,旧 的管理体制己经无法适应超市的发展,这就迫切的需要引进新的管理技术。超市的数据和业务越來越庞大,而计算机就是一种高效的管理系统,这就需要我们把超 市的管理与计算机结合起來,从而超市管理系统应运而生。依靠现代化的计算机信息处理技 术来管理超市,节
2、省了大量的人力、物力,改善了员工的并且能够快速反映出商品的进、 销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超 市经营管理效率。1. 2. 2课程设计的意义“数据库课程设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。 为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让 学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学 生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持 有了深刻的理解,实践性教学取得了良好效果。1.3课程设计环境操作系统:Windows
3、 xp开发软件:Microsoft Visual Studio 2005数据库:Microsoft SQL Serve】 2005第2章系统需求分析随着人们生活水平的不断提高,对于物质的需求也越來越高,而超市作为日常生活用品 聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增 加,而为了适应当今信息化发展的时代,一套完整的超市商品管理系统显得尤为重要。2. 1问题的提出在信息化高速发展的今天,超市商品管理的信息化管理己成为必不可缺的一部分,但是 目前的大多是超市商品管理系统应用难度较高,许多工作需要技术人员配合才能完成,角色 分工不明确;改版工作量大,系统扩展能力
4、差,应用时更是降低了灵活性,这就使得一套完 善的、能够正常工作的商品管理系统应运而生。2. 2可行性分析系统的可行性分析是对课题的通盘考虑,是系统开发者进行进一步工作的前提,是系统 设计与开发的前提与基础。系统的可行性分析可以使系统开发者尽可能早的估计到课题开发 过程中的困难,并在定义阶段认识到系统方案的缺陷,这样就能花费较少的时间和精力,也 可以避免许多专业方面的困难。所以,系统的可行性分析在整个开发过程中是非常重要的。2. 2. 1经济可行性分析因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方 便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,
5、即提高了超市 的经济效益,所以从经济上完全是可行的。2. 2. 2技术可行性分析本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些 有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面, 简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作 上。因此,可以设计该系统的数据流程图,建立数据字典。2.3系统的设计目标本系统主要包括四大模块,分别是人事管理模块,销售管理模块,进货管理模块,库存 管理模块。每个模块的功能如下:1.人事管
6、理模块功能:(1)实现职工信息的查询;(2)实现职工信息的更新,包括增加、删除、修改功能;(3)实现供货商信息的查询;(4)实现供货商信息的更新,包括增加、删除、修改功能。2.销售管理模块功能:(1)进行前台的销售;(2)将前台的销售与后台的数据库联系起來。3.进货管理模块功能:(1)实现进货信息的查询;(2)实现进货信息的更新,包括增加、删除、修改功能。4库存管理模块功能:(1)实现商品库存信息的查询;第3章 系统开发的技术背景3.1开发技术及运行环境3.1. 1系统所采用的开发技术通过权衡对各种编程语言和数据库使用的熟练程度,本系统选用EclipseS. 1作为前台开发 工具,后台数据库釆
7、用SQL Seivei 2005,整体设计以软件工程思想为指导思想,力求开发一 个实用性强、操作简单且功能完整的超市商品管理系统。3.1.2系统运行环境操作系统:Windows XP数据库:Microsoft SQL Serve】 2005前台:Microsoft Visual Studio 2005第4章 系统分析与总体设计4.1系统结构框架一般的超市商品管理系统,主要由五大模块组成,即商品信息管理模块,人事管理模 块,销售管理模块,进货管理模块,库存管理模块,此系统也不例外,主要有此五大模块组 成。图4-1系统功能结构图。图4-1系统功能结构图4. 2系统功能设计系统功能设计是使整个系统能
8、基本实现超市的进、销、存等管理功能,能让超市管理者 更直观的了解超市的经营状况,以做出相应的经营决策。管理信息系统(MIS)就是要对这些资 源建立正确的数据库,并进行信息的收集、传送、存储、编制成各种凭证、报表、台帐、图 形等信息,同时对这些信息进行维护,通过实测超市的各种运行情况,并利用过去的历史数 据预测未來的发展,从超市全局的角度出发进行决策,利用信息控制超市的行为,附注超市 完成其目标。本系统主要包括四大模块,分别是人事管理模块,销售管理模块,进货管理模块,库存 管理模块。每个模块的功能如下:1.商品管理模块功能:(1)实现商品信息的查询;(2)实现职工信息的更新,包括增加、删除、修改
9、功能;2.人事管理模块功能:(1)实现职工信息的查询;(2)实现职工信息的更新,包括增加、删除、修改功能;(3)实现供货商信息的查询;(4)实现供货商信息的更新,包括增加、删除、修改功能。3.销售管理模块功能:(1)实现前台商品的销售;(2)将商品的销售信息与数据库联系起來。4.进货管理模块功能:(1)实现进货信息的查询;(2)实现进货信息的更新,包括增加、删除、修改功能。5.库存管理模块功能:(3)实现库存信息的查询;第5章 系统数据库设计5. 1超市管理系统数据库E-R模型5. 2数据库表设计 5. 2. 1职工信息表职工信息表(StaffBill)用于存储职工信息,职工编号为主键是唯一标
10、识。表中各字段 功能定义如表5-1所示。中文字段名英文字段名字段类型长度主键/外键字段值约朿职工编号staffIDchar6pNOT NULL姓名namenvarchar8NOT NULL性別sexnchar2NOT NULL类別kindnvarchar10NULL身份证号idCardvarchar18NOT NULL备注othersntext50NULL表5-1职工信息表(StaffBill)5. 2. 2用户登录表用户登录表(Useis.Iiifo)用于存储用户的基本登录信息。表中各字段功能定义如表5-2所示。中文字段名英文字段名字段类型长度主键/外键字段值约朿帐号loginlDchar6
11、P/FNOT NULL密码passWordchar6NOT NULL表5-2用户信息表(Users_Info)5. 2. 3商品信息表商品信息表(Goods Iiifo)用于存储商品的信息。表中各字段功能定义如表5-3所示。中文字段名英文字段名字段类型兵度主键/外键字段值约朿商品编号merchlDchar6pNOT NULL供货商号profferlDchar6FNOT NULL名称fullNamenvarchar80NOT NULL类别kindnvarchar8NULL单价unitCostmoney1NOT NULL备注othersntext50NULL表5-3商晶信息表(Goods_Info
12、)5. 2. 4供货商信息表供货商信息表(Sup_Info)用于存储供货商的信息。表中各字段功能定义如表5-4所z5o中文字段名英文字段名字段类型兵度主键/外键字段值约朿供货商号SupplierlDchar6pNOT NULL名称Namenvarchar50NOT NULL联系人contactPersonnvarchar8NOT NULL联系电话phonevarchar12NOT NULL联系地址addressnvarchar50NOT NULL备注othersntext50NULL表5-4供货商信息表(Sup_Info)5. 2. 5进货信息表进货信息表(Buy)存储进货信息。表中各字段功能
13、定义如表5-5所示。中文字段名英文字段名字段类型长度主键/外键字段值约朿进货单号Buy IDchar6pNOT NULL商品编号GoodsIDchar6P/FNOT NULL供货商号SupplierlDchar6FNOT NULL进货价Pricemoney4NOT NULL数量Amountint4NOT NULL金额Summoney4NOT NULL进货日期Datedatetime8NOT NULL备注Remarkntext50NULL表5-5进货信息表(Buy)5. 2. 6销售信息表销售信息表(Sell)用于存储销售信息。表中各字段功能定义如表5-6所示。中文字段名英文字段名字段类型兵度主
14、键/外键字段值约朿销售单号SeellDchar6pNOT NULL商品编号GoodsIDchar6P/FNOT NULL销售数量Amountint4NOT NULL销售日期Datedatetime8NOT NULL表5-6销售信息表(Sell)5. 2. 7库存信息表库存信息表(Stock)存储库存信息。表中各字段定义如表5-7所示。中文字段名英文字段名字段类型兵度主键/外键字段值约朿商品编号GoodsIDchar6P/FNOT NULL库存数量Amountint4NOT NULL表5-7库存信息表(Stock)5. 3创建数据库(1)使用T-SQL语句创建超市商品管理系统数据库。CREATE
15、 DATABASE db SMMS ON PRIMARY(NAME = Ndb_SMMS; FILENAME = F:SMMSSMMSVDataBase db_SMMS.mdf , SIZE = 3072KB , FILEGROWTH = 1024KB )LOGON(NAME = Ndb_SMMSog: FILENAME = NT:SMMSSMMS DataBase db_SMMS_log.ldf , SIZE = 1024KB , FILEGROWTH =10%)(2)使用T-SQL语句创建库存表。CREATE TABLE Stock(GoodsID varchar (10) COLLATE
16、 Chinese_PRC_CI_AS NOT NULL,Amount int NOT NULL,PRIMARY KEY (StockID),FOREIGN KEY (GoodsID) REFERENCES tb_Goods(GoodsID);(3)使用T-SQL语句创建库存视图。create view v_StockSASSELECT tb_S tock. StockID, tb_Goods.GoodsName, tb_Stock. Amount, tb_Stock.Remark FROMtb Stock INNER JOIN tb Goods ON tb Stock.G第6章系统功能模块实现
17、6.1系统登录模块用户登录模块在本系统的首页。用户输入用户名和密码后,系统进行验证,验证通 过进入程序的主界面。界面如图6-1所示。图6-1用户登录界面主要实现代码如下:public bool Veri(strmg tb_table. string Id, string Pwd)bool jud = false;if (Id != & Pwd != nn)SqlDataReader temDR = MyClass.getcom(uselect * from n +tb.table + v where UserName=m + Id.Trim() + mand Pass=Ht + Pwd.Tnm
18、() + HH,);jud = teniDR.ReadQ;if (jud)elseMessageBox.Show(nffl户名或密码错误!罗提示”,MessageBoxButtons.OK, MessageBoxIcon.Information);MyClass.concloseQ;elseMessageBox. Shov(请将登录信息添写完整”);return jud;6. 2商品信息管理模块此模块进行对商品信息的录入,能够对商品进行合理的管理,界面如图6-2所示。图6-2商品信息管理界面主要实现代码如下:private void btnAdd_Click(object sender. Ev
19、entArgs e)bool t = false; string txt;string RecID;string TypelD;if(txtName.Text=,n)MessageBox.ShowC1储输入筒品名称! ”);txtName.FocusQ;else if(txtPnce.Text=,M,)MessageBox.Show(,储输入筒品单价!”);txtPrice.FocusQ;else if (comboxType.Text = ,H,)MessageB ox.Show(H请选择商品类型!);comboxType.FocusQ;else if (txtKeep.Text = nn)
20、MessngeBox.Show(/ 储输入保质期”);txtKeep.FocusQ;elseSqlDataReader temDR = MyDataClass.getcom(Hselect * from tb_Goods where GoodsName + txt +t = temDR.ReadQ;lf(t)MessageBox.Show(Hjht商品名称已存在! M);txtName.Text = ,H,;txtName.FocusQ;elsestring Find_SQL2;string RecID2;tryTypeED = My_SetTable 或 0 .Ro wscomboxT yp
21、e. Selectedlndex 0 .T oString();RecID = MyMC.GetAutocoding(Htb_Goods, MGoodsIDH);/获取编号RecID2 = MyMC.GetAutocoding(Htb-Stock, nStockIDM);/获取编号Find_SQL = H insert intotb_Goods(GoodsID,GoodsName,TypeID,Remark,Price,Keep) values + RecID+ + txtName.Text + + TypelD + + txtRemark.Text + +txtPnce.Text + ”畀
22、+ txtKeep.Text + T;Fmd_SQL2 = insert into tb_Stock(StockId,GoodsID,Amount) values (川 + RecID2 +V + RecID + nOr;MyDataClass.getsqlcom(Fmd_SQL);MyDataChss.getsqlcom(Find_SQL2 );/向库存添加信息MessageBox.Show(H添加成功! M);ListViewItem 1 = new List Vie wltem();l.Text = txtName.Text; btnCancle_Click(sender, e);cat
23、ch (Exception ec)MessageBox.Show(ec.Message);MessageBox.Show(H 添加失败”);6. 3职工信息管理模块此模块有对职工的添加,修改,删除等功能,能够对用户进行合理的管理,界面如图6-2所不。图6-3职工信息管理界面主要实现代码如下:private void btnSave_Click(object sender, EventArgs e)string RecID;if(txtName.Text=,H,)MessageBox-ShowC1储添加职工姓名! H);txtName.FocusQ;elseif (Jud = 1)RecID =
24、 MyMC.GetAutocodmgCb-Workef1, HWorkerIDM);/获取编号 Find_SQL = insert into tb_Worker(WorkerID,WorkerName.Remark) values(n,+RecID+,7n+txtName.Text+IM;,+txtRemark.Text+H,)H;MyDataClass.getsqlcom(Fmd_SQL);MessageBox.Show(H添加成功! n);InfLoadQ;WinstateTQ;if (Jud = 2)Find_SQL =Hupdate tb_Worker setWoi:kei:N:ime
25、=”+txtN:imeText+”Remm:k=+txtRemMkText+”whe比 WorkeHD+txtWoi:kerIDText+”;MyDataClass.getsqlcom(Find_SQL); MessageBox.Show(n修改成功! H); InfLoadQ;WinstateTQ;6. 4供货商信息管理模块此模块有对供货商的添加,修改,删除等功能,能够对供货商进行合理的管理。界 面如图6-3所示。图6-4供货商管理界面主要实现代码如下:private void btnSave_Click(object sender, EventArgs e)bool t = false;s
26、tring txt;string RecID;if (txtName.Text = nn)MessageBox.Show(请输入供货商名称!);txtName.FocusQ;elseif (Jud = 1)SqlDataReader teniDR = MyDataClass.getcom(nselect * from tbSupplier whereSupplierName =m + txt + ,nn);t = temDR.ReadQ;lf(t)MessageBoxShow(此供货商名称已存在! ”);txtName.Text = nM;txtName.FocusO;elseRecID =
27、MyMC.GetAutocoding(Htb_Supplier,r, SupplierDD11);/获取编号Find_SQL = ninsert into tb_supplier(SupplierID,SupplierName,TeLAddress,Remark)values+ RecID+ H7M + txtName.Text + + txtTel.Text + ”畀 + txtAddress.Text + +txtRemark.Text + )H;MyDatnCbss getsqlc om(Find_SQL);MessageBox.Shoxv(添加成功! H);InfLoadQ;Winst
28、ateT();if (Jud = 2)Find_SQL = select * from tb_Supplier where SupplierName - n + txt + ,Hand SupplierID!=HI+ ID+,MM;SqlDataReader teniDR = MyDataClass.getcom(Find_SQL);t = temDR.ReadQ;lf(t)MessngeBox.ShowC此供货商名称己存在! ”);txtName.Text =,M,;txtName.FocusO;elseFind_SQL = update tb_Supplier set SupplierName=H, + txtName.Text + HTel=,u + txtTel.Text +,nAddress-H + txtAddress.Text + H,.Remark=n, + txtRemark.Text + where SupplierID=n,+ID+nm;MyDataCbss getsqlc om(Find_SQL);MessogeBox.ShowC修改成功! H);InfLoadQ;WinstateT();6.5添加销售信息模块销售员将销售信息录入方便了销售工作,提高了工作效率。界面如图6-4所示。图6-5添加销
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1