汽车零部件销售系统毕业论文_第1页
汽车零部件销售系统毕业论文_第2页
汽车零部件销售系统毕业论文_第3页
汽车零部件销售系统毕业论文_第4页
汽车零部件销售系统毕业论文_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、目录一、引言1二、需求分析2(一)开发背景2(二)功能需求分析2(三)开发环境需求3(四)可行性分析3三、系统设计4(一)系统功能图4(二)系统活动图4(三)系统用例图5四、数据库设计6(一)E-R模型图6(二)数据库模型图6(三)数据库表设计8(四)数据字典8五、系统详细设计与实现12(一)系统登录12(二)部门管理模块13(三)业务管理16六、系统测试21(一)所遇问题21(二)解决的方法21七、小结22参考文献22汽车零部件销售管理系统设计与实现摘要:本文主要介绍系统的组成及设计情况,包括软件的开发背景、开发平台、开发的相关技术介绍、软件的需求分析、系统的设计目标、系统的详细设计等,并介

2、绍了各功能模块的思路和实现方法,以及对个人模块关键部分源代码的详细说明。汽车种类的不断丰富导致零部件种类的增多,这给汽车零部件销售行业带来了很多问题,如配件分类管理混乱,靠人工记忆容易出现错误,而且对库存情况难以统计,本系统可以记录汽车零部件的进货入库和销售出库,可以对库存情况进行简单查询、汇总操作。这将大大节省了人力,减少失误。同时本系统具有友好的界面、实用的功能、简单的操作,设计充分发挥了WINDOWS的图形技术,系统界面简洁美观,软件的开发与市场需求相符合。关键词: 管理系统;汽车零部件;ASP.NET 一、引言科学技术日新月异,信息化时代的来临,以计算机为基础的信息科学在经济和社会生活

3、各个领域得到了极为广泛的应用,尤其在信息管理方面,计算机已是必不可少的管理工具。谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中占有一席之地,谁就会有更多的优势。从微观上讲,建立一套管理信息系统能够提高生产效率,从而加强了管理的信息化手段,提高了本单位的经济效益。从宏观上讲,顺应了社会的信息化、社会化潮流,加快了社会的发展速度。据统计,美国在信息管理管理方面80-100%的信息处理由计算机完成;计划管理是8090%;在计算机应用发展较快的国家中,计算机应用于经济管理的占80%;用于科技计算的占8%,用于生产过程控制的占12%;由此可以看出,信息管理是计算机应用的主要领域。目前

4、我国具一定规模的汽车零部件生产厂商有3000多家,汽车维修企业有25万家,汽配经营企业17万家,从业人数达到100万人左右,已形成一批具有相当规模和一定市场占有率的重点零部件企业。现我国汽车零部件产品的供应能力不断提高,零部件的生产和销售呈国际化、高技术化的发展趋势。汽车零部件行业竞争十分激烈,特别是在经济全球化日益加剧的情况下,国际上众多汽车零部件巨头纷纷进入我国市场,国内汽车零部件企业面临着巨大压力。国内汽车零部件企业要把行业内国际一流的标准和企业,作为自己对标追赶的目标,向更高层次发展。 对于汽车零部件销售来说,其工作流程的繁杂性、多样化、管理复杂、收缴费用与设备维护繁琐。计算机已完全能

5、够胜任销售工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。这将给项目查询和管理带来很大的方便,从而给销售管理工作带来更高的效率,这也是销售管理正规化、现代化的重要标志。因此,开发一套高效率、无差错的汽车零部件销售管理系统软件十分必要。本系统的主要目的是告别帐本,安全、快捷的保存数据信息。汽车零部件销售管理系统涉及到前台网页浏览商品,并可下订单,付款一体化流程,管理员可以在后台系统查询订单并及时发货,还有查询、录入、修改、删除等功能,使客户能够对自己的订单进行实时动态跟踪等情况提供透明化、直观的了解。二、需求分析(一)开发背景随着车辆种类迅速增多,汽车修理及零

