using Nirvana.Common; using Nirvana.Data; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using YBDevice.Entity; namespace YBDevice.Service.DBServices { /// /// 测量记录 /// public partial class ResultApp : Repository { /// /// 测量记录列表 /// /// /// public async Task> GetListAsync(QueryParams param) { using (var dbClient = ReadDbContext.GetInstance()) { RefAsync totalnum = 0; var temquery = dbClient.Queryable(); var currentUser = OperatorProvider.Provider.GetCurrent(); if (param.queryParam != null && param.queryParam.Count > 0) { List conModels = new List(); param.queryParam.ForEach(x => { if (!string.IsNullOrEmpty(x.Value)) { conModels.Add(new ConditionalModel() { FieldName = x.Name, ConditionalType = (ConditionalType)x.Type, FieldValue = x.Value.Trim() }); } }); if (conModels.Count > 0) { temquery = temquery.Where(conModels); } } if (currentUser.AccountType != (int)AccountType.platform) { temquery = temquery.Where(x => x.BusinessId == currentUser.BusinessId); } string sorts = string.Format("{0} {1}", param.sort, param.order); var query = await temquery.OrderBy(sorts) .ToPageListAsync(param.offset, param.limit, totalnum); return new PageParms { page = param.offset, Items = query, totalnum = totalnum, limit = param.limit }; } } } }