书店管理系统汇总情况终结版.docx
- 文档编号:26828828
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:43
- 大小:1.46MB
书店管理系统汇总情况终结版.docx
《书店管理系统汇总情况终结版.docx》由会员分享,可在线阅读,更多相关《书店管理系统汇总情况终结版.docx(43页珍藏版)》请在冰豆网上搜索。
书店管理系统汇总情况终结版
河南城建学院
《信息系统分析与设计》课程设计报告书
设计题目:
书店信息管理系统
专业:
信息管理与信息系统
指导老师:
郝伟
小组成员:
李宁吴典
张党伟贾文科
李胜辉
设计时间:
2015年1月3日
一引言
信息在社会和经济的快速发展下,所起的作用越来越重要,信息资源的开发和利用的水平也成为了一个国家综合素质的一个表现。
计算机在对信息的处理和使用中,有较为方便的使用,各种数据库和系统的设计也为商业带来了极大的便利。
传统的书店,不论其规模的大小,都是拥有大量的图书,在管理和统计方面需要投入大量的时间和精力,因此,讲传统书店和现代的信息化结合到一起,设计一个合适的书店管理信息系统,对于书店的经营有着极为方便的提升。
使用计算机对书店进行管理,可以极大的提高对信息的处理速度,节省大量的人力,时间,减少开支。
二可行性分析
1技术可行性
书店配置多台电脑,用于对整个书店的全局的掌控。
可以对书店工作人员的基本情况和上下班情况的管理,对书店图书的进销存有着详细的记录和统计。
并且对书店工作人员进行培训,可以使其学会使用该系统。
2经济可行性
书店管理系统是一个小型的管理软件,开发和维护的经费都不会太高。
在图书的销售上,只要做到人员的合理分配和调用,对图书的合理购货及售出,就可以为书店带来良好的经济效益。
3.开发工具
本系统前台数据库采用MicrosoftSQLServer2005,该数据库系统在安全性、准确性、运行速度方面有绝对的优势,并且处理数据量大、效率高;后台选择以.NET平台作为开发平台,以C#作为开发语言,采用VisualStudio2005作为主要的开发工具,可与SQLServer2005数据库无缝连接。
ASP.NET ASP.NET建立在.NETFramework的编程类之上,它提供了一个Web应用程序模型,并且包含使生成ASPWeb应用程序变得简单的控件集和结构。
ASP.NET包含封装公共HTML用户界面元素(如文本框和下拉菜单)的控件集。
但这些控件在Web服务器上运行,并以HTML的形式将它们的用户界面推送到浏览器。
在服务器上,这些控件公开一个面向对象的编程模型,为Web开发人员提供了面向对象的编程的丰富性。
ASP.NET还提供结构服务(如会话状态管理和进程回收),进一步减少了开发人员必须编写的代码量并提高了应用程序的可靠性。
另外,ASP.NET使用这些同样的概念使开发人员能够以服务的形式交付软件。
使用XMLWebservices功能,ASP.NET开发人员可以编写自己的业务逻辑并使用ASP.NET结构通过SOAP交付该服务。
三需求分析
该图书管理系统针对小型的实体书店,在开发方面,以实用为目的。
做到便于工作人员的使用和管理,而且可以和好的对图书的信息管理和进销存方面有较为方便快捷的处理。
基本功能
1登录工作人员的登录,用于对整个系统的控制,防止其他人员的随意登录
2人员信息管理用于对整个书店的工作人员的信息的处理,工作时间的管理,人员的调度等
3会员的管理可以对书店的会员的添加,删除,其他的操作处理
4图书查询查询图书的详细信息,统计每天的图书的剩余量,销售的总量,库存量等
5订单管理包括每本图书的详细订单,以及进货图书的订单
6库存管理可以对每本图书的库存量进行统计,和需要进货的图书的提醒。
四组织结构分析
4.1组织结构图
4.1-1
4.2组织/业务关系图
联系组织
程度
门
店
采购部
仓
库
经
理
销售活动
*
采购活动
*
库存管理
*
行政监督管理
*
五业务流程分析
5.1业务流程图
5.1-1
六数据流程分析
顶层数据流程图
采购数据流程图
销售业务顶层数据流程图
销售一层数据流程图
七数据字典
有关采购业务数据字典内容提取,下面是为数据流程图做了相应的提取:
数据流包括如下几部分:
(1)商品信息
(2)采购申请单
(3)采购订单
(4)入库单
(5)进货单
(6)送货单
(7)财务报表
数据存储包括如下几个部分:
1.商品信息
2.采购订单
3.财务报表
4.送货单
5.进货单
6.入库单
外部实体包括如下几个部分:
1.库存部门
2.总经理
3.供应商
4.财务部门
处理过程包括如下几部分:
1.订单处理
2.订单汇总
数据元素卡片
总编号:
1-01
名称:
采购订单编号
编号:
01
别名:
说明:
本书店的采购订单编号
类型:
字符
有关编码的说明:
共8位
长度:
-13
CDXXXXXXXX
范围:
采购订单
操作日期
当日单据流水号
有关的数据结构/组合数据(使用场合):
采购订单
采购入库申请单
采购付款单
有关销售业务数据字典内容提取,下面是为数据流程图做了相应的提取:
数据流包括如下部分:
订单
销售订单
财务信息
申请购买
销售订单处理
财务信息
数据存储包括如下几个部分:
图书信息
销售订单
财务报表
外部实体包括如下几个部分:
客户
库存部门
总经理
财务部门
处理过程包括如下几部分:
销售订单处理
财务报表汇总
数据字典
销售订单
销售进账
库存信息数据流
库存信息数据流
八:
数据库设计
主要数据表结构
员工表
字段包含员工编号,员工姓名,性别,员工部门,联系方式等
表设计:
数据库中实际存储
员工权限表
字段包含id,用户名称,用户密码,进货管理,销售管理.库存管理,系统管理,基础信息管理
表设计
在数据库中实际存储
仓库存储表
包含字段:
图书编号,图书名称,图书作者,图书版本,产品编号,出版社,库存数量,实际价格,加权平均价格,销售价格,库存总价值,本类图书库存上限,本类图书库存下限
表设计
数据库中实际存储
销售订单统计表
字段包含:
订单号,订单日期,图书名称,图书数量,应付金额,实付金额,差额,出版社
表设计
数据库中实际存储
出版社信息表
字段包含:
出版社编号,出版社名称,传真,电话,联系人,地址等
表设计
在数据库中存储
其它表的设计如下
九:
系统设计
八.采购业务功能模块设计
9.1业务功能图
总体业务功能图
采购业务功能图
9.2业务代码设计
代码设计
9.3E-R图
9.4IPO图
采购图书申请单
备货缺货处理
收退货处理
销售业务功能模块设计
E_R图
十:
系统实现
10.1系统登录设计
窗体设计
在窗体中分别添加两个Label控件,两个textbox控件,两个Button控件。
1,代码设计
privatevoidbtnLogin_Click(objectsender,EventArgse)
{
if(txtUserName.Text==string.Empty)
{
MessageBox.Show("用户名不正确”,”错误提示”,MessageBoxButtons.OK
MessageBoxIcon.Error);
return;
}
DataSetds=null;
popedom.SysUser=txtUserName.Text;
popedom.Password=txtUserPwd.Text;
ds=baseinfo.Login(popedom);
if(ds.Tables[0].Rows.Count>0)
{
frmMainfrm_main=newfrmMain();
frm_main.Show();
if(Convert.ToBoolean(ds.Tables[0].Rows[0]["stock"]))frm_main.tlmBuy.Enabled=true;
if(Convert.ToBoolean(ds.Tables[0].Rows[0]["vendition"]))frm_main.tlmSale.Enabled=true;
if(Convert.ToBoolean(ds.Tables[0].Rows[0]["storage"]))frm_main.tlmStock.Enabled=true;
if(Convert.ToBoolean(ds.Tables[0].Rows[0]["system"]))frm_main.tlmSystem.Enabled=true;
if(Convert.ToBoolean(ds.Tables[0].Rows[0]["base"]))frm_main.tlmBase.Enabled=true;
this.Visible=false;
}
else
{
MessageBox.Show("用户名称或密码不正确”,”错误提示”,BoxButtons.OK,MessageBoxIcon.Error);
}
}
privatevoidtxtUserName_KeyUp(objectsender,KeyEventArgse)
{
if(e.KeyValue==13)txtUserPwd.Focus();
}
privatevoidtxtUserPwd_KeyUp(objectsender,KeyEventArgse)
{
if(e.KeyValue==13)btnLogin.Focus();
}
privatevoidbtnExit_Click(objectsender,EventArgse)
{
this.Close();
}
privatevoidgroupBox1_Enter(objectsender,EventArgse)
{
}
10.2系统主窗体设计
1,在窗体中分别添加一个MenuStrip控件、一个Timer控件和一个StatusStrip控件。
2.代码设计
publicfrmMain()
{
InitializeComponent();
}
privatevoidfileUnits_Click(objectsender,EventArgse)
{
BaseInfo.frmUnitsfrm_units=newEMS.BaseInfo.frmUnits();
frm_units.Show();
}
privatevoidfileStore_Click(objectsender,EventArgse)
{
newEMS.BaseInfo.frmStock().Show();
}
privatevoidfileEmployee_Click(objectsender,EventArgse)
{
newEMS.BaseInfo.frmEmployee().Show();
}
privatevoid
{
newEMS.BuyStock.frmUnitsList().Show();
}
privatevoidfileCurrentBook_Click(objectsender,EventArgse)
{
newEMS.BuyStock.frmUnitsList().Show();
}
privatevoidfileEnd_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidfrmMain_FormClosed(objectsender,FormClosedEventArgse)
{
Application.Exit();
}
privatevoidtlmSystem_Click(objectsender,EventArgse)
{
newEMS.SetSystem.frmSetOP().Show();
}
10.3进货管理窗体设计
1.1进货单
进货单是采购员进行图书采购进行操作的页面,在此页面可以进行添加一个新的进货单,如下图所示
1.2代码如下
进货统计
进货统计窗体是进行把进货信息整合到一起统一显示的窗体,窗体图如下:
2.2,代码设计
publicpartialclassfrmBuyStockSum:
Form
{
BaseClass.BaseInfobaseinfo=newEMS.BaseClass.BaseInfo();
BaseClass.cBillInfobillinfo=newEMS.BaseClass.cBillInfo();
publicfrmBuyStockSum()
{
InitializeComponent();
}
privatevoidtlbtnSumDetailed_Click(objectsender,EventArgse)
{
DataSetds=null;
billinfo.Handle=tltxtHandle.Text;
billinfo.Units=tltxtUnits.Text;
ds=baseinfo.BuyStockSumDetailed(billinfo,"tb_StockSumDeailed",dtpStar.Value,dtpEnd.Value);
dgvStockList.DataSource=ds.Tables[0].DefaultView;
}
privatevoidtlbtnSum_Click(objectsender,EventArgse)
{
DataSetds=null;
ds=baseinfo.BuyStockSum("tb_StockSum");
dgvStockList.DataSource=ds.Tables[0].DefaultView;
}
}
10.4销售管理窗体设计
1..1销售单
销售单据是书店对外销售的统计数据,此页面可以记录销售的时候生成的日期,单据编号,经手人,销售单位以及所销售的图书和金额。
如下图所示:
1.2代码设计
此部分代码感觉很不错的就是单据编号的自动生成,代码如下:
privatevoidfrmSellStock_Load(objectsender,EventArgse)
{
txtBillDate.Text=DateTime.Now.ToString("yyyy-MM-dd");
DataSetds=null;
stringP_Str_newBillCode="";
intP_Int_newBillCode=0;
ds=baseinfo.GetAllBill("tb_sell_main");
if(ds.Tables[0].Rows.Count==0)
{
txtBillCode.Text=DateTime.Now.ToString("yyyyMMdd")+"XS"+"1000001";
}
else
{
P_Str_newBillCode=Convert.ToString(ds.Tables[0].Rows[ds.Tables[0].Rows.Count-1]["billcode"]);
P_Int_newBillCode=Convert.ToInt32(P_Str_newBillCode.Substring(10,7))+1;
P_Str_newBillCode=DateTime.Now.ToString("yyyyMMdd")+"XS"+P_Int_newBillCode.ToString();
txtBillCode.Text=P_Str_newBillCode;
}
txtHandle.Focus();
}
privatevoidbtnSelectHandle_Click(objectsender,EventArgse)
{
EMS.SelectDataDialog.frmSelectHandleselecthandle;
selecthandle=newEMS.SelectDataDialog.frmSelectHandle();
selecthandle.sellStock=this;//将新创建的窗体对象设置为同一个窗体类的实例(对象)
selecthandle.M_str_object="SellStock"; //用于识别 是那一个窗体调用的selecthandle窗口的
selecthandle.ShowDialog();
}
privatevoidbtnSelectUnits_Click(objectsender,EventArgse)
{
EMS.SelectDataDialog.frmSelectUnitsselectUnits;
selectUnits=newEMS.SelectDataDialog.frmSelectUnits();
selectUnits.sellStock=this;//将新创建的窗体对象设置为同一个窗体类的实例(对象)
selectUnits.M_str_object="SellStock"; //用于识别 是那一个窗体调用的selectUnits窗口的
selectUnits.ShowDialog();
}
privatevoiddgvStockList_CellDoubleClick(objectsender,DataGridViewCellEventArgse)
{
SelectDataDialog.frmSelectStockselectStock=newEMS.SelectDataDialog.frmSelectStock();
selectStock.sellStock=this;//将新创建的窗体对象设置为同一个窗体类的实例(对象)
selectStock.M_int_CurrentRow=e.RowIndex;
selectStock.M_str_object="SellStock"; //用于识别 是那一个窗体调用的selectStock窗口的
selectStock.ShowDialog();
}
统计图书进货数量和金额的代码如下:
try
{
floattqty=0;
floattsum=0;
for(inti=0;i<=dgvStockList.RowCount;i++)
{
tsum=tsum+Convert.ToSingle(dgvStockList[5,i].Value.ToString());
tqty=tqty+Convert.ToSingle(dgvStockList[3,i].Value.ToString());
txtFullPayment.Text=tsum.ToString();
txtStockQty.Text=tqty.ToString();
}
}
catch{}
}
10.4库存管理
privatevoidSetdgvStockListHeadText()
{
dgvStockList.Columns[0].HeaderText="商¦¨¬品¡¤编À¨¤号?
";
dgvStockList.Columns[1].HeaderText="商¦¨¬品¡¤名?
称?
";
dgvStockList.Columns[2].HeaderText="商¦¨¬品¡¤型¨ª号?
";
dgvStockList.Columns[3].HeaderText="商¦¨¬品¡¤规?
格?
";
dgvStockList.Columns[4].HeaderText="商¦¨¬品¡¤单Ì£¤位?
";
dgvStockList.Columns[5].HeaderText="商¦¨¬品¡¤产¨²地Ì?
";
dgvStockList.Columns[6].HeaderText="库a存ä?
数ºy量¢?
";
dgvStockList.Columns[7].Visible=false;
dgvStockList.Columns[8].Visible=false;
dgvStockList.Columns[9].Visible=false;
dgvStockList.Columns[10].HeaderText="盘¨¬点Ì?
数ºy量¢?
";
dgvStockList.Columns[11].Visible=false;
dgvStockList.Columns[12].Visible=false;
}
privatevoidtlBtnFind_Click(objectsender,EventArgse)
{
if(tlCmbStockType.Text==string.Empty)
{
MessageBox.Show("查¨¦询¡¥类¤¨¤别Àe不?
能¨¹为a空?
!
ê?
","错䨪误¨®提¬¨¢示º?
!
ê?
",MessageBoxButtons.OK,MessageBoxIcon.Error);
tlCmbStockType.Focus();
return;
}
else
{
if(tlTxtFindStock.Text.Trim()==string.Empty)
{
dgvStockList.DataSource=baseinfo.GetAllStock("tb_stock").Tables[0].DefaultView;
th
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 书店 管理 系统 汇总 情况 终结