zoukankan      html  css  js  c++  java
  • 记分员程序

    现场记分员

     

    1.计划

    通过对用户故事的分析,估计这个任务需要3~5天时间。

    2.开发

    2.1需求分析

    作为一名现场记分员,我希望详细记录比赛现场比分增长情况。

    2.2生成设计文档

    根据对用户故事的分析,将其按照三层架构的要求进行设计,便于后续对其他用户故事

    的设计提供方便。

    2.3设计复审

    思考文档是否满足用户需求,文档的可行性,对界面的设计

    以及出现的问题。

    2.4代码规范

    根据设计文档制定出合适的规范,对程序需要实现的功能

    作出合理的划分,增加代码的复用性,以便于提高各个部分功能的可用性。

    2.5具体设计

    根据用户需求将UI层设计以及数据库设计出来,

    对于要实现的功能有一个合理的规划。

    UI层设计

    数据库设计

    2.6具体编码

    代码:

    namespace Common
    {
    public static class SqlHelper
    {//获取连接字符串
    private static readonly string constr =
    ConfigurationManager.ConnectionStrings["connectionStr"].ConnectionString;
    //ExecuteNonQuery()方法
    //ExecuteScalar()方法
    //ExecuteReader()方法
    //ExecuteDataTable()方法
    //执行增删改的
    public static int ExecuteNonQuery(string sql, params SqlParameter[] pms)
    {
    //使用using关键字定义一个范围,在范围结束时自动调用这个类实例的Dispose处理对象
    using (SqlConnection con = new SqlConnection(constr))
    {
    //创建执行sql命令对象
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    //判断是否传递了sql参数
    if (pms != null)
    {
    //将参数添加到parametes集合中
    cmd.Parameters.AddRange(pms);
    }
    con.Open();
    return cmd.ExecuteNonQuery();

    }
    }
    }
    //执行返回当个值的
    public static object ExecuteScalar(string sql, params SqlParameter[] pms)
    {
    using (SqlConnection con = new SqlConnection(constr))
    {
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    if (pms != null)
    {
    cmd.Parameters.AddRange(pms);

    }
    con.Open();
    return cmd.ExecuteScalar();
    }
    }
    }
    //执行返回sqlDataReader
    public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] pms)
    {
    using (SqlConnection con = new SqlConnection(constr))
    {
    using (SqlCommand cmd = new SqlCommand(sql, con))
    {
    if (pms != null)
    {
    cmd.Parameters.AddRange(pms);

    }
    try
    {
    con.Open();
    return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
    }
    catch (Exception)
    {
    con.Close();
    con.Dispose();
    throw;
    }
    }
    }
    }
    //执行返回DataTable
    public static DataTable ExecuteDataTable(string sql, params SqlParameter[] pms)
    {
    DataTable dt = new DataTable();
    using (SqlDataAdapter adapter = new SqlDataAdapter(sql, constr))
    {
    if(pms!=null)
    {
    adapter.SelectCommand.Parameters.AddRange(pms);
    }
    adapter.Fill(dt);
    }
    return dt;
    }

    }
    }


    conn = new SqlConnection(@"Data Source=.;Initial Catalog=workers;Integrated Security=True");
    adapter = new SqlDataAdapter("select * from China", conn);
    ds = new DataSet();
    adapter.Fill(ds,"china");
    dataGridView1.DataSource = ds.Tables[0];
    dataGridView1.RowHeadersVisible = false;

    //建立一个DataTable类型的方法

    }
    private DataTable dbcon(string strSql)
    {
    conn.Open();
    this.adapter = new SqlDataAdapter(strSql,conn);
    DataTable dtSelect = new DataTable();
    int rnt = this.adapter.Fill(dtSelect);
    conn.Close();
    return dtSelect;
    }

    private void button2_Click(object sender, EventArgs e)
    {
    if (dbUpdate())
    {
    MessageBox.Show("更新成功");
    }
    }
    private Boolean dbUpdate()
    {
    string strSql = "select * from China";
    DataTable dtUpdate = new DataTable();
    dtUpdate = this.dbcon(strSql);
    dtUpdate.Rows.Clear();
    DataTable dtShow = new DataTable();
    dtShow = (DataTable)this.dataGridView1.DataSource;
    for (int i = 0; i < dtShow.Rows.Count; i++)//循环遍历
    {
    dtUpdate.ImportRow(dtShow.Rows[i]);

    }
    try
    {
    this.conn.Open();
    SqlCommandBuilder cb = new SqlCommandBuilder(this.adapter);
    this.adapter.Update(dtUpdate);
    this.conn.Close();
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message.ToString());
    return false;
    }
    dtUpdate.AcceptChanges();
    return true;
    }

    public class ContactBLL
    {

    private void button1_Click(object sender, EventArgs e)
    {
    //判断国家是否填了,没有填则先输入国家
    if (texguojia1.Text == "" || texguojia1.Text == null)
    {
    MessageBox.Show("请先输入国家:");
    }
    //获取第一场第一个国家是多少分如果单击某个国家胜
    //则该文本框加一分
    if (diyiju.Text == "" && texguojia1.Text != "")
    {

    if (int.Parse(diyichang1.Text) < 25)
    {
    int a = int.Parse(diyichang1.Text);
    a++;

    diyichang1.Text = a.ToString();
    //如果分数到达二十五则在第一局中显示某个国家第一局胜
    int c = int.Parse(diyichang2.Text);
    if (a == 25 && a - 1 > c)
    {
    MessageBox.Show("第一局" + button1.Text);
    diyiju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }
    else
    {
    int a = int.Parse(diyichang1.Text);
    a++;
    diyichang1.Text = a.ToString();
    int c = int.Parse(diyichang2.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第一局" + button1.Text);
    diyiju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }

    }
    else if (dierju.Text == "" && texguojia1.Text != "")
    {
    //第一局结束
    //判断第二局
    if (int.Parse(dierchang1.Text) < 25)
    {
    int a = int.Parse(dierchang1.Text);
    a++;
    dierchang1.Text = a.ToString();
    int c = int.Parse(dierchang2.Text);
    if (a == 25 && a - 1 > c)
    {
    MessageBox.Show("第二局" + button1.Text);
    dierju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }
    else
    {
    int a = int.Parse(dierchang1.Text);
    a++;
    dierchang1.Text = a.ToString();
    int c = int.Parse(dierchang2.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第二局" + button1.Text);
    dierju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }

    }
    else if (disanju.Text == "" && texguojia1.Text != "")
    {
    int fen = 25;

    if (int.Parse(disanchang1.Text) < fen)
    {
    int a = int.Parse(disanchang1.Text);
    a++;
    disanchang1.Text = a.ToString();
    int c = int.Parse(disanchang2.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第三局" + button1.Text);
    disanju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }

    }
    else
    {
    int a = int.Parse(disanchang1.Text);
    a++;
    disanchang1.Text = a.ToString();
    int c = int.Parse(disanchang2.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第三局" + button1.Text);
    disanju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }

    }
    else if (disiju.Text == "" && texguojia1.Text != "")
    {
    int fen = 25;
    if (int.Parse(changneibifen1.Text) == 3)
    {
    MessageBox.Show(button1.Text);
    return;
    }
    else if (int.Parse(changneibifen2.Text) == 3)
    {
    MessageBox.Show(button2.Text);
    return;
    }
    else if (int.Parse(changneibifen1.Text) == 2 || int.Parse(changneibifen2.Text) == 2)
    {
    //决胜场
    fen = 25;
    }
    if (int.Parse(disichang1.Text) < fen)
    {
    int a = int.Parse(disichang1.Text);
    a++;
    disichang1.Text = a.ToString();
    int c = int.Parse(disichang2.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第四局" + button1.Text);
    disiju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }
    else
    {
    int a = int.Parse(disichang1.Text);
    a++;
    disichang1.Text = a.ToString();
    int c = int.Parse(disichang2.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第四局" + button1.Text);
    disiju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }

    }
    else if (texguojia1.Text != "")
    {
    int fen = 25;
    if (int.Parse(changneibifen1.Text) == 3)
    {
    MessageBox.Show(button1.Text);
    return;
    }
    else if (int.Parse(changneibifen2.Text) == 3)
    {
    MessageBox.Show(button2.Text);
    return;
    }
    else if (int.Parse(changneibifen1.Text) == 2 || int.Parse(changneibifen2.Text) == 2)
    {
    //决胜场
    fen = 15;
    }

    if (int.Parse(diwuchang1.Text) < fen)
    {
    int a = int.Parse(diwuchang1.Text);
    a++;
    diwuchang1.Text = a.ToString();
    int c = int.Parse(diwuchang2.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第五局" + button1.Text);
    diwuju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }
    else
    {
    int a = int.Parse(diwuchang1.Text);
    a++;
    diwuchang1.Text = a.ToString();
    int c = int.Parse(diwuchang2.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第五局" + button1.Text);
    diwuju.Text = button1.Text;
    int b = int.Parse(changneibifen1.Text);
    b++;
    changneibifen1.Text = b.ToString();
    }
    }
    }

    }
    private void button2_Click(object sender, EventArgs e)
    {
    //判断是否输入了国家名字
    if (texguojia2.Text == "" || texguojia2.Text == null)
    {
    MessageBox.Show("请先输入队名:");
    }

    //判断分数是否达到25如果单击按钮后分数没有达到25则分数加1
    if (diyiju.Text == "" && texguojia2.Text != "")
    {
    if (int.Parse(diyichang2.Text) < 25)
    {
    int a = int.Parse(diyichang2.Text);
    a++;

    diyichang2.Text = a.ToString();
    //如果分数达到25则显示第一局某国家胜
    int c = int.Parse(diyichang1.Text);
    if (a == 25 && a - 1 > c)
    {
    MessageBox.Show("第一局" + button2.Text);
    diyiju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }

    }
    else
    {
    int a = int.Parse(diyichang2.Text);
    a++;
    diyichang2.Text = a.ToString();
    int c = int.Parse(diyichang1.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第一局" + button2.Text);
    diyiju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }

    }
    else if (dierju.Text == "" && texguojia2.Text != "")
    {
    //第一局结果以出现
    //判断第二局
    if (int.Parse(dierchang2.Text) < 25)
    {
    int a = int.Parse(dierchang2.Text);
    a++;

    dierchang2.Text = a.ToString();
    //如果分数达到25则显示第一局某国家胜
    int c = int.Parse(dierchang1.Text);
    if (a == 25 && a - 1 > c)
    {
    MessageBox.Show("第二局" + button2.Text);
    dierju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }

    }
    else
    {
    int a = int.Parse(dierchang2.Text);
    a++;
    dierchang2.Text = a.ToString();
    int c = int.Parse(dierchang1.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第二局" + button2.Text);
    dierju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }
    }
    else if (disanju.Text == "" && texguojia2.Text != "")
    {
    int fen = 25;
    //if (int.Parse(changneibifen1.Text) == 2 || int.Parse(changneibifen2.Text) == 2)
    //{
    // fen = 15;
    //}
    //else if(int.Parse(changneibifen1.Text)==3)
    //{
    // MessageBox.Show(button1.Text);
    //}
    //else if (int.Parse(changneibifen2.Text) == 3)
    //{
    // MessageBox.Show(button2.Text);
    //}
    if (int.Parse(disanchang2.Text) < fen)
    {
    int a = int.Parse(disanchang2.Text);
    a++;

    disanchang2.Text = a.ToString();
    //如果分数达到25则显示第一局某国家胜
    int c = int.Parse(disanchang1.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第三局" + button2.Text);
    disanju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }

    }
    else
    {
    int a = int.Parse(disanchang2.Text);
    a++;
    disanchang2.Text = a.ToString();
    int c = int.Parse(disanchang1.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第三局" + button2.Text);
    disanju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }
    }
    else if (disiju.Text == "" && texguojia2.Text != "")
    {
    int fen = 25;
    if (int.Parse(changneibifen1.Text) == 3)
    {
    MessageBox.Show(button1.Text);
    return;
    }
    else if (int.Parse(changneibifen2.Text) == 3)
    {
    MessageBox.Show(button2.Text);
    return;
    }
    else if (int.Parse(changneibifen1.Text) == 2 || int.Parse(changneibifen2.Text) == 2)
    {
    //决胜场
    fen = 25;
    }

    if (int.Parse(disichang2.Text) < fen)
    {
    int a = int.Parse(disichang2.Text);
    a++;

    disichang2.Text = a.ToString();
    //如果分数达到25则显示第一局某国家胜
    int c = int.Parse(disichang1.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第四局" + button2.Text);
    disiju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }

    }
    else
    {
    int a = int.Parse(disichang2.Text);
    a++;
    disichang2.Text = a.ToString();
    int c = int.Parse(diyichang1.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第四局" + button2.Text);
    disiju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }
    }
    else if (texguojia2.Text != "")
    {
    int fen = 25;
    if (int.Parse(changneibifen1.Text) == 3)
    {
    MessageBox.Show(button1.Text);
    return;
    }
    else if (int.Parse(changneibifen2.Text) == 3)
    {
    MessageBox.Show(button2.Text);
    return;
    }
    else if (int.Parse(changneibifen1.Text) == 2 || int.Parse(changneibifen2.Text) == 2)
    {
    //决胜场
    fen = 15;
    }
    if (int.Parse(diwuchang2.Text) < fen)
    {
    int a = int.Parse(diwuchang2.Text);
    a++;

    diwuchang2.Text = a.ToString();
    //如果分数达到25则显示第一局某国家胜
    int c = int.Parse(diwuchang1.Text);
    if (a == fen && a - 1 > c)
    {
    MessageBox.Show("第五局" + button2.Text);
    diwuju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }
    else
    {
    int a = int.Parse(diwuchang2.Text);
    a++;
    diwuchang2.Text = a.ToString();
    int c = int.Parse(diwuchang1.Text);
    if (a - 1 > c)
    {
    MessageBox.Show("第五局" + button2.Text);
    diwuju.Text = button2.Text;
    int b = int.Parse(changneibifen2.Text);
    b++;
    changneibifen2.Text = b.ToString();
    }
    }
    }

    2.6具体编码

    代码:

    代码复审

    对代码进行复审,并对代码进行重构,提高代码质量,可维护性。

    通过复审尽可能发现错误,便于后续的开发速度,以及新功能的的

    添加。

    测试

    使用VS2010进行所有的单元测试。

    3.3事后总结,并提出过程改进计划

    对于ASPNET只是有一个大概的认知,对于一般应用处理程序搭建的三层还是很薄弱,只能慢慢赶了。

  • 相关阅读:
    Java集合(4):Iterator(迭代器)
    Java集合(3):Vector && Stack
    Java集合(2):LinkedList
    面试题29:顺时针打印矩阵
    面试题28:对称的二叉树
    面试题27:二叉树的镜像
    面试题26:树的子结构
    面试题24:反转链表
    面试题25:合并两个排序的链表
    面试题23:链表中环的入口结点
  • 原文地址:https://www.cnblogs.com/zs1736/p/6568944.html
Copyright © 2011-2022 走看看