示例#1
0
        public bool SuaSach(Sach_DTO sach_DTO)
        {
            try
            {
                Sach sach = data.Saches.SingleOrDefault(u => u.MaSach == sach_DTO.MaSach);

                sach.MaSach        = sach_DTO.MaSach;
                sach.TenSach       = sach_DTO.TenSach;
                sach.MaDauSach     = sach_DTO.MaDauSach;
                sach.TenTacGia     = sach_DTO.TenTacGia;
                sach.TenNhaXuatBan = sach_DTO.TenNhaXuatBan;
                sach.NamXuatBan    = sach_DTO.NamXuatBan;
                sach.SoLuong       = sach_DTO.SoLuong;
                sach.DonGia        = decimal.Parse(sach_DTO.DonGia.ToString());

                data.SaveChanges();
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
示例#2
0
        public static List <Sach_DTO> TimSach(string dk, string giatri)
        {
            string sTruyVan = @"select * from sach where " + dk + " like N'%" + giatri + "%'";

            con = DataProvider.MoKetNoi();
            DataTable       dt      = DataProvider.TruyVanLayDuLieu(sTruyVan, con);
            List <Sach_DTO> lstsach = new List <Sach_DTO>();

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                Sach_DTO s = new Sach_DTO();
                s.MaSach    = dt.Rows[i]["MaSach"].ToString();
                s.TenSach   = dt.Rows[i]["TenSach"].ToString();
                s.TheLoai   = dt.Rows[i]["TheLoai"].ToString();
                s.TinhTrang = dt.Rows[i]["TinhTrang"].ToString();
                s.SoLuong   = dt.Rows[i]["SoLuong"].ToString();
                s.NhaXB     = dt.Rows[i]["NXB"].ToString();
                s.NamXB     = dt.Rows[i]["NamXB"].ToString();
                s.TacGia    = dt.Rows[i]["TacGia"].ToString();
                lstsach.Add(s);
            }
            DataProvider.DongKetNoi(con);
            return(lstsach);
        }
示例#3
0
        public static Sach_DTO TimSach_TheoMa(string masach)
        {
            string sTruyVan = @"select * from sach where masach='" + masach + "'";

            con = DataProvider.MoKetNoi();
            DataTable dt = DataProvider.TruyVanLayDuLieu(sTruyVan, con);

            if (dt.Rows.Count == 0)
            {
                return(null);
            }
            Sach_DTO s = new Sach_DTO();

            s.MaSach    = dt.Rows[0]["MaSach"].ToString();
            s.TenSach   = dt.Rows[0]["TenSach"].ToString();
            s.TheLoai   = dt.Rows[0]["TheLoai"].ToString();
            s.TinhTrang = dt.Rows[0]["TinhTrang"].ToString();
            s.SoLuong   = dt.Rows[0]["SoLuong"].ToString();
            s.NhaXB     = dt.Rows[0]["NXB"].ToString();
            s.NamXB     = dt.Rows[0]["NamXB"].ToString();
            s.TacGia    = dt.Rows[0]["TacGia"].ToString();
            DataProvider.DongKetNoi(con);
            return(s);
        }
        private void BorrowBook_Right_Click(object sender, EventArgs e)
        {
            ListView.SelectedListViewItemCollection selected = lstBorrowBook_SachCoTheMuon.SelectedItems;
            if (selected.Count < 1)
            {
                return;
            }
            else

            {
                Sach_DTO sach_DTO = new Sach_DTO();
                sach_DTO = sach_BUS.TimSachTheoMaSach(lstBorrowBook_SachCoTheMuon.SelectedItems[0].Text);
                //    BorrowBook_nudSoLuong.Maximum = sach_DTO.SoLuong;

                ListViewItem item = new ListViewItem();
                item.Text = sach_DTO.MaSach;
                item.SubItems.Add(sach_DTO.TenSach);
                item.SubItems.Add(BorrowBook_nudSoLuong.Value.ToString());

                lstBorrowBook_SachMuon.Items.Add(item);

                lstBorrowBook_SachCoTheMuon.Items.Remove(lstBorrowBook_SachCoTheMuon.SelectedItems[0]);
            }
        }
示例#5
0
        //Trả về đối tượng SACH giống với tên
        public static string Insert(Sach_DTO s)
        {
            string sql = "insert into SACH(TenSach,MaTheLoai,TacGia,SoLuongTon,DonGiaBan) values(N'" + s.TenSach + "'," + s.MaTheLoai + ",N'" + s.TacGia + "'," + s.SoLuongTon + "," + s.DonGiaBan + ")";

            return(DataAccess.ThucThiNonQuery(sql));
        }
示例#6
0
        //Cập nhật 1 cuốn sách
        public static string Update(Sach_DTO s)
        {
            string sql = "update  SACH set TenSach= (N'" + s.TenSach + "'),MaTheLoai=(" + s.MaTheLoai + "),TacGia = (N'" + s.TacGia + "'),SoLuongTon=(" + s.SoLuongTon + "),DonGiaBan=(" + s.DonGiaBan + ")" + " where MaSach = " + s.MaSach + "";

            return(DataAccess.ThucThiNonQuery(sql));
        }
示例#7
0
 public bool ThemSachMotDongSach(Sach_DTO sachDTO)
 {
     return sach_DAO.ThemSachMotDongSach(sachDTO);
 }
示例#8
0
 public bool SuaSach(Sach_DTO sachDTO)
 {
     return sach_DAO.SuaSach(sachDTO);
 }
示例#9
0
        //Cập nhật 1 cuốn sách
        public static string Update(Sach_DTO s)
        {
            string sql = "update  SACH set MaDauSach = " + s.MaDauSach + ",NhaXuatBan =N'" + s.NhaXuatBan + "',NamXuatBan=" + s.NamXuatBan + " where MaSach = " + s.MaSach + "";

            return(DataAccess.ThucThiNonQuery(sql));
        }
示例#10
0
 public static bool SuaSach(Sach_DTO s)
 {
     return(Sach_DAO.SuaSach(s));
 }
示例#11
0
        private void btnBoSung_Click(object sender, EventArgs e)
        {
            DataTable dt = ThamSo_BUS.GetThamSoAll();

            if (dt.Rows.Count != 0)
            {
                int nhapMin     = int.Parse(dt.Rows[0].ItemArray[1].ToString());
                int luongTonMax = int.Parse(dt.Rows[0].ItemArray[3].ToString());
                //int tiLeDonGiaBan = int.Parse(dt.Rows[0].ItemArray[1].ToString());
                CT_PhieuNhapSach_DTO c = new CT_PhieuNhapSach_DTO();
                try
                {
                    c.MaPNS = int.Parse(txtMaPhieuNhap.Text);
                }
                catch (FormatException)
                {
                    MessageBox.Show("Mã phiếu nhập không được để trống");
                    return;
                }
                try
                {
                    c.MaSach     = int.Parse(txtMaSach.Text);
                    c.TenSach    = txtTenSach.Text;
                    c.TenTheLoai = txtTheLoai.Text;
                }
                catch (FormatException)
                {
                    MessageBox.Show("Mã sách không được để trống");
                    return;
                }
                try
                {
                    if (int.Parse(txtSoLuong.Text) < nhapMin)
                    {
                        MessageBox.Show(string.Format("Số lượng phải lớn hơn số lượng quy định ({0} quyển)", nhapMin));
                        return;
                    }
                    else
                    {
                        c.SoLuongNhap = int.Parse(txtSoLuong.Text);
                    }
                }
                catch (FormatException)
                {
                    MessageBox.Show("Số lượng phải là kiểu số");
                    return;
                }
                try
                {
                    if (txtDonGiaNhap.Text != "")
                    {
                        c.DonGiaNhap = UInt64.Parse(txtDonGiaNhap.Text);
                    }
                    else
                    {
                        MessageBox.Show("Đơn giá nhập không được để trống");
                        return;
                    }
                }
                catch (FormatException)
                {
                    MessageBox.Show("Đơn giá nhập phải là kiểu số");
                    return;
                }
                DataTable dt2           = ThamSo_BUS.SelectSoLuongTon(c.MaSach);
                int       luongTon      = int.Parse(dt2.Rows[0].ItemArray[4].ToString());
                int       soLuongTonNew = luongTon + int.Parse(txtSoLuong.Text);
                c.ThanhTien = (UInt64)c.SoLuongNhap * c.DonGiaNhap;
                if (luongTon < luongTonMax)
                {
                    string ketQua = PhieuNhapSach_BUS.ThemChiTietPhieuNhap(c);
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                    }
                    else
                    {
                        Sach_DTO s = new Sach_DTO();
                        s.MaSach     = int.Parse(txtMaSach.Text);
                        s.SoLuongTon = soLuongTonNew;
                        Sach_BUS.UpdateSoLuongTon(s);

                        PhieuNhapSach_DTO p = new PhieuNhapSach_DTO();
                        p.MaPNS = int.Parse(txtMaPhieuNhapCT.Text);
                        PhieuNhapSach_BUS.CapNhatTongTien(p);
                        HienThiCTPhieuNhap();
                        MessageBox.Show("Thành công");
                        //dgvPhieuNhap = new DataGridView();
                        lblTongtien.Text = "" + p.TongTien;
                        //HienThiDanhSachPhieuNhap();
                    }
                }
                else
                {
                    MessageBox.Show("Chỉ nhập các đầu sách có lượng tồn ít hơn theo quy định");
                }
            }
            else
            {
                MessageBox.Show("Không lấy được các tham số");
                return;
            }
        }
