(完整版)仓库关系毕业设计.doc_第1页
(完整版)仓库关系毕业设计.doc_第2页
(完整版)仓库关系毕业设计.doc_第3页
(完整版)仓库关系毕业设计.doc_第4页
(完整版)仓库关系毕业设计.doc_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信息系统设计软件工程课程设计课题名称:仓库进存销管理系统姓名:孙黄斌学号:学院:应用技术与继续教育学院专业: 计算机科学与技术年级: 2010 级(夜大专升本)指导教师 :陈朗钦完成日期 :年4月15日2012目录引言摘要.3第 1 章 系统规划 .41.1系统设计目标 .51.2系统总体规划 .41.3设计方案 .4第 2 章 系统分析 .52.1业务需求及分析 .52.2系统业务流程图 .52.3系统数据流程图 .6第 3 章 系统设计 .73.1系统软件功能结构 .73.2系统主要技术 .73.3系统数据库设计 .83.3.1系统组成及数据环境 .83.3.2数据库概念设计 .83.3.

2、3数据库逻辑设计 .93.3.4数据库物理设计 .103.4系统输入设计 .143.5系统输出设计 .14第 4 章 系统实现 .154.1 系统主程序流程.154.2系统主界面设计 .154.3系统主程序设计 . .224.3.1登录及切换用户 .224.3.2登录成功后进入的主界面. .234.3.3权限设置 .244.3.4进货单查询 .274.3.5销售订单校验 .284.3.6库存信息设置 .304.4软件测试 .33第 5 章 结束语 .33参考文献.34摘要随着技术发展,电脑操作及管理日趋简化,电脑知识日趋普及,同时市场经济快速多变,竞争激烈,企业采用电脑管理进货、库存、销售等诸

3、多环节也已成为趋势及必然。仓库进销存管理系统集中体现了一个企业对是否对库存合理管控的能力与效率。本仓库管理系统主要实现产品配送,发货,等情况,让管理人员能及时根据所需,对产品流转有较为直观的操控。本系进销存管理系统的配送流程采用BS 模式开发设计,从订单管理到运货商供应有着一套严格的流程【关键词】进货、销售、库存、预警。引言随着电脑技术的不断发展,他在人们生活的各个层次在不断的渗透着,让人们渐渐的离不开了电脑这个高科技的新新产物。原先的用手工来完成仓库管理系统是一个较烦琐的过程,既费时、费力、耗损人员力量,大量的纸质,又不利于一个月或更久时间的结算,而进行计算机管理可以大大提高工作效率,而且数

4、据处理也更为,也能保证操作的准确性、高效性及安全性。仓库进销存管理系统同时也是一些企业管理不可缺少的一个信息系统 , 它的内容对于管理者来说是至关重要的 , 所以仓库进销存管理系统应该能够为管理者提供充足的信息和快捷的查询手段,大大的方便管理者合理的管理。第1章系统规划1.1系统设计目标(1) 系统采用人机对话方式,界面美观友好、信息查询灵活、方便、快捷、准确、数据存储安全可靠。(2) 键盘操作,快速响应。(3) 实现各种查询,如多条件查询、模糊查询等。(4) 管理员可以设置操作员的权限。(5) 对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。(6) 数据保密性强,为每个用户设

5、置权限级别。(7) 系统最大限度地实现了易安装性、易维护性和易操作性。(8) 系统运行稳定、安全可靠。1.2系统总体规划进销存管理系统是基于先进的软件和高速、大容量的硬件基础上的新的进销存管理模式,通过集中式的信息数据库,将企业的进、销、存、调、转、赚等企业的经营业务有机的结合起来中,达到数据共享、降低成本、提高效率、改进服务等目的。 同时还可以从以下几个方面来提高管理水平:提高管理效率降低人工成本降低采购成本及时调整营销策略防范陈呆死帐提高帐款管理减少仓储面积,提高房产综合利用降低储备资金占用加快资金周转实现的经济效益强化财务控制实现的经济效益商业数据智能分析高效决策1.3设计方案(1) 要

6、求有良好的人机界面。(2) 由于该系统的使用对象多,要求有较好的权限管理。(3) 方便的数据查询,支持多条件查询。(4) 基础信息管理(包括商品信息、客户信息、供应商信息等)。(5) 通过计算机,能够直接“透视”仓库存储情况。(6) 完善的商品采购信息、商品销售信息进行管理。(7) 商品销售排行统计。(8) 当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。(9) 数据计算自动完成,尽量减少人工干预。(10) 系统退出。第2章系统分析系统分析的最主要内容有抽奖系统的业务需求分析、系统数据需求、业务流程图、数据流程图、 E-R 关系图设计等。2.1 业务需求及分析进销存管

