optimize user-get cli output format

This commit is contained in:
MaysWind
2021-04-17 23:08:04 +08:00
parent bf1db401fe
commit 4dc9110029
2 changed files with 78 additions and 2 deletions
+29 -2
View File
@@ -193,7 +193,7 @@ func addNewUser(c *cli.Context) error {
return err
}
utils.PrintObjectFields(user)
printUserInfo(user)
return nil
}
@@ -213,7 +213,7 @@ func getUserInfo(c *cli.Context) error {
return err
}
utils.PrintObjectFields(user)
printUserInfo(user)
return nil
}
@@ -391,6 +391,33 @@ func exportUserTransaction(c *cli.Context) error {
return nil
}
func printUserInfo(user *models.User) {
fmt.Printf("[Uid] %d\n", user.Uid)
fmt.Printf("[Username] %s\n", user.Username)
fmt.Printf("[Email] %s\n", user.Email)
fmt.Printf("[Nickname] %s\n", user.Nickname)
fmt.Printf("[Password] %s\n", user.Password)
fmt.Printf("[Salt] %s\n", user.Salt)
fmt.Printf("[DefaultCurrency] %s\n", user.DefaultCurrency)
fmt.Printf("[FirstDayOfWeek] %s\n", user.FirstDayOfWeek)
fmt.Printf("[TransactionEditScope] %s\n", user.TransactionEditScope)
fmt.Printf("[Deleted] %t\n", user.Deleted)
fmt.Printf("[EmailVerified] %t\n", user.EmailVerified)
fmt.Printf("[CreatedAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(user.CreatedUnixTime), user.CreatedUnixTime)
if user.UpdatedUnixTime > 0 {
fmt.Printf("[UpdatedAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(user.UpdatedUnixTime), user.UpdatedUnixTime)
}
if user.DeletedUnixTime > 0 {
fmt.Printf("[DeletedAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(user.DeletedUnixTime), user.DeletedUnixTime)
}
if user.LastLoginUnixTime > 0 {
fmt.Printf("[LastLoginAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(user.LastLoginUnixTime), user.LastLoginUnixTime)
}
}
func printTokenInfo(token *models.TokenRecord) {
fmt.Printf("[CreatedAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(token.CreatedUnixTime), token.CreatedUnixTime)
fmt.Printf("[ExpiredAt] %s (%d)\n", utils.FormatUnixTimeToLongDateTimeInServerTimezone(token.ExpiredUnixTime), token.ExpiredUnixTime)
+49
View File
@@ -1,6 +1,7 @@
package models
import (
"fmt"
"time"
"github.com/mayswind/ezbookkeeping/pkg/utils"
@@ -21,6 +22,30 @@ const (
WEEKDAY_INVALID WeekDay = 255
)
// String returns a textual representation of the week day enum
func (d WeekDay) String() string {
switch d {
case WEEKDAY_SUNDAY:
return "Sunday"
case WEEKDAY_MONDAY:
return "Monday"
case WEEKDAY_TUESDAY:
return "Tuesday"
case WEEKDAY_WEDNESDAY:
return "Wednesday"
case WEEKDAY_THURSDAY:
return "Thursday"
case WEEKDAY_FRIDAY:
return "Friday"
case WEEKDAY_SATURDAY:
return "Saturday"
case WEEKDAY_INVALID:
return "Invalid"
default:
return fmt.Sprintf("Invalid(%d)", int(d))
}
}
// TransactionEditScope represents the scope which transaction can be edited
type TransactionEditScope byte
@@ -36,6 +61,30 @@ const (
TRANSACTION_EDIT_SCOPE_INVALID TransactionEditScope = 255
)
// String returns a textual representation of the editable transaction scopes enum
func (s TransactionEditScope) String() string {
switch s {
case TRANSACTION_EDIT_SCOPE_NONE:
return "None"
case TRANSACTION_EDIT_SCOPE_ALL:
return "All"
case TRANSACTION_EDIT_SCOPE_TODAY_OR_LATER:
return "TodayOrLater"
case TRANSACTION_EDIT_SCOPE_LAST_24H_OR_LATER:
return "Last24HourOrLater"
case TRANSACTION_EDIT_SCOPE_THIS_WEEK_OR_LATER:
return "ThisWeekOrLater"
case TRANSACTION_EDIT_SCOPE_THIS_MONTH_OR_LATER:
return "ThisMonthOrLater"
case TRANSACTION_EDIT_SCOPE_THIS_YEAR_OR_LATER:
return "ThisYearOrLater"
case TRANSACTION_EDIT_SCOPE_INVALID:
return "Invalid"
default:
return fmt.Sprintf("Invalid(%d)", int(s))
}
}
// User represents user data stored in database
type User struct {
Uid int64 `xorm:"PK"`