2024-11-06 10:47:56 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
2024-11-06 12:35:16 +00:00
|
|
|
"leafdev.top/Ecosystem/recommender/internal/entity"
|
2024-11-06 10:47:56 +00:00
|
|
|
|
|
|
|
"gorm.io/gen"
|
|
|
|
)
|
|
|
|
|
|
|
|
// Dynamic SQL
|
|
|
|
//type Querier interface {
|
|
|
|
// // SELECT * FROM @@table WHERE name = @name{{if role !=""}} AND role = @role{{end}}
|
|
|
|
// FilterWithNameAndRole(name, role string) ([]gen.T, error)
|
|
|
|
//}
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
//app, err := cmd.CreateApp()
|
|
|
|
//if err != nil {
|
|
|
|
// panic(err)
|
|
|
|
//}
|
|
|
|
g := gen.NewGenerator(gen.Config{
|
|
|
|
OutPath: "../../internal/dao",
|
|
|
|
Mode: gen.WithoutContext | gen.WithDefaultQuery | gen.WithQueryInterface, // generate mode
|
|
|
|
})
|
|
|
|
|
|
|
|
//g.UseDB(app.GORM)
|
|
|
|
|
|
|
|
g.ApplyBasic(
|
2024-11-07 10:09:13 +00:00
|
|
|
entity.Post{},
|
|
|
|
entity.PostTag{},
|
|
|
|
entity.Tag{},
|
|
|
|
entity.TagMapping{},
|
|
|
|
entity.UserLike{},
|
|
|
|
entity.Application{},
|
|
|
|
entity.ApplicationToken{},
|
|
|
|
entity.UserTagScore{},
|
2024-11-07 18:25:15 +00:00
|
|
|
entity.Category{},
|
2024-11-09 16:11:00 +00:00
|
|
|
entity.ExternalUser{},
|
2024-11-06 10:47:56 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
// Generate Type Safe API with Dynamic SQL defined on Querier interface for `model.User` and `model.Company`
|
|
|
|
//g.ApplyInterface(func(Querier) {}, model.User{}, model.Company{})
|
|
|
|
|
|
|
|
g.Execute()
|
|
|
|
}
|