客户管理系统之模块设计(六)
2015-06-04 11:28
225 查看
2,添加服务信息和修改服务信息模块
关于服务信息的添加模块和修改模块均使用的是一个窗体,其其区别是根据向窗体中所传递的参数来实现的,这个模块的服务主题,服务客户和服务内容是必填项,当添加服务时,其主要功能就是向CustomerManagement数据库的customer数据表中插入服务的基本信息;当更改服务信息时,其主要的功能就是更改CustomerManagement数据库中的servers数据表中的一条数据记录。
添加或修改服务模块的示例:
(1)加载公共类和创建ID属性,代码为:
添加ID属性,这个属性非常重要,它用来区分是添加服务信息,还是修改服务信息。
(2)编写根据ID显示服务信息的代码为:
完整窗体代码为:
运行整个程序的结果为;
添加服务窗体:
修改服务信息资料窗体:
3,浏览模块设计
有关服务管理浏览模块设计,主要是根据查询条件,在DataGridView控件中 显示有符合条件的数据,如不加条件,则显示所有数据。这个模块在设计服务管理模块的时候就已经设计了,这里就不再多说了。
关于服务信息的添加模块和修改模块均使用的是一个窗体,其其区别是根据向窗体中所传递的参数来实现的,这个模块的服务主题,服务客户和服务内容是必填项,当添加服务时,其主要功能就是向CustomerManagement数据库的customer数据表中插入服务的基本信息;当更改服务信息时,其主要的功能就是更改CustomerManagement数据库中的servers数据表中的一条数据记录。
添加或修改服务模块的示例:
(1)加载公共类和创建ID属性,代码为:
<span style="font-size:18px;"> common cm = new common();//加载公共类common database db = new database();//加载公共类database private int _id; public int ID//ID属性用于区分是添加服务还是修改服务信息 { get//取属性值 { return _id; } set { _id = value;//设置属性值 } }</span>
<span style="font-size:18px;"> </span>
添加ID属性,这个属性非常重要,它用来区分是添加服务信息,还是修改服务信息。
(2)编写根据ID显示服务信息的代码为:
<span style="font-size:18px;">private void showChildren2(int t)//根据ID显示客户资料 { SqlDataReader dr; db.runSql("select * from servers where id=" + t, out dr); if (dr.Read())//显示出服务信息 { tbServerTitle.Text = dr["title"].ToString(); tbUserName.Text = dr["userName"].ToString(); cm.cbbIndexByText(cbbServerType, dr["serverType"].ToString()); cm.cbbIndexByText(cbbServerMode, dr["serverMode"].ToString()); dtpStartTime.Value = DateTime.Parse(dr["startTime"].ToString()); dtpEndTime.Value = DateTime.Parse(dr["endTime"].ToString()); tbServerContent.Text = dr["serverContent"].ToString(); cm.cbbIndexByText(cbbFeedback, dr["feedback"].ToString()); tbRemark.Text = dr["remark"].ToString(); cm.cbbIndexByText(cbbResult, dr["result"].ToString()); dtpAddTime.Value = DateTime.Parse(dr["addTime"].ToString()); } else { MessageBox.Show("你所要修改的项不存在,系统将关闭此窗体!"); Close(); } dr.Close(); }</span>
完整窗体代码为:
<span style="font-size:18px;">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; using System.Data.SqlClient;//引入的命名空间 namespace 客户管理系统 { public partial class addChildren2 : Form { common cm = new common();//加载公共类common database db = new database();//加载公共类database private int _id; public int ID//ID属性用于区分是添加服务还是修改服务信息 { get//取属性值 { return _id; } set { _id = value;//设置属性值 } } public addChildren2() { InitializeComponent(); } private void btn_Select_Click(object sender, EventArgs e)//选择客户按钮的Click事件 { ClientSelect cs = new ClientSelect();//创建ClientSelect窗体对象 DialogResult result = cs.ShowDialog();//打开 if (result==DialogResult.OK) { tbUserName.Text = cs.Person;//取Person属性值 } } private void btn_Close_Click(object sender, EventArgs e)//关闭按钮的Click事件 { Close();//关闭窗体 } private void addChildren2_Load(object sender, EventArgs e) { try { cbbServerType.SelectedIndex = 0;//选择第一项 cbbServerMode.SelectedIndex = 0;//选择第一项 cbbFeedback.SelectedIndex = 0;//选择第一项 cbbResult.SelectedIndex = 0;//选择第一项 if (_id != 0) { Text = "服务管理信息修改";//设置窗体标签 btn_add.Text = "修改";//设置按钮标签 showChildren2(_id);//显示数据 } } catch (Exception ex) { MessageBox.Show(ex.Message.ToString());//显示出错信息 } } private void showChildren2(int t)//根据ID显示客户资料 { SqlDataReader dr; db.runSql("select * from servers where id=" + t, out dr); if (dr.Read())//显示出服务信息 { tbServerTitle.Text = dr["title"].ToString(); tbUserName.Text = dr["userName"].ToString(); cm.cbbIndexByText(cbbServerType, dr["serverType"].ToString()); cm.cbbIndexByText(cbbServerMode, dr["serverMode"].ToString()); dtpStartTime.Value = DateTime.Parse(dr["startTime"].ToString()); dtpEndTime.Value = DateTime.Parse(dr["endTime"].ToString()); tbServerContent.Text = dr["serverContent"].ToString(); cm.cbbIndexByText(cbbFeedback, dr["feedback"].ToString()); tbRemark.Text = dr["remark"].ToString(); cm.cbbIndexByText(cbbResult, dr["result"].ToString()); dtpAddTime.Value = DateTime.Parse(dr["addTime"].ToString()); } else { MessageBox.Show("你所要修改的项不存在,系统将关闭此窗体!"); Close(); } dr.Close(); } private void btn_add_Click(object sender, EventArgs e) { if (tbServerTitle.Text.Trim().Length<=0) { MessageBox.Show("请输入投诉主题");//判断是否输入投诉主题 tbServerTitle.Focus();//主题框获取焦点 return; } if (tbUserName.Text.Trim().Length<=0) { MessageBox.Show("请选择投诉客户");//判断是否选择投诉客户 btn_Select.Focus();//主题框获取焦点 return; } if (tbServerContent.Text.Trim().Length<=0) { MessageBox.Show("请输入服务内容");//判断是否输入投诉内容 tbServerContent.Focus();//主题框获取焦点 return; } string sql = ""; string Rstatus = "添加"; if (_id == 0)//添加服务信息的字符串 { sql = "insert into servers(title,userName,serverType,serverMode,startTime,endTime,serverContent,feedback,remark,result,addTime)values" + "('" + tbServerTitle.Text.Trim() + "','" + cbbServerType.Text + "','" + cbbServerMode.Text + "','" + dtpStartTime.Value + "','" + dtpEndTime.Value + "','" + tbServerContent.Text.Trim() + "','" + cbbFeedback.Text + "','" + tbRemark.Text.Trim() + "','" + cbbResult.Text + "','"+ dtpAddTime.Value + "')"; } else//修改服务信息的字符串 { Rstatus = "修改"; sql = "update servers set title='" + tbServerTitle.Text.Trim() + "',userName='" + tbUserName.Text + "',serverType='" + cbbServerType.Text + "',serverMode='" + cbbServerMode.Text + "',startTime='" + dtpStartTime.Value + "',endTime='" + dtpEndTime.Text.Trim() + "',serverContent='" + tbServerContent.Text.Trim() + "',feedback='" + cbbFeedback.Text + "',remark='" + tbRemark.Text.Trim() + "',result='" + cbbResult.Text + "',addTime='" + dtpAddTime.Value + "'where id=" + _id; } db.runSql(sql);//执行sql语句 MessageBox.Show(Rstatus + "成功!"); } } } </span>
运行整个程序的结果为;
添加服务窗体:
修改服务信息资料窗体:
3,浏览模块设计
有关服务管理浏览模块设计,主要是根据查询条件,在DataGridView控件中 显示有符合条件的数据,如不加条件,则显示所有数据。这个模块在设计服务管理模块的时候就已经设计了,这里就不再多说了。
相关文章推荐
- gunzip 和 unzip 解压文件到指定的目录
- 禁止页面F5/右键菜单栏
- Maven在Eclipse的基本使用
- Matlab中sortrows函数解析
- [转载]git 忽略某些文件
- yum update 报错Transaction Check Error
- KVC&KVO
- quartz储存方式之JDBC JobStoreTX
- SAT数学考试有哪些考试技巧
- RabbitMQ和kafka从几个角度简单的对比
- 【JS】如何用原生JS实现jQuery的ready方法
- android登陆记住密码
- Ubuntu 14.04 LTS 安装 文泉驿微米黑 字体到android studio
- 数据结构题目
- 异常
- 保存图片到相册后的回调方法
- 关于deselectRowAtIndexPath
- POJ3083 -- BFS和DFS
- static field and method in java
- vs2013 输出运行结果的黑窗口闪退,如何保留黑窗口?