feat: add payout account review flow

This commit is contained in:
2026-01-16 15:17:43 +08:00
parent daaacc3fa4
commit 028c462eaa
21 changed files with 1100 additions and 151 deletions

View File

@@ -28,12 +28,16 @@ func newPayoutAccount(db *gorm.DB, opts ...gen.DOOption) payoutAccountQuery {
_payoutAccountQuery.ID = field.NewInt64(tableName, "id")
_payoutAccountQuery.TenantID = field.NewInt64(tableName, "tenant_id")
_payoutAccountQuery.UserID = field.NewInt64(tableName, "user_id")
_payoutAccountQuery.Type = field.NewString(tableName, "type")
_payoutAccountQuery.Type = field.NewField(tableName, "type")
_payoutAccountQuery.Name = field.NewString(tableName, "name")
_payoutAccountQuery.Account = field.NewString(tableName, "account")
_payoutAccountQuery.Realname = field.NewString(tableName, "realname")
_payoutAccountQuery.CreatedAt = field.NewTime(tableName, "created_at")
_payoutAccountQuery.UpdatedAt = field.NewTime(tableName, "updated_at")
_payoutAccountQuery.Status = field.NewField(tableName, "status")
_payoutAccountQuery.ReviewedBy = field.NewInt64(tableName, "reviewed_by")
_payoutAccountQuery.ReviewedAt = field.NewTime(tableName, "reviewed_at")
_payoutAccountQuery.ReviewReason = field.NewString(tableName, "review_reason")
_payoutAccountQuery.fillFieldMap()
@@ -43,16 +47,20 @@ func newPayoutAccount(db *gorm.DB, opts ...gen.DOOption) payoutAccountQuery {
type payoutAccountQuery struct {
payoutAccountQueryDo payoutAccountQueryDo
ALL field.Asterisk
ID field.Int64
TenantID field.Int64
UserID field.Int64
Type field.String
Name field.String
Account field.String
Realname field.String
CreatedAt field.Time
UpdatedAt field.Time
ALL field.Asterisk
ID field.Int64
TenantID field.Int64
UserID field.Int64
Type field.Field
Name field.String
Account field.String
Realname field.String
CreatedAt field.Time
UpdatedAt field.Time
Status field.Field // 结算账户审核状态;用途:控制提现账户可用性;默认 pending。
ReviewedBy field.Int64 // 结算账户审核操作者ID用途审计追踪默认 0 表示未审核。
ReviewedAt field.Time // 结算账户审核时间;用途:记录审核完成时间;未审核为空。
ReviewReason field.String // 结算账户审核说明;用途:驳回原因或备注;默认空字符串。
fieldMap map[string]field.Expr
}
@@ -72,12 +80,16 @@ func (p *payoutAccountQuery) updateTableName(table string) *payoutAccountQuery {
p.ID = field.NewInt64(table, "id")
p.TenantID = field.NewInt64(table, "tenant_id")
p.UserID = field.NewInt64(table, "user_id")
p.Type = field.NewString(table, "type")
p.Type = field.NewField(table, "type")
p.Name = field.NewString(table, "name")
p.Account = field.NewString(table, "account")
p.Realname = field.NewString(table, "realname")
p.CreatedAt = field.NewTime(table, "created_at")
p.UpdatedAt = field.NewTime(table, "updated_at")
p.Status = field.NewField(table, "status")
p.ReviewedBy = field.NewInt64(table, "reviewed_by")
p.ReviewedAt = field.NewTime(table, "reviewed_at")
p.ReviewReason = field.NewString(table, "review_reason")
p.fillFieldMap()
@@ -110,7 +122,7 @@ func (p *payoutAccountQuery) GetFieldByName(fieldName string) (field.OrderExpr,
}
func (p *payoutAccountQuery) fillFieldMap() {
p.fieldMap = make(map[string]field.Expr, 9)
p.fieldMap = make(map[string]field.Expr, 13)
p.fieldMap["id"] = p.ID
p.fieldMap["tenant_id"] = p.TenantID
p.fieldMap["user_id"] = p.UserID
@@ -120,6 +132,10 @@ func (p *payoutAccountQuery) fillFieldMap() {
p.fieldMap["realname"] = p.Realname
p.fieldMap["created_at"] = p.CreatedAt
p.fieldMap["updated_at"] = p.UpdatedAt
p.fieldMap["status"] = p.Status
p.fieldMap["reviewed_by"] = p.ReviewedBy
p.fieldMap["reviewed_at"] = p.ReviewedAt
p.fieldMap["review_reason"] = p.ReviewReason
}
func (p payoutAccountQuery) clone(db *gorm.DB) payoutAccountQuery {