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

---
 FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/EnterpriseWalletCommandHandler.cs |   96 ++---------------------------------------------
 1 files changed, 5 insertions(+), 91 deletions(-)

diff --git a/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/EnterpriseWalletCommandHandler.cs b/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/EnterpriseWalletCommandHandler.cs
index 6dac49a..b59fc51 100644
--- a/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/EnterpriseWalletCommandHandler.cs
+++ b/FlexJobApi.UserServer.Application/EnterpriseWallets/Commands/EnterpriseWalletCommandHandler.cs
@@ -25,8 +25,7 @@
         ) :
         IRequestHandler<OpenEnterpriseWalletCommand, OpenEnterpriseWalletCommandResult>,
         IRequestHandler<CloseEnterpriseWalletCommand, Guid>,
-        IRequestHandler<RechargeEnterpriseWalletCommand, RechargeEnterpriseWalletCommandResult>,
-        IRequestHandler<TransferEnterpriseWalletCommand, Guid>
+        IRequestHandler<RechargeEnterpriseWalletCommand, RechargeEnterpriseWalletCommandResult>
     {
         private readonly IRepository<EnterpriseWallet> rep = rep;
         private readonly IRepository<Enterprise> repEnterprise = repEnterprise;
@@ -59,8 +58,6 @@
                 entity = new EnterpriseWallet();
                 entity.EnterpriseId = request.EnterpriseId!.Value;
                 entity.Access = EnumEnterpriseWalletAccess.Alipay;
-                entity.Account = request.Account;
-                entity.MerchantId = request.MerchantId;
                 entity.PersonalProductCode = "FUND_SAFT_SIGN_WITHHOLDING_P";
                 entity.SignScene = "INDUSTRY|SATF_ACC";
                 entity.ThirdPartyType = "PARTNER";
@@ -72,8 +69,6 @@
             else
             {
                 if (entity.SignStatus == EnumEnterpriseWalletSignStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s510, "宸茬绾�");
-                entity.Account = request.Account;
-                entity.MerchantId = request.MerchantId;
                 entity.SignStatus = EnumEnterpriseWalletSignStatus.Apply;
                 await rep.UpdateAsync(entity);
             }
@@ -155,8 +150,10 @@
             order.Remark = request.Remark ?? "鍏呭��";
             order.ProductCode = "FUND_ACCOUNT_BOOK";
             order.BizScene = "SATF_DEPOSIT";
-            order.TransactionStatus = EnumEnterpriseWalletTransactionStatus.WaitSubmit;
+            order.TransactionStatus = EnumWalletTransactionStatus.WaitSubmit;
             order.Balance = entity.Balance;
+            order.OperatorUserId = logier.Id;
+            order.OperatorTime = DateTime.Now;
             await SetCode(order);
             await repEnterpriseWalletTransaction.InsertAsync(order);
 
@@ -180,95 +177,12 @@
                 },
             }, "/api/user/enterpriseWallet/alipayFundTransOrderChangedNotify");
             if (response.IsError) throw Oops.Oh(EnumErrorCodeType.s510, response.SubMsg ?? response.Msg);
-            order.TransactionStatus = EnumEnterpriseWalletTransactionStatus.WaitPay;
+            order.TransactionStatus = EnumWalletTransactionStatus.WaitPay;
             await repEnterpriseWalletTransaction.UpdateAsync(order);
             return new RechargeEnterpriseWalletCommandResult
             {
                 PayUrl = response.Body
             };
-        }
-
-        /// <summary>
-        /// 浼佷笟閽卞寘杞处
-        /// </summary>
-        /// <param name="request"></param>
-        /// <param name="cancellationToken"></param>
-        /// <returns></returns>
-        [UnitOfWork(false)]
-        public async Task<Guid> Handle(TransferEnterpriseWalletCommand request, CancellationToken cancellationToken)
-        {
-            var logier = JwtUtils.GetCurrentLogier();
-            var entity = await rep.AsQueryable()
-                .Where(it => it.EnterpriseId == logier.EnterpriseId && it.Access == EnumEnterpriseWalletAccess.Alipay)
-                .FirstOrDefaultAsync();
-            if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘");
-            if (entity.SignStatus != EnumEnterpriseWalletSignStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s510, "鏈绾�");
-            if (entity.AccountBookStatus != EnumEnterpriseWalletAccountBookStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s510, "鏈紑閫氳璐︽湰");
-            await GetBalance(entity);
-
-            var order = new EnterpriseWalletTransaction();
-            order.Type = EnumEnterpriseWalletTransactionType.Recharge;
-            order.WalletId = entity.Id;
-            order.Amount = request.Amount;
-            order.Remark = request.Remark;
-            order.ProductCode = "SINGLE_TRANSFER_NO_PWD";
-            order.BizScene = "ENTRUST_TRANSFER";
-            order.TransactionStatus = EnumEnterpriseWalletTransactionStatus.WaitSubmit;
-            order.Balance = entity.Balance;
-            await SetCode(order);
-            await repEnterpriseWalletTransaction.InsertAsync(order);
-
-            var response = alipayUtils.FundTransUniTransfer(new AlipayFundTransUniTransferModel
-            {
-                OutBizNo = order.Code,
-                TransAmount = order.Amount.ToString(),
-                ProductCode = order.ProductCode,
-                BizScene = order.BizScene,
-                PayeeInfo = new Participant
-                {
-                    IdentityType = "ALIPAY_LOGON_ID",
-                    Identity = "13616515310",
-                    Name = "鏉ㄦ尟瀹�",
-                },
-                PayerInfo = new Participant
-                {
-                    IdentityType = "ACCOUNT_BOOK_ID",
-                    Identity = entity.AccountBookId,
-                    ExtInfo = new
-                    {
-                        agreement_no = entity.AgreementNo,
-                    }.ToJson(),
-                },
-                OrderTitle = order.Remark,
-                Remark = order.Remark,
-                BusinessParams = new
-                {
-                    withdraw_timeliness = "T0"
-                }.ToJson()
-            }, "/api/user/enterpriseWallet/alipayFundTransOrderChangedNotify");
-            if (response.IsError) throw Oops.Oh(EnumErrorCodeType.s510, response.SubMsg ?? response.Msg);
-            order.OrderId = response.OrderId;
-            order.PayFundOrderId = response.PayFundOrderId;
-            order.SettleSerialNo = response.SettleSerialNo;
-            order.TransDate = response.TransDate.ToDateTime();
-            order.Link = response.Link;
-            order.Status = response.Status;
-            order.SubStatus = response.SubStatus;
-            order.TransactionStatus = response.Status == "SUCCESS"
-                ? EnumEnterpriseWalletTransactionStatus.Success
-                : response.Status == "DEALING"
-                ? EnumEnterpriseWalletTransactionStatus.Dealing
-                : response.Status == "REFUND"
-                ? EnumEnterpriseWalletTransactionStatus.Refund
-                : response.Status == "FAIL"
-                ? EnumEnterpriseWalletTransactionStatus.Fail
-                : throw Oops.Oh(EnumErrorCodeType.s510, $"鏈瘑鍒殑鐘舵�侊細{response.Status}");
-            await repEnterpriseWalletTransaction.UpdateAsync(order);
-            if (order.TransactionStatus == EnumEnterpriseWalletTransactionStatus.Success)
-            {
-                await GetBalance(entity);
-            }
-            return entity.Id;
         }
 
         private async Task GetBalance(EnterpriseWallet entity)

--
Gitblit v1.9.1