From 2d5bac5bf5c3e99bc25e2747d49799d7a5002733 Mon Sep 17 00:00:00 2001 From: Rogee Date: Wed, 10 Sep 2025 16:32:51 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=88=A0=E9=99=A4=E4=B8=8D=E5=86=8D?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E7=9A=84=E6=A8=A1=E6=9D=BF=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=92=8C=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81=EF=BC=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E9=A1=B9=E7=9B=AE=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/database/.transform.yaml.raw | 6 +++ templates/project/database/conds/conds.go.tpl | 11 ----- templates/project/database/database.go.tpl | 11 ----- .../project/database/fields/common.go.tpl | 45 ------------------- .../project/database/schemas/-gitkeep.tpl | 0 templates/project/database/transform.yaml.tpl | 13 ------ templates/project/docs/swagger.json.raw | 2 + 7 files changed, 8 insertions(+), 80 deletions(-) create mode 100755 templates/project/database/.transform.yaml.raw delete mode 100644 templates/project/database/conds/conds.go.tpl delete mode 100644 templates/project/database/fields/common.go.tpl delete mode 100644 templates/project/database/schemas/-gitkeep.tpl delete mode 100755 templates/project/database/transform.yaml.tpl create mode 100755 templates/project/docs/swagger.json.raw diff --git a/templates/project/database/.transform.yaml.raw b/templates/project/database/.transform.yaml.raw new file mode 100755 index 0000000..b30c655 --- /dev/null +++ b/templates/project/database/.transform.yaml.raw @@ -0,0 +1,6 @@ +ignores: + - migrations +imports: + - go.ipao.vip/gen +field_type: +field_relate: \ No newline at end of file diff --git a/templates/project/database/conds/conds.go.tpl b/templates/project/database/conds/conds.go.tpl deleted file mode 100644 index dc56265..0000000 --- a/templates/project/database/conds/conds.go.tpl +++ /dev/null @@ -1,11 +0,0 @@ -package conds - -import ( - . "github.com/go-jet/jet/v2/postgres" -) - -type Cond func(BoolExpression) BoolExpression - -func Default() BoolExpression { - return BoolExp(Bool(true)) -} diff --git a/templates/project/database/database.go.tpl b/templates/project/database/database.go.tpl index 39c3f69..573c633 100644 --- a/templates/project/database/database.go.tpl +++ b/templates/project/database/database.go.tpl @@ -5,22 +5,11 @@ import ( "database/sql" "embed" "fmt" - - "github.com/go-jet/jet/v2/qrm" ) //go:embed migrations/* var MigrationFS embed.FS -type CtxDB struct{} - -func FromContext(ctx context.Context, db *sql.DB) qrm.DB { - if tx, ok := ctx.Value(CtxDB{}).(*sql.Tx); ok { - return tx - } - return db -} - func Truncate(ctx context.Context, db *sql.DB, tableName ...string) error { for _, name := range tableName { sql := fmt.Sprintf("TRUNCATE TABLE %s RESTART IDENTITY", name) diff --git a/templates/project/database/fields/common.go.tpl b/templates/project/database/fields/common.go.tpl deleted file mode 100644 index a078b0f..0000000 --- a/templates/project/database/fields/common.go.tpl +++ /dev/null @@ -1,45 +0,0 @@ -package fields - -import ( - "database/sql/driver" - "encoding/json" - "errors" -) - -// implement sql.Scanner interface -type Json[T any] struct { - Data T `json:",inline"` -} - -func ToJson[T any](data T) Json[T] { - return Json[T]{Data: data} -} - -func (x *Json[T]) Scan(value interface{}) (err error) { - switch v := value.(type) { - case string: - return json.Unmarshal([]byte(v), &x) - case []byte: - return json.Unmarshal(v, &x) - case *string: - return json.Unmarshal([]byte(*v), &x) - } - return errors.New("Unknown type for ") -} - -func (x Json[T]) Value() (driver.Value, error) { - return json.Marshal(x.Data) -} - -func (x Json[T]) MarshalJSON() ([]byte, error) { - return json.Marshal(x.Data) -} - -func (x *Json[T]) UnmarshalJSON(data []byte) error { - var value T - if err := json.Unmarshal(data, &value); err != nil { - return err - } - x.Data = value - return nil -} diff --git a/templates/project/database/schemas/-gitkeep.tpl b/templates/project/database/schemas/-gitkeep.tpl deleted file mode 100644 index e69de29..0000000 diff --git a/templates/project/database/transform.yaml.tpl b/templates/project/database/transform.yaml.tpl deleted file mode 100755 index b80f25e..0000000 --- a/templates/project/database/transform.yaml.tpl +++ /dev/null @@ -1,13 +0,0 @@ -ignores: - jet: - - migrations - - river_leader - - river_job - - river_client - - river_client_queue - - river_queue - model: -types: -# users: # table name -# meta: UserMeta -# meta: Json[UserMeta] diff --git a/templates/project/docs/swagger.json.raw b/templates/project/docs/swagger.json.raw new file mode 100755 index 0000000..7a73a41 --- /dev/null +++ b/templates/project/docs/swagger.json.raw @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file