/// <summary> /// 获取物流信息 /// </summary> /// <param name="orderId">EntGoodsOrderId</param> /// <returns></returns> public DeliveryFeedback GetOrderFeed(int orderId, DeliveryOrderType orderType) { //从缓存中获取 //string cahcheKey = GetModelKey(orderId, orderType); //DeliveryFeedback feedCache = RedisUtil.Get<DeliveryFeedback>(cahcheKey); //if (feedCache != null && feedCache.Id > 0) //{ // return feedCache; //} //从数据库中获取,写入缓存 string whereSql = BuildWhereSql(orderId, orderType); //int cacheInterval = WebConfigBLL.DeliveryCheckSpan; //获取 DeliveryFeedback deliveryInfo = GetModel(whereSql); //if (deliveryInfo == null) //{ // return null; //} //写入 //if (string.IsNullOrWhiteSpace(deliveryInfo.CompanyCode)) //{ //RedisUtil.Set(cacheModelKey, deliveryInfo, TimeSpan.FromMinutes(cacheInterval)); //return deliveryInfo; //} //同步物流信息 //deliveryInfo.FeedBack = GetDeliveryFeed(deliveryInfo); //Task.Factory.StartNew(() => //{ // Update(deliveryInfo, "FeedBack"); //}); //RedisUtil.Set(cacheModelKey, deliveryInfo, TimeSpan.FromMinutes(cacheInterval)); return(deliveryInfo); }
/// <summary> /// 新增物流信息(独立小程序版发货) /// </summary> /// <param name="orderId">EntGoodsOrderId</param> /// <param name="address">收货地址</param> /// <param name="deliveryNo">物流订单号</param> /// <param name="companyCode">物流公司代码</param> /// <param name="mark">物流备注</param> /// <returns></returns> public bool AddOrderFeed(int orderId, DeliveryUpdatePost AddInfo, DeliveryOrderType deliveryOrderType) { return(AddDeliveryFeed(orderId: orderId, orderType: deliveryOrderType, contactName: AddInfo.ContactName, contactTel: AddInfo.ContactTel, address: AddInfo.Address, deliveryNo: AddInfo.DeliveryNo, companyCode: AddInfo.CompanyCode, companyTitle: AddInfo.CompanyTitle, isTrack: !AddInfo.SelfDelivery, mark: AddInfo.Remark)); }
private bool AddDeliveryFeed(int orderId, DeliveryOrderType orderType, string contactName, string contactTel, string address, string deliveryNo, string companyCode, string companyTitle, bool isTrack = true, string mark = null) { DeliveryFeedback newOrderFeed = new DeliveryFeedback { CreateDate = DateTime.Now, OrderId = orderId, OrderType = (int)orderType, DeliveryNo = deliveryNo, FeedBack = null, CompanyCode = companyCode, Address = address, CompanyTitle = companyTitle, ContactName = contactName, ContactTel = contactTel, Status = (int)DeliveryFeedState.正常, IsTrack = isTrack, Mark = mark, }; int newId = 0; return(int.TryParse(Add(newOrderFeed).ToString(), out newId)); }
/// <summary> /// 订单是否有物流信息 /// </summary> /// <param name="orderId">EntGoodsOrderId</param> /// <returns></returns> public bool IsHasDelivery(int orderId, DeliveryOrderType orderType) { string whereSql = BuildWhereSql(orderId, orderType); return(GetCount(whereSql) > 0); }
public string GetModelKey(int orderId, DeliveryOrderType orderType) { return(string.Format(cacheModelKey, orderId, (int)orderType)); }
public int GetOrderFeedCount(int orderId, DeliveryOrderType orderType) { string whereSql = BuildWhereSql(orderId, orderType); return(GetCount(whereSql)); }