體驗套餐管理系統this
一:項目整體效果圖spa
二:首先建成兩個類orm
1.套餐類:HealthCheckSet(其中代碼)對象
public class HealthCheckSet
{
//HealthCheckItem的集合
public List<HealthCheckItem> Items { get; set; }
//套餐價格
public string Price { get; set; }
//套餐名稱
public string Namee { get; set; }
//構造方法
public HealthCheckSet(string name, List<HealthCheckItem> items)
{
this.Namee = name;
this.Items = items;
}ip
public void CalcPrice()
{
int totalPrice = 0;
foreach (HealthCheckItem item in Items)
{
totalPrice += int.Parse(item.Price);
}
this.Price = totalPrice.ToString();
}get
}string
2.項目名稱類 HealthCheckItem(其中代碼)it
public class HealthCheckItem
{
//項目描述
public string Description { get; set; }
//項目名稱
public string Nameee{ get; set; }
//項目價格
public string Price { get; set; }
public HealthCheckItem(string nameee, string description, string price)
{
this.Nameee = nameee;
this.Description = description;
this.Price = price;
}
}io
三:建立一個對象接收其中所有項目名稱,價格,描述form
HealthCheckItem list1, list2, list3, list4, list5, list6, list7;
public static List<HealthCheckItem> List = new List<HealthCheckItem>();
//建立一個新的對象來接受本身選定的檢查項的全部項
HealthCheckSet healthCheckset;
List<HealthCheckSet> ite = new List<HealthCheckSet>();
List<HealthCheckItem> items = new List<HealthCheckItem>();
public void Bick()
{
comboBox1.Items.Add("請選擇");
comboBox2.Items.Add("請選擇");
list1 = new HealthCheckItem("身高", "檢查身高多少", "5");
list2 = new HealthCheckItem("體重", "檢查體重多少", "5");
list3 = new HealthCheckItem("視力", "檢查視力多少", "10");
list4 = new HealthCheckItem("聽力", "檢查聽力多少", "5");
list5 = new HealthCheckItem("肝功能", "檢查肝功能多少", "60");
list6 = new HealthCheckItem("B超", "檢查B超多少", "60");
list7 = new HealthCheckItem("心電圖", "檢查心電圖多少", "50");
items.Add(list1);
items.Add(list2);
items.Add(list3);
items.Add(list4);
items.Add(list5);
items.Add(list6);
items.Add(list7);
foreach(HealthCheckItem item in items){
comboBox1.Items.Add(item.Nameee);
}
四:實現入學體檢套餐
//學生人學體檢
All.Add(list1);
All.Add(list2);
All.Add(list3);
healthCheckset = new HealthCheckSet("入學檢測", All);
ite.Add(healthCheckset);
// CalcPrice();
comboBox2.Items.Add(healthCheckset.Namee);
if (comboBox1.Text.Trim() == "請選擇")
{
dataGridView1.DataSource = new BindingList<HealthCheckItem>();
}
//this.bntName1.Enabled = false;
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
string a = this.comboBox2.Text;
this.lblName2.Text = a;
if (a != "請選擇")
{
//All.Add(list1);
//All.Add(list2);
//All.Add(list3);
foreach (HealthCheckSet item in ite)
{
healthCheckset = item;
lblName2.Text = item.Namee;
item.CalcPrice();
label3.Text = item.Price;
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
break;
}
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
}
else if (a=="請選擇")
{
this.lblName2.Text = null;
}
}
五:實現對套餐名進行賦值
tring a = this.comboBox2.Text;
this.lblName2.Text = a;
if (a != "請選擇")
{
//All.Add(list1);
//All.Add(list2);
//All.Add(list3);
foreach (HealthCheckSet item in ite)
{
healthCheckset = item;
lblName2.Text = item.Namee;
item.CalcPrice();
label3.Text = item.Price;
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
break;
}
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
}
else if (a=="請選擇")
{
this.lblName2.Text = null;
}
六:實現刪除功能
private void bntShan_Click(object sender, EventArgs e)
{
string d = dataGridView1.SelectedRows[0].Cells["Nameee"].Value.ToString();
DialogResult delete;
delete = MessageBox.Show("肯定要刪除嗎?", "舒適提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
if (delete == DialogResult.Yes)
{
foreach (HealthCheckItem item in All)
{
if (item.Nameee == d)
{
All.Remove(item);
MessageBox.Show("刪除成功!");
break;
}
}
}
healthCheckset.CalcPrice();
label3.Text = healthCheckset.Price;
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
}
七:實現對添加檢查項目名的代碼
//添加檢查項的方法
List<HealthCheckItem> All = new List<HealthCheckItem>();
public void UqdateChneckitem()
{
string name = comboBox1.Text;
for (int i = 0; i < All.Count;i++ ) {
if(name.Equals(All[i].Nameee)){
MessageBox.Show("已經有檢查項了!不能再添加了");
return;
}
}
All.Add(items[comboBox1.SelectedIndex-1]);
this.dataGridView1.DataSource = new BindingList<HealthCheckItem>(All);
}
private void bntName1_Click(object sender, EventArgs e)
{
UqdateChneckitem();
healthCheckset.CalcPrice();
label3.Text = healthCheckset.Price;
}
八:實現價格計算總數:
public void CalcPrice()
{
int totalPrice = 0;
foreach (HealthCheckItem item in Items)
{
totalPrice += int.Parse(item.Price);
}
this.Price = totalPrice.ToString();
}
九:在作這個項目思路必定要清晰,否則會很亂,影響完成別項!