收藏 分销(赏)

Web程序设计专业课程设计格式.doc

上传人:w****g 文档编号:2864410 上传时间:2024-06-07 格式:DOC 页数:38 大小:1.32MB 下载积分:12 金币
下载 相关 举报
Web程序设计专业课程设计格式.doc_第1页
第1页 / 共38页
Web程序设计专业课程设计格式.doc_第2页
第2页 / 共38页


点击查看更多>>
资源描述
分类 课外实践汇报 科目 Web程序设计 安阳师院计算机和信息工程学院 题目:仓库管理系统 专 业 班 级 计算机科学和技术一班 小 组 成 员 白灵鸽 丁艳雯 霍梦娜 指 导 教 师 吴琴霞 6 月 18 日 课题组组员分工 白灵鸽:登录(login)、查看入库信息(inwarehouse)、查看出库信息(outwarehouse)、查看存放规则(storem)、查看仓库货物(lgood)、需求列表(request,xiangdan)。 丁艳雯:数据库设计、三个母版页设计、添加进出库信息(addinout)、添加货物存放规则(addstoret)、添加用户(adduser)、添加货物信息、添加仓库信息(ckxxadd)。 霍梦娜:修改仓库信息(ckguani)、修改人员信息(selectuarer)、货物信息维护、修改仓库管理员密码(alterpassword1)、修改分仓库管理员密码(alterpassword2)、修改采购员密码(alterpassword3) 目录 绪论 5 一、 系统概述 5 1.1.1 仓储管理系统地位和作用: 5 1.1.2 物流仓储管理系统对企业发展关键意义: 5 1.1.3系统开发目标和意义 6 二、 系统分析 7 2.1 可行性分析 7 2.2 采取技术 8 2.3 系统需求分析 8 三、 系统设计 9 3.1 系统总体设计 9 3.2 数据库设计 13 3.2.1数据库概念结构设计 13 3.2.2数据库逻辑结构设计 15 3.2.3 系统相关数据表 18 四、 系统具体设计 21 4.4.1 模块功效 21 4.4.2母版页设计: 21 4.4.3 部分功效展示及实现代码 22 4.4.4入库查询功效实现: 26 4.4.4 采取新技术 29 五、 系统实现 30 5.1 前台用户端实现 30 5.2 后台管理员实现 30 5.2.1 我们系统共分为三种身份管理员,分别为仓库总管、分仓库管理员、采购员。各个管理员权限不一样,具体以下图所表示: 30 5.2.2 登录页面设计比较简单,这里不再过多介绍,页面运行效果以下图所表示: 31 5.3 服务器配置 32 六、 测试和分析 32 6.1.登录界面测试 33 6.2.用户添加界面测试(及所用添加功效) 33 6.3.修改用户密码功效测试 34 6.4查看功效测试 34 6.5结论: 35 七、 总结 35 绪论 一、 系统概述 1.1.1 仓储管理系统地位和作用:   伴随IT技术不停发展和成熟,信息关键性日渐显现。市场信息化日益扩大,使自动化管理水平,以最快速度和最正确数据取得信息并立即作出反馈,基于此情况,很多企业针对企业仓储部门实施基于关系数据库信息管理制度,并以此为最高管理层提供决议服务。为此,本小组以适应该前企业信息管理制度尝试开发了本仓储管理系统。目前物流各步骤之间存在不均衡性,而仓储管理系统是处理这种不均衡性关键手段。仓储管理经过实现物流步骤整合,能够很好处理仓储步骤中上下游步骤中产生多种矛盾。仓储管理系统能够整合资源,最终实现在运输条件约束力范围内得出最理想库存控制方案,达成物流成本最低化。仓储方案设计和运行操作被利用到很多具体案例中,发挥出很关键作用,也使得物流仓储管理系统地位得到了很大提升。  1.1.2 物流仓储管理系统对企业发展关键意义:   现在,很多企业已认识到企业管理信息对企业发展战略意义,竞争猛烈和对成本要求使得管理对象表现为:整和上游、企业本身、下游一体化供给链信息和资源。对于仓库,尤其是制造业中仓库,作为物流供给链关键节点,不一样供给链库存规则理念是不相同,大家管理物流供给链时候,已经不只是把库存作为维持生产和销售一个方案,更多把它看成是一个管理供给链平衡机制,这也就给予了它协调整个供给链功效。不过现代企业同时又面临着太多不确定原因,不管这些不确定原因产生自供给方或来自生产方还是用户方面,在仓库管理中全部会包含到容量、仓库关键存放商品信息描述等;添加、修改和删除仓库信息等操作;许可查找、浏览管辖权限下全部仓库所存放商品信息;添加、修改和删除商品信息;查看商品仓库进出统计;查询、添加仓库功效,这些功效能够帮助仓管人员愈加好地管理仓库,使得各个步骤工作进行愈加顺利,提升企业管理效率。 1.1.3系统开发目标和意义 伴随经济和信息技术不停发展和成熟,信息关键性日渐显现。市场信息化日益扩大,使自动化管理水平,以最快速度和最正确数据取得信息并立即作出反馈,基于此情况,很多企业针对企业仓储部门实施基于关系数据库信息管理制度,并以此为最高管理层提供决议服务。为了愈加好、更方便地适应该前企业信息管理制度,我们小组尝试设计了本仓库管理系统。该系统能够正确地监控企业内销售情况,管理人员分工明确,这不仅降低管理人员工作量,同时也大大提升了超市管理效率,实现商品管理、进货管理、销售管理、库存管理等功效,并可进行多种相关信息查询、添加、删除和更新,大大提升了运作效率。 二、 系统分析 2.1 可行性分析 在软件开发前,就进入到进行可行性研究阶段。并不是全部问题全部含有简单处理措施,很多问题不能在预定规模之内处理。所以经过可行性研究分析能够得悉问题所在。 有没有可行性处理方法,进而避免人力、物力和才力浪费。在现行系统初步调查基础上就能够提出新系统目标,这是系统开发和评价依据。系统目标应充足表现,直接为仓库管理系统服务,而且程序能够分批实现。不过,需要指出是,系统目标是不可能在总体计划阶段就提得很具体,它还将在开发过程中逐步明确和定量化。以达成愈加完善程序系统。不过,系统实现目标不尽相同,比如: •提升仓库管理效率,减轻劳动强度; •提升信息处理速度和正确性; •为仓库管理者提供更方便、科学服务项目。 系统目标确定后,就能够从以下四方面对能否实现新系统目标进行可行性分析: (1)技术可行性 依据当初设想系统功效及实现系统各项约束条件,依据新系统目标来衡量所需技术是否含有,本系统是一个数据库管理和查询系统,现有技术已经较为成熟,硬件、软件性能要求、环境条件等各项条件良好,估量利用现有技术条件应完全能够达成该系统功效目标。但因为能力和知识缺点可能使得系统存在不完善之处。 (2)运行可行性 新系统研制和开发是充足考虑工作人员对仓库易于管理,管理者方便查询设备信息效率,从而能完全满足使用者要求。 2.2 采取技术 (1)操作系统:Windows 7 (2)软件环境:VS+SQLR2 (3)硬件环境:PC机一台、CPU:Intel CORE i5 、一定内存 2.3 系统需求分析 在经过可行性研究分析以后,我们确定了开发系统为仓储管理。结合前面叙述项目开发目标、意义、可行性分析,我们确定本系统需满足功效需求以下: (1)用户注册登陆。 (2)在仓库总管界面,可实现以下功效: 1)可注册用户信息,并管理用户信息,可对其账户信息进行添加、修改、删除等操作。 2)进行产品管理,包含对产品类型、产品信息等信息查看、添加、修改、删除等操作。 3)进行产品库存管理,包含查看入库登记信息,浏览出库登记信息、添加存放规则,修改存放规则等。 4)个人密码修改,返回登录界面。 (3)分仓库管理员界面,实现以下功效: 1)添加进出库统计。 2)查看进库统计。 3)查看出库统计。 4)查看本仓库货物具体信息。 5)个人密码修改,返回登录界面。 (4)采购员界面,实现以下功效: 1)查看仓库需求 2)个人密码修改,返回登录界面。 三、 系统设计 3.1 系统总体设计 系统总体设计中最关键就是系统模块化。模块化是指处理一个复杂问题时自项向下逐层把软件系统划分成若干个模块过程。每个模块完成一个特定功效,全部模块按某种方法组织起来,成为一个整体,完成整个系统所要求功效。  将系统划分为多个功效模块是为了降低软件系统复杂性,提升可读性、可维护性,但模块划分不能是任意,应尽可能保持其独立性。也就是说,每个模块只完成系统要求独立子功效,而且和其它模块联络最少且接口简单,即尽可能做到高内聚低耦合,提升模块独立性,为设计高质量软件结构奠定基础。      在系统总体设计中我们采取结构化设计,结构化设计以需求分析阶段产生数据流图为基础,按一定步骤映射成系统结构。我们首先将整个系统化分为多个小问题,小模块,在系统中,我们设计了用户管理、产品管理,产品库存管理、仓库管理4个小模块。然后,深入细分模块,添加细节。比如,用户管理我们又将其分为仓库总管管理,分仓库管理员管理,采购员管理,每个用户管理又可分为用户添加、用户删除、信息修改等;产品库存管理分为产品在库信息,产品入库,入库查询等等。 以下为图1至图4为系统结构图: 用户登录 分仓库管理员登录 仓库总管登录 采购员登录 系统结构图1 仓库总管登录 用户管理 个人密码修改 产品库存管理 产品管理 系统结构图2 分仓库管理员登录 查看货物具体信息 查看进库统计 个人密码修改 添加进出库统计 查看出库统计 系统结构图3 采购员登录 查看仓库需求 个人密码修改 系统结构图4   在得到系统第一层功效模块图后,经过深入地细化,得到系统部分子功效模块图以下: 用户登录 分仓库管理员登录 仓库总管登录 采购员登录 个人密码修改 产品管理 用户管理 查看仓库需求 个人密码修改 查看货物具体信息 添加进出库统计 个人密码修改 查看出库统计 查看进库统计 信息 库存管理 功效模块图1 产品管理 产品信息 产品类型 修改 删除 添加 修改 删除 添加 功效模块图2 产品库存管理 产品管理 入库查询 产品入库 查询具体信息 删除入库信息 修改入库信息 查询入库信息 产品入库 查询 添加 入库 分配 功效模块图3 3.2 数据库设计 3.2.1数据库概念结构设计  依据上面设计计划出实体用户实体、产品实体、仓库信息实体、入库实体、进出库信息统计实体等,各实体E-R图及其关系描述以下: 用户 用户编号 用户邮箱 用户密码 用户电话 用户地址 用户权限 用户性别 用户姓名 用户实体E-R图 产品 产品提供商 产品编号 产品名称 产品价格 产品类型实体E-R图 仓库 仓库编号 仓库描述 仓库地址 仓库名称 仓库面积 仓库类型实体E-R图 入库 产品目前数量 存放编号 存放仓库编号 存放产品上限 存放产品下限 存放产品编号 入库实体E-R图  进出库信息统计 进出库时间统计 统计编号 提供者统计 产品统计 进出库统计 仓库统计 类型编号 进出库信息统计实体E-R图 3.2.2数据库逻辑结构设计  在上面实体和实体之间关系基础上,形成数据库中表格和各个表格之间关系。仓库管理系统数据库中各个表设计结果以下图所表示: 用户信息表 产品信息表 仓库信息表 商品入库信息存放表 进出库信息统计表 3.2.3 系统相关数据表   以下各图为系统数据库中相关数据表: 总数据库表 用户信息表 商品信息表 仓库信息表 商品入库信息存放表 进出库信息统计表 四、 系统具体设计 4.4.1 模块功效 该模块功效前面已经做了简明说明,在该模块下又分为3个子模块,分别实现不一样功效: (1) 商品在库信息 本模块能够实现依据商品名称、商品编号、商品供给商进行产品信息查询,查询结果将以列表形式显示在目前页面内,表中属性值有:商品编号,商品名称,商品类型,在库总数,已分配总数,已售出总数,操作。其中操作部分可链接到商品入库、商品分配操作界面以实施对应操作。 同时能够链接到商品添加页面,实现新商品添加。 (2) 商品入库 本模块关键进行商品入库操作。具体过程为模块调用goods表中商品信息,用户对商品供给商、类型、和产品型号进行选择,输入需要入库产品数量,操作人等。自动生成入库编号,入库时间默认目前日期。 (3) 入库查询 本模块实现依据不一样属性实现对入库商品查询,可选属性有商品类型,商品编号,入库编号,入库时间。查询结果以列表形式显示在目前页面,表中属性值有:商品编号,商品名称,商品类型,在库总数,已分配总数,已售出总数,操作。其中操作部分可实施具体信息查询,修改信息,删除信息。 4.4.2母版页设计: 以下图示为模板页: 母版1 母版2 母版3 4.4.3 部分功效展示及实现代码 (1)商品在库信息: (2)商品入库功效实现: (3)实现入库功效相关代码: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bindData(); } } private void bindData() { if (Session["Udep"] != null) { //string mysql = "select * from Goods,Store where SGID=GID and SWID=" + Session["Udep"].ToString() + "'"; string st = "select * from Goods,Store where SGID=GID and SWID='" + Session["Udep"].ToString() + "'"; SqlConnection con = WMS.createCon(); con.Open(); SqlCommand da = new SqlCommand(st, con); SqlDataReader cn = da.ExecuteReader(); while(cn.Read()) { DropDownList1.Items.Add(new ListItem (cn["GID"].ToString())); } con.Close(); BindTextBox(); } } private void BindTextBox() { string st1 = "select SQuantity,STopLine from Store where SGID='" + DropDownList1.Text+ "'"; SqlConnection con = WMS.createCon(); con.Open(); SqlCommand da = new SqlCommand(st1, con); SqlDataReader dr = da.ExecuteReader(); if (dr.Read()) { TextBox2.Text = dr["SQuantity"].ToString(); TextBox3.Text = dr["STopLine"].ToString(); TextBox4.Text = dr["SQuantity"].ToString(); TextBox5.Text = Convert.ToString(int.Parse(TextBox3.Text) - int.Parse(TextBox2.Text)); } else { Response.Write("<script language=javascript>alert('对不起,没有该产品信息')</script>"); } if (RadioButton1.Checked == true) { RangeValidator1.MaximumValue = TextBox5.Text; RangeValidator1.MinimumValue = "0"; } if (RadioButton2.Checked == true) { RangeValidator1.MaximumValue = TextBox4.Text; RangeValidator1.MinimumValue ="0"; } } protected void Button1_Click1(object sender, EventArgs e) { string newSQuantity; string str1 = "insert into Records(RID,RGID,RWID,RQuantity,Rtype,RHandler) values ('" + DropDownList1.Text + "','" + Session["Udep"].ToString()+ "','" + TextBox6.Text + "',' 1 ','" + TextBox7.Text + "')"; string str2 = "insert into Records(RID,RGID,RWID,RQuantity,Rtype,RHandler) values ('" + DropDownList1.Text + "','" + Session["Udep"].ToString()+ "','" + TextBox6.Text + "',' 2 ','" + TextBox7.Text + "')"; SqlConnection con = WMS.createCon(); con.Open(); if (RadioButton1.Checked == true) { SqlCommand comm = new SqlCommand(str1,con); comm.ExecuteNonQuery(); con.Close(); } if (RadioButton2.Checked == true) { SqlCommand comm = new SqlCommand(str2, con); comm.ExecuteNonQuery(); con.Close(); } SqlConnection cn = WMS.createCon(); cn.Open(); if (RadioButton1.Checked == true) { newSQuantity = Convert.ToString(int.Parse(TextBox2.Text) + int.Parse(TextBox6.Text)); string str3 = "update Store set SQuantity='" + newSQuantity + " 'where SGID='" + DropDownList1.Text + "'"; SqlCommand com = new SqlCommand(str3, cn); com.ExecuteNonQuery(); cn.Close(); Response.Write("<script language='javascript'>alert('入库信息添加成功!');</script>"); } if (RadioButton2.Checked == true) { newSQuantity = Convert.ToString(int.Parse(TextBox2.Text) - int.Parse(TextBox6.Text)); string str3 = "update Store set SQuantity='" + newSQuantity + " 'where SGID='" + DropDownList1.Text + "'"; SqlCommand com = new SqlCommand(str3, cn); com.ExecuteNonQuery(); cn.Close(); Response.Write("<script language='javascript'>alert('出库信息添加成功!');</script>"); } BindTextBox(); } protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { BindTextBox(); } protected void TextBox6_TextChanged(object sender, EventArgs e) { } } 4.4.4入库查询功效实现: 入库查询功效相关实现代码: protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { bindData(); } } protected void Button1_Click(object sender, EventArgs e) { string s1 = "select RGID,GName,RWID,RQuantity,RHandler,RTime from Records,Goods where Records.RGID=Goods.GID and Rtype=1 and RGID ='" + DropDownList4.Text + "'"; string s2 = "select RGID,GName,RWID,RQuantity,RHandler,RTime from Records,Goods where Records.RGID=Goods.GID and Rtype=1 and RHandler ='" + DropDownList5.Text + "'"; if (DropDownList1.Text == "按货物编号查询") { SqlConnection con = WMS.createCon(); con.Open(); SqlDataAdapter da = new SqlDataAdapter(s1, con); DataSet ds = new DataSet(); da.Fill(ds); con.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } else if (DropDownList1.Text == "按经手人查询") { SqlConnection con = WMS.createCon(); con.Open(); SqlDataAdapter da = new SqlDataAdapter(s2, con); DataSet ds = new DataSet(); da.Fill(ds); con.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } } private void bindData() { string st = "select RGID,GName,RWID,RQuantity,RHandler,RTime from Records,Goods where Records.RGID=Goods.GID and Rtype=1"; SqlConnection con = WMS.createCon(); con.Open(); SqlDataAdapter da = new SqlDataAdapter(st, con); DataSet ds = new DataSet(); da.Fill(ds); con.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { if (DropDownList1.Text == "按货物编号查询") { Label1.Text = "请输入货物编号"; Label2.Visible = false; Label3.Visible = false; DropDownList2.Visible = false; DropDownList3.Visible = false; Button2.Visible = false; DropDownList5.Visible = false; ; Label1.Visible = true; DropDownList4.Visible = true; Button1.Visible = true; } else if (DropDownList1.Text == "按经手人查询") { Label1.Text = "请输入经手人姓名"; Label2.Visible = false; Label3.Visible = false; DropDownList2.Visible = false; DropDownList3.Visible = false; Button2.Visible = false; DropDownList4.Visible = false; ; Label1.Visible = true; DropDownList5.Visible = true; Button1.Visible = true; } else if (DropDownList1.Text == "按日期查询") { Label1.Visible = false; DropDownList5.Visible = false; DropDownList4.Visible = false; Button1.Visible = false; Label2.Visible = true; Label3.Visible = true; DropDownList2.Visible = true; DropDownList3.Visible = true; Button2.Visible = true; } } protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowIndex != -1) { int id = e.Row.RowIndex + 1; e.Row.Cells[0].Text = id.ToString(); } } protected void Button2_Click(object sender, EventArgs e) { if (Convert.ToDateTime(DropDownList2.Text) <= Convert.ToDateTime(DropDownList3.Text)) { string s3 = "select RGID,GName,RWID,RQuantity,RHandler,RTime from Records,Goods where Records.RGID=Goods.GID and Rtype=1 and RTime between'" + DropDownList2.Text + "'and '" + DropDownList3.Text + "'"; SqlConnection con = WMS.createCon(); con.Open(); SqlDataAdapter da = new SqlDataAdapter(s3, con); DataSet ds = new DataSet(); da.Fill(ds); con.Close(); GridView1.DataSource = ds.Tables[0].DefaultView; GridView1.DataBind(); } else { Response.Write("<script language=javascript>alert('时间设置有误,请重新设置!')</script>"); } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; bindData(); } } 4.4.4 采取新技术 天气预报添加: 功效实现以下图所表示: 五、 系统实现 5.1 前台用户端实现 本系统没有用户身份,所以没有前台用户端实现。 5.2 后台管理员实现 5.2.1 我们系统共分为三种身份管理员,分别为仓库总管、分仓库管理员、采购员。各个管理员权限不一样,具体以下图所表示: 5.2.2 登录页面设计比较简单,这里不再过多介绍,页面运行效果以下图所表示: 仓库总管登录页面 分仓库管理员登录页面 采购员登录界面 5.3 服务器配置 VS+SQLR2编程环境,Window7操作系统,一定内存,PC机一台等。 六、 测试和分析 因为已经知道了本仓库管理系统关键功效,我们只需要测试一下每个功效是否实现就能够了,所以关键采取是黑盒测试。 6.1.登录界面测试 1. 关键实现功效 1.1用
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服