public bool DatHang(string ten, string sdt, string email, string diachi, string total, string id, List<CartItem> cart) { try { if (id != null) { DonDH don = new DonDH() { Ten = ten, SDT = sdt, Email = email, DiaChi = diachi, NgayDat = DateTime.Now, TongTien = int.Parse(total), MaKhachHang = int.Parse(id) }; db.DonDHs.Add(don); } else { DonDH don = new DonDH() { Ten = ten, SDT = sdt, Email = email, DiaChi = diachi, NgayDat = DateTime.Now, TongTien = int.Parse(total) }; db.DonDHs.Add(don); } db.SaveChanges(); foreach (var item in cart) { CT_DonDH ct = new CT_DonDH() { MaDonDH = db.DonDHs.Max(x => x.MaDonDH), SP_ID = item.Product.SP_ID, DonGiaDat = (int)item.Product.DonGia, SoLuongDat = item.Quantity }; db.CT_DonDH.Add(ct); TonKho ton = new TonKho() { SP_ID = item.Product.SP_ID, ThoiGian = DateTime.Now, SoLuongTon = tonkho.TimTheoSPID(item.Product.SP_ID).SoLuongTon - item.Quantity }; db.TonKhoes.Add(ton); } db.SaveChanges(); return true; } catch { return false; } }
// Hàm tự viết // Xuất kho public void Them_Xuat(TonKho tk) { string sql = "insert into TonKho values(@SP_ID, @ThoiGian,(select top 1 SoLuongTon from TonKho where SP_ID=@SP_ID order by ThoiGian desc)-@SoLuongTon)"; SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID); SqlParameter thoigian = new SqlParameter("@ThoiGian", tk.ThoiGian); SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon); SqlDataProvider.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton); }
// Hàm tự viết // Thêm mới 1 sản phẩm vào tồn kho public void Them_Moi(TonKho tk) { string sql = "insert into TonKho values(@SP_ID, @ThoiGian, @SoLuongTon)"; SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID); SqlParameter thoigian = new SqlParameter("@ThoiGian", tk.ThoiGian); SqlParameter soluongton = new SqlParameter("@SoLuongTon", tk.SoLuongTon); SqlDataProvider.ExecuteNonQuery(sql, CommandType.Text, spid, thoigian, soluongton); }
public List<TonKho> HienThiTonKho() { List<TonKho> data = new List<TonKho>(); string sql = "select sp.SP_ID,SoLuongTon,ThoiGian from SanPham sp, TonKho tk" + " where sp.SP_ID=tk.SP_ID and ThoiGian = all" + " (select max(thoigian) from TonKho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID"; SqlDataReader rd = SqlDataProvider.ExecuteQueryWithDataReader(sql, CommandType.Text); if (rd.HasRows) { while (rd.Read()) { TonKho tk = new TonKho() { SP_ID = int.Parse(rd[0].ToString()), //TenSP = rd[1].ToString(), SoLuongTon = int.Parse(rd[1].ToString()), ThoiGian = DateTime.Parse(rd[2].ToString()) }; data.Add(tk); } } return data; }
// Hàm tự viết // Tìm kiếm tồn kho theo thời gian (năm - tháng) // Hàm tự viết // Tìm kiếm tồn kho theo khoảng thời gian public List<TonKho> TimKiemTonKho_Ngay(DateTime ngaytu, DateTime ngayden) { List<TonKho> data = new List<TonKho>(); string sql = "select sp.SP_ID,SoLuongTon,ThoiGian from SanPham sp, TonKho tk" + " where sp.SP_ID=tk.SP_ID and (ThoiGian >=@NgayTu and ThoiGian<=@NgayDen) and ThoiGian = all" + " (select max(thoigian) from tonkho tk1 where tk1.SP_ID=sp.SP_ID group by SP_ID) order by tk.SP_ID"; SqlParameter ngay_tu = new SqlParameter("@NgayTu", ngaytu); SqlParameter ngay_den = new SqlParameter("@NgayDen", ngayden.AddDays(1)); SqlDataReader rd = SqlDataProvider.ExecuteQueryWithDataReader(sql, CommandType.Text, ngay_tu, ngay_den); if (rd.HasRows) { while (rd.Read()) { TonKho tk = new TonKho() { SP_ID = int.Parse(rd[0].ToString()), //TenSP = rd[1].ToString(), SoLuongTon = int.Parse(rd[1].ToString()), ThoiGian = DateTime.Parse(rd[2].ToString()) }; data.Add(tk); } } return data; }
// Hàm tự viết // Xóa sản phẩm public void Xoa(TonKho tk) { string sql = "Delete TonKho where SP_ID=@SP_ID"; SqlParameter spid = new SqlParameter("@SP_ID", tk.SP_ID); SqlDataProvider.ExecuteNonQuery(sql, CommandType.Text, spid); }
public TonKho TimTheoSPID(int id) { try { var tonkho = db.TonKhoes.Where(x => x.SP_ID == id).ToList(); List<TonKho> ton = new List<TonKho>(); foreach (var i in tonkho) { TonKho t = new TonKho() { SP_ID = i.SP_ID, ThoiGian = i.ThoiGian, SoLuongTon = i.SoLuongTon }; ton.Add(t); } return ton.Last(); } catch { return null; } }