Пример #1
0
        void FillRecordList()
        {
            oMTransactionList = new List <Model.Transaction>();
            oBook             = new DataAccess.Book();
            foreach (DataRow row in oBook.GetBookRecords(eVariable.FILTER_BOOK.BOOK_DEFAULT, "ACTIVE", eVariable.sBookID).Rows)
            {
                oMTransaction              = new Model.Transaction();
                oMTransaction.BOOK_ID      = row[0].ToString();
                oMTransaction.BOOK_NO      = row[1].ToString();
                oMTransaction.TITLE        = row[2].ToString();
                oMTransaction.SUBJECT      = row[3].ToString();
                oMTransaction.CATEGORY     = row[4].ToString();
                oMTransaction.AUTHOR       = row[5].ToString();
                oMTransaction.PUBLISH_DATE = row[6].ToString();
                oMTransaction.ISBN_NUMBER  = row[7].ToString();
                oMTransaction.LOCATION     = row[8].ToString();

                oMTransaction.BOOK_PRICE    = row[9].ToString();
                oMTransaction.RENT_PRICE    = row[10].ToString();
                oMTransaction.ADDED_DATE    = row[11].ToString();
                oMTransaction.ADDED_BY      = row[12].ToString();
                oMTransaction.MODIFIED_DATE = row[13].ToString();
                oMTransaction.MODIFIED_BY   = row[14].ToString();
                oMTransaction.REMARKS       = row[15].ToString();
                oMTransaction.STATUS        = row[16].ToString();

                oMTransactionList.Add(oMTransaction);
            }
        }
Пример #2
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (oMTransactionList.Count > 0)
            {
                if (iGridControl.Visible)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_CLOSE_THE_ISBN_PANEL.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                if (dTotalAmount > iPaymentWindow.ReceiveAmount)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_EXACT_PAYMENT_AMOUNT.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                if (oMTransactionList.Where(fw => fw.BFLAG == true).Count() == 0)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_SELECT_A_RECORD.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                foreach (var oItem in oMTransactionList)
                {
                    oBook                       = new DataAccess.Book();
                    oMTransaction               = new Model.Transaction();
                    oMTransaction.PERSON_ID     = txtBorrowerID.Text;
                    oMTransaction.BOOK_ID       = oItem.BOOK_ID;
                    oMTransaction.BOOK_NO       = oItem.BOOK_NO;
                    oMTransaction.TOTAL_AMOUNT  = dTotalAmount;
                    oMTransaction.MODIFIED_DATE = DateTime.Now.ToString("yyyy-MM-dd");
                    oMTransaction.MODIFIED_BY   = eVariable.sUsername;
                    oMTransaction.REMARKS       = rdDamage.Checked == true ? "DAMAGE" : "LOST";
                    if (oItem.BFLAG)
                    {
                        oMTransaction.STATUS = "INACTIVE";
                        oBook.ReturnBook(oMTransaction);
                    }
                }

                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TRANSACTION_HAS_BEEN_SUCESSFULLY_SAVE.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                iPaymentWindow.clearText();
                eVariable.ClearText(pnlMain);
                dgBooks.Rows.Clear();
            }
            else
            {
                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_SELECT_A_RECORD.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
            }
        }
Пример #3
0
        private void AutoFillBook()
        {
            dgBooks.Rows.Clear();
            oBook = new DataAccess.Book();
            Model.Transaction oRetain = new Model.Transaction();
            foreach (DataRow row in oBook.GetTransactionBookRecordPerBorrowerNotSort(eVariable.FIND_BOOK.BOOK_BORROWED, eVariable.sBorrowerID).Rows)
            {
                oMTransaction              = new Model.Transaction();
                oMTransaction.PERSON_ID    = eVariable.sBorrowerID;
                oMTransaction.FIRST_NAME   = eVariable.FirstName;
                oMTransaction.MIDDLE_NAME  = eVariable.MiddleName;
                oMTransaction.LAST_NAME    = eVariable.LastName;
                oMTransaction.BOOK_ID      = row[0].ToString();
                oMTransaction.TITLE        = row[1].ToString();
                oMTransaction.SUBJECT      = row[2].ToString();
                oMTransaction.CATEGORY     = row[3].ToString();
                oMTransaction.AUTHOR       = row[4].ToString();
                oMTransaction.PUBLISH_DATE = row[5].ToString();
                oMTransaction.LOCATION     = row[6].ToString();
                oMTransaction.BOOK_PRICE   = row[7].ToString();
                oMTransaction.RENT_PRICE   = row[8].ToString();
                oMTransaction.DUE_INTEREST = Convert.ToDouble(row[9].ToString());
                oMTransaction.LD_INTEREST  = Convert.ToDouble(row[10].ToString());
                oMTransaction.TOTAL_QTY    = row[11].ToString();
                oMTransaction.TOTAL_DAYS   = row[12].ToString();
                oMTransaction.ADDED_DATE   = row[13].ToString();
                oMTransaction.BOOK_NO      = row[14].ToString();
                oMTransaction.ISBN_NUMBER  = row[15].ToString();
                oMTransaction.BFLAG        = true;
                oMTransactionList.Add(oMTransaction);
            }

            LoadRecords();
        }
