using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace FlexJobApi.Core
{
///
/// 用户仓库
///
public static class UserRepository
{
///
/// 获取个人用户查询
///
///
///
///
///
public static IQueryable GetPersonalQueryable(this IRepository rep, bool tracking = true, CurrentLogier logier = null)
{
logier = logier ?? JwtUtils.GetCurrentLogier();
var q = rep.AsQueryable();
if (tracking)
{
q = q.AsNoTracking();
}
q = q.OrderBy(it => it.CreatedTime);
if (logier != null)
{
if (logier.Type == EnumUserType.Personal)
{
q = q.Where(it => it.Id == logier.Id);
}
}
return q;
}
}
}