7、理系统是一个典型的数据库开发应用程序,由基础信息管理模块、进货信息管理模块、销售信息管理模块、库存信息管理模块等部分组成,规划系统功能模块如下:(1) 基础信息管理模块该模块主要包括切换用户、权限信息设置、业务员信息设置、客户信息设置、供应商信息设置、商品信息设置、仓库信息设置、 角色信息设置、会员类别信息设置、产品类别信息设置。(2) 进货信息管理模块该模块主要包括进货信息查询、进货订单录入和修改、进货单录入和修改、订货单打印。(3) 销售信息管理模块该块主要包括销售信息查询、销售订单录入和修改改、销售单录入和修改、销售单打印。(4) 库存信息销售模块该模块主要包括库存信息查询、库存信息的设

8、置、进货订单的校验、销售订单的校验、库存单打印。2.2系统业务流程图从实际业务功能的角度将系统规划中有关的该业务做进一步的分析,用一个完整的图形来反映实际业务处理过程的“流水帐”。系统业务流程图( TFD)如下:2.3系统数据流程图第3章系统设计3.1 系统软件功能结构图 3-1系统功能结构图3.2系统主要技术进销存管理系统的开发工作主要包括前台应用程序的展现和后台数据库的建立与维护这两个方面。对于前者要求应用程序功能完善、使用方便、易操作等。后者则要求建立数据一致性和完整性强、数据安全性好的数据库。3.3系统数据库设计3.3.1系统组成及数据环境系统主要采用 VisualStudio.NET

9、 2003+SYbase 来完成开发。 SYBASE 数据库环境下 , 创建相应的表 admin 管理员登入后 , 将按结构设计进行相应功能模块调用。3.3.2数据库概念设计本系统数据库采用SQL Server 2005 数据库,系统数据库名称为JXC。数据库 JXC中包含 15 张表。(1) 商品信息,包括的数据项有:产品编号、产品名称、条形码、类别、入库价格、分销价格、零售价格、生产厂家、更新日期、备注信息等。(2) 产品类别信息,包括的数据项有:类别编号、类别名称、备注信息等。(3) 客户信息,包括的数据项有:客户编号、客户名称、地址、邮政编码、电话号码、公司主页、联系人、联系人电子邮件

10、、类别、累计消费金额、备注信息等。(4) 供应商信息 , 包括的数据项有:供应商编号、供应商名称、地址、邮政编码、电话号码、公司主页、联系人、联系人电子邮件、备注信息等。(5) 角色信息,包括的数据项有:角色编号、角色名称、备注信息等。(6) 权限信息,包括的数据项有:权限编号、权限名称、权限转向、备注信息等。(7) 角色权限信息,包括的数据项有:编号、角色编号、权限编号。(8) 业务员信息,包括的数据项有:业务员编号、业务员姓名、登录名称、登录密码、类别、电话号码、家庭住址、身份证号码、备注信息等。(9) 进货订单信息,包括的数据项有:订货日期、编号、业务员、供应商编号、产品编号、数量、单价

11、、折扣比例、总金额、状态、备注信息等。(10) 进货单信息,包括的数据项有:入库日期、业务员、编号、进货订单编号、供应商编号、仓库编号,商品编号、数量、单价、折扣、总金额、是否即时付款、是否记帐、预付比例、备注信息等。(11) 销售订单表 , 包括的数据项有:销售订货日期、业务、销售订货单编号、客户编号、商品编号、数量、单价、折扣、总金额、状态、备注信息。(12) 销售单表 , 包括的数据项有:销售日期、业务员、销售单编号、销售订单编号、客户编码、仓库编号、商品编号、数量、单价、折扣、总金额、是否即时付款、是否记帐、预付比例、备注信息。(13) 库存信息,包括的数据项有:编号、更新日期、仓库编

12、号、商品编号、数量、总金额、缺货警告、备注信息等。(14) 会员类别信息,包括的数据项有:编号、名称、备注信息等。(15) 仓库信息,包括的数据项有:仓库编号、仓库名称、备注。3.3.3数据库逻辑设计3.3.4数据库物理设计根据上述数据库的需求分析和概念结构设计,设计了名称为JXC的数据库。数据库 JXC由下面多个表格组成,各个表的命名及字段命名都是以相应名称的拼音首字母组合而成,各个表格的设计结果如下表格所示,每个表格表示在数据库中相对应的一个表。列名数据类型可否为空说明spbhintNot Null商品编号(主键自增)spmcVarchar(50)Not Null商品名称sptxmVarc

