本文实例为大家分享了C#实现汽车租赁系统的具体代码,供大家参考,具体内容如下
汽车和卡车的父类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//父类变量和方法
namespace 汽车租赁系统
{
public class Inheritance
{
public Inheritance()
{ }
public Inheritance(string color,double everydaymoney,string no,string name,int rentdate,string load,string rentuser,int services)
{
this.Color = color;
this.EverydayMoney = everydaymoney;
this.No = no;
this.Name = name;
this.RentDate = rentdate;
this.Load = load;
this.RentUser = rentuser;
this.Services = services;
}
public string Color { get; set; }
public double EverydayMoney { get; set; }
public string No { get; set; }
public string Name { get; set; }
public int RentDate { get; set; }
public string Load { get; set; }
public string RentUser { get; set; }
public int Services { get; set; }
//父类计算租金方法
public virtual double Vehicle()
{
double rentMoney;
rentMoney = this.RentDate * this.EverydayMoney;
return rentMoney;
}
}
}
汽车
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 汽车租赁系统
{
public class Car:Inheritance
{
public Car()
{ }
public Car( string color,double everydaymoney,string no,string name,int rentdate,string load,string rentuser,int services)
:base(color,everydaymoney,no,name ,rentdate,load,rentuser,services)
{
}
//省略重写汽车计算价格方法
}
}
卡车
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 汽车租赁系统
{
public class Truck:Inheritance
{
public Truck()
{ }
public Truck( string color,double everydaymoney,string no,string name,int rentdate,string load, string rentuser,int services)
:base(color,everydaymoney,no,name ,rentdate,load,rentuser,services)
{
}
//省略重写卡车计算方法
}
}
主界面
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 汽车租赁系统
{
public partial class Main : Form
{
public Main()
{
InitializeComponent();
}
Inheritance inheri = new Inheritance();
//保存未租车的集合
Dictionary<string, Inheritance> rentDic = new Dictionary<string, Inheritance>();
//保存已租车的集合
Dictionary<string, Inheritance> rentedDic = new Dictionary<string, Inheritance>();
//将未租车集合绑定到listview容器中
//将数据绑定到listview容器上
public void BangDing(ListView listview,Dictionary<string ,Inheritance> dic)
{
listview.FullRowSelect = true;
ListViewItem items;
listview.Items.Clear();
foreach (Inheritance item in dic.Values)
{
items = new ListViewItem();
items.Text = item.No;
items.SubItems.Add(item.Name);
items.SubItems.Add(item.Color);
items.SubItems.Add(item.Services.ToString());
items.SubItems.Add(item.EverydayMoney.ToString());
items.SubItems.Add(item.Load);
listview.Items.Add(items);
}
}
//进行未租车集合初始化
public void AddRent()
{
Car car1 = new Car("黑色", 100, "001", "奥迪", 0, "无","",3);
Car car2 = new Car("黑色", 100, "002", "奥迪", 0, "无","",3);
Truck truck1 = new Truck("红色", 200, "A001", "一汽", 0, "20","",6);
rentDic.Add(car1.No, car1);
rentDic.Add(car2.No, car2);
rentDic.Add(truck1.No, truck1);
}
//显示未租车信息
private void button2_Click(object sender, EventArgs e)
{
BangDing(listView1,rentDic);
}
private void Main_Load(object sender, EventArgs e)
{
AddRent();
}
//进行租车操作
private void button1_Click(object sender, EventArgs e)
{
string key = this.listView1.SelectedItems[0].Text;
rentDic[key].RentUser = this.textBox1.Text;
rentedDic.Add(rentDic[key].No,rentDic[key]);
if (rentDic.ContainsKey(key))
{
rentDic.Remove(key);
}
BangDing(listView1,rentDic);
MessageBox.Show("已出租");
}
private void button4_Click(object sender, EventArgs e)
{
BangDing(listView2,rentedDic);
}
//进行还车结算
public void JieSuan()
{
string key = this.listView2.SelectedItems[0].Text;
rentedDic[key].RentDate = Convert.ToInt32(this.textBox2.Text);
rentDic.Add(rentedDic[key].No,rentedDic[key]);
double rentMoney = rentedDic[key].Vehicle();
if (rentedDic.ContainsKey(key))
{
rentedDic.Remove(key);
}
BangDing(listView2,rentedDic);
MessageBox.Show("租金为:",rentMoney.ToString());
}
private void button5_Click(object sender, EventArgs e)
{
JieSuan();
}
//新车入库操作
private void button6_Click(object sender, EventArgs e)
{
string no = this.textBox3.Text;
string name = this.textBox4.Text;
string color = this.textBox5.Text;
int services = Convert.ToInt32(this.textBox6.Text);
double renteverydaymoney = Convert.ToInt32(this.textBox7.Text);
string load = this.textBox8.Text;
//进行类型判断
if (load=="无")
{
inheri = new Car(color,renteverydaymoney,no,name,0,load,"",services);
}
else
{
inheri = new Truck(color,renteverydaymoney,no,name,0,load,"",services);
}
rentDic.Add(inheri.No,inheri);
MessageBox.Show("添加成功","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
//进行文本清空操作
foreach (TabPage page in tabControl1.TabPages)
{
foreach (Control control in page.Controls)
{
if (control is TextBox)
{
control.Text="";
}
}
}
}
}
}
您可能感兴趣的文章:c#实现KTV点歌系统C#图书管理系统 附源码下载C#实现学员信息管理系统C#实现简单学生信息管理系统C#实现餐饮管理系统C#实现餐饮管理系统完整版C#实现餐厅管理系统C#实现影院售票系统C#超市收银系统设计C#实现在线点餐系统