⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 boardtoom.cpp

📁 会议室使用系统
💻 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 + -