From 1deb3d68f4caf2f54107e67c991ec9e50b360fa0 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 20 十一月 2025 09:26:19 +0800
Subject: [PATCH] Merge branch 'dev-818-3.4.2.12' of http://120.26.58.240:8888/r/ApiTools into dev-818-3.4.2.12

---
 ApiTools.Application/ChannelWallets/Queries/ChannelWalletQueryHandler.cs |   26 +++++++++++++++++++++++++-
 1 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/ApiTools.Application/ChannelWallets/Queries/ChannelWalletQueryHandler.cs b/ApiTools.Application/ChannelWallets/Queries/ChannelWalletQueryHandler.cs
index 59fa35e..81ad08b 100644
--- a/ApiTools.Application/ChannelWallets/Queries/ChannelWalletQueryHandler.cs
+++ b/ApiTools.Application/ChannelWallets/Queries/ChannelWalletQueryHandler.cs
@@ -18,7 +18,8 @@
             ChannelWalletTransactionRepository channelWalletTransactionRepository
         ) :
         IRequestHandler<GetChannelPingAnPayWalletQuery, GetChannelPingAnPayWalletQueryResult>,
-        IRequestHandler<GetChannelWalletTransactionQuery, GetChannelWalletTransactionQueryResult>
+        IRequestHandler<GetChannelWalletTransactionQuery, GetChannelWalletTransactionQueryResult>,
+        IRequestHandler<GetChannelWalletTransactionsQuery, GetChannelWalletTransactionsQueryResult>
     {
         private readonly ChannelWalletRepository channelWalletRepository = channelWalletRepository;
         private readonly ChannelWalletTransactionRepository channelWalletTransactionRepository = channelWalletTransactionRepository;
@@ -51,5 +52,28 @@
                 .FirstOrDefaultAsync();
         }
 
+        /// <summary>
+        /// 鏌ヨ娓犻亾閽卞寘浜ゆ槗璇︽儏
+        /// </summary>
+        /// <param name="request"></param>
+        /// <param name="cancellationToken"></param>
+        /// <returns></returns>
+        public async Task<GetChannelWalletTransactionsQueryResult> Handle(GetChannelWalletTransactionsQuery request, CancellationToken cancellationToken)
+        {
+            var list = new GetChannelWalletTransactionsQueryResult();
+            list.Items = await channelWalletTransactionRepository.GetQueryable()
+                .Where(it => request.OutCodes.Contains(it.OutCode))
+                .ProjectToType<GetChannelWalletTransactionsQueryResultItem>()
+                .ToListAsync();
+            foreach (var item in list.Items)
+            {
+                if (item.EreceiptStatus == EnumWalletTransactionEreceiptStatus.SUCCESS
+                    && item.EreceiptDownloadOssUrl.IsNotNull())
+                {
+                    item.EreceiptDownloadOssFullUrl = AliyunOSSUtils.GetUrl(item.EreceiptDownloadOssUrl);
+                }
+            }
+            return list;
+        }
     }
 }

--
Gitblit v1.9.1