public IHttpActionResult Put(int id, [FromBody] DAO.Book book)
 {
     try
     {
         if (book == null)
         {
             return(BadRequest());
         }
         //map
         var ad     = _bookFactory.CreateBook(book);
         var result = _repository.UpdateBook(ad);
         if (result.Status == BookingRepositoryActionStatus.Updated)
         {
             // map to dao
             var updatedBook = _bookFactory.CreateBook(result.Entity);
             return(Ok(updatedBook));
         }
         else if (result.Status == BookingRepositoryActionStatus.NotFound)
         {
             return(NotFound());
         }
         return(BadRequest());
     }
     catch (Exception)
     {
         return(InternalServerError());
     }
 }
Exemple #2
0
        public object CreateDataShapedObject(DAO.Book book, List <string> lstOfFields)
        {
            if (!lstOfFields.Any())
            {
                return(book);
            }
            else
            {
                // create a new ExpandoObject & dynamically create the properties for this object

                ExpandoObject objectToReturn = new ExpandoObject();
                foreach (var field in lstOfFields)
                {
                    // need to include public and instance, b/c specifying a binding flag overwrites the
                    // already-existing binding flags.

                    var fieldValue = book.GetType()
                                     .GetProperty(field, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance)
                                     .GetValue(book, null);

                    // add the field to the ExpandoObject
                    ((IDictionary <String, Object>)objectToReturn).Add(field, fieldValue);
                }

                return(objectToReturn);
            }
        }
Exemple #3
0
        public async Task Delete(string id)
        {
            DAO.Book item = await _query.GetAsync(new Guid(id));

            DeleteDAOValidations();

            await _persistence.BeginTransactionAsync();

            await _persistence.DeleteAsync(item);

            await _persistence.CommitAsync();
        }
Exemple #4
0
        public bool SaveThisBook(DAO.Book aBook)
        {
            Connection.Open();
            string     query       = "INSERT INTO t_book (book_id,book_name,author,quantity) VALUES ('" + aBook.BookID + "','" + aBook.BookName + "','" + aBook.Author + "','" + aBook.Quantity + "')";
            SqlCommand command     = new SqlCommand(query, Connection);
            int        affectedRow = command.ExecuteNonQuery();

            Connection.Close();
            if (affectedRow > 0)
            {
                return(true);
            }
            return(false);
        }
Exemple #5
0
        public async Task <Book> Update(Book item)
        {
            DAO.Book dao = _mapper.Map <Book, DAO.Book>(item);

            UpdateDAOValidations(dao);

            await _persistence.BeginTransactionAsync();

            await _persistence.UpdateAsync(dao);

            await _persistence.CommitAsync();

            return(_mapper.Map <DAO.Book, Book>(dao));
        }
Exemple #6
0
 public Book CreateBook(DAO.Book book)
 {
     return(new Book()
     {
         Id = book.Id,
         CustomerId = book.CustomerId,
         EmpId = book.EmpId,
         Description = book.Description,
         DateCreated = book.DateCreated,
         LastUpdated = book.LastUpdated
                       //BookingCancelations = book.BookingCancelations == null ? new List<BookingCancelation>() : book.BookingCancelations.Select(c => bookingCancelationFactory.CreateBookingCancelation(c)).ToList(),
                       //Payments = book.Payments == null ? new List<Payment>() : book.Payments.Select(a => paymentFactory.CreatePayment(a)).ToList(),
                       //Rebookings = book.Rebookings == null ? new List<Rebooking>() : book.Rebookings.Select(a => rebookingFactory.CreateRebooking(a)).ToList()
     });
 }
Exemple #7
0
        public bool CheckIfthisBookExist(DAO.Book aBook)
        {
            Connection.Open();
            string        query   = "SELECT * FROM t_book WHERE book_id = '" + aBook.BookID + "'";
            SqlCommand    command = new SqlCommand(query, Connection);
            SqlDataReader aReader = command.ExecuteReader();

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

                return(true);
            }
            Connection.Close();
            return(false);
        }
Exemple #8
0
        public async Task <Book> Insert(Book item)
        {
            DAO.Book dao = _mapper.Map <Book, DAO.Book>(item);
            dao.Author = null;
            dao.SetNewId();

            InsertDAOValidations(dao);

            await _persistence.BeginTransactionAsync();

            await _persistence.InsertAsync(dao);

            await _persistence.CommitAsync();

            return(_mapper.Map <DAO.Book, Book>(dao));
        }
        public IHttpActionResult Post([FromBody] DAO.Book book)
        {
            try
            {
                if (book == null)
                {
                    return(BadRequest());
                }

                var b      = _bookFactory.CreateBook(book);
                var result = _repository.InsertBook(b);
                if (result.Status == BookingRepositoryActionStatus.Created)
                {
                    var newBook = _bookFactory.CreateBook(result.Entity);
                    return(Created(Request.RequestUri + "/" + newBook.Id.ToString(), newBook));
                }
                return(BadRequest());
            }
            catch (Exception)
            {
                return(InternalServerError());
            }
        }
Exemple #10
0
 private void UpdateDAOValidations(DAO.Book item)
 {
 }
Exemple #11
0
 private void InsertDAOValidations(DAO.Book item)
 {
 }