首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 工作总结
  • 工作计划
  • 心得体会
  • 竞聘演讲
  • 会议发言
  • 爱国演讲
  • 就职演说
  • 开业开幕
  • 思想学习
  • 征文演讲
  • 经验材料
  • 述职报告
  • 调研报告
  • 工作汇报
  • 年终总结
  • 申报材料
  • 学习体会
  • 企划方案
  • 活动方案
  • 技巧经验
  • 模板范例
  • 思想宣传
  • 经济工作
  • 工作报告
  • 组织人事
  • 反腐倡廉
  • 慰问贺电
  • 先进事迹
  • 思想汇报
  • 入党申请书
  • 党会发言
  • 先进性教育
  • 入团申请书
  • 个人简历
  • 演讲稿
  • 调查报告
  • 实习报告
  • 和谐社会
  • 观后感
  • 读后感
  • 作文范文
  • 自我鉴定
  • 讲话稿
  • 自查报告
  • (店铺管理)超市进销系统实验报告(优质)

    时间:2020-10-07 12:03:56 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:店铺 超市 实验

     (店铺管理)超市进销系统实验报告

     课 程 设 计

      课程名称:

     专业课程设计

     设计课题:

     超市进销存管理系统

     指导教师:

     方芳

     专业:

      电子信息工程

     班级:

     1382052

      姓名:

     郭国信

      学号:

     138205206

     电子信息工程

      专业 课程设计题单

     班级 1382052

     学生

      郭国信

     课程名称

      超市进销存管理系统

      课

     题

     设计要求

      利用 visual c#作为前台开发工具,SQLServer后台数据库管理,实现一超市进销存管理系统。

     实现具体功能:

      1

     基本信息管理(员工信息、供应商信息管理)

     2

     进货管理(商品进货,商品查询)

     3

     销售管理(商品销售、商品退货)

     4

     库存管理(库存统计、库存查询、库存报警)

      课 题 发 给 日 期

      2016.06.08

     课程设计完成日期

     2016.07.03

     指

      导

      教

      师

      方芳

     评语:

     评分:

      第一章

     摘要

     1.1 设计开发的意义 随着超市行业竞争日益激烈,提高进销存管理的工作效率,改善超市内部以及整个供应链各个环节的管理、调度及资源配置成为了超市当前必须考虑的问题。而解决这些问题的途径之一,就是将计算机引入到管理机制中来。随着技术的发展,超市会有很多连锁店,使用此超市管理系统,可以进行连网管理。

     1.2 设计应用系统的任务及目标 登录界面有普通员工和管理员,普通员工需要输入用户名和密码,管理员只需输入用户名即可进入。超市管理系统主界面有一个“欢迎光临”的滚动条。员工信息表和供应商信息表的查找按钮,鼠标只要一接触,便可自动查询,而不需要点击鼠标。(利用查找按钮事件的 MouseEnter 实现的)关闭超市管理系统主界面时,需要弹出一个对话框,是否需要关闭此系统。(通过登录界面验证用户的提示下,考虑到关闭此系统时是否确定需要关闭)

     1.3 设计开发及运行的软硬件环境 系统开发平台:

     Microsoft Visual Studio C#3.5 系统开发语言:

     Visual C#.NET

      数据库管理软件:Microsoft SQL Server 2005

     运行平台:

     Windows 窗体应用程序 运行环境:Microsoft Visual Studio 2008

     目录

     第一章

     摘要 ................................................................................................. 2 1.1 设计开发的意义 ................................................................................................ 2 1.2 设计应用系统的任务及目标 ........................................................................... 2 1.3 设计开发及运行的软硬件环境 ....................................................................... 2 第二章 系统分析与设计 ................................................................................. 4 2.1 系统需求分析 .................................................................................................... 4 2.1.1 数据流图 .................................................................................................. 4 2.1.2

     数据字典................................................................................................ 5 2.2

     数据库概念结构设计 ..................................................................................... 5 2.2.1 员工信息实体 E—R 图 ......................................................................... 5

      2.2.2 进货信息实体 E—R 图 ......................................................................... 6 2.2.3 供应商信息实体 E—R 图 ..................................................................... 6 2.2.4 库存信息实体 E—R 图 ......................................................................... 6 2.3 数据库逻辑,物理结构设计 ........................................................................... 7 2.3.1 关系模式 .................................................................................................. 7 2.3.2

     关系的属性设计 ................................................................................... 7 2.4 数据库的创建 .................................................................................................. 10 2.5 系统总体结构设计 .......................................................................................... 13 第三章

     系统开发及实现 .............................................................................. 14 3.1 界面设计效果 .................................................................................................. 14 3.1.1 登录界面 ................................................................................................ 14 3.1.2 员工信息 ................................................................................................ 15 3.1.3 供应商信息 ........................................................................................... 15 3.1.4 商品进货信息 ....................................................................................... 16 3.1.5 进货信息查询 ....................................................................................... 16 3.1.6 商品销售信息 ....................................................................................... 17 3.1.7 商品退货信息 ....................................................................................... 17 3.1.8 库存警报 ................................................................................................ 18 3.1.9 库存查询 ................................................................................................ 18 3.1.10 数据备份 .............................................................................................. 19 3.1.11 数据还原 ............................................................................................. 19 3.2

      实现方法 ...................................................................................................... 20

      第四章

      结论 ............................................................................................. 21 参考文献 ...................................................................................................... 22 附录 ............................................................................................................. 23 (1)、员工信息表窗体 frmEmpInfo 的代码:

     ..................................... 23 (2)、员工信息表方法 tb_EmpInfoMenthod 的代码:

     .................... 32

      第二章 系统分析与设计 2.1 系统需求分析 用户对进销存系统的需求具有普遍性。此超市管理系统适用于超市的采购、销售和仓库部门,对超市采购、销售及仓库的业务全过程进行有效控制和跟踪。使用此超市管理系统可有效减少盲目采购、降低采购成本、合理控制库存、减少资金占用并提高市场灵敏度,提升超市的市场竞争力。此系统采用人机交互的方式,界面美观友好。信息查询灵活、操作方便,数据存储安全可靠。能够对进货信息进行有效的管理。对用户输入的数据,进行严格的数据校验,尽可能避免人为错误。能够对商品销售信息进行有效的管理。允许顾客退货。能够准确、详细地管理商品库存信息。当库存的商品数量达到一定程序,给出提示。可以对数据库进行备份和还原。系统应最大限度地实现易维护性和易操作性。

     2.1.1 数据流图

      图 2.1

      2.1.2

     数据字典 此系统的登录界面有验证用户的信息,只要登录成功,才可进入超市管理系基本档案 销售管理 系统维护

      统的主窗体。主窗体可以连接到系统的所有功能菜单,包括基本档案,进货管理,销售管理,库存管理,系统维护。

     基本档案包括员工信息和供应商信息。员工信息表是因为开发过程中要考虑系统的安全性,不是任何人都可以操作系统的,才设置存储管理系统的员工信息表;供应商信息表是因为超市的经营离不开与供应商的合作,而每件商品对应不同的供应商,此时必须在数据库中建立一个供应商信息表,用于存储所有供应商信息。进货管理包括商品进货信息和进货信息查询,建立一个进货信息表是因为超市的运营离不开货物往来,日常货物的购买是非常重要的,此用于存储进货的详细信息。销售管理分为商品销售信息和商品退货信息,商品销售信息表为了时刻了解超市销售利润,需要对商品的销售情况有所了解;商品退货信息表是因为当顾客对某件商品不满意时,可以要求进货,同时超市经营者也要详细地了解退货信息。库存管理分为库存警报和库存查询。因为超市定期要对货物进行补充,在进货之前要了解剩余货物的数量,此时需要在数据库中建立一个库存信息表用于存储剩余货物的情况。系统维护包括数据备份和数据还原,以防数据丢失,所以需要备份数据和还原数据。

     2.2

     数据库概念结构设计 2.2.1 员工信息实体 E—R 图

      图 2.1

     2.2.2 进货信息实体 E—R 图

     图 2.2 2.2.3 供应商信息实体 E—R 图

     图 2.3

     2.2.4 库存信息实体 E—R 图

      图 2.4

     2.3 数据库逻辑,物理结构设计 2.3.1 关系模式

     Emp(EmpID,EmpName,EmpLoginName,EmpLoginPwd,EmpSex,EmpBirthday , EmpDept , EmpPost , EmpPhone , EmpPhoneM ,

      EmpAddress,EmpFlag)其中 EmpID 为主码; Company ( CompanyID , CompanyName , CompanyDirector ,ompanyPhoCne,CompanyFax,CompanyAddress,CompanyRemark,ReDateTime,Flag)其中 CompanyID 为主码;

     2.3.2

     关系的属性设计

      EmpID nvarchar 20 是 员工编号 EmpName nvarchar 20 否 员工姓名 EmpLoginName nvarchar 20 否 登录 ID EmpLoginPwd nvarchar 20 否 登录密码 EmpSex nvarchar 4 否 员工性别 EmpBirthday datetime 8 否 员工生日 EmpDept nvarchar 20 否 所属部门 EmpPost nvarchar 20 否 员工职位 EmpPhone nvarchar 20 否 家庭电话 EmpPhoneM nvarchar 20 否 手机号码 EmpAddress nvarchar 200 否 家庭住址 EmpFlag int 1 否 是否发布

     表 2.1 员工信息表

      CompanyID nvarchar 50 是 供应商编号 CompanyName nvarchar 100 否 供应商姓名 CompanyDirecto nvarchar 50 否 联系人姓名 ompanyPhoCne nvarchar 20 否 联系人电话 CompanyFax nvarchar 20 否 传真 CompanyAddres nvarchar 200 否 地址 CompanyRemark nvarchar 400 否 备注 ReDateTime datetime 8 否 加入日期 Flag int 1 否 是否发布 表 2.2 供应商信息表

     GoodID nvarchar 20 是 商品编号 EmpId nvarchar 20 否 操作员编号 JhCompName nvarchar 100 否 供应商名称 DepotName nvarchar 20 否 仓库名称 GoodsName nvarchar 50 否 商品名称 GoodsNum int 4 否 商品数量 GoodsUnit nvarchar 20 否 商品计量单位 GoodsJhPrice nvarchar 8 否 进货单价 GoodsSellPrice nvarchar 8 否 销售单价 GoodsNeedPrice nvarchar 8 否 应付金额 GoodsNoPrice nvarchar 8 否 实付金额

      GoodsRemark nvarchar 200 否 备注 GoodsTime datetime 8 否 进货时间 Flag int 4 否 删除标记 表 2.3 进货信息表

     SellID nvarchar 20 是 销售编号 KcID nvarchar 50 否 库存编号 GoodsID nvarchar 20 否 商品编号 EmpID nvarchar 20 否 员工编号 GoodsName nvarchar 50 否 商品名称 SellGoodsNum int 4 否 销售数量 SellGoodsTime datetime 8 否 销售时间 SellPrice nvarchar 8 否 销售单价 SellNeedPay nvarchar 8 否 应付金额 SellHasPay nvarchar 8 否 实付金额 SellRemark nvarchar 200 否 备注 SellFlag int 4 否 删除标记 表 2.4 商品销售信息表

     ThGoodsID nvarchar 50 是 退货商品编号 KcID nvarchar 50 否 库存编号

      GoodsID nvarchar 50 是 商品编号 SellID nvarchar 50 否 销售编号 EmpID nvarchar 20 否 操作员编号 ThGoodsName nvarchar 50 否 商品名称 ThGoodsNum int 4 否 退货数量 ThGoodsTime datetime 8 否 退货日期 ThGoodsPrice nvarchar 8 否 退货单价 ThNeedPay nvarchar 8 否 应付金额 ThHasPay nvarchar 8 否 已退款金额 ThGoodsResult nvarchar 200 否 退货原因 表 2.5 商品退货信息表

      表 2.6 库存信息表

     KcID nvarchar 50 否 库存编号 GoodsID nvarchar 50 是 商品编号 JhCompName nvarchar 100 否 供应商名称 KcDeptName nvarchar 20 否 仓库名称 kcGoodsName nvarchar 20 否 商品名称 KcNum int 4 否 库存数量 KcAlarmNum int 4 否 警报数量 KcUnit nvarchar 20 否 商品计量单位 KcTime datetime 8 否 进货时间 KcGoodsPrice nvarchar 8 否 进货价格 KcSellPrice nvarchar 8 否 销售价格 KcEmp nvarchar 50 否 进货人 KcRemark nvarchar 200 否 备注

      2.4 数据库的创建

     2.5 系统总体结构设计

     图 2.5

     第三章

     系统开发及实现 3.1 界面设计效果 3.1.1 登录界面

      3.1.2 员工信息

     3.1.3 供应商信息

      3.1.4 商品进货信息

     3.1.5 进货信息查询

      3.1.6 商品销售信息

     3.1.7 商品退货信息

     3.1.8 库存警报

     3.1.9 库存查询

      3.1.10 数据备份

      3.1.11 数据还原

     3.2

      实现方法 以员工信息表为例:

     1>. 使 用 的 控 件 :

     ToolStrip,Label,TextBox , DateTimePicke ,ComboBox,DataGridView. 2>.保存,取消,添加,修改,删除按钮的互斥更改。

     3>.用于初始化组件,将控件恢复到原始状态。

     4>.点击保存,取消,添加,修改,删除按钮时,可以实现数据的添加,修改和删除操作。

     5>.根据查询条件,并输入关键字,便可查询你想要查询的内容。

     6>.点击退出按钮,即可退出此窗体。

     7>. Label 为控件提供运行时信息或说明性文字。

     8>. TextBox 允许用户输入文本,并提供多行编辑和密码字符掩码功能。

     9>.DateTimePicker 控件,允许用户选择日期和时间,并以指定的格式显示。

     10>.ToolStrip 控件为此表提供工具栏。

      11>.ComboBox 显示一个可编辑的文本框,其中包括一个允许值下拉列表,需要指出的是当性别只有男女时,我们需要设它的 DropDownStyle 属性为DropDown,这样,才不允许用户更改性别信息。

     12>. DataGridView 是为了显示表的数据。

     13>.在员工信息表的方法里,做三个查询,一是用于登陆验证的查询,二是用于窗体载入的查询,三是用于 DataGridView 单元格触发时索引的数据中记录返回。

     14>.有添加,修改和删除的方法,来实现数据库的更新。

     15>.有一个自动生成客户编号的方法,而无需自己添加编号 以商品进货信息表为例:

     1>.同员工信息表一样,可以实现增删改查的功能,但其中多了一个控件TreeView。

     2>.TreeView 控件,填充商品类别信息。

     3>.在添加商品进货单价和数量时,会自动算出商品应付的金额。

     以数据备份为例:

     1>.添加一个 folderBrowserDialog 控件,显示一个对话框,提示用户选择文件夹。

     以数据还原为例:

     1>.添加一个 OpenFileDialog 控件,显示一个对话框,提示用户打开文件。

      第四章

      结论

     三个星期的时间非常快就过去了, 这三个星期我不敢说有很大的进步,但是还是了解了一些项目开发的过程。以前没有亲身经历过相关的设计课程,这次提供了一个很好的机会。

     这次的课程设计可以说是为毕业设计做的一个预演,真的做起来困难重重,深刻体会到做一个软件,里面需要的很多知识我们没有接触过,去图书馆找书的时候发现,我们学的仅仅是皮毛,还有很多东西需要我们去发掘,就算是借一本书看完它,我们还是会发现还有很多知识没有吃透,这需要我们不断的实践,不断地自学习,不断地发现问题去思考问题。

      从需求分析阶段,想充分了解自己所做的课题在客户或者超市中的需求,由

      于《软件工程》这门课大二时学的不深,画数据流图等等软件设计流程做起来很生疏,翻阅课本,和软件工程课老师上课的讲解,总算整了一个像样点的需求分析,但是也不知道是不是正确,根据数据流图,不断修改需求,由于这个课程设计没有连接外部设备,比如打印机,等,所以做的都是在实践阶段,根据设计的大概模式展开一步步的模块构造。

      经过不断地测试,不断地改进,其中还是发下了不少问题,第一次做这些工作,没有任何经验,甚至无从下手,还是很谢谢老师和同学的帮忙,从中也学到了一些代码的写法。

     我们学习并应用了 SQL 语言,对数据库的创建,删除,修改有了一定的了解。通过导入表和删除表,更改表学会了一些对表的操作。

     这次数据库课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。出于对知识的渴望,出于对新技术的好奇,出于对一切未知的求知。我完成了这次数据库课程设计,不过这只是我学习路上的驿站,未来十年.NET 的核心技术就是 XML 我会继续学习它,包括 jave 公司的 j2ee 我也很想试试,语言本来就是相通的,justdoit!语言并不重要毕竟它仅仅是工具,用好一个工具并不是一件值得为外人道的事情,主要是了解学习思想。古语说的好:学无止境啊!

      参考文献

     1. 钱雪忠

      《数据库原理及应用》

     北京:

     邮电大学出版社

      2007,8 第二版 2. 2.Bain T

      《SQL server 2000 数据仓库与 Analysis Services》

     中国电力出版社

      2003 3. 3.王珊

     《数据库技术与联机分析处理》

     北京:

     科学出版社

     1998 4. 肖遥

     《JSP 的 SQLServer 数据库访问技术》

     2009 5. 史志国

     《基于 JSP 的教务管理系统设计》

      2008

     附录

     (1)、员工信息表窗体 frmEmpInfo 的代码:

     using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using Shop.GoodMenthod; using Shop.ClassInfo;

     namespace Shop {

      public partial class frmEmpInfo : Form

      {

      public frmEmpInfo()

      {

      InitializeComponent();

      }

      tb_EmpInfo EmpClass = new tb_EmpInfo();

      tb_EmpInfoMenthod tbMenthod = new tb_EmpInfoMenthod();

      //窗体载入时,将全部记录载入到控件中

      private void frmEmpInfo_Load(object sender, EventArgs e)

      {

      tbMenthod.tb_EmpInfoFind("", 5, dataGridView1);

      this.cbxCondition.Text = "员工姓名";//窗体载入时默认的查询条件索引

     }

     /// <summary>

      /// 点击查询按钮

      /// </summary>

      private void txtOK_Click(object sender, EventArgs e)

      {

      string P_Str_selectcondition = this.cbxCondition.Text;//查询类别索引

      if (P_Str_selectcondition == null)

      {

      MessageBox.Show("请选择查询条件!");

      return;

      }

      if (this.txtKeyWord.Text == "")

      {

      MessageBox.Show("输入查询关键字!");

      return;

      }

      switch (P_Str_selectcondition)

      {

      case "员工姓名":

      //员工姓名字段在 dataGridView1 索引值为 1

      tbMenthod.tb_EmpInfoFind(txtKeyWord.Text, 1, dataGridView1);

      break;

      case "员工性别"://员工性别字段在 dataGridView1 引值为 2

      tbMenthod.tb_EmpInfoFind(txtKeyWord.Text, 2, dataGridView1);

      break;

      case "所属部门":// 所属部门字段在 dataGridView1 引值为 3

      tbMenthod.tb_EmpInfoFind(txtKeyWord.Text, 3, dataGridView1);

      break;

      case "员工职位":// 员工职位字段在 dataGridView1 引值为 4

      tbMenthod.tb_EmpInfoFind(txtKeyWord.Text, 4, dataGridView1);

      break;

      default:

      break;

      }

      }

     public static int intFlag = 0;//控件方法状态

     /// <summary>

      /// 用于按钮的互斥更改

      /// </summary>

      private void ControlStatus()

      {

      this.toolSave.Enabled = !this.toolSave.Enabled;

      this.toolAdd.Enabled = !this.toolAdd.Enabled;

      this.toolCancel.Enabled = !this.toolCancel.Enabled;

      this.toolAmend.Enabled = !this.toolAmend.Enabled;

      this.toolDelete.Enabled = !this.toolDelete.Enabled;

     }

     /// <summary>

      /// 用于初始化组件,将控件恢复到原始状态

      /// </summary>

      private void ClearControls()

      {

     txtEmpAddress.Text = null;

      txtEmpPhone.Text = null;

      txtEmpName.Text = null;

      txtEmpLoginPwd.Text = null;

      txtEmpPhoneM.Text = null;

      txtEmpLoginName.Text = null;

      cmbEmpPost.SelectedIndex = 0;

      cmbEmpDept.SelectedIndex = 0;

      comSex.SelectedIndex = 0;

      this.daEmpBirthday.Value = DateTime.Now;

     }

     /// <summary>

      /// 点击添加按钮

      /// </summary>

      private void toolAdd_Click(object sender, EventArgs e)

      {

      ControlStatus();//点击添加按钮后控件状态相反

      ClearControls();//清空控件内容

      intFlag = 1;//添加标记为 1

      }

     /// <summary>

      /// 点击保存按钮

      /// </summary>

      private void toolSave_Click(object sender, EventArgs e)

      {

      if (getPan() == 1)

      {

     if (intFlag == 1)

      {

      if (tbMenthod.tb_EmpInfoFind(txtEmpLoginName.Text,"",

     1)==1 )

      {

      MessageBox.Show("登录名称已被占用!!");

      txtEmpLoginName.Text = "";

      txtEmpLoginName.Focus();

      return;

     }

     if (tbMenthod.tb_EmpInfoFind(txtEmpName.Text, "", 1) == 1)

      {

      MessageBox.Show("员工姓名已被占用!!");

      txtEmpName.Text = "";

      txtEmpName.Focus();

      return;

     }

     if (tbMenthod.tb_EmpInfoAdd(EmpClass) == 1)

      {

      MessageBox.Show("添加成功");

      intFlag = 0;

      tbMenthod.tb_EmpInfoFind("", 5, dataGridView1);

      ClearControls();

      ControlStatus();

      }

      else

      {

      MessageBox.Show("添加失败");

      intFlag = 0;

      //tbMenthod.tb_EmpInfoFind("2",dataGridView1);

      ClearControls();

      ControlStatus();

     }

     }

      if (intFlag == 2)

      {

      if (tbMenthod.tb_EmpInfoUpdate(EmpClass) == 1)

      {

      MessageBox.Show("修改成功");

      intFlag = 0;

      tbMenthod.tb_EmpInfoFind("", 5, dataGridView1);

      ClearControls();

      ControlStatus();

      }

      else

      {

      MessageBox.Show("修改失败");

      intFlag = 0;

      //tbMenthod.tb_EmpInfoFind("2",dataGridView1);

      ClearControls();

      ControlStatus();

     }

     }

      if (intFlag == 3)

      {

      if (tbMenthod.tb_EmpInfoDelete(EmpClass) == 1)

      {

      MessageBox.Show("删除成功");

      intFlag = 0;

      tbMenthod.tb_EmpInfoFind("", 5, dataGridView1);

      ClearControls();

      ControlStatus();

      }

      else

      {

      MessageBox.Show("删除失败");

      intFlag = 0;

      ClearControls();

      ControlStatus();

      }

      }

     }//end

      }

     /// <summary>

      /// 用于判断

      /// </summary>

      /// <returns></returns>

      public int getPan()

      {

      int intFlag1 = 0;

     if (intFlag != 3)//添加,修改状态

      {

      if (txtEmpName.Text == "")

      {

      MessageBox.Show("员工姓名不能为空!", "提示");

      txtEmpName.Focus();

      return intFlag1;

     }

      if (txtEmpLoginName.Text == "")

      {

      MessageBox.Show("登录名称不能为空!", "提示");

      return intFlag1;

     }

     if (intFlag != 2)//添加状态

      {

      if (txtEmpLoginPwd.Text == "")

      {

      MessageBox.Show("登录密码不能为空!", "提示");

      return intFlag1;

     }

      }

      if (intFlag == 2)//修改状态

      {

      EmpClass.EmpId1 = this.dataGridView1[0, this.dataGridView1.CurrentCell.RowIndex].Value.ToString();

      //当时单元格的行索引

      //this.dataGridView1[列索引=0,行索引]

      }

      else

      {

      EmpClass.EmpId1= tbMenthod.tb_EmpInfoID();

      }

      }

      else

      {

      if (txtEmpName.Text == "")

      {

      MessageBox.Show("请在下面选择要删除的记录", "提示");

      return intFlag1;

     }

      else

      {

      EmpClass.EmpId1 = this.dataGridView1[0, this.dataGridView1.CurrentCell.RowIndex].Value.ToString();

     }

      }

     EmpClass.EmpName1 = txtEmpName.Text;

      EmpClass.EmpLoginName1 = txtEmpLoginName.Text;

      EmpClass.EmpLoginPwd1 = txtEmpLoginPwd.Text;

      EmpClass.EmpSex1 = comSex.Text;

      EmpClass.EmpBirthday1 = daEmpBirthday.Value;

      EmpClass.EmpDept1 = cmbEmpDept.Text;

      EmpClass.EmpPost1 = cmbEmpPost.Text;

      EmpClass.EmpPhoneM1 = txtEmpPhoneM.Text;

      EmpClass.EmpPhone1 = txtEmpPhone.Text;

      EmpClass.EmpAddress1 = txtEmpAddress.Text;

      if (intFlag != 3)

      {

      EmpClass.EmpFlag1 = 0;

      }

      else

      {

      EmpClass.EmpFlag1 = 1;

      }

      intFlag1 = 1;

      return intFlag1;

      }

     /// <summary>

      /// 点击取消按钮

      /// </summary>

      private void toolCancel_Click(object sender, EventArgs e)

      {

      ControlStatus();

      ClearControls();

      }

     /// <summary>

      /// 点击退出按钮

      /// </summary>

      private void toolExit_Click(object sender, EventArgs e)

      {

      this.Close();

      }

     private void FillControls()

      {

      try

      {

      SqlDataReader sqldr = tbMenthod.tb_EmpInfoFind(this.dataGridView1[0, this.dataGridView1.CurrentCell.RowIndex].Value.ToString(), 1);

      sqldr.Read();

      if (sqldr.HasRows)

      {

      txtEmpLoginName.Text = sqldr[2].ToString();

      txtEmpName.Text = sqldr[1].ToString();

      comSex.Text = sqldr[4].ToString();

      daEmpBirthday.Value = Convert.ToDateTime(sqldr[5].ToString());

      cmbEmpDept.Text = sqldr[6].ToString();

      cmbEmpPost.Text = sqldr[7].ToString();

      txtEmpPhoneM.Text = sqldr[9].ToString();

      txtEmpPhone.Text = sqldr[8].ToString();

      txtEmpAddress.Text = sqldr[10].ToString();

      }

     }

      catch (Exception ee)

      {

      MessageBox.Show(ee.ToString());

     }

      }

     /// <summary>

      /// 点击修改按钮

      /// </summary>

      /// <param name="sender"></param>

      /// <param name="e"></param>

      private void toolAmend_Click_1(object sender, EventArgs e)

      {

     ControlStatus();

      intFlag = 2;

     }

     /// <summary>

      /// 点击删除按钮

      /// </summary>

      private void toolDelete_Click_1(object sender, EventArgs e)

      {

      ControlStatus();

      intFlag = 3;

     }

     /// <summary>

      /// 触发 dataGridView

      /// </summary>

      /// <param name="sender"></param>

      /// <param name="e"></param>

     private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

      {

      if (intFlag == 2 || intFlag == 3)

      {

      FillControls();

      }

      }

     }

     }

     (2)、员工信息表方法 tb_EmpInfoMenthod 的代码:

     using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; using Shop.ClassInfo;

      namespace Shop.GoodMenthod {

      class tb_EmpInfoMenthod

      {

      SqlConnection conn = null;

      SqlCommand cmd = null;

      SqlDataReader qlddr = null;

     #region 查询 tb_EmpInfo

     用于 DataGridView 单元格触发时索引的数据中记录返回

      public SqlDataReader

     tb_EmpInfoFind(string strObject, int intFlag)

      {

      //int intCount = 0;

      string strSecar = null;

     try

      {

      switch (intFlag)

      {

      case 1:

      strSecar = "select * from tb_EmpInfo where EmpId= "" + strObject + "" and EmpFlag=0";

      break;

      case 2:

      strSecar = "select * from tb_EmpInfo where EmpFlag=0";

      break;

      }

      //strSecar = "select * from tb_EmpInfo where EmpId= "" + strObject + "" and EmpFlag=0";

     getSqlConnection getConnection = new getSqlConnection();

      conn = getConnection.GetCon();

      cmd = new SqlCommand(strSecar, conn);

     qlddr = cmd.ExecuteReader();

      return qlddr;

      }

      catch

     {

      return qlddr;

     }

     }

      #endregion

     #region 查询(用于登陆验证)//添加功能验证登录名

      public int tb_EmpInfoFind(string strObject, string pwd, int intFlag)//用户名 strObject 传参

      intFlag 权限 1 查到用户名即可;权限 2 用户名密码必须都对

      {

      int intCount = 0;

      string strSecar = null;

      try

      {

      switch (intFlag)

      {

      case 1:

      strSecar = "select * from tb_EmpInfo where EmpLoginName="" + strObject + "" and EmpFlag=0";

      break;

     case 2:

      strSecar = "select * from tb_EmpInfo where EmpLoginName="" + strObject + "" and EmpFlag=0 and EmpLoginPwd="" + pwd + """;

      break;

     }

     getSqlConnection getConnection = new getSqlConnection();

      conn = getConnection.GetCon();

      cmd = new SqlCommand(strSecar, conn);

     qlddr = cmd.ExecuteReader();

      qlddr.Read();

      if (qlddr.HasRows)

      {

      intCount = 1;

      }

     return intCount;

     }

     catch (Exception ex)

      {

      MessageBox.Show(ex.Message.ToString());

      return intCount = 2;

      }

      }

      #endregion

     #region 查询(窗体载入时)

     public void tb_EmpInfoFind(string st, int flag, Object DataObject)

      {

     string strSecar = null;

      try

      {

      switch (flag)

      {

      case 1:

      strSecar = "select * from tb_EmpInfo where EmpName like "%" + st + "%" and EmpFlag=0";

      break;

      case 2:

      strSecar = "select * from tb_EmpInfo where EmpSex = "" + st + "" and EmpFlag=0";

      break;

      case 3:

      strSecar = "select * from tb_EmpInfo where EmpDept like "%" + st + "%" and EmpFlag=0";

      break;

      case 4:

      strSecar = "select * from tb_EmpInfo where EmpPost like "%" + st + "%" and EmpFlag=0";

      break;

     case 5:

      strSecar = "select * from tb_EmpInfo where EmpFlag=0";

      break;

      }

     //strSecar = "select * from tb_EmpInfo where EmpFlag=0";//窗体载入时将相关记录全部载入到控件中

      getSqlConnection getConnection = new getSqlConnection();

      conn = getConnection.GetCon();

      cmd = new SqlCommand(strSecar, conn);

      int ii = 0;//统计读取的记录数量

      qlddr = cmd.ExecuteReader();//读取符合条件的数据二维表

      while (qlddr.Read())//记录前进

      {

      ii++;

      }

      qlddr.Close();//关闭 qlddr 的 Reader 对象,以便再执行从第一条开始读,由于未释放所以不用再连接

      System.Windows.Forms.DataGridView dv = (DataGridView)DataObject;//向自定义的表格中显示数据,

      //动态的数据表格,数据表格的引用方式 dv【列索引,行索引】

      if (ii != 0)

      {

      int i = 0;//当读取到一条以上的记录时

      dv.RowCount = ii;//自定义表格的记录长度

      qlddr = cmd.ExecuteReader();//执行读取操作

      while (qlddr.Read())//读取表格的每一条记录前进

      {

      //第一次循环将读取到的二维表中索引行为 0 的列记录写入到活动数据表格中的第 0 行

      dv[0, i].Value = qlddr[0].ToString();

      dv[1, i].Value = qlddr[1].ToString();

      dv[2, i].Value = qlddr[4].ToString();

      dv[3, i].Value = qlddr[6].ToString();

      dv[4, i].Value = qlddr[7].ToString();

      dv[5, i].Value = qlddr[9].ToString();

      i++;//i 为行索引

      }

      qlddr.Close();//再次关闭 qlddr 的 Reader 对象

      }

      else

      {

      for (int i = 0; i < dv.RowCount; i++)

      {

      dv[0, i].Value = "";

      dv[1, i].Value = "";

      dv[2, i].Value = "";

      dv[3, i].Value = "";

      dv[4, i].Value = "";

      dv[5, i].Value = "";

     }

     }

      }

     catch (Exception ee)

      {

      MessageBox.Show(ee.ToString());

      }

     }

      #endregion

     #region 添加

      public int tb_EmpInfoAdd(tb_EmpInfo Empinfo)

      {

      int intFlag = 0;

      try

      {

      string str_Add = "insert into tb...

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识