public async Task <IHttpActionResult> PostOrder(Order order) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } order.Id = Guid.NewGuid(); order.OrderCode = DateTime.Now.ToString("yyMMddhhmmss"); order.ComplteDate = DateTime.Now; foreach (var item in order.OrderItems) { item.Id = Guid.NewGuid(); foreach (var p in item.Persons) { p.OrderItemId = item.Id; } item.OrderId = order.Id; } order.Remark = "创建订单"; db.Orders.Add(order); try { await db.SaveChangesAsync(); OrderListItemView oltv = new OrderListItemView(); oltv.Id = order.Id; oltv.OrderCode = order.OrderCode; oltv.OrderDate = order.OrderDate; oltv.OrderStatus = order.OrderStatus; oltv.CustomerName = order.Customer.CName; oltv.Contract = order.Customer.CPhone; oltv.ProductNames = order.OrderItems.Select(oi => oi.Describe).ToList <string>(); oltv.Remark = order.Remark; return(Ok(oltv)); } catch (DbUpdateException) { if (OrderExists(order.Id)) { return(Conflict()); } else { throw; } } }
public void InitList() { OrderListWrapper.Controls.Clear(); for (int i = 0; i < Orders.Count; ++i) { OrderListItemView orderInfoView = new OrderListItemView(i, Orders[i]); orderInfoView.Top = ROW_HEIGHT * i; orderInfoView.OnOrderDeleted += (sender, e) => { Orders.RemoveAt(e.Number); InitList(); }; orderInfoView.OnOrderEdited += (sender, e) => { EditOrderForm editForm = new EditOrderForm(Platforms, Orders[e.Number]); editForm.ShowDialog(); InitList(); }; orderInfoView.OnOrderUp += (sender, e) => { if (MoveOrder(e.Number, e.Number - 1)) { InitList(); } }; orderInfoView.OnOrderDown += (sender, e) => { if (MoveOrder(e.Number, e.Number + 1)) { InitList(); } }; OrderListWrapper.Controls.Add(orderInfoView); } }