public IActionResult LuuPhieuNhapKho() { double TongTien = 0; PhieuNhapHang pnh = new PhieuNhapHang { NgayNhap = DateTime.Now, TongTien = TongTien }; db.PhieuNhapHang.Add(pnh); db.SaveChanges(); foreach (var item in ListNhaps) { TongTien += item.DonGiaNhap * item.SoLuongNhap; ChiTietPhieuNhap ct = new ChiTietPhieuNhap { MaPn = pnh.MaPn, MaHh = item.MaHh, KichCo = item.KichCo, SoLuongNhap = item.SoLuongNhap, DonGiaNhap = item.DonGiaNhap }; SanPhamKho spk = db.SanPhamKho.SingleOrDefault(p => p.MaHh == ct.MaHh && p.KichCo == ct.KichCo); spk.SoLuong += ct.SoLuongNhap; db.ChiTietPhieuNhap.Add(ct); db.SaveChanges(); } pnh.TongTien = TongTien; db.SaveChanges(); HttpContext.Session.Remove("ListNhap"); return(View("Index")); }
public IActionResult XoaCTHD(int mact) { ChiTietHd ct = db.ChiTietHd.Find(mact); SanPhamKho spk = db.SanPhamKho.SingleOrDefault(p => p.MaHh == ct.MaHh && p.KichCo == ct.KichCo); if (spk != null) { spk.SoLuong += ct.SoLuong; db.ChiTietHd.Remove(ct); } db.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult HuyHoaDon(int mahd) { // xóa các chi tiết hóa đơn liên quan List <ChiTietHd> listCT_Xoa = db.ChiTietHd.Where(p => p.MaHd == mahd).ToList(); foreach (var item in listCT_Xoa) { SanPhamKho spk = db.SanPhamKho.SingleOrDefault(p => p.MaHh == item.MaHh && p.KichCo == item.KichCo); spk.SoLuong += item.SoLuong; db.ChiTietHd.Remove(item); } db.SaveChanges(); // xóa hóa đơn HoaDon hd = db.HoaDon.Find(mahd); db.HoaDon.Remove(hd); db.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult TaoHoaDonBT(string email, string hoten_ngnhan, string dc_nguoinhan, string ghichu, string sdt, string magiamgia) { KhachHang kh = new KhachHang(); kh.HoTen = hoten_ngnhan; kh.DiaChi = dc_nguoinhan; kh.DienThoai = sdt; kh.Email = email; db.KhachHang.Add(kh); db.SaveChanges(); // tạo hóa đơn var getKH = db.KhachHang.Where(p => p.Email == email).OrderByDescending(p => p.MaKh).Take(1); foreach (var titem in getKH) { HoaDon hd = new HoaDon { MaKh = titem.MaKh, HoTen = hoten_ngnhan, DiaChi = dc_nguoinhan, NgayDat = DateTime.Now, GhiChu = ghichu, SdtNguoinhan = sdt, MaTrangThai = 0, PhiVanChuyen = 35000, MaVoucher = magiamgia }; db.HoaDon.Add(hd); // tạo chi tiết hóa đơn // double tt = 0; double tongtienhang = 0; double tongthucthu = 0; foreach (var item in Carts) { tongtienhang += item.ThanhTien; HangHoa hh = db.HangHoa.SingleOrDefault(p => p.MaHh == item.MaHh); // tt = item.SoLuong * hh.DonGia * (1 - hh.GiamGia); ChiTietHd cthd = new ChiTietHd { MaHd = hd.MaHd, MaHh = item.MaHh, DonGia = hh.DonGia, GiamGia = hh.GiamGia, SoLuong = item.SoLuong, KichCo = item.KichCo }; db.ChiTietHd.Add(cthd); db.SaveChanges(); // trừ sản phẩm từ kho SanPhamKho spk = db.SanPhamKho.SingleOrDefault(p => p.MaHh == cthd.MaHh && p.KichCo == cthd.KichCo); if (spk.SoLuong >= cthd.SoLuong) { if (HttpContext.Session.Get <string>("ErrorGH") != null) { HttpContext.Session.Remove("ErrorGH"); } spk.SoLuong = spk.SoLuong - cthd.SoLuong; } else { HangHoa hangHoa = db.HangHoa.SingleOrDefault(p => p.MaHh == cthd.MaHh); string loi = "Hàng hóa có mã " + hangHoa.TenHh + " chỉ còn : " + spk.SoLuong + " sản phẩm"; HttpContext.Session.Set("ErrorGH", loi); db.ChiTietHd.Remove(cthd); db.HoaDon.Remove(hd); db.SaveChanges(); return(RedirectToAction("Index")); } } Voucher v = db.Voucher.Find(magiamgia); if (v != null) { tongthucthu = tongtienhang + 35000 - Convert.ToDouble(tongtienhang * v.GiamGia); } else { tongthucthu = tongtienhang + 35000; } hd.TongTienHang = tongtienhang; hd.TongThucThu = tongthucthu; db.SaveChanges(); HttpContext.Session.Set <string>("mess", "Hóa đơn của bạn đã được gửi tới cửa hàng vui lòng chờ kiểm tra mail để biết trạng thái đơn hàng của bạn . ESHOP"); HttpContext.Session.Remove("GioHang"); } return(RedirectToAction("Index")); }
public IActionResult TaoHoaDon(int makh, string hotenkh, string diachi, string hoten_ngnhan, string dc_nguoinhan, string ghichu, string sdt) { // tạo hóa đơn HoaDon hd = new HoaDon { MaKh = makh, HoTen = hoten_ngnhan, DiaChi = dc_nguoinhan, NgayDat = DateTime.Now, GhiChu = ghichu, SdtNguoinhan = sdt, MaTrangThai = 0, PhiVanChuyen = 35000 }; db.HoaDon.Add(hd); // tạo chi tiết hóa đơn // double tt = 0; KhachHang kh = db.KhachHang.SingleOrDefault(p => p.MaKh == makh); foreach (var item in Carts) { HangHoa hh = db.HangHoa.SingleOrDefault(p => p.MaHh == item.MaHh); // tt = item.SoLuong * hh.DonGia * (1 - hh.GiamGia); ChiTietHd cthd = new ChiTietHd { MaHd = hd.MaHd, MaHh = item.MaHh, DonGia = hh.DonGia, GiamGia = hh.GiamGia, SoLuong = item.SoLuong, KichCo = item.KichCo }; db.ChiTietHd.Add(cthd); db.SaveChanges(); // trừ sản phẩm từ kho SanPhamKho spk = db.SanPhamKho.SingleOrDefault(p => p.MaHh == cthd.MaHh && p.KichCo == cthd.KichCo); if (spk.SoLuong >= cthd.SoLuong) { if (HttpContext.Session.Get <string>("ErrorGH") != null) { HttpContext.Session.Remove("ErrorGH"); } spk.SoLuong = spk.SoLuong - cthd.SoLuong; } else { HangHoa hangHoa = db.HangHoa.SingleOrDefault(p => p.MaHh == cthd.MaHh); string loi = "Hàng hóa có mã " + hangHoa.TenHh + " chỉ còn : " + spk.SoLuong + " sản phẩm"; HttpContext.Session.Set("ErrorGH", loi); db.ChiTietHd.Remove(cthd); db.HoaDon.Remove(hd); db.SaveChanges(); return(RedirectToAction("Index")); } } HttpContext.Session.Set <string>("mess", "Hóa đơn của bạn đã được gửi tới cửa hàng vui lòng chờ kiểm tra mail để biết trạng thái đơn hàng của bạn . ESHOP"); HttpContext.Session.Remove("GioHang"); return(RedirectToAction("Index")); }