/// <summary> /// Add Book into Cart /// </summary> /// <param name="userID">User-ID</param> /// <param name="cart">Cart Data</param> /// <returns>If Data Added Successfully return Response Data else null or Bad Request</returns> public async Task <CartBookResponse> AddBookIntoCart(int userID, CartRequest cart) { try { CartBookResponse responseData = null; SQLConnection(); using (SqlCommand cmd = new SqlCommand("AddBookIntoCart", conn)) { cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@UserID", userID); cmd.Parameters.AddWithValue("@BookID", cart.BookID); cmd.Parameters.AddWithValue("@IsUsed", false); conn.Open(); SqlDataReader dataReader = await cmd.ExecuteReaderAsync(); responseData = BookResponseModel(dataReader); }; return(responseData); } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// Add Move Book Details in the database /// </summary> /// <param name="userID">UserID</param> /// <param name="wishListID">WishListID</param> /// <param name="wishListBook">Wish List Book Data</param> /// <returns>If Data Found return Response Data else null or Exeption</returns> public async Task <CartBookResponse> MoveToCart(int userID, int wishListID, WishListBookRequest wishListBook) { try { CartBookResponse responseData = null; SQLConnection(); using (SqlCommand cmd = new SqlCommand("MoveBookToCart", conn)) { cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@UserID", userID); cmd.Parameters.AddWithValue("@WishListID", wishListID); cmd.Parameters.AddWithValue("@BookID", wishListBook.BookID); cmd.Parameters.AddWithValue("@IsMoved", true); conn.Open(); SqlDataReader dataReader = await cmd.ExecuteReaderAsync(); responseData = CartRepository.BookResponseModel(dataReader); }; return(responseData); } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// List of Book Response Method /// </summary> /// <param name="dataReader">Sql Data Reader</param> /// <returns>It return List of Book Response Data</returns> private List <CartBookResponse> ListBookResponseModel(SqlDataReader dataReader) { try { List <CartBookResponse> bookList = new List <CartBookResponse>(); CartBookResponse responseData = null; while (dataReader.Read()) { responseData = new CartBookResponse { CartID = Convert.ToInt32(dataReader["CartID"]), BookID = Convert.ToInt32(dataReader["BookID"]), Name = dataReader["Name"].ToString(), Author = dataReader["Author"].ToString(), Language = dataReader["Language"].ToString(), Category = dataReader["Category"].ToString(), ISBN = dataReader["ISBN"].ToString(), Pages = dataReader["Pages"].ToString(), }; bookList.Add(responseData); } return(bookList); } catch (Exception ex) { throw new Exception(ex.Message); } }