public ActionResult DetailDonHang(string idsp)
        {
            idsp = "05DH01";
            DetailDonHang dt = new DetailDonHang();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                dt.MaDon        = idsp;
                dt.MaKhachHang  = db.GiaoDiches.Where(x => x.Id == idsp).FirstOrDefault().MaKhachHang;
                dt.TenKhachHang = db.TaiKhoans.Where(x => x.Id == dt.MaKhachHang).FirstOrDefault().HoVaTen;
                dt.ThoiGian     = db.GiaoDiches.Where(x => x.Id == idsp).FirstOrDefault().ThoiGian.GetValueOrDefault();
                dt.TongTien     = db.GiaoDiches.Where(x => x.Id == idsp).FirstOrDefault().TongTien.GetValueOrDefault();
                dt.ListGioHang  = new List <GioHang>();
                foreach (var s in db.DonHangs)
                {
                    if (s.Id == dt.MaDon)
                    {
                        GioHang sp = new GioHang();
                        sp.MaSanPham  = s.MaSanPham;
                        sp.TenSanPham = db.SanPhams.Where(x => x.Id == sp.MaSanPham).FirstOrDefault().TenSanPham;
                        sp.SoLuong    = s.SoLuong.GetValueOrDefault();
                        sp.ThanhTien  = s.ThanhTien.GetValueOrDefault();
                        sp.UserId     = dt.MaKhachHang;
                        dt.ListGioHang.Add(sp);
                    }
                }
            }
            return(View(dt));
        }
예제 #2
0
 public DetailDonHang(string id)
 {
     using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
     {
         int i = 0;
         ListGioHang = new List <GioHang>();
         GiaoDich giaoDich = db.GiaoDiches.Find(id);
         MaDon        = giaoDich.Id;
         MaKhachHang  = giaoDich.MaKhachHang;
         TongTien     = giaoDich.TongTien.GetValueOrDefault();
         ThoiGian     = giaoDich.ThoiGian.GetValueOrDefault();
         TenKhachHang = db.TaiKhoans.Find(MaKhachHang).HoVaTen;
         TinhTrang    = giaoDich.TrangThai;
         List <DonHang> listDon = new List <DonHang>();
         foreach (DonHang donHang in db.DonHangs)
         {
             if (donHang.Id == giaoDich.Id)
             {
                 listDon.Add(donHang);
             }
         }
         foreach (DonHang donHang in listDon)
         {
             GioHang gioHang = new GioHang();
             gioHang.Id         = i++;
             gioHang.MaSanPham  = donHang.MaSanPham;
             gioHang.TenSanPham = db.SanPhams.Find(gioHang.MaSanPham).TenSanPham;
             gioHang.Gia        = db.SanPhams.Find(gioHang.MaSanPham).Gia;
             gioHang.SoLuong    = donHang.SoLuong.GetValueOrDefault();
             gioHang.ThanhTien  = donHang.ThanhTien.GetValueOrDefault();
             ListGioHang.Add(gioHang);
         }
     }
 }
예제 #3
0
        public ActionResult SoLuongSPTheoLoai()
        {
            List <DataPoint> dataPoints = new List <DataPoint>();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                int   countLoaiSP             = db.LoaiSanPhams.Count();
                int   sumSanPham              = db.SanPhams.Count();
                int[] listCount               = new int[countLoaiSP];
                int[] listPercent             = new int[countLoaiSP];
                List <LoaiSanPham> listLoaiSP = new List <LoaiSanPham>();
                List <SanPham>     listSP     = db.SanPhams.ToList();
                listLoaiSP = db.LoaiSanPhams.ToList();
                for (int i = 0; i < countLoaiSP; i++)
                {
                    listCount[i] = 0;
                    foreach (var sp in listSP)
                    {
                        if (sp.MaLoai.Equals(listLoaiSP[i].MaLoai))
                        {
                            listCount[i]++;
                        }
                    }
                    listPercent[i] = Convert.ToInt32(((float)listCount[i] / (float)sumSanPham) * 100);
                    dataPoints.Add(new DataPoint(listLoaiSP[i].TenLoai, listPercent[i]));
                }
            }

            ViewBag.DataPoints = JsonConvert.SerializeObject(dataPoints);
            return(View());
        }
        public ActionResult GopY()
        {
            List <PhanHoi> list = new List <PhanHoi>();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                list = db.PhanHois.ToList();
            }
            return(View(list));
        }
