📄 boardtoom.cpp
字号:
#include "afx.h"
#include "Date.h"
#include "JiHua.h"
#include "xuexiao.h"
#include "Room.h"
#include "Flist.h"
#include "File.h"
#include "File1.h"
#include "string.h"
#include <iostream.h>
#pragma once
void main()
{
char u;
xuexiao * school=new xuexiao();
int tu=0;
while(1)
{
cout<<"欢迎进入会议室系统"<<endl;
cout<<"输入会议室信息(r)输入会议室使用计划(p)查询计划(c)修改(g)保存(s)装入(z)退出(e)"<<endl;
cout<<"请你选择:";
cin>>u;
if(u=='r')
{
while(1)
{
int roomnum,count;
char x;
cout<<"请添加会议室"<<endl;
cout<<"输入会议室号";
cin>>roomnum;
cout<<"请输入此会议室所能容纳的人数";
cin>>count;
Room * r=new Room(roomnum,count);
POSITION pos=school->GetHeadPosition();
if(!pos)
{
school->add(r);
tu++;
}
else
{
int j=0;
while(pos)
{
Room* list=(Room*)school->GetNext(pos);
if(list->getroomnum()==roomnum)
{
j=1;
break;
}
}
if(j==0)
{
school->add(r);
tu++;
}
else
cout<<"已经有了此会议室信息";
}
cout<<"你要继续添加吗?(y/n) :";
cin>>x;
if(x=='n')
break;
}
}
if(u=='p')
{
while(1)
{
JiHua *jihua=new JiHua();
int month,day,date,hour,min,renshu;
int hour1,min1;
char name[20];
int j=0;
int roomnum;
char z;
cout<<"请添加计划时间";
cin>>month>>date>>day>>hour>>min>>hour1>>min1;
cout<<"请输入联系人:";
cin>>name;
cout<<"请输入参加会议的人数";
cin>>renshu;
cout<<"请输入你使用的会议室:";
cin>>roomnum;
// cout<<"你输入的是:";
// cout<<month<<"月"<<date<<"日,星期"<<day<<"开始使用时间"<<hour<<"时"<<min<<"分,结束时间"<<hour1<<"时"<<min1<<"分";
Date *s=new Date(month,date,day,hour,min);
Date *e=new Date(month,date,day,hour1,min1);
POSITION pos=school->GetHeadPosition();
jihua->setend(e);
jihua->setstart(s);
jihua->setlinkman(name);
jihua->setrenshu(renshu);
if(!pos)
cout<<"没有此会议室";
while(pos)
{
Room * r=(Room*)school->GetNext(pos);
if(r->getroomnum()==roomnum)
{
if(r->getroomcount()>=renshu)
{
r->add(jihua,day);
j=1;
break;
}
else
{
j=1;
cout<<"此会议室容不下";
}
}
}
if(j==0)
{
cout<<"没有此会议室";
}
cout<<"你要继续添加吗?(y/n) :";
cin>>z;
if(z=='n')
break;
}
}
if(u=='c')
{
while(1)
{
char k;
int month,day,date,hour,min,roomnum,count;
int hour1,min1;
cout<<"欢迎进入查询系统"<<endl;
cout<<"查找计划还是会议室";
cin>>k;
if(k=='p')
{
cout<<"请输入日期及会议室号:";
cin>>month>>date>>day>>hour>>min>>hour1>>min1>>roomnum;
Date *s=new Date(month,date,day,hour,min);
Date *e=new Date(month,date,day,hour1,min1);
xuexiao *list=school->selectr(roomnum,s,e);
list->shuchu1();
}
if(k=='r')
{
cout<<"请输入日期及参加人数:";
cin>>month>>date>>day>>hour>>min>>hour1>>min1>>count;
Date *s=new Date(month,date,day,hour,min);
Date *e=new Date(month,date,day,hour1,min1);
xuexiao *list=school->selectc(count,s,e);
list->shuchu();
}
cout<<"你要继续查询吗?(y/n) :";
cin>>k;
if(k=='n')
break;
}
}
if(u=='s')
{
while(1)
{
File file;
File file1;
int roomnum,roomcount,renshu;
char lianxiren[20];
file.open("huiyishi.txt");
file1.open("huiyishi1.txt");
file1.write(tu);
file1.write('\n');
POSITION pos=school->GetHeadPosition();
while(pos)
{
Room *room=(Room*)school->GetNext(pos);
roomnum=room->getroomnum();
roomcount=room->getroomcount();
for(int k=0;k<7;k++)
{
POSITION pos1=room->getplan(k)->GetHeadPosition();
while(pos1)
{
file.write("会议室号");
file.write(roomnum);
file1.write(roomnum);
file.write('\t');
file1.write('\t');
file.write("会议室可容纳的人数");
file.write(roomcount);
file1.write(roomcount);
file.write('\t');
file1.write('\t');
JiHua *jihua=(JiHua*)room->getplan(k)->GetNext(pos1);
Date *e=jihua->getend();
Date *s=jihua->getstart();
file.write("开始时间");
int month=e->getmonth();
file.write(month);
file.write("月");
file1.write(month);
file1.write('\t');
int date=e->getdate();
file.write(date);
file.write("日");
file1.write(date);
file1.write('\t');
int day=e->getday();
file.write(day);
file.write("星期");
file1.write(day);
file1.write('\t');
int hour=s->gethour();
file.write(hour);
file.write("时");
file1.write(hour);
file1.write('\t');
int min=s->getmin();
file.write(min);
file.write("分");
file1.write(min);
file1.write('\t');
file.write("结束时间");
int hour1=e->gethour();
file.write(hour1);
file.write("时");
file1.write(hour1);
file1.write('\t');
int min1=e->getmin();
file.write(min1);
file.write("分");
file1.write(min1);
file1.write('\t');
renshu=jihua->getrenshu();
file.write("参加会议的人数");
file.write(renshu);
file1.write(renshu);
file1.write('\t');
strcpy(lianxiren,jihua->getlinkman());
file.write("计划联系人");
file.write(lianxiren);
file.write('\n');
file1.write('\n');
file1.write(lianxiren);
file1.write('\n');
file.write('\n');
}
}
}
file1.write(9000);
file1.write('\n');
file1.close();
file.close();
break;
}
}
if(u=='e')
break;
if(u=='z')
{
File1 file;
int j[11];
char lianxiren[20];
char k;
int q=0;
int panduan;
int month,day,date,hour,min,roomnum,roomcount;
int hour1,min1,renshu;
int v=0;
file.open("huiyishi1.txt");
file.read(&tu);
while(1)
{
q++;
while(1)
{
int i=0;
int jue=1;
while(1)
{
if(v==0)
{
int t;
file.read(&t);
j[i]=t;
i=i+1;
if(i==10)
{
v=1;
break;
}
}
else
{
int t;
j[0]=panduan;
file.read(&t);
j[jue]=t;
jue=jue+1;
if(jue==10)
{
break;
}
}
}
file.read(lianxiren);
file.read(&panduan);
roomnum=j[0];
roomcount=j[1];
month=j[2];
date=j[3];
day=j[4];
hour=j[5];
min=j[6];
hour1=j[7];
min1=j[8];
renshu=j[9];
int w=0;
Date *s=new Date(month,date,day,hour,min);
Date *e=new Date(month,date,day,hour1,min1);
JiHua *jihua=new JiHua();
jihua->setend(e);
jihua->setstart(s);
jihua->setlinkman(lianxiren);
jihua->setrenshu(renshu);
POSITION pos=school->GetHeadPosition();
while(pos)
{
Room * roomlist=(Room*)school->GetNext(pos);
if(roomlist->getroomnum()==roomnum)
{
Flist *f=roomlist->getplan(day);
w=1;
f->AddTail(jihua);
roomlist->setplan(day,f);
break;
}
}
if(w==0)
{
Room * room=new Room(roomnum,roomcount);
Flist *f=new Flist();
f->AddTail(jihua);
room->setplan(day,f);
school->add(room);
}
if(panduan==9000)
break;
}
if(q==tu)
break;
}
file.close();
}
if(u=='g')
{
int month,day,date,hour,min,renshu;
int hour1,min1,roomnum;
char lianxiren[20];
int j=0;
cout<<"请输入你要修改的计划信息"<<endl;
cout<<"请输入日期及会议室号:";
cin>>month>>date>>day>>hour>>min>>hour1>>min1>>roomnum;
cin>>renshu;
cin>>lianxiren;
Date *riqis=new Date(month,date,day,hour,min);
Date *riqie=new Date(month,date,day,hour1,min1);
JiHua * jihua=new JiHua();
//xuexiao *list=school->selectr(roomnum,s,e);
POSITION pos1=school->GetHeadPosition();
POSITION pos=school->GetHeadPosition();
while(pos)
{
Room * room=(Room*)school->GetNext(pos);
if(room->getroomnum()==roomnum)
{
Flist * f=room->getplan(riqis->getday());
if(f==NULL)
cout<<"没有你要修改的计划"<<endl;
else
{
POSITION pos=f->GetHeadPosition();
while(pos)
{ pos1=pos;
jihua=(JiHua*)f->GetNext(pos);
if(jihua->getstart()->bijiao(riqis)==0&&jihua->getend()->bijiao(riqie)==0&&jihua->getrenshu()==renshu&&strcmp(jihua->getlinkman(),lianxiren)==0)
break;
}
if(jihua==NULL)cout<<"没有你要修改的计划"<<endl;
else
{
f->RemoveAt(pos1);
cout<<"添加你要修改的信息:";
cin>>month>>date>>day>>hour>>min>>hour1>>min1>>roomnum;
cin>>renshu;
cin>>lianxiren;
Date *riqis=new Date(month,date,day,hour,min);
Date *riqie=new Date(month,date,day,hour1,min1);
POSITION pos=school->GetHeadPosition();
jihua->setend(riqie);
jihua->setstart(riqis);
jihua->setlinkman(lianxiren);
jihua->setrenshu(renshu);
if(!pos)
cout<<"没有此会议室";
while(pos)
{
Room * r=(Room*)school->GetNext(pos);
if(r->getroomnum()==roomnum)
{
if(r->getroomcount()>=renshu)
{
r->add(jihua,day);
j=1;
break;
}
else
{
j=1;
cout<<"此会议室容不下";
}
}
}
if(j==0)
{
cout<<"没有此会议室";
}
}
}
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -