public void AddCopy(Copy selectedCopy) { int isAvailable = selectedCopy.GetAvailable(); if (isAvailable == 1) { SqlConnection conn = DB.Connection(); conn.Open(); SqlCommand cmd = new SqlCommand("INSERT INTO checkout (patron_id, copy_id, current_checkout, due_date) VALUES (@PatronId, @CopyId, @CurrentCheckout, @DueDate); UPDATE copy SET available = @Available WHERE id = @CopyId;", conn); cmd.Parameters.Add(new SqlParameter("@PatronId", this.GetId().ToString())); cmd.Parameters.Add(new SqlParameter("@CopyId", selectedCopy.GetId().ToString())); cmd.Parameters.Add(new SqlParameter("@CurrentCheckout", "1")); //TODO Later on, lets figure out a way to get the current date to plug into duedate. cmd.Parameters.Add(new SqlParameter("@DueDate", "2017-03-02")); cmd.Parameters.Add(new SqlParameter("@Available", "0")); cmd.ExecuteNonQuery(); if (conn != null) { conn.Close(); } selectedCopy.SetAvailable(0); } }
public override bool Equals(System.Object otherCopy) { if (!(otherCopy is Copy)) { return(false); } else { Copy newCopy = (Copy)otherCopy; bool idEquality = this.GetId() == newCopy.GetId(); bool bookIdEquality = this.GetBookId() == newCopy.GetBookId(); bool copyNumberEquality = this.GetCopyNumber() == newCopy.GetCopyNumber(); bool availableEquality = this.GetAvailable() == newCopy.GetAvailable(); return(idEquality && bookIdEquality && copyNumberEquality && availableEquality); } }
public void AddCopy_OneCopy_CopyNotAvailable() { Patron testPatron = new Patron("Britton"); testPatron.Save(); Copy newCopy = new Copy(1, 15); newCopy.Save(); testPatron.AddCopy(newCopy); int available = newCopy.GetAvailable(); Assert.Equal(0, available); }