Beispiel #1
0
        public EditMagazineViewModel EditGet(string id)
        {
            var view     = new EditMagazineViewModel();
            var magazine = GetMagazineById(id);

            view.MagazineNumber  = magazine.MagazineNumber;
            view.PublicationDate = magazine.PublicationDate;
            view.PublicationName = magazine.Publication.Name;
            return(view);
        }
Beispiel #2
0
        public Magazine UpdateMagazine(EditMagazineViewModel view)
        {
            var Magazine = GetMagazineById(view.Id);

            Magazine.MagazineNumber  = view.MagazineNumber;
            Magazine.PublicationDate = view.PublicationDate;
            var publication = _publications.Where(x => x.Id == Magazine.Publication.Id).FirstOrDefault();

            publication.Name = view.PublicationName;
            _publicationRepository.Update(publication);
            _publicationRepository.Save();
            _magazineRepository.Update(Magazine);
            _magazineRepository.Save();
            return(Magazine);
        }
Beispiel #3
0
        public void EditPost(EditMagazineViewModel view)
        {
            var magazine = UpdateMagazine(view);
            var publisihngHouseIdsExist = GetPublishingHousesForEditExistId(magazine);

            string[] subStrings = view.PublishingHousesIds.Split(',');
            var      idsNew     = new List <string>();

            for (int i = 0; i < subStrings.Length; i++)
            {
                idsNew.Add(subStrings[i]);
            }
            if (publisihngHouseIdsExist.Count > idsNew.Count)
            {
                DeletePublicationInPublisihngHouses(magazine, publisihngHouseIdsExist, idsNew);
            }
            if (publisihngHouseIdsExist.Count < idsNew.Count)
            {
                AddPublicationInPublisihngHouses(magazine, publisihngHouseIdsExist, idsNew);
            }
        }
 public ActionResult Edit(EditMagazineViewModel view)
 {
     _service.EditPost(view);
     return(RedirectToAction("Index", "Magazine"));
 }