Exemplo n.º 1
0
        public static void InitializeDBAuthorAndPrintingEdition(this ModelBuilder builder)
        {
            var author = new Author
            {
                Id   = 1,
                Name = "Pushkin"
            };

            var printingEdition = new PrintingEdition
            {
                Id          = 1,
                Title       = "Captain's daughter",
                Description = "Roman is very interesting",
                Price       = 110,
                Currency    = Enums.CurrencyType.USD,
                Type        = Enums.PrintingType.Book,
                Subtitle    = "Printing edition"
            };

            var authorInPrintingEdition = new AuthorInPrintingEdition
            {
                AuthorId          = author.Id,
                PrintingEditionId = printingEdition.Id
            };

            builder.Entity <Author>().HasData(author);
            builder.Entity <PrintingEdition>().HasData(printingEdition);
            builder.Entity <AuthorInPrintingEdition>().HasData(authorInPrintingEdition);
        }
Exemplo n.º 2
0
        public async Task <AuthorInPrintingEdition> UpdateAsync(AuthorInPrintingEdition item)
        {
            _context.AuthorInPrintingEditions.Update(item);
            await _context.SaveChangesAsync();

            return(item);
        }
Exemplo n.º 3
0
        private void CreationAuthorInPrintingEdition(long authorId, long printingEditionId)
        {
            var authorInPrintingEdition = new AuthorInPrintingEdition();

            authorInPrintingEdition.AuthorId          = authorId;
            authorInPrintingEdition.PrintingEditionId = printingEditionId;
            _context.AuthorInPrintingEditions.Add(authorInPrintingEdition);
        }
Exemplo n.º 4
0
        public async Task <AuthorInPrintingEdition> CreateAsync(AuthorInPrintingEdition item)
        {
            await _context.AuthorInPrintingEditions.AddAsync(item);

            await _context.SaveChangesAsync();

            return(item);
        }
Exemplo n.º 5
0
        public static AuthorInPrintingEdition MapToAuthorInProduct(PrintingEdition product, long authorId)
        {
            var authorInProduct = new AuthorInPrintingEdition()
            {
                PrintingEditionId = product.Id,
                CreationDate      = DateTime.Now,
                AuthorId          = authorId
            };

            return(authorInProduct);
        }
Exemplo n.º 6
0
        public void InitializeAuthorInPrintingEdition()
        {
            var author          = _dbContext.Authors.Where(x => x.Name == BaseInitConstants.AuthorName).FirstOrDefault();
            var printingEdition = _dbContext.PrintingEditions.Where(x => x.Title == BaseInitConstants.PrintingEditionTitle).FirstOrDefault();
            var authorInBooks   = new AuthorInPrintingEdition()
            {
                Author          = author,
                PrintingEdition = printingEdition,
                CreationDate    = DateTime.Now
            };
            var result = _dbContext.AuthorInPrintingEditions.Where(x => x.Author.Name == BaseInitConstants.AuthorName).FirstOrDefault();

            if (result == null)
            {
                _dbContext.AuthorInPrintingEditions.Add(authorInBooks);
            }
            _dbContext.SaveChanges();
        }
Exemplo n.º 7
0
        public async Task <BaseResponseModel> UpdateAsync(PrintingEditionModel UpdatePrintingEdition)
        {
            BaseResponseModel           report = ValidationPrintingEdition(UpdatePrintingEdition);
            IPrintingEditionsRepository printingEditionsRepository = new PrintingEditionsRepository(_context);
            PrintingEdition             printingEdition            = await printingEditionsRepository.GetByIdAsync(UpdatePrintingEdition.Id);

            printingEdition.AuthorInPrintingEditions = _authorInPrintingEditionsRepository.GetById(UpdatePrintingEdition.Id);
            printingEdition.Cover = _coverRepository.GetById(UpdatePrintingEdition.Id);

            if (!report.IsValid)
            {
                return(report);
            }

            printingEdition.Id          = UpdatePrintingEdition.Id;
            printingEdition.Name        = UpdatePrintingEdition.Name;
            printingEdition.Description = UpdatePrintingEdition.Description;
            printingEdition.Price       = UpdatePrintingEdition.Price;
            printingEdition.Status      = UpdatePrintingEdition.Status;
            printingEdition.Currency    = UpdatePrintingEdition.Currency;
            printingEdition.Type        = UpdatePrintingEdition.Type;

            printingEdition.Cover.Base64Image       = UpdatePrintingEdition.Image;
            printingEdition.Cover.PrintingEditionId = UpdatePrintingEdition.Id;
            printingEdition.Cover.PrintingEdition   = printingEdition;

            List <AuthorInPrintingEdition> authorInPrintingEditions = new List <AuthorInPrintingEdition>();

            foreach (Guid authorId in UpdatePrintingEdition.AuthorId)
            {
                AuthorInPrintingEdition authorInPrintingEdition = new AuthorInPrintingEdition();
                authorInPrintingEdition.Author = await _authorRepository.GetByIdAsync(authorId);

                authorInPrintingEditions.Add(authorInPrintingEdition);
            }



            printingEdition.AuthorInPrintingEditions = authorInPrintingEditions;

            await printingEditionsRepository.UpdateAsync(printingEdition);

            return(report);
        }
Exemplo n.º 8
0
        public async Task <BaseResponseModel> CreateAsync(PrintingEditionModel newPrintingEdition)
        {
            BaseResponseModel report          = ValidationPrintingEdition(newPrintingEdition);
            PrintingEdition   printingEdition = new PrintingEdition();
            Cover             cover           = new Cover();

            if (!report.IsValid)
            {
                return(report);
            }

            printingEdition.Name         = newPrintingEdition.Name;
            printingEdition.Description  = newPrintingEdition.Description;
            printingEdition.Price        = newPrintingEdition.Price;
            printingEdition.Status       = newPrintingEdition.Status;
            printingEdition.Type         = newPrintingEdition.Type;
            printingEdition.Currency     = newPrintingEdition.Currency;
            printingEdition.IsRemoved    = false;
            printingEdition.CreationDate = DateTime.Now;

            cover.CreationDate    = DateTime.Now;
            cover.Base64Image     = newPrintingEdition.Image;
            cover.PrintingEdition = printingEdition;
            printingEdition.Cover = cover;

            var authorInPrintingEditions = new List <AuthorInPrintingEdition>();

            foreach (Guid authorId in newPrintingEdition.AuthorId)
            {
                var authorInPrintingEdition = new AuthorInPrintingEdition();
                authorInPrintingEdition.AuthorId = authorId;
                authorInPrintingEditions.Add(authorInPrintingEdition);
            }

            printingEdition.AuthorInPrintingEditions = authorInPrintingEditions;

            await _printingEditionsRepository.CreateAsync(printingEdition);

            report.Message.Add(_publicationAddedMsg);
            return(report);
        }