예제 #5
0
        public ActionResult Register(TaiKhoan acc)
        {
            if (ModelState.IsValid)
            {
                Regex reg    = new Regex(@"\d");
                Match result = reg.Match(acc.Sdt);
                int   count  = 0;
                do
                {
                    count++;
                    result = result.NextMatch(); // Chuyển qua kết quả trùng khớp kế tiếp
                }while (result != Match.Empty);
                if (count != 10)
                {
                    ModelState.AddModelError("", "Số điện thoại không hợp lệ");
                    return(View());
                }

                if (acc.Sdt.Length != 10)
                {
                    ModelState.AddModelError("", "Số điện thoại không hợp lệ");
                    return(View());
                }
                using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
                {
                    if (db.TaiKhoans.Any(x => x.Sdt == acc.Sdt))
                    {
                        ModelState.AddModelError("", "Số điện thoại này đã được đăng ký!");
                        return(View());
                    }
                    if (db.TaiKhoans.Any(x => x.Email == acc.Email))
                    {
                        ModelState.AddModelError("", "Email này đã được đăng ký!");
                        return(View());
                    }
                    else
                    {
                        acc.Id      = DateTime.Today.Year.ToString() + (db.TaiKhoans.Count() + 1).ToString();
                        acc.MatKhau = Encryptor.MD5Hash(acc.MatKhau);
                        db.TaiKhoans.Add(acc);
                        db.SaveChanges();
                        string id = (from s in db.TaiKhoans where s.Sdt == acc.Sdt select s.Id).FirstOrDefault();
                        Role   r  = new Role();
                        r.Id    = id;
                        r.Role1 = "Customer";
                        db.Roles.Add(r);
                        db.SaveChanges();
                        ModelState.AddModelError("", "Đăng ký thành công! Đăng nhập lại!");
                        return(View("Login"));
                    }
                }
            }
            return(View(""));
        }
예제 #6
0
 public ActionResult GopY([Bind(Include = "Id,HoTen,Email,MoTa")] PhanHoi phanHoi)
 {
     if (ModelState.IsValid)
     {
         using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
         {
             db.PhanHois.Add(phanHoi);
             db.SaveChanges();
             ModelState.AddModelError("", "Gửi góp ý thành công! Cảm ơn bạn!");
             return(View());
         }
     }
     return(View());
 }
예제 #7
0
        public ActionResult TopLoaiMot()
        {
            List <DataPointLoaiMot> dataPoints = new List <DataPointLoaiMot>();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                string maLoai = "RC";
                List <SanPhamMuaNhieu> listSP = new List <SanPhamMuaNhieu>();
                foreach (var s in db.SanPhams)
                {
                    if (s.MaLoai == maLoai)
                    {
                        SanPhamMuaNhieu sp = new SanPhamMuaNhieu();
                        sp.MaSP    = s.Id;
                        sp.TenSP   = s.TenSanPham;
                        sp.SoLuong = 0;
                        listSP.Add(sp);
                    }
                }
                foreach (var s in db.DonHangs)
                {
                    foreach (SanPhamMuaNhieu sp in listSP)
                    {
                        if (sp.MaSP == s.MaSanPham)
                        {
                            sp.SoLuong += s.SoLuong.GetValueOrDefault();
                        }
                    }
                }
                listSP.Sort(delegate(SanPhamMuaNhieu x, SanPhamMuaNhieu y)
                {
                    return(x.SoLuong.CompareTo(y.SoLuong) * (-1));
                });
                for (int i = 0; i < 3; i++)
                {
                    dataPoints.Add(new DataPointLoaiMot(listSP[i].TenSP, listSP[i].SoLuong));
                }
            }
            ViewBag.DataPointLoaiMots = JsonConvert.SerializeObject(dataPoints);
            return(View());
        }
