2018-12-05

项目总结汇报

[任务目标]
(1) 掌握应用系统设计流程;
(2) 回顾设计过程中的知识点:窗口、控件、事件、方法;
(3) 回顾数据库编程的知识点。
[任务解析]
第一章小组成员分工
项目经理 研发助理 技术支持 文案专员 产品营销
刘德智 刘春燕 徐振博 余清河 石紫诚

第二章任务2.1 系统需求分析,简书链接(已完成)
完成人:石紫诚,简书连接:https://www.jianshu.com/p/117127c452b8?utm
第三章任务2.2 系统登录界面的制作,简书链接(已完成)
完成人:余清河 ,简书连接:https://www.jianshu.com/p/54ff3dc6495a?utm_
第四章 任务2.3 系统主界面的制作,完成人,简书链接
完成人:刘德智,简书连接:https://www.jianshu.com/p/bfa7edb1ccd7
第五章 任务2.4 系统数据库设计,完成人,简书链接
完成人:徐振博,简书链接:https://www.jianshu.com/p/9a4c35141bc6
第七章 任务2.5 登录用户验证功能设计,
完成人:徐振博,简书链接:https://www.jianshu.com/p/cd767c154357
第八章 任务2.6 密码修改界面功能设计 完成人,简书链接
完成人:刘春燕,简书链接:https://www.jianshu.com/p/dfdf5a05f986
第十章 任务2.7 商品信息录入界面功能设计 完成人,简书链接
完成人:刘春燕,简书链接:https://www.jianshu.com/p/1752084e86d2
第十一章 任务2.8 商品信息查询修改界面功能设计 完成人,简书链接
完成人:刘春燕,简书链接:https://www.jianshu.com/p/8e444ac8e659
第十二章 任务2.9 系统程序的部署 完成人,简书链接
完成人:刘德智,简书连接:https://www.jianshu.com/p/341ff490476d

《2.3 系统主界面的制作》具体要求:

1.完成MDI界面程序的制作,具备多个菜单选项,其中,点击“登陆->打开”选项可以弹出子界面收银员,库管员。
图片4.png
图片3.png

2.实现MDI主界面的主要步骤#MDI界面程序制作
右击项目“添加”添加windows窗体
在新窗体里面添加MenuItem,ToolStrip,StatusStrip,timer控件如图


图片5.png

将要作为“父窗体” 的窗体的IsMdiContainer属性设置为true
(通过属性窗口设计即可)。
将要作为“子窗体” 的窗体的MdiParent属性属性指定为“父窗体”。
只有通过代码,在实例化“子窗体”后设置,如下:
FormChild formChild1 = new FormChild(); // 创建子窗体对象
formChild1.MdiParent = this; // 设置子窗体的父窗体为当前窗体
formChild1.Show(); // 在MDI中显示子窗体`

  1. 主界面中涉及到的控件以及控件的重要属性、方法
    菜单项(MenuItem)
    组合框(ComboBox)
    文本框(TextBox)

工具栏和状态栏

工具栏()ToolStrip
菜单栏(StatusStrip)
ImageScalingSize: 工具栏或状态栏的项显示图像的大小
Items : 在工具条或状态条上显示的项的集合
DisplayStyle : 设置图像和文本的显示方式,包括显示文本、显示图像、显示文本和图像或什么都不显示
Image: 按钮/标签上显示的图片
Click: 单击按钮/标签时,触发该事件
Text : 单击按钮/标签时,触发该事件
Spring : 指定项是否填满剩余空间

3.主界面的功能如何与系统结构图对应
数据库验证登陆成功,进入对应子窗体。

  1. 贴入重要代码片段,并进行详细描述
    FormChild formChild1 = new FormChild(); // 创建子窗体对象
    formChild1.MdiParent = this; // 设置子窗体的父窗体为当前窗体
    formChild1.Show(); // 在MDI中显示子窗体`

