zoukankan      html  css  js  c++  java
  • 体检套餐管理系统






    using
    System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 第五章项目 { public class HealthCheckSet { //套餐类 public HealthCheckSet() { items = new List<HealthCheckItem>(); } public HealthCheckSet(string name, List<HealthCheckItem> items) { this.Name = name; this.items = items; } private string name; public string Name { get { return name; } set { name = value; } } private List<HealthCheckItem> items; public List<HealthCheckItem> Items { get { return items; } set { items = value; } } private int price; public int Price { get { return price; } } public void CalcPrice() { int sum = 0; foreach (HealthCheckItem item in items) { sum += item.Price; } this.price = sum; } } }
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace 第五章项目
    {
        //项目类
        public class HealthCheckItem
        {
            public HealthCheckItem(string name, int price, string description)
            {
                this.Name = name;//套餐名
                this.Price = price;//价格
                this.Description = description;//描述
            }
            private string name;
            public string Name
            {
                get { return name; }
                set { name = value; }
            }
    
    
            private string description;
            public string Description
            {
                get { return description; }
                set { description = value; }
            }
    
    
            private int price;
            public int Price
            {
                get { return price; }
                set { price = value; }
            }
        }
    }
            //用于保存单个项目
            HealthCheckItem height, weight, sight, hearing, liverFun, ekg;
            HealthCheckSet setA;
    
            public Frmgl()
            {
                InitializeComponent();
            }
            //初始化
            List<HealthCheckItem> AllItem = new List<HealthCheckItem>();
    
            List<HealthCheckItem> items = new List<HealthCheckItem>();
    
            public Dictionary<string, HealthCheckSet> healthset = new Dictionary<string, HealthCheckSet>();
            public Dictionary<string, HealthCheckItem> asd = new Dictionary<string, HealthCheckItem>();
            private void Frmgl_Load(object sender, EventArgs e)
            {
                //给lable 赋值
                lblSetName.Text = "";
                lblSetPrice.Text = "";
                this.btnAdd.Enabled = false;
                this.btnDel.Enabled = false;
                //窗体加载时调用各个方法
                InitItems();
                InitSets();
                InitHealthSetList();
       
            }
    
            public void InitItems()
            {
    
                height = new HealthCheckItem("身高", 5, "用于检查身高");
                weight = new HealthCheckItem("体重", 8, "用于检查体重");
                sight = new HealthCheckItem("视力", 10, "用于检查视力");
                hearing = new HealthCheckItem("听力", 10, "用于检查听力");
                liverFun = new HealthCheckItem("肝功能", 50, "用于检查肝功能");
                ekg = new HealthCheckItem("心电图", 100, "用于检查心电图");
    
                AllItem.Add(height);
                AllItem.Add(weight);
                AllItem.Add(sight);
                AllItem.Add(hearing);
                AllItem.Add(liverFun);
                AllItem.Add(ekg);
            }
    
    
    
            public void InitSets()
            {
                items = new List<HealthCheckItem>();
                items.Add(height);
                items.Add(weight);
                items.Add(sight);
                setA = new HealthCheckSet("入学体检", items);
                //计算价格
                setA.CalcPrice();
                //更新
                UpdateSet(setA);
                this.healthset.Add("入学体检", setA);
    
            }
    
    
    
    
            public void InitHealthSetList()
            {
                //绑定下拉框
                this.cboSets.Items.Clear();
                this.cboSets.Items.Add("请选择");
                foreach (string key in this.healthset.Keys)
                {
                    this.cboSets.Items.Add(key);
                }
                this.cboSets.SelectedIndex = 0;
    
            }  
    
    
            //更新套餐检查项目
            private void UpdateSet(HealthCheckSet set)
            {
                this.dgvHealthList.DataSource = new BindingList<HealthCheckItem>(set.Items);
            }
    
    
    
    
            private void cboSets_SelectedIndexChanged(object sender, EventArgs e)
            {
                string setName = this.cboSets.Text;//套餐列表名称
                if (setName == "请选择")
                {
                    //绑定数据
                    this.dgvHealthList.DataSource = new BindingList<HealthCheckItem>();
                    lblSetName.Text = "";
                    lblSetPrice.Text = "";
                    return;
                }
                //设置套餐名称
                lblSetName.Text = this.healthset[setName].Name;
                //设置套餐总价
                lblSetPrice.Text = this.healthset[setName].Price.ToString();
                //更新套餐检查项目
                UpdateSet(healthset[setName]);
                //此时设置删除按钮为可用状态
                this.btnDel.Enabled = true;
            }
    
    
    
    
    
            private void btnDel_Click(object sender, EventArgs e)
            {
                string setName = this.cboSets.Text;
                if (this.dgvHealthList.SelectedRows.Count == 0)
                {
                    MessageBox.Show("您没有选中删除项", "友情提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                int index = this.dgvHealthList.SelectedRows[0].Index;
                this.healthset[setName].Items.RemoveAt(index);
                this.healthset[setName].CalcPrice();
                UpdateSet(healthset[setName]);
                this.lblSetName.Text = setA.Name;
                this.lblSetPrice.Text = setA.Price.ToString();
                MessageBox.Show("删除成功!","友情提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
            }
    
    
    
    
    
            private void cboItems_SelectedIndexChanged(object sender, EventArgs e)
            {
                //绑定下拉框
                if (this.cboItems.Text != "请选择")
                {
                    this.btnAdd.Enabled = true;
                }
                else
                {
                    this.btnAdd.Enabled = false;
                }
            }
    
    
    
    
    
            private void btnAdd_Click(object sender, EventArgs e)
            {
              
                if (this.cboItems.SelectedIndex <0)
                {
                    MessageBox.Show("请选择一个项目");
                    return;
                }
    
    
                string cboSetText = this.cboSets.Text;
                if (cboSetText == "请选择")
                {
                    MessageBox.Show("请选择套餐");
                    return;
                }
              
                int index = this.cboItems.SelectedIndex;
                if (!this.healthset[cboSetText].Items.Contains(AllItem[index]))
                {
                   
                    //添加检查项目
                    this.healthset[cboSetText].Items.Add(AllItem[index]);
                    //重新计算总价格
                    this.healthset[cboSetText].CalcPrice();
                    //更新套餐检查项目y
                    UpdateSet(this.healthset[cboSetText]);
                    //刷新套餐名
                    this.lblSetName.Text = this.healthset[cboSetText].Name;//给labe赋值
                    //刷新价格
                    this.lblSetPrice.Text = this.healthset[cboSetText].Price.ToString();//赋值
                    MessageBox.Show("添加成功!", "友情提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    MessageBox.Show("a");
                    MessageBox.Show("该项目已存在!", "友情提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
    
    
    
    
    
    
            private void button1_Click(object sender, EventArgs e)
            {
                if (string.IsNullOrEmpty(this.txtname.Text.Trim()))
                {
                    MessageBox.Show("请输入套餐名称", "友情提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
    
                }
                HealthCheckSet Hch = new HealthCheckSet();
                this.healthset.Add(this.txtname.Text.Trim(), Hch);
                this.InitHealthSetList();
                this.cboItems.SelectedIndex = this.healthset.Count;
                MessageBox.Show("添加成功!", "友情提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
    
            }
  • 相关阅读:
    心态--编程+成长
    【Oracle】容易犯的错误和技巧集合
    【WPF】DataGrid的Row样式设置
    【WPF】给TextBox添上Label
    【Oracle】异常信息的加工处理
    【.Net 】Json和Xml解析
    【Win32 API】利用SendMessage实现winform与wpf之间的消息传递
    【WCF】利用WCF实现上传下载文件服务
    【Oracle】实现Oracle数据库对象的一键升级
    感触
  • 原文地址:https://www.cnblogs.com/SFHa/p/8746170.html
Copyright © 2011-2022 走看看