Пример #1
0
        private Action GetPrepareToAdvertisementEditAction(int advertId)
        {
            return(async() =>
            {
                progress.ShowProgressDialog("Trwa przygotowanie do edycji...");
                var imagesPaths = new List <string>();
                var advertisement = await this.advertisementItemService.GetAdvertisementDetails(advertId);

                foreach (var photo in advertisement.Photos)
                {
                    String timeStamp = DateTime.Now.ToString().Replace(" ", String.Empty).Replace("-", String.Empty).Replace(":", String.Empty);
                    String imageFileName = "JPEG" + timeStamp;
                    Java.IO.File storageDir = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDcim);

                    Java.IO.File image = Java.IO.File.CreateTempFile(
                        imageFileName,                                  /* prefix */
                        ".jpg",                                         /* suffix */
                        storageDir                                      /* directory */
                        );
                    File.WriteAllBytes(image.AbsolutePath, photo);
                    imagesPaths.Add(image.AbsolutePath);
                }
                progress.CloseProgressDialog();
                var addAdvertisementIntent = new Intent(this, typeof(AddNewAdvertisementActivity));
                AdvertisementEditModel advertEditModel = GetAdvertisementEditModel(advertisement, imagesPaths);
                var editMOdelString = JsonConvert.SerializeObject(advertEditModel);
                addAdvertisementIntent.PutExtra(ExtrasKeys.ADVERTISEMENT_ITEM_EDIT_MODEL, editMOdelString);
                StartActivity(addAdvertisementIntent);
            });
        }
Пример #2
0
        private async Task GetExtrasIsExistAndFillForm()
        {
            var editMOdelString = Intent.GetStringExtra(ExtrasKeys.ADVERTISEMENT_ITEM_EDIT_MODEL);

            if (String.IsNullOrEmpty(editMOdelString))
            {
                //not edit
                return;
            }
            Title                         = "Edycja og³oszenia";
            this.editModel                = JsonConvert.DeserializeObject <AdvertisementEditModel>(editMOdelString);
            categoryInfoModel             = editModel.CategoryInfoModel;
            textViewChodesdCategory.Text  = categoryInfoModel.Name;
            advertisementTitle.Text       = editModel.Title;
            advertisementDescription.Text = editModel.Description;
            advertisementPrice.Text       = editModel.Price.ToString();
            size = editModel.Size;
            textViewChodesdSize.Text  = editModel.Size.GetDisplayName();
            rdBtnOnlyForSell.Selected = editModel.IsOnlyForSell;
            photosPaths = editModel.PhotosPaths;
            for (int i = 0; i < photosPaths.Count; i++)
            {
                var photoNr = i + 1;
                await SetPhoto(photoNr);
            }
        }
Пример #3
0
        private AdvertisementEditModel GetAdvertisementEditModel(AdvertisementItemDetails advertisement, List <string> imagesPaths)
        {
            var editMOdel = new AdvertisementEditModel();

            editMOdel.Id = advertisement.Id;
            editMOdel.CategoryInfoModel = advertisement.CategoryInfoModel;
            editMOdel.Description       = advertisement.Description;
            editMOdel.IsOnlyForSell     = advertisement.IsOnlyForSell;
            editMOdel.PhotosPaths       = imagesPaths;
            editMOdel.Price             = advertisement.Price;
            editMOdel.Size  = advertisement.Size;
            editMOdel.Title = advertisement.Title;

            return(editMOdel);
        }
Пример #4
0
        public void Edit(AdvertisementEditModel Model)
        {
            using (var uow = _unitOfWorkFactory.Create())
            {
                var advertisement = Mapper.Map <Advertisement>(Model);
                if (Model.Images != null)
                {
                    var Images = _fileSaver.SaveAdvertisementImages(advertisement, Model.FormImages);
                    foreach (var image in Images)
                    {
                        uow.Images.Create(image);
                    }
                }

                if (Model.FormMainImage != null)
                {
                    var advertisement2 = uow.Advertisements.GetAllImagesAdvertisement(advertisement.Id);
                    var MainImageByte  = _fileSaver.GetImageBytes(Model.FormMainImage);
                    var MainImage      = new Image {
                        AdvertisementId = advertisement.Id, MainImage = true, Content = MainImageByte
                    };


                    if (advertisement2.Images.ToList().Where(i => i.MainImage) != null)
                    {
                        var Main = advertisement2.Images.FirstOrDefault(i => i.MainImage);
                        Main.MainImage = false;
                        uow.Images.Update(Main);
                    }

                    uow.Images.Create(MainImage);
                }


                uow.Advertisements.Update(advertisement);
            }
        }
 public async Task <IActionResult> Edit(AdvertisementEditModel model)
 {
     _advertisementService.Edit(model);
     return(RedirectToAction("Details", new { Id = model.Id }));
 }