2.4系统数据库设计》具体要求:

  1. 描述抽象数据库表的过程,绘制流程图(提示:四个步骤)
    抽象数据库表:
    库管员——>工号,姓名,登录密码,电话
    收银员:——>工号,姓名,登录密码,电话
    商品信息:——>价格,名称,条码,规格

流程图:
图片6.png

4.ER图
图片6.png

5.给出智慧商超涉及到的数据库表的各个字段
登陆涉及字段:
工号,姓名,登录密码,电话
商品涉及字段:
价格,名称,条码,规格
《2.5 登录用户验证功能设计》具体要求:

1.贴效果图,最好是GIF文件
图片8.png

2.描述画面主要功能,并列出支持这些功能的后台数据库表结构
主要功能:验证用户登录
表结构:
收银员表:工号(主键),姓名,密码,电话
库管员表:工号(主键),姓名,密码,电话
3.ADO.NET查询数据库的流程
方法一
1.导入命名空间;
2.运用Connection对象建立与数据库连接;
3.打开连接;
4.利用Command对象的ExecuteReader()
方法执行Select查询语句;
5.利用ExecuteReader()方法返回的
DataReader对象读取数据,显示到界面上;
6.关闭连接。
方法二
1.通过Connection对象建立与数据库的连接
2.利用Command对象执行SQL语句或存储过程
3.通过DataReader对象将Command对象执行SQL语句查询后的具体数据从数据库中一条一条读取到DaraReader对象中
4.在客户端将数据呈现出来

4.贴入重要代码片段,并进行详细描述

《2.6 密码修改界面功能设计》具体要求:

1.贴效果图,最好是GIF文件
图片9.png

2.描述画面主要功能,并列出支持这些功能的后台数据库表结构

用户名直接显示不能更改,输入新密码,再确认密码,两次一样才能确定更改成功
图片10.png

