public IActionResult PostOrder([FromBody] OrderViewModel orderVmdl) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var vmdls = SplitOrders(orderVmdl); vmdls.ForEach(i => { var order = _bl.CreateOrder(); i.ApplyChanges(order, _bl); i.LoadOrderItems(order).Refresh(order); }); _bl.SaveChanges(); vmdls.ForEach(i => { Task task = new Task(() => SendMail(i)); task.Start(); _log.LogInformation("Order '{0}' created by '{1}'", i.OrderGuid, User.Identity.Name); }); return(Ok(vmdls)); } catch (Exception ex) { _log.LogError("Exception: {0}", ex); return(StatusCode(500)); } }
public void bl_should_create_order() { var obj = _bl.CreateOrder(); Assert.NotNull(obj); obj.OrderId = 1; obj.OrderGuid = Guid.NewGuid(); }