public static List <MonAn> XemMonAn(StoreProcEnum type = StoreProcEnum.XemMonAn)
        {
            List <MonAn> result = new List <MonAn>();

            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = connectionString;
                conn.Open();
                using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        return(result);
                    }

                    while (reader.Read())
                    {
                        MonAn row = new MonAn();
                        row.MaMonAn      = (int)reader["MaMonAn"];
                        row.TenMonAn     = (string)reader["TenMonAn"];
                        row.MaLoai       = (int)reader["MaLoai"];
                        row.TenLoai      = (string)reader["TenLoai"];
                        row.URLHinhMonAn = (string)reader["URLHinhMonAn"];
                        row.MoTa         = (string)reader["MoTa"];
                        row.Gia          = (long)reader["Gia"];
                        row.SoLuong      = (int)reader["SoLuong"];
                        result.Add(row);
                    }
                    reader.Close();
                }
            }
            return(result);
        }
        public static List <ChuongTrinhKhuyenMai> XemChuongTrinhKhuyenMai(StoreProcEnum type = StoreProcEnum.XemChuongTrinhKhuyenMai)
        {
            List <ChuongTrinhKhuyenMai> result = new List <ChuongTrinhKhuyenMai>();

            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = connectionString;
                conn.Open();
                using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        return(result);
                    }

                    while (reader.Read())
                    {
                        ChuongTrinhKhuyenMai row = new ChuongTrinhKhuyenMai();
                        row.MaKhuyenMai    = (int)reader["MaKhuyenMai"];
                        row.TenChuongTrinh = (string)reader["TenChuongTrinh"];
                        row.MaLoai         = (int)reader["MaLoai"];
                        row.DoiTuongApDung = (int)reader["DoiTuongApDung"];
                        row.GiaTri         = (long)reader["GiaTri"];
                        row.NgayBatDau     = reader["NgayBatDau"].ToString();
                        row.NgayKetThuc    = reader["NgayKetThuc"].ToString();
                        row.SoLuong        = (int)reader["SoLuong"];
                        result.Add(row);
                    }
                    reader.Close();
                }
            }
            return(result);
        }
        public static DonHang XemMotDonHang(int MaDonHang, StoreProcEnum type = StoreProcEnum.XemMotDonHang)
        {
            DonHang result = null;

            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = connectionString;
                conn.Open();
                using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@MaDonHang", MaDonHang);
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        return(result);
                    }

                    int lastMaDonHang = -1;
                    result = new DonHang();
                    while (reader.Read())
                    {
                        result.MaDonHang = (int)reader["MaDonHang"];
                        if (result.MaDonHang != lastMaDonHang)
                        {
                            lastMaDonHang = result.MaDonHang;

                            result.TenChiNhanh         = (string)reader["TenChiNhanh"];
                            result.TenThanhVien        = (string)reader["TenThanhVien"];
                            result.ThoiGianTao         = reader["ThoiGianTao"].ToString();
                            result.ThoiGianGiaoHang    = reader["ThoiGianGiaoHang"].ToString();
                            result.TenTrangThai        = (string)reader["TenTrangThai"];
                            result.TongTien            = (long)reader["TongTien"];
                            result.PhiGiaoHang         = (long)reader["PhiGiaoHang"];
                            result.PhuongThucThanhToan = reader["PhuongThucThanhToan"].ToString();
                            result.DiaChiGiaoHang      = (string)reader["DiaChiGiaoHang"];
                            result.TenKenhDatHang      = (string)reader["TenKenhDatHang"];

                            var MaMonAn  = (int)reader["MaMonAn"];
                            var TenMonAn = (string)reader["TenMonAn"];
                            var SoLuong  = (int)reader["SoLuong"];
                            var Gia      = (long)reader["Gia"];

                            result.ChiTiet.Add(new ChiTietDonHang(MaMonAn, TenMonAn, SoLuong, Gia));
                        }
                        else
                        {
                            var MaMonAn  = (int)reader["MaMonAn"];
                            var TenMonAn = (string)reader["TenMonAn"];
                            var SoLuong  = (int)reader["SoLuong"];
                            var Gia      = (long)reader["Gia"];
                            result.ChiTiet.Add(new ChiTietDonHang(MaMonAn, TenMonAn, SoLuong, Gia));
                        }
                    }
                    reader.Close();
                }
            }
            return(result);
        }
 private static void CapNhatVoucher(int MaVoucher, string GiaTri, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@MaKhuyenMai", MaVoucher);
             cmd.Parameters.AddWithValue("@GiaTri", GiaTri);
             cmd.ExecuteNonQuery();
         }
     }
 }
 private static void UpdateSoLuongMonAn(int MaMonAn, int SoLuong, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@MaMonAn", MaMonAn);
             cmd.Parameters.AddWithValue("@SoLuong", SoLuong);
             cmd.ExecuteNonQuery();
         }
     }
 }
 private static List <DataTable> LocVoucher(int GiaTri, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@GiaTri", GiaTri);
             SqlDataAdapter da = new SqlDataAdapter();
             DataSet        ds = new DataSet();
             da = new SqlDataAdapter(cmd);
             da.Fill(ds);
             List <DataTable> result = new List <DataTable>();
             foreach (DataTable element in ds.Tables)
             {
                 result.Add(element);
             }
             return(result);
         }
     }
 }
        public static List <ThanhVien> XemThanhVien(StoreProcEnum type = StoreProcEnum.XemThanhVien)
        {
            List <ThanhVien> result = new List <ThanhVien>();

            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = connectionString;
                conn.Open();
                using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        return(result);
                    }

                    while (reader.Read())
                    {
                        ThanhVien row = new ThanhVien();
                        row.MaThanhVien = (int)reader["MaThanhVien"];
                        row.MaChiNhanh  = (int)reader["MaChiNhanh"];
                        row.HoTen       = (string)reader["HoTen"];
                        row.CMND        = (string)reader["CMND"];
                        row.SoDienThoai = (string)reader["SoDienThoai"];
                        row.Email       = (string)reader["Email"];
                        row.NgaySinh    = reader["NgaySinh"].ToString();
                        row.DiaChi      = (string)reader["DiaChi"];
                        row.QuyenHan    = 0;
                        row.DiemTichLuy = (long)reader["DiemTichLuy"];
                        result.Add(row);
                    }
                    reader.Close();
                }
            }
            return(result);
        }
 private static void ThemVoucher(int MaLoai, string TenChuongTrinh, int DoiTuongApDung, int GiaTri, string NgayBatDau, string NgayKetThuc, int SoLuong, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@TenChuongTrinh", TenChuongTrinh);
             cmd.Parameters.AddWithValue("@MaLoai", MaLoai);
             cmd.Parameters.AddWithValue("@DoiTuongApDung", DoiTuongApDung);
             cmd.Parameters.AddWithValue("@GiaTri", GiaTri);
             cmd.Parameters.AddWithValue("@NgayBatDat", DateTime.ParseExact(NgayBatDau, "dd/MM/yyyy", null));
             cmd.Parameters.AddWithValue("@NgayKetThuc", DateTime.ParseExact(NgayKetThuc, "dd/MM/yyyy", null));
             cmd.Parameters.AddWithValue("@SoLuong", SoLuong);
             try
             {
                 cmd.ExecuteNonQuery();
             }
             catch
             {
                 MessageBox.Show("Không thể thêm chương trình khuyến mãi có số lượng nhỏ hơn hoặc bằng 0");
             }
         }
     }
 }
 private static void ThemThanhVien(int MaChiNhanh, string TenThanhVien, string CMND, string SDT, string Email, string NgaySinh, string DiaChi, long DiemTichLuy, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@MaChiNhanh", MaChiNhanh);
             cmd.Parameters.AddWithValue("@HoTen", TenThanhVien);
             cmd.Parameters.AddWithValue("@CMND", CMND);
             cmd.Parameters.AddWithValue("@SoDienThoai", SDT);
             cmd.Parameters.AddWithValue("@Email", Email);
             cmd.Parameters.AddWithValue("@NgaySinh", DateTime.ParseExact(NgaySinh, "dd/MM/yyyy", null));
             cmd.Parameters.AddWithValue("@DiaChi", DiaChi);
             cmd.Parameters.AddWithValue("@DiemTichLuy", DiemTichLuy);
             try
             {
                 cmd.ExecuteNonQuery();
             }
             catch
             {
                 MessageBox.Show("Số CMND không hợp lệ");
             }
         }
     }
 }
 private static void CapNhatThanhVien(int MaThanhVien, int MaChiNhanh, string TenThanhVien, string CMND, string SDT, string Email, string NgaySinh, string DiaChi, long DiemTichLuy, StoreProcEnum type)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@MaThanhVien", MaThanhVien);
             cmd.Parameters.AddWithValue("@MaChiNhanh", MaChiNhanh);
             cmd.Parameters.AddWithValue("@TenThanhVien", TenThanhVien);
             cmd.Parameters.AddWithValue("@CMND", CMND);
             cmd.Parameters.AddWithValue("@SoDienThoai", SDT);
             cmd.Parameters.AddWithValue("@Email", Email);
             cmd.Parameters.AddWithValue("@NgaySinh", NgaySinh);
             cmd.Parameters.AddWithValue("@DiaChi", DiaChi);
             cmd.Parameters.AddWithValue("@DiemTichLuy", DiemTichLuy);
             cmd.ExecuteNonQuery();
         }
     }
 }
 private static void DoCommandOnFood(int MaMonAn = 0, string TenMonAn = "", string URLHinhMonAn = "", string MoTa = "", long Gia = 0, StoreProcEnum type = StoreProcEnum.CapNhapMonAn_Deadlock)
 {
     using (SqlConnection conn = new SqlConnection())
     {
         conn.ConnectionString = connectionString;
         conn.Open();
         using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@MaMonAn", MaMonAn);
             cmd.Parameters.AddWithValue("@TenMonAn", TenMonAn);
             cmd.Parameters.AddWithValue("@URLHinhMonAn", URLHinhMonAn);
             cmd.Parameters.AddWithValue("@MoTa", MoTa);
             cmd.Parameters.AddWithValue("@Gia", Gia);
             cmd.ExecuteNonQuery();
         }
     }
 }
        public static List <DonHang> XemDonHang(StoreProcEnum type = StoreProcEnum.XemDonHang)
        {
            List <DonHang> result = new List <DonHang>();

            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = connectionString;
                conn.Open();
                using (SqlCommand cmd = new SqlCommand(type.ToString(), conn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    SqlDataReader reader = cmd.ExecuteReader();
                    if (!reader.HasRows)
                    {
                        return(result);
                    }

                    int lastMaDonHang = -1;
                    while (reader.Read())
                    {
                        DonHang row = new DonHang();
                        row.MaDonHang = (int)reader["MaDonHang"];
                        if (row.MaDonHang != lastMaDonHang)
                        {
                            lastMaDonHang = row.MaDonHang;

                            row.TenChiNhanh         = (string)reader["TenChiNhanh"];
                            row.TenThanhVien        = (string)reader["TenThanhVien"];
                            row.ThoiGianTao         = reader["ThoiGianTao"].ToString();
                            row.ThoiGianGiaoHang    = reader["ThoiGianGiaoHang"].ToString();
                            row.TenTrangThai        = (string)reader["TenTrangThai"];
                            row.TongTien            = (long)reader["TongTien"];
                            row.PhiGiaoHang         = (long)reader["PhiGiaoHang"];
                            row.PhuongThucThanhToan = reader["PhuongThucThanhToan"].ToString();
                            row.DiaChiGiaoHang      = (string)reader["DiaChiGiaoHang"];
                            row.TenKenhDatHang      = (string)reader["TenKenhDatHang"];

                            var            MaMonAn  = (int)reader["MaMonAn"];
                            var            TenMonAn = (string)reader["TenMonAn"];
                            var            SoLuong  = (int)reader["SoLuong"];
                            var            Gia      = (long)reader["Gia"];
                            ChiTietDonHang donHang  = new ChiTietDonHang(MaMonAn, TenMonAn, SoLuong, Gia);
                            donHang.PropertyChanged += MainWindow.PropertyChanged;
                            row.ChiTiet.Add(donHang);
                            result.Add(row);
                        }
                        else
                        {
                            var            MaMonAn  = (int)reader["MaMonAn"];
                            var            TenMonAn = (string)reader["TenMonAn"];
                            var            SoLuong  = (int)reader["SoLuong"];
                            var            Gia      = (long)reader["Gia"];
                            ChiTietDonHang donHang  = new ChiTietDonHang(MaMonAn, TenMonAn, SoLuong, Gia);
                            donHang.PropertyChanged += MainWindow.PropertyChanged;
                            result[result.Count - 1].ChiTiet.Add(donHang);
                        }
                    }
                    reader.Close();
                }
            }
            return(result);
        }