public async Task <StockDetailsModel> CreateStockAsync(StockCreateModel createModel) { if (createModel == null) { throw new ArgumentNullException(nameof(createModel)); } if (await _stockRepository.HasStockWithIsinAsync(createModel.Isin)) { throw new ArgumentException(); } var stockEntity = _mapper.Map <Stock>(createModel); var createdEntity = await _stockRepository.CreateStockAsync(stockEntity); return(_mapper.Map <StockDetailsModel>(createdEntity)); }
public async Task <ActionResult <StockDetailsModel> > CreateStockAsync([FromBody] StockCreateModel createModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (createModel == null) { return(BadRequest()); } try { var createdStock = await _stockService.CreateStockAsync(createModel); return(StatusCode(201, createdStock)); } catch (ArgumentException) { return(Conflict()); } }