VC++课程设计商品销售管理系统.docx
- 文档编号:10242627
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:52
- 大小:1.61MB
VC++课程设计商品销售管理系统.docx
《VC++课程设计商品销售管理系统.docx》由会员分享,可在线阅读,更多相关《VC++课程设计商品销售管理系统.docx(52页珍藏版)》请在冰豆网上搜索。
VC++课程设计商品销售管理系统
第一章需求分析
1.1商品销售管理功能概述
21世纪是个信息发展的时代,随着电脑普及时代的来临以及互联网的迅速发展,越来越多的进程从单一的人工管理上升到电脑智能管理,企业的发展更不例外,商品的经营管理,经营模式已经慢慢的从手工管理过渡到了计算机管理。
对于发展中的绝大多数企业来说,随着规模的不断扩大,商品种类的不断丰富与完善,需要管理的各种商品信息也会大幅度增加,无论是商品管理,订货管理,销售管理,都变得相对复杂。
这里开发出了一个“商品销售管理系统”,对企业的发展至关重要,无疑为商品销售的可持续发展,日益壮大提供了保障和解决方案,也节省了大量时间,从而提高了商品销售的运转效率,更有利于企业的管理和维持。
商品销售管理系统可以实现企业商品管理的网络化,信息化,现代化,可以有效的提高企业商品的管理效率,节约了管理开支。
通过调查,要求系统需要具有以下功能:
(1)由于该系统的使用对象多,要求有较好的权限管理。
(2)方便的数据查询,支持多条件查询。
(3)基础信息管理与查询,其中包括商品信息、客户信息和员工信息。
(4)通过计算机,能够直接“透视”商品销售情况。
(5)完善的商品查询信息、商品销售信息进行管理。
(6)当外界环境(停电、网络病毒)干扰本系统后,系统可以自动保护原始数据的安全,对数据进行备份与还原。
(7)数据计算自动完成,尽量减少人工干预。
(8)系统退出。
商品销售管理系统分为基础信息管理子系统、日常业务管理子系统、查询报表管理子系统、系统信息管理子系统、维护管理子系统。
如图1.1所示
1.1商品销售管理系统
1.2基础信息管理模块
基础信息管理模块主要用于对商品信息,员工信息和客户信息的管理。
操作员通过合法的认证登录到该系统中,进行对商品信息,员工信息和客户信息的管理的活动。
主要功能如下:
1)操作员首先登录,身份验证成功后即可登陆商品销售管理系统
2)操作员进入基础信息功能模块;
3)操作员管理商品信息;
4)操作员管理客户信息;
5)操作员管理员工信息。
该子系统功能分布如图1.2所示
1.2基础信息管理
1.3日常业务管理模块
日常业务管理模块主要用于对客户订货,商品销售,销售退货的管理。
操作员通过合法的认证登陆到该系统中,进行对客户订货,商品销售,销售退货的管理活动,主要功能如下:
1)操作员首先登陆,身份验证成功后即可登陆商品销售管理系统
2)操作员进入日常业务管理模块
3)管理客户订货
4)管理商品销售
5)管理销售退货
该子系统功能分布如图1.3所示
1.3日常业务管理
1.4查询报表管理模块
查询报表管理模块,主要用于实现操作员对客户订货,商品销售和商品退货的管理,,主要功能如下:
1)操作员首先登录,身份验证成功后即可登陆商品销售管理系统
2)操作员进入查询报表功能模块
3)客户订货查询;
4)商品销售查询;
5)销售退货查询。
该子系统功能分布如图1.4所示
1.4查询报表管理
1.5系统信息管理模块
系统信息管理模块主要用于实现管理操作员,设置操作员的使用权限以及系统管理,主要功能如下:
1)操作员首先登录,身份验证成功后即可登陆商品销售管理系统
2)操作员进入系统信息功能模块;
3)管理操作员的相关信息;
4)设置操作员的操作权限;
5)对系统进行管理。
该子系统功能分布如图1.5所示
1.5系统信息管理
1.6维护管理模块
系统管理模块实现对数据进行备份和恢复,其主要功能如下:
1)操作员首先登录,身份验证成功后即可登陆商品销售管理系统
2)操作员进入维护管理功能模块;
3)设置数据备份路径,对数据进行备份;
4)对数据进行还原。
该系统功能分布如图1.6所示
1.6维护管理
第二章数据库的设计
2.1E-R图
该系统一共涉及到十多个表,ER图如下所示:
2.1.1操作员
操作员包含的属性有编号,员工编号,名称,密码,头像和简称。
如图2.1.1所示:
图2.1.1操作员
2.1.2商品
操作员包含的属性有编号,名称产地,销售价格,进货价格,保质期,出厂日期和计量单位。
如图2.1.2所示:
图2.1.2商品
2.1.3客户
客户包含的属性有编号,名称,地址,电话,联系人电话和厂商。
如图2.1.3所示:
图2.1.3客户
2.1.4员工
员工包含的属性有编号,薪金,职务,名称和聘用日期。
如图2.1.4所示:
图2.1.4员工
2.1.5订货
订货包含的属性有票号,借款否,操作员,合计金额,合计数量,订货日期和客户编号。
如图2.1.5所示:
图2.1.5订货
2.1.6销售
销售包含的属性有票号,找零,未付金额,实付金额,销售类型,操作员,合计金额,合计数量,客户编号和销售时间。
如图2.1.6所示:
图2.1.6销售
2.1.7退货
退货包含的属性有票号,退货时间,未付金额,找零,实付金额,操作员,合计金额,客户编号和退货时间。
如图2.1.7所示:
图2.1.7退货
2.1.8退货明细
订货明细包含的属性有票号,商品编号,单价和数量。
如图2.1.8所示:
图2.1.8退货明细
2.1.9销售明细
销售明细包含的属性有票号,商品编号,单价和数量。
如图2.1.9所示:
图2.1.9销售明细
2.1.10退货明细
退货明细包含的属性有票号,商品编号,单价和数量。
如图2.1.10所示:
图2.1.10退货明细
2.1.11库存
库存包含的属性有商品编号和库存数量。
如图2.1.11所示:
图2.1.11库存
2.1.12权限
权限包含的属性有编号,用户管理,权限管理,系统管理,订货管理,销售管理,退货管理,结款管理,订货管理,销售管理和退货管理。
如图2.1.12所示:
图2.1.12权限
2.1.13系统设置
系统设置包含的属性有联系人,电话,地址,备份路径和公司名称。
如图2.1.13所示:
图2.1.13系统设置
2.1.14备份
备份包含的属性有备份日期和备份路径。
如图2.1.14所示:
图2.1.14备份
2.1.15总的ER图
ER图的实体和实体之间的关系说明如下:
员工销售商品,员工和商品是一对多的关系。
员工管理订货明细,员工和订货明细是多对多的关系。
员工管理退货明细,员工和退货明细是多对多的关系。
员工管理销售明细,员工和销售明细是多对多的关系。
员工管理库存,员工和库存是多对多的关系。
客户购买商品,客户和商品是一对多的关系。
客户可以订货,客户与订货是一对多的关系。
员工管理订货,员工与订货是多对多的关系。
客户可以退货,客户与退货是一对多的关系。
员工管理退货,员工与退货时多对多的关系。
员工管理操作员,员工与操作员是一对多的关系。
操作员拥有操作权限,操作员与权限是一对多的关系。
操作员管理系统设置,操作员与系统设置是一对多的关系。
操作员设置备份,操作员与备份是一对多的关系。
如图2.1.15所示:
图2.1.15总的ER图
2.2表结构说明
本系统一共涉及到十几个信息表,分为操作员登陆,基础信息,日常业务,查询报表,系统信息和数据备份六个方面。
具体信息表如下所示.
2.2.1操作员信息表
操作员信息表如表2.2.1所示:
列名
数据类型
长度
允许空
编号(主键)
Int
10
否
员工编号
Int
4
是
名称
nvarchar
50
是
密码
nvarchar
50
是
头像
Int
4
是
简称
varchar
50
是
2.2.2商品信息表
商品信息表如表2.2.2所示:
列名
数据类型
长度
允许空
编号(主键)
char
10
否
名称
nvarchar
50
是
产地
nvarchar
50
是
计量单位
char
8
是
出厂日期
datetime
8
是
保质期
datetime
8
是
进货价格
money
8
是
销售价格
money
8
是
2.2.3客户信息表
客户信息表如表2.2.3所示:
列名
数据类型
长度
允许空
编号(主键)
char
10
否
名称
nvarchar
50
是
地址
nvarchar
50
是
电话
char
15
是
联系人
char
8
是
联系人电话
char
15
是
2.2.4员工信息表
员工信息表如表2.2.4所示:
列名
数据类型
长度
允许空
编号(主键)
nchar
10
否
名称
nvarchar
50
是
职务
nvarchar
50
是
聘用日期
datetime
8
是
薪金
money
8
是
2.2.5订货信息表
订货信息表如表2.2.5所示:
列名
数据类型
长度
允许空
票号
char
15
否
客户编号
char
10
是
订货日期
datetime
8
是
合计数量
float
8
是
合计金额
money
8
是
操作员
Int
4
是
结款否
char
2
是
2.2.6销售信息表
销售信息表如表2.2.6所示:
列名
数据类型
长度
允许空
票号
char
15
否
销售时间
char
8
是
客户编号
datetime
10
是
合计数量
char
8
是
合计金额
float
8
是
操作员
float
4
是
销售类型
bit
1
是
实付金额
money
8
是
未付金额
money
8
是
找零
money
8
是
2.2.7退货信息表
列名
数据类型
长度
允许空
票号
char
15
否
退货时间
char
8
是
客户编号
datetime
10
是
合计数量
char
8
是
合计金额
float
8
是
操作员
float
4
是
实付金额
money
8
是
未付金额
money
8
是
找零
money
8
是
2.2.8订货明细表
列名
数据类型
长度
允许空
票号
nvarchar
50
是
商品编号
nvarchar
50
是
单价
money
8
是
数量
int
4
是
2.2.9销售明细表
列名
数据类型
长度
允许空
票号
char
15
是
商品编号
char
10
是
单价
money
8
是
数量
int
4
是
2.2.10退货明细表
列名
数据类型
长度
允许空
票号
char
15
是
商品编号
char
15
是
单价
money
8
是
数量
int
4
是
2.2.11库存信息表
列名
数据类型
长度
允许空
商品编号
char
10
是
库存数量
float
8
是
2.2.12权限表
列名
数据类型
长度
允许空
编号(主键)
Int
4
否
用户管理
char
1
是
权限管理
char
1
是
系统管理
char
1
是
订货管理
char
1
是
销售管理
char
1
是
退货管理
char
1
是
结款管理
char
1
是
订货查询
char
1
是
销售查询
char
1
是
退货查询
char
1
是
结款查询
char
1
是
数据备份
char
1
是
数据恢复
char
1
是
商品信息
char
1
是
客户信息
char
1
是
员工信息
char
1
是
2.2.13系统设置表
列名
数据类型
长度
允许空
公司名称
char
40
是
地址
char
40
是
电话
char
15
是
联系人
char
10
是
备份路径
char
60
是
2.2.14备份信息表
列名
数据类型
长度
允许空
备份日期
datetime
8
是
备份路径
text
16
是
第三章商品销售管理系统的功能实现
3.1基础信息管理模块的实现
3.1.1操作员登录功能的实现
1)界面设计
该系统默认有3个操作员并设置了相应头像,双击后输入密码开始验证,若密码成功,即可登陆该系统,若不成功,系统会弹出”您输入的密码不正确,请重新输入”,如果三次输入失败,系统会提示”对不起,请不要登陆该系统,请与管理员联系”,登陆成功后会弹出该系统的主界面,如图3.1.1.1所示:
图3.1.1.1操作员登陆
登录成功后的主页面如图3.1.1.2所示:
图3.1.1.2商品销售管理系统
2)编程的实现
操作员登陆后开始选择用户,这里默认为三个用户,双击后输入正确密码开始验证,如果密码成功,登陆销售管理系统主页面,若错误需要再次重新输入密码。
流程图和重要代码如下所示。
流程图如图3.1.1.3所示:
图3.1.1.3流程图
重要代码如下:
CStringsName,sPassWard,sSavePassWard;
if(time>=3)
{
MessageBox("对不起,您不要登录该系统!
请与管理员联系!
","系统提示",MB_OK|MB_ICONSTOP);
this->OnCancel();
return;
}
m_EdtName.GetWindowText(sName);
m_EdtPassWard.GetWindowText(sPassWard);
if(sName.IsEmpty())
{
MessageBox("请选择一个用户!
","系统提示",MB_OK|MB_ICONSTOP);
return;
}
sSavePassWard=ado.FieldToOtherField("操作员信息表","名称",sName,"密码",1);
if(sSavePassWard==sPassWard)
{
OP=sName;
CMyDlgdlg;
this->OnCancel();
dlg.DoModal();
}
else{
MessageBox("您输入的密码不正确,请重新输入!
","系统提示",MB_OK|MB_ICONSTOP);
time++;
m_EdtPassWard.SetWindowText("");
m_EdtPassWard.SetFocus();
}.
3.1.2管理商品信息功能实现
1)界面设计
管理商品信息功能的界面如下所示,它的主要功能是对商品信息的管理,如下所示的商品按照编号,名称,产地等标识,相应的可以根据编号,名称,产地等条件对商品进行查询,如输入编号为SP00000001可以查询该商品为娃哈哈矿泉水。
双击记录可以对其信息进行修改。
商品信息查询如图3.1.2.1所示:
图3.1.2.1商品信息查询
商品信息管理如图3.1.2.2所示:
图3.1.2.2商品信息管理
2)编程的实现
成功登陆商品销售管理系统后,用户选择基础信息管理模块,在商品信息管理中添加商品,修改商品,删除商品,提交到数据库,保存并推出该系统。
相应流程图和重要代码如下所示:
流程图如图3.1.2.3所示:
图3.1.2.3流程图
重要代码:
voidCDWare:
:
Display(CStringsField,CStringsValue){
RxRecordsetdisRst;
CStringsSQL;
sSQL.Format("SELECT*FROM商品信息表WHERE%s='%s'",sField,sValue);
disRst.Open(sSQL,adCmdText);
disRst.MoveFirst();
CStringEdtUnit,EdtPrice,EdtSellPrice,EdtName,EdtID,EdtArer,DtpOutDate,DtpKeepDate;
CTimetOutDate,tKeepDate;
EdtID=disRst.GetFieldValue("编号");
EdtName=disRst.GetFieldValue("名称");
EdtUnit=disRst.GetFieldValue("计量单位");
EdtArer=disRst.GetFieldValue("产地");
DtpOutDate=disRst.GetFieldValue("出厂日期");
DtpKeepDate=disRst.GetFieldValue("保质期");
EdtPrice=disRst.GetFieldValue("进货价格");
EdtSellPrice=disRst.GetFieldValue("销售价格");
m_EdtID.SetWindowText(EdtID);
m_EdtName.SetWindowText(EdtName);
m_EdtUnit.SetWindowText(EdtUnit);
m_EdtArer.SetWindowText(EdtArer);
m_EdtPrice.SetWindowText(EdtPrice);
m_EdtSellPrice.SetWindowText(EdtSellPrice);
tOutDate=CStringTOCTime(DtpOutDate);
tKeepDate=CStringTOCTime(DtpKeepDate);
m_DtpOutDate.SetTime(&tOutDate);
m_DtpKeepDate.SetTime(&tKeepDate);
disRst.Close();
voidCDWare:
:
OnWareButsave()
{
if(MessageBox("确定要保存记录吗?
","系统提示",MB_OKCANCEL|MB_ICONQUESTION)==1)
{if(this->AddOrChange==1)//添加
sSQL.Format("INSERTINTO商品信息表VALUES('%s','%s','%s','%s','%s','%s',%s,%s)",EdtID,EdtName,EdtArer,EdtUnit,DtpOutDate,DtpKeepDate,EdtPrice,EdtSellPrice);
if(this->AddOrChange==2)//修改
sSQL.Format("UPDATE商品信息表SET名称='%s',产地='%s',计量单位='%s',出厂日期='%s',保质期='%s',进货价格=%s,销售价格=%sWHERE编号='%s'",EdtName,EdtArer,EdtUnit,DtpOutDate,DtpKeepDate,EdtPrice,EdtSellPrice,EdtID);
AddRst.Open(sSQL,adCmdText);
sSQL.Format("INSERTINTO库存信息表VALUES('%s',0)",EdtID);
AddRst.Open(sSQL,adCmdText);
}
3.1.3管理客户信息功能实现
1)界面设计
管理客户信息功能的界面如下所示,它的主要功能是对客户信息的管理,如下所示的客户按照编号,名称等标识,相应的可以根据编号,名称等条件对客户进行查询,如输入编号为KH001可以查询该该客户为佑康食品销售有限公司。
双击记录可以对其信息进行修改,如图3.1.3.1所示:
图3.1.3.1客户信息查询
客户信息管理如图3.1.3.2所示:
图3.1.3.2客户信息管理
2)编程的实现
成功登陆商品销售管理系统后,用户选择基础信息管理模块,在客户信息管理中添加客户,修改客户,删除客户,提交到数据库,保存并退出该系统。
相应流程图和重要代码如下所示:
流程图如图3.1.3.3所示:
图3.1.3.3流程图
重要代码:
voidCDCliect:
:
Display(CStringsField,CStringsValue)
{
RxRecordsetdisRst;
CStringsSQL;
sSQL.Format("SELECT*FROM客户信息表WHERE%s='%s'",sField,sValue);
disRst.Open(sSQL,adCmdText);
disRst.MoveFirst();
CStringEdtLinkManTel,EdtTel,EdtTaxPayer,EdtSName,EdtName,EdtLinkMan,EdtID,EdtFax,EdtEmail,EdtBankID,EdtBank,EdtAddr;
EdtID=disRst.GetFieldValue("编号");
EdtName=disRst.GetFieldValue("名称");
EdtAddr=disRst.GetFieldValue("地址");
EdtTel=disRst.GetFieldValue("电话");
EdtLinkMan=disRst.GetFieldValue("联系人");
EdtLinkManTel=disRst.GetFieldValue("联系人电话");
m_EdtID.SetWindowText(EdtID);
m_EdtName.SetWindowText(EdtName);
m_EdtAddr.SetWindowText(EdtAddr);
m_EdtTel.SetWindowText(EdtTel);
m_EdtLinkMan.SetWindowText(EdtLinkMan);
m_EdtLinkManTel.SetWindowText(EdtLinkManTel);
disRst.Close();
}
3.1.4管理员工信息功能实现
1)界面设计
管理客户信息功能的界面如下所示,它的主要功能是对员工信息的管理,如下所示的员工按照编号,名称等标识,相应的可以根据编号,名称等条件对员工进行查询,如输入编号为YG001可以查询该员工名称为李勇。
双击记录可以对其信息进行修改,员工信息查询如图3.1.4.1所示:
图3.1.4.1员工信息查询
员工信息管理如图3.1.4.2所示:
图3.1.4.2员工信息管理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 课程设计 商品 销售 管理 系统