void m_cmd_dang_nhap_Click(object sender, EventArgs e)
        {
            try
            {
                using (BKIQuanLyBanHangEntities db = new BKIQuanLyBanHangEntities())
                {
                    HT_NGUOI_SU_DUNG v_nsd = db.HT_NGUOI_SU_DUNG
                        .FirstOrDefault(x => x.USER_NAME == m_txt_ten_dang_nhap.Text
                                            && x.PASSWORD == m_txt_password.Text);
                    if (v_nsd == null)
                    {
                        MessageBox.Show("Tên truy cập hoặc mật khẩu không đúng!");
                        m_txt_ten_dang_nhap.Text = "";
                        m_txt_password.Text = "";
                        m_txt_ten_dang_nhap.Focus();
                    }
                    else
                    //
                    {
                        this.Hide();
                        DangNhap.InitialUser(v_nsd.USER_NAME, v_nsd.PASSWORD,v_nsd.ID);
                        F101_Trang_chu v_frm_trang_chu = new F101_Trang_chu();
                        v_frm_trang_chu.display_for_user_group(v_nsd.ID_NHOM_NGUOI_DUNG);
                        this.Close();
                    }
                }

            }
            catch (Exception v_e)
            {
                MessageBox.Show(v_e.ToString());
            }
        }
        public void display_for_user_group(decimal ip_dc_id_user_group)
        {
            //load danh sach menu theo user_group
            using (BKIQuanLyBanHangEntities db = new BKIQuanLyBanHangEntities())
            {
                List<HT_PHAN_QUYEN_NHOM> lst_ht_phan_quyen = db.HT_PHAN_QUYEN_NHOM
                    .Where(x => x.ID_NHOM_NGUOI_DUNG == ip_dc_id_user_group)
                    .ToList();
                //Kiem tra tat ca menu item
                foreach (ToolStripMenuItem control in m_menu.Items)
                {
                    //if (control.GetType().Name.Equals(typeof(ToolStripMenuItem)))
                    //{
                    //Nếu Nhóm người dùng không có quyền (menu) này thì ẩn nó đi
                    if (lst_ht_phan_quyen.Count(x => x.HT_CHUC_NANG.MA_CHUC_NANG == control.Name) == 0)
                    {
                        control.Visible = false;
                    }
                    else
                    {
                        control.Visible = true;
                    }
                    //}
                }
            }

            //Hien thi form Trang chu
            this.ShowDialog();
        }
        public static void CapNhatSoDu(
            decimal ip_dc_id_san_pham
            , DateTime ip_dat_tu_ngay
            , DateTime ip_dat_den_ngay
            , decimal ip_dc_so_luong)
        {
            BKIQuanLyBanHangEntities db = new BKIQuanLyBanHangEntities();
            var v_lst_so_du = db.GD_SO_DU
                .Where(x => x.ID_SAN_PHAM == ip_dc_id_san_pham
                        && x.NGAY_THANG >= ip_dat_den_ngay
                        && x.NGAY_THANG <= ip_dat_den_ngay)
                .ToList();

            //Cập nhật số dư nếu đã có
            if (v_lst_so_du.Count > 0)
            {
                for (int i = 0; i < v_lst_so_du.Count; i++)
                {
                    v_lst_so_du[i].SO_LUONG += (int)ip_dc_so_luong;
                    if (v_lst_so_du[i].SO_LUONG <= 0)
                    {
                        db.GD_SO_DU.Remove(v_lst_so_du[i]);
                    }
                    db.SaveChanges();
                }
            }
            else
            {
                //Nếu chưa có số dư thì thêm mới dữ liệu số dư
                GD_SO_DU v_gd_so_du = new GD_SO_DU();
                v_gd_so_du.ID_SAN_PHAM = ip_dc_id_san_pham;
                v_gd_so_du.NGAY_THANG = ip_dat_den_ngay;
                v_gd_so_du.SO_LUONG = (int)ip_dc_so_luong;
                db.GD_SO_DU.Add(v_gd_so_du);
                db.SaveChanges();

            }
            db.Dispose();
        }
        private void load_data_to_grid_chi_tiet_hoa_don()
        {
            //Lấy dữ liệu của bảng GD_CHI_TIET... lên lưới
            decimal v_dc_id_hoa_don = Convert.ToDecimal(m_lsb_hoa_don.SelectedValue);
            db = new BKIQuanLyBanHangEntities();
            var v_lst_gd_chi_tiet = db.GD_CT_HOA_DON_NHAP
                .Where(x => x.ID_HOA_DON_NHAP == v_dc_id_hoa_don)
                .ToList()
                .Select(x => new
                {
                    ID = x.ID,
                    TEN_SAN_PHAM = x.DM_SAN_PHAM.TEN_SAN_PHAM,
                    DON_GIA_NHAP = x.DON_GIA,
                    SO_LUONG = x.SO_LUONG
                })
                .ToList();
            m_grv.DataSource = v_lst_gd_chi_tiet;
            m_grv.Columns[0].Visible = false;
            m_grv.Columns[0].Width = 20;
            m_grv.Columns[1].HeaderText = "Sản phẩm";
            m_grv.Columns[1].Width = 180;
            m_grv.Columns[2].HeaderText = "Giá nhập";
            m_grv.Columns[2].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            m_grv.Columns[2].Width = 100;
            m_grv.Columns[3].HeaderText = "Số lượng";
            m_grv.Columns[3].Width = 65;
            m_grv.Columns[3].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            m_grv.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;

            computedMoney();
        }