13、har(50)Not null商品条形码splbbhintNull商品类别编号spRkjgdecimalNull入库价格spFxjgdecimalNull分销价格spLsjgdecimalNull零售价格spSccjVarchar(50)Null生产厂家spGxrqVarchar(50)Null更新日期spbztextNull备注信息表 1-1 商品信息表 (spxx)列名数据类型可否为空说明cplbbhintNot Null产品编号 ( 主键自增)cplbmcVarchar(50)Not Null产品名称cplbbztextNull备注信息表 1-2 产品类别表 (cplb)列名数据类型可否

14、为空说明HybhintNot Null会员编号(主键自增)HymcVarchar(50)Null会员名称DzVarchar(100)Null地址YzbmVarchar(20)Null邮政编码LxdhVarchar(20)Null联系电话GszyVarchar(20)Null公司主页LxrVarchar(20)Null联系人LxrdzyjVarchar(50)Null联系人电子邮件HylbIntNull会员类别LjxfjedecimalNull累计消费金额khbztextNull备注信息表 1-3 客户信息表 (kh)列名数据类型可否为空说明GysbhintNot Null供应商编号(主键自增)

15、GysmcVarchar(50)Not Null供应商名称DzVarchar(100)Null地址Yzbmvarchar(20)Null邮政编码Lxdhvarchar(20)Null联系电话Gszyvarchar(50)Null公司主页Lxrdzyjvarchar(50)Null联系人电子邮件Lxrvarchar(20)Null联系人gysbztextNull备注信息表 1-4 供应商信息表 (gys)列名数据类型可否为空说明jsbhintNot Null角色编号(主键)jsmcVarchar(50)Not Null角色名称lbbztextNull备注信息表 1-5 角色表 (js)列名数据类

16、型可否为空说明QxbhintNot Null权限编号(主键自增)QxmcVarchar(50)Null权限名称QxurlVarchar(100)null权限转向qxbztextNull备注信息表 1-6权限表 (qx)列名数据类型可否为空说明Js_qxbhintNot Null编号(主键自增)jsbhintNull角色编号qxbhintnull权限编号表 1-7 角色权限表 (js_qx)列名数据类型可否为空说明YwybhintNot Null业务员编号(主键自增)YwymcVarchar(50)Not Null业务员姓名DlmcVarchar(50)Not Null登录名称DlmmVarch

17、ar(50)Not Null登录密码LxdhVarchar(50)Null联系电话JtzzVarchar(100)Null家庭住址SfzhmVarchar(50)Null身份证号码jsbhintNot Null角色编号(外键)ywybztextNull备注信息表 1-8 业务员表 (ywy)列名数据类型可否为空说明DhrqVarchar(50)Not Null订货日期YwyintNull业务员jhddbhVarchar(50)Not Null进货订单编号(主键)GysbhintNull供应商编号spbhintNull商品编号SldecimalNull数量djdecimalNull单价Zkdec

18、imalNull折扣ZjedecimalNull总金额ztintnull状态(0 未确认, 1确认, 2 退货,3 确认并入库)jhddbztextNull备注信息表 1-9 进货订单表 (jhdd)列名数据类型可否为空说明jhrqVarchar(50)Not Null进货日期YwyVarchar(50)Null业务员jhdbhVarchar(50)Not Null进货单编号(主键)jhddbhVarchar(50)Null进货订单编号GysbhintNull供应商编号CkbhVarchar(50)Null仓库编号spbhintNull商品编号SldecimalNull数量DjdecimalN

19、ull单价ZkdecimalNull折扣ZjedecimalNull总金额SfjsfkVarchar(10)Null是否即时付款SfjzVarchar(10)Null是否记帐YfjedecimalNull预付金额jhdbztextNull备注信息表 1-10 进货单表 (jhd)列名数据类型可否为空说明XsdhrqVarchar(50)Not Null销售订货日期YwyintNull业务员XsddbhVarchar(50)Not Null销售订单编号(主键)KhbhintNull客户编号SpbhintNull商品编号SldecimalNull数量djdecimalNull单价Zkdecimal