6、部件销售行业不断发展,零部件种类已经远不止几十种几百种,与此同时就产生了车辆零部件销售不好管理问题。传统手工的销售信息管理,管理过程繁琐而复杂,执行效率低,并且易于出错。这些问题主要涉及到零部件出入库信息记录、查询、汇总管理、用户管理等。该系统对于一个有零部件仓储销售管理需求的单位来说,不但可以对零部件仓储进行合理的记录管理,而且对零部件的相关情况进行查询、汇总,这对于出入库管理责任到人、账目清晰、避免混乱等一系列相应问题的解决很有帮助。从而帮助企事业单位提高工作效率,并节约开支。通过这样的系统,我们可以做到信息的规范管理和快速查询,实现了仓储销售信息管理的系统化、规范化和自动化。(二)功能需

7、求分析汽车零件销售管理系统是根据汽车零部件销售的过程来分析该系统,系统分为前台和后台,前台主要是汽车零部件产品的展示和网上销售、会员管理等内容,系统的后台主要是产品的采购、销售、订单的处理、仓库管理、库存管理、公司员工、供应商信息的管理。系统的后台主要分为登陆模块、系统用户管理模块、业务管理模块、产品库存模块、部门管理模块、产品信息模块、仓库管理模块、客户管理模块、新闻管理模块、报表管理模块、用户留言信息管理模块。其中登陆模块是用户的登陆。系统用户管理模块主要是用户的信息、密码的查看、添加和修改。业务管理模块主要是对公司主要业务的管理,比如订单信息的维护、订单的处理、产品的销售、产品的采购等等

8、。产品信息管理、部门管理、客户管理、供应商管理等模块主要是对公司的产品、部门、客户、供应商等的基本信息的查询、更新和维护。仓库管理主要是对产品出库的动态查看。产品库存模块的主要功能是与销售模块有很大关系的,如果库存小于安全库存时,就需要公司去采购商品。(三)开发环境需求磁盘空间:250MB。内存:1GB以上。显示:1024*768, 256色操作系统:Windows XP/ Windows 2003。数据库:SQL Server 2005。开发工具:Microsoft Visual Studio 2008辅助开发工具:Photoshop CS2、Flash8、Macromedia Dreamw

9、eaver 8.0。(四)可行性分析1技术的可行性汽车零部件销售管理系统采用了当前的主流计算结构B/S模式进行开发,前台开发工具选用Microsoft Visual Studio 2008,它是一种可视化的、面向对象的Windows开发语言,Microsoft Visual Studio 2008具有易用、通用和开发效率高的特点。后台的数据库开发工具选用了Microsoft SQL Server 2005,它能够处理大量数据,同时保持数据完整性并提供许多高级管理和数据分配功能。这两种开发工具功能强大,有较好的接口,作为本系统开发工具是可行的。2 经济可行性随着计算机技术的飞速发展,计算机在企业

10、管理中应用的普及,利用计算机实现企业人事管理势在必行。21世纪是一个充满竞争和挑战的世纪。在这个世纪中,高效化、系统化、规范化、自动化已成为现代企业的代名词。做为我国支柱产业之一的汽车产业在当今智能化销售的发展的驱动下,在当今信息时代的推动下,拥有自己的一套特色的汽车零部件销售管理系统是非常必要的,与汽车繁多的零部件相比较,传统的手工式的管理方式已经无法适合当今的庞大的数据处理和精确的运算需求,所以一套精美完善的汽车零部件销售管理系统是提高工作效率节省人力物力的有效解决方案。传统的管理方式,对管理人员要求数量多,耗资高,错误率高,工作人员流动和对新人的培训经费也是不小的开支。一套完善的汽车零部

11、件销售管理系统可持续使用并能随着时代和工作的需求不断更新,一期投入终身受用,按长期的使用计算,开发系统的造价平均到每年与传统式的管理方式的年耗资本相对比,性价比是可行的,更可以为企业带来最大的利益。开发这套系统的经济可行性是很高的。三、系统设计(一)系统功能图根据上述系统功能的需求分析,按照结构化程序设计的需求,得到如下的系统模块图。汽车零部件销售管理系统后台模块图,如图3-1所示。图3-1 系统后台模块图(二)系统活动图系统后台活动图,如图3-2所示。图3-2 系统后台活动图(三)系统用例图1.系统后台用例图,如图3-3所示。图3-3 系统后台用例图四、数据库设计在系统设计的开始,我们根据系