示例#12
0
        //Update thuộc tính số lượng tồn
        public static string UpdateSoLuongTon(Sach_DTO s)
        {
            string sql = "update SACH set SoLuongTon=(" + s.SoLuongTon + ") where MaSach = " + s.MaSach + "";

            return(DataAccess.ThucThiNonQuery(sql));
        }
示例#13
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            // kiểm tra xem khách hàng này đã thanh toán sách chưa, nếu chưa mới cho phép cập nhật
            if (int.Parse(txtDaThanhToan.Text) != 0)
            {
                MessageBox.Show("Hóa đơn này đã thanh toán một phần tiền! \nBạn không được cập nhật lại số lượng sách!");
                return;
            }

            // Kiểm tra xem có mã sách trong bảng CT_HOADON không
            if (HoaDon_DAO.KiemtramaSach(int.Parse(txtMaSach.Text), int.Parse(txtMaHoaDonCT.Text)))
            {
                MessageBox.Show("Không có mã sách mà bạn cần sửa");
                return;
            }
            // cập nhật tồn sách
            string    ketQua;
            DataTable dt3             = ThamSo_BUS.SelectSoLuongTon(int.Parse(txtMaSach.Text));
            int       luongTonHienTai = int.Parse(dt3.Rows[0].ItemArray[4].ToString());
            int       soLuongthaydoi  = int.Parse(txtSoLuong.Text);
            int       soLuonglucdau   = HoaDon_BUS.SoLuongKHMua(int.Parse(txtMaSach.Text), int.Parse(txtMaHoaDonCT.Text));
            int       soluongtonnew;

            if (soLuongthaydoi > soLuonglucdau)
            {
                soluongtonnew = luongTonHienTai - (soLuongthaydoi - soLuonglucdau);
            }
            else
            {
                soluongtonnew = luongTonHienTai + (soLuonglucdau - soLuongthaydoi);
            }
            Sach_DTO s = new Sach_DTO();

            s.MaSach     = int.Parse(txtMaSach.Text);
            s.SoLuongTon = (int)soluongtonnew;
            ketQua       = Sach_BUS.UpdateSoLuongTon(s);
            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua);
                return;
            }

            // cập nhật tiền nợ của khách
            // Lấy ra tiền nợ đang có của khách hàng
            DataTable dt2               = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            UInt64    tienNoDangCo      = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());
            UInt64    TienmuaLucdau     = UInt64.Parse(soLuonglucdau.ToString()) * UInt64.Parse(txtDonGia.Text);
            UInt64    TienmuaLucThaydoi = UInt64.Parse(soLuongthaydoi.ToString()) * UInt64.Parse(txtDonGia.Text);
            UInt64    tienNoSaukhiCapNhat;

            // Tính lại tiền nợ của khách khi thay dởi số lượng sách
            if (TienmuaLucdau < TienmuaLucThaydoi)
            {
                tienNoSaukhiCapNhat = tienNoDangCo + (TienmuaLucThaydoi - TienmuaLucdau);
            }
            else
            {
                tienNoSaukhiCapNhat = tienNoDangCo - (TienmuaLucdau - TienmuaLucThaydoi);
            }

            KhachHang_DTO kh = new KhachHang_DTO();

            kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
            kh.SoTienNo    = tienNoSaukhiCapNhat;
            string ketQua2 = KhachHang_BUS.UpdateTienNo(kh);

            if (ketQua2 != "Success")
            {
                MessageBox.Show(ketQua2);
                return;
            }


            // Cập nhật số lượng sách
            CT_HoaDon_DTO ct = new CT_HoaDon_DTO();

            ct.MaSach    = int.Parse(txtMaSach.Text);
            ct.MaHD      = int.Parse(txtMaHoaDonCT.Text);
            ct.SoLuong   = uint.Parse(txtSoLuong.Text);
            ct.ThanhTien = TienmuaLucThaydoi;
            ketQua       = HoaDon_BUS.SuaSoLuongSachKHMua(ct);
            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua);
                return;
            }

            // Cap nhật lại Tổng tiền và Còn Lại
            HoaDon_DTO hd = new HoaDon_DTO();

            hd.MaHD      = int.Parse(txtMaHoaDon.Text);
            hd.TongTien  = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
            hd.ThanhToan = 0;
            hd.ConLai    = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
            HoaDon_BUS.UpdateTongTien(hd);
            HoaDon_BUS.UpdateConLai(hd);

            //HienThiDanhSachHoaDon();
            HienThiDanhSachChiTietHoaDon();
        }
示例#14
0
 private void btnOkSua_Click(object sender, EventArgs e)
 {
     if ((txtMaSach.Text != "") && (txtTenSach.Text != "") && (txtNamXB.Text != "") && (txtSoTrang.Text != "") && (txtGia.Text != "") && (txtSoBan.Text != "") && (txtSoBanTon.Text != "") && (cboTacGia.SelectedValue != null) && (cboTheLoai.SelectedValue != null) && (cboNXB.SelectedValue != null))
     {
         try
         {
             Sach_DTO sach = new Sach_DTO(txtMaSach.Text, txtTenSach.Text, Convert.ToString(cboTacGia.SelectedValue), Convert.ToString(cboTheLoai.SelectedValue), Convert.ToString(cboNXB.SelectedValue), Convert.ToInt32(txtNamXB.Text), Convert.ToInt32(txtSoTrang.Text), Convert.ToInt32(txtGia.Text), Convert.ToInt32(txtSoBan.Text), Convert.ToInt32(txtSoBanTon.Text));
             BUS_OBJ.suaSach(sach);
             HienThiDuLieu();
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.Message);
         }
         finally
         {
             btnCancel_Click(sender, e);
             //if (conn.State == ConnectionState.Open) conn.Close();
         }
     }
     else
     {
         if (cboTacGia.SelectedValue == null)
         {
             MetroFramework.MetroMessageBox.Show(this, "Chưa có tác giả này.", "Lỗi.", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             cboTacGia.Focus();
         }
         else if (cboTheLoai.SelectedValue == null)
         {
             MetroFramework.MetroMessageBox.Show(this, "Chưa có thể loại này.", "Lỗi.", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             cboTheLoai.Focus();
         }
         else if (cboNXB.SelectedValue == null)
         {
             MetroFramework.MetroMessageBox.Show(this, "Chưa có NXB này.", "Lỗi.", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             cboNXB.Focus();
         }
         else
         {
             MetroFramework.MetroMessageBox.Show(this, "Nhập thiếu dữ liệu.", "Lỗi.", MessageBoxButtons.OK, MessageBoxIcon.Warning);
             if (txtSoBanTon.Text == "")
             {
                 txtSoBanTon.Focus();
             }
             if (txtSoBan.Text == "")
             {
                 txtSoBan.Focus();
             }
             if (txtGia.Text == "")
             {
                 txtGia.Focus();
             }
             if (txtSoTrang.Text == "")
             {
                 txtSoTrang.Focus();
             }
             if (txtNamXB.Text == "")
             {
                 txtNamXB.Focus();
             }
             if (txtTenSach.Text == "")
             {
                 txtTenSach.Focus();
             }
             if (txtMaSach.Text == "")
             {
                 txtMaSach.Focus();
             }
         }
     }
 }
示例#15
0
        private void btnXoaSach_Click(object sender, EventArgs e)
        {
            // Lấy ra tiền nợ đang có của khách hàng
            if (ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text)) == null)
            {
                MessageBox.Show("Bạn không được xóa sách này, vì khách hàng này đã trả một phần tiền của sách này bên phiếu thu tiền hoặc đã thanh toán trực tiếp!");
                return;
            }
            DataTable dt2          = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            UInt64    tienNoDangCo = UInt64.Parse(dt2.Rows[0].ItemArray[5].ToString());

            //Lấy ra ThanhTien cua MaSach được chọn để xóa
            UInt64        TiencuaSachDcXoa = HoaDon_BUS.ThanhTienSach(int.Parse(txtMaHoaDonCT.Text), int.Parse(txtMaSach.Text));
            KhachHang_DTO kh = new KhachHang_DTO();

            // Tính lại tiền nợ của khách khi xóa sách
            UInt64 tiennoSaukhiXoaSach = tienNoDangCo - TiencuaSachDcXoa;

            kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
            kh.SoTienNo    = tiennoSaukhiXoaSach;
            string ketQua2 = KhachHang_BUS.UpdateTienNo(kh);

            if (ketQua2 != "Success")
            {
                MessageBox.Show("Bạn không được xóa sách này, vì khách hàng này đã trả một phần tiền của sách này bên phiếu thu tiền hoặc đã thanh toán trực tiếp!");
                return;
            }
            // Cập nhật lại tồn sau khi xóa sách
            DataTable dt3             = ThamSo_BUS.SelectSoLuongTon(int.Parse(txtMaSach.Text));
            uint      luongTonHienTai = uint.Parse(dt3.Rows[0].ItemArray[4].ToString());

            uint luongsachdamua = uint.Parse(HoaDon_BUS.SoLuongKHMua(int.Parse(txtMaSach.Text), int.Parse(txtMaHoaDonCT.Text)).ToString());

            uint     soluongtonnew = luongTonHienTai + luongsachdamua;
            Sach_DTO s             = new Sach_DTO();

            s.MaSach     = int.Parse(txtMaSach.Text);
            s.SoLuongTon = (int)soluongtonnew;
            ketQua2      = Sach_BUS.UpdateSoLuongTon(s);
            if (ketQua2 != "Success")
            {
                MessageBox.Show(ketQua2);
                return;
            }


            // xóa sách trong CT_HOADON
            string ketQua = HoaDon_BUS.XoaSachtrongCT(int.Parse(txtMaSach.Text), int.Parse(txtMaHoaDonCT.Text));

            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua);
                return;
            }

            // Cap nhật lại Tổng tiền và Còn Lại
            HoaDon_DTO hd = new HoaDon_DTO();

            if (HoaDon_DAO.KiemtramaHD(int.Parse(txtMaHoaDon.Text)))
            {
                hd.MaHD      = int.Parse(txtMaHoaDon.Text);
                hd.TongTien  = 0;
                hd.ThanhToan = 0;
                hd.ConLai    = 0;
            }
            else
            {
                hd.MaHD      = int.Parse(txtMaHoaDon.Text);
                hd.TongTien  = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
                hd.ThanhToan = 0;
                hd.ConLai    = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
            }

            HoaDon_BUS.UpdateTongTien(hd);
            HoaDon_BUS.UpdateConLai(hd);

            //HienThiDanhSachHoaDon();
            HienThiDanhSachChiTietHoaDon();
        }
