public CustomJsonResult Details(string operater, string clientUserId, string orderId) { CustomJsonResult result = new CustomJsonResult(); var ret = new RetOrderDetails(); var order = CurrentDb.Order.Where(m => m.Id == orderId).FirstOrDefault(); ret.Status = order.Status; ret.Tag.Name = new FsText(order.StoreName, ""); ret.Tag.Desc = new FsField("状态", "", GetOrderStatus(order.Status), ""); var fsBlockByField = new FsBlockByField(); fsBlockByField.Tag.Name = new FsText("订单信息", ""); fsBlockByField.Data.Add(new FsField("订单编号", "", order.Sn, "")); fsBlockByField.Data.Add(new FsField("创建时间", "", order.SubmitTime.ToUnifiedFormatDateTime(), "")); if (order.PayTime != null) { fsBlockByField.Data.Add(new FsField("付款时间", "", order.PayTime.ToUnifiedFormatDateTime(), "")); } if (order.CompletedTime != null) { fsBlockByField.Data.Add(new FsField("完成时间", "", order.CompletedTime.ToUnifiedFormatDateTime(), "")); } if (order.CancledTime != null) { fsBlockByField.Data.Add(new FsField("取消时间", "", order.CancledTime.ToUnifiedFormatDateTime(), "")); fsBlockByField.Data.Add(new FsField("取消原因", "", order.CancelReason, "")); } ret.FieldBlocks.Add(fsBlockByField); var orderDetails = CurrentDb.OrderDetails.Where(c => c.OrderId == order.Id).ToList(); foreach (var orderDetail in orderDetails) { var block = new FsBlock(); block.Tag.Name = new FsText(orderDetail.SellChannelRefName, ""); var orderDetailsChilds = CurrentDb.OrderDetailsChild.Where(m => m.OrderDetailsId == orderDetail.Id).ToList(); foreach (var orderDetailsChild in orderDetailsChilds) { var data = new FsTemplateData(); data.Type = "SkuTmp"; var sku = new FsTemplateData.TmplOrderSku(); sku.Id = orderDetailsChild.Id; sku.Name = orderDetailsChild.PrdProductSkuName; sku.MainImgUrl = orderDetailsChild.PrdProductSkuMainImgUrl; sku.Quantity = orderDetailsChild.Quantity.ToString(); sku.ChargeAmount = orderDetailsChild.ChargeAmount.ToF2Price(); data.Value = sku; block.Data.Add(data); } ret.Blocks.Add(block); } return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "", ret)); }
public CustomJsonResult List(string operater, string clientUserId, RupOrderList rup) { var result = new CustomJsonResult(); var query = (from o in CurrentDb.Order where o.ClientUserId == clientUserId select new { o.Id, o.Sn, o.StoreId, o.PickCode, o.StoreName, o.Status, o.SubmitTime, o.CompletedTime, o.ChargeAmount, o.CancledTime } ); if (rup.Status != E_OrderStatus.Unknow) { query = query.Where(m => m.Status == rup.Status); } int pageSize = 10; query = query.OrderByDescending(r => r.SubmitTime).Skip(pageSize * (rup.PageIndex)).Take(pageSize); var list = query.ToList(); List <OrderModel> models = new List <OrderModel>(); foreach (var item in list) { var model = new OrderModel(); model.Id = item.Id; model.Sn = item.Sn; model.Tag.Name = new FsText(item.StoreName, ""); //model.StatusName = item.Status.GetCnName(); model.ChargeAmount = item.ChargeAmount.ToF2Price(); var orderDetails = CurrentDb.OrderDetails.Where(c => c.OrderId == item.Id).ToList(); foreach (var orderDetail in orderDetails) { var block = new FsBlock(); block.Tag.Name = new FsText(orderDetail.SellChannelRefName, ""); if (item.Status == E_OrderStatus.Payed) { if (orderDetail.SellChannelRefType == E_StoreSellChannelRefType.Machine) { block.Tag.Desc = new FsField("取货码", "", item.PickCode, "#f18d00"); } } var orderDetailsChilds = CurrentDb.OrderDetailsChild.Where(m => m.OrderDetailsId == orderDetail.Id).ToList(); foreach (var orderDetailsChild in orderDetailsChilds) { var field = new FsTemplateData(); field.Type = "SkuTmp"; var sku = new FsTemplateData.TmplOrderSku(); sku.Id = orderDetailsChild.Id; sku.Name = orderDetailsChild.PrdProductSkuName; sku.MainImgUrl = orderDetailsChild.PrdProductSkuMainImgUrl; sku.Quantity = orderDetailsChild.Quantity.ToString(); sku.ChargeAmount = orderDetailsChild.ChargeAmount.ToF2Price(); field.Value = sku; block.Data.Add(field); } model.Blocks.Add(block); } switch (item.Status) { case E_OrderStatus.WaitPay: model.Buttons.Add(new FsButton() { Name = new FsText() { Content = "取消订单", Color = "red" }, OpType = "FUN", OpVal = "cancleOrder" }); model.Buttons.Add(new FsButton() { Name = new FsText() { Content = "继续支付", Color = "green" }, OpType = "URL", OpVal = OperateService.GetOrderDetailsUrl(rup.Caller, item.Id) }); break; case E_OrderStatus.Payed: model.Buttons.Add(new FsButton() { Name = new FsText() { Content = "查看详情", Color = "green" }, OpType = "URL", OpVal = OperateService.GetOrderDetailsUrl(rup.Caller, item.Id) }); break; case E_OrderStatus.Completed: model.Buttons.Add(new FsButton() { Name = new FsText() { Content = "查看详情", Color = "green" }, OpType = "URL", OpVal = OperateService.GetOrderDetailsUrl(rup.Caller, item.Id) }); break; case E_OrderStatus.Cancled: model.Buttons.Add(new FsButton() { Name = new FsText() { Content = "查看详情", Color = "green" }, OpType = "URL", OpVal = OperateService.GetOrderDetailsUrl(rup.Caller, item.Id) }); break; } models.Add(model); } result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "操作成功", models); return(result); }