From f87850a9663c68a39335e557f55f670786eef94d Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期四, 20 十一月 2025 14:50:45 +0800
Subject: [PATCH] feat:开发
---
ApiTools.Core/Jobs/RefreshChannelWalletTransactionStatusJob.cs | 22 +++++++++++++++-------
ApiTools.Core/Utils/DbUtils/DbUtils.cs | 8 +++++++-
2 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/ApiTools.Core/Jobs/RefreshChannelWalletTransactionStatusJob.cs b/ApiTools.Core/Jobs/RefreshChannelWalletTransactionStatusJob.cs
index c0f092b..47ffc54 100644
--- a/ApiTools.Core/Jobs/RefreshChannelWalletTransactionStatusJob.cs
+++ b/ApiTools.Core/Jobs/RefreshChannelWalletTransactionStatusJob.cs
@@ -29,13 +29,17 @@
public async Task ExecuteAsync(JobExecutingContext context, CancellationToken stoppingToken)
{
- //var env = App.GetConfig<string>("Environment");
- //if (env != "Local")
- //{
+ var env = App.GetConfig<string>("Environment");
+ if (env != "Local")
+ {
var transactions = await channelWalletTransactionRepository.GetQueryable(false)
+ .Include(it => it.PingAnPay)
.Where(it =>
it.TransactionStatus == EnumWalletTransactionStatus.WaitPay
- || it.TransactionStatus == EnumWalletTransactionStatus.Dealing)
+ || it.TransactionStatus == EnumWalletTransactionStatus.Dealing
+ || it.TransactionStatus == EnumWalletTransactionStatus.Success
+ && it.EreceiptStatus != EnumWalletTransactionEreceiptStatus.SUCCESS
+ && it.EreceiptStatus != EnumWalletTransactionEreceiptStatus.FAIL)
.ToListAsync();
var walletIds = transactions.Select(it => it.WalletId).Distinct().ToList();
var wallets = await channelWalletRepository.GetQueryable(false)
@@ -46,13 +50,17 @@
var wallet = wallets.FirstOrDefault(it => it.Id == transaction.WalletId);
if (wallet != null)
{
- // 鏌ヨ浜ゆ槗璇︽儏
- await channelWalletService.GetTransactionDetail(wallet, transaction);
+ if (transaction.TransactionStatus == EnumWalletTransactionStatus.WaitPay
+ || transaction.TransactionStatus == EnumWalletTransactionStatus.Dealing)
+ {
+ // 鏌ヨ浜ゆ槗璇︽儏
+ await channelWalletService.GetTransactionDetail(wallet, transaction);
+ }
// 涓嬭浇鍥炲崟
await channelWalletService.DownloadEreceiptUrl(wallet, transaction);
}
}
- //}
+ }
}
}
}
diff --git a/ApiTools.Core/Utils/DbUtils/DbUtils.cs b/ApiTools.Core/Utils/DbUtils/DbUtils.cs
index 75e00d4..3f6e5e1 100644
--- a/ApiTools.Core/Utils/DbUtils/DbUtils.cs
+++ b/ApiTools.Core/Utils/DbUtils/DbUtils.cs
@@ -10,6 +10,7 @@
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.Extensions.Configuration;
+using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
@@ -604,7 +605,12 @@
? p.IsModified
: true)
.ToDictionary(p => p.Metadata.Name, p => p.OriginalValue));
- Db.GetRepository<DbAuditLog, LogDbContextLocator>().InsertNow(log);
+ // 鍒涘缓鐙珛浣滅敤鍩�
+ using (var scope = App.GetRequiredService<IServiceScopeFactory>().CreateScope())
+ {
+ var rep = scope.ServiceProvider.GetRequiredService<IRepository<DbAuditLog, LogDbContextLocator>>();
+ rep.InsertNow(log);
+ }
}
}
}
--
Gitblit v1.9.1