usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;namespaceHealthCheck
{public partial classFrmMain : Form
{publicFrmMain()
{
InitializeComponent();
}private void FrmMain_Load(objectsender, EventArgs e)
{
cboItem.Items.Add("请选择");
cboItem.SelectedIndex= 0;
RenovateItem();
HealthCheckSetset = newHealthCheckSet();
RenovateList();
cboList.SelectedIndex= 0;
cboItem.Enabled= false;
btnAddItem.Enabled= false;
btnDeleteItem.Enabled= false;
}//更新检查项目列表
private voidRenovateItem()
{foreach (KeyValuePair item inHealthCheckItem.ItemDic)
{
cboItem.Items.Add(item.Key);
}
}//更新套餐列表
private voidRenovateList()
{
cboList.Items.Clear();
cboList.Items.Add("请选择");foreach (KeyValuePair> item inHealthCheckSet.SetDic)
{
cboList.Items.Add(item.Key);
}if (cboList.Items.Count>2)
{
cboList.SelectedIndex= cboList.Items.Count - 1;
}
}//套餐列表
private void cboList_SelectedIndexChanged(objectsender, EventArgs e)
{if (cboList.SelectedIndex>0)
{
lblChooseName.Text=cboList.Text;
cboItem.Enabled= true;
RenovateDGV();
}else{
cboItem.Enabled= false;
}
}///
///刷新DGV列表///
private voidRenovateDGV()
{
dgvHealthCheckInfo.DataSource= new BindingList(HealthCheckSet.SetDic[cboList.Text]);
lblChoosePrice.Text=PriceSum(cboList.Text).ToString();
}///
///检查总金额///
///
///
private int PriceSum(stringkey)
{int sum = 0;foreach (HealthCheckItem item inHealthCheckSet.SetDic[key])
{
sum+=item.Price;
}returnsum;
}//项目列表
private void cboItem_SelectedIndexChanged(objectsender, EventArgs e)
{if (cboItem.SelectedIndex>0)
{
btnAddItem.Enabled= true;
}else{
btnAddItem.Enabled= false;
btnDeleteItem.Enabled= false;
}
}//DGV单击事件
private void dgvHealthCheckInfo_CellClick(objectsender, DataGridViewCellEventArgs e)
{if (!btnDeleteItem.Enabled)
{
btnDeleteItem.Enabled= true;
}
}//删除检查项目
private void btnDeleteItem_Click(objectsender, EventArgs e)
{
DialogResult result= MessageBox.Show("您确定要删除吗?","警告!",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);if (result ==DialogResult.OK)
{if (dgvHealthCheckInfo.SelectedRows[0] != null && dgvHealthCheckInfo.SelectedRows[0].Cells[0] != null && dgvHealthCheckInfo.SelectedRows[0].Cells[0].Value != null)
{//删除 套餐中所选的与内置检查项目相匹配的项
HealthCheckSet.SetDic[cboList.Text].Remove(HealthCheckItem.ItemDic[dgvHealthCheckInfo.SelectedRows[0].Cells["clmItemName"].Value.ToString()]);
RenovateDGV();
}
}
}//添加检查项目
private void btnAddItem_Click(objectsender, EventArgs e)
{if(HealthCheckSet.SetDic[cboList.Text].Contains(HealthCheckItem.ItemDic[cboItem.Text]))
{
MessageBox.Show(cboList.Text+"套餐中已存在该检查项目!","错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
}else{
HealthCheckSet.DicAdd(HealthCheckSet.SetDic[cboList.Text],cboItem.Text);
RenovateDGV();
}
}//套餐添加
private void btnAdd_Click(objectsender, EventArgs e)
{if (txtName.Text!="")
{foreach (string item inHealthCheckSet.SetDic.Keys)
{if(txtName.Text.Equals(item))
{
MessageBox.Show("已经存在"+txtName.Text+"套餐!");return;
}
}
HealthCheckSet dic= newHealthCheckSet(txtName.Text);
RenovateList();
}
}
}
}