/// <summary> /// 第三方电商获取订单项物流轨迹信息 /// </summary> /// <param name="orderItemId"></param> /// <returns></returns> public static ThirdOrderPackageExpress GetExpressInfo(Guid orderItemId) { if (orderItemId == Guid.Empty) { return(null); } try { var expressSku = ThirdECOrderPackageSku.ObjectSet().Where(p => p.OrderItemId == orderItemId).FirstOrDefault(); if (expressSku == null) { return(null); } var express = new ThirdOrderPackageExpress { ExpressCompany = expressSku.ExpressCompany, ExpressNo = expressSku.ExpressNo, ExpressTraceList = new List <ThirdExpressTrace>() }; ThirdECExpressTrace.ObjectSet().Where(p => p.OrderId == expressSku.OrderId && p.PackageId == expressSku.PackageId && p.ExpressCompany == expressSku.ExpressCompany && p.ExpressNo == expressSku.ExpressNo).ToList().ForEach(p => { express.ExpressTraceList.Add(new ThirdExpressTrace { Desc = p.Desc, Time = p.Time.ToString("yyyy-MM-dd HH:mm:ss") }); }); return(express); } catch (Exception ex) { LogHelper.Error(string.Format("ThirdECommerceOrderHelper.GetExpressInfo第三方电商获取订单项物流轨迹信息异常,入参:orderItemId={0}", orderItemId), ex); } return(null); }
/// <summary> /// 第三方电商获取订单项物流轨迹信息 /// </summary> /// <param name="appId"></param> /// <param name="orderItemId"></param> /// <returns></returns> public static ThirdOrderPackageExpress GetOrderItemExpressTrace(Guid appId, Guid orderItemId) { var type = GetAppThirdECommerceType(appId); if (type == ThirdECommerceTypeEnum.WangYiYanXuan) { var yxexpress = YXOrderHelper.GetExpressInfo(orderItemId); if (yxexpress == null) { return(null); } var express = new ThirdOrderPackageExpress { ExpressCompany = yxexpress.company, ExpressNo = yxexpress.number, ExpressTraceList = new List <ThirdExpressTrace>() }; if (yxexpress.content != null && yxexpress.content.Count > 0) { yxexpress.content.ForEach(p => { express.ExpressTraceList.Add(new ThirdExpressTrace { Desc = p.desc, Time = p.time }); }); } return(express); } else if (type == ThirdECommerceTypeEnum.ByBiaoZhunJieKou) { return(ThirdECommerceOrderHelper.GetExpressInfo(orderItemId)); } return(null); }