예제 #8
0
 public ActionResult Login(LoginView acc)
 {
     if (ModelState.IsValid)
     {
         using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
         {
             if (db.TaiKhoans.Any(x => x.Sdt == acc.Sdt))
             {
                 string pass = (from s in db.TaiKhoans where s.Sdt == acc.Sdt select s.MatKhau).FirstOrDefault();
                 if (pass == Encryptor.MD5Hash(acc.MatKhau))
                 {
                     string id = (from s in db.TaiKhoans where s.Sdt == acc.Sdt select s.Id).FirstOrDefault();
                     Session["UserId"]  = id;
                     Session["UserSdt"] = acc.Sdt;
                     string[] name = (from s in db.TaiKhoans where s.Sdt == acc.Sdt select s.HoVaTen).FirstOrDefault().Split(' ');
                     Session["UserName"] = name[name.Length - 1];
                     string role = (from s in db.Roles where s.Id == id select s.Role1).FirstOrDefault();
                     if (role == "Admin")
                     {
                         return(Redirect("/Admin/AdminHome/AdminIndex"));
                     }
                     else
                     {
                         return(Redirect("/Customer/CustomerHome/CustomerIndex"));
                     }
                 }
                 else
                 {
                     ModelState.AddModelError("", "Mật khẩu không đúng!");
                 }
             }
             else
             {
                 ModelState.AddModelError("", "Tài khoản không tồn tại");
             }
         }
     }
     return(View());
 }
예제 #9
0
        public JsonResult Subcribe(string email)
        {
            string kq = "";

            if (email == "")
            {
                kq = "Vui lòng nhập email!";
            }
            else
            {
                try
                {
                    using (var db = new BachHoaPTTdb_CNPMEntities2())
                    {
                        if (db.EmailSubcribeds.Any(x => x.Email == email))
                        {
                            kq = "Email đã đăng kí !!!";
                        }
                        else
                        {
                            EmailSubcribed em = new EmailSubcribed();
                            em.Email    = email;
                            em.ThoiGian = DateTime.Now;
                            db.EmailSubcribeds.Add(em);
                            db.SaveChanges();
                            kq  = "Đăng kí thành công !!!";
                            kq += Environment.NewLine + "Vui lòng kiểm tra email!";
                            SendMail.SendEmail(email, "*****@*****.**", "Gtien610");
                        }
                    }
                }
                catch (Exception)
                {
                    kq = "Lỗi rồi !!!";
                }
            }
            return(Json(new { valu = kq }, JsonRequestBehavior.AllowGet));
        }
예제 #10
0
        public ActionResult DatHang()
        {
            DetailDonHang dt = new DetailDonHang();

            dt.MaKhachHang = Session["UserId"].ToString();
            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                dt.MaDon        = DateTime.Now.Year.ToString() + "DH" + db.GiaoDiches.Count().ToString();
                dt.TenKhachHang = db.TaiKhoans.Where(x => x.Id == dt.MaKhachHang).FirstOrDefault().HoVaTen;
                dt.DiaChi       = db.TaiKhoans.Where(x => x.Id == dt.MaKhachHang).FirstOrDefault().DiaChi;
            }
            dt.ListGioHang = new List <GioHang>();
            dt.TongTien    = 0;
            foreach (var gh in db.GioHangs.Where(x => x.UserId == dt.MaKhachHang).ToList())
            {
                dt.ListGioHang.Add(gh);
                dt.TongTien += gh.ThanhTien;
            }

            ReposDetail.Get(dt);

            return(View(dt));
        }
