示例#1
0
        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);
        }
示例#2
0
        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);
        }
示例#3
0
 public bool UpdateSLSach(string ma, int sl, string ngay)
 {
     return(sachSer.UpdateSL(ma, sl, ngay));
 }