fix: 修复交易时间解析逻辑
- TransactionDate 和 TransactionTime 正确组合 - 移除 else if 改为独立 if,支持日期+时间 - CreateTransactionAsync 返回实际交易时间而非当前时间
This commit is contained in:
parent
7bf687323d
commit
0579e2f47a
@ -657,15 +657,15 @@ public class PortfolioService : IPortfolioService
|
||||
{
|
||||
if (DateTime.TryParse(request.TransactionDate, out var parsedDate))
|
||||
{
|
||||
// 如果只传了日期,时间部分默认用当前时间
|
||||
transactionTime = parsedDate.Date + DateTime.Now.TimeOfDay;
|
||||
transactionTime = parsedDate.Date;
|
||||
}
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(request.TransactionTime))
|
||||
// 组合时间部分
|
||||
if (!string.IsNullOrEmpty(request.TransactionTime))
|
||||
{
|
||||
if (DateTime.TryParse(request.TransactionTime, out var parsedTime))
|
||||
if (TimeSpan.TryParse(request.TransactionTime, out var parsedTime))
|
||||
{
|
||||
transactionTime = parsedTime;
|
||||
transactionTime = transactionTime.Date + parsedTime;
|
||||
}
|
||||
}
|
||||
|
||||
@ -821,12 +821,16 @@ public class PortfolioService : IPortfolioService
|
||||
request.PortfolioId = portfolioId;
|
||||
var response = await CreateTransaction(request, userId);
|
||||
|
||||
// 使用实际交易时间
|
||||
var transactionDate = request.TransactionDate ?? DateTime.Now.ToString("yyyy-MM-dd");
|
||||
var transactionTime = request.TransactionTime ?? DateTime.Now.ToString("HH:mm");
|
||||
|
||||
return new TransactionItem
|
||||
{
|
||||
Id = response.Id,
|
||||
PortfolioId = portfolioId,
|
||||
Date = DateTime.Now.ToString("yyyy-MM-dd"),
|
||||
Time = DateTime.Now.ToString("HH:mm:ss"),
|
||||
Date = transactionDate,
|
||||
Time = transactionTime,
|
||||
Type = request.Type,
|
||||
StockCode = request.StockCode,
|
||||
Amount = response.TotalAmount,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user