This commit is contained in:
2025-12-09 18:55:28 +08:00
parent 8d00d67540
commit c23ab8338b
209 changed files with 5445 additions and 3963 deletions

View File

@@ -8,9 +8,11 @@ import (
"fmt"
"strings"
"reflect"
"time"
"github.com/Masterminds/squirrel"
"github.com/google/uuid"
"github.com/pkg/errors"
"github.com/zeromicro/go-zero/core/stores/builder"
"github.com/zeromicro/go-zero/core/stores/cache"
@@ -23,7 +25,7 @@ import (
var (
agentFreezeTaskFieldNames = builder.RawFieldNames(&AgentFreezeTask{})
agentFreezeTaskRows = strings.Join(agentFreezeTaskFieldNames, ",")
agentFreezeTaskRowsExpectAutoSet = strings.Join(stringx.Remove(agentFreezeTaskFieldNames, "`id`", "`create_time`", "`update_time`"), ",")
agentFreezeTaskRowsExpectAutoSet = strings.Join(stringx.Remove(agentFreezeTaskFieldNames, "`create_time`", "`update_time`"), ",")
agentFreezeTaskRowsWithPlaceHolder = strings.Join(stringx.Remove(agentFreezeTaskFieldNames, "`id`", "`create_time`", "`update_time`"), "=?,") + "=?"
cacheYccAgentFreezeTaskIdPrefix = "cache:ycc:agentFreezeTask:id:"
@@ -32,7 +34,7 @@ var (
type (
agentFreezeTaskModel interface {
Insert(ctx context.Context, session sqlx.Session, data *AgentFreezeTask) (sql.Result, error)
FindOne(ctx context.Context, id int64) (*AgentFreezeTask, error)
FindOne(ctx context.Context, id string) (*AgentFreezeTask, error)
Update(ctx context.Context, session sqlx.Session, data *AgentFreezeTask) (sql.Result, error)
UpdateWithVersion(ctx context.Context, session sqlx.Session, data *AgentFreezeTask) error
Trans(ctx context.Context, fn func(context context.Context, session sqlx.Session) error) error
@@ -45,7 +47,7 @@ type (
FindPageListByPageWithTotal(ctx context.Context, rowBuilder squirrel.SelectBuilder, page, pageSize int64, orderBy string) ([]*AgentFreezeTask, int64, error)
FindPageListByIdDESC(ctx context.Context, rowBuilder squirrel.SelectBuilder, preMinId, pageSize int64) ([]*AgentFreezeTask, error)
FindPageListByIdASC(ctx context.Context, rowBuilder squirrel.SelectBuilder, preMaxId, pageSize int64) ([]*AgentFreezeTask, error)
Delete(ctx context.Context, session sqlx.Session, id int64) error
Delete(ctx context.Context, session sqlx.Session, id string) error
}
defaultAgentFreezeTaskModel struct {
@@ -54,10 +56,10 @@ type (
}
AgentFreezeTask struct {
Id int64 `db:"id"` // 主键ID
AgentId int64 `db:"agent_id"` // 代理ID
OrderId int64 `db:"order_id"` // 订单ID
CommissionId int64 `db:"commission_id"` // 佣金记录ID
Id string `db:"id"`
AgentId string `db:"agent_id"`
OrderId string `db:"order_id"`
CommissionId string `db:"commission_id"`
FreezeAmount float64 `db:"freeze_amount"` // 冻结金额
OrderPrice float64 `db:"order_price"` // 订单单价
FreezeRatio float64 `db:"freeze_ratio"` // 冻结比例例如0.1000表示10%
@@ -83,17 +85,34 @@ func newAgentFreezeTaskModel(conn sqlx.SqlConn, c cache.CacheConf) *defaultAgent
func (m *defaultAgentFreezeTaskModel) Insert(ctx context.Context, session sqlx.Session, data *AgentFreezeTask) (sql.Result, error) {
data.DelState = globalkey.DelStateNo
m.insertUUID(data)
yccAgentFreezeTaskIdKey := fmt.Sprintf("%s%v", cacheYccAgentFreezeTaskIdPrefix, data.Id)
return m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, agentFreezeTaskRowsExpectAutoSet)
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, agentFreezeTaskRowsExpectAutoSet)
if session != nil {
return session.ExecCtx(ctx, query, data.AgentId, data.OrderId, data.CommissionId, data.FreezeAmount, data.OrderPrice, data.FreezeRatio, data.Status, data.FreezeTime, data.UnfreezeTime, data.ActualUnfreezeTime, data.Remark, data.DeleteTime, data.DelState, data.Version)
return session.ExecCtx(ctx, query, data.Id, data.AgentId, data.OrderId, data.CommissionId, data.FreezeAmount, data.OrderPrice, data.FreezeRatio, data.Status, data.FreezeTime, data.UnfreezeTime, data.ActualUnfreezeTime, data.Remark, data.DeleteTime, data.DelState, data.Version)
}
return conn.ExecCtx(ctx, query, data.AgentId, data.OrderId, data.CommissionId, data.FreezeAmount, data.OrderPrice, data.FreezeRatio, data.Status, data.FreezeTime, data.UnfreezeTime, data.ActualUnfreezeTime, data.Remark, data.DeleteTime, data.DelState, data.Version)
return conn.ExecCtx(ctx, query, data.Id, data.AgentId, data.OrderId, data.CommissionId, data.FreezeAmount, data.OrderPrice, data.FreezeRatio, data.Status, data.FreezeTime, data.UnfreezeTime, data.ActualUnfreezeTime, data.Remark, data.DeleteTime, data.DelState, data.Version)
}, yccAgentFreezeTaskIdKey)
}
func (m *defaultAgentFreezeTaskModel) insertUUID(data *AgentFreezeTask) {
t := reflect.TypeOf(data).Elem()
v := reflect.ValueOf(data).Elem()
for i := 0; i < t.NumField(); i++ {
sf := t.Field(i)
if sf.Tag.Get("db") == "id" {
f := v.Field(i)
if f.IsValid() && f.CanSet() && f.Kind() == reflect.String {
if f.String() == "" {
f.SetString(uuid.NewString())
}
}
break
}
}
}
func (m *defaultAgentFreezeTaskModel) FindOne(ctx context.Context, id int64) (*AgentFreezeTask, error) {
func (m *defaultAgentFreezeTaskModel) FindOne(ctx context.Context, id string) (*AgentFreezeTask, error) {
yccAgentFreezeTaskIdKey := fmt.Sprintf("%s%v", cacheYccAgentFreezeTaskIdPrefix, id)
var resp AgentFreezeTask
err := m.QueryRowCtx(ctx, &resp, yccAgentFreezeTaskIdKey, func(ctx context.Context, conn sqlx.SqlConn, v interface{}) error {
@@ -353,7 +372,7 @@ func (m *defaultAgentFreezeTaskModel) Trans(ctx context.Context, fn func(ctx con
func (m *defaultAgentFreezeTaskModel) SelectBuilder() squirrel.SelectBuilder {
return squirrel.Select().From(m.table)
}
func (m *defaultAgentFreezeTaskModel) Delete(ctx context.Context, session sqlx.Session, id int64) error {
func (m *defaultAgentFreezeTaskModel) Delete(ctx context.Context, session sqlx.Session, id string) error {
yccAgentFreezeTaskIdKey := fmt.Sprintf("%s%v", cacheYccAgentFreezeTaskIdPrefix, id)
_, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)