Пример #4
0
        public async Task GetBookById_Returns_Book()
        {
            // arrange
            var insertedBook = new DataAccess.Book
            {
                Title  = "Gone with the Wind",
                Author = "JoJo",
                Isbn   = 1234567892581,
            };

            using var contextFactory = new TestLooseLeafContextFactory();
            using (LooseLeafContext arrangeContext = contextFactory.CreateContext())
            {
                arrangeContext.Genres.Add(new Genre()
                {
                    GenreName = "Test Genre", Book = insertedBook
                });
                arrangeContext.Books.Add(insertedBook);
                arrangeContext.SaveChanges();
            }

            using var context = contextFactory.CreateContext();
            var repo = new BookRepository(context);

            // act
            IBook book = await repo.GetBook(insertedBook.Id);

            // assert
            Assert.Equal(insertedBook.Id, book.Id);
            Assert.Equal(insertedBook.Title, book.Title);
            Assert.Equal(insertedBook.Author, book.Author);
            Assert.Equal(insertedBook.Isbn, book.Isbn);
            Assert.Single(book.Genres);
        }
Пример #5
0
        private string GetBookNo(List <Model.Transaction> oDataList)
        {
            Boolean bFound = false;

            int iCounter = 0;

            oBook = new DataAccess.Book();
            eVariable.iAutoBookNo = oBook.GetBookNo();
RETURN_HERE:
            eVariable.iAutoBookNo = eVariable.iAutoBookNo + 1;
            eVariable.sBookNumber = "BKR-" + (eVariable.iAutoBookNo).ToString("0000#");

            if (oBook.IsBookRecordDataExists(ePublicVariable.eVariable.FIND_TYPE.BOOK_NO, eVariable.sBookNumber))
            {
                iCounter++;
                eVariable.iAutoBookNo = eVariable.iAutoBookNo + 1;
                goto RETURN_HERE;
            }

            if (bFound = oMTransactionList.Any(fw => fw.BOOK_NO == eVariable.sBookNumber))
            {
                goto RETURN_HERE;
            }

            return(eVariable.sBookNumber);
        }
Пример #6
0
 public static bool AddBook(Dbo.Book e)
 {
     using (DataAccess.Book a = new DataAccess.Book())
     {
         a.Initializer();
         return(a.AddBook(e));
     }
 }
Пример #7
0
 public static List <Dbo.Book> ListBooks()
 {
     using (DataAccess.Book e = new DataAccess.Book())
     {
         e.Initializer();
         return(e.ReadBooks());
     }
 }
Пример #8
0
        void LoadRecords()
        {
            oBook = new DataAccess.Book();
            dgDetails.Rows.Clear();
            eVariable.DisableGridColumnSort(dgDetails);
            foreach (DataRow row in oBook.GetBookRecords(oFilterBook, "ACTIVE", txtSearch.Text).Rows)
            {
                dgDetails.Rows.Add(row["BOOK_ID"], row["TITLE"], row["SUBJECT"], row["CATEGORY"], row["AUTHOR"], row["PUBLISH_DATE"], row["BOOK_PRICE"], row["RENT_PRICE"], row["LOCATION"], row["COPIES_AVAILABLE"], row["TOTAL_COPIES"]);
            }

            GetPolicy();
        }
