/// <inheritdoc /> public async Task <Unit> Handle(RemoveBasketLineCommand request, CancellationToken cancellationToken) { _basketLinesRepository.RemoveBasketLine(request.BasketLine); await _basketLinesRepository.SaveChanges(); return(Unit.Value); }
public async Task <IActionResult> Delete(Guid basketId, Guid basketLineId) { if (!await _basketRepository.BasketExists(basketId)) { return(NotFound()); } var basketLineEntity = await _basketLinesRepository.GetBasketLineById(basketLineId); if (basketLineEntity == null) { return(NotFound()); } _basketLinesRepository.RemoveBasketLine(basketLineEntity); await _basketLinesRepository.SaveChanges(); return(NoContent()); }
public async Task <IActionResult> Delete(Guid basketId, Guid basketLineId) { //if (!await basketRepository.BasketExists(basketId)) //{ // return NotFound(); //} var basket = await basketRepository.GetBasketById(basketId); if (basket == null) { return(NotFound()); } var basketLineEntity = await basketLinesRepository.GetBasketLineById(basketLineId); if (basketLineEntity == null) { return(NotFound()); } basketLinesRepository.RemoveBasketLine(basketLineEntity); await basketLinesRepository.SaveChanges(); //publish removal event BasketChangeEvent basketChangeEvent = new BasketChangeEvent { BasketChangeType = BasketChangeTypeEnum.Remove, EventId = basketLineEntity.EventId, InsertedAt = DateTime.Now, UserId = basket.UserId }; await basketChangeEventRepository.AddBasketEvent(basketChangeEvent); return(NoContent()); }