/// <summary> /// 获取商品列表 轮播图片 直播列表 /// </summary> /// <param name="search">查询条件model</param> /// <returns></returns> public Jinher.AMP.BTP.Deploy.CustomDTO.ComdtyListResultCDTO GetCommodityListV3Ext(Jinher.AMP.BTP.Deploy.CustomDTO.CommodityListSearchDTO search) { //商品列表参数 search.FieldSort = 0; search.IsHasStock = false; search.OrderState = 1; search.areaCode = ""; //店铺直播参数 Jinher.AMP.ZPH.Deploy.CustomDTO.QueryLiveActivityParam param = new ZPH.Deploy.CustomDTO.QueryLiveActivityParam() { Id = new Guid("00000000-0000-0000-0000-000000000000"), LiveAppId = search.AppId ?? new Guid("00000000-0000-0000-0000-000000000000"), PageOpt = 0, pageSize = 20 }; //轮播图参数 Jinher.AMP.LBP.Deploy.CustomDTO.LBListGetDTO arg = new LBP.Deploy.CustomDTO.LBListGetDTO() { AppId = search.AppId ?? new Guid("00000000-0000-0000-0000-000000000000"), ClientType = ClientTypeEnum.IPhone, Count = 5, IsAnonymousUser = false, PosBizId = new Guid("00000000-0000-0000-0000-000000000000"), PosType = 0, UserId = search.UserId }; CommoditySV Com = new CommoditySV(); ComdtyListResultCDTO HomePageInfo = new ComdtyListResultCDTO(); if (search.AppId != Guid.Empty && search.CouponTemplateId != Guid.Empty && search.UserId != Guid.Empty) { HomePageInfo = Com.GetCommodityByCouponId_New(search);//获取首页商品列表信息 } else { HomePageInfo = Com.GetCommodityListV2Ext(search);//获取首页商品列表信息 } if (search.PageIndex <= 1) { var ActivityResult = ZPHSV.GetLiveActivityList(param);//获取店铺直播列表数据 if (ActivityResult.isSuccess) { HomePageInfo.LiveActivity = ActivityResult.Data.FirstOrDefault(); } var LBlistResult = LBPSV.GetLBList(arg);//获取店铺轮播图片 if (LBlistResult.IsSuccess) { HomePageInfo.LBList = LBlistResult.Data; } } return(HomePageInfo); }
/// <summary> /// 获取店铺720云景地址 /// </summary> /// <param name="appId"></param> /// <returns></returns> public string GetCloudViewUrl(Guid appId) { var key = "A_CloudViewUrl:AI:" + appId.ToString(); var data = HttpRuntime.Cache.Get(key) as string; if (data == null) { data = ZPHSV.GetCloudViewUrl(appId); if (string.IsNullOrEmpty(data)) { data = string.Empty; } HttpRuntime.Cache.Add(key, data, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Default, null); } return(data); }
public string GetCreateOrderTip(Guid appId) { var key = "A_CreateOrderTip:" + appId.ToString(); var data = HttpRuntime.Cache.Get(key) as string; if (data == null) { data = ZPHSV.GetCreateOrderTip(appId); if (string.IsNullOrEmpty(data)) { data = string.Empty; } HttpRuntime.Cache.Add(key, data, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration, System.Web.Caching.CacheItemPriority.Default, null); LogHelper.Info("ZPHCache.GetCreateOrderTip from db......"); } else { LogHelper.Info("ZPHCache.GetCreateOrderTip from cache......"); } return(data); }
/// <summary> /// 严选库存回调执行方法 /// </summary> /// <param name="sku"></param> public static void SkuCheckStock(List <SkuCheck> sku) { ContextSession contextSession = ContextFactory.CurrentThreadContext; var SkuList = sku.Select(s => s.skuId).ToList(); //取出库存表中所有的skuid var stockList = (from m in Commodity.ObjectSet() join n in CommodityStock.ObjectSet() on m.Id equals n.CommodityId where CustomConfig.YxAppIdList.Contains(m.AppId) && n.IsDel == false && m.IsDel == false && SkuList.Contains(n.JDCode) select n).ToList(); if (!stockList.Any()) { LogHelper.Info("JdOrderHelper.SkuCheckStock 店铺中未找到商品,跳过~"); return; } List <Guid> ComIds = new List <Guid>(); //更新库存 foreach (var item in sku) { var ComStock = stockList.FirstOrDefault(p => p.JDCode == item.skuId); if (ComStock != null) { ComStock.Stock = item.count; ComStock.ModifiedOn = DateTime.Now; ComIds.Add(ComStock.CommodityId); } } int mmm = contextSession.SaveChanges(); #region 重新计算Commodity表库存信息 //出去所有严选商品信息 var commodity = Commodity.ObjectSet().Where(p => ComIds.Distinct().Contains(p.Id) && p.IsDel == false).ToList(); var comids = commodity.Select(s => s.Id).ToList(); var commodityStock = CommodityStock.ObjectSet().Where(p => comids.Contains(p.CommodityId)).ToList(); var AuditModeApp = JDAuditMode.ObjectSet().Where(_ => _.StockModeState == 0).Select(_ => _.AppId).ToList(); //库存自动审核appid集合 List <Guid> NoticeComIds = new List <Guid>(); //到货提醒商品Id foreach (var item in commodity) { var StockNo = commodityStock.Where(p => p.CommodityId == item.Id).Sum(s => s.Stock); if (StockNo == 0)//无库存商品下架处理 { item.State = 1; } else if (item.State == 1 && StockNo > 0)//有库存上架处理审核处理 { item.State = 0; } if (item.Stock == 0 && StockNo > 0 && item.State == 0) { NoticeComIds.Add(item.Id); } item.Stock = StockNo; item.ModifiedOn = DateTime.Now; } int nnn = contextSession.SaveChanges(); //调用到货提醒接口 if (NoticeComIds.Any()) { for (int i = 0; i < NoticeComIds.Count; i += 30) { ZPHSV.SendStockNotifications(NoticeComIds.Skip(i).Take(30).ToList()); } } #endregion }