public bool AddPhieuXuat(PhieuXuat px) { try { pxSer.AddData(px); foreach (DataRow row in px.DtPX.Rows) { CT_PhieuXuat ctpx = new CT_PhieuXuat(); ctpx.MaPX = px.MaPX; ctpx.MaSach = row["MaSach"].ToString(); ctpx.SoLuong = int.Parse(row["SoLuong"].ToString()); //Get số lượng từ chi tiết phiếu nhập và trừ với số lượng sẵn có trong kho if (!(Object.ReferenceEquals(null, sachSer.GetData(ctpx.MaSach)))) { int soLuongTon = sachSer.GetData(ctpx.MaSach).SlTon - ctpx.SoLuong; if (soLuongTon < 0) { throw new System.Exception("Số lượng xuất lớn hơn số lượng tồn!"); } else { sachSer.UpdateSL(ctpx.MaSach, soLuongTon, px.NgayLapPN); } ctpxSer.AddData(ctpx); } } } catch (Exception ex) { System.Windows.Forms.MessageBox.Show("Error: " + ex.ToString(), "Lỗi", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); return(false); } return(true); }
public bool AddPhieuNhap(PhieuNhap pn) { try { pnSer.AddData(pn); foreach (DataRow row in pn.DtPN.Rows) { CT_PhieuNhap ctpn = new CT_PhieuNhap(); ctpn.MaPN = pn.MaPN; ctpn.MaSach = row["MaSach"].ToString(); ctpn.SoLuong = int.Parse(row["SoLuong"].ToString()); //Get số lượng từ chi tiết phiếu nhập và cộng với số lượng sẵn có trong kho if (!(Object.ReferenceEquals(null, sachSer.GetData(ctpn.MaSach)))) { int soLuongTon = sachSer.GetData(ctpn.MaSach).SlTon + ctpn.SoLuong; sachSer.UpdateSL(ctpn.MaSach, soLuongTon, pn.NgayLapPN); ctpnSer.AddData(ctpn); } else { Sach s = new Sach(row["MaSach"].ToString().Trim(), row["TenSach"].ToString().Trim(), row["MaTL"].ToString().Trim(), row["MaNXB"].ToString().Trim(), row["MaTG"].ToString().Trim(), pn.NgayLapPN, Int32.Parse(row["GiaBan"].ToString()), Int32.Parse(row["GiaNhap"].ToString()), Int32.Parse(row["GiamGia"].ToString()), Int32.Parse(row["SoLuong"].ToString())); sachSer.AddData(s); ctpnSer.AddData(ctpn); } } }catch (Exception ex) { System.Windows.Forms.MessageBox.Show("Error: " + ex.ToString(), "Lỗi", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); return(false); } return(true); }
public bool UpdateSLSach(string ma, int sl, string ngay) { return(sachSer.UpdateSL(ma, sl, ngay)); }