Пример #9
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (dgBooks.Rows.Count > 0)
            {
                if (iTotalAmount > iPaymentWindow.ReceiveAmount)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_EXACT_PAYMENT_AMOUNT.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();

                    return;
                }

                foreach (Model.Transaction oData in oMRecordList)
                {
                    oMTransaction                = new Model.Transaction();
                    oBook                        = new DataAccess.Book();
                    oMTransaction.PERSON_ID      = oData.PERSON_ID;
                    oMTransaction.BOOK_ID        = oData.BOOK_ID;
                    oMTransaction.BOOK_NO        = oData.BOOK_NO;
                    oMTransaction.TITLE          = oData.TITLE;
                    oMTransaction.SUBJECT        = oData.SUBJECT;
                    oMTransaction.CATEGORY       = oData.CATEGORY;
                    oMTransaction.AUTHOR         = oData.AUTHOR;
                    oMTransaction.PUBLISH_DATE   = oData.PUBLISH_DATE;
                    oMTransaction.ISBN_NUMBER    = oData.ISBN_NUMBER;
                    oMTransaction.LOCATION       = oData.LOCATION;
                    oMTransaction.BOOK_PRICE     = oData.BOOK_PRICE;
                    oMTransaction.RENT_PRICE     = oData.RENT_PRICE;
                    oMTransaction.DUE_INTEREST   = oData.DUE_INTEREST;
                    oMTransaction.LD_INTEREST    = oData.LD_INTEREST;
                    oMTransaction.TOTAL_QTY      = oData.TOTAL_QTY;
                    oMTransaction.TOTAL_DAYS     = oData.TOTAL_DAYS;
                    oMTransaction.ADDED_DATE     = DateTime.Now.ToString("yyyy-MM-dd");
                    oMTransaction.ADDED_BY       = eVariable.sUsername;
                    oMTransaction.TRANSACTION_NO = eVariable.sTransactionNo;


                    oBook.CheckOutBook(oMTransaction);
                }

                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TRANSACTION_HAS_BEEN_SUCESSFULLY_SAVE.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                iPaymentWindow.clearText();
                eVariable.ClearText(pnlMain);
                dgBooks.Rows.Clear();
            }
        }
Пример #10
0
        void GetTransactionNo()
        {
            try
            {
                oBook          = new DataAccess.Book();
                iTransactionNo = oBook.GetTransactionNo();


                iTransactionNo           = iTransactionNo + 1;
                eVariable.sTransactionNo = "TRX-" + (iTransactionNo).ToString("00000#");
                lblTransNo.Text          = eVariable.sTransactionNo;
            }
            catch (Exception ex)
            { }
        }
Пример #11
0
        /// <summary>
        /// Creates a new book along with a genre if one doesn't exist.
        /// </summary>
        /// <param name="context">The DBContext</param>
        /// <param name="bookName">The name of the book</param>
        /// <param name="authorName">The name of the author</param>
        /// <returns>Returns the ISBN of the book.</returns>
        public async Task <long> CreateBook(LooseLeafContext context, string bookName = "Book", string authorName = "Author")
        {
            int  id      = context.Books.Count() + 1;
            long newIsbn = 9784567890123 + id;
            var  book    = new DataAccess.Book()
            {
                Title = bookName, Author = authorName, Isbn = newIsbn
            };

            await CreateGenre(context, book);

            await context.Books.AddAsync(book);

            return(newIsbn);
        }
Пример #12
0
 private void btnDelete_Click(object sender, EventArgs e)
 {
     try
     {
         oBook = new DataAccess.Book();
         if (optRequest.Checked)
         {
             oBook.DeleteUnsettledRequestTransaction(dtFrom.Value, dtTo.Value);
             oFrmMsgBox = new frmMessageBox(ePublicVariable.eVariable.TransactionMessage.RECORD_HAS_BEEN_SUCESSFULLY_DELETED.ToString().Replace("_", " "));
             oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
             oFrmMsgBox.ShowDialog();
         }
     }
     catch (Exception ex)
     { }
 }
Пример #13
0
        public void LoadRecords()
        {
            try
            {
                oBook = new DataAccess.Book();
                dgDetails.Rows.Clear();
                eVariable.DisableGridColumnSort(dgDetails);
                foreach (DataRow row in oBook.GetBookRecords(oFilterBook, "ACTIVE", txtSearch.Text).Rows)
                {
                    dgDetails.Rows.Add(row["BOOK_ID"], row["TITLE"], row["SUBJECT"], row["CATEGORY"], row["AUTHOR"], row["PUBLISH_DATE"], row["BOOK_PRICE"], row["RENT_PRICE"], row["LOCATION"], row["COPIES_AVAILABLE"], row["TOTAL_COPIES"]);
                }

                lblTotalRecords.Text = dgDetails.Rows.Count.ToString();
            }
            catch (Exception ex)
            {
            }
        }
