Beispiel #1
0
        public void CreateReturnBill()
        {
            PHIEUTRASACH t = new PHIEUTRASACH()
            {
                MADG = Client.MADG, NGTRASACH = DateTime.Today, NGUOILAP = dataProvider.User.MATK
            };

            dataProvider.Create <PHIEUTRASACH>(t);
            foreach (CTPTS item in ReturnBookBill)
            {
                item.MAPTS = t.MAPTS;
                if ((dataProvider.GetItem <PHIEUMUONSACH>(x => x.MAPMS == item.MAPMS).NGMUON - DateTime.Today)?.Days > dataProvider.LibraryRules.NGAYMUON)
                {
                    item.TIENPHAT = ((dataProvider.GetItem <PHIEUMUONSACH>(x => x.MAPMS == item.MAPMS).NGMUON - DateTime.Today)?.Days - dataProvider.LibraryRules.NGAYMUON) * dataProvider.LibraryRules.TIENPHAT;
                }
                CTSACH d = dataProvider.GetItem <CTSACH>(x => x.MACTS == item.MACTS);
                d.MATT = 1;
                dataProvider.Update <CTSACH>(d, x => x.MACTS == d.MACTS);
                dataProvider.Create <CTPTS>(item);
            }
            ReturnBookBill = new BindableCollection <CTPTS>();
            BorrowBillList = dataProvider.GetPMS(x => x.MADG == Client.MADG);
            Amount         = dataProvider.LibraryRules.SACHMUONTOIDA ?? 5;
            foreach (PHIEUMUONSACH item in BorrowBillList)
            {
                Amount -= item.CTSACH.Count - item.CTPTS.Count;
            }
            eventAggregator.PublishOnCurrentThread(new Models.Message("Thông báo", "Tạo phiếu trả sách thành công!"));
        }
Beispiel #2
0
        public bool InsertTraSach(PHIEUTRASACH phieuTraSach, CTPHIEUTRASACH CTPhieuTraSach)
        {
            try
            {
                db.PHIEUTRASACHes.InsertOnSubmit(phieuTraSach);
                db.SubmitChanges();
                db.CTPHIEUTRASACHes.InsertOnSubmit(CTPhieuTraSach);
                db.SubmitChanges();

                return(true);
            }
            catch (Exception ex)
            {
                Utils.MSG(ex.Message);
                return(true);
            }
        }
Beispiel #3
0
        private void btnMuonSach_Click(object sender, EventArgs e)
        {
            string soNgayMuon = txtSoNgayMuon.Text;

            if (soNgayMuon == "-")
            {
                MessageBox.Show("Số Ngày Mượn Phải Là Số Dương!", "Quản Lý Thư Viện",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtSoNgayMuon.Text = "";
                txtSoNgayMuon.Focus();
                return;
            }

            if (soNgayMuon == "")
            {
                MessageBox.Show("Số Ngày Mượn Không Được Để Trống!", "Quản Lý Thư Viện",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                txtSoNgayMuon.Text = "";
                txtSoNgayMuon.Focus();
                return;
            }

            PHIEUTRASACH phieuTra = new PHIEUTRASACH();

            phieuTra.MaTraSach  = txtMaTraSach.Text.Trim();
            phieuTra.MaMuonSach = txtMaMuonSach.Text.Trim();
            string[] splitNgayTra = timeNgayTra.Value.ToString().Split(' ');
            phieuTra.NgayTra = splitNgayTra[0];


            CTPHIEUTRASACH CTPhieuTra = new CTPHIEUTRASACH();

            CTPhieuTra.MaCTPTS    = txtMaCTPTS.Text.Trim();
            CTPhieuTra.MaTraSach  = txtMaTraSach.Text.Trim();
            CTPhieuTra.MaSach     = txtMaSach.Text.Trim();
            CTPhieuTra.SoNgayMuon = int.Parse(txtSoNgayMuon.Text.Trim());
            string tienPhat = txtTienPhat.Text.Replace('đ', ' ').Trim();

            CTPhieuTra.TienPhat = int.Parse(tienPhat);


            CTPHIEUMUONSACH MaCTPMS = db.CTPHIEUMUONSACHes.Single(ct => ct.MaMuonSach.Equals(txtMaMuonSach.Text));

            db.CTPHIEUMUONSACHes.DeleteOnSubmit(MaCTPMS);
            db.SubmitChanges();

            traSach.InsertTraSach(phieuTra, CTPhieuTra);

            SACH sach = db.SACHes.Single(s => s.MaSach.Equals(CTPhieuTra.MaSach));

            sach.TinhTrangMuon = false;
            db.SubmitChanges();

            DOCGIA docGia = db.DOCGIAs.Single(dg => dg.MaDG.Equals(txtMaDG.Text.Trim()));

            docGia.SoSachMuon -= 1;
            db.SubmitChanges();

            MessageBox.Show("Bạn Đã Trả Sách Thành Công!", "Quản Lý Thư Viện",
                            MessageBoxButtons.OK, MessageBoxIcon.Information);

            dataTraSach.DataSource = db.vTraSaches.Select(vts => vts);

            string tempMaDG = txtMaDG.Text;

            Utils.ResetControls(groupBox3);
            tinhTrangMuon.Checked = true;

            string[] whereDGMuon       = { "MaDG" };
            string[] whereValuesDGMuon = { tempMaDG };
            traSach.GetAllDataWhere2("vDGMuonSach2", dataDocGiaMuon, whereDGMuon, whereValuesDGMuon);
        }