コード例 #1
0
        public static bool checkInItem(int studentId, int itemId)
        {
            bool returnVal = false;
            DateTime checkInTime = DateTime.Now;

            if (sDBHandler == null)
            {
                sDBHandler = new DatabaseHandler();
            }

            try
            {
                sDBHandler.open();

                // If item id is invalid, display error alert
                if (!verifyItemId(itemId))
                {
                    displayInvalidItemId();
                }
                // If item is not checked out by student, display error
                else if (!isItemCheckedOut(itemId, studentId))
                {
                    displayItemNotCheckedOut();
                }
                else {
                    // If item is overdue, we need to update the fees
                    if (isOverDue(itemId, checkInTime))
                    {
                        updateLateFees(itemId, studentId, checkInTime);
                    }
                    // If item is book, we need to update the quanitity
                    if (isBook(itemId))
                    {
                        updateBookQuantity(itemId, true);
                    }

                    // Display that item was checked in
                    displayItemCheckedIn();

                    // Update the item to being checked in in the database
                    returnVal = markItemAsCheckedIn(itemId, studentId);
                }
            }
            catch (Exception exception)
            {
                System.Diagnostics.Debug.WriteLine("ItemHelper CheckInItem" + exception.StackTrace);
            }

            sDBHandler.close();

            return returnVal;
        }
コード例 #2
0
        public static bool checkOutItem(int studentId, int itemId)
        {
            bool returnVal = false;

            if (sDBHandler == null)
            {
                sDBHandler = new DatabaseHandler();
            }

            try
            {
                sDBHandler.open();

                // If item id is not found in db, display error alert
                if (!verifyItemId(itemId))
                {
                    displayInvalidItemId();
                }
                // If item is alreeady checked out by student display error alert
                else if (isItemCheckedOut(itemId, studentId))
                {
                    displayItemAlreadyCheckedOut();
                }
                //If item is a magazine, display error alert
                else if (!verifyItemNotMagazine(itemId))
                {
                    displayItemIsMagazine();
                }
                // If item is not avialable display an error elert
                else if (!isItemAvailable(itemId))
                {
                    displayItemNotAvailable();
                }
                else
                {
                    // Else display that the item was checked out
                    displayItemCheckedOut();

                    // Update the item as checked out in the database
                    returnVal = markItemAsCheckedOut(itemId, studentId, DateTime.Now);
                }
            }
            catch (Exception exception)
            {
                System.Diagnostics.Debug.WriteLine("ItemHelper CheckOutItem" + exception.StackTrace);
            }

            sDBHandler.close();

            return returnVal;
        }
コード例 #3
0
        public static DataTable performItemSearch(string searchCategory, string searchString)
        {
            searchCategory = "'" + searchCategory + "'";
            searchString = "'%" + searchString + "%'";
            DatabaseHandler db = new DatabaseHandler();

            DataTable dataTable = new DataTable();

            try
            {
                db.open();

                string sql = "SELECT * FROM " + sItemTable + " WHERE (`Category`=" + searchCategory + " && (`Title` LIKE " + searchString
                    + " OR `Year` LIKE " + searchString + " OR `Genre` LIKE " + searchString + " OR `Author` LIKE " + searchString
                    + " OR `Publisher` LIKE " + searchString + "));";

                MySqlCommand cmd = new MySqlCommand(sql, db.getDB());
                MySqlDataAdapter adapter = new MySqlDataAdapter(cmd);

                adapter.Fill(dataTable);
            }
            catch (Exception exception)
            {
                System.Diagnostics.Debug.WriteLine("ItemHelper PerformItemSearch" + exception.StackTrace);
            }

            db.close();

            return dataTable;
        }
コード例 #4
0
        public static bool reserveItem(int studentId, int itemId)
        {
            bool returnVal = false;

            if (sDBHandler == null)
            {
                sDBHandler = new DatabaseHandler();
            }

            try
            {
                sDBHandler.open();

                // If item id is not found in database, show an error alert
                if (!verifyItemId(itemId))
                {
                    displayInvalidItemId();
                }
                // If item is already checked out by the student, display an error message
                else if (isItemCheckedOut(itemId, studentId))
                {
                    displayItemAlreadyCheckedOut();
                }
                // Check to make sure the item is not a magazine
                else if (!verifyItemNotMagazine(itemId))
                {
                    displayItemIsMagazine();
                }
                // Check to make sure the item is available
                else if (!isItemAvailable(itemId))
                {
                    displayItemNotAvailable();
                }
                else
                {
                    // Display that the item was reserved
                    displayItemReserved();

                    // Update the item to reserved by student in the database
                    returnVal = markItemAsReserved(itemId, studentId, DateTime.Now);
                }
            }
            catch (Exception exception)
            {
                System.Diagnostics.Debug.WriteLine("ItemHelper ReserveItem" + exception.StackTrace);
            }

            sDBHandler.close();

            return returnVal;
        }
コード例 #5
0
ファイル: Librarian.cs プロジェクト: brandon14/library-system
        public bool verifyID()
        {
            DatabaseHandler db = new DatabaseHandler();

            try
            {
                // Get ID from database and check to see if it matches one setup with Librarian Object
                db.open();

                // Query to select all columns from database where LibrarianID == mId
                string sql = "SELECT * FROM " + sLibrarianTable + " WHERE `LibrarianID`=" + mId + ";";

                // Create a command
                MySqlCommand cmd = new MySqlCommand(sql, db.getDB());

                // Execute command and store results in reader
                MySqlDataReader reader = cmd.ExecuteReader();

                // We found a matching record in the database
                if (reader.Read())
                {
                    // Get the Librarian ID and name from records and set isLoggedIn to true
                    mId = int.Parse(reader["LibrarianID"].ToString());
                    mName = reader["Name"].ToString();
                    mIsLoggedIn = true;
                }

                // Close reader
                reader.Close();
            }
            catch (FormatException formException)
            {
                System.Diagnostics.Debug.WriteLine("LibrarianVerifyId" + formException.StackTrace);
            }
            catch (Exception exception)
            {
                System.Diagnostics.Debug.WriteLine("LibrarianVerifyId" +  exception.StackTrace);
            }

            // Close db
            db.close();

            return mIsLoggedIn;
        }