3.ADO.NET更新数据库的流程

  1. 导入命名空间;
  2. 定义数据库连接字符串,运用Connection对象建立与数据库连接;
  3. 打开连接;
  4. 利用Command对象的ExecuteNoQuery()方法执行Update语句;
  5. 通过ExecuteNoQuery()方法返回值判断是否修改成功,并在界面上提示;
  6. 关闭连接
  1. 贴入重要代码片段,并进行详细描述
    if (newPwd.Equals(""))
    {
    MessageBox.Show("请输入新密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    return;
    }
    else if (confPwd.Equals(""))
    {
    MessageBox.Show("请输入确认密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    return;
    }
    else if (newPwd != confPwd)
    {
    MessageBox.Show("两次密码不一致", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    return;
    }

         // 连接字符串,注意与实际环境保持一致
         string connStr = "Data Source=.;Initial Catalog=ldz2017270397;Integrated Security=True";
         SqlConnection sqlConn = new SqlConnection(connStr);
         try
         {
             //连接数据库
             sqlConn.Open();
             // 构造UPDATE命令
             String sqlStr = "update EMPLOYEE set password=@pwd where id=@id";
             SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
             // SQL字符串参数赋值
             cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));
             cmd.Parameters.Add(new SqlParameter("@id", userName));
             // 将命令发送给数据库
             int res = cmd.ExecuteNonQuery();
             // 根据返回值判断是否修改成功
             if (res != 0)
             {
                 MessageBox.Show("密码修改成功");
                 this.Close();
             }
             else
             {
                 MessageBox.Show("密码修改错误");
             }
    

《2.7 商品信息录入界面功能设计》具体要求:

1.贴效果图,最好是GIF文件
图片11.png

2.描述画面主要功能,并列出支持这些功能的后台数据库表结构


图片12.png

3.ADO.NET插入数据库的流程

  1. 导入命名空间;
  2. 定义数据库连接字符串,运用Connection对象建立与数据库连接;
  3. 打开连接;
  4. 利用Command对象的ExecuteNoQuery()方法执行Insert语句;
  5. 通过ExecuteNoQuery()方法返回值判断是否修改成功,并在界面上提示;
  6. 关闭连接
  1. 画面功能是如何迭代的,描述迭代过程(无外键à有外键)

  2. ComboBox数据绑定流程
    // 连接字符串,注意与实际环境保持一致
    String connStr = ConfigurationManager.ConnectionStrings["ldz2017270397"].ConnectionString;
    SqlConnection sqlConn = new SqlConnection(connStr);
    try
    {
    // 连接数据库
    sqlConn.Open();

             // 构造命令
             String sqlStr = "insert into goodes(id, name, price, spec, remark) values(@id, @name, @price, @spec, @remark)";
             SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
    
  3. 贴入重要代码片段,并进行详细描述


    图片13.png

2.8 商品信息查询修改界面功能设计》具体要求:

  1. 贴效果图,最好是GIF文件


    图片14.png
  2. 描述画面主要功能,并列出支持这些功能的后台数据库表结构


    图片15.png

4.ADO.NET删除数据库的流程

  1. 导入命名空间;
  2. 定义数据库连接字符串,创建Connection对象;
  3. 打开连接;
  4. 利用DataAdapter对象,建立与数据库的连接桥;
  5. 通过DataAdapter桥,将查询结果存储到DataSet对象中;
  6. DataGridView控件绑定DataSet,将查询结果显示出来
  7. 关闭连接。
  1. 画面功能是如何迭代的,描述迭代过程(无供应商à有供应商)

  2. DataGridView数据绑定流程
    //点击修改链接
    if (e.RowIndex != -1 && e.ColumnIndex == 0)
    { // 获取所要修改关联对象的主键
    string goodsId = this.dataGridView1["Column1", e.RowIndex].Value.ToString();
    Form7 form7 = new Form7(goodsId);
    form7.Show();

         }
         else if (e.RowIndex != -1 && e.ColumnIndex == 1)
         {
             if (MessageBox.Show("确认删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
             {
                 //获取所要删除关联对象的主键
                 string goodsId = this.dataGridView1["Column1", e.RowIndex].Value.ToString();
    
  3. 贴入重要代码片段,并进行详细描述


    图片16.png

《2.9 系统程序的部署》具体要求:
1.贴效果图,最好是GIF文件


图片18.png
图片17.png

2.系统部署前的准备工作(制作图标、添加关于菜单)


图片19.png

3.应用系统打包流程描述
(1)在项目名上右键,选择“添加新建项”,新建“关于框”
(2)在框属性添加所用的ico图片设置窗口图片


图片20.png

(3)显示关于菜单
private void tsm_About_Click(object sender, EventArgs e)
{
AboutBox about = new AboutBox();
about.ShowDialog();
}
(4)在项目名上右键,选择属性在程序集信息设置软件信息,下方添加设置应用程序图标


图片21.png

(5)点击发布选择发布位置。

  1. 安装包描述,包括如何安装、程序安装位置、如何卸
    简书连接:https://www.jianshu.com/p/341ff490476d
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,422评论 3赞 119
  • 什么是黑盒测试: 1.把被测对象看做是一个黑盒子,只考虑其整体特性,不考虑其内部结构;2.被测对象可以使一个系统、...
    b099e4f1c471阅读 316评论 0赞 0
  • 今天在等待的时间读了寿司之神小野二郎的《巨匠的技与心》。更是对这个老先生的匠人精神有了更深刻的了解,充满深深地敬意...
    眼镜姐姐Lily阅读 618评论 0赞 0
  • 作为老乡的小学妹那天跟我说,她搬出了寝室,在学校小区租了一个房子。而原因就是再平常不过的舍友之间生活习惯不...
    i小森阅读 1,912评论 2赞 3
  • 坚持记录 改变一生 《陪伴是最好的礼物》 会利原创分享第299天 昨天买了吹泡泡的工具,今天就陪儿子吹个够...
    王会利阅读 170评论 3赞 3

友情链接更多精彩内容