public async Task <IActionResult> PutSalesOrder([FromRoute] int id, [FromBody] ViewModel.SalesOrder salesOrder) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != salesOrder.Id) { return(BadRequest()); } var salesOrderCore = _mapper.Map <Core.Model.SalesOrder>(salesOrder); var response = await salesOrderRepository.UpdateAsync(salesOrderCore); //_context.Entry(salesOrderCore).State = EntityState.Modified; /* * try * { * await _context.SaveChangesAsync(); * } * catch (DbUpdateConcurrencyException) * { * if (!SalesOrderExists(id)) * { * return NotFound(); * } * else * { * throw; * } * } */ return(Ok(salesOrder)); }
public async Task <IActionResult> PostSalesOrder([FromBody] ViewModel.SalesOrder salesOrder) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var salesOrderCore = _mapper.Map <Core.Model.SalesOrder>(salesOrder); if (await UserExists(salesOrder.BuyerID)) { //var buyer = await _context.Users.FindAsync(salesOrder.BuyerID); var buyer = await userRepository.GetAsync(salesOrder.BuyerID); //USER REPOSITORY salesOrderCore.Buyer = buyer; } /* * if (await UserExists(salesOrder.TraderID)) * { * //var trader = await _context.Users.FindAsync(salesOrder.TraderID); * var trader = await userRepository.GetAsync(salesOrder.TraderID); * //USER REPOSITORY * salesOrderCore.Trader = trader; * }*/ salesOrderCore.Trader = null; salesOrder.TraderID = 0; //_context.SalesOrders.Add(salesOrderCore); await salesOrderRepository.CreateAsync(salesOrderCore); //await _context.SaveChangesAsync(); return(CreatedAtAction("GetSalesOrder", new { id = salesOrder.Id }, salesOrder)); }