超市管理系统项目.docx

上传人:b****8 文档编号:23756698 上传时间:2023-05-20 格式:DOCX 页数:51 大小:773.62KB
下载 相关 举报
超市管理系统项目.docx_第1页
第1页 / 共51页
超市管理系统项目.docx_第2页
第2页 / 共51页
超市管理系统项目.docx_第3页
第3页 / 共51页
超市管理系统项目.docx_第4页
第4页 / 共51页
超市管理系统项目.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

超市管理系统项目.docx

《超市管理系统项目.docx》由会员分享,可在线阅读,更多相关《超市管理系统项目.docx(51页珍藏版)》请在冰豆网上搜索。

超市管理系统项目.docx

超市管理系统项目

 

娄底职业技术学院

《C#.NET访问数据库设计报告》

项目名称:

超市管理系统_

班级:

09软大2班

学号:

200902040233

姓名:

龚新菊

完成日期:

2010-12—25

 

〈一>:

系统分析

项目名称

超市管理系统项目设计

姓名

龚新菊

其他参与人员

谢如意邹浩杰李义王胜徐黎

本人在本 项目中主要完成的工作

 

 

〈一>系统需求分析:

1:

现计算机管理超市的功能,具体完成用户基本信息管理、员工基本信息管理、进货基本信息管理、商品基本信息管理、超市供应商基本信息管理、销售基本信息管理等功能。

2:

系统的功能需求:

本系统用户分为普通用户和管理员用户两类,管理员用户负责系统的维护,包括对用户信息、员工基本信息、进货基本信息、商品基本信息、超市供应商基本信息、销售基本信息管理的录入、修改、查询、删除等.普通用户有查看的权限。

3:

系统功能划分:

用户通过身份验证后进入主界面。

主界面为管理员提供所有选择:

用户信息管理、员工信息管理、进货信息管理、商品基本信息管理、超市供应商基本信息管理、销售基本信息管理、和退出系统。

普通用户有查看的权限和使用销售基本信息管理的出售表功能。

 

<二>系统的功能分析:

1:

用户基本信息管理:

在维护用户基本信息管理中,只有管理员可以增加、修改、查询、删除车主信息,普通用户只能查看。

2:

员工基本信息管理:

在给出员工基本信息,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。

3:

进货基本信息管理:

在给出所有进货基本信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。

4:

商品基本信息管理:

在给出所有:

商品基本信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。

5:

超市供应商基本信息管理:

在给出所有超市供应商信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。

6:

销售信息管理:

给出的所有销售信息中,只有管理员实现增加、修改、查询、删除车辆信息、普通用户只能查看。

〈三>功能模块设计:

对上述功能进行集中分析、分块,按照结构化程序设计的要求,得到功能模块图如下:

〈四〉数据库设计和实现

数据库设计得合理与否,对数据的完整性、安全性、程序运行的效率和程序设计的复杂程度等有着十分密切的关心。

数据库设计的内容包括数据库管理系统的选择、数据实体的确定和数据库的具体实现。

数据库结构设计

超市管理系统的数据库名为”CSGLXT”其中包括6个数据表:

用户表信息,员工信息表、供货商信息表、进货表信息表、商品信息表、销售信息表。

以下是这些表的结构。

1)用户信息表:

用于保存所有的用户信息,如下图所示。

说明:

该表以[U—ID]为主键.

2)员工信息表:

用于保存所有的员工信息,如下图所示。

说明:

该表以[Y—ID]为主键.

3)供货商信息表:

用于保存所有的供货商信息,如下图所示。

说明:

该表以[P-ID]为主键。

4)进货表信息表:

用于保存所有的进货信息,如下图所示.

说明:

该表以[I—ID]为主键。

5)商品信息表:

用于保存所有的商品信息表,如下图所示。

说明:

该表以[G—ID]为主键。

6)销售信息表:

用于保存所有的销售信息表,如下图所示。

说明:

该表以[S—ID]和[G-ID]共同为主键.

系统数据库实现

1.创建数据库

通过“开始"菜单,选择“MICROSOFTSQLSERVER2005",

启动“SQLSERVERMANAGEMENTSTUDIOEXPRESS”,首先连接到服务器.选择本地服务器“(LOCAL)SQLEXPRESS”,身份验证为“WINDOWS身份验证”.单机“连接”按钮后,输入数据库名“CSGLXT",然后单机确定按钮创建数据库后,单机该数据库左侧的“+”按钮,将该数据库展开,选择“新建表”,后创建五个表,本输入数据。

每个表的测试数据如下图.

图:

连接到服务器

图:

创建数据库界面

图:

商品信息测试数据

图:

供货商信息测试数据

图:

销售测试数据

图:

用户测试数据

图:

进货测试数据

图:

员工测试数据

 

项目文件夹设计

图:

项目文件及文件夹结构。

1.主窗体及登录窗体设计

为了承载各功能窗体,超市管理系统设计了一个主窗体。

在主窗体上设置菜单栏,用于启动其他的功能窗体;同时还设置状态栏,用于显示当前系统运行过程中的相关信息.登录窗体运行后,要进入主窗体界面。

