李志刚S07059会议室管理Word文档格式.docx

上传人:b****4 文档编号:7933024 上传时间:2023-05-09 格式:DOCX 页数:31 大小:512.78KB
下载 相关 举报
李志刚S07059会议室管理Word文档格式.docx_第1页
第1页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第2页
第2页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第3页
第3页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第4页
第4页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第5页
第5页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第6页
第6页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第7页
第7页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第8页
第8页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第9页
第9页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第10页
第10页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第11页
第11页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第12页
第12页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第13页
第13页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第14页
第14页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第15页
第15页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第16页
第16页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第17页
第17页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第18页
第18页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第19页
第19页 / 共31页
李志刚S07059会议室管理Word文档格式.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

李志刚S07059会议室管理Word文档格式.docx

《李志刚S07059会议室管理Word文档格式.docx》由会员分享,可在线阅读,更多相关《李志刚S07059会议室管理Word文档格式.docx(31页珍藏版)》请在冰点文库上搜索。

李志刚S07059会议室管理Word文档格式.docx

2.2类声明

图一整体的代码结构

图2会议室基类

图3小型会议类声明

图4中型会议室类声明

图5大型会议室类声明

#pragmaonce

//包含要使用类的头文件

#include"

MeetingRoom.h"

MeetingRoomBig.h"

MeetingRoomMiddle.h"

MeetingRoomSmall.h"

//会议室管理类

classMeetingRoomManage

