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

3,浏览模块设计

有关客户管理浏览模块设计,主要是根据查询条件,在DataGridView控件中 显示有符合条件的数据,如不加条件,则显示所有数据。这个模块在设计客户管理模块的时候就已经设计了,这里就不再多说了。

三,服务模块设计

对服务模块的设计与客户模块设计基本保持相同的格局,要重点从三块来设计,一是添加模块,二是更改模块,三是浏览模块。有了客户模块设计的样例,对于下面的就很方便了。

1,服务管理模块

服务管理模块在窗体上包含一个ToolStrip控件和一个DataGridView控件。ToolStrip控件中添加三个Label项,用来对DataGridView控件中所选择的行进行添加,删除和修改。

服务管理模块的设计示例为:

服务管理模块设计的窗体和控件的属性设置文档为:

然后就是窗体代码的写入:

(1)对于toolStrip1控件的代码写入是主要的,这里面包含添加,修改,删除三项操作:

       private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            if (e.ClickedItem.Name == "tslAdd2")//添加
            {
                showAddChildren2(0);//弹出添加服务窗体
            }
            if (e.ClickedItem.Name == "tslMod2")//修改
            {
                modAddChildren2();//弹出修改服务窗体
            }
            if (e.ClickedItem.Name == "tslDel2")//删除
            {
                DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo);
                if (status == DialogResult.Yes)
                {
                    delAddChildren2();//删除所选择的服务
                }
            }
        }

(2)其次就是对添加窗体,修改窗体和删除三项内容的代码编辑,实际上服务信息添加和服务信息修改两个窗体本身是一个窗体。

完整的Children2服务窗体的程序代码为:

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 Children2 : Form
    {
        common cm = new common();//加载公共类common
        database db = new database();//加载公共类database

        public Children2()//构造函数
        {
            InitializeComponent();
        }

        private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            if (e.ClickedItem.Name == "tslAdd2")//添加
            {
                showAddChildren2(0);//弹出添加服务窗体
            }
            if (e.ClickedItem.Name == "tslMod2")//修改
            {
                modAddChildren2();//弹出修改服务窗体
            }
            if (e.ClickedItem.Name == "tslDel2")//删除
            {
                DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo);
                if (status == DialogResult.Yes)
                {
                    delAddChildren2();//删除所选择的服务
                }
            }
        }

        private void Children2_Load(object sender, EventArgs e)//服务管理窗体的load事件
        {
            showServers();//显示客户
        }

        private void showAddChildren2(int t)//弹出添加或修改窗体
        {
            addChildren2 c2 = new addChildren2();//创建添加服务或修改服务窗体的对象
            c2.ID = t;
            DialogResult result = c2.ShowDialog();
            if (result == DialogResult.OK)
            {
                showServers();
            }
        }

        private void modAddChildren2()//弹出修改服务信息窗体
        {
            if (dgv2.RowCount > 0)//存在行
            {
                if (dgv2.SelectedRows.Count == 1)//选择行
                {
                    string value = dgv2.SelectedRows[0].Cells[0].Value.ToString();
                    if (value != null && value != string.Empty)//判定非空
                    {
                        showAddChildren2(int.Parse(value));//弹出修改服务窗体
                    }
                    else
                    {
                        MessageBox.Show("所选行不存在数据!");
                    }
                }
                else
                {
                    MessageBox.Show("请选择一行要修改的数据!");
                }
            }
            else
            {
                MessageBox.Show("目前还没有数据!");
            }
        }

        private void delAddChildren2()//删除所选择服务
        {
            if (dgv2.SelectedRows.Count > 0)
            {
                for (int i = 0; i < dgv2.SelectedRows.Count; i++)
                {
                    string selectID = dgv2.SelectedRows[1].Cells[0].Value.ToString();
                    if (selectID != null && selectID != string.Empty)
                    {
                        db.runSql("delete servers where id=" + selectID);
                    }
                }
                showServers();
            }
        }

        private void showServers()//显示客户资料
        {
            cm.bindDgv(dgv2, "select * from servers order by id desc");//以表格的形式显示客户资料
        }

    }
}

运行整个程序的结果显示为:

(1)点击菜单栏上的添加,显示添加服务信息的窗体:

(2)点击菜单栏上的修改,显示修改服务信息的窗体:

(3)点击菜单栏上的删除,显示删除服务信息的对话框:

时间: 2024-10-09 09:38:01

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

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

二,主模块设计 主模块设计示例: 上一次提到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

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

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

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

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

WisDom.Net 框架设计(五) 权限设计

WisDom.Net --权限设计 1.需求分析     基本在所有的管理系统中都离不开权限管理.可以这么说,权限管理是管理系统的核心所在. 权限管理说白一些就是每个人能够做什么,不能够做什么.可以说是一套规则.下面就说一下,在wisdom.net中的权限     1. 控制用户修改和删除数据.即 用户编辑和删除自己创建的数据,但是只能编辑和删除比自己权限小的人创建的数据     2. 模块的控制. 用户只能访问自己被授权访问的模块,不能访问其他模块     3. 用户被赋予不同的角色,各个角色