예제 #11
0
        public ActionResult TopFiveCustomerMuaNhieu()
        {
            List <DataPointCol> dataPoints = new List <DataPointCol>();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                List <KhachHangThanhToan> listThanhToan = new List <KhachHangThanhToan>();
                int sumKH = db.TaiKhoans.Count();
                foreach (var kh in db.TaiKhoans)
                {
                    KhachHangThanhToan khtt = new KhachHangThanhToan();
                    khtt.Id         = kh.Id;
                    khtt.TongSoTien = 0;
                    listThanhToan.Add(khtt);
                }
                List <GiaoDich> listGiaoDich = new List <GiaoDich>();
                listGiaoDich = db.GiaoDiches.ToList();

                foreach (var gd in db.GiaoDiches)
                {
                    int index = listThanhToan.FindIndex(x => x.Id == gd.MaKhachHang);
                    listThanhToan[index].TongSoTien += (double)gd.TongTien;
                }
                listThanhToan.Sort(delegate(KhachHangThanhToan x, KhachHangThanhToan y)
                {
                    return(x.TongSoTien.CompareTo(y.TongSoTien) * (-1));
                });

                for (int i = 0; i < 5; i++)
                {
                    dataPoints.Add(new DataPointCol(db.TaiKhoans.Find(listThanhToan[i].Id).HoVaTen, listThanhToan[i].TongSoTien));
                }
            }
            ViewBag.DataPoints = JsonConvert.SerializeObject(dataPoints);

            return(View());
        }
