Example #1
0
        public async Task <IActionResult> PutProductBookSubject(Guid id, ProductBookSubject productBookSubject)
        {
            if (id != productBookSubject.Id)
            {
                return(BadRequest());
            }

            _context.Entry(productBookSubject).State = EntityState.Modified;

            ChangeLog.AddUpdatedLog(_context, "BookSubjects", productBookSubject);

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProductBookSubjectExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Example #2
0
        public async Task <IActionResult> PutProductBook(string id, ProductBookDAO productBookDao)
        {
            var product = new Product();

            product.Title           = productBookDao.Title;
            product.Price           = productBookDao.Price;
            product.ReleaseYear     = productBookDao.ReleaseYear;
            product.Language        = productBookDao.Language;
            product.Type            = ProductType.Book;
            product.FilePath        = productBookDao.FilePath;
            product.PreviewFilePath = productBookDao.PreviewFilePath;

            var productBook = new ProductBook();
            var bookSubject = new ProductBookSubject();

            productBook.Subject   = bookSubject;
            productBook.Author    = productBookDao.Author;
            productBook.Publisher = productBookDao.Publisher;
            productBook.Product   = product;
            productBook.Code      = productBookDao.Code;

            ChangeLog.AddCreatedLog(_context, "Books", productBook);

            if (id != productBookDao.Code)
            {
                return(BadRequest());
            }


            if (id != productBook.Code)
            {
                return(BadRequest());
            }

            _context.Entry(productBook).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProductBookExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Example #3
0
        public async Task <ActionResult <ProductBook> > PostProductBook(ProductBookDAO productBookDao)
        {
            var product = new Product();

            product.Title           = productBookDao.Title;
            product.Price           = productBookDao.Price;
            product.ReleaseYear     = productBookDao.ReleaseYear;
            product.Language        = productBookDao.Language;
            product.Type            = ProductType.Book;
            product.FilePath        = productBookDao.FilePath;
            product.PreviewFilePath = productBookDao.PreviewFilePath;

            _context.Products.Add(product);

            var book        = new ProductBook();
            var bookSubject = new ProductBookSubject();

            book.Author    = productBookDao.Author;
            book.Publisher = productBookDao.Publisher;

            var booksConsecutive = _context.TableConsecutives.Single(tableConsecutive => tableConsecutive.Table == "Libros");

            book.Code    = booksConsecutive.GetCurrentCode();
            book.Product = product;

            try
            {
                bookSubject = _context.ProductBookSubjects.Single(bookSubject => bookSubject.Id == productBookDao.SubjectId);
            }
            catch
            {
                bookSubject = null;
            }

            book.Subject = bookSubject;

            _context.ProductBooks.Add(book);

            ChangeLog.AddCreatedLog(_context, "Books", book);

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (ProductExists(product.Id))
                {
                    return(Conflict());
                }
                else if (ProductBookExists(book.Code))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetProductBook", new { id = book.Code }, book));
        }
Example #4
0
        public async Task <ActionResult <ProductBookSubject> > PostProductBookSubject(ProductBookSubject productBookSubject)
        {
            _context.ProductBookSubjects.Add(productBookSubject);

            ChangeLog.AddCreatedLog(_context, "BookSubjects", productBookSubject);

            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetProductBookSubject", new { id = productBookSubject.Id }, productBookSubject));
        }