Пример #14
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (dgBooks.Rows.Count > 0)
            {
                if (iTotalAmount > iPaymentWindow.ReceiveAmount)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_EXACT_PAYMENT_AMOUNT.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                foreach (Model.Transaction oData in oMTransactionList)
                {
                    oMTransaction = new Model.Transaction();
                    oBook         = new DataAccess.Book();

                    if (oData.BFLAG == true)
                    {
                        oMTransaction.PERSON_ID     = oData.PERSON_ID;
                        oMTransaction.BOOK_ID       = oData.BOOK_ID;
                        oMTransaction.BOOK_NO       = oData.BOOK_NO;
                        oMTransaction.MODIFIED_DATE = DateTime.Now.ToString("yyyy-MM-dd");
                        oMTransaction.MODIFIED_BY   = eVariable.sUsername;
                        oMTransaction.TOTAL_AMOUNT  = iTotalAmount;
                        oMTransaction.STATUS        = "RETURNED";
                        oBook.ReturnBook(oMTransaction);
                    }
                }

                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TRANSACTION_HAS_BEEN_SUCESSFULLY_SAVE.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                iPaymentWindow.clearText();
                eVariable.ClearText(pnlMain);
                dgBooks.Rows.Clear();
            }
        }
Пример #15
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            Boolean bFound = false;


            if (!chkAutoNumber.Checked)
            {
                if (txtBookNo.Text.Trim() == string.Empty)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_BOOK_NUMBER.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }
            }

            if (txtISBN.Text.Trim() == string.Empty)
            {
                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_ISBN_NUMBER.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                return;
            }


            oBook = new DataAccess.Book();
            eVariable.sISBN_Number = txtISBN.Text;
            if (oBook.IsBookRecordDataExists(ePublicVariable.eVariable.FIND_TYPE.ISBN_NUMBER, eVariable.sISBN_Number))
            {
                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.ISBN_NUMBER_ALREADY_EXISTS.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                txtISBN.Focus();
                return;
            }

            if (!chkAutoNumber.Checked)
            {
                eVariable.sBookNumber = txtBookNo.Text;
                if (oBook.IsBookRecordDataExists(eVariable.FIND_TYPE.BOOK_NO, eVariable.sBookNumber.Trim()))
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.BOOK_NUMBER_ALREADY_EXISTS.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    txtBookNo.Focus();
                    return;
                }
            }
            else
            {
                eVariable.sBookNumber = GetBookNo(oMTransactionList);
            }

            bFound = oMTransactionList.Any(fw => fw.BOOK_NO == eVariable.sBookNumber || fw.ISBN_NUMBER == eVariable.sISBN_Number);

            if (!bFound)
            {
                oMTransactionList.Add(new Model.Transaction {
                    BOOK_ID = eVariable.sBookID, TITLE = txtTitle.Text, SUBJECT = txtSubject.Text, CATEGORY = txtCategory.Text, AUTHOR = txtAuthor.Text, PUBLISH_DATE = dtDatePublish.Value.ToString("yyyy-MM-dd"), LOCATION = txtLocation.Text, BOOK_PRICE = txtBookPrice.Text, RENT_PRICE = txtRentPrice.Text, BOOK_NO = eVariable.sBookNumber, ISBN_NUMBER = eVariable.sISBN_Number, REMARKS = "", STATUS = "ACTIVE"
                });

                iGridControl.FindOption             = iControlGrid.iGridControl.FIND_OPTION.ADD_BOOK_NO;
                iGridControl.BookCommonData         = oMTransaction;
                iGridControl.BookListData           = oMTransactionList;
                iGridControl.SetDeleteColumnVisible = true;
                iGridControl.SetHeaderVisible       = false;
                iGridControl.PopulateRecord();
                iGridControl.Visible = true;


                txtBookNo.Text = string.Empty;
                txtISBN.Text   = string.Empty;
            }
            else
            {
                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.RECORD_IS_ALREADY_EXISTS.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
            }
        }
Пример #16
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (eVariable.IsFieldEmpty(pnlMain))
            {
                oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.ALL_FIELDS_ARE_REQUIRED.ToString().Replace("_", " "));
                oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                oFrmMsgBox.ShowDialog();
                return;
            }

            if (eVariable.m_ActionType == eVariable.ACTION_TYPE.ADD)
            {
                foreach (var oData in oMTransactionList)
                {
                    oMTransaction = new Model.Transaction();
                    oBook         = new DataAccess.Book();

                    oMTransaction.BOOK_ID      = eVariable.sBookID;
                    oMTransaction.BOOK_NO      = oData.BOOK_NO;
                    oMTransaction.TITLE        = txtTitle.Text;
                    oMTransaction.SUBJECT      = txtSubject.Text;
                    oMTransaction.CATEGORY     = txtCategory.Text;
                    oMTransaction.AUTHOR       = txtAuthor.Text;
                    oMTransaction.PUBLISH_DATE = dtDatePublish.Value.ToString("yyyy-MM-dd");
                    oMTransaction.ISBN_NUMBER  = oData.ISBN_NUMBER;
                    oMTransaction.LOCATION     = txtLocation.Text;
                    oMTransaction.BOOK_PRICE   = txtBookPrice.Text;
                    oMTransaction.RENT_PRICE   = txtRentPrice.Text;
                    oMTransaction.ADDED_DATE   = DateTime.Now.ToString("yyyy-MM-dd");
                    oMTransaction.ADDED_BY     = eVariable.sUsername;
                    oMTransaction.STATUS       = "ACTIVE";
                    oBook.InsertBook(oMTransaction);
                }
            }
            else
            {
                oMTransaction = new Model.Transaction();
                oBook         = new DataAccess.Book();

                oMTransaction.BOOK_ID       = eVariable.sBookID;
                oMTransaction.TITLE         = txtTitle.Text;
                oMTransaction.SUBJECT       = txtSubject.Text;
                oMTransaction.CATEGORY      = txtCategory.Text;
                oMTransaction.AUTHOR        = txtAuthor.Text;
                oMTransaction.PUBLISH_DATE  = dtDatePublish.Value.ToString("yyyy-MM-dd");
                oMTransaction.LOCATION      = txtLocation.Text;
                oMTransaction.BOOK_PRICE    = txtBookPrice.Text;
                oMTransaction.RENT_PRICE    = txtRentPrice.Text;
                oMTransaction.MODIFIED_DATE = DateTime.Now.ToString("yyyy-MM-dd");
                oMTransaction.MODIFIED_BY   = eVariable.sUsername;
                oMTransaction.STATUS        = "ACTIVE";
                oBook.UpdateBookDetails(oMTransaction);
            }

            oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.RECORD_HAS_BEEN_SUCESSFULLY_SAVED.ToString().Replace("_", " "));
            oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
            oFrmMsgBox.ShowDialog();
            oFrmBookList.LoadRecords();
            EDControls(true);
            Close();
            ResetFields();
        }
Пример #17
0
 void GetBookID()
 {
     oBook             = new DataAccess.Book();
     eVariable.sBookID = (oBook.GetBookID() + 1).ToString();
 }
Пример #18
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (oMTransactionList.Count <= 0)
            {
                return;
            }

            #region ADD
            if (eVariable.m_ActionType == eVariable.ACTION_TYPE.ADD)
            {
                foreach (var oItem in oMTransactionList)
                {
                    oMTransaction              = new Model.Transaction();
                    oBook                      = new DataAccess.Book();
                    oMTransaction.BOOK_ID      = oItem.BOOK_ID;
                    oMTransaction.BOOK_NO      = oItem.BOOK_NO;
                    oMTransaction.TITLE        = oItem.TITLE;
                    oMTransaction.SUBJECT      = oItem.SUBJECT;
                    oMTransaction.CATEGORY     = oItem.CATEGORY;
                    oMTransaction.AUTHOR       = oItem.AUTHOR;
                    oMTransaction.ISBN_NUMBER  = oItem.ISBN_NUMBER;
                    oMTransaction.PUBLISH_DATE = oItem.PUBLISH_DATE;
                    oMTransaction.LOCATION     = oItem.LOCATION;
                    oMTransaction.BOOK_PRICE   = oItem.BOOK_PRICE;
                    oMTransaction.RENT_PRICE   = oItem.RENT_PRICE;
                    oMTransaction.REMARKS      = txtRemarks.Text;
                    oMTransaction.STATUS       = "ACTIVE";
                    oMTransaction.ADDED_DATE   = DateTime.Now.ToString("yyyy-MM-dd");
                    oMTransaction.ADDED_BY     = eVariable.sUsername;
                    oBook.InsertBook(oMTransaction);
                }
            }
            #endregion

            if (eVariable.m_ActionType == eVariable.ACTION_TYPE.EDIT)
            {
                oMTransaction = new Model.Transaction();
                oBook         = new DataAccess.Book();

                oMTransaction.TITLE        = txtTitle.Text;
                oMTransaction.SUBJECT      = txtSubject.Text;
                oMTransaction.CATEGORY     = txtCategory.Text;
                oMTransaction.AUTHOR       = txtAuthor.Text;
                oMTransaction.PUBLISH_DATE = txtDatePublish.Text;
                oMTransaction.LOCATION     = txtLocation.Text;
                oMTransaction.BOOK_PRICE   = txtPrice.Text;
                oMTransaction.RENT_PRICE   = txtLDPrice.Text;

                oMTransaction.BOOK_ID     = oMTransactionRecord.BOOK_ID;
                oMTransaction.BOOK_NO     = oMTransactionRecord.BOOK_NO;
                oMTransaction.ISBN_NUMBER = oMTransactionRecord.ISBN_NUMBER;
                oMTransaction.REMARKS     = txtRemarks.Text;
                oMTransaction.STATUS      = cboStatus.Text;

                if (oMTransaction.STATUS == "INACTIVE")
                {
                    if (oBook.IsBookCheckout(oMTransaction))
                    {
                        oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.THE_RECORD_YOU_HAVE_SELECTED_HAVE_ACTIVE_TRANSACTION.ToString().Replace("_", " "));
                        oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                        oFrmMsgBox.ShowDialog();
                        return;
                    }
                }

                oMTransaction.ADDED_DATE = DateTime.Now.ToString("yyyy-MM-dd");
                oMTransaction.ADDED_BY   = eVariable.sUsername;
                oBook.UpdateBook(oMTransaction);
            }

            oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.RECORD_HAS_BEEN_SUCESSFULLY_SAVED.ToString().Replace("_", " "));
            oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
            oFrmMsgBox.ShowDialog();
            oFrmBookLst.LoadRecords();
            LoadRecord();
            clearText();
        }