图:

主窗体界面

主窗体代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem。

ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem。

Text;

usingSystem.Windows。

Forms;

using销售信息管理;

using销售信息查询;

using超市管理系统.员工信息管理;

using超市管理系统.用户信息管理;

using超市管理系统.商品信息管理;

using超市管理系统。

进货信息管理;

using供货商信息查询;

using供货商更新;

using超市管理系统。

销售信息管理;

 

//using员工信息管理.员工更新管理;

 

namespace超市管理系统

publicpartialclassfrmMain:

Form

publicfrmMain()

InitializeComponent();

 

销售信息查询。

销售信息查询bb=null;

销售管理aa=null;

员工更新管理cc=null;

员工信息管理。

员工信息查询dd=null;

用户信息查询ee=null;

用户增改删ff=null;

商品更新窗体hh=null;

商品信息查询gg=null;

进货查询ii=null;

进货更新窗体jj=null;

Form6kk=null;

frmDepartmentll=null;

收银mm=null;

privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)

{

Application。

Exit();

}

privatevoidfrmMain_Load(objectsender,EventArgse)

this.tslUserName.Text=”||操作用户:

”+frmLogin。

userName;

this.tslUserRight.Text=”||用户权限:

"+frmLogin。

userRight;

privatevoid万年历ToolStripMenuItem_Click(objectsender,EventArgse)