12、统具体的需求进行分析,利用“实体联系模型(ER模型)”来描述数据库的结构与语义,ER模型直接从现实世界抽象出了实体类型以及实体与实体之间的联系,然后用ER模型来表示数据模型。数据库的设计经过我们的分析,将系统中涉及的功能表现出来,其中表的建立尤为重要。数据库表的建立不仅是字段的建立,表与表之间的关系也不可或缺。主键、外键的关系需要谨慎建立。创建外键关系即是将各表与表之间联系起来。表与表之间一旦脱离了外键之间的关系而独立,那么系统之间的功能也将难以完成。(一)E-R模型图图4-1 汽车零部件销售管理系统E-R图(二)数据库模型图图中显示了数据库中的表,各张表在数据库中所存在的联系,即他们之间的主

13、外键的关系,如图4-2所示。图4-2汽车零部件销售管理系统模型图(三)数据库表设计经过分析,系统中建立了数据库CarAccessories,并创建了如下表,如图4-3所示。图4-3 CarAccessories数据库表(四)数据字典表名:Employees(员工表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDint40是是否ID2EmployeeNonvarchar200否员工编号3DepartmentIDnvarchar150是部门编号4Namenvarchar200是员工姓名5BirthDatenvarchar500是生日6HireDatenvarchar500是雇用日期7Ad

14、dressnvarchar2000是住址8Citynvarchar500是城市(续表)序号列名数据类型长度小数位标识主键允许空默认值说明9Provincenvarchar500是省份10PostCodenvarchar500是邮政编码11Countrynvarchar500是国家12Telephonenvarchar500是手机号码13Appraisenvarchar160是部门评价表名:InputProductsInfo(产品入库表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDint40是是否ID2InputProductIDnvarchar200否入库单号3MainPerson

15、nvarchar500是负责人4Datedatetime83是日期5Remarksntext160是备注6IsSurebit10是表名:OrderDetails(订单信息详表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDint40是是否ID2OrderIDnvarchar500否订单号3ProductIDnvarchar200是产品号4Quantityint40是库数量5UnitPricefloat80是单价表名:Orders(订单表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDint40是是否ID2OrderIDnvarchar500是订单号3UserIDnvarch

16、ar500是客户编号4ShipperIDnvarchar200是供应商ID5EmployeeIDnvarchar200是员工编号6OrderDatedatetime83是订单日期7RequireDatedatetime83是需要日期8ShipAddressnvarchar2000是送货地址9ShipCitynvarchar1000是城市10ShipProvincenvarchar1000是身份11PostCodenvarchar1000是邮政编码12ShipCountrynvarchar1000是国家13Phonenvarchar1000是电话14CheckOutTypenvarchar100

17、0是付款方式15Statusint40是订单状态16SaleDatedatetime83是销售日期17Remarksnvarchar160是备注表名:OutputProductsDetails(产品出库详表)序号列名数据类型长度小数位标识主键允许空默认值说明1ProductIDnvarchar200否产品编号2OutputProductIDnvarchar200否出库单号3Qunatityint40是库存数量(续表)序号列名数据类型长度小数位标识主键允许空默认值说明4AmountReceivablenvarchar500是出库数量5Collectednvarchar500是收集6Differe

18、nceMoneynvarchar500是差价7CompanyNamenvarchar500是公司名称8Remarkntext160是备注表名:OutputProductsInfo(产品出库表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDint40是是否ID2OutputProductIDnvarchar200否出库单号3MainPersonnvarchar300是负责人4Datenvarchar500是日期5OrderIDnvarchar500是订单号6Remarksntext160是备注表名:Warehouse(仓库表)序号列名数据类型长度小数位标识主键允许空默认值说明1IDin

19、t40是否ID2WarehouseNonvarchar500是仓库号3WarehouseNamenvarchar500是仓库名称4Remarksnvarchar500是备注五、系统详细设计与实现 汽车零部件销售管理系统中我所负责的模块为系统登录,系统用户管理,业务管理中的采购管理和销售管理、部门管理、仓库管理。 (一)系统登录本系统只有管理员的身份进入也就是管理者,管理员登录时,可以看见系统的所有模块和功能、拥有完全的操作权限。 图5-1 后台登录界面管理员登录成功,跳转到后台主界面如图:5-2所示。 图5-2 后台主界面(二)部门管理模块1.产品库存状况明细的查询首先管理人员需要进行采购或者

20、销售时,最关心的就是公司产品的库存状况,只有了解这些信息后才能更好的保证相关业务的进行,所以当管理人员进入系统后可以在采购或者销售模块点击库存状况表(如图5-3所示)查看到实时的库存信息。图5-3 库存状况明细表主要实现代码如下:BU层查询方法代码: public DataTable BindInventoryInfo(string paranWarehouse,string paramProductNo) DataTable myDataTable = new DataTable(); SqlConnection mySqlConnection = new SqlConnection();

21、mySqlConnection.ConnectionString = strcon; string sqlQuery = select products.warehouseno,warehousename,productid,categoryname,size,QunatityInStore,unit, unitprice,OriginalPrice ,(QunatityInStore*OriginalPrice) as Inventoryamount from products,categories,warehouse where warehouse.warehouseno=products

22、.warehouseno and categories.categoryid=products.categoryid;if(paranWarehouse.Length0) sqlQuery += and products.warehouseno=+paranWarehouse+ ; if(paramProductNo.Length0) sqlQuery += and productid=+paramProductNo+ ; try mySqlConnection.Open(); SqlCommand mySqlCommand = new SqlCommand(sqlQuery, mySqlCo

23、nnection); SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(); mySqlDataAdapter.SelectCommand = mySqlCommand; mySqlDataAdapter.Fill(myDataTable); catch finally mySqlConnection.Close(); return myDataTable; UI层中通过调用BU层中的查询方法BindInventoryInfo( ),从而将得到的数据绑定到GridView中显示出来:private void BindInventoryIn

24、fo() string paramWarehouse = this.ddlWarehouse.Text; string paramProductNo = this.txtProductNo.Text; DataTable myDataTable = new DataTable(); InventoryManagemer myInventoryManagemer = new InventoryManagemer(); myDataTable = myInventoryManagemer.BindInventoryInfo(paramWarehouse, paramProductNo); this

25、.gvInventory.DataSource = myDataTable; this.gvInventory.DataBind(); 2.新增部门信息,其中包括部门编号、部门名称等,如图5-4所示。图5-4 部门信息在部门信息页面中点击添加按钮,页面跳转到添加部门的页面,添好信息后点击保存即可保存到数据库中,保存成功后返回到部门信息的查询页面即可看到新增部门的信息。主要实现代码如下:UI层:点击保存按钮后触发按钮的Click事件,事件中首先调用CheckInput()方法查看文本框信息是否输入完整,其次通过GetPageValue()方法获取添加的部门信息,再调用ChechExist()方法

26、检查输入的部门信息是否已存在,最后调用BU层的插入方法AddDptInfo()插入到数据库。protected void btnConfirm_Click(object sender, EventArgs e) if (!this.CheckInput() return; EmployeesManager myEmployees = new EmployeesManager(); if (this.ID.Length 0) myEmployees.Get(null, this.ID); myEmployees = this.GetPageValue(myEmployees); try if (

27、myEmployees.ChechExist(myEmployees.EmployeeNo.ToString() 0) myEmployees.Save(null); this.Clear(); this.Alert(保存成功, Saved); else myEmployees.AddDptInfo(myEmployees); this.Clear(); this.Alert(信息添加成功, Saved); catch (Exception myException) ExceptionManager.Throw(this.OperatorID, 维护, myException); this.A

28、lert(保存失败,此次操作无效!, Error); BU层代码:这是添加部门信息的插入方法AddDptInfo(),方法通过实体类传值。public int AddDptInfo(EmployeesManager myEmployeesManager) int returnValue = 0; BaseDBCon myBaseDBCon = new BaseDBCon(); string sqlQuery = INSERT INTO CarAccessories.dbo.Employees (EmployeeNo,DepartmentID ,Name ,BirthDate ,HireDate

29、,Address ,City ,Province,PostCode,Country,Telephone,Appraise) VALUES ( + myEmployeesManager.EmployeeNo + , + myEmployeesManager.DepartmentID + , + myEmployeesManager.Name + , + myEmployeesManager.BirthDate + , + myEmployeesManager.HireDate + , + myEmployeesManager.Address + , + myEmployeesManager.Ci

30、ty + , + myEmployeesManager.Province + , + myEmployeesManager.PostCode + , + myEmployeesManager.Country + , + myEmployeesManager.Telephone + , + myEmployeesManager.Appraise+ ) ; 。 return returnValue; (三)业务管理说明:业务管理包括系统的订单管理、订单状态、销售管理、采购管理、订单查询等几个模块。1采购管理(如图:5-2所示)当系统提示我们的产品库存不足时,我们需要采购产品,这样就能方便公司及时地

31、维护产品的库存,保证业务正常的运营,进入系统的采购管理模块后当我们点击采购入库单,即可进入采购进货单界面,如图5-5所示。图5-5 采购进货单当我们需要采购产品时,只要点击添加采购产品按钮即可进入添加采购产品的页面,如图5-6所示。图5-6 添加产品信息进入后通过点击gridview中产品信息的行添加产品,确认好采购产品的数量等信息后,最后单击保存跳回到采购进货单页面,我们所添加的采购产品的信息就会显示在进货单中。主要实现代码如下:BU层绑定产品信息方法:public DataTable BindPurchaseInfo() DataTable myDataTable = new DataTa

32、ble(); SqlConnection mySqlConnection = new SqlConnection(); mySqlConnection.ConnectionString = strcon;。 try mySqlConnection.Open(); SqlCommand mySqlCommand = new SqlCommand(sqlQuery, mySqlConnection); SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(); mySqlDataAdapter.SelectCommand = mySqlComma

33、nd; mySqlDataAdapter.Fill(myDataTable); 。 return myDataTable; UI层触发gridview单击事件的代码:首先在gridview的RowDataBound事件中判断当前点击的行是否为数据行,当满足条件时再通过代码来设置gridview的一些属性从而触发gridview的SelectedIndexChange事件取出点击行的值。protected void gvProducts_RowDataBound(object sender, GridViewRowEventArgs e) if(e.Row.RowType=DataControl

34、RowType.DataRow) switch (e.Row.RowType) case DataControlRowType.DataRow: e.Row.Attributesstyle = cursor:hand; #region /点击行触发SelectedIndexChanged事件 PostBackOptions myPostBackOptions = new PostBackOptions(this); myPostBackOptions.AutoPostBack = false; myPostBackOptions.PerformValidation = false; myPos

35、tBackOptions.RequiresJavaScriptProtocol = true; String evt = Page.ClientScript.GetPostBackClientHyperlink(sender as GridView, Select$ + e.Row.RowIndex.ToString(); e.Row.Attributes.Add(onclick, evt); #endregion break; 2.销售管理,如图5-7所示。图5-7 销售管理订单的处理就是对系统未处理的订单进行销售出库,是我们整个系统的业务中由采购到销售的必要环节,其中当我们进入销售管理界面

36、,通过录入销售出库单来进行销售出库,当客户退货时我们还可以进行销售退货,在录入销售出库单时我们只需要将要处理的订单号输入,系统即可自动加载该订单的详细信息(如图5-8所示),销售退货的操作也一样,简单方便。图5-8 销售出库单最后当我们核对好相关的信息后点击保存单据信息,如果信息完整且正确后即完成该订单的处理。主要实现代码如下:BU层添加方法代码: public int AddOutputProductInfo(string ProductID,string paramOutputProductID,string paramQuantity,string paramPayable,string

37、 paramPaid,string paramDifference,string paramCustomer,string paramRemark,string paramMainPerson,string paramDate) int returnValue = 0; SqlConnection mySqlConnection = new SqlConnection(); mySqlConnection.ConnectionString = strcon;。 sqlQuery += UPDATE PRODUCTS SET QunatityInStore=QunatityInStore- +

38、paramQuantity + WHERE PRODUCTID= +ProductID+ 。 return returnValue; UI层调用代码:当我们点击保存按钮后,首先调用CheckInput()方法判断信息是否填写完整,最后通过for循环检索出gridview中的产品信息并取出赋值后,再调用BU层的添加方法AddOutputProductInfo()批量添加到数据库中。 protected void btnSave_Click(object sender, EventArgs e) this.Alert(确认保存单据信息?, 提醒!); if(!CheckInfo() return;

39、 。 if (this.gvMessage.Rows.Count 0) for (int i = 0; i 0) this.Alert(已处理的订单, 系统提示!); return; count += mySalesOutputInfo.AddOutputProductInfo(paramProductID, paramOutputProductID, paramQuantity, paramPayable, paramPaid, paramDifference, paramCustomer, paramRemark, paramMainPerson, paramDate); sum += paramTotalMoney; if (count/2 = this.gvMessage.Rows.Count) 。 this.txtWarehouse.Value = ; this.gvMessage.DataSource = myDataTable; this.DataBind(); 六、系统测试(一)所

温馨提示

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

评论

0/150

提交评论