private void loadSalary()
        {
            var list = (from em in db.Employees
                        select new
            {
                EmployeeId = em.EmployeeId,
                EmployeeName = em.EmployeeName,
                Gender = (bool)em.Gender ? "Nam" : "Nữ",
                Department = em.Department.DepartmentName,
                Position = em.Position.PositionName,
                publicDay = 0,
                SalaryBasic = db.Salaries.SingleOrDefault(s => s.Position == em.PositionId).BasicSalary,
                Salary = 0
            }).ToList();

            if (salaryEntities.Count == 0)
            {
                for (int i = 0; i < list.Count; i++)
                {
                    salaryEntity s = new salaryEntity();
                    s.EmployeeId   = list[i].EmployeeId;
                    s.EmployeeName = list[i].EmployeeName;
                    s.Gender       = list[i].Gender;
                    s.Department   = list[i].Department;
                    s.Position     = list[i].Position;
                    s.PublicDay    = list[i].publicDay;
                    s.SalaryBasic  = (int)list[i].SalaryBasic;
                    s.Salary       = list[i].Salary;
                    salaryEntities.Add(s);
                }
                dgvSalary.DataSource = salaryEntities;
            }
            else
            {
                dgvSalary.DataSource = salaryEntities;
            }
        }
Example #2
0
        private void btnAddnew_Click(object sender, EventArgs e)
        {
            if (txtName.Text == "" || txtEmail.Text == "" || txtPhone.Text == "" || txtAdress.Text == "")
            {
                MessageBox.Show("vui lòng điền đầy đủ thông tin !!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (!edit)
                {
                    var email = db.Employees.SingleOrDefault(em => em.Email == txtEmail.Text);
                    var phone = db.Employees.SingleOrDefault(p => p.Phone == txtPhone.Text);
                    var CMND  = db.Employees.SingleOrDefault(c => c.identitycardnumber == txtCmnd.Text);
                    if (email != null)
                    {
                        lblResultEmail.Text      = "✘ Email này đã tồn tại vui lòng nhập Email khác !";
                        lblResultEmail.ForeColor = Color.Red;
                        txtEmail.Focus();
                    }
                    else if (phone != null)
                    {
                        lblResultPhone.Text      = "✘ Số điện thoại đã tồn tại !!";
                        lblResultPhone.ForeColor = Color.Red;
                        txtPhone.Focus();
                    }
                    else if (CMND != null)
                    {
                        lblResultcmnd.Text      = "✘ Chứng minh nhân dân đã tồn tại !!";
                        lblResultcmnd.ForeColor = Color.Red;
                        txtPhone.Focus();
                    }
                    else
                    {
                        Regex regex      = new Regex(@"^(08|09|03|07)[0-9]{8}$");
                        Regex regexCmnd  = new Regex(@"^[0-9]{9,12}$");
                        Regex regexEmail = new Regex(@"\A(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)\Z");
                        if (!regex.IsMatch(txtPhone.Text))
                        {
                            lblResultPhone.Text      = "✘ Số điện thoại không đúng định dạng";
                            lblResultPhone.ForeColor = Color.Red;
                            return;
                        }
                        if (!regexEmail.IsMatch(txtEmail.Text))
                        {
                            lblResultEmail.Text      = "✘ Email không đúng định dạng";
                            lblResultEmail.ForeColor = Color.Red;
                            return;
                        }
                        if (!regexCmnd.IsMatch(txtCmnd.Text))
                        {
                            lblResultcmnd.Text      = "✘ CMND không đúng định dạng";
                            lblResultcmnd.ForeColor = Color.Red;
                            return;
                        }
                        else
                        {
                            Employee employee = new Employee();
                            employee.EmployeeName       = txtName.Text;
                            employee.Email              = txtEmail.Text;
                            employee.Phone              = txtPhone.Text;
                            employee.Address            = txtAdress.Text;
                            employee.BirthDay           = txtBirthday.Value;
                            employee.identitycardnumber = txtCmnd.Text;
                            employee.Gender             = rdoMale.Checked ? true : false;
                            employee.PositionId         = int.Parse(cboPosition.SelectedValue.ToString());
                            employee.DepartmentId       = int.Parse(cboDepartment.SelectedValue.ToString());
                            employee.Status             = false;
                            //them vao bang

                            db.Employees.InsertOnSubmit(employee);
                            //luw lai
                            db.SubmitChanges();
                            MessageBox.Show("Thêm mới thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            Load_Employee();
                            refresh();
                            lblResultcmnd.Text = lblResultEmail.Text = lblResultPhone.Text = "";
                            var query = db.Employees.OrderByDescending(em => em.EmployeeId).First();
                            /////////////////////////////////////
                            ///n
                            if (frmSalary.salaryEntities.Count > 0)
                            {
                                salaryEntity s = new salaryEntity();
                                s.EmployeeId   = query.EmployeeId;
                                s.EmployeeName = query.EmployeeName;
                                s.Gender       = query.Gender == true ? "Nam" : "Nữ";
                                s.Department   = query.Department.DepartmentName;
                                s.Position     = query.Position.PositionName;
                                s.PublicDay    = 0;
                                s.SalaryBasic  = (float)db.Salaries.FirstOrDefault(sa => sa.Position == int.Parse(cboPosition.SelectedValue.ToString())).BasicSalary;
                                s.Salary       = 0;
                                frmSalary.salaryEntities.Add(s);
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Bạn chỉ được phép sửa thông tin không được thêm mới", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }