/* Phương thức khỏi tạo tab thông tin phiếu mượn là lấy toàn bộ danh sách phiếu mượn đổ vào dgv */ private void InitLendNotes() { List <PhieuMuonDTO> lendNotes; if (rdbAllLendNotes.Checked) { lendNotes = TTPhieuMuonBUS.GetLendNotes(); } else { lendNotes = TTPhieuMuonBUS.GetLendNotesNotPayBackNotes(); } if (lendNotes.Count > 0) { dgvLendNotes.DataSource = lendNotes; dgvLendNotes.Columns[0].HeaderText = "Thời gian lập"; dgvLendNotes.Columns[1].Visible = false; dgvLendNotes.Columns[2].HeaderText = "Độc giả"; } else { dgvLendNotes.DataSource = null; lbDayLendBook.Text = String.Empty; lbDocGia.Text = String.Empty; dgvLendNote.DataSource = null; } }
/* Sự kiện lưu thông tin phiếu mượn */ private void btnSave_Click(object sender, EventArgs e) { // Kiểm tra chọn độc giả if (cbbReader.SelectedValue == null) { MessageBox.Show("Chưa chọn độc giả.", "Thông báo"); return; } // Kiểm tra trạng thái độc giả DocGiaDTO docGia = cbbReader.SelectedValue as DocGiaDTO; if (docGia.TrangThai != DocGiaDTO.UnLock) { MessageBox.Show("Độc giả đã khóa.", "Thông báo"); return; } // Kiểm tra số sách chọn khác rỗng if (pnlLendNotes.Count == 0) { MessageBox.Show("Chưa có cuốn sách nào được chọn.", "Thông báo"); return; } // Kiểm tra số lượng sách có thể mượn int numBookCanBeLend = SachBUS.NumberBookCanBeLend(docGia); if (numBookCanBeLend < pnlLendNotes.Count) { MessageBox.Show($"Độc giả chỉ mượn thêm được {numBookCanBeLend}.", "Thông báo"); return; } List <TTPhieuMuonDTO> phieuMuons = new List <TTPhieuMuonDTO>(); DateTime ngaymuon = DateTime.Now; foreach (PLendNote item in pnlLendNotes) { phieuMuons.Add(new TTPhieuMuonDTO( new PhieuMuonDTO(ngaymuon, docGia), item.Sach )); } int check = TTPhieuMuonBUS.AddLendNote(phieuMuons); // Kiểm tra lưu thông tin if (check < 1) { MessageBox.Show("Lưu không thành công.", "Thông báo"); } else { this.Close(); } }
/* Sự kiện lưu thông tin phiếu trả */ private void btnSave_Click(object sender, EventArgs e) { // Kiểm tra không cho lưu khi chưa chọn sách trả if (pnlpayBackNotes.Count == 0) { MessageBox.Show("Chưa có sách trả.", "Thông báo"); return; } // Lưu thông tin int month = -1; DocGiaDTO docGia = cbbReader.SelectedValue as DocGiaDTO; List <TTPhieuMuonDTO> chitiet = new List <TTPhieuMuonDTO>(); DateTime today = DateTime.Now; foreach (PPayBackNote item in pnlpayBackNotes) { item.Sach.Mapt = today; chitiet.Add(item.Sach); if (item.MonthBlock() > -1) { if (month != 0) { month = item.MonthBlock(); } } } int check = TTPhieuMuonBUS.AddPayBackNote(chitiet); if (check == 0) { MessageBox.Show("Lưu không thành công.", "Thông báo"); return; } // Khóa người dùng if (month > -1) { DocGiaBUS.LockOrUnlock(ref docGia, month); if (month > 0) { MessageBox.Show($"Độc giả {docGia.Ten} bị khóa {month} tháng.", "Thông báo"); } else { MessageBox.Show($"Độc giả {docGia.Ten} bị khóa vĩnh viễn.", "Thông báo"); } } this.Close(); }
/* Sự kiện chọn độc giả trong cbb */ private void cbbReader_SelectedValueChanged(object sender, EventArgs e) { RemoveAll(); if (cbbReader.SelectedValue != null) { DocGiaDTO docGia = cbbReader.SelectedValue as DocGiaDTO; dgvBookIsLend.DataSource = TTPhieuMuonBUS.GetLendBookNotPayBack(docGia); dgvBookIsLend.Columns[0].Visible = false; dgvBookIsLend.Columns[1].Visible = false; dgvBookIsLend.Columns[2].HeaderText = "Đầu sách"; dgvBookIsLend.Columns[3].HeaderText = "Số thứ tự"; dgvBookIsLend.Columns[4].Visible = false; dgvBookIsLend.Columns[5].HeaderText = "Ngày hẹn"; dgvBookIsLend.Columns[6].Visible = false; } }
/* Phương thức khỏi tạo tab thông tin phiếu trả là lấy toàn bộ danh sách phiếu trả đổ vào dgv */ private void InitPayBackNotes() { List <PhieuDTO> payBackNotes = TTPhieuMuonBUS.GetPayBackNotes(); if (payBackNotes.Count > 0) { dgvPayBackNotes.DataSource = payBackNotes; dgvPayBackNotes.Columns[0].HeaderText = "Thời gian lập"; } else { dgvPayBackNotes.DataSource = null; lbDayPayBackBook.Text = String.Empty; dgvPayBackNote.DataSource = null; lbSumPricePB.Text = "0"; } }
/// <summary> /// Tabpage phiếu trả /// </summary> /* Sự kiện chọn một dòng để lấy thông tinc hi tiết của phiếu trả */ private void dgvPayBackNotes_SelectionChanged(object sender, EventArgs e) { if (dgvPayBackNotes.CurrentRow != null) { int index = dgvPayBackNotes.CurrentRow.Index; PhieuDTO phieuTra = (dgvPayBackNotes.DataSource as List <PhieuDTO>)[index]; int gia = TTPhieuMuonBUS.GetPayBackNote(phieuTra, out List <TTPhieuMuonDTO> chiTiet); lbDayPayBackBook.Text = phieuTra.Ngaynhap.ToString(); dgvPayBackNote.DataSource = chiTiet; dgvPayBackNote.Columns[0].Visible = false; dgvPayBackNote.Columns[1].Visible = false; dgvPayBackNote.Columns[2].HeaderText = "Đầu sách"; dgvPayBackNote.Columns[3].HeaderText = "Stt"; dgvPayBackNote.Columns[4].HeaderText = "Phạt"; dgvPayBackNote.Columns[5].Visible = false; dgvPayBackNote.Columns[6].HeaderText = "Ngày trả"; lbSumPricePB.Text = gia.ToString("#,0"); } }
/* Sự kiện chọn một dòng để lấy thông tin chi tiết của phiếu mượn */ private void dgvLendNotes_SelectionChanged(object sender, EventArgs e) { if (dgvLendNotes.CurrentRow != null) { int index = dgvLendNotes.CurrentRow.Index; PhieuMuonDTO phieuMuon = (dgvLendNotes.DataSource as List <PhieuMuonDTO>)[index]; int gia = TTPhieuMuonBUS.GetLendNote(phieuMuon, out List <TTPhieuMuonDTO> chiTiet); lbDayLendBook.Text = phieuMuon.Ngaymuon.ToString(); lbDocGia.Text = phieuMuon.Madg.Ten; dgvLendNote.DataSource = chiTiet; dgvLendNote.Columns[0].Visible = false; dgvLendNote.Columns[1].Visible = false; dgvLendNote.Columns[2].HeaderText = "Đầu sách"; dgvLendNote.Columns[3].HeaderText = "Stt"; dgvLendNote.Columns[4].Visible = false; dgvLendNote.Columns[5].HeaderText = "Ngày hẹn trả"; dgvLendNote.Columns[6].HeaderText = "Ngày trả"; lbSumPriceDN.Text = gia.ToString("#,0"); } }