超市会员管理系统详细代码Word文档下载推荐.doc
- 文档编号:13271111
- 上传时间:2022-10-09
- 格式:DOC
- 页数:21
- 大小:361.50KB
超市会员管理系统详细代码Word文档下载推荐.doc
《超市会员管理系统详细代码Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《超市会员管理系统详细代码Word文档下载推荐.doc(21页珍藏版)》请在冰豆网上搜索。
图3-12用户登录实体的E-R图
2.会员基本信息实体图主要描述会员的基本情况,包括了会员基本信息的用户账号,用户姓名,身份证号,联系方式,联系地址,得出如图3-12所示会员基本信息实体E-R图。
会员基本信息
用户姓名
身份证号
联系方式
联系地址
图3-13会员基本信息实体的E-R图
3.职员基本信息实体图主要描述新生的基本情况,包括了职员基本信息的职员号,职员姓名,职员职位,得出如图3-13所示职员基本信息实体E-R图。
职员基本信息
*职员号
职员姓名
职员职位
图3-14职员基本信息实体的E-R图
4.会员积分信息实体图主要描述会员积分的基本情况,包括了会员积分基本信息的会员账号,会员积分,会员等级,会员折扣,得出如图3-14所示会员积分信息实体E-R图。
会员积分信息
*会员账号
会员积分
会员等级
会员折扣
图3-15会员积分信息实体的E-R图
实体之间的关系E-R图主要描述实体间的关系。
获得
管理
1
N
图3-16各实体之间的关系
3.系统数据库的设计
根据需求分析与概念结构设计,建立数据库系统支持的数据模型,即数据库的逻辑结构。
本系统利用MicrosoftAccess2003创建了名为SuperMarket的数据库。
本系统主要建立了以下四张表:
表3.1用户登录数据表
字段名
数据类型
字段大小
是否主键
DNO(登陆账号)
文本
6
是
DCode(密码)
12
否
DUserSta(登录身份)
50
表3.2会员基本信息数据表
MNO(用户账号)
MName(用户姓名)
20
MID(身份证号)
18
MTel(联系电话)
MAdd(联系地址)
表3.3职员基本信息数据表
EID(职员号)
EName(职员姓名)
EStatus(职员职位)
表3.4会员积分信息数据表
MNO(会员账号)
MScore(用户积分)
数字(double)
——
MGrade(用户等级)
数字(long)
MDiscount(用户折扣)
4.表之间的关系
表之间存在的关系如下:
1.在会员基本信息表(Member)中添加信息的同时,把信息添加到用户登录信息表(Login)中,同时将信息添加到积分信息表(Score)中。
2.在会员基本信息表(Member)中删除会员信息的同时,把用户登录信息表(Login)和用户积分信息(Score)中该会员信息删除。
3.在职员基本信息表(Member)中添加信息的同时,将志愿的基本信息添加到用户登录信息表(Login)中。
4.在职员基本信息表(Member)中删除职员信息的同时,把用户登录信息表(Login)中该职员信息删除。
详细设计与实现
1.系统首页
图4-1超市会员管理系统首页
自定义工具栏按钮及鼠标提示信息的设计与实现:
图4-2主页面工具栏
在对话框的OnInitDialog方法中常见工具栏窗口和图像列表窗口,关联图像列表,设置工具栏按钮文本,启动工具栏的EnableToolTip方法激活提示功能。
鼠标提示信息的实现,处理TTN_NEEDTEXT消息的响应函数OnToolTipText(),通过函数的参数获得工具栏按钮的ID,从而根据ID获取提示信息文本。
1.添加消息映射(最好写在AFX_MSG_MAP宏外,否则可能出现编译错误)
ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTW,0,0xFFFF,OnToolTipText)
ON_NOTIFY_EX_RANGE(TTN_NEEDTEXTA,0,0xFFFF,OnToolTipText)
2.添加事件声明(最好写在AFX_MSG宏外,否则可能出现编译错误)
afx_msgBOOLOnToolTipText(UINTnID,NMHDR*pNMHDR,LRESULT*pResult);
2登录页面
系统运行后,首先展现给用户的是用户登录界面,用户登录成功后进入到主页面,用户登录界面如下图所示:
图4-3用户登录界面
用户登录有三种身份,管理员、普通职员、会员。
管理员登录成功后,可以对系统各模块进行操作;
普通职员登录成功后,除对职员的添加、删除外,均可实现操作;
会员,则只能对自己的一些基本信息进行操作。
登录界面由函数voidCLoginDlg:
:
OnOK()实现处理,具体代码如下:
//实现该功能的SQL语句
sql="
select*fromLoginwhereDNO='
"
+Name+"
'
andDCode='
+ECode+"
andDUserSta='
+EStatus+"
;
m_pRs->
Open((_bstr_t)sql,theApp.conn.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
//登录成功与否、登录次数判断
if(m_pRs->
GetRecordCount()<
=0)
{
if(m_LoginNum<
=3)//登录次数小于3次
MessageBox("
用户名或密码、身份错误!
"
提示"
64);
}
if(m_LoginNum==3)//3次登录不成功
用户登录3次不成功!
即将关闭程序......"
CDialog:
OnOK();
//向应用程序发送WM_QUIT消息,请求退出
PostQuitMessage(0);
else{//如果登录成功,则关闭数据库
CCMarketDlgdlg;
dlg.m_LoginSta=EStatus;
dlg.DoModal();
3会员信息模块
(1)会员基本信息查询
会员基本信息查询如下图:
图4-4会员信息查询界面
用户登录成功后,可以根据用户账号或身份证号查询会员的基本信息,还可以进行全表查询。
查询前,首先要选择及填写查询条件,若未填写,则出现系统提示。
查询条件填写正确后,点击查询即可会员详细信息。
查询和显示全部单击事件实现分别由函数voidCMemberDlg:
OnOK()和voidCMemberDlg:
OnBUTTONListAll()实现,具体代码如下:
记录集打开同上。
在列表框中显示的实现:
while(!
adoEOF)
CStringtemp;
m_EList.InsertItem(1000,"
);
for(inti=0;
i<
3;
i++)
temp=(TCHAR*)(_bstr_t)m_pRs->
GetFields()->
GetItem((long)i)->
Value;
m_EList.SetItemText(row,i,temp);
MoveNext();
row+=1;
4.3.2会员密码修改
此模块用于修改会员的登录密码。
图4-5会员密码修改界面
填入用户账号和旧密码后,系统检查数据库中是否有该记录,如果存在该记录,则可填写新密码进行修改;
若不存在,则系统给出提示信息。
如下图:
图4-6会员密码修改提示信息界面
该模块单击事件由函数voidCECodeModifyDlg:
OnOK()实现,具体代码如下:
UpdateLoginsetDCode='
+NewCode+"
whereDNO='
try
theApp.conn->
Execute((_bstr_t)sql,NULL,adCmdText);
catch(_com_error&
e)
AfxMessageBox(e.Description());
AfxMessageBox("
修改成功"
4.积分信息模块
(1)积分查询
该功能实现界面如下:
图4-7积分查询界面
输入会员账号后,点击确定按钮,系统首先检查账号是否存在,若存在则输出该会员积分信息;
若不存在,输出提示信息。
实现原理如会员信息模块中的会员查询。
实现函数为:
voidCJQueryDlg:
OnOK()。
在编辑框中的显示实现为:
var=m_pRs->
GetCollect("
MScore"
if(var.vt!
=VT_NULL)
str1=(LPCSTR)_bstr_t(var);
GetDlgItem(IDC_EDIT_Jifen)->
SetWindowText(str1);
MGrade"
=VT_NULL)
str2=(LPCSTR)_bstr_t(var);
GetDlgItem(IDC_EDIT_Grade)->
SetWindowText(str2);
MDiscount"
str3=(LPCSTR)_bstr_t(var);
GetDlgItem(IDC_EDIT_Discout)->
SetWindowText(str3);
(2)积分兑换
积分兑换功能的实现界面如下:
图4-8积分兑换功能实现界面
用户输入账号和密码后,点击兑换按
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 会员 管理 系统 详细 代码
![提示](https://static.bdocx.com/images/bang_tan.gif)