feat 添加商品检索条件

This commit is contained in:
lwh 2023-07-15 15:14:50 +08:00
parent 2919d9dd98
commit d8b7c7f379
2 changed files with 13 additions and 5 deletions

View File

@ -12,7 +12,7 @@ namespace ARW.Model.Dto.Api.GoodsManager.Goodss
/// @author lwh
/// @date 2023-07-09
/// </summary>
public class GoodsQueryDtoApi : PagerInfo
public class GoodsQueryDtoApi : PagerInfo
{
public long? ShopGuid { get; set; }
@ -22,9 +22,11 @@ namespace ARW.Model.Dto.Api.GoodsManager.Goodss
public long? GoodsCategoryGuid { get; set; }
public string GoodsName { get; set; }
public string GoodsCoding { get; set; }
public int GoodsSort { get; set; }
public int GoodsSortType { get; set; }
}
/// <summary>
/// 商品详情输入对象Api
///
@ -36,5 +38,5 @@ namespace ARW.Model.Dto.Api.GoodsManager.Goodss
[Required(ErrorMessage = "商品Id不能为空")]
public long SpuId { get; set; }
}
}

View File

@ -82,6 +82,10 @@ namespace ARW.Service.Api.BusinessService.GoodsManager.Goodss
//predicate = predicate.AndIF(parm.GoodsCategoryGuid != null, s => s.GoodsCategoryGuid == parm.GoodsCategoryGuid);
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.GoodsName), s => s.GoodsName.Contains(parm.GoodsName));
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.GoodsCoding), s => s.GoodsCoding.Contains(parm.GoodsCoding));
var sortType = OrderByType.Asc;
if(parm.GoodsSortType == 1) sortType = OrderByType.Desc;
var query = _GoodsRepository
.Queryable()
.LeftJoin<Shop>((s, c) => s.ShopGuid == c.ShopGuid)
@ -89,7 +93,9 @@ namespace ARW.Service.Api.BusinessService.GoodsManager.Goodss
.WhereIF(parm.GoodsCategoryGuid != null, (s,c) => c.ShopBusinessCategoryGuid == parm.GoodsCategoryGuid)
//.WhereIF(parm.GoodsCategoryGuid != null, (s, c) => c.ShopBusinessCategoryGuid == parm.GoodsCategoryGuid || goodsCategoryArr.Contains(c.ShopBusinessCategoryGuid.ToString()))
.Where(s => s.GoodsShelfStatus == 1)
.OrderBy(s => s.GoodsSort, OrderByType.Desc)
.OrderByIF(parm.GoodsSort == 0 , s => s.GoodsSort, OrderByType.Asc)
.OrderByIF(parm.GoodsSort == 1 , s => s.GoodsPriceLowest, sortType)
//.OrderBy(s => s.GoodsSort, OrderByType.Desc)
.Select((s, c) => new GoodsVoApi
{
SpuId = s.GoodsGuid,