Esempio n. 1
0
        private void btnConfirmClassInfor_Click(object sender, EventArgs e)
        {
            Class _class = new Class();

            _class.ID              = txtClassId.Text;
            _class.Room            = txtRoom.Text;
            _class.StudentNum      = 0;
            _class.FormerTeacherID = null;
            if (!Helper.IsInformationOfClassCorrected(_class))
            {
                return;
            }
            BackgroundWorker worker = new BackgroundWorker();

            mainProgressbar.Visible = lbInformation.Visible = true;
            bool success = false, isExist = true;

            if (is_New)
            {
                lbInformation.Text = "Đang thêm lớp...";
                worker.DoWork     += (s, e) =>
                {
                    isExist = classControll.IsClassExist(_class.ID);
                    if (!isExist)
                    {
                        success = classControll.AddNewClass(_class);
                    }
                    if (success)
                    {
                        success = teachingController.AddTeachingForClass(_class.ID);
                    }
                };
                worker.RunWorkerCompleted += (s, e) =>
                {
                    mainProgressbar.Visible = lbInformation.Visible = false;
                    progressSuccess         = success;
                    if (success && !isExist)
                    {
                        MetroMessageBox.Show(this, "Thêm lớp thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                    }
                    else
                    {
                        if (isExist)
                        {
                            MetroMessageBox.Show(this, "Mã lớp này đã tồn tại. Vui lòng kiểm tra lại!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            MetroMessageBox.Show(this, "Thêm thất bại vui lòng thử lại!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                };
            }
            else
            {
                lbInformation.Text = "Đang cập nhật lớp...";
                worker.DoWork     += (s, e) =>
                {
                    success = classControll.UpdateClassInfor(_class.ID, _class.Room);
                };
                worker.RunWorkerCompleted += (s, e) =>
                {
                    mainProgressbar.Visible = lbInformation.Visible = false;
                    progressSuccess         = success;
                    if (success)
                    {
                        MetroMessageBox.Show(this, "Cập nhật thành công.", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        this.Close();
                        return;
                    }
                    else
                    {
                        MetroMessageBox.Show(this, "Cập nhật thất bại vui lòng thử lại!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                };
            }
            worker.RunWorkerAsync();
        }