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

📄 manage.cpp

📁 此代码为数据结构课程设计代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		cout << endl; 
		if (tmpID.size() == 18) break; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "输入的身份证号码不是18位!请重新输入!\n\n"; 
	} 
	customer tmpCustomer; 
	if (!myHotel.delCustomer(tmpID, tmpCustomer)) 
	{ 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "对不起,我们没有您的住宿信息\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "请您查证您的身份证号码是否正确\n\n"; 
		system("pause"); 
		return 1; 
	} 
	
	system("cls"); 
	for (i = 0; i < 5; i++) 
		cout << endl; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	Time tmpTime = tmpCustomer.getArriveTime(); 
	cout << "您好,您于"; 
	tmpTime.display(); 
	Time nowTime; 
	int liveDay = nowTime.subDay(tmpTime); 
	cout << "入住本酒店\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "您选择了等级 " << tmpCustomer.getGradeNumber() + 1
		 << "的房间,房号为 " << tmpCustomer.getGradeNumber() + 1 << setw(3) 
		 << setfill('0') << tmpCustomer.getRoomNumber() + 1 << endl << endl; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "您一共在本店住宿 " << liveDay << "天\n\n";
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "您的消费如下:\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "1. 住宿费 " << liveDay * myHotel.getGradeCost(tmpCustomer.getGradeNumber()) 
		 << " RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "2. 电话费 " << "0 RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "3. 餐费 " << "0 RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "4. 商品费" << "0 RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "5. 其他费用" << "0 RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "总计: " << liveDay * myHotel.getGradeCost(tmpCustomer.getGradeNumber()) 
		 << " RMB\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "***酒店再次感谢您的到来!\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "欢迎下次光临!\n"; 
	system("pause"); 
	return 0;	
} 
int manage::roomInfo() 
{ 
	int i; 
	while (1) 
	{ 
		system("cls"); 
		for (i = 0; i < 5; i++) 
			cout << endl; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "欢迎进入房间状态查询界面\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "1. 按具体房间号查询\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "2. 按房间等级查询入住情况\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "3. 返回上一层\n\n"; 
		string tmpstr; 
		int tmpInput; 
		while (1) 
		{ 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入您要进行的操作: "; 
			cin >> tmpstr; 
			cout << endl; 
			if (string2int(tmpstr, tmpInput) && tmpInput >= 1 && tmpInput <= 3) 
				break; 
			cout << "输入错误!\n\n"; 
		} 
		string tmpRoomNum, tmpGrade; 
		int roomNum; 
		int gradeNum; 
		room tmpRoom; 
		switch (tmpInput) 
		{ 
		case 1: 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入四位房间号: "; 
			cin >> tmpRoomNum; 
			cout << endl; 
			if (tmpRoomNum.size() == 4 && string2int(tmpRoomNum, roomNum)) 
			{ 
				gradeNum = roomNum / 1000; 
				roomNum = roomNum % 1000; 
				gradeNum--; 
				roomNum--; 
				if (myHotel.findRoomNum(gradeNum, roomNum, tmpRoom)) 
				{ 
					tmpRoom.displayRoom(); 
				} 
				else 
				{ 
					for (i = 0; i < 20; i++) 
						cout << ' '; 
					cout << "输入的房号不存在!\n\n"; 
				} 
			} 
			else 
			{ 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "输入房号错误!\n\n"; 
			} 
			break; 
		case 2: 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入等级数: "; 
			cin >> tmpGrade; 
			if (string2int(tmpGrade, gradeNum) && gradeNum >= 1 
				&& gradeNum <= myHotel.getGradeNumber()) 
			{ 
				gradeNum--; 
				myHotel.displayGrade(gradeNum); 
			} 
			else 
			{ 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "输入的等级错误!\n\n"; 
			} 
			break; 
		case 3: 
			return 1; 
			break; 
		default: 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "输入错误!\n"; 
		} 
		system("pause"); 
	} 
	return 0; 
} 
int manage::customerInfo() 
{ 
	int i; 
	while (1) 
	{ 
		system("cls"); 
		for (i = 0; i < 5; i++) 
			cout << endl; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "欢迎进入旅客信息查询界面\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "1. 根据旅客姓名查询\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "2. 根据旅客身份证查询\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "3. 返回上一层\n\n"; 
		string tmpstr; 
		int tmpInput; 
		while (1) 
		{ 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入您要进行的操作: "; 
			cin >> tmpstr; 
			cout << endl; 
			if (string2int(tmpstr, tmpInput) && tmpInput >= 1 && tmpInput <= 3) 
				break; 
			cout << "输入错误!\n\n"; 
		} 
		string tmpName; 
		customer *ptrCustomer; 
		ptrCustomer = new customer[1000]; 
		int customerNumber = 0; 
		string tmpID; 
		customer tmpCustomer; 
		int j; 
		switch (tmpInput) 
		{ 
		case 1: 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入姓名: "; 
			cin >> tmpName; 
			myHotel.nameFindCustomer(tmpName, ptrCustomer, customerNumber); 
			if (!customerNumber) 
			{ 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "查找失败!\n\n"; 
			} 
			else 
			{ 
				for  (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "已查找到" << customerNumber << "位旅客姓名为" 
					 << tmpName << "\n\n"; 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "旅客号  性别\t身份证号\t 房号  入住时间\n\n"; 
				for (j = 0; j < customerNumber; j++) 
				{ 
					for (i = 0; i < 20; i++) 
						cout << ' '; 
					cout << j + 1 << ":     "; 
					if (ptrCustomer[j].getCustomerSex() == MALE) 
						cout << "男    "; 
					else 
						cout << "女    "; 
					cout << ptrCustomer[j].getCustomerID(); 
					cout << "     " << ptrCustomer[j].getGradeNumber() + 1 << setfill('0') 
						 << setw(3) << ptrCustomer[i].getRoomNumber() + 1 << "   "; 
					Time tmpTime = ptrCustomer[i].getArriveTime(); 
					tmpTime.display(); 
					cout << endl; 
				} 
				
			} 
			system("pause"); 
			break; 
		case 2: 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入身份证号码: "; 
			cin >> tmpID; 
			cout << endl; 
			if (myHotel.IDFindCustomer(tmpID, tmpCustomer)) 
			{ 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "查找成功!\n\n"; 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "已查找到身份证号为" << tmpID << "的顾客\n\n"; 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << "姓名  性别  房号  入住时间\n\n"; 
				for (i = 0; i < 20; i++) 
					cout << ' '; 
				cout << tmpCustomer.getCustomerName() << "  "; 
				if (tmpCustomer.getCustomerSex() == MALE) 
					cout << "男  "; 
				else 
					cout << "女  "; 
				cout << "   " << tmpCustomer.getGradeNumber() + 1 << setfill('0') 
					<< setw(3) << tmpCustomer.getRoomNumber() + 1 << "   "; 
				Time tmpTime = tmpCustomer.getArriveTime(); 
				tmpTime.display(); 
				cout << endl << endl; 
			} 
			else 
			{ 
				for (i = 0; i  < 20; i++) 
					cout << ' '; 
				cout << "查找失败!\n"; 
			} 
			system("pause"); 
			break; 
		case 3: 
			return 1; 
			break; 
		default: 
			cout << "输入错误!\n\n"; 
		} 
	} 
	return 0; 
} 
int manage::displayState() 
{ 
	int i; 
	while (1) 
	{ 
		system("cls"); 
		for (i = 0; i < 5; i++) 
			cout << endl; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "欢迎进入住宿查询界面\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "1. 旅客信息查询\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "2. 房间状态查询\n\n"; 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "3. 返回上一层\n\n"; 
		string tmpstr; 
		int tmpInput; 
		while (1) 
		{ 
			for (i = 0; i < 20; i++) 
				cout << ' '; 
			cout << "请输入您要进行的操作: "; 
			cin >> tmpstr; 
			cout << endl; 
			if (string2int(tmpstr, tmpInput) && tmpInput >= 1 && tmpInput <= 3) 
				break; 
			cout << "输入错误\n\n"; 
		} 
		switch (tmpInput) 
		{ 
		case 1: 
			customerInfo(); 
			break; 
		case 2: 
			roomInfo(); 
			break; 
		case 3: 
			return 1; 
		default: 
			cout << "错误!\n\n"; 
		} 
	} 
	return 0; 
} 
int manage::proscenium() 
{ 
	int i, cmd; 
	system("cls"); 
	for (i = 0; i < 5; i++) 
		cout << endl; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "1. 登记入住\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "2. 退房结算\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "3. 管理员登入\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "4. 查看入住情况\n\n"; 
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "5. 退出程序\n\n";  
	for (i = 0; i < 20; i++) 
		cout << ' '; 
	cout << "请输入您要进行的操作: "; 
	string tmpstr; 
	cin >> tmpstr; 
	if (!string2int(tmpstr, cmd)) 
		cmd = 6; 
	switch (cmd) 
	{ 
	case 1: 
		addCustomer(); 
		break; 
	case 2: 
		delCustomer(); 
		break; 
	case 3: 
		managerLogin(); 
		break; 
	case 4: 
		displayState(); 
		break; 
	case 5: 
		state = STOPED; 
		break; 
	default: 
		for (i = 0; i < 20; i++) 
			cout << ' '; 
		cout << "错误指令!\n\n"; 
		system("pause"); 
	} 
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -