汽車租賃系統項目

汽車和卡車的父類

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="";

                   }

               }
           }
            
        }
    }
}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章