示例#16
0
        private void btnBoSung_Click(object sender, EventArgs e)
        {
            // kiểm tra xem khách hàng đã thanh toán sách này chưa, nếu chưa mới cho phép thêm sách
            if (int.Parse(txtDaThanhToan.Text) != 0)
            {
                MessageBox.Show("Hóa đơn này đã thanh toán một phần tiền! \nBạn không được thêm sách!");
                return;
            }

            DataTable dt                = ThamSo_BUS.GetThamSoAll();
            int       noToiDa           = int.Parse(dt.Rows[0].ItemArray[4].ToString());
            int       luongTonSauKhiBan = int.Parse(dt.Rows[0].ItemArray[2].ToString());
            DataTable dt2               = ThamSo_BUS.SelectTienNoKH(int.Parse(txtMaKhachHang.Text));
            int       tienNo            = int.Parse(dt2.Rows[0].ItemArray[5].ToString());

            CT_HoaDon_DTO ct = new CT_HoaDon_DTO();

            try
            {
                ct.MaHD = int.Parse(txtMaHoaDonCT.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã hóa đơn không được để trống");
                return;
            }
            try
            {
                ct.MaSach = int.Parse(txtMaSach.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã sách phải được chọn từ danh sách");
                btnMaSach_Click(sender, e);
                return;
            }
            try
            {
                ct.SoLuong = uint.Parse(txtSoLuong.Text);
            }
            catch (FormatException)
            {
                MessageBox.Show("Số lượng mua phải là số và không được để trống");
                return;
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng không được âm");
                return;
            }
            if (tienNo <= noToiDa)
            {
                DataTable dt3      = ThamSo_BUS.SelectSoLuongTon(ct.MaSach);
                uint      luongTon = uint.Parse(dt3.Rows[0].ItemArray[4].ToString());
                uint      luongMua = 0;
                try
                {
                    luongMua = uint.Parse(txtSoLuong.Text);
                }
                catch (FormatException)
                {
                    MessageBox.Show("Số lượng mua phải là số và không được để trống");
                    txtSoLuong.Text   = "";
                    txtThanhTien.Text = "";
                    return;
                }
                catch (OverflowException)
                {
                    MessageBox.Show("Số lượng không được âm");
                    return;
                }
                ct.DonGia         = UInt64.Parse(txtDonGia.Text);
                ct.ThanhTien      = (UInt64)luongMua * ct.DonGia;
                txtThanhTien.Text = ct.ThanhTien.ToString();
                if ((luongTon - luongMua) < luongTonSauKhiBan)
                {
                    MessageBox.Show("Số lượng tồn của sách này sau khi bán đã nhỏ hơn quy định");
                    return;
                }
                string ketQua = HoaDon_BUS.ThemHoaDonChiTiet(ct);
                if (ketQua != "Success")
                {
                    MessageBox.Show(ketQua);
                    txtMaSach.Text  = "";
                    txtSoLuong.Text = "0";
                    txtDonGia.Text  = "";
                    return;
                }
                else
                {
                    uint     soluongtonnew = luongTon - luongMua;
                    Sach_DTO s             = new Sach_DTO();
                    s.MaSach     = int.Parse(txtMaSach.Text);
                    s.SoLuongTon = (int)soluongtonnew;
                    ketQua       = Sach_BUS.UpdateSoLuongTon(s);
                    if (ketQua != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }

                    HoaDon_DTO hd = new HoaDon_DTO();
                    hd.MaHD      = ct.MaHD;
                    hd.TongTien  = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
                    hd.ThanhToan = 0;
                    hd.ConLai    = UInt64.Parse(HoaDon_BUS.TongThanhTien(hd).Rows[0].ItemArray[0].ToString());
                    HoaDon_BUS.UpdateTongTien(hd);
                    HoaDon_BUS.UpdateConLai(hd);

                    KhachHang_DTO kh = new KhachHang_DTO();
                    kh.MaKhachHang = int.Parse(txtMaKhachHang.Text);
                    kh.SoTienNo    = UInt64.Parse(tienNo.ToString()) + ct.ThanhTien;
                    string ketQua2 = KhachHang_BUS.UpdateTienNo(kh);
                    if (ketQua2 != "Success")
                    {
                        MessageBox.Show(ketQua);
                        return;
                    }
                    MessageBox.Show("Thành công");
                    HienThiDanhSachChiTietHoaDon();
                }
            }
            else
            {
                MessageBox.Show("Tiền nợ quý khách đã quá quy định để mua sách");
            }
        }
示例#17
0
        //Trả về bảng chứa thông tin theo NhaXuatBan trong form DanhSachSach
        public static DataTable SelectSachLikeNhaXuatBanDanhSachSach(Sach_DTO s)
        {
            string sql = "select MaSach,ds.MaDauSach,TacGia,MaTheLoai,NhaXuatBan,NamXuatBan,DonGiaBan,SoLuongTon from DAUSACH ds, CT_TACGIA ct,SACH s where ds.MaDauSach=ct.MaDauSach and ds.MaDauSach=s.MaDauSach and NhaXuatBan like N'%" + s.NhaXuatBan + "%'";

            return(DataAccess.ThucThiQuery(sql));
        }
示例#18
0
        //Trả về bảng chứa thông tin theo MaSach
        public static DataTable SelectSachLikeMaSachDanhSachSach(Sach_DTO s)
        {
            string sql = "select MaSach,TenSach,TacGia,MaTheLoai,DonGiaBan,SoLuongTon from SACH where MaSach=" + s.MaSach + "";

            return(DataAccess.ThucThiQuery(sql));
        }
示例#19
0
 //Thêm 1 cuốn sách vào bảng SÁCH
 static public string Insert(Sach_DTO s)
 {
     return(Sach_DAO.Insert(s));
 }
示例#20
0
        //Update thuộc tính số lượng tồn trong bảng SACH
        public static void UpdateSoLuongTonVaDonGiaBan(Sach_DTO s)
        {
            string sql = "update SACH set SoLuongTon=(" + s.SoLuongTon + "),DonGiaBan=(" + s.DonGiaBan + ") where MaSach = " + s.MaSach + "";

            DataAccess.ThucThiNonQuery(sql);
        }
示例#21
0
 //Update thuộc tính số lượng tồn trong bảng SACH
 static public void UpdateSoLuongTonVaDonGiaBan(Sach_DTO s)
 {
     Sach_DAO.UpdateSoLuongTonVaDonGiaBan(s);
 }
示例#22
0
 //Trả về bảng chứa thông tin theo NhaXuatBan trong form DanhSachSach
 static public DataTable SelectSachLikeNhaXuatBanDanhSachSach(Sach_DTO s)
 {
     return(Sach_DAO.SelectSachLikeNhaXuatBanDanhSachSach(s));
 }
示例#23
0
        //Trả về đối tượng SACH giống với tên
        public static string Insert(Sach_DTO s)
        {
            string sql = "insert into SACH(MaDauSach,NhaXuatBan,NamXuatBan,SoLuongTon,DonGiaBan) values('" + s.MaDauSach + "',N'" + s.NhaXuatBan + "'," + s.NamXuatBan + "," + s.SoLuongTon + "," + s.DonGiaBan + ")";

            return(DataAccess.ThucThiNonQuery(sql));
        }
示例#24
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            // Kiểm tra xem có mã sách trong bảng CT_HOADON không
            try
            {
                if (PhieuNhapSach_DAO.KiemtramaSachCoTonTai(int.Parse(txtMaSach.Text), int.Parse(txtMaPhieuNhapCT.Text)))
                {
                    MessageBox.Show("Không có mã sách mà bạn cần sửa");
                    return;
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Mã sách không được để trống");
                return;
            }

            DataTable            dt      = ThamSo_BUS.GetThamSoAll();
            int                  nhapMin = int.Parse(dt.Rows[0].ItemArray[1].ToString());
            CT_PhieuNhapSach_DTO ct      = new CT_PhieuNhapSach_DTO();

            try
            {
                if (int.Parse(txtSoLuong.Text) < nhapMin)
                {
                    MessageBox.Show(string.Format("Số lượng phải lớn hơn số lượng quy định ({0} quyển)", nhapMin));
                    return;
                }
                else
                {
                    ct.SoLuongNhap = int.Parse(txtSoLuong.Text);
                }
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng nhập không được là số âm");
                return;
            }

            ct.MaPNS      = int.Parse(txtMaPhieuNhapCT.Text);
            ct.MaSach     = int.Parse(txtMaSach.Text);
            ct.TenSach    = txtTenSach.Text;
            ct.TenTheLoai = txtTheLoai.Text;
            try
            {
                ct.DonGiaNhap = UInt64.Parse(txtDonGiaNhap.Text);
            }
            catch (OverflowException)
            {
                MessageBox.Show("Số lượng nhập không được là số âm");
                return;
            }
            //ct.SoLuongNhap = int.Parse(txtSoLuong.Text);
            ct.ThanhTien = (UInt64)ct.SoLuongNhap * ct.DonGiaNhap;

            DataTable dt2             = ThamSo_BUS.SelectSoLuongTon(ct.MaSach);
            int       luongTonhientai = int.Parse(dt2.Rows[0].ItemArray[4].ToString());
            int       soluongbandau   = PhieuNhapSach_BUS.SoLuongNhap(int.Parse(txtMaSach.Text));
            int       soluongthaydoi  = int.Parse(txtSoLuong.Text);
            int       soLuongTonNew;

            if (soluongbandau > soluongthaydoi)
            {
                soLuongTonNew = luongTonhientai - (soluongbandau - soluongthaydoi);
            }
            else
            {
                soLuongTonNew = luongTonhientai + (soluongthaydoi - soluongbandau);
            }
            //int soLuongTonNew = luongTon - int.Parse(txtSoLuong.Text);
            Sach_DTO s = new Sach_DTO();

            s.MaSach     = int.Parse(txtMaSach.Text);
            s.SoLuongTon = soLuongTonNew;
            Sach_BUS.UpdateSoLuongTon(s);

            string ketQua = PhieuNhapSach_BUS.SuaNhapSach(ct);

            if (ketQua != "Success")
            {
                MessageBox.Show(ketQua, "Lỗi");
                return;
            }
            MessageBox.Show("Cập nhật thành công");

            // Cập nhật lại tổng tiền bên PhieuNhapSach
            PhieuNhapSach_DTO p = new PhieuNhapSach_DTO();

            p.MaPNS = int.Parse(txtMaPhieuNhapCT.Text);
            PhieuNhapSach_BUS.CapNhatTongTien(p);
            lblTongtien.Text = "" + p.TongTien;
            HienThiCTPhieuNhap();
        }
示例#25
0
 public static void themSach(Sach_DTO sach)
 {
     Sach_DAO.themSach(sach);
 }
示例#26
0
 //Trả về bảng chứa thông tin theo MaSach
 public static DataTable SelectSachLikeMaSachDanhSachSach(Sach_DTO a)
 {
     return(Sach_DAO.SelectSachLikeMaSachDanhSachSach(a));
 }
示例#27
0
 public static void suaSach(Sach_DTO sach)
 {
     Sach_DAO.suaSach(sach);
 }
示例#28
0
 //Update thuộc tính số lượng tồn
 static public string UpdateSoLuongTon(Sach_DTO s)
 {
     return(Sach_DAO.UpdateSoLuongTon(s));
 }
示例#29
0
 public static bool ThemSach(Sach_DTO s)
 {
     return(Sach_DAO.ThemSach(s));
 }