using Ant.Core.SqlServer;
using Ant.Core.Utils;
using Ant.Core.WebApi.Model;
using Central.Control.WebApi.Cache;
using Central.Control.WebApi.DbEntity;
using Central.Control.WebApi.EFDbContext;
using Central.Control.WebApi.Enum;
using Central.Control.WebApi.Models.Response;
using Central.Control.WebApi.Service.Interface;
using Microsoft.Extensions.Caching.Memory;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
namespace Central.Control.WebApi.Service
{
///
///
///
public class ProductService: IProductService
{
///
///
///
public readonly static string ImagePrefix = ConfigurationManager.AppSettings["ImagePrefix"].ToString();
private readonly ICacheHelper _cacheHelper;
private readonly IDbContext _dbContent;
///
///
///
///
public ProductService(
ICacheHelper cacheHelper,
IDbContext dbContent)
{
_cacheHelper = cacheHelper;
_dbContent = dbContent;
}
///
/// 商品列表
///
///
///
///
///
public PagedApiResult Query(string kw = "", int skip = 0, int limit = 1)
{
var query = _dbContent.Set().Where(p => p.IsDelete == 0 && p.Sale == SaleEnum.On);
// kw搜索
query = query.WhereIf(!string.IsNullOrWhiteSpace(kw), p => p.Name.Contains(kw));
// total
var total = query.Count();
// 查询结果
var queryResult = query.OrderByDescending(p => p.CreateDT).Skip(skip).Take(limit).ToList();
List result = new List();
queryResult.ForEach(item =>
{
var current = SafeClone.Trans(item);
// 图片转换
current.Img = $"{ImagePrefix}{current.Img}";
result.Add(current);
});
return new PagedApiResult(result, total, skip, limit);
}
}
}