重构优化套餐数据结构,修复提取计数问题

This commit is contained in:
2025-12-10 20:07:33 +08:00
parent c8c86081d9
commit 05fba68b3e
11 changed files with 310 additions and 250 deletions

View File

@@ -29,14 +29,13 @@ func newResourceLong(db *gorm.DB, opts ...gen.DOOption) resourceLong {
_resourceLong.ALL = field.NewAsterisk(tableName)
_resourceLong.ID = field.NewInt32(tableName, "id")
_resourceLong.ResourceID = field.NewInt32(tableName, "resource_id")
_resourceLong.Type = field.NewInt(tableName, "type")
_resourceLong.Live = field.NewInt32(tableName, "live")
_resourceLong.Expire = field.NewTime(tableName, "expire")
_resourceLong.Type = field.NewInt(tableName, "type")
_resourceLong.Quota = field.NewInt32(tableName, "quota")
_resourceLong.ExpireAt = field.NewTime(tableName, "expire_at")
_resourceLong.Used = field.NewInt32(tableName, "used")
_resourceLong.DailyLimit = field.NewInt32(tableName, "daily_limit")
_resourceLong.DailyUsed = field.NewInt32(tableName, "daily_used")
_resourceLong.DailyLast = field.NewTime(tableName, "daily_last")
_resourceLong.Daily = field.NewInt32(tableName, "daily")
_resourceLong.LastAt = field.NewTime(tableName, "last_at")
_resourceLong.fillFieldMap()
@@ -49,14 +48,13 @@ type resourceLong struct {
ALL field.Asterisk
ID field.Int32
ResourceID field.Int32
Type field.Int
Live field.Int32
Expire field.Time
Type field.Int
Quota field.Int32
ExpireAt field.Time
Used field.Int32
DailyLimit field.Int32
DailyUsed field.Int32
DailyLast field.Time
Daily field.Int32
LastAt field.Time
fieldMap map[string]field.Expr
}
@@ -75,14 +73,13 @@ func (r *resourceLong) updateTableName(table string) *resourceLong {
r.ALL = field.NewAsterisk(table)
r.ID = field.NewInt32(table, "id")
r.ResourceID = field.NewInt32(table, "resource_id")
r.Type = field.NewInt(table, "type")
r.Live = field.NewInt32(table, "live")
r.Expire = field.NewTime(table, "expire")
r.Type = field.NewInt(table, "type")
r.Quota = field.NewInt32(table, "quota")
r.ExpireAt = field.NewTime(table, "expire_at")
r.Used = field.NewInt32(table, "used")
r.DailyLimit = field.NewInt32(table, "daily_limit")
r.DailyUsed = field.NewInt32(table, "daily_used")
r.DailyLast = field.NewTime(table, "daily_last")
r.Daily = field.NewInt32(table, "daily")
r.LastAt = field.NewTime(table, "last_at")
r.fillFieldMap()
@@ -99,17 +96,16 @@ func (r *resourceLong) GetFieldByName(fieldName string) (field.OrderExpr, bool)
}
func (r *resourceLong) fillFieldMap() {
r.fieldMap = make(map[string]field.Expr, 10)
r.fieldMap = make(map[string]field.Expr, 9)
r.fieldMap["id"] = r.ID
r.fieldMap["resource_id"] = r.ResourceID
r.fieldMap["type"] = r.Type
r.fieldMap["live"] = r.Live
r.fieldMap["expire"] = r.Expire
r.fieldMap["type"] = r.Type
r.fieldMap["quota"] = r.Quota
r.fieldMap["expire_at"] = r.ExpireAt
r.fieldMap["used"] = r.Used
r.fieldMap["daily_limit"] = r.DailyLimit
r.fieldMap["daily_used"] = r.DailyUsed
r.fieldMap["daily_last"] = r.DailyLast
r.fieldMap["daily"] = r.Daily
r.fieldMap["last_at"] = r.LastAt
}
func (r resourceLong) clone(db *gorm.DB) resourceLong {

View File

@@ -29,14 +29,13 @@ func newResourceShort(db *gorm.DB, opts ...gen.DOOption) resourceShort {
_resourceShort.ALL = field.NewAsterisk(tableName)
_resourceShort.ID = field.NewInt32(tableName, "id")
_resourceShort.ResourceID = field.NewInt32(tableName, "resource_id")
_resourceShort.Type = field.NewInt(tableName, "type")
_resourceShort.Live = field.NewInt32(tableName, "live")
_resourceShort.Expire = field.NewTime(tableName, "expire")
_resourceShort.Type = field.NewInt(tableName, "type")
_resourceShort.Quota = field.NewInt32(tableName, "quota")
_resourceShort.ExpireAt = field.NewTime(tableName, "expire_at")
_resourceShort.Used = field.NewInt32(tableName, "used")
_resourceShort.DailyLimit = field.NewInt32(tableName, "daily_limit")
_resourceShort.DailyUsed = field.NewInt32(tableName, "daily_used")
_resourceShort.DailyLast = field.NewTime(tableName, "daily_last")
_resourceShort.Daily = field.NewInt32(tableName, "daily")
_resourceShort.LastAt = field.NewTime(tableName, "last_at")
_resourceShort.fillFieldMap()
@@ -49,14 +48,13 @@ type resourceShort struct {
ALL field.Asterisk
ID field.Int32
ResourceID field.Int32
Type field.Int
Live field.Int32
Expire field.Time
Type field.Int
Quota field.Int32
ExpireAt field.Time
Used field.Int32
DailyLimit field.Int32
DailyUsed field.Int32
DailyLast field.Time
Daily field.Int32
LastAt field.Time
fieldMap map[string]field.Expr
}
@@ -75,14 +73,13 @@ func (r *resourceShort) updateTableName(table string) *resourceShort {
r.ALL = field.NewAsterisk(table)
r.ID = field.NewInt32(table, "id")
r.ResourceID = field.NewInt32(table, "resource_id")
r.Type = field.NewInt(table, "type")
r.Live = field.NewInt32(table, "live")
r.Expire = field.NewTime(table, "expire")
r.Type = field.NewInt(table, "type")
r.Quota = field.NewInt32(table, "quota")
r.ExpireAt = field.NewTime(table, "expire_at")
r.Used = field.NewInt32(table, "used")
r.DailyLimit = field.NewInt32(table, "daily_limit")
r.DailyUsed = field.NewInt32(table, "daily_used")
r.DailyLast = field.NewTime(table, "daily_last")
r.Daily = field.NewInt32(table, "daily")
r.LastAt = field.NewTime(table, "last_at")
r.fillFieldMap()
@@ -99,17 +96,16 @@ func (r *resourceShort) GetFieldByName(fieldName string) (field.OrderExpr, bool)
}
func (r *resourceShort) fillFieldMap() {
r.fieldMap = make(map[string]field.Expr, 10)
r.fieldMap = make(map[string]field.Expr, 9)
r.fieldMap["id"] = r.ID
r.fieldMap["resource_id"] = r.ResourceID
r.fieldMap["type"] = r.Type
r.fieldMap["live"] = r.Live
r.fieldMap["expire"] = r.Expire
r.fieldMap["type"] = r.Type
r.fieldMap["quota"] = r.Quota
r.fieldMap["expire_at"] = r.ExpireAt
r.fieldMap["used"] = r.Used
r.fieldMap["daily_limit"] = r.DailyLimit
r.fieldMap["daily_used"] = r.DailyUsed
r.fieldMap["daily_last"] = r.DailyLast
r.fieldMap["daily"] = r.Daily
r.fieldMap["last_at"] = r.LastAt
}
func (r resourceShort) clone(db *gorm.DB) resourceShort {