public async Task <ActionResult <CreateAuctionResponse> > Create([FromForm] CreateAuctionRequest request) { _logger.LogInformation("Call post on /api/Auction"); var auctionModel = new Auction(request.Title, request.StartDate, request.EndDate); await _auctionService.AddSlotsToAuction(auctionModel, request.Slots); await _auctionRepository.AddAsync(auctionModel, new CancellationToken(false)); var response = new CreateAuctionResponse(request.CorrelationId()); response.Auction = Mapper.Map <Auction, AuctionDto>(auctionModel); return(Ok(response)); }
public async Task Create([FromBody] CreateAuctionRequest createRequest) { //TODO: id assignemnt of scoped auction item - responsability? var auctionItems = new Domain.AuctionItem[createRequest.AuctionItems.Length]; for (int i = 0; i < createRequest.AuctionItems.Length; i++) //Mapping { var requestAuctionItem = createRequest.AuctionItems[i]; auctionItems[i] = new Domain.AuctionItem(i, requestAuctionItem.Name, requestAuctionItem.Description, requestAuctionItem.ReservedPrice); } await _mediator.Send(new CreateAuctionCommand(createRequest.Name, auctionItems)); }