Ejemplo n.º 1
0
        public async Task <AdvertDto> AddOrEditAdvertAsync(AddOrEditAdvertDto dto)
        {
            Advert advert;

            if (!dto.Id.HasValue)
            {
                advert = Mapper.Map <Advert>(dto);
                advert.AdvertiserId = KutyAppContext.CurrentUser.Id;

                DbContext.Adverts.Add(advert);
            }
            else
            {
                advert = await DbContext.Adverts.Include(a => a.Advertiser).SingleOrDefaultAsync(a => a.Id == dto.Id);

                if (advert == null)
                {
                    throw new Exception(ExceptionMessages.NotFound);
                }

                if (advert.Title != dto.Title)
                {
                    advert.Title = dto.Title;
                }

                if (advert.Description != dto.Description)
                {
                    advert.Description = dto.Description;
                }
            }

            await DbContext.SaveChangesAsync();

            return(Mapper.Map <AdvertDto>(advert));
        }
Ejemplo n.º 2
0
 public async Task <ActionResult <AdvertDto> > AddOrEditAdvertisement(AddOrEditAdvertDto dto) =>
 Result(await AdvertManager.AddOrEditAdvertAsync(dto));