From 8ffda541b48cbf619f8493196da4fb44d4f3ddc5 Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期五, 05 九月 2025 10:22:55 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs b/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs
index aacd13c..05d4624 100644
--- a/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs
+++ b/FlexJobApi.UserServer.Application/EnterpriseWallets/Queries/EnterpriseWalletQueryHandler.cs
@@ -21,6 +21,7 @@
     public class EnterpriseWalletQueryHandler(
             IRepository<EnterpriseWallet> rep,
             IRepository<EnterpriseWalletTransaction> repEnterpriseWalletTransaction,
+            IRepository<EnterpriseWalletExpandindirectOrder> repEnterpriseWalletExpandindirectOrder,
             IRepository<Enterprise> repEnterprise,
             AlipayUtils alipayUtils
         ) :
@@ -29,6 +30,7 @@
     {
         private readonly IRepository<EnterpriseWallet> rep = rep;
         private readonly IRepository<EnterpriseWalletTransaction> repEnterpriseWalletTransaction = repEnterpriseWalletTransaction;
+        private readonly IRepository<EnterpriseWalletExpandindirectOrder> repEnterpriseWalletExpandindirectOrder = repEnterpriseWalletExpandindirectOrder;
         private readonly IRepository<Enterprise> repEnterprise = repEnterprise;
         private readonly AlipayUtils alipayUtils = alipayUtils;
 
@@ -53,7 +55,15 @@
             var entity = await rep.AsQueryable()
                 .Where(it => it.EnterpriseId == request.EnterpriseId && it.Access == request.Access)
                 .FirstOrDefaultAsync();
-            if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘");
+            if (entity == null)
+            {
+                return new GetEnterpriseWalletQueryResult
+                {
+                    Access = request.Access,
+                    SignStatus = EnumEnterpriseWalletSignStatus.Wait,
+                    ExpandindirectOrderStatus = EnumEnterpriseWalletExpandindirectOrderStatus.Wait
+                };
+            }
             var update = false;
             if (entity.Access == EnumEnterpriseWalletAccess.Alipay)
             {
@@ -134,6 +144,19 @@
             }
 
             var model = entity.Adapt<GetEnterpriseWalletQueryResult>();
+
+            var expandindirectOrder = await repEnterpriseWalletExpandindirectOrder.AsQueryable().AsNoTracking()
+                .OrderByDescending(it => it.CreatedTime)
+                .Where(it => it.WalletId == model.Id)
+                .Select(it => new
+                {
+                    it.OrderStatus
+                })
+                .FirstOrDefaultAsync();
+            model.ExpandindirectOrderStatus = expandindirectOrder == null
+                ? EnumEnterpriseWalletExpandindirectOrderStatus.Wait
+                : expandindirectOrder.OrderStatus;
+
             return model;
         }
 

--
Gitblit v1.9.1