public async Task <IActionResult> Delete(DeleteAdvertDto dto) { await _advertService.DeleteAsync(dto); string redirect = Request.Headers["Referer"].ToString(); return(Redirect(redirect)); }
public async Task DeleteAsync(DeleteAdvertDto dto, bool isAdmin = false) { var accessToken = await GetAccessTokenAsync(); await $"{_apiOptions.Url}/api/adverts" .SetQueryParams(dto) .WithOAuthBearerToken(accessToken) .DeleteAsync(); }
public async Task DeleteAsync(DeleteAdvertDto dto, bool isAdmin = false) { var advert = await _unitOfWork.AdvertRepository.GetAsync(dto.Id); ThrowIfNotFound(advert); if (!isAdmin && advert.UserId != dto.UserId) { throw new NotPermittedException("Нельзя удалять чужие обьявления"); } _unitOfWork.AdvertRepository.Delete(advert); _unitOfWork.SaveChanges(); }
public async Task Delete([FromQuery] DeleteAdvertDto dto) { dto.UserId = User.GetUserId(); await _advertService.DeleteAsync(dto, User.IsInRole("Admin")); }