code refactor
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
package fireflyIII
|
package fireflyIII
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"strings"
|
||||||
|
|
||||||
"github.com/mayswind/ezbookkeeping/pkg/converters/datatable"
|
"github.com/mayswind/ezbookkeeping/pkg/converters/datatable"
|
||||||
"github.com/mayswind/ezbookkeeping/pkg/errs"
|
"github.com/mayswind/ezbookkeeping/pkg/errs"
|
||||||
"github.com/mayswind/ezbookkeeping/pkg/models"
|
"github.com/mayswind/ezbookkeeping/pkg/models"
|
||||||
@@ -30,7 +32,11 @@ func (p *fireflyIIITransactionDataRowParser) Parse(data map[datatable.Transactio
|
|||||||
|
|
||||||
// parse long date time and timezone
|
// parse long date time and timezone
|
||||||
if rowData[datatable.TRANSACTION_DATA_TABLE_TRANSACTION_TIME] != "" {
|
if rowData[datatable.TRANSACTION_DATA_TABLE_TRANSACTION_TIME] != "" {
|
||||||
dateTime, err := utils.ParseFromLongDateTimeWithTimezone(rowData[datatable.TRANSACTION_DATA_TABLE_TRANSACTION_TIME])
|
if strings.Index(rowData[datatable.TRANSACTION_DATA_TABLE_TRANSACTION_TIME], "T") <= 0 {
|
||||||
|
return nil, false, errs.ErrTransactionTimeInvalid
|
||||||
|
}
|
||||||
|
|
||||||
|
dateTime, err := utils.ParseFromLongDateTimeWithTimezone(strings.ReplaceAll(rowData[datatable.TRANSACTION_DATA_TABLE_TRANSACTION_TIME], "T", " "))
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, false, errs.ErrTransactionTimeInvalid
|
return nil, false, errs.ErrTransactionTimeInvalid
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import (
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
longDateTimeFormat = "2006-01-02 15:04:05"
|
longDateTimeFormat = "2006-01-02 15:04:05"
|
||||||
longDateTimeWithTimezoneFormat = "2006-01-02T15:04:05Z07:00"
|
longDateTimeWithTimezoneFormat = "2006-01-02 15:04:05Z07:00"
|
||||||
longDateTimeWithoutSecondFormat = "2006-01-02 15:04"
|
longDateTimeWithoutSecondFormat = "2006-01-02 15:04"
|
||||||
shortDateTimeFormat = "2006-1-2 15:4:5"
|
shortDateTimeFormat = "2006-1-2 15:4:5"
|
||||||
yearMonthDateTimeFormat = "2006-01"
|
yearMonthDateTimeFormat = "2006-01"
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ func TestParseFromLongDateTime(t *testing.T) {
|
|||||||
|
|
||||||
func TestParseFromLongDateTimeWithTimezone(t *testing.T) {
|
func TestParseFromLongDateTimeWithTimezone(t *testing.T) {
|
||||||
expectedValue := int64(1617238883)
|
expectedValue := int64(1617238883)
|
||||||
actualTime, err := ParseFromLongDateTimeWithTimezone("2021-04-01T06:01:23+05:00")
|
actualTime, err := ParseFromLongDateTimeWithTimezone("2021-04-01 06:01:23+05:00")
|
||||||
assert.Equal(t, nil, err)
|
assert.Equal(t, nil, err)
|
||||||
|
|
||||||
actualValue := actualTime.Unix()
|
actualValue := actualTime.Unix()
|
||||||
|
|||||||
Reference in New Issue
Block a user