客户管理系统之模块设计(四)

2,添加客户和修改客户模块

关于客户的添加模块和修改模块均使用的是一个窗体,其其区别是根据向窗体中所传递的参数来实现的,这个模块的客户名称,性别和重要程度是必填项,当添加客户时,其主要功能就是向CustomerManagement数据库的customer数据表中插入客户的基本信息;当更改客户信息时,其主要的功能就是更改CustomerManagement数据库中的customer数据表中的一条数据记录。

添加或修改客户模块的示例:

(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>

添加ID属性,这个属性非常重要,它用来区分是添加客户,还是修改客户。

(2)编写根据ID显示客户资料的代码为:

<span style="font-size:18px;">        private void showChildren1(int t)//根据ID显示客户资料
        {
            SqlDataReader dr;
            db.runSql("select * from customer where id="+t,out dr);
            if (dr.Read())//显示出客户信息
            {
                tbName.Text = dr["useName"].ToString();
                cm.cbbIndexByText(cbbNation, dr["nation"].ToString());
                dtpBrithday.Value = DateTime.Parse(dr["brithday"].ToString());
                cm.cbbIndexByText(cbbSex,dr["sex"].ToString());
                tbCard.Text = dr["IDcard"].ToString();
                tbLove.Text = dr["love"].ToString();
                cm.cbbIndexByText(cbbMarriage,dr["marriage"].ToString());
                cm.cbbIndexByText(cbbConcernment, dr["source"].ToString());
                cm.cbbIndexByText(cbbLevel, dr["levels"].ToString());
                cm.cbbIndexByText(cbbEarning, dr["earning"].ToString());
                cm.cbbIndexByText(cbbSource, dr["concernment"].ToString());
                tbMobile.Text = dr["mobile"].ToString();
                tbTel.Text = dr["tel"].ToString();
                tbQQ.Text = dr["QQ"].ToString();
                cm.cbbIndexByText(cbbKultur,dr["Kultur"].ToString());
                tbEmail.Text = dr["Email"].ToString();
                cm.cbbIndexByText(cbbProvince,dr["province"].ToString());
                cm.cbbIndexByText(cbbCity,dr["city"].ToString());
                tbAddress.Text = dr["address"].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 addChildren1 : 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 addChildren1()//构造函数
        {
            InitializeComponent();
        }

        private void btn_close_Click(object sender, EventArgs e)//关闭按钮的Click事件
        {
            Close();//关闭窗体
        }

        private void addChildren1_Load(object sender, EventArgs e)
        {
            try
            {
                cbbNation.SelectedIndex=0;//选择第一项
                cbbMarriage.SelectedIndex = 0;//选择第一项
                cbbSource.SelectedIndex = 0;//选择第一项
                cbbKultur.SelectedIndex = 0;//选择第一项
                cbbConcernment.SelectedIndex = 0;//选择第一项
                cbbLevel.SelectedIndex = 0;//选择第一项
                if (_id != 0)
                {
                    Text = "客户管理信息修改";//设置窗体标签
                    btn_add.Text = "修改";//设置按钮标签
                    showChildren1(_id);//显示数据
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());//显示出错信息
            }
        }

        private void showChildren1(int t)//根据ID显示客户资料
        {
            SqlDataReader dr;
            db.runSql("select * from customer where id="+t,out dr);
            if (dr.Read())//显示出客户信息
            {
                tbName.Text = dr["useName"].ToString();
                cm.cbbIndexByText(cbbNation, dr["nation"].ToString());
                dtpBrithday.Value = DateTime.Parse(dr["brithday"].ToString());
                cm.cbbIndexByText(cbbSex,dr["sex"].ToString());
                tbCard.Text = dr["IDcard"].ToString();
                tbLove.Text = dr["love"].ToString();
                cm.cbbIndexByText(cbbMarriage,dr["marriage"].ToString());
                cm.cbbIndexByText(cbbConcernment, dr["source"].ToString());
                cm.cbbIndexByText(cbbLevel, dr["levels"].ToString());
                cm.cbbIndexByText(cbbEarning, dr["earning"].ToString());
                cm.cbbIndexByText(cbbSource, dr["concernment"].ToString());
                tbMobile.Text = dr["mobile"].ToString();
                tbTel.Text = dr["tel"].ToString();
                tbQQ.Text = dr["QQ"].ToString();
                cm.cbbIndexByText(cbbKultur,dr["Kultur"].ToString());
                tbEmail.Text = dr["Email"].ToString();
                cm.cbbIndexByText(cbbProvince,dr["province"].ToString());
                cm.cbbIndexByText(cbbCity,dr["city"].ToString());
                tbAddress.Text = dr["address"].ToString();
                dtpAddTime.Value = DateTime.Parse(dr["addTime"].ToString());
            }
            else
            {
                MessageBox.Show("你所要修改的项不存在,系统将关闭此窗体!");
                Close();
            }
            dr.Close();
        }

        private void btn_add_Click(object sender, EventArgs e)//btn_add按钮的Click事件
        {
            if (tbName.Text.Trim().Length<=0)//判断是否输入用户名
            {
                MessageBox.Show("请输入用户名称!");
                tbName.Focus();//获取焦点
                btn_add.DialogResult = DialogResult.None;
                return;
            }
            if (cbbSex.SelectedIndex<0)//判断是否选择了性别
            {
                MessageBox.Show("请选择性别!");
                cbbSex.Focus();//获取焦点
                btn_add.DialogResult = DialogResult.None;
                return;
            }
            if (cbbEarning.SelectedIndex < 0)//判断是否选择了重要程度
            {
                MessageBox.Show("请选择重要程度!");
                cbbEarning.Focus();//获取焦点
                btn_add.DialogResult = DialogResult.None;
                return;
            }
            if (tbMobile.Text.Trim().Length<=0||tbTel.Text.Trim().Length<=0)//判断手机号码和联系电话号码是否至少填写了一个
            {
                MessageBox.Show("请将电话号码和手机号码至少填写一个!");
                tbMobile.Focus();//获取焦点
                btn_add.DialogResult = DialogResult.None;
                return;
            }
            string sql = "";
            string Rstatus = "添加";
            if (_id==0)//添加客户信息的字符串
            {
                sql="insert into customer(userName,nation,brithday,sex,IDcard,love,marriage,source,levels,earning,concernment,mobile,tel,QQ,Kultur,Email,province,city,address,addTime)values"
                    +"('"+tbName.Text.Trim()+"','"+cbbNation.Text+"','"+dtpBrithday.Value+"','"+cbbSex+"','"+tbCard.Text.Trim()+
                "','"+tbLove.Text.Trim()+"','"+cbbMarriage.Text+"','"+cbbConcernment.Text+"','"+cbbLevel.Text+
                "','"+cbbEarning.SelectedItem+"','"+cbbSource.Text+"','"+tbMobile.Text.Trim()+"','"+
                tbTel.Text.Trim()+"','"+tbQQ.Text.Trim()+"','"+cbbKultur.Text+"','"+tbEmail.Text.Trim()+
                "','"+cbbProvince.Text+"','"+cbbCity.Text+"','"+tbAddress.Text.Trim()+"','"+dtpAddTime.Value+"')";
            }
            else//修改客户信息的字符串
	        {
                Rstatus="修改";
                sql="update customer set userName='"+
                    tbName.Text.Trim()+"',nation='"+
                    cbbNation.Text+"',brithday='"+
                    dtpBrithday.Value+"',sex='"+
                    cbbSex.Text+"',IDcard='"+
                    tbCard.Text.Trim()+"',love='"+
                    tbLove.Text.Trim()+"',marriage='"+
                    cbbMarriage.Text+"',source='"+
                    cbbConcernment.Text+"',levels='"+
                    cbbLevel.Text.Trim()+"',earning='"+
                    cbbEarning.Text.Trim()+"',concernment='"+
                    cbbSource.Text.Trim()+"',mobile='"+
                    tbMobile.Text.Trim()+"',tel='"+
                    tbTel.Text.Trim()+"',QQ='"+
                    tbQQ.Text.Trim()+"',Kultur='"+
                    cbbKultur.Text.Trim()+"',Email='"+
                    tbEmail.Text.Trim()+"',province='"+
                    cbbProvince.Text.Trim()+"',city='"+
                    cbbCity.Text.Trim()+"',address='"+
                    tbAddress.Text.Trim()+"',addTime='"+
                    dtpAddTime.Value+"'where id="+_id;
	        }
            db.runSql(sql);//执行sql语句
            MessageBox.Show(Rstatus+"成功!");
        }
    }
}
</span>

运行整个程序的结果为;

添加客户窗体:

修改客户信息资料窗体:

时间: 2024-10-06 07:15:30

客户管理系统之模块设计(四)的相关文章

客户管理系统之模块设计(五)

3,浏览模块设计 有关客户管理浏览模块设计,主要是根据查询条件,在DataGridView控件中 显示有符合条件的数据,如不加条件,则显示所有数据.这个模块在设计客户管理模块的时候就已经设计了,这里就不再多说了. 三,服务模块设计 对服务模块的设计与客户模块设计基本保持相同的格局,要重点从三块来设计,一是添加模块,二是更改模块,三是浏览模块.有了客户模块设计的样例,对于下面的就很方便了. 1,服务管理模块 服务管理模块在窗体上包含一个ToolStrip控件和一个DataGridView控件.To

客户管理系统之模块设计(二)

二,主模块设计 主模块设计示例: 上一次提到MDImain窗体,就是这次模块设计的主要设计对象.主模块主要是为管理员起到导航作用,主要分为菜单栏和主体两部分,管理员可根据想要操作的模块,在菜单栏或是在主体中查到对应导航. 主模块中添加一个MenuStrip控件,一个Label控件,一个StatuStrip控件,五个个Panel控件和四个LinkLabel控件,有关MenuStrip控件属性值设置和StatusStrip控件属性值设置可查看对应程序,其他控件和窗体的属性设置文档为: MenuStr

客户管理系统之模块设计(三)

三,客户模块设计 对客户管理模块的设计,要重点从三块来设计.一是加入模块,二是更改模块,三是浏览模块. 1.客户管理模块 客户管理模块在窗口上包括一个ToolStrip控件和一个DataGridView控件.ToolStrip控件中加入三个Label项.用来对DataGridView控件中所选择的行进行加入.删除和改动. 客户管理模块的设计演示样例为: 客户管理模块设计的窗口和控件的属性设置文档为: 接着就是要进行代码的写入: (1)对于toolStrip1控件的代码写入是基本的.这里面包括加入

客户管理系统之模块设计(十)

3,客户选择模块设计 客户选择模块是用来提供对已有用户的选择,其中左边用一个ListBox控件显示所有已经添加的客户,右边用一个ListBox显示选择的客户,每次最多选择两个客户.然后还需要添加一个Person属性,用来返回所选择的人员给它的父窗体. 客户选择模块设计的示例为: 加载公共类和创建Person属性,代码为: <span style="font-size:18px;">common cm = new common();//创建公共类common对象 privat

客户管理系统之模块设计(八)

2,添加信息投诉和修改投诉信息模块 关于投诉信息的添加模块和修改模块均使用的是一个窗体,其其区别是根据向窗体中所传递的参数来实现的,这个模块的投诉主题,投诉客户和投诉内容是必填项,当添加时,投诉其主要功能就是向CustomerManagement数据库的inform数据表中插入服务的基本信息:当更改投诉信息时,其主要的功能就是更改CustomerManagement数据库中的inform数据表中的一条数据记录. 添加或修改投诉模块的示例: (1)加载公共类和创建ID属性,代码为: common

客户管理系统之模块设计(七)

三,投诉模块设计 对投诉管理模块的设计,要重点从三块来设计,一是添加模块,二是更改模块,三是浏览模块. 1,投诉管理模块 投诉管理模块在窗体上包含一个ToolStrip控件和一个DataGridView控件.ToolStrip控件中添加三个Label项,用来对DataGridView控件中所选择的行进行添加,删除和修改. 投诉管理模块的设计示例为: 投诉管理模块设计的窗体和控件的属性设置文档为: 接着就是要进行代码的写入: (1)对于toolStrip1控件的代码写入是主要的,这里面包含添加,修

客户管理系统之模块设计(六)

2,添加服务信息和修改服务信息模块 关于服务信息的添加模块和修改模块均使用的是一个窗体,其其区别是根据向窗体中所传递的参数来实现的,这个模块的服务主题,服务客户和服务内容是必填项,当添加服务时,其主要功能就是向CustomerManagement数据库的customer数据表中插入服务的基本信息:当更改服务信息时,其主要的功能就是更改CustomerManagement数据库中的servers数据表中的一条数据记录. 添加或修改服务模块的示例: (1)加载公共类和创建ID属性,代码为: <spa

客户管理系统之数据库设计

客户管理系统的数据库设计使用SQL Server 2008数据库开发,客户管理系统(Customermanagement)一共包含七个表,下面一一介绍: 一,存储管理员账号和密码的manager表 存储管理员账号和密码的manager表文档为: 二,存储客户资料的customer表 存储客户资料的customer表文档 三,存储投诉信息的inform表 存储投诉信息的inform表文档 四,存放服务的servers表 存放服务的servers表文档 五,存放名族信息的nation表 存放名族信息

GPS部标平台的架构设计(四)-百度地图设计

部标GPS软件平台之百度地图设计 地图是客户端中不可缺少的一个模块,很多人在设计和画图时候,喜欢加上地图引擎这样高大上的字眼,显得自己的平台有内涵,说白了就是用第三方的SDK来开发,早期的GPS监 控软件用的都是mapx.mapxtrem.acrgis之类的,使用的都是本地地图.不仅要购买正版地图,还要购买价格不菲的地图引擎license,服务器版的部署的时候,还要绑定到服务器ID上,现在这种开发方式已被抛弃.现在的百度地图.谷歌地图提供的SDK接口丰富,开发方便,系统稳定,大家都用的很爽. 在