1、超市管理系统项目娄底职业技术学院C.NET访问数据库设计报告项目名称: 超市管理系统班 级: 09软大2班学 号: 200902040233姓 名: 龚新菊完成日期: 2010-1225 一:系统分析项目名称超市管理系统项目设计姓名龚新菊其他参与人员谢如意 邹浩杰 李义 王胜 徐黎本人在本项目中主要完成的工作一系统需求分析:1:现计算机管理超市的功能,具体完成用户基本信息管理、员工基本信息管理、进货基本信息管理、商品基本信息管理、超市供应商基本信息管理、销售基本信息管理等功能。2:系统的功能需求:本系统用户分为普通用户和管理员用户两类,管理员用户负责系统的维护,包括对用户信息、员工基本信息、进
2、货基本信息、商品基本信息、超市供应商基本信息、销售基本信息管理的录入、修改、查询、删除等.普通用户有查看的权限。3:系统功能划分:用户通过身份验证后进入主界面。主界面为管理员提供所有选择:用户信息管理、员工信息管理、进货信息管理、商品基本信息管理、超市供应商基本信息管理、销售基本信息管理、和退出系统。普通用户有查看的权限和使用销售基本信息管理的出售表功能。系统的功能分析:1:用户基本信息管理:在维护用户基本信息管理中,只有管理员可以增加、修改、查询、删除车主信息,普通用户只能查看。2:员工基本信息管理:在给出员工基本信息,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。3:
3、进货基本信息管理:在给出所有进货基本信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。4:商品基本信息管理:在给出所有:商品基本信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。5:超市供应商基本信息管理:在给出所有超市供应商信息中,只有管理员可以实现增加、修改、查询、删除车辆信息、普通用户只能查看。6:销售信息管理:给出的所有销售信息中,只有管理员实现增加、修改、查询、删除车辆信息、普通用户只能查看。三功能模块设计:对上述功能进行集中分析、分块,按照结构化程序设计的要求,得到功能模块图如下:四数据库设计和实现 数据库设计得合理与否,对数据的
4、完整性、安全性、程序运行的效率和程序设计的复杂程度等有着十分密切的关心。数据库设计的内容包括数据库管理系统的选择、数据实体的确定和数据库的具体实现。数据库结构设计 超市管理系统的数据库名为”CSGLXT”其中包括6个数据表:用户表信息,员工信息表、供货商信息表、进货表信息表、商品信息表、销售信息表。以下是这些表的结构。1)用户信息表:用于保存所有的用户信息,如下图所示。 说明:该表以UID为主键.2)员工信息表:用于保存所有的员工信息,如下图所示。 说明:该表以YID为主键. 3)供货商信息表:用于保存所有的供货商信息,如下图所示。 说明:该表以P-ID为主键。 4)进货表信息表:用于保存所有
5、的进货信息,如下图所示. 说明:该表以IID为主键。5)商品信息表:用于保存所有的商品信息表,如下图所示。说明:该表以GID为主键。6)销售信息表:用于保存所有的销售信息表,如下图所示。 说明:该表以SID和G-ID共同为主键.系统数据库实现1.创建数据库通过“开始菜单,选择“MICROSOFT SQL SERVER 2005,启动“ SQL SERVER MANAGEMENT STUDIO EXPRESS”,首先连接到服务器.选择本地服务器“(LOCAL) SQLEXPRESS ”,身份验证为“WINDOWS 身份验证”.单机“连接”按钮后,输入数据库名“CSGLXT,然后单机确定按钮创建数
6、据库后,单机该数据库左侧的“+”按钮,将该数据库展开,选择“新建表”,后创建五个表,本输入数据。每个表的测试数据如下图. 图: 连接到服务器图: 创建数据库界面 图:商品信息测试数据 图:供货商信息测试数据 图: 销售测试数据 图: 用户测试数据 图:进货测试数据 图: 员工测试数据项目文件夹设计 图:项目文件及文件夹结构。1主窗体及登录窗体设计 为了承载各功能窗体,超市管理系统设计了一个主窗体。在主窗体上设置菜单栏,用于启动其他的功能窗体;同时还设置状态栏,用于显示当前系统运行过程中的相关信息.登录窗体运行后,要进入主窗体界面。 图:主窗体界面主窗体代码: using System;usin
7、g System.Collections.Generic;using System。ComponentModel;using System.Data;using System.Drawing;using System。Text;using System.Windows。Forms;using 销售信息管理;using 销售信息查询;using 超市管理系统.员工信息管理;using 超市管理系统.用户信息管理;using 超市管理系统.商品信息管理;using 超市管理系统。进货信息管理;using 供货商信息查询;using 供货商更新;using 超市管理系统。销售信息管理;/using
8、员工信息管理.员工更新管理;namespace 超市管理系统 public partial class frmMain : Form public frmMain() InitializeComponent(); 销售信息查询。销售信息查询 bb=null; 销售管理 aa=null; 员工更新管理 cc = null; 员工信息管理。员工信息查询 dd = null; 用户信息查询 ee = null; 用户增改删 ff = null; 商品更新窗体 hh = null; 商品信息查询 gg = null; 进货查询 ii = null; 进货更新窗体 jj = null; Form6 kk
9、 = null; frmDepartment ll = null; 收银 mm = null; private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) Application。Exit(); private void frmMain_Load(object sender, EventArgs e) this.tslUserName.Text = ”|操作用户:” + frmLogin。userName; this.tslUserRight.Text = ”|用户权限: + frmLogin。userRight; pr
10、ivate void 万年历ToolStripMenuItem_Click(object sender, EventArgs e) System。Diagnostics.Process.Start(explorer。exe, ”http:/ private void 计算器ToolStripMenuItem_Click(object sender, EventArgs e) System。Diagnostics。Process.Start(calc.exe”);/启动计算器程序 private void 记事本ToolStripMenuItem_Click(object sender, Eve
11、ntArgs e) System。Diagnostics。Process。Start(notepad。exe);/启动记事本程序 private void 销售管理ToolStripMenuItem_Click(object sender, EventArgs e) panel1.Controls。Clear(); Button b1 = new Button(); b1。Text = ”销售管理; b1.Left = 10; b1.Top = 10; b1.Click += new EventHandler(b1_Click); panel1.Controls.Add(b1); if (fr
12、mLogin.userRight。ToString()。Trim() = ”用户) b1.Visible = false; Button b2 = new Button(); b2.Text = ”销售信息查询; b2.Left = 10; b2.Top = 50; b2.Click += new EventHandler(b2_Click); panel1.Controls.Add(b2); Button b13 = new Button(); b13。Text = ”收银管理; b13.Left = 10; b13。Top =90; b13。Click+=new EventHandler(
13、b13_Click); panel1。Controls。Add(b13); void b2_Click(object sender, EventArgs e) /throw new Exception(The method or operation is not implemented。”); if (bb = null) bb = new 销售信息查询.销售信息查询(); bb。TopLevel = false; bb.Size = panel2。Size; panel2.Controls.Add(bb); if (bb。Visible = false) bb = new 销售信息查询.销售
14、信息查询(); bb。TopLevel = false; bb.Size = panel2.Size; panel2。Controls。Add(bb); bb。FormBorderStyle = FormBorderStyle。None; bb。Show(); bb.BringToFront(); void b1_Click(object sender, EventArgs e) /throw new Exception(”The method or operation is not implemented.”); if (aa = null) aa = new 销售管理(); aa.TopL
15、evel = 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(); void b13_Click(object sender, EventArgs e) if (mm = null)
16、 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(); private void frmMain_FormClosed(ob
17、ject sender, FormClosedEventArgs e) Application。Exit(); private void panel2_SizeChanged(object sender, EventArgs e) for (int i = 0; i panel2。Controls。Count; i+) Form f = (Form)panel2。Controlsi; f。Size = panel2.Size; private void timer1_Tick(object sender, EventArgs e) toolStripStatusLabel1.Text = Sy
18、stem.DateTime.Now.ToLongDateString(); private void timer2_Tick(object sender, EventArgs e) toolStripStatusLabel2.Text = System。DateTime.Now。ToLongTimeString(); 登录窗体: 登录窗体代码: using System;using System.Collections.Generic;using System.ComponentModel;using System。Data;using System.Drawing;using System。
19、Text;using System。Windows.Forms;using System。Data.SqlClient;namespace 超市管理系统 public partial class frmLogin : Form public frmLogin() InitializeComponent(); public static string userName;/记录登录用户名字,主窗体中使用 public static string userRight;/记录登录用户的权限,主窗体中使用 SqlConnection conn;/声明连接对象变量 SqlCommand com;/声明命令
20、对象变量 SqlDataAdapter da;/声明适配器对象变量 SqlDataReader dr;/声明读取器对象变量 private void frmLogin_Load(object sender, EventArgs e) try /捕获异常 conn = new SqlConnection(server =(local)SQLEXPRESS;integrated security=true;database=CSGLXT”); DataSet ds = new DataSet(); da = new SqlDataAdapter(”select 用户名 from 用户信息表 , c
21、onn); if (conn.State = ConnectionState.Closed)/若当前连接状态为关闭 conn。Open(); da。Fill(ds, 用户信息表); conn。Close(); cbxUserName。DataSource = ds.Tables用户信息表; cbxUserName。DisplayMember = ”用户名; catch (Exception ex) MessageBox。Show(ex.Message.ToString());/显示异常信息 private void cbxUserName_SelectedIndexChanged(object
22、 sender, EventArgs e) try com = new SqlCommand(”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;/将权限值存放
23、到变量中 dr。Close(); conn。Close(); catch (Exception ex) MessageBox。Show(ex。Message.ToString()); private void btnLogin_Click_1(object sender, EventArgs e) try da = new SqlDataAdapter(select * from 用户信息表 where 用户名= + cbxUserName。Text。Trim() + and 用户密码= + txtUserPwd。Text。Trim() + ”, conn); DataSet ds = new
24、 DataSet(); if (conn.State = ConnectionState。Closed) conn.Open(); da.Fill(ds, ”用户信息表); conn。Close(); if (ds.Tables”用户信息表”.Rows.Count 0)/数据集中的记录数不为0 userName = cbxUserName。Text; frmMain frmmain = new frmMain(); this。Hide(); frmmain.Show(); else MessageBox.Show(”用户名或密码错误!, 提示, MessageBoxButtons。OK, Me
25、ssageBoxIcon.Information); txtUserPwd.Text = ”; cbxUserName.Focus(); catch (Exception ex) MessageBox.Show(ex.Message。ToString(); private void btnExit_Click(object sender, EventArgs e) Application.Exit(); 员工信息管理窗体: 图:员工更新管理实现代码: namespace 超市管理系统.员工信息管理 public partial class 员工更新管理 : Form public 员工更新管理
26、() InitializeComponent(); public string connStr = server=.SQLEXPRESS;Database=CSGLXT;Integrated security=true; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds; private void 员工更新管理_Load(object sender, EventArgs e) to
27、olStripButton5.Enabled = false; toolStripButton4。Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand(select * from 员工档案表”, conn); da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder=new SqlCommandBuilder (da); da.Fill(ds,员工档案表); dataGridView1。DataSource = ds; dataGri
28、dView1。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
29、。Add(”Text”, ds, ”员工档案表。年龄”); textBox7.DataBindings.Add(”Text”, ds, 员工档案表。工号); comboBox1.DataBindings.Add(”Text, ds, 员工档案表。性别); private void button1_Click(object sender, EventArgs e) /this。BindingContextds, ”Stu2.Position = 0; this.BindingContextds, ”员工档案表”。Position = 0; private void button2_Click(object sender, EventArgs e) t
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2