From 6b8dd8a7b4ac5d75d2e7a8c6c44d976bbd248b67 Mon Sep 17 00:00:00 2001 From: zhengyuxuan <zhengyuxuan1995> Date: 星期三, 02 四月 2025 13:33:51 +0800 Subject: [PATCH] fix:bug修复 --- LifePayment/LifePayment.Domain/Common/ChannelFilter.cs | 56 +++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 43 insertions(+), 13 deletions(-) diff --git a/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs b/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs index 91ae58b..f734643 100644 --- a/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs +++ b/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs @@ -1,21 +1,51 @@ -锘縰sing System; +锘縰sing LifePayment.Application.Contracts; +using LifePayment.Domain; +using LifePayment.Domain.Models; +using Microsoft.EntityFrameworkCore; +using System; using System.Collections.Generic; using System.Linq; -using System.Text; +using System.Threading.Channels; using System.Threading.Tasks; +using Volo.Abp; +using Volo.Abp.Application.Services; +using Volo.Abp.Domain.Entities; +using Volo.Abp.Domain.Repositories; +using Z.EntityFramework.Plus; +using ZeroD.Util; namespace LifePayment.Domain.Common { - //public class ChannelFilter : AbstractChannelFilter - //{ - // public async Task<IQueryable<ChannelsBase>> GetPolicyFilter<ChannelsBase, TKey>(IQueryable<ChannelsBase> query) - // { - // throw new NotImplementedException(); - // } - //} + public class ChannelFilter : AbstractChannelFilter + { + public override IQueryable<LifePayOrder> GetChannelLifePayOrderFilter(IQueryable<LifePayOrder> query) + { + if (CurrentUser.ClientId == Constant.ClientType.Back && !CurrentUser.IsSystem) + { + var queryUser = UserChannleRepository.Where(r => r.UserId == CurrentUser.Id).Select(s => s.ChannleId).ToList(); + var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.ChannelId) && queryUser.Contains(s.ChannelId))); + return queryResult; + } - //public class ChannelsBase:IChannelFilter - //{ - // // public Guid ChannelId { get; set; } - //} + return query; + } + + public override IQueryable<LifePayUser> GetChannelLifePayUserFilter(IQueryable<LifePayUser> query) + { + if (CurrentUser.ClientId == Constant.ClientType.Back && !CurrentUser.IsSystem) + { + var queryUser = UserChannleRepository.Where(r => r.UserId == CurrentUser.Id).Select(s => s.ChannleId).ToList(); + var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.CreationChannleNum) && queryUser.Contains(s.CreationChannleNum))); + return queryResult; + } + + return query; + } + } + + public class ChannelsBase : Entity<Guid> + { + public Guid ChannleId { get; set; } + + } } -- Gitblit v1.9.1