예제 #1
0
        //Hàm nay se duoc thuc thi khi click nut tim kiem
        //giải thích: giống như hàm btnRemove_Click ở trên khác là không cho xóa và chỉ xem thâu
        private void btnAdvancedSearch_Click(object sender, EventArgs e)
        {
            if (txtKeyword.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập từ khóa để tìm kiếm, vui lòng kiểm tra lại!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            ListEmployee searchResult = listEmployee.Search(txtKeyword.Text);

            if (searchResult.Count() == 0)
            {
                MessageBox.Show("Không tìm thấy nhân viên nào!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                if (searchResult.Count() == 1)
                {
                    string employeeInfo = "";

                    employeeInfo += searchResult.FirstEmployee.Data.ToString() + "Vị trí trong danh sách:" + searchResult.FirstEmployee.OrderNumber + "\n\n";

                    MessageBox.Show(employeeInfo, "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    frmSearchResult frmResult = new DoAnThucTapCoSo.frmSearchResult(searchResult, "Search");
                    frmResult.ShowDialog();
                }
            }
        }
예제 #2
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (txtKeyword.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập từ khóa, vui lòng kiểm tra lại!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                ListEmployee searchResult = listEmployee.SearchMultiple(txtKeyword.Text);
                if (searchResult.Count() == 0)
                {
                    MessageBox.Show("Không tìm thấy nhân viên nào có liên quan với từ khóa!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                else
                {
                    string allEmployee = "";

                    for (Node <Employee> employee = searchResult.FirstEmployee; employee != null; employee = employee.Next)
                    {
                        allEmployee += employee.Data.ToString() + "Vị trí trong danh sách: " + employee.OrderNumber + "\n\n";
                    }

                    if (MessageBox.Show("Bạn có chắc muốn xóa những nhân viên này không?\n\n" + allEmployee, "Cảnh báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                    {
                        listEmployee.RemoveMultiple(txtKeyword.Text);

                        ShowListEmployeeToDatagridView(this.listEmployee);

                        MessageBox.Show("Xóa thành công!", "Thông báo");

                        isSaved = false;
                    }
                }
            }
        }
예제 #3
0
        //Hàm nay se duoc thuc thi khi click nut xoa
        private void btnRemove_Click(object sender, EventArgs e)
        {
            if (txtKeyword.Text == "")//Kiem tra đã nhập tu khoa hay chua
            {
                MessageBox.Show("Bạn chưa nhập từ khóa, vui lòng kiểm tra lại!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                //goi ham tim kiem cua danh sach
                ListEmployee searchResult = listEmployee.Search(txtKeyword.Text);

                if (searchResult.Count() == 0)//kết wả tìm rỗng
                {
                    MessageBox.Show("Không tìm thấy nhân viên nào có liên quan với từ khóa!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                else//kết wả tìm khác rỗng
                {
                    if (searchResult.Count() == 1)//kết wả tìm chi có 1 nhan vien
                    {
                        string employeeInfo = "";//chuoi để luu thong tin nhan vien tìm duoc

                        //gán chuoi = hàm toString() của lớp employee
                        employeeInfo = searchResult.FirstEmployee.Data.ToString() + "Vị trí trong danh sách:" + searchResult.FirstEmployee.OrderNumber + "\n\n";

                        //Xac nhan lai co chac muon xoa hay khong
                        if (MessageBox.Show("Bạn có chắc muốn xóa nhân viên này không?\n\n" + employeeInfo, "Cảnh báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            listEmployee.Remove(searchResult.FirstEmployee);//goi ham xoa cua danh sach

                            ShowListEmployeeToDatagridView(this.listEmployee);

                            isChanged = false;
                        }
                    }


                    else//kết wả tìm chi có nhiều nhan vien
                    {
                        //chuyen sang form ket qua tim kiem và goi hàm khởi tạo, truyền vào searchResult là kết tìm được để hiển thị trên form kết quả
                        frmSearchResult frmResult = new DoAnThucTapCoSo.frmSearchResult(searchResult, "Delete");

                        frmResult.ShowDialog();//hien thi form


                        //Neu tren form ket qua nhấn nut có
                        if (frmResult.DeleteConfirm)
                        {
                            listEmployee.RemoveMultiple(txtKeyword.Text);

                            ShowListEmployeeToDatagridView(this.listEmployee);

                            MessageBox.Show("Xóa thành công!", "Thông báo");

                            isChanged = false;
                        }
                    }
                }
            }
        }
예제 #4
0
 public frmManageEmployee()
 {
     InitializeComponent();
     this.Load += Form1_Load;
     isSaved    = true;
     cmbTypeSort.SelectedIndex = 0;
     listEmployee = new DoAnThucTapCoSo.ListEmployee();
 }
예제 #5
0
 private void ShowListEmployeeToDatagridView(ListEmployee listEmployee)
 {
     dgvListEmployee.Rows.Clear();
     for (Node <Employee> employee = listEmployee.FirstEmployee; employee != null; employee = employee.Next)
     {
         dgvListEmployee.Rows.Add(dgvListEmployee.Rows.Count + 1, employee.Data.Name, employee.Data.BirthDay.ToString(), employee.Data.Position, employee.Data.CoefficienceSalary);
     }
 }
예제 #6
0
 //Hiển thị dữ liệu lên datagridview
 private void ShowListEmployeeToDatagridView(ListEmployee listEmployee)
 {
     //đầu tiên xóa tất cả dòng đang có trong datagridview
     dgvListEmployee.Rows.Clear();
     //duyệt wa tung phan tử va them vao từng dong cua datagridview
     for (Node <Employee> employee = listEmployee.FirstEmployee; employee != null; employee = employee.Next)
     {
         dgvListEmployee.Rows.Add(dgvListEmployee.Rows.Count + 1, employee.Data.Name, employee.Data.BirthDay.ToString(), employee.Data.Position, employee.Data.CoefficienceSalary);
     }
 }
예제 #7
0
        private void btnRemove_Click(object sender, EventArgs e)
        {
            if (txtKeyword.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập từ khóa, vui lòng kiểm tra lại!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                ListEmployee searchResult = listEmployee.SearchMultiple(txtKeyword.Text);
                if (searchResult.Count() == 0)
                {
                    MessageBox.Show("Không tìm thấy nhân viên nào có liên quan với từ khóa!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                else
                {
                    if (searchResult.Count() == 1)
                    {
                        string allEmployee = "";

                        allEmployee += searchResult.FirstEmployee.Data.ToString() + "Vị trí trong danh sách:" + searchResult.FirstEmployee.OrderNumber + "\n\n";

                        if (MessageBox.Show("Bạn có chắc muốn xóa nhân viên này không?\n\n" + allEmployee, "Cảnh báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                        {
                            listEmployee.Remove(searchResult.FirstEmployee);

                            ShowListEmployeeToDatagridView(this.listEmployee);

                            isSaved = false;
                        }
                    }


                    else
                    {
                        frmSearchResult frmResult = new DoAnThucTapCoSo.frmSearchResult(searchResult, "Delete");
                        frmResult.ShowDialog();
                        if (frmResult.DeleteConfirm)
                        {
                            listEmployee.RemoveMultiple(txtKeyword.Text);

                            ShowListEmployeeToDatagridView(this.listEmployee);

                            MessageBox.Show("Xóa thành công!", "Thông báo");

                            isSaved = false;
                        }
                    }
                }
            }
        }
예제 #8
0
        //Hàm khởi tạo form quản lí nhân viên, khi chay chuong trinh ham nay se dc goi dau tien
        public frmManageEmployee()
        {
            InitializeComponent();                               //Hàm khởi tạo các thành phần cho form (khi kéo thả trên form các thành phần(button, textbox...) sẽ tự động được thêm trong hàm này)

            isChanged = true;                                    //biến để lưu lại trạng thái dữ liệu có bị thay đổi hay không(nếu có thêm xóa thì biến này giá trị sẽ là false)

            cmbTypeSort.SelectedIndex = 0;                       //Cho mặc định thành phần dc chon lúc đầu của combobox kieu sap xep là giảm dần

            listEmployee = new DoAnThucTapCoSo.ListEmployee();   //Tạo mới một danh sách nhân viên rỗng

            LoadDataFromFile(filePath);                          //Gọi hàm đọc dữ liệu

            ShowListEmployeeToDatagridView(this.listEmployee);   //Goi hàm hiển thị dữ liệu lên datagridview

            cmbPosition.DataSource = ListEmployee.PositionArray; //Gán datasource của combobox chức vụ = 1 mảng kiểu string(ListEmployee.PositionArray) để khi click vào có các giá trị sổ xuống cho mình chọn
        }
예제 #9
0
        public frmSearchResult(ListEmployee listEmployee, string action)
        {
            InitializeComponent();
            ShowListEmployeeToDatagridView(listEmployee);

            if (action == "Delete")
            {
                btnOk.Visible = false;
            }
            else
            {
                btnYes.Visible     = false;
                btnNo.Visible      = false;
                lblConfirm.Visible = false;
                this.Size          = new Size(this.Size.Width, 440);
            }
        }
예제 #10
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            if (txtKeyword.Text == "")
            {
                MessageBox.Show("Bạn chưa nhập từ khóa để tìm kiếm, vui lòng kiểm tra lại!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            //{
            //    Node<Employee> employee = listEmployee.SearchFirst(txtKeywordToSearch.Text);
            //    if (employee == null)
            //        MessageBox.Show("Không tìm thấy nhân viên nào!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            //    else
            //    {
            //        int index = listEmployee.IndexOf(employee);
            //        MessageBox.Show("Nhân viên đầu tiên liên quan đến từ khóa:\n" + employee.Data.ToString() + "Vị trí trong danh sách: " + (index + 1), "kết quả tìm kiếm");
            //    }
            //}

            ListEmployee searchResult = listEmployee.SearchMultiple(txtKeyword.Text);

            if (searchResult.Count() == 0)
            {
                MessageBox.Show("Không tìm thấy nhân viên nào!", "Kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
            {
                string allEmployee = "";

                for (Node <Employee> employee = searchResult.FirstEmployee; employee != null; employee = employee.Next)
                {
                    allEmployee += employee.Data.ToString() + "Vị trí trong danh sách:" + employee.OrderNumber + "\n\n";
                }

                MessageBox.Show("Tất cả nhân viên liên quan đến từ khóa:\n\n" + allEmployee, "kết quả tìm kiếm", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }