コード例 #1
0
        public string RequestForThisBook(Book book, BookReader reader)
        {
            BookGateway aBookGateway = new BookGateway();

            if (aBookGateway.CheckIfthisBookExist(book))
            {
                if (aBookGateway.CheckBookQuantity(book) > 0)
                {
                    if (aRequestGateway.RequestForThisBook(book, reader))
                    {
                        return("Request Successfull");
                    }
                    else
                    {
                        return("Error found");
                    }
                }
                else
                {
                    return("Not Available now");
                }
            }
            else
            {
                return("This book is not exist in the library");
            }
        }
コード例 #2
0
ファイル: ReaderController.cs プロジェクト: hungit0408/thu
        public AjaxResult CreateReader([FromBody] BookReader readerJs)
        {
            var _result = new AjaxResult();

            _bookReaderBL = new BookReaderBL();
            try
            {
                // Check BookReaderID trùng hay không
                Dictionary <string, object> dict = new Dictionary <string, object>();
                dict["BookReaderCode"] = readerJs.BookReaderCode;
                List <BookReader> listReader = _bookReaderBL.SelectBookReaderByCode(dict);
                if (listReader.Count > 0)
                {
                    _result.Success = false;
                    _result.Message = "Mã thẻ " + readerJs.BookReaderCode + " đã được sử dụng. Vui lòng kiểm tra lại.";
                }
                else
                {
                    //Tiến hành Insert bản ghi
                    readerJs.CreatedDate = DateTime.Now;
                    readerJs.CreaterID   = Guid.Parse("666C3824-0105-9E5B-B86B-0226A45DB0D2");
                    _bookReaderBL.AddNewBookReader(readerJs);
                    _result.Success = true;
                    _result.Message = "Cất thành công";
                }
            }
            catch (Exception ex)
            {
                _result.Success = false;
                _result.Message = "Có lỗi đã xảy ra, thực hiện chức năng thất bại";
            }
            return(_result);
        }
コード例 #3
0
        public void UpdateBookReaderTest()
        {
            int bookReaderIndex = context.bookReader.Count - 1;
            var oldBookReader   = repository.GetBookReader(bookReaderIndex);
            var newBookReader   = new BookReader()
            {
                Age       = 34,
                FirstName = "Roma",
                LastName  = "Świerk",
                Telephone = "123456789"
            };
            int beforeSize = context.bookReader.Count;

            repository.UpdateBookReader(oldBookReader, newBookReader);
            int afterSize = context.bookReader.Count;

            var bookReaderAfterUpdate = repository.GetBookReader(bookReaderIndex);

            // compare sizes
            Assert.AreEqual(beforeSize, afterSize);

            // compare references (should be different because we only change properties)
            Assert.IsFalse(object.ReferenceEquals(bookReaderAfterUpdate, newBookReader));

            // compare properties
            Assert.AreEqual(newBookReader.Age, bookReaderAfterUpdate.Age);
            Assert.AreEqual(newBookReader.FirstName, bookReaderAfterUpdate.FirstName);
            Assert.AreEqual(newBookReader.LastName, bookReaderAfterUpdate.LastName);
            Assert.AreEqual(newBookReader.Telephone, bookReaderAfterUpdate.Telephone);
        }
コード例 #4
0
        public void AddBookReaderTest()
        {
            int beforeSize           = context.bookReaders.Count;
            var beforeLastBookReader = context.bookReaders.Last();
            var bookReaderToAdd      = new BookReader()
            {
                Age       = 35,
                FirstName = "Wiktor",
                LastName  = "Forst",
                Telephone = "123456789"
            };

            service.AddBookReader(bookReaderToAdd);
            int afterSize           = context.bookReaders.Count;
            var afterLastBookReader = context.bookReaders.Last();

            // check sizes
            Assert.AreNotEqual(beforeSize, afterSize);

            // check if last books aren't equal
            Assert.AreNotEqual(beforeLastBookReader, afterLastBookReader);

            // check if the book is in the list
            Assert.IsTrue(context.bookReaders.Contains(bookReaderToAdd));
        }
コード例 #5
0
        public void AddBookReaderTest()
        {
            int beforeSize           = context.bookReader.Count;
            var beforeLastBookReader = context.bookReader.Last();
            var bookReaderToAdd      = new BookReader()
            {
                Age       = 18,
                FirstName = "Oskar",
                LastName  = "Neuman",
                Telephone = "665456789"
            };

            repository.AddBookReader(bookReaderToAdd);
            int afterSize           = context.bookReader.Count;
            var afterLastBookReader = context.bookReader.Last();

            // check sizes
            Assert.AreNotEqual(beforeSize, afterSize);

            // check if last books aren't equal
            Assert.AreNotEqual(beforeLastBookReader, afterLastBookReader);

            // check if the book is in the list
            Assert.IsTrue(context.bookReader.Contains(bookReaderToAdd));
        }
コード例 #6
0
 // will be called in background thread
 List <Book> LoadBooksInBackground(string path)
 {
     using (var stream = File.OpenRead(path))
     {
         var books = BookReader.Read(stream);
         return(books);
     }
 }
コード例 #7
0
 public string UpdateThisBookReader(BookReader updtReader)
 {
     if (aBookReaderGateway.UpdateThisBookReader(updtReader))
     {
         return("Update Successful");
     }
     return("Error found");
 }
コード例 #8
0
        public static void Read(string path)
        {
            var files = Directory.GetFiles(path, "*.txt");

            foreach (var filePath in files)
            {
                var book = BookReader.Read(filePath);
                bookStore.Add(book);
            }
        }
コード例 #9
0
 public ReaderUI(BookReader aBookReader)
 {
     InitializeComponent();
     readerIDTextBox.Text   = aBookReader.ReaderID;
     readerNameTextBox.Text = aBookReader.ReaderName;
     bookTakenTextBox.Text  = Convert.ToString(aBookReader.Booktaken);
     LoadBookListGridView();
     LoadRequestedBookGridView();
     CheckRequestStauts();
 }
コード例 #10
0
        public ActionResult <BookReader> Post(BookReader booksReader)
        {
            var response = booksReadersService.AddBookReader(booksReader);

            if (response != null)
            {
                return(BadRequest(new { message = "You have already take one copy of the book!" }));
            }

            return(Ok());
        }
コード例 #11
0
 public void AddBookReader(BookReader bookReader)
 {
     // check if given book reader exists in repository
     if (!repository.GetAllBookReaders().Contains(bookReader))
     {
         repository.AddBookReader(bookReader);
     }
     else
     {
         throw new ArgumentException("Nie można dodać czytelnika do repozytirum, czytelnik już istnieje");
     }
 }
コード例 #12
0
 public void DeleteBookReader(BookReader bookReader)
 {
     // check if given book reader exists in repository
     if (repository.GetAllBookReaders().Contains(bookReader))
     {
         repository.DeleteBookReader(bookReader);
     }
     else
     {
         throw new ArgumentException("Nie można usunąć czytelnika z repozytorium, czytelnik nie istnieje");
     }
 }
コード例 #13
0
 public void UpdateBookReader(BookReader oldBookReader, BookReader newBookReader)
 {
     // check if old book reader exists in the repository
     if (repository.GetAllBookReaders().Contains(oldBookReader))
     {
         repository.UpdateBookReader(oldBookReader, newBookReader);
     }
     else
     {
         throw new ArgumentException("Nie można zaktualizować czytelnika, czytelnik nie istnieje");
     }
 }
コード例 #14
0
        public void DeleteBookReaderTestException()
        {
            var bookReaderToDelete = new BookReader()
            {
                Age       = 99,
                FirstName = "Testowy",
                LastName  = "Testowy",
                Telephone = "123456789"
            };

            service.DeleteBookReader(bookReaderToDelete);
        }
コード例 #15
0
        public void AddEventTestException2()
        {
            var bookState  = context.bookStates[0];
            var bookReader = new BookReader()
            {
                Age       = 99,
                FirstName = "Tester",
                LastName  = "Kodu",
                Telephone = "123456789"
            };

            service.AddEvent(bookReader, bookState);
        }
コード例 #16
0
        // filter and search methods

        // get all events for specified book reader
        public IEnumerable <Event> EventsForBookReader(BookReader bookReader)
        {
            List <Event> events = new List <Event>();

            foreach (Event e in repository.GetAllEvents())
            {
                if (e.BookReader == bookReader)
                {
                    events.Add(e);
                }
            }
            return(events);
        }
コード例 #17
0
        private void button1_Click(object sender, EventArgs e)
        {
            var book = Initializer.db.Books.SingleOrDefault(c => c.Name == textBox1.Text);

            if (book != null)
            {
                TimeSpan timeSpan = new TimeSpan();

                book.NumberInStock--;
                Initializer.db.Entry(book).State = EntityState.Modified;
                if (book.NumberInStock < 1)
                {
                    MessageBox.Show("There are no such books available!");
                    return;
                }

                switch (comboBox1.SelectedIndex)
                {
                case 0:
                    timeSpan = new TimeSpan(7, 0, 0, 0);
                    break;

                case 1:
                    timeSpan = new TimeSpan(14, 0, 0, 0);
                    break;

                case 2:
                    timeSpan = new TimeSpan(21, 0, 0, 0);
                    break;
                }
                var bookreader = new BookReader
                {
                    BookID             = book.ID,
                    ReaderID           = Reader.ID,
                    DateTaken          = DateTime.Now,
                    DateMustBeReturned = DateTime.Now + timeSpan
                };

                Initializer.db.BooksReaders.Add(bookreader);

                Initializer.db.SaveChanges();
                MessageBox.Show("Book has successfully been added to reader!");
                this.Dispose();
            }
            else
            {
                MessageBox.Show("There's no such book in the database!");
                this.Dispose();
            }
        }
コード例 #18
0
        public bool UpdateThisBookReader(BookReader updtReader)
        {
            Connection.Open();
            string     query       = "UPDATE t_reader SET reader_name = '" + updtReader.ReaderName + "' , email = '" + updtReader.Email + "' WHERE reader_id = '" + updtReader.ReaderID + "' ";
            SqlCommand command     = new SqlCommand(query, Connection);
            int        affectedRow = command.ExecuteNonQuery();

            Connection.Close();
            if (affectedRow > 0)
            {
                return(true);
            }
            return(false);
        }
コード例 #19
0
        public bool SaveThisBookReader(BookReader aBookReader)
        {
            Connection.Open();
            string     query       = "INSERT INTO t_reader (reader_id,reader_name,email) VALUES ('" + aBookReader.ReaderID + "','" + aBookReader.ReaderName + "','" + aBookReader.Email + "')";
            SqlCommand command     = new SqlCommand(query, Connection);
            int        affectedRow = command.ExecuteNonQuery();

            Connection.Close();
            if (affectedRow > 0)
            {
                return(true);
            }
            return(false);
        }
コード例 #20
0
        public bool RequestForThisBook(Book book, BookReader reader)
        {
            Connection.Open();
            string     query       = "INSERT INTO t_temporary_table (reader_id,book_id,status) VALUES ('" + reader.ReaderID + "','" + book.BookID + "','requested')";
            SqlCommand command     = new SqlCommand(query, Connection);
            int        affectedRow = command.ExecuteNonQuery();

            Connection.Close();
            if (affectedRow > 0)
            {
                return(true);
            }
            return(false);
        }
コード例 #21
0
 public string SaveThisBookReader(BookReader aBookReader)
 {
     if (aBookReaderGateway.CheckIfExist(aBookReader))
     {
         return("This ID is already exist");
     }
     else
     {
         if (aBookReaderGateway.SaveThisBookReader(aBookReader))
         {
             return("Saved");
         }
         return("not saved");
     }
 }
コード例 #22
0
        public bool BookReaderLogin(BookReader aBookReader)
        {
            BookReader bBookReader = new BookReader();

            bBookReader = aBookReaderGateway.BookReaderLogin(aBookReader.ReaderID);

            if (aBookReader.ReaderID == bBookReader.ReaderID)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #23
0
        private void updateBookReaderButton_Click(object sender, EventArgs e)
        {
            BookReader        updtReader         = new BookReader();
            BookReaderManager aBookReaderManager = new BookReaderManager();

            updtReader.ReaderID   = updateBookReaderIDtextBox.Text;
            updtReader.ReaderName = updateBookReaderNameTextBox.Text;
            updtReader.Email      = UpdateEmailTextBox.Text;

            MessageBox.Show(aBookReaderManager.UpdateThisBookReader(updtReader));
            updateBookReaderIDtextBox.Clear();
            UpdateEmailTextBox.Clear();
            updateBookReaderNameTextBox.Clear();
            LoadReaderListGridView();
        }
コード例 #24
0
        private void addButton_Click(object sender, EventArgs e)
        {
            RequestManager aRequestManager = new RequestManager();
            Book           book            = new Book();

            book.BookID = addBookIDTextBox.Text;
            BookReader cReader = new BookReader();

            cReader.ReaderID = readerIDTextBox.Text;
            MessageBox.Show(aRequestManager.RequestForThisBook(book, cReader));
            addButton.Enabled = false;
            addBookIDTextBox.Clear();
            CheckRequestStauts();
            LoadRequestedBookGridView();
        }
コード例 #25
0
        public List <BookReader> LoadBookreaderGridview()
        {
            Connection.Open();
            string            query      = "SELECT * FROM t_reader";
            SqlCommand        command    = new SqlCommand(query, Connection);
            SqlDataReader     aReader    = command.ExecuteReader();
            List <BookReader> readerList = new List <BookReader>();

            while (aReader.Read())
            {
                BookReader bBookReader = new BookReader();
                bBookReader.ReaderID   = aReader["reader_id"].ToString();
                bBookReader.ReaderName = aReader["reader_name"].ToString();
                bBookReader.Email      = aReader["email"].ToString();
                if (aReader["book_taken"].ToString() == "")
                {
                    bBookReader.Booktaken = 0;
                }
                else
                {
                    bBookReader.Booktaken = (int)aReader["book_taken"];
                }

                if (aReader["date_of_taken"].ToString() == "")
                {
                    bBookReader.DateOfTakeBook = Convert.ToDateTime(null);
                }
                else
                {
                    bBookReader.DateOfTakeBook = Convert.ToDateTime(aReader["date_of_taken"]);
                }


                if (aReader["date_of_return"].ToString() == "")
                {
                    bBookReader.DateOfReturnBook = Convert.ToDateTime(null);
                }
                else
                {
                    bBookReader.DateOfReturnBook = Convert.ToDateTime(aReader["date_of_return"]);
                }


                readerList.Add(bBookReader);
            }
            Connection.Close();
            return(readerList);
        }
コード例 #26
0
        public BookReader BookReaderLogin(string bookReaderID)
        {
            Connection.Open();
            string        query   = "SELECT * FROM t_reader WHERE reader_id = '" + bookReaderID + "'";
            SqlCommand    command = new SqlCommand(query, Connection);
            SqlDataReader aReader = command.ExecuteReader();

            BookReader bookReader = new BookReader();

            while (aReader.Read())
            {
                bookReader.ReaderID = aReader["reader_id"].ToString();
            }
            Connection.Close();
            return(bookReader);
        }
コード例 #27
0
        public bool CheckIfExist(BookReader aBookReader)
        {
            Connection.Open();
            string        query   = "SELECT * FROM t_reader WHERE reader_id = '" + aBookReader.ReaderID + "'";
            SqlCommand    command = new SqlCommand(query, Connection);
            SqlDataReader aReader = command.ExecuteReader();

            while (aReader.Read())
            {
                Connection.Close();

                return(true);
            }
            Connection.Close();
            return(false);
        }
コード例 #28
0
        public void TestUnionVector()
        {
            var fbb      = new FlatBufferBuilder(100);
            var rapunzel = Rapunzel.CreateRapunzel(fbb, 40).Value;

            var characterTypes = new[]
            {
                Character.MuLan,
                Character.Belle,
                Character.Other,
            };
            var characterTypesOffset = Movie.CreateCharactersTypeVector(fbb, characterTypes);

            var characters = new[]
            {
                Attacker.CreateAttacker(fbb, 10).Value,
                BookReader.CreateBookReader(fbb, 20).Value,
                fbb.CreateSharedString("Chip").Value,
            };
            var charactersOffset = Movie.CreateCharactersVector(fbb, characters);

            var movieOffset = Movie.CreateMovie(
                fbb,
                Character.Rapunzel,
                rapunzel,
                characterTypesOffset,
                charactersOffset);

            Movie.FinishMovieBuffer(fbb, movieOffset);

            var movie = Movie.GetRootAsMovie(fbb.DataBuffer);

            Assert.AreEqual(Character.Rapunzel, movie.MainCharacterType);
            Assert.AreEqual(40, movie.MainCharacter <Rapunzel>().Value.HairLength);

            Assert.AreEqual(3, movie.CharactersLength);
            Assert.AreEqual(Character.MuLan, movie.CharactersType(0));
            Assert.AreEqual(10, movie.Characters <Attacker>(0).Value.SwordAttackDamage);
            Assert.AreEqual(Character.Belle, movie.CharactersType(1));
            Assert.AreEqual(20, movie.Characters <BookReader>(1).Value.BooksRead);
            Assert.AreEqual(Character.Other, movie.CharactersType(2));
            Assert.AreEqual("Chip", movie.CharactersAsString(2));

            TestObjectAPI(movie);
        }
コード例 #29
0
ファイル: ReaderController.cs プロジェクト: hungit0408/thu
        public AjaxResult EditReader([FromBody] BookReader readerJs)
        {
            var _result = new AjaxResult();

            _bookReaderBL = new BookReaderBL();
            Dictionary <string, object> dict = new Dictionary <string, object>();

            try
            {
                // Khởi tạo giá trị cho dictionary
                dict["BookReaderCode"] = readerJs.BookReaderCode;
                dict["BookReaderID"]   = readerJs.BookReaderID;
                // Check trùng BookReaderCode ghi trước khi cho update
                List <BookReader> listReader = _bookReaderBL.SelectReaderByCodeAndDifferentID(dict);
                if (listReader.Count > 0)
                {
                    _result.Success = false;
                    _result.Message = "Mã thẻ " + readerJs.BookReaderCode + " đã được sử dụng. Vui lòng kiểm tra lại.";
                }
                else
                {
                    readerJs.ModifiedDate = DateTime.Now;
                    readerJs.CreaterID    = Guid.Parse("666C3824-0105-9E5B-B86B-0226A45DB0D2");
                    int result = _bookReaderBL.UpdateBookReader(readerJs);
                    if (result > 0)
                    {
                        _result.Success = true;
                        _result.Message = "Cất thành công";
                    }
                    else
                    {
                        _result.Success = false;
                        _result.Message = "Có lỗi đã xảy ra, thực hiện chức năng thất bại";
                    }
                }
            }
            catch
            {
                _result.Success = false;
                _result.Message = "Có lỗi đã xảy ra, thực hiện chức năng thất bại";
            }
            return(_result);
        }
コード例 #30
0
    public static int Pack(FlatBuffers.FlatBufferBuilder builder, CharacterUnion _o)
    {
        switch (_o.Type)
        {
        default: return(0);

        case Character.MuLan: return(Attacker.Pack(builder, _o.AsMuLan()).Value);

        case Character.Rapunzel: return(Rapunzel.Pack(builder, _o.AsRapunzel()).Value);

        case Character.Belle: return(BookReader.Pack(builder, _o.AsBelle()).Value);

        case Character.BookFan: return(BookReader.Pack(builder, _o.AsBookFan()).Value);

        case Character.Other: return(builder.CreateString(_o.AsOther()).Value);

        case Character.Unused: return(builder.CreateString(_o.AsUnused()).Value);
        }
    }