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); } } }
private void btnTra_Click(object sender, EventArgs e) { String maThe = cbMaThe.SelectedValue.ToString(); if (maThe == "") /// kiem tra xem user da nhap MaThe hay chua { MessageBox.Show("Vui lòng nhập mã thẻ"); return; } List <ListViewItem> sachCanTra = new List <ListViewItem>(); // danh sach SACH can tra string tenSachCanTra = ""; foreach (ListViewItem item in listResult.Items) { if (item.Checked) { sachCanTra.Add(item); } } if (sachCanTra.Count <= 0) // kiem tra xem user da check vao sach can duoc tra chua { MessageBox.Show("Vui lòng chọn sách cần trả"); return; } List <string> maSachDuocTra = new List <string>(); foreach (ListViewItem item in sachCanTra) { ThongTinSachMuon tts = (ThongTinSachMuon)item.Tag; En_TraSach traSach = new En_TraSach(maPT, tts.MaPM, soNgayMuon.Days, soNgayTre.Days, tongTienPhat.ToString(), ngayTra); Bus_TraSach.TraSach(traSach); // update lại tài khoản nợ của đọc giả Bus_TraSach.TaiKhoanNo_update(cbMaThe.SelectedValue.ToString(), tongNo.ToString()); taoMaPT(maPT); tenSachCanTra += "\n" + item.Text; maSachDuocTra.Add(tts.MaSach); // xoa trong listResult item.Remove(); // update lại tổng tiền nợ, tổng tiền phạt tongTienPhat = 0; tongNo = Bus_TraSach.LayTienNo(cbMaThe.SelectedValue.ToString()); lbTienPhat.Text = hienThiGiaTri(tongTienPhat.ToString()); lbTongNo.Text = hienThiGiaTri(tongNo.ToString()); } if (tenSachCanTra != "") { MessageBox.Show("Đã trả thành công:" + tenSachCanTra); ckbChonTatCa.Checked = false; /// tang so luong sach duoc tra foreach (var masach in maSachDuocTra) { Bus_TraSach.Tang_SLSACH(masach); } } }