图书销售管理系统Word文档下载推荐.docx

上传人:b****2 文档编号:3706168 上传时间:2023-05-02 格式:DOCX 页数:32 大小:356.58KB
下载 相关 举报
图书销售管理系统Word文档下载推荐.docx_第1页
第1页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第2页
第2页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第3页
第3页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第4页
第4页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第5页
第5页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第6页
第6页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第7页
第7页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第8页
第8页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第9页
第9页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第10页
第10页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第11页
第11页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第12页
第12页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第13页
第13页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第14页
第14页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第15页
第15页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第16页
第16页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第17页
第17页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第18页
第18页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第19页
第19页 / 共32页
图书销售管理系统Word文档下载推荐.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

图书销售管理系统Word文档下载推荐.docx

《图书销售管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《图书销售管理系统Word文档下载推荐.docx(32页珍藏版)》请在冰点文库上搜索。

图书销售管理系统Word文档下载推荐.docx

字段大小

描述

ID

int

4

管理员帐号

Password

nvarchar

50r

密码

表2.2BookInfo(图书基本信息表)

BookID

图书编号

BookName

50

图书名称

CategoryID

图书类型编号

Author

作者

Publisher

出版社

PublishDate

smalldatetime

出版日期

Purchase

float

8

进价

Price

售价

Stock

库存本数

Discount

折扣

BarCode

条形码

表2.3BookCategory(图书类型表)

长度

CategoryName

图书类型名称

表2.4BookSale(图书销售记录表)

销售记录编号

SalePrice

实际售价

SaleDate

销售日期

2.4数据库描述

本软件采用SQL数据库。

3概要设计

本系统是根据书店的实际需求而开发的,完全能够帮助书店实现高效、准确的图书销售自动化管理。

在分析阶段,我们已经提出了系统的结构和数据字典。

本节我们将对系统的使用环境作简要介绍,并对该系统作概要设计。

3.1系统运行环境

P4机

Windows操作系统

VisualC++6.0

3.2系统功能模块设计

在前面系统功能分析的基础上,结合VisualC++程序编制的特点,得到如图3.1所示的系统功能模块图。

图3.1图书销售管理系统功能模块图

各模块功能分配如下:

(1)用户登陆功能:

管理员登陆模块(M1)。

(2)图书录入功能:

图书录入模块(M2)。

(3)图书销售功能:

图书销售模块(M3)。

(4)销售统计功能:

销售统计模块(M4)。

(5)查询图书库存功能:

查询库存模块(M5)。

(6)售完图书查询功能:

售完图书查询模块(M6)。

3.3系统处理流程

(1)系统启动,进入身份验证。

(2)初始化系统,导入数据库。

(3)录入图书信息。

(4)图书销售。

(5)统计图书销售信息。

(6)查询图书库存信息。

(7)查询已售完图书信息。

(8)退出系统。

3.4接口设计

3.4.1外部接口

(1)用户界面

采用图形用户界面,包含菜单、按钮、对话框等元素。

(2)软件接口

软件运行于VisualC++6.0平台上。

(3)硬件接口

运行于PC机上。

3.4.2内部接口

(1)用户登陆模块(M1):

由相应事件驱动消息激活,完成用户登陆功能,之后进入消息循环状态。

(2)图书销售模块(M3):

由相应事件驱动消息激活,完成图书销售功能,之后进入消息循环状态。

(3)销售统计模块(M4):

由相应事件驱动消息激活,完成销售统计功能,之后进入消息循环状态。

(4)查询库存模块(M5):

由相应事件驱动消息激活,完成查询库存功能,之后进入消息循环状态。

(5)售完图书查询模块(M6):

由相应事件驱动消息激活,完成售完图书查询功能,之后进入消息循环状态。

4详细设计

该系统采用VC++6.0中的MFC连接SQL数据库的方式,使用图形用户界面,主要实现图书录入、图书销售等功能。

下面具体对各模块进行介绍。

4.1登录模块及主界面

在登录界面(如图4.1所示)中输入用户名和密码,登录成功后进入主界面。

登陆框流程图如图4.2所示,系统主界面如图4.3所示,单击某个按钮就能弹出某个功能的界面。

图4.1系统登录界面

图4.2登录模块流程图