Пример #19
0
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            int iDaysCount = 0;
            int iBookCount = 0;

            try
            {
                if (dgBorrowedBooks.Rows.Count == 0)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_SELECT_A_RECORD.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                foreach (DataGridViewRow row in dgBorrowedBooks.Rows)
                {
                    iBookCount += Convert.ToInt32(row.Cells[9].Value);
                }

                if (oMTransactionList.Count != iBookCount || oMTransactionList.Count == 0)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_ENTER_BOOK_NUMBER.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                if (iGridControl.Visible == true)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.PLEASE_CLOSE_THE_ISBN_PANEL.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                    oFrmMsgBox.ShowDialog();
                    return;
                }

                foreach (var oData in oMTransactionList)
                {
                    iDaysCount = Convert.ToInt32(oData.TOTAL_DAYS);


                    if (iBookCount > Convert.ToInt32(lblMaxBook.Text))
                    {
                        oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TOTAL_BOOK_COUNT_ALREADY_EXCEED_LIMIT.ToString().Replace("_", " "));
                        oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                        oFrmMsgBox.ShowDialog();
                        return;
                    }
                    if (iDaysCount > Convert.ToInt32(lblMaxDays.Text))
                    {
                        oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TOTAL_DAY_COUNT_ALREADY_EXCEED_LIMIT.ToString().Replace("_", " "));
                        oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.INFO;
                        oFrmMsgBox.ShowDialog();
                        return;
                    }
                }
                oBorrower = new DataAccess.Borrower();

                if (dgBorrowedBooks.Rows.Count > 0)
                {
                    oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.ARE_YOU_SURE_YOU_WANT_TO_PROCEED_TO_THE_TRANSACTION.ToString().Replace("_", " "));
                    oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.QUERY;
                    oFrmMsgBox.ShowDialog();

                    if (oFrmMsgBox.sAnswer == "YES")
                    {
                        foreach (Model.Transaction oData in oMTransactionList)
                        {
                            oMTransaction              = new Model.Transaction();
                            oBook                      = new DataAccess.Book();
                            oMTransaction.BOOK_ID      = oData.BOOK_ID;
                            oMTransaction.PERSON_ID    = txtBorrowerID.Text;
                            oMTransaction.BOOK_NO      = oData.BOOK_NO;
                            oMTransaction.TITLE        = oData.TITLE;
                            oMTransaction.SUBJECT      = oData.SUBJECT;
                            oMTransaction.CATEGORY     = oData.CATEGORY;
                            oMTransaction.AUTHOR       = oData.AUTHOR;
                            oMTransaction.PUBLISH_DATE = oData.PUBLISH_DATE;
                            oMTransaction.ISBN_NUMBER  = oData.ISBN_NUMBER;
                            oMTransaction.LOCATION     = oData.LOCATION;
                            oMTransaction.BOOK_PRICE   = oData.BOOK_PRICE;
                            oMTransaction.RENT_PRICE   = oData.RENT_PRICE;
                            oMTransaction.DUE_INTEREST = oData.DUE_INTEREST;
                            oMTransaction.LD_INTEREST  = oData.LD_INTEREST;
                            oMTransaction.TOTAL_QTY    = oData.TOTAL_QTY;
                            oMTransaction.TOTAL_DAYS   = oData.TOTAL_DAYS;
                            oMTransaction.ADDED_DATE   = DateTime.Now.ToString("yyyy-MM-dd");
                            oMTransaction.ADDED_BY     = txtBorrowerID.Text;
                            oMTransaction.STATUS       = "REQUEST";
                            oBook.RequestBook(oMTransaction);
                        }


                        oFrmMsgBox = new frmMessageBox(eVariable.TransactionMessage.TRANSACTION_HAS_BEEN_SUCESSFULLY_SAVE.ToString().Replace("_", " "));
                        oFrmMsgBox.m_MessageType = frmMessageBox.MESSAGE_TYPE.QUERY;
                        oFrmMsgBox.ShowDialog();
                        LoadRecords();
                        clearText();
                    }
                }
            }
            catch (Exception ex)
            { }
        }
        public async Task UserRepository_GetUserRecommendations()
        {
            using var contextFactory = new TestLooseLeafContextFactory();
            using (LooseLeafContext arrangeContext = contextFactory.CreateContext())
            {
                //creates test address 1 for lender
                await contextFactory.CreateAddress(arrangeContext);

                //creates test book 1
                await contextFactory.CreateBook(arrangeContext);

                //creates test book 2
                await contextFactory.CreateBook(arrangeContext);

                //creates test book 3
                await contextFactory.CreateBook(arrangeContext);

                //creates test book 4
                await contextFactory.CreateBook(arrangeContext);

                //creates test book 5
                await contextFactory.CreateBook(arrangeContext);

                //creates owned book 1
                await contextFactory.CreateOwnedBook(arrangeContext, 1, 1);

                //creates owned book 2
                await contextFactory.CreateOwnedBook(arrangeContext, 1, 2);

                //creates owned book 3
                await contextFactory.CreateOwnedBook(arrangeContext, 1, 3);

                //creates owned book 4
                await contextFactory.CreateOwnedBook(arrangeContext, 1, 4);

                //creates owned book 5
                await contextFactory.CreateOwnedBook(arrangeContext, 1, 5);

                //adds  inserts lender variable able as a user in the sqllite database references address 1
                await contextFactory.CreateUser(arrangeContext, "damionsilver");

                arrangeContext.SaveChanges();//adds  inserts burrower variable able as a user in the sqllite database references address 1
                await contextFactory.CreateUser(arrangeContext, "dajiabridgers");

                DataAccess.Book count = arrangeContext.Books.First();
                arrangeContext.SaveChanges();

                await contextFactory.CreateLoan(arrangeContext, 1, 2);

                arrangeContext.SaveChanges();
            }

            //creates new instance of sqllite database and name it context.
            using var context = contextFactory.CreateContext();
            //creates a userrepository instance and insert context inside of it.
            var repo = new UserRepository(context);

            // act
            List <IBook> userrecommendedbooks = new List <IBook>(await repo.GetRecommendedBooksAsync(2));

            // assert
            Assert.Contains("Test", userrecommendedbooks.First().Genres);
        }