/// <summary> /// 查询所有的产品类别 /// </summary> /// <returns></returns> public List <ProductCategoryEntity> GetList() { string Key = string.Format(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE, this.CompanyID); List <ProductCategoryEntity> list = CacheHelper.Get(Key) as List <ProductCategoryEntity>; if (!list.IsNullOrEmpty()) { return(list); } ProductCategoryEntity entity = new ProductCategoryEntity(); entity.OrderBy(a => a.ID, EOrderBy.DESC); entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete) .And(a => a.CompanyID == this.CompanyID); list = this.ProductCategory.GetList(entity); if (!list.IsNullOrEmpty()) { foreach (ProductCategoryEntity item in list) { int depth = list.Where(a => a.Left <= item.Left && a.Right >= item.Right).Count(); item.Depth = depth; if (item.ParentNum.IsNotEmpty()) { ProductCategoryEntity parent = list.FirstOrDefault(a => a.SnNum == item.ParentNum); item.ParentName = item != null && parent.CateName != "Root" ? parent.CateName : string.Empty; } } CacheHelper.Insert(Key, list); } return(list); }
/// <summary> /// 根据产品类别删除删除 /// </summary> /// <param name="cateNum"></param> /// <returns></returns> public int Delete(IEnumerable <string> list) { string Key = string.Format(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE, this.CompanyID); using (TransactionScope ts = new TransactionScope()) { int line = 0; List <ProductCategoryEntity> listSource = GetList(); listSource = listSource.IsNull() ? new List <ProductCategoryEntity>() : listSource; foreach (string item in list) { ProductCategoryEntity parent = listSource.FirstOrDefault(a => a.SnNum == item); int rightValue = parent.Right; int leftValue = parent.Left; ProductCategoryEntity delCategory = new ProductCategoryEntity(); delCategory.IsDelete = (int)EIsDelete.Deleted; delCategory.IncludeIsDelete(true); delCategory.Where(a => a.Left >= leftValue) .And(a => a.Right <= rightValue) .And(a => a.CompanyID == this.CompanyID) ; line += this.ProductCategory.Update(delCategory); List <ProductCategoryEntity> listNodes = listSource.Where(a => a.Left > leftValue).ToList(); if (!listNodes.IsNullOrEmpty()) { foreach (ProductCategoryEntity cate in listNodes) { cate.Left = cate.Left - (rightValue - leftValue + 1); cate.IncludeLeft(true); cate.Where(a => a.SnNum == cate.SnNum).And(a => a.CompanyID == this.CompanyID); line += this.ProductCategory.Update(cate); } } listNodes = listSource.Where(a => a.Right > rightValue).ToList(); if (!listNodes.IsNullOrEmpty()) { foreach (ProductCategoryEntity cate in listNodes) { cate.Right = cate.Right - (rightValue - leftValue + 1); cate.IncludeRight(true); cate.Where(a => a.SnNum == cate.SnNum).And(a => a.CompanyID == this.CompanyID); line += this.ProductCategory.Update(cate); } } } if (line > 0) { CacheHelper.Remove(Key); } ts.Complete(); return(line); } }
/// <summary> /// 根据产品类别删除删除 /// </summary> /// <param name="cateNum"></param> /// <returns></returns> public int Delete(string cateNum) { ProductCategoryEntity entity = new ProductCategoryEntity(); entity.Where(a => a.CateNum == cateNum); entity.IsDelete = (int)EIsDelete.Deleted; entity.IncludeIsDelete(true); int line = this.ProductCategory.Update(entity); if (line > 0) { CacheHelper.Remove(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE); } return(line); }
/// <summary> /// 查询所有的产品类别 /// </summary> /// <returns></returns> public List <ProductCategoryEntity> GetList() { List <ProductCategoryEntity> list = CacheHelper.Get(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE) as List <ProductCategoryEntity>; if (!list.IsNullOrEmpty()) { return(list); } ProductCategoryEntity entity = new ProductCategoryEntity(); entity.OrderBy(a => a.ID, EOrderBy.DESC); entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete); list = this.ProductCategory.GetList(entity); if (!list.IsNullOrEmpty()) { CacheHelper.Insert(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE, list); } return(list); }
/// <summary> /// 批量删除产品类型 /// </summary> /// <param name="list"></param> /// <returns></returns> public int DelBat(List <string> list) { using (TransactionScope ts = new TransactionScope()) { int line = 0; foreach (string cateNum in list) { ProductCategoryEntity entity = new ProductCategoryEntity(); entity.Where(a => a.CateNum == cateNum); entity.IsDelete = (int)EIsDelete.Deleted; entity.IncludeIsDelete(true); line += this.ProductCategory.Update(entity); } ts.Complete(); if (line > 0) { CacheHelper.Remove(CacheKey.JOOSHOW_PRODUCTCATEGORY_CACHE); } return(line); } }
/// <summary> /// 查询产品类别分页 /// </summary> /// <param name="entity"></param> /// <param name="pageInfo"></param> /// <returns></returns> public List <ProductCategoryEntity> GetList(ProductCategoryEntity entity, ref PageInfo pageInfo) { entity.IncludeAll(); entity.Where(a => a.IsDelete == (int)EIsDelete.NotDelete); entity.OrderBy(a => a.ID, EOrderBy.DESC); int rowCount = 0; List <ProductCategoryEntity> list = this.ProductCategory.GetList(entity, pageInfo.PageSize, pageInfo.PageIndex, out rowCount); pageInfo.RowCount = rowCount; if (!list.IsNullOrEmpty()) { AdminProvider adminProvider = new AdminProvider(); foreach (ProductCategoryEntity item in list) { if (!item.CreateUser.IsEmpty()) { AdminEntity admin = adminProvider.GetAdmin(item.CreateUser); item.CreateUser = admin.IsNotNull() ? admin.UserName : item.CreateUser; } } } return(list); }