diff --git a/pkg/api/transactions.go b/pkg/api/transactions.go index 8e00e77d..399eab2c 100644 --- a/pkg/api/transactions.go +++ b/pkg/api/transactions.go @@ -70,7 +70,7 @@ func (a *TransactionsApi) TransactionListHandler(c *core.Context) (interface{}, sort.Sort(transactionResps.Items) if finalCount < len(transactions) { - transactionResps.NextTime = &transactions[finalCount].TransactionTime + transactionResps.NextTimeSequenceId = &transactions[finalCount].TransactionTime } return transactionResps, nil @@ -285,7 +285,7 @@ func (a *TransactionsApi) createNewTransactionModel(uid int64, transactionCreate Uid: uid, Type: transactionCreateReq.Type, CategoryId: transactionCreateReq.CategoryId, - TransactionTime: transactionCreateReq.Time, + TransactionTime: utils.GetMinTransactionTimeFromUnixTime(transactionCreateReq.Time), SourceAccountId: transactionCreateReq.SourceAccountId, DestinationAccountId: transactionCreateReq.DestinationAccountId, SourceAmount: transactionCreateReq.SourceAmount, diff --git a/pkg/models/transaction.go b/pkg/models/transaction.go index 1ac71e8d..747e004d 100644 --- a/pkg/models/transaction.go +++ b/pkg/models/transaction.go @@ -1,5 +1,7 @@ package models +import "github.com/mayswind/lab/pkg/utils" + type TransactionType byte const ( @@ -39,15 +41,15 @@ type TransactionCreateRequest struct { } type TransactionModifyRequest struct { - Id int64 `json:"id,string" binding:"required,min=1"` - CategoryId int64 `json:"categoryId,string"` - Time int64 `json:"time" binding:"required,min=1"` - SourceAccountId int64 `json:"sourceAccountId,string" binding:"required,min=1"` - DestinationAccountId int64 `json:"destinationAccountId,string" binding:"required,min=1"` - SourceAmount int64 `json:"sourceAmount"` - DestinationAmount int64 `json:"destinationAmount"` - TagIds []int64 `json:"tagIds,string"` - Comment string `json:"comment" binding:"max=255"` + Id int64 `json:"id,string" binding:"required,min=1"` + CategoryId int64 `json:"categoryId,string"` + Time int64 `json:"time" binding:"required,min=1"` + SourceAccountId int64 `json:"sourceAccountId,string" binding:"required,min=1"` + DestinationAccountId int64 `json:"destinationAccountId,string" binding:"required,min=1"` + SourceAmount int64 `json:"sourceAmount"` + DestinationAmount int64 `json:"destinationAmount"` + TagIds []int64 `json:"tagIds,string"` + Comment string `json:"comment" binding:"max=255"` } type TransactionListByMaxTimeRequest struct { @@ -72,6 +74,7 @@ type TransactionDeleteRequest struct { type TransactionInfoResponse struct { Id int64 `json:"id,string"` + TimeSequenceId int64 `json:"timeSequenceId,string"` Type TransactionType `json:"type"` CategoryId int64 `json:"categoryId,string"` Time int64 `json:"time"` @@ -84,16 +87,17 @@ type TransactionInfoResponse struct { } type TransactionInfoPageWrapperResponse struct { - Items TransactionInfoResponseSlice `json:"items"` - NextTime *int64 `json:"nextTime,string"` + Items TransactionInfoResponseSlice `json:"items"` + NextTimeSequenceId *int64 `json:"nextTimeSequenceId,string"` } func (c *Transaction) ToTransactionInfoResponse(tagIds []int64) *TransactionInfoResponse { return &TransactionInfoResponse{ Id: c.TransactionId, + TimeSequenceId: c.TransactionTime, Type: c.Type, CategoryId: c.CategoryId, - Time: c.TransactionTime, + Time: utils.GetUnixTimeFromTransactionTime(c.TransactionTime), SourceAccountId: c.SourceAccountId, DestinationAccountId: c.DestinationAccountId, SourceAmount: c.SourceAmount,