Example #1
0
        public void Put(PutPublicationHouseView publicationHouse)
        {
            PublicationHouse publicationHouseModel = _publicationHouseRepository.Get(publicationHouse.Id);

            publicationHouseModel.Name   = publicationHouse.Name;
            publicationHouseModel.Adress = publicationHouse.Adress;
            _publicationHouseRepository.Update(publicationHouseModel);

            IEnumerable <int>           selectedBooks            = publicationHouse.Books.Select(id => id.Id);
            List <BookPublicationHouse> oldPublicationHouseBooks = _bookInPublicationHouseRepository.GetAllByPublicationHouseId(publicationHouse.Id);
            var oldPublicationHouseBooksWithRelation             = oldPublicationHouseBooks.Where(x => x.BookId != 0).ToList();
            var intersectBooks = oldPublicationHouseBooksWithRelation.Select(x => x.BookId).Intersect(selectedBooks).ToList();
            var exceptBooks    = oldPublicationHouseBooksWithRelation.Select(x => x.BookId).Except(selectedBooks).ToList();

            _bookInPublicationHouseRepository.Delete(oldPublicationHouseBooks.Where(x => exceptBooks.Contains(x.BookId)).ToList());

            var currentPublicationHouseBooks = new List <BookPublicationHouse>();

            foreach (var newBookId in selectedBooks)
            {
                if (intersectBooks.FirstOrDefault(x => x == newBookId) == 0)
                {
                    currentPublicationHouseBooks.Add(new BookPublicationHouse()
                    {
                        PublicationHouseId = publicationHouseModel.Id, BookId = newBookId
                    });
                }
            }
            _bookInPublicationHouseRepository.Insert(currentPublicationHouseBooks);
        }
        public void Update(PublicationHouseViewModel publicationHouse)
        {
            PublicationHouse publicationHouseModel = _unitOfWork.PublicationHouses.Get(publicationHouse.PublicationHouseId);

            publicationHouseModel.Name   = publicationHouse.Name;
            publicationHouseModel.Adress = publicationHouse.Adress;
            _unitOfWork.PublicationHouses.Update(publicationHouseModel);

            List <BookPublicationHouse> oldBookPublicationHouse = _unitOfWork.BookPublicationHouses.GetAllByPublicationHouseId(publicationHouse.PublicationHouseId);
            var oldBookpublicationHousesWithRelation            = oldBookPublicationHouse.Where(x => x.BookId != 0).ToList();
            var BooksHas    = oldBookpublicationHousesWithRelation.Where(x => publicationHouse.SelectedBooks.Contains(x.BookId)).ToList();
            var BooksNothas = oldBookpublicationHousesWithRelation.Where(x => !publicationHouse.SelectedBooks.Contains(x.BookId)).ToList();

            _unitOfWork.BookPublicationHouses.Delete(BooksNothas);
            if (publicationHouse.SelectedBooks != null)
            {
                List <BookPublicationHouse> currentBookPublicationHouses = new List <BookPublicationHouse>();

                foreach (var newBookId in publicationHouse.SelectedBooks)
                {
                    if (BooksHas.FirstOrDefault(x => x.BookId == newBookId) == null)
                    {
                        currentBookPublicationHouses.Add(new BookPublicationHouse()
                        {
                            BookId = newBookId, PublicationHouseId = publicationHouseModel.PublicationHouseId
                        });
                    }
                }
                _unitOfWork.BookPublicationHouses.Insert(currentBookPublicationHouses);
            }
        }
