Beispiel #1
0
        private AdvertisementDetails GetCarAdvertisement(Advertisement advert)
        {
            AdvertisementDetails advertisementDetails = _unitOfWork.CarAdvertisements.All()
                                                        .Where(x => x.AdvertisementFk == advert.Id)
                                                        .Select(s => new AdvertisementDetails
            {
                Title       = advert.Title,
                CreatedOn   = advert.CreatedOn,
                Type        = advert.Type,
                Category    = advert.Category,
                Price       = advert.Price,
                Description = advert.Description,
                Name        = advert.User.Name,
                Location    = advert.User.City,
                Phone       = advert.User.Phone,
                Brand       = s.Brand,
                Model       = s.Model,
                Memory      = string.Empty,
                Color       = s.Color,
                Body        = s.Body,
                Year        = s.Year,
                KmTraveled  = s.KmTraveled
            }).First();

            return(advertisementDetails);
        }
Beispiel #2
0
        public async Task <AdvertisementDetails> GetAdvertisementDetails(Guid advertUid)
        {
            Advertisement advert = await _unitOfWork.Advertisements.All()
                                   .FirstOrDefaultAsync(x => x.Uid == advertUid);

            AdvertisementDetails advertisementDetails = new AdvertisementDetails();

            if (advert == null)
            {
                throw new NotFoundException();
            }

            switch ((AdvertisementCategory)advert.Category)
            {
            case AdvertisementCategory.Mobile:
                advertisementDetails = GetMobileAdvertisement(advert);
                break;

            case AdvertisementCategory.Car:
                advertisementDetails = GetCarAdvertisement(advert);
                break;
            }

            advertisementDetails.Base64Images = _unitOfWork.AdvertisementImages.All()
                                                .Where(x => x.AdvertisementFk == advert.Id).ToList()
                                                .Select(x => Convert.ToBase64String(x.ImageContent))
                                                .ToArray();

            return(advertisementDetails);
        }
Beispiel #3
0
        public void CreateNewAdvertisement(NewAdvertisement item)
        {
            db.BeginTransaction();
            Console.WriteLine(item.Images);
            Advertisement ad = new Advertisement();

            ad.SellingType  = item.SellingType;
            ad.EmployeeId   = item.EmployeeId;
            ad.CategoryId   = item.CategoryId;
            ad.Expiry       = item.Expiry;
            ad.PostedOn     = item.PostedOn;
            ad.Status       = "Active";
            ad.DisplayPhone = item.DisplayPhone;
            int    id = Convert.ToInt32(db.Insert("Advertisement", "Id", true, ad));
            Images img;

            if (item.Images.Count > 0)
            {
                foreach (var image in item.Images)
                {
                    img = new Images();
                    img.AdvertisementId = id;
                    ImageBlob imageBlob = new ImageBlob(_configuration);
                    img.Image = imageBlob.ImageUploading(image).Result;
                    db.Insert("Images", "Id", true, img);
                }
            }
            else
            {
                img = new Images();
                img.AdvertisementId = id;
                db.Insert("Images", "Id", true, img);
            }
            AdvertisementDetails adDetails;

            foreach (var field in item.Fields)
            {
                adDetails = new AdvertisementDetails();
                adDetails.AdvertisementId = id;
                adDetails.FieldName       = field.Key;
                adDetails.Value           = field.Value;
                db.Insert("AdvertisementDetails", "Id", true, adDetails);
            }
            db.CompleteTransaction();
        }
        public async Task <AdvertisementDetails> GetAdvertisementDetails([FromUri] Guid advertUid)
        {
            AdvertisementDetails response = await _advertisementService.GetAdvertisementDetails(advertUid);

            return(response);
        }