图4.3系统主界面

4.2图书录入模块

4.2.1实现目标

添加图书信息,图书录入对话框的设计如图4.4所示。

“保存”按钮对应的方法为RAddBookDlg:

:

OnSave(),流程图如图4.5所示。

图4.4图书录入对话框

图4.5RAddBookDlg:

OnSave()方法的流程图

4.2.2设计步骤

(1)向项目中添加一个新Dialog资源,资源ID为IDD_ADDBOOK。

在IDD_YGTJK对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。

在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“图书信息录入”。

(2)从Controls面板上向Dialog资源中添加所需控件,更改资源的属性,并为资源设置相对应的变量,如表4.1所示。

表4.1图书录入Dialog资源属性设置

Properties

MemberVariables

Type

Member

IDC_BK_CATEGORY

默认

文本

IDC_BK_NAME

IDC_BK_AUTHOR

IDC_BK_PUBLISHER

IDC_BK_DATE

日期/时间

IDC_BK_PURCHASE

数字

IDC_BK_PRICE

IDC_BK_PAYOFF

IDC_BK_STOCK

IDC_BK_BARCODE

IDC_BK_DISCOUNT

IDC_RESET

Caption重填

IDC_SAVE

Caption添加

IDCANCEL

Caption退出

4.2.3代码分析

(1)打开ClassWizard窗口,添加在OnInitDialog成员函数,向OnInitDialog添加代码如下:

BOOLRAddBookDlg:

OnInitDialog()

{

CDialog:

OnInitDialog();

//TODO:

Addextrainitializationhere

GetBookGategory();

returnTRUE;

//returnTRUEunlessyousetthefocustoacontrol

//EXCEPTION:

OCXPropertyPagesshouldreturnFALSE

}

(2)当用户单击“保存“按钮时,实现添加图书功能,其响应代码如下:

voidRAddBookDlg:

OnSave()

Addyourcontrolnotificationhandlercodehere

UpdateData(TRUE);

if(!

IsValidInput())

return;

if(IDYES!

=AfxMessageBox("

确定要保存吗?

"

MB_YESNO))//放弃保存

if(SaveData())

{

AfxMessageBox("

保存成功!

);

//保存后重置数据

m_bHasNewBook=true;

OnReset();

GetDlgItem(IDC_BK_CATEGORY)->

SetFocus();

}

else

保存失败!

(3)判断输入信息是否正确的函数是IsValidInput(),其响应代码如下:

boolRAddBookDlg:

IsValidInput()

CStringstr="

0123456789"

;

if(m_strBookCategory.IsEmpty()||m_strBookCategory.FindOneOf(str)!

=-1)

输入有误!

图书类型不能为空或包含数字。

returnfalse;

if(m_strBookName.IsEmpty())

书名不能为空。

GetDlgItem(IDC_BK_NAME)->

