超市会员管理系统课程设计报告.docx
- 文档编号:7788332
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:62
- 大小:655.15KB
超市会员管理系统课程设计报告.docx
《超市会员管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《超市会员管理系统课程设计报告.docx(62页珍藏版)》请在冰豆网上搜索。
超市会员管理系统课程设计报告
兰州商学院陇桥学院
信息工程系课程设计报告
课程名称:
C#课程设计
设计题目:
超市会员管理系统
系别:
信息工程系
专业(方向):
计算机科学与技术(网络工程方向)
年级、班:
2012级本科班
学生姓名:
XXX
学生学号:
XXXXXXXX
本组组员:
XXXXXXXXXXXXXXXX
*******
2014年12月26日
超市会员管理系统
一、系统开发的背景
社会生活的现代化,使得市场的走向发生巨大变化,由于经济的发展,许多大型的现代化超市应运而生。
现在超市吸引顾客最普遍的做法就是实行会员制,超市的会员可以享受不同程度的优惠,从而达到吸引顾客,刺激消费的目的。
建立实用的超市会员管理系统对超市的会员管理有很大的帮助,可以协助工作人员进行会员的信息登记、更新。
因此,为了优化超市会员制度的计算机管理,编写了此系统。
二、系统分析与设计
(一)系统功能要求
超市会员管理系统应具备以下功能:
1、加入会员的基本信息,包括:
成为会员的基本条件、优惠政策、优惠时间等。
2、会员的基本信息,包括姓名、性别、年龄、工作单位、联系方式等。
3、会员购物信息:
购买物品编号、物品名称、所属种类,数量,价格等。
4、会员返利信息,包括会员积分的情况,享受优惠的等级等。
5、对货物流量及消费人群进行统计输出。
(二)系统模块结构设计
通过对系统功能的分析,学生综合测评系统功能如图1所示。
图1超市会员管理系统功能图
通过上图的功能分析,把整个系统划分为4个模块:
1、会员信息,该模块主要实现:
会员基本信息(会员编号、会员卡号、姓名、性别、年龄、会员等级、当前积分、联系方式)的输出;
2、会员管理,该模块主要实现:
会员管理(会员的查询、删除、修改和添加)信息,购物信息管理(通过输入会员编号来查询会员的购物信息);
3、信息统计,该模块主要实现:
物品流量统计(通过柱状图来显示物品的消费情况),消费人群统计(通过柱状图来统计人群的消费情况);
4、系统管理,该模块主要实现:
对用户名和密码的修改,能够更好的管理超市会员管理系统。
三、系统的设计与实现
(一)登陆
流程图如下图所示:
图2登陆界面流程图
该模块的具体代码如下所示。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Linq;
usingSystem.Windows.Forms;
usingDevExpress.XtraEditors;
namespace超市会员管理系统
{
publicpartialclassLoginForm:
DevExpress.XtraEditors.XtraForm
{
publicLoginForm()
{
InitializeComponent();
}
boolformMove=false;
PointformPoint;
#region登陆按钮实现用户名、密码的验证
privatevoidbtnOK_Click(objectsender,EventArgse)
{
if(Login.Login.isEnable(txtUserName.Text.Trim(),txtPassword.Text.Trim()))
{
MainFormform=newMainForm();
form.Visible=true;
this.Visible=false;
}
else
{
lblShow.Text="输入有误请重新输入!
txtUserName.Clear();
txtPassword.Clear();
txtUserName.Focus();
}
}
#endregion
#region退出程序
privatevoidpictureBox2_Click(objectsender,EventArgse)
{
Application.Exit();
}
#endregion
#region登录界面的移动
privatevoidpictureBox1_MouseMove(objectsender,MouseEventArgse)
{
if(formMove==true)
{
PointmousePos=Control.MousePosition;
mousePos.Offset(formPoint.X,formPoint.Y);
Location=mousePos;
}
}
privatevoidpictureBox1_MouseDown(objectsender,MouseEventArgse)
{
formPoint=newPoint();
intxOffset;
intyOffset;
if(e.Button==MouseButtons.Left)
{
xOffset=-e.X-SystemInformation.FrameBorderSize.Width;
yOffset=-e.Y-SystemInformation.CaptionHeight-SystemInformation.FrameBorderSize.Height;
formPoint=newPoint(xOffset,yOffset);
formMove=true;
}
}
privatevoidpictureBox1_MouseUp(objectsender,MouseEventArgse)
{
if(e.Button==MouseButtons.Left)
{
formMove=false;
}
}
#endregion
#region登陆界面加载,连接数据库
privatevoidLoginForm_Load(objectsender,EventArgse)
{
Login.Login.linkDataBase();
}
#endregion
}
}
(二)会员信息
该模块的流程图如下图所示:
图3会员信息流程图
该模块的具体代码如下所示。
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Linq;
usingSystem.Windows.Forms;
usingDevExpress.XtraEditors;
usingDBHelper;
usingSystem.Data.SqlClient;
namespace超市会员管理系统
publicpartialclassMemberMessageForm:
DevExpress.XtraEditors.XtraForm
{
publicMemberMessageForm()
{
InitializeComponent();
}
#region全局变量
DataSetdataSet=MainForm.dataSet;
DBhelperdbHelper=MainForm.dbhelper;
StringdataDir;
StringstrMemberCardNo;
#endregion
#region按会员卡卡号查询信息
privatevoidsimpleButton1_Click(objectsender,EventArgse)
{
#region获取当前项的根目录路径
dataDir=dbHelper.getCurrentDataPath();
#endregion
strMemberCardNo=txtMessg.Text.Trim();
if(string.IsNullOrEmpty(strMemberCardNo))
{
MessageBox.Show("请输入会员卡号","",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
try
{
#region定向临时数据库中的表主键
DataTabledt=dbHelper.getDataTable("MemberMssg","会员卡编号");
#endregion
#region指向临时数据库中的指定的值得行
DataRowdr=dbHelper.getDataRow(dt,strMemberCardNo);
#endregion
#region将临时数据库中的表的值返回到界面中
updataForm(dr);
#endregion
}
catch(Exceptionex)
{
MessageBox.Show(ex.StackTrace);
}
}
#endregion
#region更新界面面板信息
privatevoidupdataForm(DataRowdr)
{
#region更新基本信息界面
if(dr==null)
{
MessageBox.Show("无该项数据记录","",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
txtMemberAge.Text=dr["年龄"].ToString();
txtMemberCard.Text=dr["会员卡编号.ToString();
txtMemberGrade.Text=dr["会员等级.ToString();
txtMemberName.Text=dr["姓名"].ToString();
txtMemberNo.Text=dr["会员编号.ToString();
txtMemberSex.Text=dr["性别"].ToString();
txtMemberPhone.Text=dr["联系方式"].ToString();
txtUnit.Text=dr["工作单位"].ToString();
txtCurrentIntegral.Text=dr["现有积分.ToString();
txtEndDate.Text=dr["终止日期.ToString();
try
{
memberPirecture.Image=Image.FromFile(dataDir+string.Format(@"\picture\{0}.jpg",dr["头像.ToString()));
}
catch(Exceptionex)
{
memberPirecture.Image=Image.FromFile((dataDir+string.Format(@"\picture\default.png")));
}
#endregion
#region更新消费界面板
dataSet.Tables["GoodsMssg"].DefaultView.RowFilter=String.Format("会员卡编号='{0}'",strMemberCardNo);
dataGridView1.DataSource=dataSet.Tables["GoodsMssg"].DefaultView;
dataGridView1.AutoSize=true;
dataGridView1.Visible=true;
#endregion
}
#endregion
}
}
(三)会员管理
该模块的流程图如下图所示:
图4会员管理流程图
(1)会员管理
该模块的具体代码如下所示。
namespace超市会员管理系统
{
publicpartialclassMemberManageForm:
DevExpress.XtraEditors.XtraForm
{
publicMemberManageForm()
{
InitializeComponent();
}
#region全局变量
DataSetdataSet=MainForm.dataSet;
DBhelperdbHelper=MainForm.dbhelper;
SqlDataAdaptersda=null;
DataRowdr;
DataRow[]drs;
StringdataDir;
BooleanisDataBindings=false;
BooleanchangeState=false;
BooleandeleteState=false;
BooleanaddState=false;
#endregion
#region显示指定信息到预览界面
privatevoidbtnOK_Click(objectsender,EventArgse)
{
sda=dbHelper.getDataAdapter();
StringtxtMessg=null;
Stringcondition=null;
#region获取搜索条件值
try
{
txtMessg=txtMssg.Text.Trim();
condition=comboBox1.SelectedItem.ToString().Trim();
if(string.IsNullOrEmpty(txtMessg)&&string.IsNullOrEmpty(condition))
{
thrownewException();
}
}
catch(Exceptionex)
{
MessageBox.Show("请输入信息","",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
dataDir=dbHelper.getCurrentDataPath();
#endregion
#region条件查询
Booleanflag=getDataRow(condition,txtMessg);
#endregion
#region界面信息更新
if(flag==true)
{
updataForm();
}
#endregion
}
#endregion
#region按钮单击操作
privatevoidcomboBox1_SelectedValueChanged(objectsender,EventArgse)
{
txtMssg.EditValue="";
}
privatevoidbtnAdd_Click(objectsender,EventArgse)
{
if(btnAdd.Text=="确定")
{
btnChange();
if(addState==true)
{
#region向DataSet中D的Ì?
DataTable追加一行记录
DataRownewDataRow=dataSet.Tables["MemberMssg"].NewRow();
try
{
newDataRow["会员编号"]=txtMemberNo.Text.ToString();
newDataRow["姓名"]=txtMemberName.Text.ToString();
newDataRow["年龄"]=Convert.ToInt32(txtMemberAge.Text);
newDataRow["性别"]=txtMemberSex.Text.ToString();
newDataRow["联系方式"]=txtMemberPhone.Text.ToString();
newDataRow["工作单位"]=txtUnit.Text.ToString();
newDataRow["起始日期"]=DateTime.Now;
newDataRow["终止日期"]=dateTimePicker1.Text;
newDataRow["积分类型"]="";
newDataRow["现有积分=Convert.ToInt32(txtCurrentIntegral.Text);
newDataRow["会员卡编号"]=txtMemberCard.Text.ToString();
newDataRow["会员等级"]=txtMemberGrade.Text.ToString();
dataSet.Tables["MemberMssg"].Rows.Add(newDataRow);
}
catch(Exceptionex)
{
MessageBox.Show("添加记录失败!
\n");
return;
}
dataSet.AcceptChanges();
dbHelper.addDataBase(newDataRow);
MessageBox.Show("添加纪录成功!
");
#endregion
}
elseif(changeState==true)
{
#region对dataset中的表进行修改
dataSet.AcceptChanges();
MessageBox.Show("修改记录成功!
");
#endregion
}
elseif(deleteState==true)
{
#region删除ydataset中的表的指定记录
StringdeleteMemNo=txtMemberCard.Text.Trim();
try
{
DataColumn[]primaryKey=newDataColumn[]{dataSet.Tables["MemberMssg"].Columns["会员卡编号"]};
dataSet.Tables["MemberMssg"].PrimaryKey=primaryKey
dataSet.Tables["MemberMssg"].Rows.Remove(dataSet.Tables["MemberMssg"].Rows.Find(deleteMemNo));
}
catch(Exceptionex)
{
MessageBox.Show("数据记录删除失败,无该记录!
");
return;
}
try
{
DataColumn[]primaryKey=newDataColumn[]{dataSet.Tables["GoodsMssg"].Columns["购物编号"]};
dataSet.Tables["GoodsMssg"].PrimaryKey=primaryKey;
for(inti=0;i { dataSet.Tables["GoodsMssg"].Rows.Remove(dataSet.Tables["GoodsMssg"].Rows.Find(deleteMemNo)); } } catch(Exceptionex) { ; } MessageBox.Show("删除记录成功! "); dbHelper.deleteDataBase(deleteMemNo); #endregion } addState=false; changeState=false; deleteState=false; removeBindingData(); } else { btnChange(); addState=true; #region清空groupbox中DtextBox中的值 foreach(ControlconlingroupControl2.Controls) { if(conlisTextBox) { (conlasTextBox).Clear(); } } #region获取主键的最大值并加称为新添加的主键 DataRow[]drs=null;try//{ drs=dataSet.Tables["MemberMssg"].Select("1=1",dataSet.Tables["MemberMssg"].Columns["会员编号"].ColumnName+"DESC"); } catch(Exceptionex) { MessageBox.Show(ex.StackTrace); } txtMemberNo.Text=(Convert.ToInt32(drs[0]["会员编号"])+1).ToString(); try{ drs=dataSet.Tables["MemberMssg"].Select("1=1",dataSet.Tables["MemberMssg"].Columns["会员卡编号"].ColumnName+"DESC"); } catch(Exceptionex) { MessageBox.Show(ex.StackTrace); } txtMemberCard.Text=(Convert.ToInt32(drs[0]["会¨¢员¡À卡¡§编À¨¤号? "])+1).ToString(); #endregion foreach(ControlconlingroupControl3.Controls) { if(conlisTextBox) { (conlasTextBox).Clear(); } } txtMemberNo.Enabled=true; txtMemberCard.Enabled
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 会员 管理 系统 课程设计 报告