体检套餐管理系统 C#
效果图如下:
实现的功能主要有以下几个方面:
- 显示指定套餐的项目明细
- 向指定套餐添加检查项目信息
- 删除套餐中的项目信息
- 新建套餐
具体代码及注释如下:
1:创建体检项目维护系统中的检查项目类(HealthCheckItem)、体检套餐类(HealthCheckSet)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace 体检套餐管理系统
{//检查项目类class HealthCheckItem{private string description; //项目描述private string name; //项目名称private int price; //项目价格public string Description { get => description; set => description = value; }public string Name { get => name; set => name = value; }public int Price { get => price; set => price = value; }//带参构造函数public HealthCheckItem(string name,int price,string dec){this.Description = dec;this.Name = name;this.Price = price;}}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace 体检套餐管理系统
{//体检套餐类class HealthCheckSet{private List<HealthCheckItem> items; //检查项目private int price; //套餐价格,检查项目的价格之和private string name; //套餐名称public int Price { get => price; set => price = value; }public string Name { get => name; set => name = value; }public List<HealthCheckItem> Items { get => items; set => items = value; }//套餐价格计算方法public void CalcPrice(){int totalPrice = 0;//循环累加体检项目的价格,获取套餐价格foreach (HealthCheckItem item in this.items){totalPrice += item.Price;}this.Price = totalPrice; //赋值给当前套餐价格}//无参构造实例化itemspublic HealthCheckSet(){items = new List<HealthCheckItem>();}//带参构造方法public HealthCheckSet(string name,List<HealthCheckItem> items){Name = name;Items = items;}}
}
2:使用集合储存对应的数据,具体看代码和注释
注释一看就明白
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 FrmMadin : Form{//采用泛型集合List保存所有的体检项目List<HealthCheckItem> AllItems = new List<HealthCheckItem>();//采用泛型集合List保存套餐中的体检项目List<HealthCheckItem> items = new List<HealthCheckItem>();//定义几个检查项目,用于初始化HealthCheckItem a1, a2, a3, a4, a5;//定义一个系统默认检查套餐“入学体检”HealthCheckSet ruxue;//用字典保存套餐集合Dictionary<string,HealthCheckSet> Heal = new Dictionary<string,HealthCheckSet>();public FrmMadin(){InitializeComponent();}//窗体加载事件private void FrmMadin_Load(object sender, EventArgs e){label6.Text = "";label7.Text = "";//调用绑定检查项目下拉框方法BangDing();//调用绑定检查套餐下拉框方法TaoCanBang();button2.Enabled = false;button3.Enabled = false;}//删除事件private void button3_Click(object sender, EventArgs e){DelectSet();}//添加事件private void button2_Click(object sender, EventArgs e){TianJia();}//添加套餐事件private void button1_Click(object sender, EventArgs e){TianJaiTaoCan();}//初始化几个检查项目,并绑定下拉框public void BangDing(){a1 = new HealthCheckItem("身高",5,"用于检查身高");a2 = new HealthCheckItem("体重",5,"用于检查体重");a3 = new HealthCheckItem("听力",15,"用于检查听力");a4 = new HealthCheckItem("B超",30,"用于检查B超");a5 = new HealthCheckItem("心电图",50,"用于检查心脏");//添加到泛型集合中AllItems.Add(a1);AllItems.Add(a2);AllItems.Add(a3);AllItems.Add(a4);AllItems.Add(a5);//添加“请选择”this.comboBox2.Items.Add("请选择");//循环向CombBox控件中添加数据foreach (HealthCheckItem item in AllItems){comboBox2.Items.Add(item.Name);}//默认选中第一项comboBox2.SelectedIndex = 0;}//初始化套餐,及绑定套餐列表public void TaoCanBang(){//创建泛型集合,保存套餐中的体检项目items = new List<HealthCheckItem>();items.Add(a1);items.Add(a2);items.Add(a4);//创建一个检查套餐对象ruxue = new HealthCheckSet("入学体检",items);//计算套餐价格ruxue.CalcPrice();//向套餐集合中添加一个检查套餐对象Heal.Add("入学体检", ruxue);//调用加载体检套餐下拉列表方法JiaZaiTiJian();}//加载体检套餐下拉列表方法public void JiaZaiTiJian(){//加载前,先清除下拉框数据comboBox1.Items.Clear();//绑定套餐下拉列表comboBox1.Items.Add("请选择");//循环向套餐下拉框中添加数据foreach (string item in Heal.Keys){comboBox1.Items.Add(item);}//默认选中第一项comboBox1.SelectedIndex = 0;}/// <summary>/// 绑定dataGridView,填充数据/// </summary>private void UpdateSet(HealthCheckSet hls){//绑定dataGridView,填充数据dataGridView1.DataSource = new BindingList<HealthCheckItem>(hls.Items);}//当套餐下拉框发生改变时,加载出相应的检查项目private void comboBox1_SelectedIndexChanged(object sender, EventArgs e){//接收下拉框控件中的文本string cboName = comboBox1.Text;if (cboName == "请选择"){dataGridView1.DataSource = null;label6.Text = "";label7.Text = "";return;}//设置套餐名称,通过Key键访问套餐名称label6.Text = Heal[cboName].Name;//设置套餐价格,label7.Text = Heal[cboName].Price.ToString();//调用绑定dataGridView方法UpdateSet(Heal[cboName]);button3.Enabled = true;button2.Enabled = true;}/// <summary>/// 删除检查项目/// </summary>public void DelectSet(){//判断是否选中检查项目if (dataGridView1.SelectedRows.Count > 0){//获取用户选中的索引int ioo = dataGridView1.SelectedRows[0].Index;//用户选择的套餐文本string name = comboBox1.Text;//通过Key键,判断套餐,再通过套餐找到检查项目,最后通过索引删除检查项目。Heal[name].Items.RemoveAt(ioo);//重新计算价格Heal[name].CalcPrice();//重新绑定UpdateSet(Heal[name]);//重新接收总价格label7.Text = Heal[name].Price.ToString(); }else{MessageBox.Show("请选中一项检查项目");}}/// <summary>/// 添加检查项目方法/// </summary>public void TianJia(){//判断是否选中检查项目中的项if (comboBox2.SelectedIndex == 0){MessageBox.Show("请选择一个添加项目");return;}//接收套餐名称string cboSetText = comboBox1.Text;//接收选中的检查项目的索引int index = comboBox2.SelectedIndex - 1;//判断要添加的检查项目,是否已经存在,存在返回true,不存在返回falseif (!this.Heal[cboSetText].Items.Contains(AllItems[index])){//向该套餐中添加检查项目this.Heal[cboSetText].Items.Add(AllItems[index]);//重新计算价格Heal[cboSetText].CalcPrice();//设置套餐名称,通过Key键访问套餐名称label6.Text = Heal[cboSetText].Name;//设置套餐价格,label7.Text = Heal[cboSetText].Price.ToString();//重新绑定数据UpdateSet(Heal[cboSetText]);MessageBox.Show("添加成功!");}else{MessageBox.Show("该检查项目已存在!");}}//添加套餐方法public void TianJaiTaoCan(){if (textBox1.Text.Equals(string.Empty)){MessageBox.Show("请输入套餐名称!");return;}else{//循环判断要添加的套餐是否重复foreach (string item in Heal.Keys){if (item.Equals(textBox1.Text)){MessageBox.Show("套餐名称重复");return;}}//创建体检套餐类HealthCheckSet hs = new HealthCheckSet();//添加到泛型集合中Heal.Add(textBox1.Text,hs);//调用加载体检套餐下拉列表的方法JiaZaiTiJian();Heal[textBox1.Text].Name = textBox1.Text;}}}
}
体检套餐管理系统 C#相关推荐
- java集合体检套餐管理系统_体检套餐管理系统
体检套餐管理系统 首先搭建一个窗体 创建体检项目的两个类一个是检查项目类(HealthCheckItem),另一个是套餐类(HealthCheckSet) 在HealthCheckItem类 中有 项 ...
- 案例 体检套餐管理系统 需求一览 c# 1614099219
案例 体检套餐管理系统 需求一览 c# 1614099219 界面一览 步骤一 窗体搭建 查看与删除功能 给套餐添加检察项目 注意: 可帮助查询对象是否在数组中 列表.Contains(数据) 新建套 ...
- 第五章项目 体检套餐管理系统
1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Da ...
- 05章 体检套餐管理系统
1:搭建窗体 2:用户自定义类:HealthCheckItem和HealthCheckSet 1 namespace 体检套餐管理2 {3 public class HealthCheckItem4 ...
- C# 体检套餐管理系统
1.创建体检项目维护系统中的检查项目类 ,体检套餐类和一个泛型类如下图 2.窗体的搭建,如下图: 3.编写代码: using System; using System.Collections.Gene ...
- java 体检套餐_体检套餐管理系统的综合版
步骤: 定义几个类: HealthCheckItem类:检查项目 属性: public string Description { get; set; }public int Price { get; ...
- C#oop体检套餐管理系统
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- java集合体检套餐管理系统_基于ssm vue的综合项目 健康体检管理系统-第六章
移动端开发对体检预约进行的查询 当页面加载完毕时,利用vue的钩子函数 已加载页面就直接查询数据将数据进行渲染 created() { axios.post("/setmeal/getSet ...
- 体检套餐管理系统 0421
界面 结构分析 项目中的数据结构
- 基于Spring+SpringMVC+hibernate实现的体检中心管理系统
源码及论文下载: http://www.byamd.xyz/tag/java/ 摘 要 随着人们生活水平的不断提高,人们的保健意识随之增强,体检已普遍成为人们保健的重要部分.特殊职业的体检.各种职业病 ...
最新文章
- 在YII2框架中使用UEditor编辑器发布文章
- php上传图片到非项目目录,前端页面的读取问题
- LED灯随机亮起几个灯
- Linux系统里存在两个剪切板
- Arduino--电容式土壤湿度传感器使用及原理
- weblogic下载安装
- GBK内码字符串转Unicode字符串
- 《软件测试方法和技术》电子课件下载
- 致远互联开始向云端生态发力奔跑
- PDF文档加密签名处理
- 8、乐趣国学—“不迁怒,不贰过”
- SpringMVC:生成Excel和PDF
- java jks 转pfx_JKS、BKS、PFX证书格式之间转换
- c语言错误c2059 void,c2059(c语言错误代码c2059)
- 什么是长连接和短连接,他们的定义区别及应用场景?
- 某代工大厂的勒索病毒处理案例
- xcode7.1生成打包上传时需要注意的东西
- 百度地图常用jsapi
- 【名词解释】LTE终端的五模、七模、十频、十一频
- windows黑客编程技术之隐藏技术(进程伪装,傀儡进程,进程隐藏)
热门文章
- 主板插线接口大全图解
- 人工智能可以替代人类?今天要来说说人工智能与人类意识到底差距在哪里!...
- JN5169 ZigBee 3.0 开发环境搭建
- 2019第四次新生周赛——YZJ的牛肉干
- 验证牛顿公式的局部收敛性,并找到对于牛顿公式不收敛(发散)的函数,比较二分法与牛顿公式的收敛速度
- 2022-2027年中国新能源汽车功率电子行业市场全景评估及发展战略规划报告
- js html title属性,HTML DOM title 属性
- iphone屏幕镜像如何全屏_苹果手机投到电视上能全屏嘛
- Pytorch深度学习实战教程(四):必知必会的炼丹法宝
- [la P4487] Exclusive-OR