private void cbMaThe_SelectedValueChanged(object sender, EventArgs e) { //if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab) //{ /// kiểm tra xem đọc giả này đã đăng kí thành viên chưa DataTable dt = Bus_MuonSach.ThongTinDocGia(cbMaThe.SelectedValue.ToString()); if (dt.Rows.Count > 0) { // hien thi qua bang thong tin doc gia string hoten = dt.Rows[0][1].ToString(); string x = dt.Rows[0][3].ToString(); string ngaysinh = DateTime.Parse(dt.Rows[0][3].ToString()).ToShortDateString(); string loaidocgia = dt.Rows[0][2].ToString(); string ngaylapthe = DateTime.Parse(dt.Rows[0][6].ToString()).ToShortDateString(); soLuongSachDaMuon = Bus_MuonSach.SoSachDaMuon(cbMaThe.SelectedValue.ToString()); soLuongSachCoTheDuocMuon = soLuongSachDuocMuon - soLuongSachDaMuon; tienNo = int.Parse(dt.Rows[0][7].ToString()); txtHoTen.Text = hoten; txtNgaysinh.Text = ngaysinh; txtLoaiDG.Text = loaidocgia; txtNgaylapthe.Text = ngaylapthe; txtSoSachDaMuon.Text = soLuongSachDaMuon.ToString(); //if (e.KeyCode == Keys.Enter) // neu keycode == enter thi phai txtsach duoc focus // txtSach.Focus(); } else { //MessageBox.Show("Mã thẻ này chưa phải là thành viên"); //txtMathe.SelectAll(); //txtMathe.Focus(); txtHoTen.Text = "null"; txtNgaysinh.Text = "null"; txtLoaiDG.Text = "null"; txtNgaylapthe.Text = "null"; txtSoSachDaMuon.Text = "null"; //if (e.KeyCode == Keys.Enter) // txtSach.Focus(); } }
private void hienThiThongTinSach() { listResult.Items.Clear(); btnMuon.Focus(); DataTable dt = Bus_MuonSach.TimKiemSach(txtSach.Text); // dt gồm 5 cột: | mã sách | tên sách | tác giả | thể loại | tình trạng (số lượng) | if (dt.Rows.Count <= 0) { ListViewItem item = new ListViewItem("Không có dữ liệu"); listResult.Items.Add(item); txtSach.SelectAll(); txtSach.Focus(); } else { for (int i = 0; i < dt.Rows.Count; i++) { string maSach = dt.Rows[i][0].ToString(); string tenSach = dt.Rows[i][1].ToString(); string tacGia = dt.Rows[i][2].ToString(); string theLoai = dt.Rows[i][3].ToString(); int soLuong = int.Parse(dt.Rows[i][4].ToString()); // những sách nào có số lượng = 0 thì sẽ k hiển thị if (soLuong > 0) { ListViewItem item = new ListViewItem(tenSach); ListViewItem.ListViewSubItem[] subItem = new ListViewItem.ListViewSubItem[] { new ListViewItem.ListViewSubItem(item, tacGia), new ListViewItem.ListViewSubItem(item, theLoai), new ListViewItem.ListViewSubItem(item, soLuong.ToString()) }; item.SubItems.AddRange(subItem); item.Tag = maSach; listResult.Items.Add(item); } } } }
private void btnMuon_Click(object sender, EventArgs e) { String maThe = cbMaThe.SelectedValue.ToString(); String sach = txtSach.Text; List <ListViewItem> sachDuocChon = new List <ListViewItem>(); ///sachDuocChon la những sách đc check foreach (ListViewItem item in listResult.Items) { if (item.Checked) { sachDuocChon.Add(item); } } if (txtHoTen.Text == "null") /// kiem tra xem user da nhap MaThe hay chua, neu chua nhap thi txtHoten ben bang thong tin DG k co gi het (= mull) { if (cbMaThe.Text == "") { MessageBox.Show("Vui lòng nhập mã thẻ"); } else { MessageBox.Show("Mã thẻ không hợp lệ, vui lòng nhập lại"); } cbMaThe.Focus(); return; } if (sachDuocChon.Count <= 0) { MessageBox.Show("Vui lòng chọn sách"); return; } if (sachDuocChon.Count > (soLuongSachDuocMuon - int.Parse(txtSoSachDaMuon.Text))) // số lượng tối đa khi chọn sach { if (soLuongSachCoTheDuocMuon == 5) { MessageBox.Show("Chỉ được mượn tối đa " + soLuongSachDuocMuon.ToString() + " cuốn sách", "Quá số lượng sách qui định"); } else if (soLuongSachCoTheDuocMuon == 0) { MessageBox.Show("Đọc giả " + txtHoTen.Text + " đã mượn đúng với số lượng qui định", "Thông báo"); } else { MessageBox.Show("Đọc giả " + txtHoTen.Text + " đã mượn " + soLuongSachDaMuon.ToString() + " cuốn sách\nBây giờ chỉ được mượn tối đa " + soLuongSachCoTheDuocMuon.ToString() + " cuốn", "Quá số lượng sách qui định"); } return; } // kiem tra xem co qua han su dung the khong TimeSpan soNgaySuDungThe = DateTime.Today - DateTime.Parse(txtNgaylapthe.Text); float thangSuDungThe = soNgaySuDungThe.Days / 30; if (thangSuDungThe > thoiHanTheQuiDinh) { MessageBox.Show("Thẻ đã quá hạn", "Thông báo"); cbMaThe.SelectAll(); cbMaThe.Focus(); return; } /// kiem tra xem so tien no cua doc gia co lon hon so voi qui dinh hay khong if (tienNo > tienNoQuiDinh) { MessageBox.Show("Số tiền nợ của " + txtHoTen.Text + " đã vượt quá qui định: " + tienNo.ToString() + " VND", "Thông báo"); return; } string tenSachDuocMuon = ""; List <string> maSachDuocMuon = new List <string>(); foreach (ListViewItem item in sachDuocChon) { if (Bus_MuonSach.SachDaMuon(cbMaThe.SelectedValue.ToString(), (string)item.Tag)) { MessageBox.Show("Không được mượn sách này\nSách này đang mượn", "Thông báo"); } else { tenSachDuocMuon += "\n" + item.Text; maSachDuocMuon.Add((string)item.Tag); En_MuonSach ms = new En_MuonSach(maPM, maThe.ToUpper(), (string)item.Tag, ngayMuon, hanTra); Bus_MuonSach.MuonSach(ms); // tạo lại maPM taoMaPM(maPM); } } if (tenSachDuocMuon != "") { MessageBox.Show("Mượn thành công: " + tenSachDuocMuon); // giam so luong sach foreach (var masach in maSachDuocMuon) { Bus_MuonSach.Giam_SLSACH(masach); } } txtSoSachDaMuon.Text = Bus_MuonSach.SoSachDaMuon(cbMaThe.SelectedValue.ToString()).ToString(); soLuongSachDaMuon = int.Parse(txtSoSachDaMuon.Text); soLuongSachCoTheDuocMuon = soLuongSachDuocMuon - soLuongSachDaMuon; // update lai bang hien thi thong tin sach hienThiThongTinSach(); }
private void cbMaThe_SelectedValueChanged(object sender, EventArgs e) { //if (e.KeyCode == Keys.Enter) // nhap xong MATHE //{ //hien thi thong tin qua BANG THONG TIN DataTable dttable = Bus_MuonSach.ThongTinDocGia(cbMaThe.SelectedValue.ToString()); if (dttable.Rows.Count > 0) { // hien thi qua bang thong tin doc gia string hoten = dttable.Rows[0][1].ToString(); string ngaysinh = DateTime.Parse(dttable.Rows[0][3].ToString()).ToShortDateString(); string loaidocgia = dttable.Rows[0][2].ToString(); string ngaylapthe = DateTime.Parse(dttable.Rows[0][6].ToString()).ToShortDateString(); txtHoTen.Text = hoten; txtNgaysinh.Text = ngaysinh; txtLoaiDG.Text = loaidocgia; txtNgaylapthe.Text = ngaylapthe; } else { txtHoTen.Text = "'Mã thẻ không tồn tại'"; txtNgaysinh.Text = "'Mã thẻ không tồn tại'"; txtLoaiDG.Text = "'Mã thẻ không tồn tại'"; txtNgaylapthe.Text = "'Mã thẻ không tồn tại'"; } // tính tiền nợ tienNo = Bus_TraSach.LayTienNo(cbMaThe.SelectedValue.ToString()); lbTongNo.Text = hienThiGiaTri(tienNo.ToString()); tongNo = tienNo; //// tao lai listResult listResult.Items.Clear(); //load du lieu tu PHIEUMUON len listView DataTable dt = Bus_TraSach.ThongTinSachMuon(cbMaThe.SelectedValue.ToString()); ///data table gom 4 cot: | MaPM | TenSach | NgayMuon | HanTra | if (dt.Rows.Count <= 0) { ListViewItem item = new ListViewItem("Không có dữ liệu"); listResult.Items.Add(item); ckbChonTatCa.Enabled = false; } else { ckbChonTatCa.Enabled = true; for (int i = 0; i < dt.Rows.Count; i++) { string stt = ""; DateTime ngayMuon = DateTime.Parse(dt.Rows[i][3].ToString()); DateTime hanTra = DateTime.Parse(dt.Rows[i][4].ToString()); int tienPhat = 0; soNgayMuon = ngayTra - ngayMuon; if (ngayTra > DateTime.Parse(dt.Rows[i][4].ToString())) // qua han { soNgayTre = ngayTra - hanTra; stt = "Quá hạn " + soNgayTre.Days.ToString() + " ngày"; tienPhat = soNgayTre.Days * 1000; } else // chua quá hạn { var soNgayConLai = hanTra - ngayTra; stt = "Còn lại " + soNgayConLai.Days.ToString() + " ngày"; } ListViewItem item = new ListViewItem(dt.Rows[i][2].ToString()); ListViewItem.ListViewSubItem[] subItem = new ListViewItem.ListViewSubItem[] { new ListViewItem.ListViewSubItem(item, DateTime.Parse(dt.Rows[i][3].ToString()).ToShortDateString()), new ListViewItem.ListViewSubItem(item, DateTime.Parse(dt.Rows[i][4].ToString()).ToShortDateString()), new ListViewItem.ListViewSubItem(item, stt) }; item.SubItems.AddRange(subItem); item.Tag = new ThongTinSachMuon(dt.Rows[i][0].ToString(), dt.Rows[i][1].ToString(), tienPhat); listResult.Items.Add(item); } } }