{

public:

//管理类自身

//staticMeetingRoomManage*m_MeetingRoomManage;

//所有会议室的列表

CObArraym_roomList;

MeetingRoomManage();

~MeetingRoomManage();

/*

添加一个会议室

room一个会议室对象

reruan:

0表示更新失败1更新成功

*/

intaddRoom(MeetingRoomroom);

/*修改一个会议室信息

oldroom是要修改的会议室对象

size修改为size类型

intupdateRoom(MeetingRoomoldroom,char*size);

查找一个会议室

roomID会议室的编号

MeetingRoom*query(introomID);

更新所有的会议室信息

改变会议室相应类型所对应的最多容纳人数之后

size会议室的类型

maxPeo对应的最多容纳的人数

intupdateRoomAll(char*size,intmaxPeo);

/*

获取的该类的实例化对象

*/

/*staticMeetingRoomManage*MeetingRoomManage:

:

getInstance()

{

if(m_MeetingRoomManage==NULL)

{

m_MeetingRoomManage=newMeetingRoomManage();

returnm_MeetingRoomManage;

}

returnm_MeetingRoomManage;

}

};

//MeetingRoomManage*MeetingRoomManage:

m_MeetingRoomManage=NULL;

图6会议室管理类声明

图7计划类声明

图8计划管理类声明

图9文件操作类声明

3功能实现(三号字、黑体)

3.1菜单

1.主界面查询功能

2.使用计划

3.会议室一些功能

4.文件保存读取功能

3.2功能1

UML时序图

附录:

程序源代码

会议室类

stdafx.h"

MeetingRoom:

MeetingRoom()

}

MeetingRoom(introomID)

this->

roomID=roomID;

~MeetingRoom()

intMeetingRoom:

getRoomID(int&

roomID)

returnroomID=this->

roomID;

小型会议室类:

MeetingRoomSmall:

MeetingRoomSmall()

MeetingRoomSmall(introomID,char*size,intmaxPeople):

MeetingRoom(roomID)

size=size;

maxPeople=maxPeople;

~MeetingRoomSmall()

voidMeetingRoomSmall:

setSize(char*size)

getSize(char*&

size)

size=(this->

size);

setMaxPeople(intmax)

maxPeople=max;

getMaxPeople(int&

maxPeople)

maxPeople=this->

maxPeople;

中型会议室类

MeetingRoomMiddle:

MeetingRoomMiddle()

MeetingRoomMiddle(introomID,char*size,intmaxPeople)

~MeetingRoomMiddle()

voidMeetingRoomMiddle:

大型会议室类

MeetingRoomBig:

MeetingRoomBig()

MeetingRoomBig(introomID,char*size,intmaxPeople):

~MeetingRoomBig()

voidMeetingRoomBig:

MeetingRoomManage.h"

MeetingRoomManage:

MeetingRoomManage()

~MeetingRoomManage()

//deletem_MeetingRoomManage;

intMeetingRoomManage:

addRoom(MeetingRoomroom)

//添加一个对象到对象数组

if(this->

m_roomList.Add(&

room))

return1;

return0;

updateRoom(MeetingRoomoldroom,char*size)

oldroom.setSize(size);

return1;

MeetingRoom*MeetingRoomManage:

query(introomID)

//获取数组的长度

intcount=this->

m_roomList.GetSize();

//for循环查找

inti;

inttemp=0;

for(i=0;

i<

count;

i++)

((MeetingRoom*)(this->

m_roomList.GetAt(i)))->

getRoomID(temp);

if(roomID==temp)

return((MeetingRoom*)(this->

m_roomList.GetAt(i)));

returnNULL;

updateRoomAll(char*size,intmaxPeo)

chara[10];

char*temp=a;

i++)

{

//找到相应的类型则改变其最多容纳人数的属性

getSize(temp);

if(!

strcmp(size,temp))

((MeetingRoom*)(this->

setMaxPeople(maxPeo);

return1;

计划类:

Plan.h"

Plan:

Plan()

Plan(intm_planID,intm_roomID,char*m_date,intm_timeh,char*m_user)

m_roomID=m_roomID;

m_date=m_date;

m_timeh=m_timeh;

m_user=m_user;

~Plan()

voidPlan:

setM_planID(intm_planID)

m_planID=m_planID;

setM_roomID(intm_roomID)

setM_date(char*m_date)

setM_timeh(intm_timeh)

setM_user(char*m_user)

getM_planID(int&

m_planID)

m_planID=this->

m_planID;

getM_roomID(int&

m_roomID)

m_roomID=this->

m_roomID;

getM_date(char*&

m_date)

m_date=this->

m_date;

getM_timeh(int&

m_timeh)

m_timeh=this->

m_timeh;

getM_user(char*&

m_user)

m_user=this->

m_user;

计划管理类

PlanManage.h"

PlanManage:

PlanManage()

~PlanManage()

根据给定的日期和房间号,查询使用计划

voidPlanManage:

query_1(char*date,introomID)

//先清空数组

this->

query_1_List.RemoveAll();

//取得总共的计划条数

intcount=this->

m_planList.GetSize();

//存放plan记录

Plan*plan;

//fou循环查找符合条件的记录放到数组中

inti;

for(i=0;

plan=(Plan*)this->

m_planList.GetAt(i);

//取出一条计划

char*m_date;

plan->

getM_date(m_date);

//得到该计划的日期

intm_roomID;

getM_roomID(m_roomID);

//获取该计划的会议室编号

if(!

strcmp(m_date,date))//日期一样

{

if(m_roomID==roomID)//会议室编号一样

{

this->

query_1_List.Add(plan);

//符合俩个条件加入结果组

}

根据给定的日期和人数,查找可用的会议室

query_2(char*date,intmaxPeople)

query_2_List.RemoveAll();

//第一步现寻找所有符合计划的会议室

//所有会议室的个数

intcount=m_roomManage.m_roomList.GetSize();

MeetingRoom*room;

++i)

room=(MeetingRoom*)m_roomManage.m_roomList.GetAt(i);

//取出一个会议室

intm_maxPeople;

room->

getMaxPeople(m_maxPeople);

//获取会议室的最大容纳人数

if(m_maxPeople>

=maxPeople)

this->

query_2_List.Add(room);

}

//第二步把在给定日期内已经被预约的会议室去掉

//双层for循环

query_2_List.GetSize();

//存放会议室指针

MeetingRoom*room=(MeetingRoom*)this->

query_2_List.GetAt(i);

introomID;

room->

getRoomID(roomID);

Plan*plan;

//取得总共的计划条数

intcount=this->

//存放plan记录

intj;

//fou循环查找已经预约过的的会议室(在指定日期)

for(j=0;

j<

j++)

plan=(Plan*)this->

m_planList.GetAt(j);

char*m_date;

intm_roomID;

if(!

if(m_roomID==roomID)//已经在计划中的会议室编号去掉

{

this->

query_2_List.RemoveAt(i);

//去掉已经在计划中的会议室

}

添加使用计划

intPlanManage:

addPlan(Planplan)

plan.setM_planID(this->

m_planID);

if(this->

m_planList.Add(&

plan))

return0;

修改使用计划

//把旧的计划删掉把新的计划添加进去

updatePlan(PlanoldPlan,PlannewPlan)

Plan*plan;

//fou循环查找已经预约过的的会议室(在指定日期)

for(j=0;

intm_planID;

getM_planID(m_planID);

//得到该计划的ID

intm_old_planID;

oldPlan.getM_planID(m_old_planID);

//得到旧的计划的ID

if(m_planID==m_old_planID)//找到old计划

m_planList.RemoveAt(j);

//去掉旧的计划

newPlan);

//添加新的计划

return1;

文件类:

FileOp.h"

FileOp:

FileOp()

~FileOp()

intFileOp:

writeFile(CObArrayplanList,CObArrayroomList)

{

//即将推出的功能

//老师由于时间有限这个功能没有实现请原谅

readFile(CObArray&

planList,CObArray&

roomList)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2