{

System。

Diagnostics.Process.Start("explorer。

exe",”http:

//

privatevoid计算器ToolStripMenuItem_Click(objectsender,EventArgse)

System。

Diagnostics。

Process.Start("calc.exe”);//启动计算器程序

privatevoid记事本ToolStripMenuItem_Click(objectsender,EventArgse)

System。

Diagnostics。

Process。

Start("notepad。

exe");//启动记事本程序

}

privatevoid销售管理ToolStripMenuItem_Click(objectsender,EventArgse)

{

panel1.Controls。

Clear();

Buttonb1=newButton();

b1。

Text=”销售管理";

b1.Left=10;

b1.Top=10;

b1.Click+=newEventHandler(b1_Click);

panel1.Controls.Add(b1);

if(frmLogin.userRight。

ToString()。

Trim()==”用户")

b1.Visible=false;

Buttonb2=newButton();

b2.Text=”销售信息查询";

b2.Left=10;

b2.Top=50;

b2.Click+=newEventHandler(b2_Click);

panel1.Controls.Add(b2);

Buttonb13=newButton();

b13。

Text=”收银管理";

b13.Left=10;

b13。

Top=90;

b13。

Click+=newEventHandler(b13_Click);

panel1。

Controls。

Add(b13);

voidb2_Click(objectsender,EventArgse)

//thrownewException("Themethodoroperationisnotimplemented。

”);

if(bb==null)

bb=new销售信息查询.销售信息查询();

bb。

TopLevel=false;

bb.Size=panel2。

Size;

panel2.Controls.Add(bb);

if(bb。

Visible==false)

{

bb=new销售信息查询.销售信息查询();

bb。

TopLevel=false;

bb.Size=panel2.Size;

panel2。

Controls。

Add(bb);

}

bb。

FormBorderStyle=FormBorderStyle。

None;

bb。

Show();

bb.BringToFront();

}

voidb1_Click(objectsender,EventArgse)

{

//thrownewException(”Themethodoroperationisnotimplemented.”);

if(aa==null)

{

aa=new销售管理();

aa.TopLevel=false;

aa。

Size=panel2。

Size;

panel2.Controls。

Add(aa);

if(aa.Visible==false)

{

aa=new销售管理();

aa.TopLevel=false;

aa.Size=panel2.Size;

panel2.Controls.Add(aa);

aa.FormBorderStyle=FormBorderStyle。

None;

aa。

Show();

aa。

BringToFront();

}

voidb13_Click(objectsender,EventArgse)

if(mm==null)

{

mm=new收银();

mm。

TopLevel=false;

mm。

Size=panel2.Size;

panel2。

Controls。

Add(mm);

}

if(mm.Visible==false)

{

mm=new收银();

mm.TopLevel=false;

mm.Size=panel2.Size;

panel2。

Controls.Add(mm);

}

mm.FormBorderStyle=FormBorderStyle.None;

mm。

Show();

mm.BringToFront();

}

privatevoidfrmMain_FormClosed(objectsender,FormClosedEventArgse)

{

Application。

Exit();

privatevoidpanel2_SizeChanged(objectsender,EventArgse)

{

for(inti=0;i

Controls。

Count;i++)

Formf=(Form)panel2。

Controls[i];

f。

Size=panel2.Size;

privatevoidtimer1_Tick(objectsender,EventArgse)

{

toolStripStatusLabel1.Text=System.DateTime.Now.ToLongDateString();

}

privatevoidtimer2_Tick(objectsender,EventArgse)

{

toolStripStatusLabel2.Text=System。

DateTime.Now。

ToLongTimeString();

}

登录窗体:

登录窗体代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem。

Data;

usingSystem.Drawing;

usingSystem。

Text;

usingSystem。

Windows.Forms;

usingSystem。

Data.SqlClient;

namespace超市管理系统

{

publicpartialclassfrmLogin:

Form

publicfrmLogin()

{

InitializeComponent();

publicstaticstringuserName;//记录登录用户名字,主窗体中使用

publicstaticstringuserRight;//记录登录用户的权限,主窗体中使用

SqlConnectionconn;//声明连接对象变量

SqlCommandcom;//声明命令对象变量

SqlDataAdapterda;//声明适配器对象变量

SqlDataReaderdr;//声明读取器对象变量

privatevoidfrmLogin_Load(objectsender,EventArgse)

try//捕获异常

{

conn=newSqlConnection("server=(local)\\SQLEXPRESS;integratedsecurity=true;database=CSGLXT”);

DataSetds=newDataSet();

da=newSqlDataAdapter(”select用户名from用户信息表",conn);

if(conn.State==ConnectionState.Closed)//若当前连接状态为关闭

{

conn。

Open();

da。

Fill(ds,"用户信息表");

conn。

Close();

cbxUserName。

DataSource=ds.Tables["用户信息表"];

cbxUserName。

DisplayMember=”用户名";

catch(Exceptionex)

MessageBox。

Show(ex.Message.ToString());//显示异常信息

}

privatevoidcbxUserName_SelectedIndexChanged(objectsender,EventArgse)

try

com=newSqlCommand(”select用户名,用户权限from用户信息表where用户名=’”+cbxUserName.Text+"’”,conn);

if(conn.State==ConnectionState。

Closed)

{

conn。

Open();

}

dr=com.ExecuteReader();

if(dr。

Read())

lblUserRight。

Text=dr["用户权限”]。

ToString();//将权限值显示到窗体上

userRight=lblUserRight。

Text;//将权限值存放到变量中

}

dr。

Close();

conn。

Close();}

catch(Exceptionex)

{

MessageBox。

Show(ex。

Message.ToString());

}

privatevoidbtnLogin_Click_1(objectsender,EventArgse)

{try

{

da=newSqlDataAdapter("select*from用户信息表where用户名='"+cbxUserName。

Text。

Trim()+"’and用户密码=’"+txtUserPwd。

Text。

Trim()+”'”,conn);

DataSetds=newDataSet();

if(conn.State==ConnectionState。

Closed)

conn.Open();

}

da.Fill(ds,”用户信息表");

conn。

Close();

if(ds.Tables[”用户信息表”].Rows.Count〉0)//数据集中的记录数不为0

{

userName=cbxUserName。

Text;

frmMainfrmmain=newfrmMain();

this。

Hide();

frmmain.Show();

}

else

{

MessageBox.Show(”用户名或密码错误!

","提示",MessageBoxButtons。

OK,MessageBoxIcon.Information);

txtUserPwd.Text=””;

cbxUserName.Focus();

}

catch(Exceptionex)

MessageBox.Show(ex.Message。

ToString());

}

}

privatevoidbtnExit_Click(objectsender,EventArgse)

Application.Exit();

}}

 

员工信息管理窗体:

图:

员工更新管理

实现代码:

namespace超市管理系统.员工信息管理

{

publicpartialclass员工更新管理:

Form

{

public员工更新管理()

InitializeComponent();

}

publicstringconnStr="server=.\\SQLEXPRESS;Database=CSGLXT;Integratedsecurity=true";

publicSqlConnectionconn;

publicSqlCommandcomm;

publicSqlCommandBuildercommBuilder;

publicSqlDataAdapterda;

publicDataSetds;

privatevoid员工更新管理_Load(objectsender,EventArgse)

toolStripButton5.Enabled=false;

toolStripButton4。

Enabled=false;

conn=newSqlConnection(connStr);

comm=newSqlCommand("select*from员工档案表”,conn);

da=newSqlDataAdapter(comm);

ds=newDataSet();

commBuilder=newSqlCommandBuilder(da);

da.Fill(ds,"员工档案表");

dataGridView1。

DataSource=ds;

dataGridView1。

DataMember=”员工档案表";

textBox1。

DataBindings。

Add("Text",ds,”员工档案表.Y-ID”);

textBox2。

DataBindings。

Add(”Text”,ds,"员工档案表.姓名”);

textBox3.DataBindings.Add(”Text",ds,"员工档案表.住址");

textBox4。

DataBindings。

Add(”Text",ds,"员工档案表.联系电话");

textBox5。

DataBindings。

Add(”Text”,ds,"员工档案表。

身份证号码");

textBox6.DataBindings。

Add(”Text”,ds,”员工档案表。

年龄”);

textBox7.DataBindings.Add(”Text”,ds,"员工档案表。

工号");

comboBox1.DataBindings.Add(”Text",ds,"员工档案表。

性别");

}

privatevoidbutton1_Click(objectsender,EventArgse)

//this。

BindingContext[ds,”Stu2"].Position=0;

this.BindingContext[ds,”员工档案表”]。

Position=0;

privatevoidbutton2_Click(objectsender,EventArgse)

t

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

当前位置:首页 > 成人教育 > 自考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1