20、Null折扣ZjedecimalNull总金额ztintnull状态(0 未确认, 1确认, 2退货, 3确定并出库)xsddbztextNull备注信息表 1-11销售订单表 (xsdd)列名数据类型可否为空说明XsrqVarchar(50)Not Null销售日期YwyVarchar(50)Null业务员XsdbhVarchar(50)Not Null销售单编号(主键)XsddbhVarchar(50)Null销售订单编号KhbhintNull客户编号CkbhVarchar(50)Null仓库编号spbhintNull商品编号SldecimalNull数量DjdecimalNull单价Zk

21、decimalNull折扣ZjedecimalNull总金额SfjsfkVarchar(10)Null是否即时付款SfjzVarchar(10)Null是否记帐YfjedecimalNull预付金额xsdbztextNull备注信息表 1-12 销售单表 (xsd)列名Kcbh数据类型int可否为空Not Null说明库存编号增 )(主键自GxrqVarchar ( 50)Not Null更新日期CkbhVarchar ( 50)Null仓库编号spbhIntNull商品编号SldecimalNull数量ZjedecimalNull总金额qhjgIntNull缺货警告( 0 正常,1 警告)K

22、cbzTextNull备注表 1-13 库存表 (kc)列名数据类型可否为空说明hylbbhintNot Null会员类别编号(主键自增)hylbmcVarchar(50)Null会员类别名称hylbbztextNull会员类别备注表 1-14 会员类别表 ( .Add( ywy , ywy);Response.Redirect(JXCDefault.aspx,true );else lblmassage.Text = 登录失败! ;2登陆后的总体界面3产品入库实现方式 :publicstaticIList getJhdsByCondition(stringcondition1,stringc

23、ondition2)IList jhds =new List ();trystringsql =select jhrq,ywy,jhdbh,jhddbh,gysbh,ckbh,spbh,sl,dj,zk,zje,sfjsfk,sfjz,yfje,jhdbz from jhd where 1=1;if(condition1 !=-1& condition2 !=null )sql += and + condition1 + like %+ condition2 +% ;using ( SqlDataReader reader =DBHelper .GetReader(sql)while(read

24、er.Read()Jhd jhd =new Jhd();jhds.Add(jhd);catch ( Exceptionex)thrownew Exception (ex.ToString();returnjhds;4. 入库记录查询实现方式 :publicstaticJHDCX getJhdsByCondition(stringcondition1,stringcondition2)IList jhds =new List ();trystringsql =select jhrq,ywy,jhdbh,jhddbh,gysbh,ckbh,spbh,sl,dj,zk,zje,sfjsfk,sfjz

25、,yfje,jhdbz from jhd where 1=1;if(condition1 !=-1& condition2 !=null )sql += and + condition1 + like %+ condition2 +% ;using ( SqlDataReader reader =DBHelper .GetReader(sql)while(reader.Read()Jhd jhd =new Jhd();jhds.Add(jhd);catch ( Exceptionex)thrownew Exception (ex.ToString();returnjhds;5库存查询实现方式:

26、protectedvoid KCCX_RowCommand(objectsender,GridViewCommandEventArgs e)stringjhddbh =Convert .ToString(emandArgument);if (jhddbh!=null& jhddbh!= )Jhdd jhdd =new Jhdd();jhdd =JhddManager.getJhddByJhddbh(jhddbh);if (jhdd!=null )Kc kc =new Kc();kc =KcManager.existsKcBySpbh(jhdd.Spbh);if (kc.Kcbh!=null )

27、txtbgxrqgx.Text = kc.Gxrq;txtbkcbhgx.Text =Convert .ToString(kc.Kcbh);Kcbh =Convert .ToString(kc.Kcbh);if (kc.Ckbh!= null& kc.Ckbh!= )ddlckbhgx.SelectedItem.Selected =false ;ddlckbhgx.Items.FindByValue(kc.Ckbh).Selected =true ;if (kc.Spbh != 0)ddlspbhgx.SelectedItem.Selected =false ;ddlspbhgx.Items.

28、FindByValue(Convert .ToString(kc.Spbh).Selected =true ;6. 顾客退货7. 进货统计8. 添加会员实现方式publicintQxbhget if(ViewState return (intQxbh !=)ViewStatenull )Qxbh ;elsereturn-1;set ViewStateQxbh =value ; 绑定业务员publicvoid qxDataBind() gvQx.DataSource =QxManager.getAllQx();gvQx.DataBind();9. 会员管理10. 基本信息设置11. 修改删除仓库

29、4.3系统主程序设计4.3.1 登录及切换用户进入系统前首先进入登录这个界面,当用户登录成功后,可以利用此界面进行权限切换,流程图4-1 ,。登录的主要代码:publicvoid dlDataBind()ddlsf.DataSource = JsManager.getAllJs();ddlsf.DataBind();ListItem item =new ListItem( 请选择 ,-1 ,true );ddlsf.Items.Insert(0, item);protectedvoid btndl_Click1(objectsender,EventArgs e)if (ddlsf.Select

30、edValue =-1 )lblmassage.Text = 请选择身份! ;51aspxelseif(txtbuser.Text =null| txtbuser.Text = )lblmassage.Text = 请填写用户名! ;elseif(txtbpwd.Text =null| txtbpwd.Text = )lblmassage.Text = 请填写密码! ;elselblmassage.Text = ;Ywy ywy = YwyManager.getYwyByCoditions(txtbuser.Text,txtbpwd.Text, Convert .ToInt32(ddlsf.S

31、electedValue);if (ywy!= null& ywy.Ywymc!= null )Session.Add(ywy , ywy);Response.Redirect(JXCDefault.aspx,true );else lblmassage.Text = 登录失败! ;登录流程图 4-14.3.2 登录成功后进入的主界面主界面可以添加一些制度及其他方面的说明,更重要的是从这个界面可以依据不同的权限进入相应的界面进行相关操作,流程图5-4 ,主界面图 5-5 所示。主界面涉及权限的部分代码:protectedvoid Page_Load( objectsender,EventArg

32、s e)if(Sessionywy !=null)Ywy ywy = (Ywy)Sessionywy ;IList js_qxs =new List ();js_qxs = Js_qxManager.getJs_qxsByJsbh(ywy.Jsbh);inturlid =Convert .ToInt32(Request.QueryStringurlid);if(urlid != 0)if(js_qxs.Count 0)for( inti = 0; i js_qxs.Count; i+)Js_qx js_qx = (Js_qx)js_qxsi;if(js_qx.Qxbh = urlid)Resp

33、onse.Redirect(QxManager.getQxByQxbh(urlid).Qxurl,true );登录后进入其他模块流程图5-44.3.3权限设置进入这个界面后, 就可以对权限进行相关操作,权限设置流程图5-6 ,权限设置图 5-7 所示。权限设置部分代码:保存数据,确保刷新时数据存在publicintQxbhget if(ViewStateQxbh !=null )return( int )ViewStateQxbh ;elsereturn-1;set ViewStateQxbh =value ; 绑定业务员publicvoid qxDataBind() gvQx.DataSo

34、urce =QxManager.getAllQx();gvQx.DataBind();行变色事件protectedvoid gvQx_RowDataBound(objectsender,GridViewRowEventArgse)if(e.Row.RowType =DataControlRowType .DataRow) 判断事件行是不是数据行e.Row.Attributes.Add(onmouseover ,currentcolor=this.style.backgroundColor;this.style.backgroundColor=#CCFF99); 改变鼠标所在行的颜色,并存储当前

35、颜色e.Row.Attributes.Add(onmouseout ,this.style.backgroundColor=currentcolor);还原颜色LinkButtonlbtnDelete = (LinkButton)e.Row.FindControl(lbtnDelete);获得点击的按钮lbtnDelete.Attributes.Add(onclick,return confirm(你确定删除吗?);弹出提示对话框实现分页protectedvoid gvQx_PageIndexChanging(objectsender,GridViewPageEventArgse)gvQx.P

36、ageIndex = e.NewPageIndex;qxDataBind();编辑和删除事件protectedvoid gvQx_RowCommand(objectsender,GridViewCommandEventArgs e)Qxbh =Convert .ToInt32(emandArgument);if (emandName = De )QxManager.deleteQxByQxbh(Qxbh);if (emandName = Ed )Qx qx =QxManager.getQxByQxbh(Qxbh);this .txtbqxmcgx.Text = qx.Qxmc;this .tx

37、tbqxurlgx.Text = qx.Qxurl;this .txtbbzgx.Text = qx.Qxbz;lbltjmassage.Text = eeee+Qxbh;qxDataBind();更新修改项protectedvoid btngx_Click(objectsender,EventArgs e)Qx qx =new Qx();if( this .Qxbh = -1)lblgxmassage.Text = 请选择编辑项! ;else qx.Qxbh =this .Qxbh;qx.Qxmc = txtbqxmcgx.Text;qx.Qxurl = txtbqxurlgx.Text;qx.Qxbz = txtbbzgx.Text;lblgxmas

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论