예제 #12
0
        // GET: Admin/AdminHome
        public ActionResult AdminIndex()
        {
            InfoBasic info = new InfoBasic();
            List <DataPointLoaiMot> dataPointMots = new List <DataPointLoaiMot>();
            List <DataPointLoaiHai> dataPointHais = new List <DataPointLoaiHai>();
            List <DataPointLoaiBa>  dataPointBas  = new List <DataPointLoaiBa>();
            List <DataPointLoaiBon> dataPointBons = new List <DataPointLoaiBon>();

            double[] doanhThu = { 0, 0, 0, 0 };

            List <DataPointDoanhThu> dataPointDoanhThu = new List <DataPointDoanhThu>();

            using (BachHoaPTTdb_CNPMEntities2 db = new BachHoaPTTdb_CNPMEntities2())
            {
                foreach (var gd in db.GiaoDiches)
                {
                    switch (gd.ThoiGian.Value.Year)
                    {
                    case 2016: doanhThu[0] += (double)gd.TongTien.GetValueOrDefault(); break;

                    case 2017: doanhThu[1] += (double)gd.TongTien.GetValueOrDefault(); break;

                    case 2018: doanhThu[2] += (double)gd.TongTien.GetValueOrDefault(); break;

                    default: doanhThu[3] += (double)gd.TongTien.GetValueOrDefault(); break;
                    }
                }


                info.SumKH         = db.TaiKhoans.Count();
                info.EmailSubcribe = db.EmailSubcribeds.Count();
                foreach (var dh in db.GiaoDiches)
                {
                    if (dh.TrangThai == "CHƯA GIAO HÀNG")
                    {
                        info.DonHangChuaGiao++;
                    }
                    else
                    {
                        info.TongDoanhThu += (float)dh.TongTien.GetValueOrDefault();
                    }
                }
                List <SanPhamMuaNhieu> listSPLoaiMot = new List <SanPhamMuaNhieu>();
                List <SanPhamMuaNhieu> listSPLoaiHai = new List <SanPhamMuaNhieu>();
                List <SanPhamMuaNhieu> listSPLoaiBa  = new List <SanPhamMuaNhieu>();
                List <SanPhamMuaNhieu> listSPLoaiBon = new List <SanPhamMuaNhieu>();
                foreach (var s in db.SanPhams)
                {
                    SanPhamMuaNhieu sp = new SanPhamMuaNhieu();
                    sp.MaSP    = s.Id;
                    sp.TenSP   = s.TenSanPham;
                    sp.SoLuong = 0;
                    switch (s.MaLoai)
                    {
                    case "RC": listSPLoaiMot.Add(sp); break;

                    case "TC": listSPLoaiHai.Add(sp); break;

                    case "TU": listSPLoaiBa.Add(sp); break;

                    default: listSPLoaiBon.Add(sp); break;
                    }
                }
                foreach (var s in db.DonHangs)
                {
                    foreach (SanPhamMuaNhieu sp in listSPLoaiMot)
                    {
                        if (sp.MaSP == s.MaSanPham)
                        {
                            sp.SoLuong += s.SoLuong.GetValueOrDefault();
                        }
                    }
                    foreach (SanPhamMuaNhieu sp in listSPLoaiHai)
                    {
                        if (sp.MaSP == s.MaSanPham)
                        {
                            sp.SoLuong += s.SoLuong.GetValueOrDefault();
                        }
                    }
                    foreach (SanPhamMuaNhieu sp in listSPLoaiBa)
                    {
                        if (sp.MaSP == s.MaSanPham)
                        {
                            sp.SoLuong += s.SoLuong.GetValueOrDefault();
                        }
                    }
                    foreach (SanPhamMuaNhieu sp in listSPLoaiBon)
                    {
                        if (sp.MaSP == s.MaSanPham)
                        {
                            sp.SoLuong += s.SoLuong.GetValueOrDefault();
                        }
                    }
                }
                listSPLoaiMot.Sort(delegate(SanPhamMuaNhieu x, SanPhamMuaNhieu y)
                {
                    return(x.SoLuong.CompareTo(y.SoLuong) * (-1));
                });
                listSPLoaiHai.Sort(delegate(SanPhamMuaNhieu x, SanPhamMuaNhieu y)
                {
                    return(x.SoLuong.CompareTo(y.SoLuong) * (-1));
                });
                listSPLoaiBa.Sort(delegate(SanPhamMuaNhieu x, SanPhamMuaNhieu y)
                {
                    return(x.SoLuong.CompareTo(y.SoLuong) * (-1));
                });
                listSPLoaiBon.Sort(delegate(SanPhamMuaNhieu x, SanPhamMuaNhieu y)
                {
                    return(x.SoLuong.CompareTo(y.SoLuong) * (-1));
                });

                int t = listSPLoaiMot.Count();
                for (int i = 0; i < 3; i++)
                {
                    dataPointMots.Add(new DataPointLoaiMot(listSPLoaiMot[i].TenSP, listSPLoaiMot[i].SoLuong));
                    dataPointHais.Add(new DataPointLoaiHai(listSPLoaiHai[i].TenSP, listSPLoaiHai[i].SoLuong));
                    dataPointBas.Add(new DataPointLoaiBa(listSPLoaiBa[i].TenSP, listSPLoaiBa[i].SoLuong));
                    dataPointBons.Add(new DataPointLoaiBon(listSPLoaiBon[i].TenSP, listSPLoaiBon[i].SoLuong));
                }
            }

            dataPointDoanhThu.Add(new DataPointDoanhThu("2016", doanhThu[0] / 1000000));
            dataPointDoanhThu.Add(new DataPointDoanhThu("2017", doanhThu[1] / 1000000));
            dataPointDoanhThu.Add(new DataPointDoanhThu("2018", doanhThu[2] / 1000000));
            dataPointDoanhThu.Add(new DataPointDoanhThu("2019", doanhThu[3] / 1000000));

            ViewBag.DataPointDoanhThu = JsonConvert.SerializeObject(dataPointDoanhThu);

            info.TongDoanhThu /= 1000000;


            ViewBag.DataPointLoaiMots = JsonConvert.SerializeObject(dataPointMots);
            ViewBag.DataPointLoaiHais = JsonConvert.SerializeObject(dataPointHais);
            ViewBag.DataPointLoaiBas  = JsonConvert.SerializeObject(dataPointBas);
            ViewBag.DataPointLoaiBons = JsonConvert.SerializeObject(dataPointBons);
            return(View(info));
        }