public ActionResult SubmitCsPackageInfo(CsPackage model) { if (_csPackageBll.GetModelList($" and PackageName ='{model.PackageName}'").Any() && model.PackageId == 0) { return(Json(new ResModel { Data = "已存在该套餐,请重新设置", ResStatus = ResStatue.Warn })); } ResStatue code; if (model.PackageId > 0) { model.OperationDate = DateTime.Now; code = _csPackageBll.Update(model) ? ResStatue.Yes : ResStatue.Warn; } else { model.PackageWeight = 0; model.PackageStock = 1000; model.PackageImage = "Images/10007.jpg"; model.OperationDate = DateTime.Now; model.PackageType = 1; code = _csPackageBll.Add(model) > 0 ? ResStatue.Yes : ResStatue.Warn; } return(Json(new ResModel { ResStatus = code, Data = code == ResStatue.Yes ? "更新成功" : "执行完成,但是没有数据受影响" })); }
/// <summary> /// 获取套餐列表 /// </summary> /// <returns></returns> public IHttpActionResult GetPackageList() { CsPackageBll packageBll = new CsPackageBll(); var packAgeList = packageBll.GetModelList(" and PackageState=1 ").Select(x => new { x.PackageId, x.PackageNumber, x.PackageType, TypeName = ((ProductType)x.PackageType).ToString(), x.PackageName, x.PackageImage, x.PackageWeight, x.PackagePrice, x.PackageState, OperationDate = x.OperationDate.ToString("yyyy-MM-dd"), TotalNumber = _csOrderBll.TotalNumber(x.PackageId, DateTime.Now), number = 0, x.PackageStock }).ToList(); if (packAgeList.Count > 0) { return(Json(new { status = true, packagelist = packAgeList })); } else { return(Json(new { status = false })); } }
/// <summary> /// 根据订单编号获取订单详情 /// </summary> /// <param name="orderId">订单编号</param> /// <returns></returns> public IHttpActionResult GetOrderInfoByOrderId(int id) { CsOrder order = _csOrderBll.GetModel(id); List <CsOrderDetail> orderList = _csOrderDetailBll.GetModelList($" and OrderId={id}"); List <CsProducts> productList = _csProductsBll.GetModelList(""); List <CsParts> partList = _csPartsBll.GetModelList(""); CsPackageBll _cspackageBll = new CsPackageBll(); List <CsPackage> packageList = _cspackageBll.GetModelList(""); //螃蟹列表 var crabList = orderList.Where(x => x.ChoseType == 1).Select(x => new { x.OrderId, x.ProductId, ProductName = productList.FirstOrDefault(y => y.ProductId == x.ProductId).ProductName, ProductType = ((ProductType)productList.FirstOrDefault(y => y.ProductId == x.ProductId).ProductType).ToString(), ProductWeight = (ProductType)productList.FirstOrDefault(y => y.ProductId == x.ProductId).ProductWeight, x.ProductNumber, x.UnitPrice, x.TotalPrice }); //必选配件列表 var partMustList = orderList.Where(x => x.ChoseType == 2 && x.ProductId < 10005 && x.ProductId > 10000).Select(x => new { x.OrderId, x.ProductId, PartName = partList.FirstOrDefault(y => y.PartId == x.ProductId).PartName, PartType = "必选配件", x.ProductNumber, x.UnitPrice, x.TotalPrice }); //可选配件列表 var partOptList = orderList.Where(x => x.ChoseType == 2 && x.ProductId >= 10005).Select(x => new { x.OrderId, x.ProductId, PartName = partList.FirstOrDefault(y => y.PartId == x.ProductId).PartName, PartType = "配件", x.ProductNumber, x.UnitPrice, x.TotalPrice }); //套餐列表 var packList = orderList.Where(x => x.ChoseType == 3).Select(x => new { x.OrderId, x.ProductId, ProductName = packageList.FirstOrDefault(y => y.PackageId == x.ProductId).PackageName, ProductType = ((ProductType)packageList.FirstOrDefault(y => y.PackageId == x.ProductId).PackageType).ToString(), ProductWeight = (ProductType)packageList.FirstOrDefault(y => y.PackageId == x.ProductId).PackageWeight, x.ProductNumber, x.UnitPrice, x.TotalPrice }); return(Json(new { order, crabList, partMustList, partOptList, packList })); }
public ActionResult GetCsOrderInfo(int id) { var csOrder = _csOrderBll.GetModel(id); var csOrderDetails = _csOrderDetailBll.GetModelList(" AND OrderId = " + id); var user = _csUsersBll.GetModel(csOrder.UserId); var parts = new List <CsParts>(); var products = new List <CsProducts>(); var packages = new List <CsPackage>(); #region 相关 套餐/配件和蟹 if (csOrderDetails.Any(x => x.ChoseType == ChoseType.配件.GetHashCode())) { parts = _csPartsBll.GetModelList($" AND PartId IN ({string.Join(",", csOrderDetails.Where(x => x.ChoseType == ChoseType.配件.GetHashCode()).Select(x => x.ProductId))})"); } if (csOrderDetails.Any(x => x.ChoseType == ChoseType.螃蟹.GetHashCode())) { products = _csProductsBll.GetModelList($" AND ProductId IN ({string.Join(",", csOrderDetails.Where(x => x.ChoseType == ChoseType.螃蟹.GetHashCode()).Select(x => x.ProductId))})"); } if (csOrderDetails.Any(x => x.ChoseType == ChoseType.套餐.GetHashCode())) { packages = _csPackageBll.GetModelList($" AND PackageId IN ({string.Join(",", csOrderDetails.Where(x => x.ChoseType == ChoseType.套餐.GetHashCode()).Select(x => x.ProductId))})"); } #endregion #region 订单详细列表 var csOrderDetailExtends = new List <CsOrderView.CsOrderDetailExtend>(); foreach (var csOrderDetail in csOrderDetails) { var csOrderDetailExtend = new CsOrderView.CsOrderDetailExtend { ChoseType = ((ChoseType)csOrderDetail.ChoseType).ToString(), DetailId = csOrderDetail.DetailId, ProductId = csOrderDetail.ProductId, ProductNumber = csOrderDetail.ProductNumber, TotalPrice = "¥" + csOrderDetail.TotalPrice.ToString("N2"), UnitPrice = "¥" + csOrderDetail.UnitPrice.ToString("N2") }; // 计算商品名称 if (csOrderDetailExtend.ChoseType == ChoseType.配件.ToString()) { var part = parts.FirstOrDefault(x => x.PartId == csOrderDetailExtend.ProductId); csOrderDetailExtend.ProductName = $"{(part?.PartName).ShowNullOrEmpty()}({(part?.PartNumber).ShowNullOrEmpty()})"; csOrderDetailExtend.ChoseType = ((PartType?)part?.PartType).ShowNullOrEmpty(); } else if (csOrderDetailExtend.ChoseType == ChoseType.螃蟹.ToString()) { var product = products.FirstOrDefault(x => x.ProductId == csOrderDetailExtend.ProductId); csOrderDetailExtend.ProductName = $"{(product?.ProductName).ShowNullOrEmpty()}({(product?.ProductNumber).ShowNullOrEmpty()})"; csOrderDetailExtend.ChoseType = ((ProductType?)product?.ProductType).ShowNullOrEmpty(); } else { var package = packages.FirstOrDefault(x => x.PackageId == csOrderDetailExtend.ProductId); csOrderDetailExtend.ProductName = $"{(package?.PackageName).ShowNullOrEmpty()}({(package?.PackageNumber).ShowNullOrEmpty()})"; } csOrderDetailExtends.Add(csOrderDetailExtend); } #endregion var sendInfo = csOrder.SendAddress.Split('$'); var putInfo = csOrder.OrderAddress.Split('$'); return(Json(new CsOrderView.CsOrderInfo { RowStatus = csOrder.RowStatus.ToString(), OrderState = csOrder.OrderState.ToString(), RowStatusDescribe = ((RowStatus)csOrder.RowStatus).ToString(), OrderStateDescribe = ((OrderState)csOrder.OrderState).ToString(), OrderId = csOrder.OrderId, OrderNumber = csOrder.OrderNumber, OrderDate = csOrder.OrderDate.ToString("yyyy-M-d HH:mm:ss"), DeleteDate = csOrder.DeleteDate.ToString("yyyy-M-d HH:mm:ss"), DeleteDescribe = csOrder.DeleteDescribe, TotalMoney = "¥" + csOrder.TotalMoney.ToString("N2"), ActualMoney = "¥" + csOrder.ActualMoney.ToString("N2"), DiscountMoney = "¥" + csOrder.DiscountMoney.ToString("N2"), OrderCopies = csOrder.OrderCopies + " 份", TotalWeight = csOrder.TotalWeight + " KG", BillWeight = csOrder.BillWeight + " KG", UserName = $"{user.UserName}({user.UserSex})", UserPhone = user.UserPhone, CsOrderDetails = csOrderDetailExtends, OrderDelivery = csOrder.OrderDelivery, OrderAddress = csOrder.OrderAddress.Trim('$').Replace("$$", "$").Replace("$", "//"), OrderConsignee = putInfo.Length > 1 ? putInfo[1] : "-", OrderTelPhone = putInfo.Length > 3 ? putInfo[3] : "-", OrderDetails = putInfo.Length > 4 ? putInfo[4] : "-", SendConsignee = sendInfo.Length > 0 ? sendInfo[0] : "-", SendTelPhone = sendInfo.Length > 1 ? sendInfo[1] : "", SendAddress = csOrder.SendAddress.Trim('$').Replace("$$", "$").Replace("$", "//"), OrderSource = csOrderDetails.Any(x => x.ChoseType == ChoseType.套餐.GetHashCode()) ? "企业团购" : "电商代发", PrepaymentId = csOrder.PrepaymentId.IsNullOrEmpty() ? "未生成预支付编号" : csOrder.PrepaymentId, IsInvoice = csOrder.IsInvoice.ToString(), OrderRemarks = csOrder.OrderRemarks })); }