这是我用C#做的第二个小项目
由于某种原因我没有把这个小项目做完,只做了一部分,如果以后有机会我还是会回来继续完成这个小项目的
接下来就先来展示下他的结构图吧
这么乍一看是不是感觉特别简单,我一开始也以为很容易,可奈何我的实力有点不足,做着做着就没思路了,我准备在多学学有了足够的底蕴再来继续做这个项目。
接下来是需求:
1.登录
用户输入用户名和密码后。登录成功,系统提示欢迎信息。如果用户名和密码输入错误,则提示登录失败。
2.点菜
登录成功后,选择“开始点菜”菜单,进入点菜界面。输入店铺的“编码”,进入菜品界面。在菜品界面。若输入“菜品编码”和“购买数量”,则将菜品加入购物车。完成后,可选择继续添加菜品或返回系统主界面。
3.购物车结算
在系统主界面,选择“购物车”菜单进入购物车管理界面。在此界面,可选择“结算”菜单输入收货地址完成结算或返回系统主界面。
接下来我就来展示一下我做的半成品的效果图(只有部分功能实现了)
登录失败效果图
登录成功效果图
显示菜单功能
返回主界面功能
退出功能
这就是我目前这个半成品能实现的功能了
下面是代码,创建了三个类:用户类、店铺类、菜品类
用户类(User)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XiaoXiangMu2
{
/// <summary>
/// 用户类
/// </summary>
class User
{
// 账号
private string _account;
public string Account
{
get
{
return this._account;
}
set
{
this._account = value;
}
}
// 用户名
private string _userName;
public string UserName
{
get
{
return this._userName;
}
set
{
this._userName = value;
}
}
// 密码
private string _password;
public string Password
{
get
{
return this._password;
}
set
{
this._password = value;
}
}
// 手机号码
private string _phoneNumber;
public string PhoneNumber
{
get
{
return this._phoneNumber;
}
set
{
this._phoneNumber = value;
}
}
}
}
店铺类(Store)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XiaoXiangMu2
{
/// <summary>
/// 店铺名
/// </summary>
class Store
{
//店铺名称
private string _storeName;
public string StoreName
{
get
{
return this._storeName;
}
set
{
this._storeName = value;
}
}
//店铺编码
private string _storeCoding;
public string StoreCoding
{
get
{
return this._storeCoding;
}
set
{
this._storeCoding = value;
}
}
}
}
菜品类(Food)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XiaoXiangMu2
{
/// <summary>
/// 菜品类
/// </summary>
class Food
{
//菜品编码
private string _foodCoding;
public string FoodCoding
{
get
{
return this._foodCoding;
}
set
{
this._foodCoding = value;
}
}
//菜品名称
private string _foodName;
public string FoodName
{
get
{
return this._foodName;
}
set
{
this._foodName = value;
}
}
//价格
private double _price;
public double Price
{
get
{
return this._price;
}
set
{
this._price = value;
}
}
//店铺编码
private string _storeCoding;
public string StoreCoding
{
get
{
return this._storeCoding;
}
set
{
this._storeCoding = value;
}
}
}
}
主代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XiaoXiangMu2
{
class Program
{
//private User dx;
static void Main(string[] args)
{
string account = ""; //账号初始化
string password = ""; //密码初始化
Console.WriteLine("==============智能点菜系统-测试账号==============");
// 循环输出账号和密码
for (int i = 0; i < UserInitialize().Length; i++)
{
Console.WriteLine($"账号:{UserInitialize()[i].Account,-30}密码:{UserInitialize()[i].Password}");
}
Console.WriteLine("=================================================");
Console.Write("请输入账号:");
account = Console.ReadLine(); //获取账号
Console.Write("请输入密码:");
password = Console.ReadLine(); //获取密码
//调用登录方法并把对应的对象赋值给dx
User dx = Register(account, password);
//Console.WriteLine(dx.UserName);
}
/// <summary>
/// 用户初始化方法
/// </summary>
public static User[] UserInitialize()
{
User user1 = new User(); //创建用户对象1
user1.Account = "lilei"; //账号
user1.Password = "123456"; //密码
user1.UserName = "李雷"; //用户名
user1.PhoneNumber = "1311654321"; //手机号
User user2 = new User(); //创建用户对象2
user2.Account = "hanmeimei"; //账号
user2.Password = "123456"; //密码
user2.UserName = "韩梅梅"; //用户名
user2.PhoneNumber = "1311654322"; //手机号
User user3 = new User(); //创建用户对象3
user3.Account = "xiaoai"; //账号
user3.Password = "123456"; //密码
user3.UserName = "小艾"; //用户名
user3.PhoneNumber = "1311654323"; //手机号
User[] userArr = new User[3] { user1, user2, user3 }; //创建用户对象数组
return userArr;
}
/// <summary>
/// 店铺初始化方法
/// </summary>
/// <returns></returns>
public static Store[] StoreInitialize()
{
Store store1 = new Store(); //创建店铺对象1
store1.StoreName = "饺子馆"; //店铺名称
store1.StoreCoding = "S001"; //店铺编码
Store store2 = new Store(); //创建店铺对象2
store2.StoreName = "川菜馆"; //店铺名称
store2.StoreCoding = "S002"; //店铺编码
Store store3 = new Store(); //创建店铺对象3
store3.StoreName = "小碗肉"; //店铺名称
store3.StoreCoding = "S003"; //店铺编码
Store[] storeArr = new Store[3] { store1, store2, store3 }; //创建店铺对象数组
return storeArr;
}
/// <summary>
/// 菜品初始化方法
/// </summary>
/// <returns></returns>
public static Food[] FoodInitialize()
{
Food food1 = new Food(); //创建菜品对象1
food1.FoodCoding = "F001"; //菜品编码
food1.FoodName = "韭菜馅"; //菜品名称
food1.Price = 12.8; //价格
food1.StoreCoding = StoreInitialize()[0].StoreCoding; //店铺编码
Food food2 = new Food(); //创建菜品对象2
food2.FoodCoding = "F002"; //菜品编码
food2.FoodName = "猪肉馅"; //菜品名称
food2.Price = 15; //价格
food2.StoreCoding = StoreInitialize()[0].StoreCoding; //店铺编码
Food food3 = new Food(); //创建菜品对象3
food3.FoodCoding = "F003"; //菜品编码
food3.FoodName = "茴香馅"; //菜品名称
food3.Price = 11; //价格
food3.StoreCoding = StoreInitialize()[0].StoreCoding; //店铺编码
Food food4 = new Food(); //创建菜品对象4
food4.FoodCoding = "F004"; //菜品编码
food4.FoodName = "酸菜馅"; //菜品名称
food4.Price = 13; //价格
food4.StoreCoding = StoreInitialize()[0].StoreCoding; //店铺编码
Food food5 = new Food(); //创建菜品对象5
food5.FoodCoding = "F005"; //菜品编码
food5.FoodName = "麻辣烤鱼"; //菜品名称
food5.Price = 59; //价格
food5.StoreCoding = StoreInitialize()[1].StoreCoding; //店铺编码
Food food6 = new Food(); //创建菜品对象6
food6.FoodCoding = "F006"; //菜品编码
food6.FoodName = "水煮牛蛙"; //菜品名称
food6.Price = 49; //价格
food6.StoreCoding = StoreInitialize()[1].StoreCoding; //店铺编码
Food food7 = new Food(); //创建菜品对象7
food7.FoodCoding = "F007"; //菜品编码
food7.FoodName = "四川泡菜"; //菜品名称
food7.Price = 29; //价格
food7.StoreCoding = StoreInitialize()[1].StoreCoding; //店铺编码
Food food8 = new Food(); //创建菜品对象8
food8.FoodCoding = "F008"; //菜品编码
food8.FoodName = "水煮牛肉"; //菜品名称
food8.Price = 80; //价格
food8.StoreCoding = StoreInitialize()[1].StoreCoding; //店铺编码
Food food9 = new Food(); //创建菜品对象9
food9.FoodCoding = "F009"; //菜品编码
food9.FoodName = "肉末蒸豆腐"; //菜品名称
food9.Price = 20; //价格
food9.StoreCoding = StoreInitialize()[2].StoreCoding; //店铺编码
Food food10 = new Food(); //创建菜品对象10
food10.FoodCoding = "F010"; //菜品编码
food10.FoodName = "蚝油白菜包"; //菜品名称
food10.Price = 19; //价格
food10.StoreCoding = StoreInitialize()[2].StoreCoding; //店铺编码
Food food11 = new Food(); //创建菜品对象11
food11.FoodCoding = "F011"; //菜品编码
food11.FoodName = "糯米蒸排骨"; //菜品名称
food11.Price = 30; //价格
food11.StoreCoding = StoreInitialize()[2].StoreCoding; //店铺编码
Food food12 = new Food(); //创建菜品对象12
food12.FoodCoding = "F012"; //菜品编码
food12.FoodName = "清蒸大闸蟹"; //菜品名称
food12.Price = 50; //价格
food12.StoreCoding = StoreInitialize()[2].StoreCoding; //店铺编码
//创建菜品对象数组
Food[] foodArr = new Food[12] { food1, food2, food3, food4, food5, food6, food7, food8, food9, food10, food11, food12 };
return foodArr;
}
/// <summary>
/// 登录方法
/// </summary>
public static User Register(string account,string password)
{
bool isA = true; //布尔账号
bool isP = true; //布尔密码
User dx = UserInitialize()[0];
//判断密码跟账号是否正确
foreach (User user in UserInitialize())
{
if (user.Account.Equals(account))
{
isA = true;
if (user.Password.Equals(password))
{
isP = true;
dx = user;
break;
}
isP = false;
}
isA = false;
}
if (isA == true && isP == true)
{
Console.WriteLine("====================登录成功=====================");
Console.WriteLine();
//调用显示菜单方法
Show();
}
else if (isP == false)
{
Console.WriteLine("====================登录失败=====================");
Console.WriteLine("密码错误,请重新输入!");
}
else if (isA == false)
{
Console.WriteLine("====================登录失败=====================");
Console.WriteLine("账号不存在,请重新输入!");
}
return dx;
}
/// <summary>
/// 显示菜单方法
/// </summary>
public static void Show()
{
Console.WriteLine("===============欢迎来到智能点菜系统===============");
Console.WriteLine("|| 1.开始菜单,2.购物车,F.返回主界面,Q.退出 ||");
Console.WriteLine("==================================================");
Console.WriteLine();
//调用菜单选择方法
MenuSelection();
}
/// <summary>
/// 菜单选择方法
/// </summary>
public static void MenuSelection()
{
Console.Write("请输入要操作的菜单序号:");
string serialNumber = Console.ReadLine(); //获取输入的序号
switch (serialNumber)
{
case "1":
//调用菜单查询方法
Inquire();
break;
case "2":
break;
case "F":
Console.WriteLine();
//调用显示菜单方法
Show();
break;
case "Q":
Console.WriteLine("====================退出成功======================");
break;
default:
Console.WriteLine("输入有误!");
//调用显示菜单方法
Show();
break;
}
}
/// <summary>
/// 菜单查询方法
/// </summary>
public static void Inquire()
{
Console.WriteLine("====================店铺====================");
foreach (Store store in StoreInitialize())
{
Console.WriteLine($"|| 编码:{store.StoreCoding,-16}名称:{store.StoreName} ||");
}
Console.WriteLine("============================================");
Console.WriteLine("请输入店铺编码:");
string storeCoding = Console.ReadLine(); //获取店铺编码
Console.WriteLine("=========================菜品=========================");
foreach (Food food in FoodInitialize())
{
if (food.StoreCoding.Equals(storeCoding))
{
Console.WriteLine($"|| 编码:{food.FoodCoding,-6}名称:{food.FoodName,-10}价格:{food.Price,5:F2}元 ||");
}
}
Console.WriteLine("======================================================");
}
/// <summary>
/// 添加购物车方法
/// </summary>
public static void Add()
{
}
}
}