예제 #1
0
 public async Task <IActionResult> AddOrEdit(int id, [Bind("BookId,AuthorNumber,BookName,AuthorName,ISBCode,Price,PublishingDate")] BooksInfo bookModel)
 {
     if (ModelState.IsValid)
     {
         if (id == 0)
         {
             //bookModel.PublishingDate = DateTime.Now;
             _context.Add(bookModel);
             await _context.SaveChangesAsync();
         }
         else
         {
             try
             {
                 _context.Update(bookModel);
                 await _context.SaveChangesAsync();
             }
             catch (DbUpdateConcurrencyException)
             {
                 if (!BookModelExists(bookModel.BookId))
                 {
                     return(NotFound());
                 }
                 else
                 {
                     throw;
                 }
             }
         }
         return(Json(new { isValid = true, html = Helper.RenderRazorViewToString(this, "_ViewAll", _context.BooksInfos.ToList()) }));
     }
     return(Json(new { isValid = false, html = Helper.RenderRazorViewToString(this, "AddOrEdit", bookModel) }));
 }
예제 #2
0
        public bool AddBook(BooksInfo book)
        {
            var booksJson = File.ReadAllText("Data/BooksInfo.json");
            var books     = JsonConvert.DeserializeObject <List <BooksInfo> >(booksJson);

            if (string.IsNullOrEmpty(book.Id))
            {
                book.Id = Guid.NewGuid().ToString();
                books.Add(book);
            }
            else
            {
                books = books.Select((x) =>
                {
                    if (x.Id == book.Id)
                    {
                        x.Name        = book.Name;
                        x.Description = book.Description;
                        x.Author      = book.Author;
                        x.Available   = book.Available;
                    }
                    return(x);
                }).ToList();
            }
            File.WriteAllText("Data/BooksInfo.json", JsonConvert.SerializeObject(books));
            return(true);
        }
예제 #3
0
        private void OnLoad(object sender, RoutedEventArgs e)
        {
            using (SqlConnection conn = new SqlConnection(Metadata.CurrentConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand("selectAuthorsAndBooks", conn)
                {
                    CommandType = CommandType.StoredProcedure
                })
                {
                    conn.Open();
                    List <BooksInfo> Books = new List <BooksInfo>();
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            BooksInfo book = new BooksInfo();
                            book.book.Id           = int.Parse(reader["Id"].ToString());
                            book.book.Name         = reader["Name"].ToString();
                            book.book.Year         = int.Parse(reader["Year"].ToString());
                            book.book.Description  = reader["Description"].ToString();
                            book.author.First_Name = reader["First_Name"].ToString() + reader["Last_Name"].ToString();

                            Books.Add(book);
                        }
                        ;
                    }
                    datagrid_books.ItemsSource = Books;
                    conn.Close();
                }
            }
        }
예제 #4
0
        private void OnLoad(object sender, RoutedEventArgs e)
        {
            using (SqlConnection conn = new SqlConnection(Metadata.CurrentConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand("selectUserOrders", conn)
                {
                    CommandType = CommandType.StoredProcedure
                })
                {
                    conn.Open();
                    cmd.Parameters.AddWithValue("@Id", this.id);
                    List <BooksInfo> Books = new List <BooksInfo>();
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            BooksInfo book = new BooksInfo();
                            book.order.id            = int.Parse(reader["Id"].ToString());
                            book.order.Order_date    = (DateTime)reader["Order_date"];
                            book.order.Required_date = (DateTime)reader["Required_date"];
                            book.order.Return_date   = reader["Return_date"] as DateTime? ?? null;
                            book.book = reader["Name"].ToString();

                            Books.Add(book);
                        }
                        ;
                    }
                    datagrid_user_orders.ItemsSource = Books;
                    conn.Close();
                }
            }
        }
예제 #5
0
        private void datagrid_books_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (datagrid_books.SelectedItem == null)
            {
                return;
            }
            BooksInfo dr = datagrid_books.SelectedItem as BooksInfo;

            new BookOrderInfo(dr.book.Id).Show();
        }
예제 #6
0
        //returns the book which we want to add author, if book already has an author it returns empty object
        public BooksDetailsInput GetBookInfo(int bookId)
        {
            BooksInfo         bookInfo    = _regRepository.BooksDetails.Where(x => x.Id == bookId).FirstOrDefault();
            BooksDetailsInput getBookInfo = new BooksDetailsInput();

            if (bookInfo.AuthorId == null)
            {
                getBookInfo.BookName    = bookInfo.BookName;
                getBookInfo.Id          = bookInfo.Id;
                getBookInfo.WrittenTime = bookInfo.WrittenTime;
            }
            return(getBookInfo);
        }
예제 #7
0
 //method to add new books to database
 public string AddBooks(string BookName, DateTime WrittenDate)
 {
     if (BookName != null)
     {
         if (_regRepository.BooksDetails.Any(x => x.BookName == BookName))
         {
             return("Arsebobs");
         }
         else
         {
             BooksInfo newBook = new BooksInfo();
             newBook.BookName    = BookName.Trim();
             newBook.WrittenTime = WrittenDate;
             newBook.DateTime    = DateTime.Now;
             _regRepository.BooksDetails.Add(newBook);
             _regRepository.SaveChanges();
             return("True");
         }
     }
     else
     {
         return("False");
     }
 }
예제 #8
0
        public ActionResult <bool> AddBook([FromBody] BooksInfo booksInfo, [FromServices] IBooksManager booksManager)
        {
            var result = booksManager.AddBook(booksInfo);

            return(result);
        }