Esempio n. 1
0
        public ActionResult AddToCart(int uniqueId)
        {
            SingleBook    singlebook          = new SingleBook();
            CSBook        CStargetBook        = null;
            EconomicsBook EconomicstargetBook = null;
            NovelBook     NoveltargetBook     = null;

            using (Group001BookstoreEntities dbContext = new Group001BookstoreEntities())
            {
                if (uniqueId < 2000)
                {
                    CStargetBook      = dbContext.CSBooks.SingleOrDefault(n => n.UniqueId == uniqueId);
                    singlebook.CSBook = CStargetBook;
                }
                else if (uniqueId > 2000 & uniqueId < 3000)
                {
                    EconomicstargetBook      = dbContext.EconomicsBooks.SingleOrDefault(n => n.UniqueId == uniqueId);
                    singlebook.Economicsbook = EconomicstargetBook;
                }
                else
                {
                    NoveltargetBook      = dbContext.NovelBooks.SingleOrDefault(n => n.UniqueId == uniqueId);
                    singlebook.NovelBook = NoveltargetBook;
                }
            }

            return(View("OrderReview", singlebook));
        }
Esempio n. 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // Retrieve book ID from URL parameter.
            // If not present, redirect to home
            string bookId = Request.QueryString["id"];

            if (string.IsNullOrEmpty(bookId))
            {
                Response.Redirect("Default.aspx");
            }

            // Check if user is logged in
            if (Request.Cookies["isLoggedIn"] == null)
            {
                Response.Redirect("Login?p=edit&id=" + bookId);
            }

            // Get book info from DB
            _book = _thisDal.GetBook(Int32.Parse(bookId));

            // Only populate fields with database data if page_load is not a postback (a reload of the page on button press)
            if (!IsPostBack)
            {
                PrePopulate();
            }
        }
Esempio n. 3
0
        public SingleBook GetBook(int id)
        {
            SingleBook book = null;

            using (var connection = new SqlConnection(connectionString))
            {
                using (var cmd = new SqlCommand())
                {
                    connection.Open();
                    cmd.Connection  = connection;
                    cmd.CommandText =
                        "SELECT b.id, b.title, b.authorId, a.name author, b.genreId, g.name genre, b.seriesId, s.name series, b.languageId, l.name language, b.edition, b.publisherId, p.name publisher, b.pages, b.cover, b.coverTypeId , c.name coverType, b.isbn, b.releaseDate, b.purchaseDate, b.price, b.purchasePrice " +
                        "FROM Books b " +
                        "INNER JOIN Authors     a ON b.authorId = a.id " +
                        "INNER JOIN Genres      g ON b.genreId = g.id " +
                        "INNER JOIN Series      s ON b.seriesId = s.id " +
                        "INNER JOIN Languages   l ON b.languageId = l.id " +
                        "INNER JOIN Publishers  p ON b.publisherId = p.id " +
                        "INNER JOIN CoverTypes  c ON b.coverTypeId = c.id " +
                        "WHERE b.id = @bookId";
                    cmd.Parameters.AddWithValue("bookId", id);

                    using (var reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            book = CreateBookFromDB(reader);
                        }
                    }
                }
            }

            return(book);
        }
Esempio n. 4
0
        private SingleBook CreateBookFromDB(IDataRecord record)
        {
            int    id    = record.GetInt32(record.GetOrdinal("id"));
            string title = record.GetString(record.GetOrdinal("title"));

            int    authorId   = record.GetInt32(record.GetOrdinal("authorId"));
            string authorName = record.GetString(record.GetOrdinal("author"));

            int    genreId   = record.GetInt32(record.GetOrdinal("genreId"));
            string genreName = record.GetString(record.GetOrdinal("genre"));

            int    seriesId   = record.GetInt32(record.GetOrdinal("seriesId"));
            string seriesName = record.GetString(record.GetOrdinal("series"));

            int    languageId   = record.GetInt32(record.GetOrdinal("languageId"));
            string languageName = record.GetString(record.GetOrdinal("language"));

            string edition = record.IsDBNull(record.GetOrdinal("edition")) ? null : record.GetString(record.GetOrdinal("edition"));

            int    publisherId   = record.GetInt32(record.GetOrdinal("publisherId"));
            string publisherName = record.GetString(record.GetOrdinal("publisher"));

            var pages = record.IsDBNull(record.GetOrdinal("pages")) ? 0 : record.GetInt32(record.GetOrdinal("pages"));

            var cover = record.IsDBNull(record.GetOrdinal("cover")) ? null : record.GetString(record.GetOrdinal("cover"));

            int    coverTypeId   = record.GetInt32(record.GetOrdinal("coverTypeId"));
            string coverTypeName = record.GetString(record.GetOrdinal("coverType"));

            var isbn          = record.IsDBNull(record.GetOrdinal("isbn")) ? null : record.GetString(record.GetOrdinal("isbn"));
            var releaseDate   = record.IsDBNull(record.GetOrdinal("releaseDate")) ? null : record.GetString(record.GetOrdinal("releaseDate"));
            var purchaseDate  = record.IsDBNull(record.GetOrdinal("purchaseDate")) ? null : record.GetString(record.GetOrdinal("purchaseDate"));
            var price         = record.IsDBNull(record.GetOrdinal("price")) ? 0 : record.GetInt32(record.GetOrdinal("price"));
            var purchasePrice = record.IsDBNull(record.GetOrdinal("purchasePrice")) ? 0 : record.GetInt32(record.GetOrdinal("purchasePrice"));

            var book =
                new SingleBook(
                    id,
                    title,
                    new MetaInfo(authorId, authorName),
                    new MetaInfo(genreId, genreName),
                    new MetaInfo(seriesId, seriesName),
                    new MetaInfo(languageId, languageName),
                    edition,
                    new MetaInfo(publisherId, publisherName),
                    pages,
                    cover,
                    new MetaInfo(coverTypeId, coverTypeName),
                    isbn,
                    releaseDate,
                    purchaseDate,
                    price,
                    purchasePrice
                    );

            return(book);
        }
Esempio n. 5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            // Initialize connection to Data Access Layer
            DAL _thisDAL = new DAL();

            // Retrieve book ID from URL parameter.
            // If not present, redirect to home
            string bookId = Request.QueryString["id"];

            if (string.IsNullOrEmpty(bookId))
            {
                Response.Redirect("Default.aspx");
            }

            // Retrieve Book object with ID
            book = _thisDAL.GetBook(Int32.Parse(bookId));

            // Set page title equal to book title
            Page.Title = book.Title;

            // Bind Book data to page elements
            // Required data
            CoverImage.ImageUrl  = book.Cover;
            BookTitle.InnerText  = book.Title;
            BookAuthor.InnerText = book.Author.Name;

            // Optional data - perform check whether value is not null or empty
            BookGenre.InnerHtml       = string.IsNullOrEmpty(book.Genre.Name) ? "-" : book.Genre.Name;
            BookSeries.InnerHtml      = string.IsNullOrEmpty(book.Series.Name) ? "-" : book.Series.Name;
            BookLanguage.InnerHtml    = string.IsNullOrEmpty(book.Language.Name) ? "-" : book.Language.Name;
            BookEdition.InnerHtml     = string.IsNullOrEmpty(book.Edition) ? "-" : book.Edition;
            BookPublisher.InnerHtml   = string.IsNullOrEmpty(book.Publisher.Name) ? "-" : book.Publisher.Name;
            BookPages.InnerHtml       = book.Pages == 0 ? "-" : book.Pages.ToString();
            BookCoverType.InnerHtml   = string.IsNullOrEmpty(book.CoverType.Name) ? "-" : book.CoverType.Name;
            BookISBN.InnerHtml        = string.IsNullOrEmpty(book.Isbn) ? "-" : book.Isbn;
            BookReleaseDate.InnerHtml = string.IsNullOrEmpty(book.ReleaseDate) ? "-" : book.ReleaseDate;
            BookPrice.InnerHtml       = book.Price == 0 ? "-" : "&euro;" + book.Price.ToString();

            BookPurchaseDate.InnerHtml  = string.IsNullOrEmpty(book.PurchaseDate) ? "-" : book.PurchaseDate;
            BookPurchasePrice.InnerHtml = book.PurchasePrice == 0 ? "-" : "&euro;" + book.PurchasePrice;
            var profit = book.Price - book.PurchasePrice;

            BookProfit.InnerHtml = "&euro;" + profit;
        }