public async Task <IList <DictEntity> > Query(DictQueryModel model) { var paging = model.Paging(); var query = Db.Find(); if (!paging.OrderBy.Any()) { query.OrderByDescending(m => m.Id); } var result = await query.LeftJoin <AccountEntity>((x, y) => x.CreatedBy == y.Id) .Select((x, y) => new { x, Creator = y.Name }) .PaginationAsync(paging); model.TotalCount = paging.TotalCount; return(result); }
private INetSqlQueryable BuildQuery(DictQueryModel model, out Paging paging) { paging = model.Paging(); var query = Db.Find(); query.WhereNotNull(model.GroupCode, m => m.GroupCode == model.GroupCode); query.WhereNotNull(model.Code, m => m.Code == model.Code); query.WhereNotNull(model.Name, m => m.Name.Contains(model.Name)); var joinQuery = query.LeftJoin <AccountEntity>((x, y) => x.CreatedBy == y.Id) .LeftJoin <DictGroupEntity>((x, y, z) => x.GroupCode == z.Code) .Select((x, y, z) => new { x, Creator = y.Name, GroupName = z.Name }); if (!paging.OrderBy.Any()) { joinQuery.OrderByDescending((x, y, z) => x.Id); } return(joinQuery); }
public async Task <IList <DictEntity> > Query(DictQueryModel model) { var paging = model.Paging(); var query = Db.Find(); query.WhereNotNull(model.GroupCode, m => m.GroupCode == model.GroupCode); query.WhereNotNull(model.Name, m => m.Name.Contains(model.Name)); query.WhereNotNull(model.Code, m => m.Code == model.Code); var joinQuery = query.LeftJoin <AccountEntity>((x, y) => x.CreatedBy == y.Id) .LeftJoin <DictGroupEntity>((x, y, z) => x.GroupCode == z.Code) .Select((x, y, z) => new { x, Creator = y.Name, GroupName = z.Name }); if (!paging.OrderBy.Any()) { joinQuery.OrderByDescending((x, y, z) => x.Id); } var list = await joinQuery.PaginationAsync(paging); model.TotalCount = paging.TotalCount; return(list); }