初始化

This commit is contained in:
2025-09-23 17:17:34 +08:00
parent 4d658dbc1e
commit 3497f17101
46 changed files with 5528 additions and 0 deletions

107
main.cpp Normal file
View File

@@ -0,0 +1,107 @@
#include "CosmeticManager.h"
#include <iostream>
#include <ctime>
#include <string>
void displayMenu() {
std::cout << "\n===== 化妆品管理系统 =====" << std::endl;
std::cout << "当前时间: " << Cosmetic::getTime() << std::endl;
std::cout << "1. 添加化妆品" << std::endl;
std::cout << "2. 删除化妆品" << std::endl;
std::cout << "3. 查询化妆品" << std::endl;
std::cout << "4. 修改化妆品" << std::endl;
std::cout << "5. 显示所有化妆品" << std::endl;
std::cout << "6. 查找临期化妆品" << std::endl;
std::cout << "0. 退出系统" << std::endl;
std::cout << "=========================" << std::endl;
std::cout << "请选择操作: ";
}
int main() {
CosmeticManager manager;
manager.loadFromFile(); // 启动时加载数据
int choice;
std::string name;
double price;
bool type;
std::string expirationDate;// 过期日期
while (true) {
displayMenu();
std::cin >> choice;
switch (choice) {
case 1: {
std::cout << "输入品牌名称: ";
std::cin >> name;
std::cout << "输入价格: ";
std::cin >> price;
std::cout << "输入类型 (1-国产, 0-进口): ";
std::cin >> type;
std::cout << "输入过期日期 (YYYY-MM-DD): ";
std::cin >> expirationDate;
if (!manager.isValidDate(expirationDate)) {
std::cout << "日期格式有误格式YYYY-MM-DD 例2000-01-01" << std::endl;
break;
}
manager.addCosmetic(Cosmetic(name, price, type, expirationDate));
std::cout << "添加成功!" << std::endl;
break;
}
case 2: {
std::cout << "输入要删除的品牌名称: ";
std::cin >> name;
if (manager.deleteCosmetic(name)) {
std::cout << "删除成功!" << std::endl;
} else {
std::cout << "未找到该品牌!" << std::endl;
}
break;
}
case 3: {
std::cout << "输入要查询的品牌名称: ";
std::cin >> name;
Cosmetic* cosmetic = manager.findCosmetic(name);
if (cosmetic) {
std::cout << "品牌: " << cosmetic->getName() << "\n"
<< "价格: " << cosmetic->getPrice() << "\n"
<< "类型: " << (cosmetic->getType() ? "国产" : "进口") << "\n"
<< "过期日期: " << cosmetic->getExpirationDate() << "\n"
<< std::endl;
} else {
std::cout << "未找到该品牌!" << std::endl;
}
break;
}
case 4: {
std::cout << "输入要修改的品牌名称: ";
std::cin >> name;
std::cout << "输入新价格: ";
std::cin >> price;
std::cout << "输入新类型 (1-国产, 0-进口): ";
std::cin >> type;
if (manager.modifyCosmetic(name, price, type)) {
std::cout << "修改成功!" << std::endl;
} else {
std::cout << "未找到该品牌!" << std::endl;
}
break;
}
case 5:
manager.displayAll();
break;
case 6:
manager.displayExpiringCosmetics();
break;
case 0:
manager.saveToFile();
std::cout << "数据已保存,再见!" << std::endl;
return 0;
default:
std::cout << "无效选项,请重新选择!" << std::endl;
}
}
// ???
return 0;
}