VC++加油站管理系统的设计与实现_第1页
VC++加油站管理系统的设计与实现_第2页
VC++加油站管理系统的设计与实现_第3页
VC++加油站管理系统的设计与实现_第4页
VC++加油站管理系统的设计与实现_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、课 程 设 计 报 告加油站管理系统的设计与实现学 院: 计算机学院·软件学院 课程名称: 面向对象程序设计 专业班级: 12网络工程 学生姓名: 学号: 学生姓名: 学号: 学生姓名: 学号: 指导教师: 完成时间:2014年6月27日目录1 绪论.11.1 项目背景及意义11.2开发环境和工具.12 需求分析.22.1 业务流程分析22.2 功能分析23 系统设计.33.1 系统功能模块设计33.2 数据库设计43.2.1 系统数据流图.43.2.2 数据库逻辑设计.53.2.3 数据库物理设计.64 系统实现.85 总结.19加油站管理系统的设计与实现1 绪论1.1 项目背景及

2、意义 随着我国经济水平的持续增长,越来越多的人都开始购买汽车。这种情况下,汽油的需求量越来越高,对于加油站管理人员的压力也越来越大,这时候就需要对加油站管理方式进行一定的改革以提高工作的效率。计算机科学技术在近二十年来发展迅速,已经快速地渗透到社会各领域,并占据了重要的地位,很多行业可以说已经离不开计算机科学技术了。就目前看来,各项工作的信息化管理已经是大势所趋。面对石油的全球化需求和竞争,传统的加油站服务管理方式已经落后于时代的要求,利用先进的电子信息技术,实现中国石化产品油零售系统信息化,对加油站的进、销、付、存进行科学化管理,提高服务质量和工作效率是十分必要的。因此设计和实现加油站管理系

3、统,对加油站进行规范化、合理化的管理,已经迫在眉睫。和发达的国家比起来,国内加油站的信息化管理确实存在着很大的不足。首先,硬件环境的不足,其次,配套的软件功能不够,不能满足市场的需求。从目前的实际情况来看,大多数国内加油站自动化程度低,设备陈旧,对于加油站各项工作的执行不能提供有效的帮助。对客户信息不能进行科学管理,根本无法提高加油站的管理水平。针对上述情况,我们开发了加油站管理系统。 本文设计的系统操作方便,界面友好,具有较强的纠错与容错能力,提醒用户检查错误;具有方便的查询、统计等功能,可大大减少工作人员的劳动强度。 1.2开发环境和工具本系统将采用Microsoft Visual C+

4、6.0作为开发环境,并运用MFC(微软基础类库)对系统界面进行设计。数据库将采用Microsoft Access2003处理数据。2 需求分析2.1 业务流程分析业务流程为客户到加油站加油,加油站管理系统将加油信息以及客户信息写入数据库。客户可以对加油的信息进行查询。管理人员综合各项信息后将信息反馈给加油站经理,加油站经理再对信息进行分析后,为加油站的更好发展做出正确的决策。根据这个规定程序,业务流程图如图所示:信息录入数据库加油查询记录查询信息记录管理人员信息汇总 信息反馈给经理做出发展决策 业务流程图2.2 功能分析作为一个加油站,引入管理信息系统的主要目的,就是为了降低运作成本、提高工作

5、效率、简化日常工作流程,因此,分析加油站日常工作流程和设计和开发加油站管理信息系统的前提,根据对系统目标和业务流程的分析,本系统的整体功能图如下(1)客户信息查询功能本模块式记录了客户在本加油站所消费的汽油种类,汽油用量和所花的金额,这里记录信息用的是一车一账的方式,方便核对数据。油品种需求信息功能本模块记录的是分类的不同汽油的需求情况,即某固定时间段内不同汽油种类的消费情况,以此分析进油时各种类汽油的进油量。(2)油价信息功能本模块记录的是不同阶段各种类汽油的标准售价,一个是有利于加油站分析进油利润,另一方面也有利于客户考虑用油的种类。(3)油库库存功能本模块是加油站管理系统中的主要模块之一

6、,其功能包括油品入库和日常库存管理两方面,只要对加油站进油情况进行记录,并对油罐的剩余油量进行监控,当油品存量不足时,给消出警示。(4)财务信息查询功能本模块记录了消费信息和收支信息。信息记录分为日记录和月记录,由当日消费产生日报表和当月费产生月报表(5)系统管理功能本模块是用于创建客户信息的,主要功能是用于对数据进行增、删、查、改。3 系统设计3.1 系统功能模块设计系统模块可分为信息管理模块以及系统管理模块,其中信息管理模块又分为,客户信息管理,油管理(其中包括品种需求,油价管理,油库库存管理),财务信息管理(其中包括消费信息,收支信息);系统管理包含用户管理,可对用户进行添加或删除。下图

