feat: 升级 samber/do v1 → v2
This commit is contained in:
+5
-4
@@ -8,8 +8,9 @@ import (
|
||||
"git.fsdpf.net/go/condition"
|
||||
"git.fsdpf.net/go/contracts"
|
||||
"git.fsdpf.net/go/db"
|
||||
"git.fsdpf.net/go/db/exp"
|
||||
"git.fsdpf.net/go/utils"
|
||||
"github.com/samber/do"
|
||||
"github.com/samber/do/v2"
|
||||
"github.com/samber/lo"
|
||||
"github.com/spf13/cast"
|
||||
)
|
||||
@@ -37,7 +38,7 @@ type OperationAccess struct {
|
||||
data map[string][]any
|
||||
}
|
||||
|
||||
func (o Operation) ToDBColumn(model contracts.Model, container *do.Injector) (column db.Expression, field reflect.StructField) {
|
||||
func (o Operation) ToDBColumn(model contracts.Model, container do.Injector) (column db.Expression, field reflect.StructField) {
|
||||
GetOrmConditions := do.MustInvoke[contracts.GetOrmConditions](container)
|
||||
|
||||
uuid := strings.ReplaceAll(o.Uuid, "-", "_")
|
||||
@@ -52,9 +53,9 @@ func (o Operation) ToDBColumn(model contracts.Model, container *do.Injector) (co
|
||||
}
|
||||
|
||||
if cond.IsEmpty() {
|
||||
column = db.Raw(pk + " as `u_" + uuid + "`")
|
||||
column = db.I(pk).As("u_" + uuid)
|
||||
} else {
|
||||
column = db.Raw("if(" + string(cond.ToSql(model)) + ", " + pk + ", 0) as `u_" + uuid + "`")
|
||||
column = exp.NewSQLFunctionExpression("IF", cond.ToSql(model), db.I(pk), 0).As("u_" + uuid)
|
||||
}
|
||||
|
||||
// 主键类型
|
||||
|
||||
Reference in New Issue
Block a user