超市管理系统代码

上传人:无*** 文档编号:169071670 上传时间:2022-11-14 格式:DOC 页数:26 大小:339KB
收藏 版权申诉 举报 下载
超市管理系统代码_第1页
第1页 / 共26页
超市管理系统代码_第2页
第2页 / 共26页
超市管理系统代码_第3页
第3页 / 共26页
资源描述:

《超市管理系统代码》由会员分享,可在线阅读,更多相关《超市管理系统代码(26页珍藏版)》请在装配图网上搜索。

1、1.1 课程设计的目的通过本次课程设计,使学生能够全面、深刻地掌握数据库系统的设计流程。根据在数据库原理课程中所学到的数据库理论知识,结合某个具体的实际需求,最终开发出一个较为实用的数据库系统。1.2 课程设计的背景和意义1.2.1课程设计的背景20世纪90年代后期特别是近几年,我国的超市产业飞速发展,其经营模式更为复杂,旧的管理体制已经无法适应超市的发展,这就迫切的需要引进新的管理技术。超市的数据和业务越来越庞大,而计算机就是一种高效的管理系统,这就需要我们把超市的管理与计算机结合起来,从而超市管理系统应运而生。依靠现代化的计算机信息处理技术来管理超市,节省了大量的人力、物力,改善了员工的并

2、且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。1.2.2 课程设计的意义“数据库课程设计”的设计思想旨在强调学生的实际编程能力的培养与创意灵感的发挥。为此,本课程结合学科特点,除了让学生掌握数据库原理的理论知识,还增加了需求功能让学生完成,并鼓励学生的创作出个性的程序,满足客户需求,与市场的实际项目相结合。学生对此热情高,实际收获大,效果好。通过课堂学习和参与相关项目设计,学生对书本支持有了深刻的理解,实践性教学取得了良好效果。1.3 课程设计环境操作系统:Windows xp/vista开发软件:MyEclipse数

3、据库:Microsoft SQL Server 2000第2章 系统需求分析随着人们生活水平的不断提高,对于物质的需求也越来越高,而超市作为日常生活用品聚集的场所,随着全球各种超市的数目的不断增加,规模不断增大,其管理难度也相应的增加,而为了适应当今信息化发展的时代,一套完整的超市商品管理系统显得尤为重要。2.1 问题的提出在信息化高速发展的今天,超市商品管理的信息化管理已成为必不可缺的一部分,但是目前的大多是超市商品管理系统应用难度较高,许多工作需要技术人员配合才能完成,角色分工不明确;改版工作量大,系统扩展能力差,应用时更是降低了灵活性,这就使得一套完善的、能够正常工作的商品管理系统应运而

4、生。2.2 可行性分析系统的可行性分析是对课题的通盘考虑,是系统开发者进行进一步工作的前提,是系统设计与开发的前提与基础。系统的可行性分析可以使系统开发者尽可能早的估计到课题开发过程中的困难,并在定义阶段认识到系统方案的缺陷,这样就能花费较少的时间和精力,也可以避免许多专业方面的困难。所以,系统的可行性分析在整个开发过程中是非常重要的。2.2.1 经济可行性分析因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。2.2.2 技术可行性分析本系统采用基于W

5、indows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。综合以上三方面,该系统具有很高的开发可行性,无论是从技术上或者经济上还是操作上。因此,可以设计该系统的数据流程图,建立数据字典。2.3 系统的设计目标本系统主要包括四大模块,分别是人事管理模块,销售管理模块,进货管理模块,库存管理模块。每个模块的功能如下:1. 人事管理模块功能:(1)实现职工信息的查询;(2)实现职工信息的更新,包括增加、删除、修改功能;(3)实现

6、供货商信息的查询;(4)实现供货商信息的更新,包括增加、删除、修改功能。2. 销售管理模块功能:(1)进行前台的销售;(2)将前台的销售与后台的数据库联系起来。3. 进货管理模块功能:(1)实现进货信息的查询;(2)实现进货信息的更新,包括增加、删除、修改功能。4. 库存管理模块功能:(1)实现商品库存信息的查询;第3章 系统开发的技术背景3.1 开发技术及运行环境3.1.1 系统所采用的开发技术通过权衡对各种编程语言和数据库使用的熟练程度,本系统选用Microsoft Visual Studio 2005作为前台开发工具,后台数据库采用SQL Server 2005,整体设计以软件工程思想为