if(m_strAuthor.IsEmpty()||m_strAuthor.FindOneOf(str)!

作者名称不能为空或包含数字。

GetDlgItem(IDC_BK_AUTHOR)->

if(m_strPublisher.IsEmpty()||m_strPublisher.FindOneOf(str)!

出版社名称不能为空或包含数字。

GetDlgItem(IDC_BK_PUBLISHER)->

if(m_dPurchase<

=0)

图书进价应为正值!

GetDlgItem(IDC_BK_PURCHASE)->

if(m_dPrice<

=0)

图书售价应为正值!

GetDlgItem(IDC_BK_PRICE)->

if(m_lDiscount<

0||m_lDiscount>

100)

图书折扣应为0-100之间正值!

GetDlgItem(IDC_BK_DISCOUNT)->

if(m_lStock<

1)

图书数量应为正值!

GetDlgItem(IDC_BK_STOCK)->

if(m_strBarcode.IsEmpty()||m_strBarcode.GetLength()>

15)

条形码应为15位整数!

GetDlgItem(IDC_BK_BARCODE)->

//AfxMessageBox(m_strBookName+"

\r\n"

+

//m_strBookCategory+"

//m_strAuthor+"

//m_strPublisher+"

//m_strBarcode);

returntrue;

4.3图书销售模块

4.3.1实现目标

实现图书销售功能,图书销售对话框设计如图4.6所示。

“销售”按钮对应的方法为RSaleBookDlg:

OnOK(),流程图如图4.7所示。

图4.6图书销售对话框

图4.7RSaleBookDlg:

OnOK()方法的流程图

4.3.2实现步骤

(1)向项目中添加一个新Dialog资源,资源ID为IDD_SALEBOOK。

在IDD_YGGONGZITJ对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。

在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“图书销售。

(2)从Controls面板上向Dialog资源中添加相关控件,更改资源的属性,并为资源设置相对应的变量,如表3.2所示:

表4.2图书销售添加Dialog资源属性设置

IDC_SBK_NAME

IDC_SBK_BARCODE

IDC_SBK_PRICE

IDC_SBK_SALEPRICE

IDC_SBK_DISCOUNT

IDC_SBK_DATE

IDOK

Caption销售

4.3.3代码分析

(1)为“销售”按钮添加代码,实现图书销售功能,代码如下:

voidRSaleBookDlg:

OnOK()

Addextravalidationhere

m_bReadySale)

m_bReadySale=FindBook();

UpdateData(TRUE);

CStringstrMsg;

strMsg.Format("

是否出售?

\n书名:

%s\n价格:

%.2f”,m_strBookName

m_dSalePrice);

if(IDYES==AfxMessageBox(strMsg,MB_YESNO))

{

ModifyStock();

//修改图书库存

SaveSaleRecord();

//记录销售记录

}

Init();

UpdateData(FALSE);

GetDlgItem(IDC_SBK_NAME)->

m_editDiscount.EnableWindow(FALSE);

//CDialog:

OnOK();

(2)判断销售是否能够成功的函数是RSaleBookDlg:

FindBook(),其代码如下:

boolRSaleBookDlg:

FindBook()

CStringstrSql;

_variant_tvar;

doubledPurchase;

m_strBookName.IsEmpty())

strSql.Format("

SELECT*FROMBookInfoWHEREBookName=\"

%s\"

andStock>

0"

m_strBookName);

elseif(!

m_strBarCode.IsEmpty())

SELECT*FROMBookInfoWHEREBarCode=\"

m_strBarCode);

请输入书名或条码!

CRBookSaleApp*pApp=(CRBookSaleApp*)AfxGetApp();

try

pApp->

m_pRecordset->

Open(strSql.AllocSysString(),

pApp->

m_pConnection.GetInterfacePtr(),

adOpenDynamic,

adLockOptimistic,

adCmdText);

if(pApp->

adoEOF)

AfxMessageBox("

查无此书!

请输入书名或条码无误。

pApp->

Close();

returnfalse;

var=pApp->

GetCollect("

BookID"

if(var.vt!

=NULL)

m_lBookID=var.lVal;

Discount"

m_lDiscount=var.lVal;

Price"

m_dPrice=var.dblVal;

Purchase"

dPurchase=var.dblVal;

CategoryID"

m_lCategory=var.lVal;

catch(_com_error*e)

AfxMessageBox(e->

ErrorMessage());

m_editDiscount.EnableWindow(m_dPrice>

=dPurchase);

m_lDiscount=(m_dPrice>

=dPurchase)?

m_lDiscount:

100;

//售价小于进价时,不允许打折

m_dSalePrice=m_dPrice*(double(m_lDiscount)/100);

//计算折后价

UpdateData(FALSE);

}

4.4销售统计模块

4.4.1实现目标

实现对已销售的图书进行统计的功能,销售统计对话框如图4.8所示。

图4.8销售统计对话框

4.4.2设计步骤

(1)向项目中添加一个新Dialog资源,资源ID为IDD_REPORT。

在IDD_REPORT对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“DialogProperties”对话框。

在“DialogProperties”对话框中选择General选项卡,更改其“Caption”文本框内容为“销售统计”。

(2)从Controls面板上向Dialog资源中添加相应控件,更改资源的属性,并为资源设置相应的变量,如表4.3所示:

表4.3用户信息管理Dialog资源属性设置

IDC_RADIO2

单选框

IDC_RADIO3

IDC_RADIO4

IDC_RADIO5

IDC_RADIO6

IDC_STATIC

Caption确定

Caption取消

4.4.3代码分析

查询函数为CRBookS

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2