已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
11.0 前言本设计报告介绍家政管理系统的完整开发过程,其中主要介绍了公司安排专业员工给相应的客户提供服务的使用方法,重点讲解了数据库添加,更新,查找,统计方法。介绍了ADO的相关处理技术,讨论了复杂SQL数据库实现方法,实现了框架,excel各数据报表的打印输出。1.1 开发背景随着计算机应用的不断深入,信息产业的兴起,各行各业几乎都与计算机都有密切的联系,都实现了不同程度的自动化操作。家政服务管理系统的使用,加强对客户资料的管理。通过对客户使用情况的分析,可以掌握用户的喜好,而有针对性的采购家政,减少了不必的家政的购置,加快资金的流转速度。另一方面,家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而提高家政服务管理效率。1.2 系统分析综合家政管理系统系统不同于一般管理信息系统有它自身的特殊性。通过使用家政服务管理系统,使家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高家政服务管理效率的目的。主要管理分析如下:员工信息管理:(信息:员工编号,姓名,性别,年龄,工作类型,工作经验,文化程度,联系方式)添加员工,删除员工,查找员工,更新员工信息客户信息管理:(信息:客户编号,姓名,性别,年龄,需求工作类型,交费添加客户,删除客户,查找客户,更新客户信息公司安排客户员工:按照客户需要的工作类型安排员工收费:公司向用户收费,打印收费表工资发放:由公司给员工发放工资,统计员工的工作类型,打印工资表1.3 系统设计根据需求分析,结合系统的功能特点,本系统采用单机版就可以满足需求,该模式同时具有开发时间短,成本较低,架构容易、操作方便等优点。1.3.1 系统目标本系统前端开发工具采用目前较流行Visual C+,后台数据库系统采用大型数据库系统SQL Server 2000,系统的运行平台为Windows。本系统主要实现了综合家政管理系统方面的相关功能,可以对客户进行信息管理,分配员工给客户等操作,增强了软件的延伸性和使用寿命,极大程度的方便了一个评测者对各院系信息的统筹管理,进而能够更准确的获得公司的入账,与员工工资等结果。本系统也实现了打印报表,导出excel等功能。1.3.2 系统模块结构根据前面分析可知,本系统总体分为员工信息管理、客户信息管理、公司入账、服务安排、员工工资系统等几个模块。前两个模块主要功能是实现了相关记录的添加、修改、删除等,公司入账系统模块的主要功能是通过计算指定时间段,客户数量,缴费情况,系统模块结构如图1-1所示。图1-1 家政管理系统结构图各模块主要功能说明如下:员工信息管理: 添加员工,删除员工,查找员工,更新员工信息客户信息管理: 添加客户,删除客户,查找客户,更新客户信息公司安排客户员工:按照客户需要的工作类型安排员工收费:公司向用户收费,打印收费表工资发放:由公司给员工发放工资,统计员工的工作类型,打印工资表基本业务:安排员工去服务 显示工资表 更新工作类型工资1.3.3 开发环境与运行环境开发此家政管理系统所需要用到的软件环境如下。q 操作系统:Windows2000/NT/XP/Windows7。q 数据库: SQL Server 2000:提供了丰富的功能的完善的数据库应用和管理工具,使用方便,用户可以快速准确的解决的实现SQL Server 2000提供的各种应用与管理工具。SQL Server 2000的操作界面与以前的版本有很好的一致性,操作很方便。q 编译工具:Visual C+6.0:编译速度快,可以开发灵活高效的数据库操作,程序调试方便。1.3.4 家政管理系统预览下面介绍系统各主要功能模块:(1)首先运行程序后自动进行数据库还原,本系统默认路径为系统运行程序位置,提供初始数据库备份文件为zxx.bak,数据库名称为zxx,如果数据文件正确,提示还原成功,就进入主界面。本系统采用基于对话框风格的界面,上边采用toolbar控件为操作区,下边对话框为显示区,界面布局合理紧凑,功能清晰。该主界面如图1-2所示。图1-2 家政管理系统主界面(2)在上面toolbar控件选中第一 “客户管理”,弹出菜单,弹出添加新院系对话框,该模块界面如图1-3所示图1-3弹出菜单 1.4 数据库设计数据库作为系统的基础,要能充分体现系统的需求。数据库是为应用服务的,好的数据库设计应该首先能满足应用系统的业务需求,准确的表达数据间关系。能保证数据的准确性和一致性,通过主外键、非空、限制、唯一索引等保证数据的健壮。当然要提高数据的查询效率,通过合理的表结构,安排物理存储分区、增加索引等方式,最后提高数据的读取速度,提高查询效率。在系统的后续维护、功能扩展当中这些特点更会体现得淋漓尽致。1.4.1 数据库分析由于系统规模比较大,对数据库的性能要求较高,故采用SQL Server 2000作为系统开发的数据库管理系统。SQL Server 2000能提供超大型系统所需的数据库服务,支持事务操作,这对数据的完整性有了很好的保障。作为一个学生家政管理系统,测评的数据对于最终奖学金的发放归属来说是非常重要的,数据库管理系统解决了测评数据的录、改、删等一些列操作过程中的信息数据的处理问题且提供一系列的数据分析。1.4.2 管理系统E-R图家政管理系统包含的实体主要有:学生、班级、课程、成绩及家政管理系统等,下面将分别介绍各实体及实体间的E-R图。通过其E-R图读者可以更好地理解各实体的属性关系。q 客户E-R图,如图1-20所示。图1-20 客户E-R图q 员工E-R图,如图1-21所示。图1-21 员工 E-R图总E-R图 1.4.3 数据库、表的设计本系统数据库共有4张表,包括客户基本信息表customer,员工信息表worker,员工不同工种工资表record以及密码表key等。数据库的名称为zxx,下面提供系统运行时动态创建数据库的方法SQL语句。use masterif exists(select * from sysdatabases where name=zxx)drop database zxx Create Database zxxon primary(name=xxxx_data,filename=E:zxx_data.mdf,size=5 MB,maxsize=100 MB,filegrowth=15%)Log on(name=zxx_log,filename=E:zxx_log.ldf,size=2 MB,filegrowth=1MB);下面将分别对数据库中的各个表进行介绍。(1)客户基本信息表customer:用于保存学生基本信息,其主要字段为sno,具体设计见表1-1。字段名描述字段类型字段宽度是否为空cid编号Char12Not nullt cname姓名Char8Not nullt csex性别Char2Not nullcage年龄Char20Not nullcfee缴费Int7Not nullctype服务项目Char30Not nullcphone手机Char15Not nullcaddress家庭地址Char30Not nullctime时间Char100Not null建立本表的SQL语句如下:use zxxif exists(select * from sysobjects where name=customer)drop table customer create table customer(Cid nvarchar(10) primary key,Cname nvarchar(20) not null,Csex nvarchar(2) check(Csex=男or Csex=女),Cage nvarchar(5) not null,Cfee int(15) not null,Ctype nvarchar(50) not null,Cphone nvarchar(15) not null,Caddress nvarchar(50) not null,Ctime nvarchar(15) not null;)(2)员工不同工种工资表record:用于记录课程信息,详细情况见表1-2。表1-2员工不同工种工资表record字段名描述字段类型字段宽度是否为空rtype员工工作类型Char12Not nullrsalary月工资Int12Not null建立本表的SQL语句如下:use zxxif exists(select * from sysobjects where name=Record)drop table Record create table Record(Rtype nvarchar(50) not null,Rsalary nvarchar(50) not null,)1.4.5 数据表的关系图数据库中部分数据表之间的关系图如图所示:/图1-25 数据表的关系图上一小节已经对表的设计、关系图进行了详细的介绍,现在可以进行数据表的创建了。启动SQL Server 2000服务管理器,执行上一节介绍的创建表的SQL语句。表创建完成后便可输入一些测试数据了。1.5 系统框架设计根据功能分析,本系统框架界面采用较为实用的基于但文本风格模式布局。该模式界面简洁,布局合理,操作方便。界面整体上分为两部分:上区为选择功能;下区为显示互动界面,允许用户对数据进行修改,添加,删除,查找,打印,导出。1.5.1 系统框架功能分析系统框架采用基于对话框风格,可在该界面上实现所有功能。由于操作对象是员工,客户等,它们之间的不同级别关系用采用列表控件显示很合适。对于学生数据的各种操作界面采用按钮来控制。家政管理系统统计模块的结果数据比较重要,可单独用一个界面来实现打印预览和打印功能。1.5.2 系统框架界面的设计下面介绍系统框架界面的设计过程。在界面上分别插入toolbar控件、列表控件和,再添加一个图片控件用来作为显示当前操作的学生信息bmp格式图片,安排好界面,系统框架界面设计如图1-26所示。1.5.3系统框架界面的实现上一节主要完成了系统框架界面的设计,本小节将重点介绍如何实现组合框控件、列表控件和时间控件的初始化。通过类向导,分别给列表控件和按钮控件和时间控件添加“control”型变量m_combotype、m_list、m_datestart,m_dateendM_date2,在对话框初始化函数OnInitDialog()中完成初始化操作。代码参考如下:代码位置:KEHUDlg类。 1 m_list.InsertColumn(0,编号,LVCFMT_CENTER,80); /设置list列表风格 2m_list.InsertColumn(1,姓名,LVCFMT_CENTER,80); /设置列标题 3m_list.InsertColumn(2,性别,LVCFMT_CENTER,80); 4m_list.InsertColumn(3,年龄,LVCFMT_CENTER,80); 5m_list.InsertColumn(4,缴费,LVCFMT_CENTER,80); 6 m_combotype.InsertString(0,编号);/给组合框控件初始化 7m_combotype.InsertString(1,姓名); 8m_combotype.InsertString(2,性别); 9 m_combotype.InsertString(3,年龄); 10strdate1=GetTimeString(IDC_DATETIMEPICKER1);strdate2=GetTimeString(IDC_DATETIMEPICKER2);MessageBox(strdate1);11 SQL.Format(select * from customer where Ctime between %s and %s,strdate1,strdate2);MessageBox(SQL);、。 q 第15行代码实现了给列表控件初始化。q 第69行代码实现了给组合框控件初始化。q 第10行代码实现了获取时间控件内容。具体代码下面给出说明。为了动态创建节点,采用递归方式创建叶子结点,功能上通过函数GetTimeString()封装,该部分实现代码参考如下:代码位置:KEHUDlg类。 CString KEHUDlg:GetTimeString(int id) 1CString strtemp; 2CDateTimeCtrl*m_TimeCtrl=(CDateTimeCtrl*)GetDlgItem(id); 3 SYSTEMTIME time; 4 DateTime_GetSystemtime(m_TimeCtrl-m_hWnd,&time);5 if(time.wMonth=10) 6 strtemp.Format(%d-0%d-%d,time.wYear,time.wMonth,time.wDay);7 if(time.wDay=10) 8 strtemp.Format(%d-%d-0%d,time.wYear,time.wMonth,time.wDay);9 if(time.wDay=10&time.wMonth=10) 10strtemp.Format(%d-%d-%d,time.wYear,time.wMonth,time.wDay);11 if(time.wDay10&time.wMonthExecute(_bstr_t(str),&va,adModeUnknown); 10CString SQL;11SQL.Format(select * from customer);12GetRecord(SQL);13ShowData();14MessageBox(添加成功!);15GetDlgItem(IDC_BUTTON2)-SetWindowText(添加);q 第8行代码实现根据编辑框获取对应信息并赋值成cstring类型变量插入customer表中。q 第1013行代码实现刷新记录集,显示插入新信息后的新表。1.6.5 查询和排序实现查询和排序是对数据库的比较常见的操作。本系统实现了对客户编号号、姓名、地址的查询。下面分别以对编号,地址查询为例进行介绍。当用户在组合框中选取某一个查找内容时,能自动显示对应的控件便于查找,自动关联的实现过程如下所列:1void KEHUDlg:SHOWCITY(bool d)2SetDlgItemText(IDC_STATICSTART,县);3SetDlgItemText(IDC_STATICEND,镇);4GetDlgItem(IDC_STATICSTART)-ShowWindow(d);5GetDlgItem(IDC_STATICEND)-ShowWindow(d);6GetDlgItem(IDC_COMBO1)-ShowWindow(d);7GetDlgItem(IDC_COMBO2)-ShowWindow(d);8this-GetDlgItemText(IDC_COMBO1,str1);9this-GetDlgItemText(IDC_COMBO2,str2);10find=str1+str2;11MessageBox(find);12SQL.Format(select * from customer where Caddress like %s%,find);q 第17行代码实现根据编辑框获取对应信息显示隐藏某些控件。q 第814行代码实现根据获得的组合框数据选取刷新记录集,显示得到新信息后的新表。1.6.6 打印预览的实现VC6.0中的文档/视图(Doc/View)框架,可以很方便的使用缺省的打印和打印预览。但是,如果应用程序是基于对话框的就没有办法利用这种便利。在对话框应用程序中不具备MFC的视和框架交互,要想实现打印和打印预览必须直接获取打印机的设备环境句柄,利用这个句柄,转换为指针,则按打印流程实现打印任务。本系统中已经实现把数据写入列表控件中,不需要再去重新提取数据,在预览界面中,提供了鼠标上下左右滚动功能。在此共用了两个继承CDialog的类:CPreParent类和CPreView类。CPreParent类作为控制窗口,CPreParent窗口内包括一个打印控制工具栏及一个预览窗口CPreView。首先,定义一个打印结构体及打印相关设置常量:代码位置:stdafx.h文件中。 1 #define B5_W182/B5纸宽度 2 #define B5_H257/B5纸高度 3 #define B5_ONELINE29/第一页行数 4 #define B5_OTHERLINE30/其它页行数 。 15 intnTag; 16 LPVOIDlpVoid; 17 PRNINFO, *PPRNINFO;q 第14行代码实现了打印页面设置常量定义。q 第617行代码实现了打印结构体的定义给“打印预览”按钮添加单击消息函数,实现打印预览功能。具体代码如下所列:代码位置:KEHUDLG类。 1 void ZHPCDLG:OnPrint() 2 3 if(m_list3.GetItemCount()m_hWnd;/当前窗口句柄 8 PrnInfo.IsPrint = FALSE;/当前为预览 9 PrnInfo.nCurPage = 1;/当前页为第一页 10 PrnInfo.nMaxLine = m_list3.GetItemCount();/ClistCtrl中的数据行数 11 CPreParent DlgPreView;/声明打印类 12 DlgPreView.SetCallBackFun(DrawInfo,PrnInfo);/打印函数 13 DlgPreView.DoModal();/显示预览界面 14 注意:这里的DlgPreView.SetCallBackFun(DrawInfo,PrnInfo)其中DrawInfo是在KEHDLG类中定义的静态打印函数:static void DrawInfo(CDC &memDC,PRNINFO PrnInfo),打印预览的实现就是在这个函数中完成的。1.6.7统计实现函数:void InfeeDlg:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国疏水阀监测器行业项目调研及市场前景预测评估报告
- 2025至2030中国文档版本控制软件行业项目调研及市场前景预测评估报告
- 2025至2030中国体外转录试剂盒行业项目调研及市场前景预测评估报告
- 2025至2030中国磁粉行业项目调研及市场前景预测评估报告
- 2025至2030全球及中国医疗领域的大数据支出行业项目调研及市场前景预测评估报告
- 南昌市青山湖区法院书记员招聘笔试真题2025
- 2025年连云港市赣榆区事业单位考试真题
- 2025至2030全球及中国正时盖和和正时皮带盖行业项目调研及市场前景预测评估报告
- 重庆中烟真题2025
- 湖南省卫生健康委直属事业单位招聘真题2024
- 铁路冬季劳动安全培训课件
- 《百年孤独(节选)》课件+2025-2026学年统编版高二语文选择性必修上册
- 均质机全套课件
- 北京版六年级英语重点词汇归纳
- 2025年中国航空工业集团招聘考试试题库及答案
- 微信小程序开发服务合同协议书4篇
- 镀膜考试试题及答案
- 景观工程项目可行性研究报告
- 幼儿园建筑设计-上海市青浦区夏雨幼儿园
- 手术部(室)医院感染控制标准WST855-2025解读课件
- 2025年浙江省公职招录考试(省情时政)历年参考题库含答案详解(5套)
评论
0/150
提交评论