Ejemplo n.º 1
0
        public ActionResult merchantDuyetDonHang2(DonDatHangMerchant ddh)
        {
            // Lấy dữ liệu của đơn hàng đó
            DonDatHangMerchant ddhUpdate = db.DonDatHangMerchants.Single(n => n.MaDDHMerchant == ddh.MaDDHMerchant);

            ViewBag.MaTrangThai = new SelectList(db.TrangThaiGiaoHangs.OrderBy(n => n.MaTrangThai), "MaTrangThai", "TenTrangThai", ddhUpdate.MaTrangThai);

            ddhUpdate.DaHuy             = ddh.DaHuy;
            ddhUpdate.TinhTrangGiaoHang = ddh.TinhTrangGiaoHang;
            ddhUpdate.MaTrangThai       = ddh.MaTrangThai;

            // list chi tiet ChiTietDonHang
            var lstChiTietDH = db.ChiTietDonDatHangs.Where(n => n.MaDDH == ddh.MaDDH && n.SanPham.MaThanhVien == ddh.MaMerchant);

            foreach (var item in lstChiTietDH)
            {
                item.MaTrangThai = ddh.MaTrangThai;
            }
            var duyetChiTietDHMerchant = db.ChiTietDonDatHangMerchants.Where(n => n.MaDDHMerchant == ddh.MaDDHMerchant && n.SanPham.MaThanhVien == ddh.MaMerchant);

            foreach (var item in duyetChiTietDHMerchant)
            {
                item.MaTrangThai = ddh.MaTrangThai;
            }
            db.SaveChanges();
            // Lấy ds chi tiết đơn hàng để hiển thị cho người dùng thấy
            var lstChiTietDHMerchant = db.ChiTietDonDatHangMerchants.Where(n => n.MaDDHMerchant == ddh.MaDDHMerchant);

            ViewBag.ListChiTietDH = lstChiTietDHMerchant;



            //GuiEmail("Xác nhận đơn hàng", "*****@*****.**", "*****@*****.**", "zewang.help", "Đơn hàng của bạn đã được đặt thành công");
            return(View(ddhUpdate));
        }
Ejemplo n.º 2
0
        public ActionResult merchantDuyetDonHang2(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DonDatHangMerchant model = db.DonDatHangMerchants.SingleOrDefault(n => n.MaDDHMerchant == id);

            if (model == null)
            {
                return(HttpNotFound());
            }
            ViewBag.MaTrangThai = new SelectList(db.TrangThaiGiaoHangs.OrderBy(n => n.MaTrangThai), "MaTrangThai", "TenTrangThai", model.MaTrangThai);
            // Lấy ds chi tiết đơn hàng để hiển thị cho người dùng thấy
            var lstChiTietDHMerchant = db.ChiTietDonDatHangMerchants.Where(n => n.MaDDHMerchant == id);

            ViewBag.ListChiTietDH = lstChiTietDHMerchant;
            return(View(model));
        }
        //Xây dựng chức năng đặt hàng
        public ActionResult DatHang(KhachHang kh)
        {
            // Kiểm tra giỏ hàng tồn tại hay chưa
            if (Session["GioHang"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            KhachHang khang = new KhachHang();

            if (Session["TaiKhoan"] == null)
            {
                //Thêm kh vào bảng KhachHang ...khi chưa đăng nhập
                khang = kh;
                db.KhachHangs.Add(khang);
                db.SaveChanges();
            }
            else
            {
                // Thêm kh bằng session Taikhoan
                ThanhVien tv = Session["TaiKhoan"] as ThanhVien;
                khang.TenKH       = tv.HoTen;
                khang.DiaChi      = tv.DiaChi;
                khang.Email       = tv.Email;
                khang.SoDienThoai = tv.SoDienThoai;
                khang.MaThanhVien = tv.MaThanhVien;
                db.KhachHangs.Add(khang);
                db.SaveChanges();
            }
            //Thêm đơn hàng
            DonDatHang ddh = new DonDatHang();

            ddh.MaKH              = khang.MaKH;
            ddh.NgayDat           = DateTime.Now;
            ddh.MaTrangThai       = 1;
            ddh.TinhTrangGiaoHang = false;
            ddh.DaThanhToan       = false;
            ddh.UuDai             = 0;
            ddh.DaHuy             = false;
            ddh.DaXoa             = false;
            db.DonDatHangs.Add(ddh);
            db.SaveChanges();
            // Thêm chi tiết đơn hàng
            List <itemGioHang> lstGioHang = LayGioHang();

            foreach (var item in lstGioHang)
            {
                ChiTietDonDatHang ctdh = new ChiTietDonDatHang();
                ctdh.MaDDH       = ddh.MaDDH;
                ctdh.MaTrangThai = 1;
                ctdh.TenSP       = item.TenSP;
                ctdh.MaSP        = item.MaSP;
                ctdh.SoLuong     = item.SoLuong;
                ctdh.DonGia      = item.DonGia;
                db.ChiTietDonDatHangs.Add(ctdh);
                // trừ tồn
                SanPham sp = db.SanPhams.SingleOrDefault(n => n.MaSP == item.MaSP);
                sp.SoLuongTon -= item.SoLuong;
            }
            db.SaveChanges();
            Session["GioHang"] = null;
            var lstSP       = db.ChiTietDonDatHangs.Where(n => n.MaDDH == ddh.MaDDH);
            var lstMerchant = db.ThanhViens.Where(n => n.MaLoaiTV == 2).ToList();

            foreach (var merchant in lstMerchant)
            {
                var find = lstSP.Where(n => n.SanPham.MaThanhVien == merchant.MaThanhVien);
                if (find.Any())
                {
                    DonDatHangMerchant ddhMerchant = new DonDatHangMerchant();
                    ddhMerchant.MaDDH       = ddh.MaDDH;
                    ddhMerchant.MaKH        = ddh.MaKH;
                    ddhMerchant.MaMerchant  = merchant.MaThanhVien;
                    ddhMerchant.NgayDat     = ddh.NgayDat;
                    ddhMerchant.MaTrangThai = 1;
                    db.DonDatHangMerchants.Add(ddhMerchant);
                    db.SaveChanges();
                    foreach (var item in find)
                    {
                        ChiTietDonDatHangMerchant ctdhMerchant = new ChiTietDonDatHangMerchant();
                        ctdhMerchant.MaDDHMerchant = ddhMerchant.MaDDHMerchant;
                        ctdhMerchant.MaTrangThai   = 1;

                        ctdhMerchant.MaSP    = item.MaSP;
                        ctdhMerchant.TenSP   = item.TenSP;
                        ctdhMerchant.SoLuong = item.SoLuong;
                        ctdhMerchant.DonGia  = item.DonGia;
                        db.ChiTietDonDatHangMerchants.Add(ctdhMerchant);
                    }
                    db.SaveChanges();
                }
            }
            return(RedirectToAction("XemGioHang"));
        }