From 8d5de98218eb6ebe63fcbfa8ba668409ca3c9672 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Sun, 26 Mar 2023 20:03:44 +0800 Subject: [PATCH] record transaction created ip --- pkg/api/transactions.go | 5 +++-- pkg/models/transaction.go | 1 + pkg/services/transactions.go | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/api/transactions.go b/pkg/api/transactions.go index 57562cbe..6961329f 100644 --- a/pkg/api/transactions.go +++ b/pkg/api/transactions.go @@ -632,7 +632,7 @@ func (a *TransactionsApi) TransactionCreateHandler(c *core.Context) (interface{} return nil, errs.ErrUserNotFound } - transaction := a.createNewTransactionModel(uid, &transactionCreateReq) + transaction := a.createNewTransactionModel(uid, &transactionCreateReq, c.ClientIP()) transactionEditable := user.CanEditTransactionByTransactionTime(transaction.TransactionTime, transactionCreateReq.UtcOffset) if !transactionEditable { @@ -1016,7 +1016,7 @@ func (a *TransactionsApi) getTransactionListResult(c *core.Context, user *models return result, nil } -func (a *TransactionsApi) createNewTransactionModel(uid int64, transactionCreateReq *models.TransactionCreateRequest) *models.Transaction { +func (a *TransactionsApi) createNewTransactionModel(uid int64, transactionCreateReq *models.TransactionCreateRequest, clientIp string) *models.Transaction { var transactionDbType models.TransactionDbType if transactionCreateReq.Type == models.TRANSACTION_TYPE_MODIFY_BALANCE { @@ -1039,6 +1039,7 @@ func (a *TransactionsApi) createNewTransactionModel(uid int64, transactionCreate Amount: transactionCreateReq.SourceAmount, HideAmount: transactionCreateReq.HideAmount, Comment: transactionCreateReq.Comment, + CreatedIp: clientIp, } if transactionCreateReq.Type == models.TRANSACTION_TYPE_TRANSFER { diff --git a/pkg/models/transaction.go b/pkg/models/transaction.go index 933b0e01..40f13d81 100644 --- a/pkg/models/transaction.go +++ b/pkg/models/transaction.go @@ -48,6 +48,7 @@ type Transaction struct { RelatedAccountAmount int64 `xorm:"NOT NULL"` HideAmount bool `xorm:"NOT NULL"` Comment string `xorm:"VARCHAR(255) NOT NULL"` + CreatedIp string `xorm:"VARCHAR(39)"` CreatedUnixTime int64 UpdatedUnixTime int64 DeletedUnixTime int64 diff --git a/pkg/services/transactions.go b/pkg/services/transactions.go index dceee420..94fd2cc1 100644 --- a/pkg/services/transactions.go +++ b/pkg/services/transactions.go @@ -933,6 +933,7 @@ func (s *TransactionService) GetRelatedTransferTransaction(originalTransaction * RelatedAccountId: originalTransaction.AccountId, RelatedAccountAmount: originalTransaction.Amount, Comment: originalTransaction.Comment, + CreatedIp: originalTransaction.CreatedIp, CreatedUnixTime: originalTransaction.CreatedUnixTime, UpdatedUnixTime: originalTransaction.UpdatedUnixTime, DeletedUnixTime: originalTransaction.DeletedUnixTime,