7、为系统功能模块图系统功能模块图3.2 数据库设计3.2.1 系统数据流图数据流图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。对加油站信息管理系统及各功能模块进行数据流程分析,可得到各个模块处理数据的过程,如图所示:系统数据流图 3.2.2 数据库逻辑设计 概念模型的描述工具通常是使用E-R模型图。该模型不依赖于具体的硬件环境和DBMS。概念模型设计的常用方法是实体关系方法(E-R方法)。用实体关系方法对具体数据进行抽象加工,将实体集合抽象成实体类型,用实体间的关系反映现实世界事物间的内在关系。首先可以进行局部E-R模型,然后把各局部E-R模型综合成

8、一个全局的E-R模型,最后对全局E-R模型进行优化,最后得到的。在需求分析和逻辑设计之间增加概念设计阶段,可以使设计人员仅从用户的角度看待数据及处理要求和约束。表达概念设计的结果称为概念模型,对概念模型有以下要求:(1)有丰富的语义表达能力,能表达用户的各种需求。(2)易于交流和理解,从而可以用它和不熟悉计算机的用户交换意见。(3)要易于更改。当应用环境和应用要求改变时,概念模型要能很容易的修改和扩充以反映这种变化。(4)易于向各种数据模型转换。按照上述要求,传统的数据模型(网状、层次和关系模型)都不适合作概念模型。在数据库的概念设计中,通常采用E-R数据模型来表示数据库的概念结构。 E-R数

9、据模型将现实世界的信息结构统一用属性、实体以及它们之间的联系来描述。系统E-R图3.2.3 数据库物理设计根据在数据库概念设计中给出的数据库加油站管理系统的关系模型,可以设计数据表结构,服务器上建名为JXMS的数据库。其中包括以下表:CarInfo,OilDemandInfo,OilPriceInfo,OilStockInfo,UserInfo,WorkerInfo,ExpenseInfo,IncomeExpenseInfo,SystemUserInfo下面具体介绍数据库中各表的结构:(1) 表名:CarInfo,车辆信息表字段名称字段类型字段长度字段属性是否为空备注CAR_No数值10汽车编

10、号NOT NULL主键CAR_Number文本10车牌号NOT NULLCAR_OilRemain数值10剩余油量NOT NULLCAR_OilType文本10加油型NOT NULLCAR_Brand文本20品牌NOT NULLCAR_RefualDate日期加油日期NOT NULL(2)表名:OilDemandInfo,油需求信息表字段名称字段类型字段长度字段属性是否为空备注OIL_No数值10油编号NOT NULL 主键OIL_Demang数值10油需求量NOT NULLOIL_Variety文本20油品种NOT NULLOIL_SALES数值10油销量NOT NULLOIL_Price数

11、值10油价NOT NULL(3)表名:OilPriceInfo,油价信息表字段名称字段类型字段长度字段属性是否为空备注OIL_No数值10油编号NOT NULL 主键OIL_Variety文本20油品种NOT NULLOIL_Price数值10油价NOT NULL(4) 表名:OilStockInfo,油库存信息表字段名称字段类型字段长度字段属性是否为空备注OIL_No数值10油编号NOT NULL 主键OIL_Variety文本20油品种NOT NULLOIL_Stock数值10油库存量NOT NULL(5)表名:UserInfo,客户信息表字段名称字段类型字段长度字段属性是否为空备注USE

12、R_No数值10客户编号NOT NULL主键USER_Name文本10客户姓名NOT NULLUSER_Contact数值20联系方式NOT NULLUSER_MailAddress文本50邮件地址NOT NULLUSER_Unit文本50单位名称NOT NULLUSER_Address文本50地址NOT NULL(6)表名:WorkerInfo,加油人员信息表字段名称字段类型字段长度字段属性是否为空备注WORKER_No数值10加油人员编号NOT NULL主键WORKER_Name文本10加油人员姓名NOT NULLWORKER_IDNumber数值20身份证号NOT NULLWORKER_

13、Contact数值20联系方式NOT NULLWORKER_Address文本50地址NOT NULLWORKER_WorkingAge数值10在职时间NOT NULLWORKER_OilArea文本10工作油区NOT NULLWORKER_WorkingSituation文本10出勤情况NOT NULLWORKER_WorkingTime文本20轮班时间NOT NULL(7)表名:ExpenseInfo,客户消费信息字段名称字段类型字段长度字段属性是否为空备注UserName文本10客户名称NOT_NULLUserUnit文本10单位名称NOT_NULLExpenseDate日期消费日期NO

14、T_NULLExpenseOilType文本10消费油型NOT_NULLExpenseOilMAss数值10消费油量NOT_NULLExpenseCount数值10消费总计NOT_NULL(8) 表名:IncomeExpenseInfo,加油站收支情况表字段名称字段类型字段长度字段属性是否为空备注IE_Date日期统计日期NOT_NULLIE_Expense数值10日支出NOT_NULLIE_Income数值10日收入NOT_NULL(9)表名:SystemUserInfo,系统用户信息字段名称字段类型字段长度字段属性是否为空备注SystemUserName文本10系统用户名NOT_NULLS

15、ystemUserPassword文本10系统用户密码NOT_NULLSystemUserNo数值10系统用户编号NOT_NULL主键 4 系统实现 (1)主菜单界面 主菜单有四个功能选项:信息管理、加油管理、系统管理和帮助。 (2) 信息管理信息管理有三个选项:客户信息管理、油信息管理和财政信息管理。 <2.1>客户信息管理选项分别有客户信息管理和车辆信息管理两个选项。 <2.1.1> 客户信息管理客户信息管理功能可以添加、查询和删除客户信息。 <2.1.2> 车辆信息管理 车辆信息管理功能可以添加、查询和删除车辆信息。 <2.2>油信息管理选

16、项分别有油需求管理、油价信息管理和油库存管理三个选项。 <2.2.1> 油需求管理油需求管理有添加和删除油品种功能。 <2.2.2> 油价信息管理 油价信息管理系统有添加和删除油价记录功能。 <2.2.3> 油库存管理 油库存价信息管理系统有添加和删除油库存价记录功能。 <2.3>财务信息管理选项分别有消费信息管理、收支信息管理两个选项。 <2.3.1> 消费信息管理 消费信息管理系统有添加和删除客户消费信息功能。 <2.3.2> 收支信息管理收支消费信息管理系统有添加和删除客户收支信息功能。(3)系统管理 <3.1

17、>系统用户管理 系统用户管理系统有添加和删除系统用户信息功能。(4)加油管理 <4.1>加油/付款 加油管理有加油和付款的功能。还可以计算应付金额。 (5)帮助 <5.1>关于gss5主要代码:(数据库连接方面用的是ODBC,多用MFC建类操作)(1) 添加void CDLG_OilPrice:OnAdd() CRS_OilPrice oil;UpdateData(true);oil.Open();oil.MoveLast();oil.AddNew();oil.m_OIL_Variety = m_OilVariety;oil.m_OIL_Price = m_Oil

18、Price;oil.Update();oil.Requery();m_DG_Ctrl.Refresh();UpdateData(false);AfxMessageBox("添加记录成功!");CDLG_OilPrice:OnCancel();(2) 删除void CDLG_OilPrice:OnDelete() CRecordsetStatus status;m_RSD.GetStatus(status);m_RSD.Delete();m_RSD.Requery();if(status.m_lCurrentRecord=0)m_RSD.MoveNext();AfxMessa

19、geBox("删除成功");m_RSD.MovePrev();m_D_OilPrice = m_RSD.m_OIL_Price;m_D_OilVariety = m_RSD.m_OIL_Variety;UpdateData(false);(3)查询void CDLG_CarInfo:OnInquire() / TODO: Add your control notification handler code hereUpdateData(true);CString str;CString info=""m_CMB_Ctrl.GetLBText(m_CMB_

20、Ctrl.GetCurSel(),str);CRS_CarInfo m_RS;/*车主姓名查询模块代码*if(str = "车主姓名")CRS_CarInfo m_RS;m_RS.Open();m_RS.MoveFirst();while(!m_RS.IsEOF()if(m_RS.m_CAR_User = m_Value )info =info+ "-n"+"【车主姓名:】t"+m_RS.m_CAR_User+"n"+"车辆品牌:t"+m_RS.m_CAR_Brand+"n"

21、+"车牌号:tt"+m_RS.m_CAR_Number+"n"+"剩余油量(升):t"+m_RS.m_CAR_OilRemain+"n"+"加油型:t"+m_RS.m_CAR_OilType+"n"+"加油日期:t"+m_RS.m_CAR_RefualDate+"n""-n"m_RS.MoveNext();if(info!="")MessageBox(info,"查询结果如下:"

22、;,100);elseMessageBox("没有此记录","查不到啊",100);info=""return;/*车主姓名查询模块代码*/*车牌号码查询模块代码*else if(str = "车牌号码")CRS_CarInfo m_RS;m_RS.Open();m_RS.MoveFirst();while(!m_RS.IsEOF()if(m_RS.m_CAR_Number = m_Value )info =info+ "-n"+"【车牌号:】tt"+m_RS.m_CAR_N

23、umber+"n"+"车辆品牌:t"+m_RS.m_CAR_Brand+"n"+"车主姓名:t"+m_RS.m_CAR_User+"n"+"剩余油量(升):t"+m_RS.m_CAR_OilRemain+"n"+"加油型:t"+m_RS.m_CAR_OilType+"n"+"加油日期:t"+m_RS.m_CAR_RefualDate+"n"+"-n"m_RS

24、.MoveNext();if(info!="")MessageBox(info,"查询结果如下:",100);elseMessageBox("没有此记录","查不到啊",100);return;/*车牌号码查询模块代码*/*加油日期查询模块代码*else if(str = "加油日期")CRS_CarInfo m_RS;m_RS.Open();m_RS.MoveFirst();while(!m_RS.IsEOF()if(m_RS.m_CAR_RefualDate = m_Value )info =info+ "-n"+"加油日期|"+m_RS.m_CAR_RefualDate+"

温馨提示

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

评论

0/150

提交评论