《物流管理信息系统之订单管理子系统设计范本.docx》由会员分享,可在线阅读,更多相关《物流管理信息系统之订单管理子系统设计范本.docx(42页珍藏版)》请在三一办公上搜索。
1、课程设计说明书设计题目: 物流管理信息系统之订单管理子系统设计 专 业: 设 计 人: _ _山东科技大学2014年 月 日课程设计任务书学院 机械电子工程学院 专业 班级 2011-2 姓名 一、课程设计题目:物流管理信息系统之订单管理子系统设计二、课程设计内容与要求:(1)设计一套订单管理系统,要求能完成基本的订单录入、修改、删除 (2)系统分为管理员登录与用户登录两大方向_(3)可注册新用户,用户信息,管理员信息可修改_三、课程设计应解决主要问题:(1)主窗体与各个分窗体结构设计_ _(2)程序与数据库的连接_(3)各窗体具体代码编写_ _四、课程设计相关附件(如:图纸、软件等)(1)课
2、程设计说明书一份 (2)存有设计内容的光盘一张_五、任务发出日期: 2013-12-23 _ 课程设计完成日期: 2014-1-4 指导教师签字:_ 系主任签字:_指导教师对课程设计的评语 指导教师签字: _年_月_日山东科技大学学生课程设计目录 1课题简介31.1 课题研究目的和意义31.2 课题主要研究内容32系统分析42.1 业务流程图42.2 用户需求分析42.3 系统功能设计63系统设计63.1 总体设计63.2 详细设计73.3 数据结构设计74系统实施94.1 系统首界面94.2 登录界面 114.3新用户注册界面134.4提示完善个人信息界面154.5用户完善个人信息界面174
3、.6用户登录界面194.7用户查看个人信息界面244.8用户完善个人信息界面264.9管理员登录界面284.10 管理员信息修改界面 334.11 管理员查看用户信息界面 356使用说明377参考资料371.课题简介1.1课题研究目的和意义 在科学技术日新月异的今天,计算机已逐步渗入各个领域,随着互联网的普及,我们进入了信息化的时代,人们只要在家中轻点几下鼠标就能轻松获得各种信息,并且能够购买到自己需要的商品,既摆脱了时间和空间的限制又节约了大量的时间。商品销售订单管理系统正是在这种情况下诞生并逐渐发展起来的,它已成为我们进行商品交易中不可缺少的部分。本系统是在分析了现行商品管理中存在的问题的
4、基础上,结合信息管理系统开发的概念、结构及系统开发的基本原理和方法,开发的一套企业商品订单管理系统。该系统目的在于同时满足销售方与用户进行订单管理,进而满足经营管理运作流程。并且操作方便、功能强大,即便操作者对计算机知识一窍不通也可以熟练使用该系统,一用就会。1.2 课题研究的主要内容企业订单管理系统主要完成的内容包括:系统登录控制。必须使用用户名和密码登录后才能使用系统。产品信息浏览。浏览系统中所有的产品信息,可以使用指定的关键词查询相应的产品,并通过报表的形式将查询结果输出。产品信息管理。管理订单中所使用的产品信息,可以浏览、增加、修改和删除产品信息。订单信息管理。管理订单信息,可以浏览、
5、增加、修改和删除订单信息,在增加订单时需要使用的产品信息和客户信息必须首先通过产品信息管理和客户信息管理功能添加。客户信息浏览。浏览系统中所有的客户信息,可以使用指定的关键字查询相应的客户,并且可以使用报表的形式将查询结果输出。客户信息管理。管理下订单时客户信息,可以浏览、增加、修改和删除客户信息。用户权限管理。本系统中实现了简单的用户权限管理,普通用户仅能修改密码,而管理员用户则可以添加、修改、删除用户。利用系统分析和设计原理,采用面向对象的编程方法,通过用Visual Basic 6.0编写企业订单管理系统,用SQL Server 2000进行数据库建设与管理,实现了企业订单管理的自动化和
6、信息化2.系统分析2.1业务流程图. 2.2用户需求分析设计任何定制化产品都是一个“翻译”的过程。我们需要把浮现在客户脑海中的模糊想法、愿望挖掘出来,并“翻译”成满足他们需求的现实产品。这个“翻译”过程的第一步就是理解用户的需求。设计最好的订单处理系统对于需要一个电路设计工具的客户来说毫无意义。我们首先制定了一个计划,其中包含挖掘客户需求的一系列步骤。遵循这些步骤能更好地理解客户需求,但在一些项目中我们不需要遵循所有的步骤。举例来说,如果客户是单个人且需求很明确时,我们就不需要进行“搞清谁是谁”与“头脑风暴”了。当客户的数据需要保密时,我们就不能“尝试客户的工作”了。在另一些项目中,调整这些步
7、骤的顺序会更为合适。例如我们可能在去拜访客户和观察他们工作之前先进行“头脑风暴”。 我们需要思考,向客户问些什么问题可以帮助我们了解项目的目标和要求。 以下几个方面的问题可以作为起始点。 1)功能与目标。(1).系统应该做些什么(2).为什么你想建这个系统(3).系统看上去应该是怎样的(4).需要些什么报表(5).用户需要自己定义新报表吗(6).系统的操作者会是谁2)数据需求:这些问题是为了弄清项目的数据需求。(1).系统界面上需要展现哪些数据(2).这些数据应该由谁来提供(3).这些数据是如何关联的(4).这些工作现在是如何处理的?数据来自哪里?(5).数据完整性:3)数据库完整性约束。(1
8、).哪些数据是必须填写的(一条客户记录必须有电话信息吗)(2).数据的有效域是什么?(电话号码是否有格式规定?地址数据应有多长) (3).系统中是否必须在定义了客户之后才能下订单(4).系统要求多高的可用性等级(系统需要724的可用性吗?数据的备份频率要多高)4)安全性:这些问题能帮助我们了解客户对权限控制与审计方面的需求。(1).是否每个用户都需要一个不同的密码(2).是否需要控制不同的用户所能访问的数据( 销售代表有权限看到客户的信用卡账号,但订单录入专员却不能) (3).存储在数据库中的数据是否需要加密(4).谁做了什么操作是否需要记录以便于审计( 记录销售代表提高客户级别的操作,在需要
9、时可以追溯操作的原因) 2.3系统功能设计 主要功能就是给用户带来信息的沟通,交流的便捷。订单管理系统的主要功能是通过统一订单提供用户整合的一站式员工供应链服务。订单管理系统物流管理链条中的不可或缺的部分,通过对订单的管理和分配,使仓储管理和运输管理有机的结合,稳定有效地实现物流管理中各个环节充分发挥作用,使仓储、运输、订单成为一个有机整体,满足物流系统信息化的需求。订单管理是对商户下达的各种指令进行管理、查询、修改、打印等功能,同时将业务部门处理信息反馈至商户。订单管理系统一般包括:订单处理,订单确认等。3.系统设计3.1总体设计 该系统为了两大部分:用户登录后的界面,管理员登录后的界面。3
10、.2 详细设计class类:实现数据库的连接字符串Register类:实现用户注册Login 类:登录窗口类,用户登录时选择用户角色,进入员工操作界面。管理员登录时则进入相应的界面进行订单信息操作。main类:实现系统功能的类,实现各模块的功能。如订单基本信息录入,订单提交,订单退订。删除订单信息,修改订单信息,查看订单信息。Main类:用户操作界面,在此用户可以查看订单的信息,且可以订单的提交和退订。Adm 类:管理员操作页面,在此管理员可以查看和处理所有客户订单信息,可以查看客户基本信息以及个人信息。UserInfo 类:显示用户信息、用于管理员对客户的信息查询和处理。3.3数据结构设计用
11、户表属性:用户表:商品表属性:商品表:管理员信息表属性:管理员信息表:订单信息表属性:订单信息表:4.程序实施4.1 主体窗口Private Sub MDIForm_Load() Dim X0 As Long Dim Y0 As Long 让窗体居中 X0 = Screen.Width Y0 = Screen.Height X0 = (X0 - Me.Width) / 2 Y0 = (Y0 - Me.Height) / 2 Me.Move X0, Y0End SubPrivate Sub mfdljm_Click() dljm.Show Unload MeEnd SubPrivate Sub
12、mfexit_Click()EndEnd Sub4.2登录界面Private Sub Command1_Click()Static micount As Integer 用于记录输入密码次数Dim sqlstr As Stringsqlstr = select * from 用户信息表 where 用户名= & Text1 & Adodc1.RecordSource = sqlstrAdodc1.RefreshIf Adodc1.Recordset.BOF Then 若没有找到符合where条件的记录 MsgBox 姓名错误,重新输入, vbExclamation, 警告 Text1.Text
13、 = Text1.SetFocus text1获得焦点Else If Adodc1.Recordset.Fields(密码) = Text2 Then yhjm.Show Unload Me Else MsgBox 密码错误,重新输入, vbExclamation, 警告 Text2.Text = Text2.SetFocus End IfEnd Ifmicount = micount + 1If micount = 3 Then Unload MeEnd SubPrivate Sub cmdcancel_click() Unload MeEnd SubPrivate Sub Command2
14、_Click()Static micount As Integer 用于记录输入密码次数Dim sqlstr As Stringsqlstr = select * from 管理员信息表 where 管理员姓名= & Text1 & Adodc2.RecordSource = sqlstrAdodc2.RefreshIf Adodc2.Recordset.BOF Then 若没有找到符合where条件的记录 MsgBox 用户名错误,重新输入, vbExclamation, 警告 Text1.Text = Text1.SetFocus text1获得焦点Else If Adodc2.Recor
15、dset.Fields(密码) = Text2 Then glyjm.Show Unload Me Else MsgBox 密码错误,重新输入, vbExclamation, 警告 Text2.Text = Text2.SetFocus End IfEnd Ifmicount = micount + 1If micount = 3 Then Unload MeEnd SubPrivate Sub Command3_Click() zcxyh.ShowEnd SubPrivate Sub Command4_Click() Dim x As Integerx = MsgBox(确认退出?, vbO
16、KCancel, 提示)If x = vbOK Then Unload Me MDIForm1.ShowElseIf x = vbCancel Thendljm.ShowEnd IfEnd Sub4.3.新用户注册界面Private Sub Command1_Click()Dim sqlstr As StringIf Text1 = Then MsgBox 请输入用户名!, vbExclamation, 确认密码 Text1.SetFocus Exit SubElse sqlstr = select * from 用户信息表 where 用户名= & Text1 & Adodc1.Record
17、Source = sqlstr Adodc1.Refresh 判断用户名是否已存在 If Adodc1.Recordset.EOF = False Then MsgBox 用户已存在,请重新输入, vbExclamation, 检验用户名 Text1 = Text1.SetFocus Exit SubEnd IfEnd If判断两次密码是否一致If Text2 Text3 ThenMsgBox 两次输入密码不一致,请重新输入, vbExclamation, 检验密码 Text2 = : Text3 = Text2.SetFocus Exit SubElseIf Text2 = Then Msg
18、Box 密码不能为空, vbExclamation, 检验密码 Text2.SetFocusElse Adodc1.Recordset.AddNew Adodc1.Recordset.Fields(用户名) = Trim(Text1) Adodc1.Recordset.Fields(密码) = Trim(Text2) Adodc1.Recordset.Update Me.Hide MsgBox 注册已成功,请尽快完善个人信息 tswsyhxx.Show End IfEnd SubPrivate Sub Command2_Click()zcxyh.Hidedljm.ShowEnd Sub4.4.
19、提示完善个人信息界面Private Sub Command1_Click()wsyhxx.ShowUnload MeEnd SubPrivate Sub Command2_Click() Dim x As Integerx = MsgBox(确认退出?, vbOKCancel, 提示)If x = vbOK Then Unload Me dljm.ShowElseIf x = vbCancel ThenUnload Metswsyhxx.ShowEnd IfEnd Sub4.5.用户完善个人信息界面Private Sub Command1_Click()Dim str As Stringstr
20、 = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text5 & x = MsgBox(确定要修改当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes Thenwsyhxx.Adodc1.Recordset.Fields(性别) = Text1wsyhxx.Adodc1.Recordset.Fields(年龄) = Text2wsyhxx.Adodc1.Recordset.Fields(工作) = Text3wsyhxx.Adodc1.Recordset.Fields(联系电话) = Te
21、xt4wsyhxx.Adodc1.Recordset.Fields(密码) = Text5wsyhxx.Adodc1.Recordset.Fields(用户名) = Text7wsyhxx.Adodc1.Recordset.Updatewsyhxx.Adodc1.RefreshEnd IfMsgBox 修改成功End SubPrivate Sub Command2_Click()x = MsgBox(未完善信息,现在退出?, vbOKCancel + vbDefaultButton2, 提示)If x = vbOK Then Unload wsyhxxElseIf x = Cancel The
22、nwsyhxx.ShowEnd IfExit SubEnd SubPrivate Sub Command3_Click()Dim str As Stringstr = select 用户信息表.* From 用户信息表str = str & where 用户信息表.用户名 = & Text6 & Adodc1.RecordSource = strAdodc1.RefreshEnd Sub4.6.用户登录界面Private Sub Command1_Click()Adodc2.Recordset.AddNewAdodc2.Recordset.Fields(用户名) = Text11.TextAd
23、odc2.Recordset.Fields(商品号) = Text1.TextAdodc2.Recordset.Fields(数量) = Text2.TextAdodc2.Recordset.Fields(价格) = Text3.TextAdodc2.Recordset.Fields(ID) = Text10.TextAdodc2.Recordset.Fields(订单号) = Text12.TextAdodc2.Recordset.Fields(联系电话) = Text4.TextAdodc2.RefreshMsgBox (订单已经成功添加)End SubPrivate Sub Comman
24、d2_Click()Dim str As Stringstr = select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text9 & Adodc2.RecordSource = strAdodc2.RefreshEnd SubPrivate Sub Command3_Click()Text11.Text = Text1.Text = Text2.Text = Text3.Text = Text10.Text = Text12.Text = Text4.Text = End SubPrivate Sub Command4_Click()
25、If Adodc2.Recordset.EOF = True Or Adodc2.Recordset.BOF = True Then MsgBox 请选择要修改的行 Exit SubEnd IfDim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text9 & x = MsgBox(确定要修改当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes Then yhjm.Adodc2.Recordset.Fields(用户名) = Text11.Text y
26、hjm.Adodc2.Recordset.Fields(商品号) = Text1.Text yhjm.Adodc2.Recordset.Fields(数量) = Text2.Text yhjm.Adodc2.Recordset.Fields(价格) = Text3.Text yhjm.Adodc2.Recordset.Fields(ID) = Text10.Text yhjm.Adodc2.Recordset.Fields(订单号) = Text12.Text yhjm.Adodc2.Recordset.Fields(联系电话) = Text4.Text yhjm.Adodc2.Records
27、et.Update yhjm.Adodc2.Refresh MsgBox 成功修改数据!End IfEnd SubPrivate Sub Command5_Click()Dim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text9 & x = MsgBox(确实要删除当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes Then Adodc2.Recordset.Delete Adodc2.Recordset.MoveNextElseIf Adodc
28、2.Recordset.EOF Then Adodc2.Recordset.MoveLastElse Adodc2.RefreshMsgBox (订单已经成功删除)End IfEnd SubPrivate Sub Command6_Click() cxyhxx.ShowEnd SubPrivate Sub Command7_Click() Dim x As Integerx = MsgBox(确认退出?, vbOKCancel, 提示)If x = vbOK Then dljm.ShowUnload yhjmElseIf x = vbCancel Thenyhjm.ShowEnd IfEnd
29、Sub4.7.用户查看个人信息界面Private Sub Command1_Click()Dim str As Stringstr = Select 用户信息表.* From 用户信息表str = str & where 用户信息表.用户名 = & Text1 & Adodc1.RecordSource = strAdodc1.RefreshEnd SubPrivate Sub Command2_Click() Dim x As Integerx = MsgBox(确认退出?, vbOKCancel, 提示)If x = vbOK Then yhjm.Show Unload MeElseIf
30、x = vbCancel Thencxyhxx.ShowEnd IfEnd SubPrivate Sub Command3_Click()xgyhxx.ShowEnd Sub4.8.用户完善个人信息界面Private Sub Command1_Click()Dim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text5 & x = MsgBox(确定要修改当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes Thenwsyhxx.Adodc1.Reco
31、rdset.Fields(性别) = Text1wsyhxx.Adodc1.Recordset.Fields(年龄) = Text2wsyhxx.Adodc1.Recordset.Fields(工作) = Text3wsyhxx.Adodc1.Recordset.Fields(联系电话) = Text4wsyhxx.Adodc1.Recordset.Fields(密码) = Text5wsyhxx.Adodc1.Recordset.Updatewsyhxx.Adodc1.RefreshEnd IfMsgBox 修改成功End SubPrivate Sub Command2_Click()x =
32、 MsgBox(修改未成功, 0, 提示)Unload xgyhxxExit SubEnd SubPrivate Sub Command3_Click()Dim str As Stringstr = select 用户信息表.* From 用户信息表str = str & where 用户信息表.用户名 = & Text6 & Adodc1.RecordSource = strAdodc1.RefreshEnd Sub4.9.管理员登录界面Private Sub Command1_Click()Dim str As Stringstr = select 订单信息表.* From 订单信息表st
33、r = str & where 订单信息表.ID = & Text1 & Adodc1.RecordSource = strAdodc1.RefreshEnd SubPrivate Sub Command2_Click()Dim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text1 & x = MsgBox(确实要删除当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes Then Adodc1.Recordset.Delete Adodc1.Reco
34、rdset.MoveNextIf Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLastEnd IfElse Adodc1.RefreshMsgBox (订单已经成功删除)End IfEnd SubPrivate Sub Command3_Click() Dim x As Integerx = MsgBox(确认退出?, vbOKCancel, 提示)If x = vbOK Then dljm.Show Unload glyjmElseIf x = vbCancel Thenglyjm.ShowEnd IfEnd SubPrivate Sub C
35、ommand4_Click() yhxxcx.ShowEnd SubPrivate Sub Command5_Click()If Adodc1.Recordset.EOF = True Or Adodc1.Recordset.BOF = True Then MsgBox 请选择要修改的行 Exit SubEnd IfDim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text5 & x = MsgBox(确定要修改当前记录吗?, vbYesNo + vbQuestion, 确定)If x
36、= vbYes Then glyjm.Adodc1.Recordset.Fields(用户名) = Text2.Text glyjm.Adodc1.Recordset.Fields(商品号) = Text3.Text glyjm.Adodc1.Recordset.Fields(数量) = Text4.Text glyjm.Adodc1.Recordset.Fields(价格) = Text5.Text glyjm.Adodc1.Recordset.Fields(ID) = Text6.Text glyjm.Adodc1.Recordset.Fields(订单号) = Text7.Text gl
37、yjm.Adodc1.Recordset.Fields(联系电话) = Text8.Text glyjm.Adodc1.Recordset.Update glyjm.Adodc1.Refresh MsgBox 成功修改数据!End IfEnd SubPrivate Sub Command6_Click()Adodc1.Recordset.AddNewAdodc1.Recordset.Fields(用户名) = Text2.TextAdodc1.Recordset.Fields(商品号) = Text3.TextAdodc1.Recordset.Fields(数量) = Text4.TextAd
38、odc1.Recordset.Fields(价格) = Text5.TextAdodc1.Recordset.Fields(ID) = Text6.TextAdodc1.Recordset.Fields(订单号) = Text7.TextAdodc1.Recordset.Fields(联系电话) = Text8.TextAdodc1.Recordset.UpdateAdodc1.RefreshMsgBox (订单已经成功添加)End SubPrivate Sub Command7_Click()Text2 = Text3 = Text4 = Text5 = Text6 = Text7 = Te
39、xt8 = End SubPrivate Sub Command8_Click()xgglyxx.ShowEnd Sub4.10.管理员信息修改界面Private Sub Command1_Click()Dim str As Stringstr = Select 订单信息表.* From 订单信息表str = str & where 订单信息表.ID = & Text5 & x = MsgBox(确定要修改当前记录吗?, vbYesNo + vbQuestion, 确定)If x = vbYes ThenAdodc1.Recordset.Fields(性别) = Text1Adodc1.Recordset.Fields(年龄) = Text2Adodc1.Recordset.Fields(工作) = Text3Adodc1.Recordset.Fields(联系电话) = Text4Adodc1.Recordset.Fields(密码) = Text5Adodc1.Recordset.Updat