123456789101112131415161718192021222324252627 |
- using System.Linq.Expressions;
- using Hotline.Repository.SqlSugar.DataPermissions;
- using Hotline.Repository.SqlSugar.Extensions;
- using SqlSugar;
- using XF.Domain.Entities;
- using XF.Domain.Repository;
- namespace Hotline.Repository.SqlSugar;
- public abstract class BaseRepositoryWorkflow<TEntity> : BaseRepository<TEntity>, IRepositoryWorkflow<TEntity, string>
- where TEntity : class, IEntity<string>, IHasCreationTime, IDataPermission, IWorkflow, new()
- {
- private readonly IDataPermissionFilterBuilder _dataPermissionFilterBuilder;
- protected BaseRepositoryWorkflow(ISugarUnitOfWork<HotlineDbContext> uow, IDataPermissionFilterBuilder dataPermissionFilterBuilder) : base(uow, dataPermissionFilterBuilder)
- {
- _dataPermissionFilterBuilder = dataPermissionFilterBuilder;
- }
- public ISugarQueryable<TEntity> Queryable(bool includeDeleted = false)
- {
- if (includeDeleted)
- Db.QueryFilter.Clear();
- return Db.Queryable<TEntity>().WorkflowDataFiltering(_dataPermissionFilterBuilder);
- }
- }
|