LifePayment/LifePayment.Domain/Common/AbstractChannelFilter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LifePayment/LifePayment.Domain/Common/ChannelFilter.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
LifePayment/LifePayment.Domain/Common/ChannelHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
LifePayment/LifePayment.Domain/Common/AbstractChannelFilter.cs
New file @@ -0,0 +1,25 @@ using LifePayment.Domain.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Volo.Abp.Auditing; using Volo.Abp.DependencyInjection; using Volo.Abp.Domain.Entities; using Volo.Abp.Domain.Repositories; using Volo.Abp.Users; namespace LifePayment.Domain.Common { public abstract class AbstractChannelFilter { public abstract Task<IQueryable<TEntity>> GetPolicyFilter<TEntity, TKey>(IQueryable<TEntity> query) where TEntity : class, IChannelData, IMayHaveCreator, IEntity<TKey>; public IAbpLazyServiceProvider LazyServiceProvider { get; set; } protected ICurrentUser CurrentUser => LazyServiceProvider.LazyGetRequiredService<ICurrentUser>(); protected IRepository<User> UserDepartmentRepository => LazyServiceProvider.LazyGetRequiredService<IRepository<User>>(); } } LifePayment/LifePayment.Domain/Common/ChannelFilter.cs
New file @@ -0,0 +1,21 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace LifePayment.Domain.Common { //public class ChannelFilter : AbstractChannelFilter //{ // public async Task<IQueryable<ChannelsBase>> GetPolicyFilter<ChannelsBase, TKey>(IQueryable<ChannelsBase> query) // { // throw new NotImplementedException(); // } //} //public class ChannelsBase:IChannelFilter //{ // // public Guid ChannelId { get; set; } //} } LifePayment/LifePayment.Domain/Common/ChannelHelper.cs
New file @@ -0,0 +1,47 @@ using DynamicQuery.Net.Dto.Input; using DynamicQuery.Net; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using ZeroD.Application.Services.Dto; using Volo.Abp.Users; using Volo.Abp.Auditing; using Volo.Abp.Domain.Entities; namespace LifePayment.Domain { public interface IChannelFilter { public Task<IQueryable<TEntity>> GetChannelFilter<TEntity, TKey>(IQueryable<TEntity> query) where TEntity : class, IChannelData, IMayHaveCreator, IEntity<TKey>; //public static IQueryable<T> GetChannleQuery<T>(this IQueryable<T> query, ChannelFilterInput input) where T : class, IChannelData //{ // if (query == null) // { // return query; // } // if (input.Channels != null && input.Channels.Any()) // { // query = query.Where(r => input.Channels.Contains(r.ChannelId)); // } // return query; //} } public interface IChannelData { Guid ChannelId { get; set; } } public class ChannelFilterInput { public List<Guid> Channels { get; set; } = new List<Guid>(); } }