收藏 分销(赏)

超市管理系统aspnet(含源文件).docx

上传人:pc****0 文档编号:8936790 上传时间:2025-03-08 格式:DOCX 页数:29 大小:1.21MB 下载积分:10 金币
下载 相关 举报
超市管理系统aspnet(含源文件).docx_第1页
第1页 / 共29页
超市管理系统aspnet(含源文件).docx_第2页
第2页 / 共29页


点击查看更多>>
资源描述
题 目: 超市管理系统 本人声明 我声明, 本论文(设计)工作是由本人在指导教师的指导下独立完成的, 在完成论文(设计)时所利用的一切资料均已在参考文献中列出。 目录 【摘要】 1 前 言 2 第一章 系统分析 3 1.1需求分析 3 1.2数据流程分析 4 1.3开发环境 4 第二章 系统数据库结构 5 2.1数据库分析设计 5 2.2数据库表结构 5 2.2.1商品信息表 5 2.2.2商品出售表 6 2.2.3商品入库表 6 2.2.4供应商表 7 2.2.5会员表 7 2.2.6商品库存情况表 8 2.2.7职员表 8 2.2.8用户表 8 2.3数据表关系图 9 第三章 系统功能模块 9 3.1系统各功能模块划分 9 3.2系统功能结构图 10 第四章 系统功能实现 10 4.1界面设计 11 4.1.1登录界面 11 4.1.2操作主界面 11 4.2 数据访问层 12 4.3 主要功能及实现 14 4.3.1商品添加界面 14 4.3.2商品查询界面 17 4.3.3商品入库界面 18 4.3.4商品出售界面 21 4.3.5供应商浏览界面 24 第五章 结论 25 第六章 参考文献 26 第七章 致谢 26 【摘要】 随着计算机的技术的日趋成熟,各种数据库软件业得到了很大的发展,信息管理系统的应用已经深入到社会的各个领域。为满足超市管理现代化的需求,国内软件商已经开发出很多较好的商品化超市管理软件,虽然这些超市管理软件其功能和性能都很完善,但它大多是面向大型超市而开发的,专业性很强、功能分工较细、操作和使用比较复杂,难以掌握。而很多小型超市由于管理人员不多且大多数不是超市管理业务人员、业务分工也不是很详细明确,这样的软件对于他们而言太庞大、大复杂,所以应用效果并不是很好。鉴于此,本文利用Microsoft Visual Studio 2005和SQL Server 2005编制《超市管理系统》,它一种适用于小型超市商品的进、销、存和超市员工的信息进行综合管理的应用软件。 关键字:超市管理系统 管理 系统 SQL Server 2005 前 言 目前大的超市已经拥有一整套比较完整的信息管理系统,而在一般小型的超市中大部分工作还是进行着手工管理,工作效率很低,并且不能及时了解超市各类商品的存库,顾客比较需求的商品难以在短时间找到、商品的入库和更新比较麻烦等等,不便于动态及时调整商品结构。同时由于不可避免的人为因素,造成数据的遗漏、误报等。 该《超市管理系统》较现有的大型超市的管理系统有如下的特点:①及时性:管理人员可以在任何时间内了解超市内的情况。②高效性:统一管理提高了办事效率;管理层能够迅速的对突发情况做出及时决策,如:货物的调配等。③低成本:该方案缩小了人员编制,减少了人员开发,货物的统一调配也带来了低成本高收入。④易操作性:该系统使用了现在流行的编译环境设计出的软件,操作简单,界面有好,而且软件的更新换代也很方便。本系统具有员工登记、查询、编辑、查询、修改、报表打印等功能,对于实现小型超市进、销、存等管理的数字化具有可行性,值得推广。 第一章 系统分析 1.1需求分析 (1)超市商品信息的维护 有新商品入库时,系统允许管理员添加新商品的记录;当商品出售或产品过期需要清除时,管理员可以删除产品信息。当记录有误时,管理员可以手动修改数据表中的记录。 (2)库存商品信息的查询 信息查询是《超市管理系统》的重要组成部分。用户可以按照商品编号和商品名称等查询条件浏览仓库中的商品信息。在需要时(可每隔一个时间段查询一次) 生成商品库存情况报告,实时报告商品库存情况,如库存量不足(小于某一自定的数量) 时,可生成缺货报告,并提供商品种类,来源等商品属性信息,方便采购人员进行商品采购。 (3)商品的入库、出售 采购员采购商品后,及时录入商品信息等数据,在数据库中进行数据更新。货架上商品卖到一定数量时,实时生成提货报告,并提供商品的库存信息。在收银处,随时录入卖出商品信息,如名称,数量,单价等,及时更新数据库数据。当超市客户大批量需要某商品时,允许直接从商品仓库中提货,此时系统应及时更新数据库信息。在某时间段内,当某类商品卖出数量较大,受到人们的欢迎,可将此类商品打印输出,用于市场导购和商品采购指导。 (4)报表打印功能 可以打印库存情况表,商品入库出售表及每个时间段的利润统计的报表。 (5)供应商、超市会员、登录账号 采购员可以根据供应商信息快速的采购所需商品,营业员可以根据会员进行打折和商品销售,每个员工都有不同权限的登录名,根据自己的登录名查找自己所需信息。 1.2数据流程分析 由商品的采购员根据商品的短缺报告进行商品的采购、入库,然后交由仓库管理员进行处理;仓库管理员根据架上商品的短缺报告从仓库记录中进行查询,并从中提取商品修改记录或生成缺货报告;货架管理员从仓库管理员处提取商品后应进行架存商品的相关信息录入及对应商品位置的摆放;场内服务员引导顾客完成商品的购买并促进商品的热销;顾客从商场内出来后首先应到柜台营业员处进行商品的购买记录并交付所购商品的金额,这样顾客方可完成商品的购买。如图1-1 采购员采购 仓库 商品 仓库管理员 仓库货架 超市货架 出售 货架管理员 营业员 图1-1 1.3开发环境 微软公司的Micrsoft Visual Studio.NET 2005是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。C#.NET2005提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统使用C#.NET2003是一个相对较好的选择。 计算机操作系统:Windows XP, 开发工具:Microsoft Visual Studio 2005 开发语言:C#语言 数据库管理系统: SQL Server 2005 电脑配置: 一般的主流配置完全可以顺畅实用 第二章 系统数据库结构 2.1数据库分析设计 在《超市管理系统》中,首先要创建超市信息管理系统数据库,然后在数据库中创建需要的表和字段。选用SQL Server2005做为数据库开发工具,SQL Server2005数据库汇集各种信息以供查询、存储和检索。SQL Server2005 的优点在于安全性高,他采用二级安全验证、登录验证及数据库用户帐号和角色的许可验证。SQL Server2005也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。SQL Server2005 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。 在上章1.1节需求分析中列出了《超市管理系统》的所需表:商品信息表、商品出售表、商品入库表、商品库存情况表、供应商表、会员表、职员表、用户表。 2.2数据库表结构 为了实现系物应有的功能,结合本系统对有关数据的存储的需要,现将本系统数据库设计成8个数据库表: 2.2.1商品信息表 列名 数据类型 是否为空 说明 商品编号 Int NOT NULL 主键 商品名称 Varchar(50) NOT NULL 商品类别 Varchar(20) NOT NULL 商品进价 Numeric(8, 2) NOT NULL 商品售价 Numeric(8, 2) NOT NULL 供应商 Varchar(50) NOT NULL 生产日期 Datetime NOT NULL 保质期 Int NOT NULL 过期日期 Datetime NOT NULL 备注 Varchar(100) NULL 2.2.2商品出售表 列名 数据类型 是否为空 说明 出售编号 Int NOT NULL 主键,自动增量 商品名称 Varchar(50) NOT NULL 出售价格 Numeric(8, 2) NOT NULL 出售数量 Int NOT NULL 出售日期 Datetime NOT NULL 出售总额 Numeric(8, 2) NOT NULL 本次利润 Numeric(8, 2) NOT NULL 备注 Varchar(100) NULL 2.2.3商品入库表 列名 数据类型 是否为空 说明 入库编号 Int NOT NULL 主键,自动增量 商品名称 Varchar(50) NOT NULL 进货日期 Datetime NOT NULL 进货价格 Numeric(8, 2) NOT NULL 进货数量 Int NOT NULL 供应商 Varchar(50) NOT NULL 备注 Varchar(100) NULL 2.2.4供应商表 列名 数据类型 是否为空 说明 供应商编号 Int NOT NULL 主键 供应商名称 Varchar(50) NOT NULL 联系人 Varchar(50) NOT NULL 联系电话 Varchar(50) NOT NULL 联系地址 Varchar(50) NOT NULL 开户行 Varchar(50) NOT NULL 银行账号 Varchar(50) NOT NULL 备注 Varchar(100) NULL 2.2.5会员表 列名 数据类型 是否为空 说明 会员卡号 Int NOT NULL 主键 会员姓名 Varchar(20) NOT NULL 会员性别 Varchar(10) NOT NULL 会员年龄 Int NOT NULL 联系电话 Varchar(20) NOT NULL 注册日期 Datetime NOT NULL 消费金额 Varchar(50) NOT NULL 备注 Varchar(100) NULL 2.2.6商品库存情况表 列名 数据类型 是否为空 说明 库存编号 Int NOT NULL 主键,自动增量 商品名称 Varchar(50) NOT NULL 库存数量 Int NOT NULL 进货价格 Numeric(8, 2) NOT NULL 总额 Numeric(8, 2) NOT NULL 备注 Varchar(100) NULL 2.2.7职员表 列名 数据类型 是否为空 说明 职员编号 Int NOT NULL 主键 姓名 Varchar(50) NOT NULL 年龄 Int NOT NULL 性别 Varchar(4) NOT NULL 学历 Varchar(50) NOT NULL 类别 Varchar(20) NOT NULL 工资 Varchar(50) NOT NULL 联系电话 Varchar(50) NOT NULL 联系地址 Varchar(50) NOT NULL 籍贯 Varchar(50) NOT NULL 聘用日期 Datetime NOT NULL 备注 Varchar(100) NULL 2.2.8用户表 列名 数据类型 是否为空 说明 用户编号 Int NOT NULL 主键 用户名 Varchar(20) NOT NULL 密码 Varchar(20) NOT NULL 权限 Varchar(20) NOT NULL 2.3数据表关系图 数据表关系如图2-1 图2-1 第三章 系统功能模块 3.1系统各功能模块划分 《超市管理系统》属综合性系统,数据量较大,数据间的处理复杂。为了更好的实现该系统所需的功能,将本系统划分为9个管理模块。 ·商品信息管理:服务员可以根据市场的要求来进行添加或删除商品信息。 采购员可以浏览商品信息来进行商品的采购。 管理员可以进行商品信息添加、删除、修改、浏览。 ·商品查询: 服务员根据顾客的要求进行查询,以满足顾客的需求。商品查询可以根据商品编、名称和供应商进行。 ·商品库存管理:仓库管理员根据商品库存情况进行商品货物的存放以便商品上架。 货架管理员根据销售情况进行商品的上架,保证商品部空缺。 管理员可以根据营业员的报表进行商品入库、商品销售进行修改。以便商品数据部遗漏、重复。 ·供应商管理: 采购员可以根据供应商的信息进行采购,还可以根据新商品的供应商,进行供应商的添加、删除和修改。 ·打印报表: 打印商品的出入库和销售报表,便以结算。 ·职员管理: 对超市的职员进行登记,录入数据库,方便管理员进行超市管理。 ·会员信息管理:营业员可以根据会员信息进行打折和查找会员;览会员信息。 管理员注册新会员,会员卡的挂失,会员信息的修改删除。 ·用户管理: 管理员对本超市的职员给每人一个注册用户,职员根据自己的用户名进行工作;每个用户都可以修改自己的密码方便记忆,保证秘密性。 ·退出系统: 保存数据退出系统。 3.2系统功能结构图 系统功能结构图如图3-1。 超市管理系统 会员信息管理 商品信息管理 商品 库存管理 退出系统 商品查询 供应商管理 报表打印 职员管理 用户管理 图3-1 第四章 系统功能实现 4.1界面设计 4.1.1登录界面 系统将会根据登录用户的类型进入不同的操作界面。(普通用户登陆进入有些功能不显示;管理员登陆进入所有功能都显示)如图4-1。 图4-1 4.1.2操作主界面 用户登陆进入的界面。如图4-2。 图4-2 管理用户登录得界面、如图4-3。 图4-3 4.2 数据访问层 根据软件开发的基本流程,在完成了系统需求、系统分析、系统设计后,就进入系统实现阶段了,首先就是数据的交换层,数据交换层是本系统最重要的技术之一。其代码如下: class DB { SqlConnection con; const string link = @"Data Source=.\sqlexpress;Initial Catalog=superstore_Data;Integrated Security=True"; public DB() { con = new SqlConnection(link); } public void open() { if (con != null) { if (con.State == ConnectionState.Closed) { con.Open(); } } } public void close() { if (con != null) { if (con.State == ConnectionState.Open) { con.Close(); } } } public int set(string sql) { open(); SqlCommand cmd = new SqlCommand(sql, con); int i = cmd.ExecuteNonQuery(); close(); return i; } public int selectCount(string sql) { open(); SqlCommand cmd = new SqlCommand(sql, con); int i = Convert.ToInt32(cmd.ExecuteScalar()); close(); return i; } public string firstr(string sql) { SqlCommand cmd = new SqlCommand(sql, con); SqlDataAdapter sda = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); sda.Fill(ds); return ds.Tables[0].Rows[0][0].ToString(); } public DataView filedata(string sql) { SqlCommand cmd = new SqlCommand(sql, con); SqlDataAdapter sda = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); sda.Fill(ds); return ds.Tables[0].DefaultView; } public int checklogin(string name, string password, string userflag) { string s = "select count(*) from 用户表 where 用户名=@name and 密码=@password and 权限=@userflag"; open(); SqlCommand cmd = new SqlCommand(s, con); cmd.Parameters.Add("@name", SqlDbType.VarChar); cmd.Parameters.Add("@password", SqlDbType.VarChar); cmd.Parameters.Add("@userflag", SqlDbType.VarChar); cmd.Parameters["@name"].Value = name; cmd.Parameters["@password"].Value = password; cmd.Parameters["@userflag"].Value = userflag; int i = Convert.ToInt32(cmd.ExecuteScalar()); close(); return i; } } 4.3 主要功能及实现 4.3.1商品添加界面 界面如图4-4。 图4-4 实现代码: public partial class wareIsertnForm : Form { private bool checkAdd() { if (this.tbbianhao.Text.Trim().Length == 0) { MessageBox.Show("商品编号不能为空!!!"); tbbianhao.Focus(); return false; } if (this.tbshpmingcheng.Text.Trim().Length == 0) { MessageBox.Show("商品名称不能为空!!!"); tbshpmingcheng.Focus(); return false; } if (this.tbshpleibie.Text.Trim().Length == 0) { MessageBox.Show("商品类别不能为空!!!"); tbshpleibie.Focus(); return false; } try { double n1 = Convert.ToDouble(tbshpjinjia.Text.Trim()); if (n1 < 0) { MessageBox.Show("商品进价应大于或等于零!!!"); tbshpjinjia.Focus(); return false; } } catch (Exception err) { MessageBox.Show("商品进价只能为数字!!!"); tbshpjinjia.Focus(); return false; } try { double n2 = Convert.ToDouble(tbshoujia.Text.Trim()); if (n2 <= 0) { MessageBox.Show("商品售价应大于零!!!"); tbshoujia.Focus(); return false; } } catch (Exception err) { MessageBox.Show("商品售价只能为数字!!!"); tbshoujia.Focus(); return false; } if (boBox1.Text.Trim().Length == 0) { MessageBox.Show("商品厂家不能为空!!!"); comboBox1.Focus(); return false; } if (this.tbbaozhij.Text.Trim().Length == 0) { MessageBox.Show("保质期不能为空!!!"); tbbaozhij.Focus(); return false; } return true; } private void add() { string sql = string.Format("insert into 商品信息表(商品编号,商品名称,商品类别,商品进价,商品售价,供应商,生产日期,保质期,过期日期,备注)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')" , tbbianhao.Text.Trim(),tbshpmingcheng.Text.Trim(),tbshpleibie.Text.Trim(),tbshpjinjia.Text.Trim(),tbshoujia.Text.Trim(),comboBox1.Text.Trim(), Convert.ToDateTime(dateTimePicker1.Text), tbbaozhij.Text.Trim(), Convert.ToDateTime(dateTimePicker2.Text), tbbeichu.Text.Trim()); DB n = new DB(); if (n.set(sql) > 0) { MessageBox.Show("添加成功!!!"); } else { MessageBox.Show("添加失败!!!"); } } private void btnUpdata_Click(object sender, EventArgs e) { try { if (checkAdd()) { add(); this.Close(); } } catch (Exception er) { MessageBox.Show(er.Message); } } private void wareIsertnForm_Load(object sender, EventArgs e) { this.供应商表TableAdapter.Fill(this.superstore_DataDataSet.供应商表); } } 4.3.2商品查询界面 界面如图4-5。 图4-5 实现代码: public partial class namequeryForm : Form { private void button1_Click(object sender, EventArgs e) { try { if (check()) { fill(); } } catch (Exception er) { MessageBox.Show(er.Message); } } private bool check() { if(comboBox1.Text.Trim().Length==0) { MessageBox.Show("商品名称能为空!"); comboBox1.Focus(); return false; } return true; } private void fill() { string sql = "select * from 商品库存情况表 where 商品名称 like '%" + comboBox1.Text.Trim() + "%'"; DB n = new DB(); dgvName.DataSource = n.filedata(sql); } private void namequeryForm_Load(object sender, EventArgs e) { this.商品库存情况TableAdapter.Fill(this.superstore_DataDataSet.商品库存情况表); } } 4.3.3商品入库界面 界面如图4-6。 图4-6 实现代码: public partial class wareInsertkuForm : Form { private void wareInsertkuForm_Load(object sender, EventArgs e) { this.供应商表TableAdapter.Fill(this.superstore_DataDataSet.供应商表); this.商品信息表TableAdapter.Fill(this.superstore_DataDataSet.商品信息表); } private void button1_Click(object sender, EventArgs e) { try { if (checkAdd()) { add(); this.Close(); } } catch (Exception err) { MessageBox.Show(err.Message); } } private bool checkAdd() { try { double n2 = Convert.ToDouble(tbjiage.Text.Trim()); if (n2 <= 0) { MessageBox.Show("进货价格不应为零!!!"); tbjiage.Focus(); return false; } } catch (Exception err) { MessageBox.Show("进货价格只能为数字!!!"); tbjiage.Focus(); return false; } return true; } private void add() { DB n = new DB(); string sql = "select count(*) from 商品库存情况表 where 商品名称='" + comboBox1.Text.Trim() + "'"; if (n.selectCount(sql) > 0) { //取
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服