Example #3
0
        public PublicationHouseViewModel GetPublicationHouse(int?id)
        {
            PublicationHouse publicationHouse = _publicationServiceRepository.Get(id.Value);

            if (publicationHouse == null)
            {
                throw new ValidationException("Publication House not found", "");
            }
            return(Mapper.Map <PublicationHouse, PublicationHouseViewModel>(publicationHouse));
        }
        public void Create(CreatePublicationHouseViewModel publicationHouseViewModel)
        {
            var publicationHouse = new PublicationHouse()
            {
                Id     = publicationHouseViewModel.Id,
                Name   = publicationHouseViewModel.Name,
                Adress = publicationHouseViewModel.Adress
            };

            _publicationHouseRepo.Create(publicationHouse);
        }
 public void Delete(int id)
 {
     try
     {
         PublicationHouse house = _houseRepository.Get(id);
         _houseRepository.DeleteAsync(house);
     }
     catch (Exception exception)
     {
         throw exception;
     }
 }
 public bool EditPublicationHouse(PublicationHouseViewModel publicationHouseViewModel)
 {
     try
     {
         PublicationHouse publicationHouse = Mapper.Map <PublicationHouseViewModel, PublicationHouse>(publicationHouseViewModel);
         _publicationHouseRepository.Edit(publicationHouse);
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Example #7
0
 public bool DeletePublicationHouse(int id)
 {
     try
     {
         PublicationHouse publicationHouse = _houseRepository.FindById(id);
         _houseRepository.Remove(publicationHouse);
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Example #8
0
 public bool CreatePublicationHouse(PublicationHouseViewModel publicationHouseViewModel)
 {
     try
     {
         PublicationHouse publicationHouse = Mapper.Map <PublicationHouseViewModel, PublicationHouse>(publicationHouseViewModel);
         _houseRepository.Create(publicationHouse);
         return(true);
     }
     catch
     {
         return(false);
     }
 }
 public bool AddPublicationHouse(PublicationHouseViewModel publicationHouseViewModel)
 {
     try
     {
         PublicationHouse publicationHouse = Mapper.Map <PublicationHouseViewModel, PublicationHouse>(publicationHouseViewModel);
         Save.AddItem(publicationHouse, "../PublicationHouses");
         _publicationHouseRepository.Add(publicationHouse);
         return(true);
     }
     catch
     {
         return(false);
     }
 }
        public void Update(UpdatePublicationHouseViewModel publicationHouseViewModel)
        {
            if (_publicationHouseRepo.Get(publicationHouseViewModel.Id) == null)
            {
                throw new BusinessLogicException("Publication House not found");
            }

            var publicationHouse = new PublicationHouse()
            {
                Id     = publicationHouseViewModel.Id,
                Name   = publicationHouseViewModel.Name,
                Adress = publicationHouseViewModel.Adress
            };

            _publicationHouseRepo.Update(publicationHouse);
        }
        public void SaveToJSON(int id)
        {
            PublicationHouse publicationHouseModel = _unitOfWork.PublicationHouses.Get(id);

            string json = JsonConvert.SerializeObject(
                publicationHouseModel,
                Formatting.None,
                new JsonSerializerSettings()
            {
                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
            });

            var path = HttpContext.Current.Server.MapPath("~/App_Data/PublicationHouse.json");

            System.IO.File.WriteAllText(path, json);
        }
Example #12
0
        public async Task <bool> DeleteAsync(int id)
        {
            try
            {
                PublicationHouse house   = _houseRepository.Get(id);
                bool             success = await _houseRepository.DeleteAsync(house);

                if (success == true)
                {
                    return(true);
                }
                return(false);
            }
            catch (Exception exception)
            {
                throw exception;
            }
        }
        public PublicationHouseBooksViewModel GetPublicationHouseBooks(int id)
        {
            PublicationHouse            publicationHouseModel    = _unitOfWork.PublicationHouses.Get(id);
            List <BookPublicationHouse> allBookPublicationHouses = _unitOfWork.BookPublicationHouses.GetAllByPublicationHouseId(id);
            List <Book> allBooksModel = _unitOfWork.Books.GetAll();

            var bookPublicationHouseRelationViewModel = Mapper.Map <List <BookPublicationHouse>, List <BookPublicationHousesRelationViewModel> >(allBookPublicationHouses);
            var bookViewModel             = Mapper.Map <List <Book>, List <BookViewModel> >(allBooksModel);
            var publicationHouseViewModel = Mapper.Map <PublicationHouse, PublicationHouseViewModel>(publicationHouseModel);

            var publicationHouseBooksViewModel = new PublicationHouseBooksViewModel
            {
                Books                 = bookViewModel,
                PublicationHouse      = publicationHouseViewModel,
                BookPublicationHouses = bookPublicationHouseRelationViewModel
            };

            return(publicationHouseBooksViewModel);
        }
        public PublicationHouseViewModel Get(int id)
        {
            List <BookPublicationHouse> bookPublicationHouse = _unitOfWork.BookPublicationHouses.GetAllByPublicationHouseId(id);

            var publicationHouse = new PublicationHouse()
            {
                PublicationHouseId = bookPublicationHouse.ElementAt(0).PublicationHouse.PublicationHouseId, Name = bookPublicationHouse.ElementAt(0).PublicationHouse.Name, Adress = bookPublicationHouse.ElementAt(0).PublicationHouse.Adress
            };
            var books = new List <Book>();

            foreach (var book in bookPublicationHouse)
            {
                if (book.Book != null)
                {
                    books.Add(book.Book);
                }
            }
            var publicationHouseViewModel = Mapper.Map <PublicationHouse, PublicationHouseViewModel>(publicationHouse);

            publicationHouseViewModel.Books = Mapper.Map <List <Book>, List <BookViewModel> >(books);

            return(publicationHouseViewModel);
        }
Example #15
0
        public void Delete(int id)
        {
            PublicationHouse publicationHouseModel = _publicationHouseRepository.Get(id);

            _publicationHouseRepository.Delete(publicationHouseModel);
        }
        protected override void Seed(ApplicationContext context)
        {
            Book book = new Book
            {
                Name             = "Война и мир",
                Author           = "Л. Толстой",
                YearOfPublishing = 1998
            };
            PublicationHouse house = new PublicationHouse
            {
                Name   = "qwerty",
                Adress = "Tales-Street"
            };

            house.Books.Add(book);
            book.PublicationHouses.Add(house);
            context.Books.Add(new Book {
                Name = "Отцы и дети", Author = "И. Тургенев", YearOfPublishing = 2016, PublicationHouses = new List <PublicationHouse> {
                    house
                }
            });
            context.Books.Add(new Book {
                Name = "Чайка", Author = "А. Чехов", YearOfPublishing = 2015, PublicationHouses = new List <PublicationHouse> {
                    house
                }
            });
            context.Books.Add(book);
            context.Magazines.Add(new Magazine {
                Name = "Forbes", Number = 20, YearOfPublishing = 2012
            });
            context.Magazines.Add(new Magazine {
                Name = "Biography", Number = 10, YearOfPublishing = 1960
            });
            context.Magazines.Add(new Magazine {
                Name = "Times", Number = 9, YearOfPublishing = 1880
            });
            context.Brochures.Add(new Brochure {
                Name = "asd", TypeOfCover = TypeOfCover.Soft, NumberOfPages = 123
            });
            context.PublicationHouses.Add(house);
            context.PublicationHouses.Add(new PublicationHouse {
                Name = "asd", Adress = "asd", Books = new List <Book> {
                    book
                }
            });
            var passwordHasher = new PasswordHasher();
            var user           = new ApplicationUser {
                Email = "*****@*****.**", UserName = "******"
            };

            user.PasswordHash  = passwordHasher.HashPassword("14921875");
            user.SecurityStamp = Guid.NewGuid().ToString();
            var adminRole = new ApplicationRole {
                Name = LibraryRoles.Admin.ToString()
            };

            context.Roles.Add(adminRole);
            var userRole = new ApplicationRole {
                Name = LibraryRoles.User.ToString()
            };

            context.Roles.Add(userRole);
            var role = new IdentityUserRole
            {
                RoleId = adminRole.Id,
                UserId = user.Id
            };
            ClientProfile clientProfile = new ClientProfile {
                Id = user.Id, Address = "ул. Спортивная, д.30, кв.75", Name = "Будько Александр Алексеевич"
            };

            context.ClientProfiles.Add(clientProfile);
            user.Roles.Add(role);
            context.Users.Add(user);
            base.Seed(context);
        }