7、指导思想,力求开发一个实用性强、操作简单且功能完整的超市商品管理系统。3.1.2 系统运行环境客户端操作系统:Windows NT/2000/XP或更高版本服务器操作系统:Windows XP 数据库:Microsoft SQL Server 2000前台:MyEclipse第4章 系统分析与总体设计4.1 系统结构框架一般的超市商品管理系统,主要由五大模块组成,即商品信息管理模块,人事管理模块,销售管理模块,进货管理模块,库存管理模块,此系统也不例外,主要有此五大模块组成。图4-1系统功能结构图。图4-1 系统功能结构图4.2 系统功能设计系统功能设计是使整个系统能基本实现超市的进、销、存等

8、管理功能,能让超市管理者更直观的了解超市的经营状况,以做出相应的经营决策。管理信息系统(MIS)就是要对这些资源建立正确的数据库,并进行信息的收集、传送、存储、编制成各种凭证、报表、台帐、图形等信息,同时对这些信息进行维护,通过实测超市的各种运行情况,并利用过去的历史数据预测未来的发展,从超市全局的角度出发进行决策,利用信息控制超市的行为,附注超市完成其目标。本系统主要包括四大模块,分别是人事管理模块,销售管理模块,进货管理模块,库存管理模块。每个模块的功能如下:1. 商品管理模块功能:(1)实现商品信息的查询;(2)实现职工信息的更新,包括增加、删除、修改功能;2. 人事管理模块功能:(1)

9、实现职工信息的查询;(2)实现职工信息的更新,包括增加、删除、修改功能;(3)实现供货商信息的查询;(4)实现供货商信息的更新,包括增加、删除、修改功能。3. 销售管理模块功能:(1)实现前台商品的销售;(2)将商品的销售信息与数据库联系起来。4. 进货管理模块功能:(1)实现进货信息的查询;(2)实现进货信息的更新,包括增加、删除、修改功能。5. 库存管理模块功能:(3)实现库存信息的查询;第5章 系统数据库设计5.1超市管理系统数据库E-R模型通过对超市管理系统分析,得出系统的E-R图。图5-1 数据库E-R模型图。名称职工/用户职工编号供货日期进货日期电话地址供货商编号供货商进货进货单号

10、商品编号名称价格商品姓名性别mnmn工资身份证号供货销售单号销售日期数量mn销售图5-1 数据库E-R模型图5.2数据库表设计5.2.1 职工信息表职工信息表(StaffBill)用于存储职工信息,职工编号为主键是唯一标识。表中各字段功能定义如表5-1所示。中文字段名英文字段名字段类型长度主键/外键字段值约束职工编号staffIDchar6PNOT NULL姓名namenvarchar8NOT NULL性别sexnchar2NOT NULL类别kindnvarchar10NULL身份证号idCardvarchar18NOT NULL备注othersntext50NULL表5-1职工信息表(St

11、affBill)5.2.2 用户登录表用户登录表(Users_Info)用于存储用户的基本登录信息。表中各字段功能定义如表5-2所示。 中文字段名英文字段名字段类型长度主键/外键字段值约束帐号loginIDchar6P/FNOT NULL密码passWordchar6NOT NULL表5-2 用户信息表(Users_Info)5.2.3 商品信息表商品信息表(Goods_Info)用于存储商品的信息。表中各字段功能定义如表5-3所示。中文字段名英文字段名字段类型长度主键/外键字段值约束商品编号merchIDchar6PNOT NULL供货商号profferIDchar6FNOT NULL名称f

12、ullNamenvarchar80NOT NULL类别kindnvarchar8NULL单价unitCostmoney4NOT NULL备注othersntext50NULL表5-3商品信息表(Goods_Info)5.2.4 供货商信息表供货商信息表(Sup_Info)用于存储供货商的信息。表中各字段功能定义如表5-4所示。中文字段名英文字段名字段类型长度主键/外键字段值约束供货商号SupplierIDchar6PNOT NULL名称Namenvarchar50NOT NULL联系人contactPersonnvarchar8NOT NULL联系电话phonevarchar12NOT NUL

13、L联系地址addressnvarchar50NOT NULL备注othersntext50NULL表5-4 供货商信息表(Sup_Info)5.2.5 进货信息表进货信息表(Buy)存储进货信息。表中各字段功能定义如表5-5所示。中文字段名英文字段名字段类型长度主键/外键字段值约束进货单号BuyIDchar6PNOT NULL商品编号GoodsIDchar6P/FNOT NULL供货商号SupplierIDchar6FNOT NULL进货价Pricemoney4NOT NULL数量Amountint4NOT NULL金额Summoney4NOT NULL进货日期Datedatetime8NOT

