zhengyiming
2025-03-19 aef74aff62bd9fc2d615f8b15a100432f2bca44f
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
    {
       public Guid ChannleId { get; set; }
    }
    public class ChannelFilterInput
    {
        public List<Guid> Channels { get; set; } = new List<Guid>();
    }
}