コード例 #1
0
        private BookDamageLog GetBookDamageLog(ref List <string> error)
        {
            List <string> errorList = new List <string>();//错误列表
            string        bookId    = textBox_bookId.Text;

            if (string.IsNullOrEmpty(bookId))
            {
                errorList.Add("BookId Error");
            }
            string checkerId = textBox_checkerId.Text;

            if (string.IsNullOrEmpty(checkerId))
            {
                errorList.Add("ReaderId Error");
            }
            string detail = textBox_detail.Text;

            if (string.IsNullOrEmpty(detail))
            {
                errorList.Add("Detail Error");
            }
            BookDamageLog bookBorrowLog = new BookDamageLog()
            {
                BookId       = int.Parse(bookId),
                CheckerId    = int.Parse(checkerId),
                DamageDetail = detail,
                CheckTime    = DateTime.Now,
                RepairState  = comboBox_chooseType.Text,
            };

            error = errorList;
            return(bookBorrowLog);
        }
コード例 #2
0
        private void button_stateChange_Click(object sender, EventArgs e)
        {
            DialogResult dialogResult = MessageBox.Show("是否确定修改", "修改确认", MessageBoxButtons.YesNoCancel); //设置弹出窗体的格式

            if (dialogResult == DialogResult.Yes)                                                         //如果选择确认按钮
            {
                int id;
                if (!int.TryParse(idTextBox.Text, out id))//将其转换为数字失败
                {
                    MessageBox.Show("编号格式错误");
                    return;
                }
                BookDamageLog log = new BookDamageLog()
                {
                    Id          = id,
                    RepairState = comboBox_State.Text
                };
                if (circulationBll.UpdateDamageLog(log))//调用修改方法
                {
                    MessageBox.Show("修改成功");
                }
                else
                {
                    MessageBox.Show("修改失败");
                }
            }
        }
