public void AdjustSlidAdIndex(long shopId, long id, bool direction, SlideAdInfo.SlideAdType type) { DbFactory.Default.InTransaction(() => { var slide = DbFactory.Default.Get <SlideAdInfo>().Where(s => s.ShopId == shopId && s.Id == id && s.TypeId == type).FirstOrDefault(); if (direction) { var prev = DbFactory.Default.Get <SlideAdInfo>().Where(s => s.ShopId == shopId && s.TypeId == type).OrderByDescending(s => s.DisplaySequence).Where(s => s.DisplaySequence < slide.DisplaySequence).FirstOrDefault(); if (null != prev) { var temp = slide.DisplaySequence; slide.DisplaySequence = prev.DisplaySequence; prev.DisplaySequence = temp; DbFactory.Default.Update(slide); DbFactory.Default.Update(prev); } } else { var next = DbFactory.Default.Get <SlideAdInfo>().Where(s => s.ShopId == shopId && s.TypeId == type).OrderBy(s => s.DisplaySequence).Where(s => s.DisplaySequence > slide.DisplaySequence).FirstOrDefault(); if (null != next) { var temp = slide.DisplaySequence; slide.DisplaySequence = next.DisplaySequence; next.DisplaySequence = temp; } DbFactory.Default.Update(slide); DbFactory.Default.Update(next); } }); //Context.SaveChanges(); }
public void AdjustSlidAdIndex(long shopId, long id, bool direction, SlideAdInfo.SlideAdType type) { var slide = Context.SlideAdInfo.FirstOrDefault(s => s.ShopId == shopId && s.Id == id && s.TypeId == type); if (direction) { //var prev = context.SlideAdInfo.FirstOrDefault(s => s.ShopId == shopId && s.DisplaySequence == slide.DisplaySequence - 1 && s.TypeId == type); var prev = Context.SlideAdInfo.OrderByDescending(s => s.DisplaySequence).FirstOrDefault(s => s.ShopId == shopId && s.TypeId == type && s.DisplaySequence < slide.DisplaySequence); if (null != prev) { slide.DisplaySequence = slide.DisplaySequence - 1; prev.DisplaySequence = prev.DisplaySequence + 1; } } else { var next = Context.SlideAdInfo.OrderBy(s => s.DisplaySequence).FirstOrDefault(s => s.ShopId == shopId && s.TypeId == type && s.DisplaySequence > slide.DisplaySequence); if (null != next) { slide.DisplaySequence = slide.DisplaySequence + 1; next.DisplaySequence = next.DisplaySequence - 1; } } Context.SaveChanges(); }
private string MoveImages(ref string backGroundImage, SlideAdInfo.SlideAdType type, long shopId) { string empty = string.Empty; string str = string.Empty; if (type == SlideAdInfo.SlideAdType.WeixinHome) { empty = IOHelper.GetMapPath("/Storage/Plat/Weixin/SlidAd/"); str = "/Storage/Plat/Weixin/SlidAd/"; } if (type == SlideAdInfo.SlideAdType.VShopHome) { empty = IOHelper.GetMapPath(string.Concat("/Storage/Shop/", shopId, "/VShop/")); str = string.Concat("/Storage/Shop/", shopId, "/VShop/"); } if (type == SlideAdInfo.SlideAdType.IOSShopHome) { empty = IOHelper.GetMapPath("/Storage/Plat/APP/SlidAd/"); str = "/Storage/Plat/APP/SlidAd/"; } if (!string.IsNullOrWhiteSpace(empty) && !Directory.Exists(empty)) { Directory.CreateDirectory(empty); } if (!string.IsNullOrWhiteSpace(empty) && backGroundImage.Replace("\\", "/").Contains("/temp/")) { string mapPath = IOHelper.GetMapPath(backGroundImage); IOHelper.CopyFile(mapPath, empty, false, ""); backGroundImage = string.Concat(str, (new FileInfo(mapPath)).Name); } return(backGroundImage); }
/// <summary> /// 查询切换 /// </summary> /// <param name="shopId"></param> /// <param name="slidAdsType"></param> /// <returns></returns> public IEnumerable <SlideAdInfo> GetSlidAdsOrInit(long shopId, SlideAdInfo.SlideAdType?slidAdsType = 0) { IEnumerable <SlideAdInfo> source = (IEnumerable <SlideAdInfo>)Queryable.OrderBy <SlideAdInfo, long>(DbSetExtend.FindBy <SlideAdInfo>(this.Context.SlideAdInfo, (Expression <Func <SlideAdInfo, bool> >)(i => i.ShopId == shopId)), (Expression <Func <SlideAdInfo, long> >)(i => i.Id)); SlideAdInfo.SlideAdType?nullable1 = slidAdsType; if ((nullable1.GetValueOrDefault() != SlideAdInfo.SlideAdType.Initial ? 1 : (!nullable1.HasValue ? 1 : 0)) != 0) { source = Enumerable.Where <SlideAdInfo>(source, (Func <SlideAdInfo, bool>)(item => { SlideAdInfo.SlideAdType typeId = item.TypeId; SlideAdInfo.SlideAdType?nullable2 = slidAdsType; return(typeId == nullable2.GetValueOrDefault() && nullable2.HasValue); })); } if (Enumerable.Count <SlideAdInfo>(source) == 0) { SlideAdInfo[] slideAdInfoArray = new SlideAdInfo[5]; for (int index = 0; index < 5; ++index) { slideAdInfoArray[index] = new SlideAdInfo() { ImageUrl = "", ShopId = shopId, Url = "", TypeId = slidAdsType.Value } } ; this.Context.SlideAdInfo.AddRange((IEnumerable <SlideAdInfo>)slideAdInfoArray); this.Context.SaveChanges(); source = (IEnumerable <SlideAdInfo>)slideAdInfoArray; } return(source); }
public IQueryable <SlideAdInfo> GetSlidAds(long shopId, SlideAdInfo.SlideAdType type) { return (from s in context.SlideAdInfo where s.ShopId == shopId && (int)s.TypeId == (int)type select s into t orderby t.DisplaySequence select t); }
/// <summary> /// 图片转移 /// </summary> /// <param name="topicId">专题编号</param> /// <param name="backGroundImage">临时背景图地址,返回正式地址</param> /// <param name="topImage">临时top图地址,返回正式地址</param> /// <returns>专题图片目录</returns> string MoveImages(ref string backGroundImage, SlideAdInfo.SlideAdType type, long shopId) { string imageDir = string.Empty; string relativeDir = string.Empty; if (type == SlideAdInfo.SlideAdType.WeixinHome) { //转移图片 imageDir = "/Storage/Plat/Weixin/SlidAd/"; relativeDir = "/Storage/Plat/Weixin/SlidAd/"; } if (type == SlideAdInfo.SlideAdType.VShopHome) { imageDir = "/Storage/Shop/" + shopId + "/VShop/"; relativeDir = "/Storage/Shop/" + shopId + "/VShop/"; } if (type == SlideAdInfo.SlideAdType.IOSShopHome) { imageDir = "/Storage/Plat/APP/SlidAd/"; relativeDir = "/Storage/Plat/APP/SlidAd/"; } backGroundImage = backGroundImage.Replace("\\", "/"); if (!string.IsNullOrWhiteSpace(imageDir))//只有在临时目录中的图片才需要复制 { if (backGroundImage.Contains("/temp/")) { if (!string.IsNullOrWhiteSpace(backGroundImage)) { string logoname = backGroundImage.Substring(backGroundImage.LastIndexOf('/') + 1); string oldlogo = backGroundImage.Substring(backGroundImage.LastIndexOf("/temp")); string newLogo = imageDir + logoname; Core.HimallIO.CopyFile(oldlogo, newLogo, true); backGroundImage = newLogo; } } else if (backGroundImage.Contains("/Storage/")) { backGroundImage = backGroundImage.Substring(backGroundImage.LastIndexOf("/Storage")); } } return(backGroundImage); }
public void AdjustSlidAdIndex(long shopId, long id, bool direction, SlideAdInfo.SlideAdType type) { SlideAdInfo displaySequence = context.SlideAdInfo.FirstOrDefault((SlideAdInfo s) => s.ShopId == shopId && s.Id == id && (int)s.TypeId == (int)type); if (!direction) { SlideAdInfo slideAdInfo = context.SlideAdInfo.FirstOrDefault((SlideAdInfo s) => s.ShopId == shopId && s.DisplaySequence == displaySequence.DisplaySequence + 1 && (int)s.TypeId == (int)type); if (slideAdInfo != null) { displaySequence.DisplaySequence = displaySequence.DisplaySequence + 1; slideAdInfo.DisplaySequence = slideAdInfo.DisplaySequence - 1; } } else { SlideAdInfo displaySequence1 = context.SlideAdInfo.FirstOrDefault((SlideAdInfo s) => s.ShopId == shopId && s.DisplaySequence == displaySequence.DisplaySequence - 1 && (int)s.TypeId == (int)type); if (displaySequence1 != null) { displaySequence.DisplaySequence = displaySequence.DisplaySequence - 1; displaySequence1.DisplaySequence = displaySequence1.DisplaySequence + 1; } } context.SaveChanges(); }
public static bool DelSlideAdByType(long shopId, SlideAdInfo.SlideAdType type) { return(_iSlideAdsService.DelSlideAdByType(shopId, type)); }
/// <summary> /// 获取自动轮播广告图片 /// </summary> /// <returns></returns> public static IList <SlideAdInfo> GetSlidAds(long shopId, SlideAdInfo.SlideAdType type) { var slidAds = _iSlideAdsService.GetSlidAds(shopId, type).ToList(); return(slidAds); }
/// <summary> /// 排序上下移 /// </summary> /// <param name="sourceSequence"></param> /// <param name="destiSequence"></param> public static void UpdateWeixinSlideSequence(long shopId, long sourceSequence, long destiSequence, SlideAdInfo.SlideAdType type) { _iSlideAdsService.UpdateWeixinSlideSequence(shopId, sourceSequence, destiSequence, type); }
public bool DelSlideAdByType(long shopId, SlideAdInfo.SlideAdType type) { return(DbFactory.Default.Del <SlideAdInfo>(s => s.ShopId == shopId && s.TypeId == type) > 0); }
public void UpdateWeixinSlideSequence(long shopId, long sourceSequence, long destiSequence, SlideAdInfo.SlideAdType type) { DbFactory.Default.InTransaction(() => { var souce = DbFactory.Default.Get <SlideAdInfo>().Where(item => item.DisplaySequence == sourceSequence && item.ShopId == shopId && item.TypeId == type).FirstOrDefault(); var destination = DbFactory.Default.Get <SlideAdInfo>().Where(item => item.DisplaySequence == destiSequence && item.ShopId == shopId && item.TypeId == type).FirstOrDefault(); souce.DisplaySequence = destiSequence; destination.DisplaySequence = sourceSequence; DbFactory.Default.Update(souce); DbFactory.Default.Update(destination); }); }
public List <SlideAdInfo> GetSlidAds(long shopId, SlideAdInfo.SlideAdType type) { return(DbFactory.Default.Get <SlideAdInfo>().Where(s => s.ShopId == shopId && s.TypeId == type).OrderBy(t => t.DisplaySequence).ToList()); }
public IQueryable <Model.SlideAdInfo> GetSlidAds(long shopId, SlideAdInfo.SlideAdType type) { return(Context.SlideAdInfo.Where(s => s.ShopId == shopId && s.TypeId == type).OrderBy(t => t.DisplaySequence)); }
public void UpdateWeixinSlideSequence(long shopId, long sourceSequence, long destiSequence, SlideAdInfo.SlideAdType type) { var souce = Context.SlideAdInfo.FirstOrDefault(item => item.DisplaySequence == sourceSequence && item.ShopId == shopId && item.TypeId == type); var destination = Context.SlideAdInfo.FirstOrDefault(item => item.DisplaySequence == destiSequence && item.ShopId == shopId && item.TypeId == type); souce.DisplaySequence = destiSequence; destination.DisplaySequence = sourceSequence; Context.SaveChanges(); }
public void UpdateWeixinSlideSequence(long shopId, long sourceSequence, long destiSequence, SlideAdInfo.SlideAdType type) { SlideAdInfo slideAdInfo = context.SlideAdInfo.FirstOrDefault((SlideAdInfo item) => item.DisplaySequence == sourceSequence && item.ShopId == shopId && (int)item.TypeId == (int)type); SlideAdInfo slideAdInfo1 = context.SlideAdInfo.FirstOrDefault((SlideAdInfo item) => item.DisplaySequence == destiSequence && item.ShopId == shopId && (int)item.TypeId == (int)type); slideAdInfo.DisplaySequence = destiSequence; slideAdInfo1.DisplaySequence = sourceSequence; context.SaveChanges(); }