using Attribute; using Model; using Model.Base; using Repository; using Service; using Microsoft.AspNetCore.Mvc; using Vo.Admin; namespace Services { /// /// 服务器配置Service业务层处理 /// [AppService(ServiceType = typeof(IServerService), ServiceLifetime = LifeTime.Transient)] public class ServerService : BaseService, IServerService { /// /// 服务器配置-列表 /// /// 参数请求体 /// 分页参数 /// 列表 public PagedInfo getServerList([FromQuery] PagerInfo page, [FromQuery] Server param) { //拼装查询条件 var predicate = Expressionable.Create(); predicate = predicate.AndIF(!string.IsNullOrEmpty(param.serverName), m => m.serverName.Contains(param.serverName)); predicate = predicate.AndIF(!string.IsNullOrEmpty(param.cloudName), m => m.cloudName.Contains(param.cloudName)); predicate = predicate.AndIF(!string.IsNullOrEmpty(param.hostAddress), m => m.hostAddress.Contains(param.hostAddress)); var response = Queryable() .Where(predicate.ToExpression()) .OrderByDescending(m => m.id) .ToPage(page); return response; } } }