コード例 #3
0
 private void btn_addCase_Click(object sender, EventArgs e)
 {
     try
     {
         List <string> errorList = new List <string>();//创建一个错误列表
         //获取根据当前页面内容生成的订单(若有错误会被添加到错误列表中)
         var list = new BookDamageLog[] { GetBookDamageLog(ref errorList) };
         if (errorList.Count == 0)
         {
             if (userCaseHandle.AddUserCases(list.ToList()))
             {
                 MessageBox.Show("添加成功");
             }
         }
         else
         {
             MessageBox.Show("添加失败");
             foreach (var i in errorList)
             {
                 MessageBox.Show(i);//逐条显示错误信息
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
     DataBind();
 }
コード例 #4
0
        public void AddDamageLogTest()
        {
            Tools.UserCaseHandle userCaseHandle = new Tools.UserCaseHandle(@"C:\Users\96464\Desktop\软件工程\测试用例\Add_BookDamageLog.xls");
            IEnumerable          bookDamageLogs = userCaseHandle.GetUserCases();
            List <string>        errorList      = new List <string>();

            foreach (var i in bookDamageLogs)
            {
                Assert.AreEqual(false, circulationBll.AddDamageLog((BookDamageLog)i, ref errorList));
            }
            int maxId = -1;

            foreach (Book i in circulationBll.GetAllBooksArray())
            {
                if (i.Id > maxId)
                {
                    maxId = i.Id;
                }
            }
            BookDamageLog log = new BookDamageLog()
            {
                Id           = 1,
                BookId       = maxId,
                RepairState  = "已修复",
                CheckerId    = utilBll.GetUserIdFormNumber("201709001013"),
                CheckTime    = DateTime.Now,
                DamageDetail = "add单元测试损坏详情" + DateTime.Now.ToString("yy-MM-dd")
            };

            Assert.AreEqual(true, circulationBll.AddDamageLog((BookDamageLog)log, ref errorList));
        }
コード例 #5
0
 private void damageButton_Click(object sender, EventArgs e)
 {
     try
     {
         int id;
         if (!int.TryParse(logId, out id))//将其转换为数字失败
         {
             MessageBox.Show("书籍编号格式错误");
             return;
         }
         if (circulationBll.ReturnBorrowedBook(id))//调用还书方法
         {
             MessageBox.Show("还书成功");
         }
         else
         {
             MessageBox.Show("还书失败");
         }
         List <string> errorList = new List <string>();//创建一个错误列表
         BookDamageLog log       = new BookDamageLog();
         var           form      = new AddDamageForm(this, log);
         form.StartPosition = FormStartPosition.CenterParent;
         DialogResult dialogResult = form.ShowDialog();
         if (dialogResult == DialogResult.Yes)//如果选择确认按钮
         {
             int bookid;
             if (!int.TryParse(bookCodeTextBox.Text, out bookid))//将其转换为数字失败
             {
                 MessageBox.Show("书籍编号格式错误");
                 return;
             }
             log.BookId      = bookid;
             log.RepairState = "待修复";
             if (circulationBll.AddDamageLog(log, ref errorList))//添加破损记录
             {
                 MessageBox.Show("增加破损成功");
             }
             else
             {
                 MessageBox.Show("增加破损失败");
             }
         }
         if (errorList.Count > 0)
         {
             foreach (var i in errorList)
             {
                 MessageBox.Show(i);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
コード例 #6
0
        /// <summary>
        /// 更改损坏状态
        /// </summary>
        /// <param name="log">图书损坏记录</param>
        /// <returns>更改成功与否</returns>
        public bool UpdateDamageLog(BookDamageLog log)
        {
            bool result;

            try
            {
                result = circulationDal.UpdateDamageLog(log);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw ex;
            }
            return(result);
        }
コード例 #7
0
        /// <summary>
        /// 增加书籍损坏记录
        /// </summary>
        /// <param name="log">损坏记录</param>
        /// <returns>损坏记录</returns>
        public bool AddDamageLog(BookDamageLog log, ref List <string> errorMsg)
        {
            bool result = false;

            try
            {
                if (!BookDamageLog.isNull(log))                       //是否有空项
                {
                    if (BookDamageLog.isNormative(log, ref errorMsg)) //是否符合规范
                    {
                        result = circulationDal.AddDamageLog(log);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw ex;
            }
            return(result);
        }
コード例 #8
0
        /// <summary>
        /// 更改损坏状态
        /// </summary>
        /// <param name="log">图书损坏记录</param>
        /// <returns>更改成功与否</returns>
        public bool UpdateDamageLog(BookDamageLog log)
        {
            string sqlStr = "UPDATE tb_BookDamageLog SET " +
                            "RepairState=@state " +
                            "where Id=@id;";

            //储存Datatable
            MySqlParameter[] para = new MySqlParameter[]//存储相应参数的容器
            {
                new MySqlParameter("@state", log.RepairState),
                new MySqlParameter("@id", log.Id),
            };
            int count = helper.ExecuteNonQuery(sqlStr, para, CommandType.Text);

            if (count > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #9
0
        /// <summary>
        /// 增加书籍损坏记录
        /// </summary>
        /// <param name="log">损坏记录</param>
        /// <returns>损坏记录</returns>
        public bool AddDamageLog(BookDamageLog log)
        {
            string sqlStr = "INSERT INTO tb_BookDamageLog (" +
                            "BookId," +
                            "CheckerId," +
                            "CheckTime," +
                            "DamageDetail," +
                            "RepairState" +
                            ") " +
                            "VALUES(" +
                            "@bookId," +
                            "@checkerId," +
                            "@checkTime," +
                            "@damageDetail," +
                            "@repairState" +
                            ");";

            //储存Datatable
            MySqlParameter[] para = new MySqlParameter[]//存储相应参数的容器
            {
                new MySqlParameter("@bookId", log.BookId),
                new MySqlParameter("@checkerId", log.CheckerId),
                new MySqlParameter("@checkTime", log.CheckTime),
                new MySqlParameter("@damageDetail", log.DamageDetail),
                new MySqlParameter("@repairState", log.RepairState),
            };
            int count = helper.ExecuteNonQuery(sqlStr, para, CommandType.Text);

            if (count > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #10
0
 public AddDamageForm(Form form, BookDamageLog log)
 {
     InitializeComponent();
     parentForm = form;
     damageLog  = log;
 }