zhengyuxuan
2025-03-19 96e5afdbba50a818f1c51dec5b07b7288bf36988
Merge branch 'master' of http://120.26.58.240:8888/r/LifePaymentApi
3个文件已添加
93 ■■■■■ 已修改文件
LifePayment/LifePayment.Domain/Common/AbstractChannelFilter.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Domain/Common/ChannelFilter.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Domain/Common/ChannelHelper.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | 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>();
    }
}