14、 NULL备注Remarkntext50NULL表5-5进货信息表(Buy)5.2.6 销售信息表销售信息表(Sell)用于存储销售信息。表中各字段功能定义如表5-6所示。中文字段名英文字段名字段类型长度主键/外键字段值约束销售单号SeelIDchar6PNOT NULL商品编号GoodsIDchar6P/FNOT NULL销售数量Amountint4NOT NULL销售日期Datedatetime8NOT NULL表5-6销售信息表(Sell)5.2.7 库存信息表库存信息表(Stock)存储库存信息。表中各字段定义如表5-7所示。中文字段名英文字段名字段类型长度主键/外键字段值约束商品编号

15、GoodsIDchar6P/FNOT NULL库存数量Amountint4NOT NULL表5-7 库存信息表(Stock)5.3 创建数据库(1)使用TSQL语句创建超市商品管理系统数据库。CREATE DATABASE db_SMMS ON PRIMARY ( NAME = Ndb_SMMS, FILENAME = F:SMMSSMMSDataBase db_SMMS.mdf , SIZE = 3072KB , FILEGROWTH = 1024KB ) LOG ON ( NAME = Ndb_SMMS_log, FILENAME = NF:SMMSSMMSDataBase db_SMMS

16、_log.ldf , SIZE = 1024KB , FILEGROWTH = 10%)(2)使用TSQL语句创建库存表。CREATE TABLE Stock( GoodsID varchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL, Amount int NOT NULL, PRIMARY KEY (StockID), FOREIGN KEY (GoodsID) REFERENCES tb_Goods(GoodsID);(3)使用TSQL语句创建库存视图。create view v_StockSASSELECT tb_Stock.StockID, tb

17、_Goods.GoodsName, tb_Stock.Amount, tb_ Stock.Remark FROM tb_Stock INNER JOIN tb_Goods ON tb_Stock.G 第6章 系统功能模块实现6.1 系统登录模块用户登录模块在本系统的首页。用户输入用户名和密码后,系统进行验证,验证通过进入程序的主界面。界面如图6-1所示。图6-1 用户登录界面主要实现代码如下: public bool Veri(string tb_table, string Id, string Pwd) DataClass.MyMeans MyClass = new SMMS.DataCla

18、ss.MyMeans(); bool jud = false; if (Id != & Pwd != ) SqlDataReader temDR = MyClass.getcom(select * from + tb_table + where UserName= + Id.Trim() + and Pass= + Pwd.Trim() + ); jud = temDR.Read(); if (jud) DataClass.MyMeans.Login_Name = Id.Trim(); DataClass.MyMeans.Login_ID = temDR.GetString(0); DataC

19、lass.MyMeans.My_con.Close(); DataClass.MyMeans.My_con.Dispose(); else MessageBox.Show(用户名或密码错误!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); MyClass.con_close(); else MessageBox.Show(请将登录信息添写完整); return jud; 6.2 商品信息管理模块此模块进行对商品信息的录入,能够对商品进行合理的管理,界面如图6-2所示。图6-2 商品信息管理界面主要实现代码如下: private v

20、oid btnAdd_Click(object sender, EventArgs e) bool t = false; string txt; string RecID; string TypeID; if (txtName.Text = ) MessageBox.Show(请输入商品名称!); txtName.Focus(); else if (txtPrice.Text = ) MessageBox.Show(请输入商品单价!); txtPrice.Focus(); else if (comboxType.Text = ) MessageBox.Show(请选择商品类型!); combo

21、xType.Focus(); else if (txtKeep.Text = ) MessageBox.Show(请输入保质期); txtKeep.Focus(); else txt = txtName.Text.Trim(); SqlDataReader temDR = MyDataClass.getcom(select * from tb_Goods where GoodsName = + txt + ); t = temDR.Read(); if (t) MessageBox.Show(此商品名称已存在!); txtName.Text = ; txtName.Focus(); else

22、string Find_SQL2; string RecID2; try TypeID = My_Set.Tables0.RowscomboxType.SelectedIndex0.ToString(); RecID = MyMC.GetAutocoding(tb_Goods, GoodsID);/获取编号 RecID2 = MyMC.GetAutocoding(tb_Stock, StockID);/获取编号 Find_SQL = insert into tb_Goods(GoodsID,GoodsName,TypeID,Remark,Price,Keep) values ( + RecID

23、 + , + txtName.Text + , + TypeID + , + txtRemark.Text + , + txtPrice.Text + , + txtKeep.Text + ); Find_SQL2 = insert into tb_Stock(StockId,GoodsID,Amount) values ( + RecID2 + , + RecID + ,0); MyDataClass.getsqlcom(Find_SQL); MyDataClass.getsqlcom(Find_SQL2);/向库存添加信息 MessageBox.Show(添加成功!); ListViewI

24、tem l = new ListViewItem(); l.Text = txtName.Text; l.SubItems.Add(comboxType.Text); l.SubItems.Add(txtPrice.Text); l.SubItems.Add(txtKeep.Text); l.SubItems.Add(txtRemark.Text); listView1.Items.Add(l); btnCancle_Click(sender, e); catch (Exception ec) MessageBox.Show(ec.Message); MessageBox.Show(添加失败)

25、; 6.3 职工信息管理模块此模块有对职工的添加,修改,删除等功能,能够对用户进行合理的管理,界面如图6-2所示。图6-3 职工信息管理界面主要实现代码如下: private void btnSave_Click(object sender, EventArgs e) string RecID; if (txtName.Text = ) MessageBox.Show(请添加职工姓名!); txtName.Focus(); else if (Jud = 1) RecID = MyMC.GetAutocoding(tb_Worker, WorkerID);/获取编号 Find_SQL = ins

26、ert into tb_Worker(WorkerID,WorkerName,Remark) values(+RecID+,+txtName.Text+,+txtRemark.Text+); MyDataClass.getsqlcom(Find_SQL); MessageBox.Show(添加成功!); InfLoad(); WinstateT(); if (Jud = 2) Find_SQL =update tb_Worker set WorkerName=+txtName.Text+,Remark=+txtRemark.Text+ where WorkerID=+txtWorkerID.T

27、ext+; MyDataClass.getsqlcom(Find_SQL); MessageBox.Show(修改成功!); InfLoad(); WinstateT(); 6.4 供货商信息管理模块此模块有对供货商的添加,修改,删除等功能,能够对供货商进行合理的管理。界面如图6-3所示。图6-4 供货商管理界面主要实现代码如下: private void btnSave_Click(object sender, EventArgs e) bool t = false; string txt; string RecID; if (txtName.Text = ) MessageBox.Show

28、(请输入供货商名称!); txtName.Focus(); else if (Jud = 1) txt = txtName.Text.Trim(); SqlDataReader temDR = MyDataClass.getcom(select * from tb_Supplier where SupplierName = + txt + ); t = temDR.Read(); if (t) MessageBox.Show(此供货商名称已存在!); txtName.Text = ; txtName.Focus(); else RecID = MyMC.GetAutocoding(tb_Sup

29、plier, SupplierID);/获取编号 Find_SQL = insert into tb_supplier(SupplierID,SupplierName,Tel,Address,Remark) values ( + RecID + , + txtName.Text + , + txtTel.Text + , + txtAddress.Text + , + txtRemark.Text + ); MyDataClass.getsqlcom(Find_SQL); MessageBox.Show(添加成功!); InfLoad(); WinstateT(); if (Jud = 2)

30、txt = txtName.Text.Trim(); Find_SQL = select * from tb_Supplier where SupplierName = + txt + and SupplierID!=+ ID+; SqlDataReader temDR = MyDataClass.getcom(Find_SQL); t = temDR.Read(); if (t) MessageBox.Show(此供货商名称已存在!); txtName.Text = ; txtName.Focus(); else Find_SQL = update tb_Supplier set Suppl

31、ierName= + txtName.Text + ,Tel= + txtTel.Text + ,Address= + txtAddress.Text + ,Remark= + txtRemark.Text + where SupplierID=+ID+; MyDataClass.getsqlcom(Find_SQL); MessageBox.Show(修改成功!); InfLoad(); WinstateT(); 6.5 添加销售信息模块销售员将销售信息录入方便了销售工作,提高了工作效率。界面如图6-4所示。图6-5 添加销售信息界面主要实现代码如下: private void button

32、2_Click(object sender, EventArgs e) if (txtSum.Text.Trim().Length != 0) string s1; string s2; string s3; string s4; float zl; float PayS; if (txtPayS.Text = ) PayS = 0; else PayS = float.Parse(txtPayS.Text); zl = PayS - TotalPrice; txtPayS.Text = PayS.ToString(); txtPayY.Text = TotalPrice.ToString()

33、; txtZL.Text = zl.ToString(); s1 = 商品数量 + Amount1+ 件 + n + n; s2 = 实付款 + PayS + 元 + n + n; s3 = 应付款 + TotalPrice.ToString() + 元 + n + n; s4 = 找零 + zl.ToString() + 元 ; MessageBox.Show(s1+s2+s3+s4, 系统提示); txtPayS.Text = ; txtPayY.Text = ; txtZL.Text = ; txtID.Text = ; txtAmount.Text = ; txtSum.Text =

34、; TotalPrice = 0; Amount1 = 0; listView1.Items.Clear(); else MessageBox.Show(请购买商品!); 6.6 添加进货信息模块录入进货信息加强对商品的管理,使商品信息更为详细,方便了对商品的管理。界面如图6-5所示。图6-6 用添加进货信息界面主要实现代码如下:private void btnAdd_Click(object sender, EventArgs e) bool t = false; string txt; string RecID; if (txtID.Text = ) MessageBox.Show(请输入

35、商品编号!); txtID.Focus(); else if (txtPrice.Text = ) MessageBox.Show(请输入商品单价!); txtPrice.Focus(); else if (txtAmount.Text = ) MessageBox.Show(请输入商品数量!); txtAmount.Focus(); else if(comPy.Text=|comPm.Text=|comPd.Text=) MessageBox.Show(请将生产日期填写完整!); else if (comBy.Text = | comBm.Text = | comBd.Text = ) Me

36、ssageBox.Show(请将进货日期填写完整); else txt =txtID.Text.Trim(); SqlDataReader temDR = MyDataClass.getcom(select * from tb_Goods where GoodsID = + txt + ); t = temDR.Read(); if (!t) MessageBox.Show(此商品不存在!); txtID.Text = ; txtID.Focus(); else string Find_SQL2; string RecID2; try string GoodsID; string Suppli

37、erID; string datep; string dateb; datep =comPy.Text + / + comPm.Text + / + comPd.Text; dateb = comBy.Text + / + comBm.Text + / +comBd.Text; GoodsID = txtID.Text; SupplierID = My_Set.Tables0.RowscomSupplier.SelectedIndex0.ToString(); RecID = MyMC.GetAutocoding(tb_Buy, BuyID);/获取编号 RecID2 = MyMC.GetAu

38、tocoding(tb_Stock, StockID);/获取编号 Find_SQL = insert into tb_Buy(BuyID,GoodsID,EmployeeID,Price,Amount,Datep,Dateb,SupplierID,Remark) values ( + RecID + , +txtID.Text + , + DataClass.MyMeans.Login_Name + ,+txtPrice.Text +,+ txtAmount.Text+ ,+datep+,+dateb+,+SupplierID+,+txtRemark.Text+); Find_SQL2 =

39、Update tb_Stock set Amount = Amount + +txtAmount.Text+where GoodSID=+GoodsID+; MyDataClass.getsqlcom(Find_SQL); MyDataClass.getsqlcom(Find_SQL2);/向库存添加信息 MessageBox.Show(添加成功!); ListViewItem l = new ListViewItem(); l.Text =RecID; l.SubItems.Add(txtID.Text); l.SubItems.Add(txtPrice.Text); l.SubItems.

40、Add(txtAmount.Text); l.SubItems.Add(comSupplier.Text); l.SubItems.Add(txtRemark.Text); listView1.Items.Add(l); btnCancle_Click(sender, e); catch (Exception ec) MessageBox.Show(ec.Message); MessageBox.Show(添加失败); 6.7 库存信息管理模块库存信息管理能够使用户更为了解商品的库存情况,从而有利于商品的进货和销售的管理。界面如图6-6所示。图6-7 库存信息管理界面主要实现代码如下:priv

41、ate void btnSearch_Click(object sender, EventArgs e) string con; con = MyMC.Sqlcon(groupBox1.Controls, Link); if (con = ) MessageBox.Show(请输入查询信息); else Find_SQL = select * from StockS2 + con; MyDS_Grid = MyDataClass.getDataSet(Find_SQL, tb_Common); dataGridView1.DataSource = MyDS_Grid.Tables0; data

42、GridView1.AlternatingRowsDefaultCellStyle.BackColor = SystemColors.ActiveBorder;/设置基数行的颜色 dataGridView1.Columns0.HeaderText = 商品名称; dataGridView1.Columns1.HeaderText = 商品单价; dataGridView1.Columns2.HeaderText = 保质期; dataGridView1.Columns3.HeaderText = 库存数量; dataGridView1.Columns0.Width = 150; dataGridView1.Columns1.Width = 150;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!