use github.com/bitbus/sqlx as sqlx package and upgrade github.com/alimy/yesql => v1.8.0

x/sqlx
Michael Li 11 months ago
parent 8c39062998
commit 6e712e689e
No known key found for this signature in database

@ -349,7 +349,7 @@ release/paopao-ce --no-default-features --features sqlite3,localoss,loggerfile,r
|`Frontend:Web` | 子服务 | 稳定 | 开启独立前端服务|
|`Frontend:EmbedWeb` | 子服务 | 稳定 | 开启内嵌于后端Web API服务中的前端服务|
|`Gorm` | 数据库 | 稳定(默认) | 使用[gorm](https://github.com/go-gorm/gorm)作为数据库的ORM默认使用 `Gorm` + `MySQL`组合|
|`Sqlx`| 数据库 | WIP | 使用[sqlx](https://github.com/jmoiron/sqlx)作为数据库的ORM|
|`Sqlx`| 数据库 | WIP | 使用[sqlx](https://github.com/bitbus/sqlx)作为数据库的ORM|
|`Sqlc`| 数据库 | WIP | 使用[sqlc](https://github.com/kyleconroy/sqlc)自动生成ORM代码|
|`MySQL`| 数据库 | 稳定(默认) | 使用MySQL作为数据库|
|`Postgres`| 数据库 | 稳定 | 使用PostgreSQL作为数据库|
@ -556,7 +556,7 @@ x/sqlx
| ----- | ----- | ----- | ----- |
|[`paopao-ce`](https://github.com/rocboss/paopao-ce/tree/dev)|paopao-ce 主发行版本|[ROC](https://github.com/rocboss 'ROC')|该分支 [数据逻辑层](https://github.com/rocboss/paopao-ce/tree/dev/internal/dao/jinzhu) 使用[gorm](https://github.com/go-gorm/gorm)作为数据逻辑层的ORM框架适配MySQL/PostgreSQL/Sqlite3数据库。|
|[`r/paopao-ce`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce)|paopao-ce 主分支预览版本|[ROC](https://github.com/rocboss 'ROC')<br/>[北野](https://github.com/alimy 'Michael Li')|该分支 [数据逻辑层](https://github.com/rocboss/paopao-ce/tree/dev/internal/dao/jinzhu) 使用[gorm](https://github.com/go-gorm/gorm)作为数据逻辑层的ORM框架适配MySQL/PostgreSQL/Sqlite3数据库。代码较`main`分支新,是主发行版本的前瞻预览版本。|
|[`r/paopao-ce-plus`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-plus)|paopao-ce-plus 发行版本|[北野](https://github.com/alimy 'Michael Li')|该分支 [数据逻辑层](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-plus/internal/dao/sakila) 使用[sqlx](https://github.com/jmoiron/sqlx)作为数据逻辑层的ORM框架专注于为MySQL/PostgreSQL/Sqlite3使用更优化的查询语句以提升数据检索效率。建议熟悉[sqlx](https://github.com/jmoiron/sqlx)的开发人员可以基于此版本来做 二次开发。|
|[`r/paopao-ce-plus`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-plus)|paopao-ce-plus 发行版本|[北野](https://github.com/alimy 'Michael Li')|该分支 [数据逻辑层](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-plus/internal/dao/sakila) 使用[sqlx](https://github.com/bitbus/sqlx)作为数据逻辑层的ORM框架专注于为MySQL/PostgreSQL/Sqlite3使用更优化的查询语句以提升数据检索效率。建议熟悉[sqlx](https://github.com/bitbus/sqlx)的开发人员可以基于此版本来做 二次开发。|
|[`r/paopao-ce-pro`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-pro)|paopao-ce-pro 发行版本|[北野](https://github.com/alimy 'Michael Li')|该分支 [数据逻辑层](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-pro/internal/dao/slonik) 使用[sqlc](https://github.com/kyleconroy/sqlc)作为sql语句生成器自动生成ORM代码专门针对特定数据库MySQL/PostgreSQL进行查询优化熟悉[sqlc](https://github.com/kyleconroy/sqlc)的开发人员可以基于此版本来做 二次开发。(另:分支目前只使用[pgx-v5](https://github.com/jackc/pgx)适配了PostgreSQL数据库后续或许会适配MySQL/TiDB数据库。)|
|[`r/paopao-ce-xtra`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-xtra)|paopao-ce-xtra 发行版本|[北野](https://github.com/alimy 'Michael Li')|该分支 是r/paopao-ce、r/paopao-ce-plus、r/paopao-ce-pro的合集|
|[`r/paopao-ce-mini`](https://github.com/rocboss/paopao-ce/tree/r/paopao-ce-mini)|paopao-ce-mini 发行版本|[北野](https://github.com/alimy 'Michael Li')|该分支是paopao-ce最小可用版本专注于个人部署、一键傻瓜式最简部署|

@ -66,7 +66,7 @@ release/paopao-ce --no-default-features --features sqlite3,localoss,loggerfile,r
|`Frontend:EmbedWeb` | 子服务 | 稳定 | 开启内嵌于后端Web API服务中的前端服务|
|`Deprecated:Web` | 子服务 | 稳定 | 开启旧的Web服务|
|`Gorm` | 数据库 | 稳定(默认) | 使用[gorm](https://github.com/go-gorm/gorm)作为数据库的ORM默认使用 `Gorm` + `MySQL`组合|
|`Sqlx`| 数据库 | WIP | 使用[sqlx](https://github.com/jmoiron/sqlx)作为数据库的ORM|
|`Sqlx`| 数据库 | WIP | 使用[sqlx](https://github.com/bitbus/sqlx)作为数据库的ORM|
|`MySQL`| 数据库 | 稳定(默认) | 使用MySQL作为数据库|
|`Postgres`| 数据库 | 稳定 | 使用PostgreSQL作为数据库|
|`Sqlite3`| 数据库 | 稳定 | 使用Sqlite3作为数据库|

@ -53,7 +53,7 @@
* [x] 接口定义
* [x] 业务逻辑实现
* `Sqlx` + `MySQL`/`PostgreSQL`
使用[sqlx](https://github.com/jmoiron/sqlx)作为数据库的ORM(目前状态WIP)
使用[sqlx](https://github.com/bitbus/sqlx)作为数据库的ORM(目前状态WIP)
* [ ] 提按文档
* [ ] 接口定义
* [ ] 业务逻辑实现

@ -7,9 +7,10 @@ require (
github.com/afocus/captcha v0.0.0-20191010092841-4bd1f21c8868
github.com/alimy/cfg v0.4.0
github.com/alimy/mir/v4 v4.0.0
github.com/alimy/yesql v1.5.0
github.com/alimy/yesql v1.8.0
github.com/aliyun/aliyun-oss-go-sdk v2.2.8+incompatible
github.com/allegro/bigcache/v3 v3.1.0
github.com/bitbus/sqlx v1.6.0
github.com/bufbuild/connect-go v1.10.0
github.com/bytedance/sonic v1.10.0
github.com/cockroachdb/errors v1.10.0
@ -24,7 +25,6 @@ require (
github.com/golang-jwt/jwt/v4 v4.5.0
github.com/golang-migrate/migrate/v4 v4.15.2
github.com/huaweicloud/huaweicloud-sdk-go-obs v3.23.4+incompatible
github.com/jmoiron/sqlx v1.3.5
github.com/json-iterator/go v1.1.12
github.com/meilisearch/meilisearch-go v0.25.0
github.com/minio/minio-go/v7 v7.0.61
@ -53,8 +53,6 @@ require (
modernc.org/sqlite v1.25.0
)
replace github.com/jmoiron/sqlx => github.com/bitbus/sqlx v1.4.0
require (
github.com/andybalholm/brotli v1.0.5 // indirect
github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d // indirect
@ -88,6 +86,7 @@ require (
github.com/jackc/pgx/v5 v5.3.1 // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jinzhu/now v1.1.5 // indirect
github.com/jmoiron/sqlx v1.3.5 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
github.com/klauspost/compress v1.16.7 // indirect

@ -127,8 +127,12 @@ github.com/alimy/cfg v0.4.0 h1:SslKPndmxRViT1ePWLmNsEq7okYP0GVeuowQlRWZPkw=
github.com/alimy/cfg v0.4.0/go.mod h1:rOxbasTH2srl6StAjNF5Vyi8bfrdkl3fLGmOYtSw81c=
github.com/alimy/mir/v4 v4.0.0 h1:MzGfmoLjjvR69jbZEmpKJO3tUuqB0RGRv1UWPbtukBg=
github.com/alimy/mir/v4 v4.0.0/go.mod h1:d58dBvw2KImcVbAUANrciEV/of0arMNsI9c/5UNCMMc=
github.com/alimy/yesql v1.5.0 h1:Xmx+yBQCWA4f5xsraypbMnY7id8bckjUr8zxynteDBE=
github.com/alimy/yesql v1.5.0/go.mod h1:Y0FdRIwIbJyTv56wSX+MpaIHiAW1PyKTDYO6K/er4JY=
github.com/alimy/yesql v1.6.0 h1:CMJCIRrKS6FOhrHK5Bl+1mUGq9JTOMbvtOLbcT5UmVs=
github.com/alimy/yesql v1.6.0/go.mod h1:Y0FdRIwIbJyTv56wSX+MpaIHiAW1PyKTDYO6K/er4JY=
github.com/alimy/yesql v1.7.0 h1:1FsfH7B8Uv3sW2GjUIUQNKzBt9Qoe4TxF6ifUhMo+00=
github.com/alimy/yesql v1.7.0/go.mod h1:ROvO5FnBWhyAMI+sSSGzoXi2q/cCs0cW3WuelHCkLlk=
github.com/alimy/yesql v1.8.0 h1:nOyElCU740uQ+S1hmG49Kpb6Sve5zqKayCj7mL21Dro=
github.com/alimy/yesql v1.8.0/go.mod h1:ROvO5FnBWhyAMI+sSSGzoXi2q/cCs0cW3WuelHCkLlk=
github.com/aliyun/aliyun-oss-go-sdk v2.2.8+incompatible h1:6JF1bjhT0WN2srEmijfOFtVWwV91KZ6dJY1/JbdtGrI=
github.com/aliyun/aliyun-oss-go-sdk v2.2.8+incompatible/go.mod h1:T/Aws4fEfogEE9v+HPhhw+CntffsBHJ8nXQCwKr0/g8=
github.com/allegro/bigcache/v3 v3.1.0 h1:H2Vp8VOvxcrB91o86fUSVJFqeuz8kpyyB02eH3bSzwk=
@ -178,8 +182,8 @@ github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs=
github.com/bitbus/sqlx v1.4.0 h1:XNPq6UEAMNUjoNrcU6//5uTptIelFcmwTGSPFj0kw5c=
github.com/bitbus/sqlx v1.4.0/go.mod h1:aMXar0klnlHjWpv53au/CgXItZrKQf9MX75OV5kOVlA=
github.com/bitbus/sqlx v1.6.0 h1:ewrBydRkyHZqfOqvHVYpiBlqQtLn93B/loa2EwjpZ74=
github.com/bitbus/sqlx v1.6.0/go.mod h1:MemKLfQ600g6PxUVsIDe48PlY3wOquyW2ApeiXoynFo=
github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932/go.mod h1:NOuUCSz6Q9T7+igc/hlvDOUdtWKryOrtFyIVABv/p7k=
github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA=
github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA=
@ -524,6 +528,7 @@ github.com/go-playground/validator/v10 v10.14.0 h1:vgvQWe3XCz3gIeFDm/HnTIbj6UGmg
github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU=
github.com/go-resty/resty/v2 v2.7.0 h1:me+K9p3uhSmXtrBZ4k9jcEAfJmuC8IivWHwaLZwPrFY=
github.com/go-resty/resty/v2 v2.7.0/go.mod h1:9PWDzw47qPphMRFfhsyk0NnSgvluHcljSMVIq3w7q0I=
github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
@ -813,6 +818,10 @@ github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht
github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
github.com/jmoiron/sqlx v1.2.0/go.mod h1:1FEQNm3xlJgrMD+FBdI9+xvCksHtbpVBBw5dYhBSsks=
github.com/jmoiron/sqlx v1.3.1/go.mod h1:2BljVx/86SuTyjE+aPYlHCTNvZrnJXghYGpNiXLBMCQ=
github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g=
github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ=
github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8=
github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg=
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
@ -927,6 +936,7 @@ github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzp
github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o=
github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o=
github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y=
github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
github.com/mattn/go-sqlite3 v1.14.3/go.mod h1:WVKg1VTActs4Qso6iwGbiFih2UIHo0ENGwNd0Lj+XmI=
github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
github.com/mattn/go-sqlite3 v1.14.10/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=

@ -7,7 +7,7 @@ package conf
import (
"sync"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/pkg/naming"
"github.com/sirupsen/logrus"
)

@ -5,7 +5,7 @@
package sakila
import (
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"

@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"
@ -56,7 +56,7 @@ func (s *commentSrv) GetCommentCount(r *ms.ConditionsT) (res int64, err error) {
}
func (s *commentSrv) GetCommentContentsByIDs(ids []int64) (res []*ms.CommentContent, err error) {
err = s.inSelect(&res, s.q.GetCommentContentsByIds, ids)
err = s.db.InSelect(&res, s.q.GetCommentContentsByIds, ids)
return res, err
}
@ -82,7 +82,7 @@ func (s *commentSrv) GetCommentThumbsMap(userId int64, tweetId int64) (cs.Commen
func (s *commentSrv) GetCommentRepliesByID(ids []int64) ([]*ms.CommentReplyFormated, error) {
replies := []*ms.CommentReply{}
err := s.inSelect(&replies, s.q.GetCommmentRepliesByIds, ids)
err := s.db.InSelect(&replies, s.q.GetCommmentRepliesByIds, ids)
if err != nil {
return nil, err
}
@ -91,7 +91,7 @@ func (s *commentSrv) GetCommentRepliesByID(ids []int64) ([]*ms.CommentReplyForma
userIds = append(userIds, reply.UserID, reply.AtUserID)
}
users := []*ms.UserFormated{}
if err = s.inSelect(&users, s.q.GetUsersByIds, userIds); err != nil {
if err = s.db.InSelect(&users, s.q.GetUsersByIds, userIds); err != nil {
return nil, err
}
repliesFormated := []*ms.CommentReplyFormated{}
@ -113,7 +113,7 @@ func (s *commentSrv) GetCommentRepliesByID(ids []int64) ([]*ms.CommentReplyForma
// DeleteComment delete comment
// TODO: need delete related replies and update tweet comment count and comment content?
func (s *commentManageSrv) DeleteComment(r *ms.Comment) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
now := time.Now().Unix()
if _, err := tx.Stmtx(s.q.DeleteComment).Exec(now, r.ID); err != nil {
return err
@ -153,7 +153,7 @@ func (s *commentManageSrv) CreateCommentReply(r *ms.CommentReply) (*ms.CommentRe
}
func (s *commentManageSrv) DeleteCommentReply(r *ms.CommentReply) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
now := time.Now().Unix()
if _, err := tx.Stmtx(s.q.DeleteCommentReply).Exec(now, r.ID); err != nil {
return err
@ -177,7 +177,7 @@ func (s *commentManageSrv) CreateCommentContent(r *ms.CommentContent) (*ms.Comme
}
func (s *commentManageSrv) ThumbsUpComment(userId int64, tweetId, commentId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var (
thumbsUpCount int32 = 0
thumbsDownCount int32 = 0
@ -225,7 +225,7 @@ func (s *commentManageSrv) ThumbsUpComment(userId int64, tweetId, commentId int6
}
func (s *commentManageSrv) ThumbsDownComment(userId int64, tweetId, commentId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var (
thumbsUpCount int32 = 0
thumbsDownCount int32 = 0
@ -274,7 +274,7 @@ func (s *commentManageSrv) ThumbsDownComment(userId int64, tweetId, commentId in
}
func (s *commentManageSrv) ThumbsUpReply(userId int64, tweetId, commentId, replyId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var (
thumbsUpCount int32 = 0
thumbsDownCount int32 = 0
@ -323,7 +323,7 @@ func (s *commentManageSrv) ThumbsUpReply(userId int64, tweetId, commentId, reply
}
func (s *commentManageSrv) ThumbsDownReply(userId int64, tweetId, commentId, replyId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var (
thumbsUpCount int32 = 0
thumbsDownCount int32 = 0

@ -7,7 +7,7 @@ package sakila
import (
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"
@ -33,7 +33,7 @@ type contactManageSrv struct {
}
func (s *contactManageSrv) RequestingFriend(userId int64, friendId int64, greetings string) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
contact, err := s.fetchOrNewContact(tx, userId, friendId, cs.ContactStatusRequesting)
if err != nil {
return err
@ -70,7 +70,7 @@ func (s *contactManageSrv) RequestingFriend(userId int64, friendId int64, greeti
}
func (s *contactManageSrv) AddFriend(userId int64, friendId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
contact := &cs.Contact{}
err := tx.Stmtx(s.q.GetUserFriend).Get(contact, userId, friendId)
if err != nil {
@ -106,7 +106,7 @@ func (s *contactManageSrv) AddFriend(userId int64, friendId int64) error {
}
func (s *contactManageSrv) RejectFriend(userId int64, friendId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
contact := &cs.Contact{}
err := tx.Stmtx(s.q.GetUserFriend).Get(contact, userId, friendId)
if err != nil {
@ -130,7 +130,7 @@ func (s *contactManageSrv) RejectFriend(userId int64, friendId int64) error {
}
func (s *contactManageSrv) DeleteFriend(userId int64, friendId int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var contacts []cs.Contact
err := tx.Stmtx(s.q.GetContacts).Select(&contacts, userId, friendId, friendId, userId)
if err != nil {

@ -7,7 +7,7 @@ package sakila
import (
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc"

@ -7,7 +7,7 @@ package sakila
import (
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/jinzhu/dbr"

@ -9,7 +9,7 @@ import (
"strconv"
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/jinzhu/dbr"

@ -7,11 +7,9 @@ package sakila
import (
"bytes"
"context"
"database/sql"
_ "embed"
"github.com/alimy/yesql"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/conf"
"github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc"
"github.com/sirupsen/logrus"
@ -27,94 +25,6 @@ type sqlxSrv struct {
y *cc.Yesql
}
func (s *sqlxSrv) with(handle func(tx *sqlx.Tx) error) error {
tx, err := s.db.Beginx()
if err != nil {
return err
}
defer tx.Rollback()
if err = handle(tx); err != nil {
return err
}
return tx.Commit()
}
//lint:ignore U1000 withTx
func (s *sqlxSrv) withTx(ctx context.Context, opts *sql.TxOptions, handle func(*sqlx.Tx) error) error {
tx, err := s.db.BeginTxx(ctx, opts)
if err != nil {
return err
}
defer tx.Rollback()
if err = handle(tx); err != nil {
return err
}
return tx.Commit()
}
//lint:ignore U1000 in
func (s *sqlxSrv) in(query string, args ...any) (string, []any, error) {
q, params, err := sqlx.In(query, args...)
if err != nil {
return "", nil, err
}
return s.db.Rebind(q), params, nil
}
//lint:ignore U1000 inExec
func (s *sqlxSrv) inExec(query string, args ...any) (sql.Result, error) {
q, params, err := sqlx.In(query, args...)
if err != nil {
return nil, err
}
return s.db.Exec(s.db.Rebind(q), params...)
}
func (s *sqlxSrv) inSelect(dest any, query string, args ...any) error {
q, params, err := sqlx.In(query, args...)
if err != nil {
return err
}
return sqlx.Select(s.db, dest, s.db.Rebind(q), params...)
}
func (s *sqlxSrv) inGet(dest any, query string, args ...any) error {
q, params, err := sqlx.In(query, args...)
if err != nil {
return err
}
return sqlx.Get(s.db, dest, s.db.Rebind(q), params...)
}
// inExecx execute for in clause with Transcation
func (s *sqlxSrv) inExecx(execer sqlx.Execer, query string, args ...any) (sql.Result, error) {
q, params, err := sqlx.In(query, args...)
if err != nil {
return nil, err
}
return execer.Exec(s.db.Rebind(q), params...)
}
// inSelectx select for in clause with Transcation
func (s *sqlxSrv) inSelectx(queryer sqlx.Queryer, dest any, query string, args ...any) error {
q, params, err := sqlx.In(query, args...)
if err != nil {
return err
}
return sqlx.Select(queryer, dest, s.db.Rebind(q), params...)
}
// inGetx get for in clause with Transcation
//
//lint:ignore U1000 inGetx
func (s *sqlxSrv) inGetx(queryer sqlx.Queryer, dest any, query string, args ...any) error {
q, params, err := sqlx.In(query, args...)
if err != nil {
return err
}
return sqlx.Get(queryer, dest, s.db.Rebind(q), params...)
}
func newSqlxSrv(db *sqlx.DB) *sqlxSrv {
return &sqlxSrv{
db: db,
@ -182,7 +92,7 @@ func yesqlScan[T any](query yesql.SQLQuery, obj T) T {
return obj
}
func mustBuild[T any](db *sqlx.DB, fn func(yesql.PreparexBuilder, ...context.Context) (T, error)) T {
func mustBuild[T any](db *sqlx.DB, fn func(cc.PreparexBuilder, ...context.Context) (T, error)) T {
p := yesql.NewPreparexBuilder(db, t)
obj, err := fn(p)
if err != nil {
@ -191,7 +101,7 @@ func mustBuild[T any](db *sqlx.DB, fn func(yesql.PreparexBuilder, ...context.Con
return obj
}
func mustBuildFn[T any](db *sqlx.DB, fn func(yesql.PreparexBuilder) (T, error)) T {
func mustBuildFn[T any](db *sqlx.DB, fn func(cc.PreparexBuilder) (T, error)) T {
p := yesql.NewPreparexBuilder(db, t)
obj, err := fn(p)
if err != nil {

@ -5,7 +5,7 @@
package sakila
import (
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"
@ -64,9 +64,9 @@ func (s *shipIndexSrv) IndexPosts(user *ms.User, offset int, limit int) (res *ms
default:
friendIds, _ := s.ams.BeFriendIds(user.ID)
friendIds = append(friendIds, user.ID)
err = s.inSelect(&posts, s.q.IndexBySelf, user.ID, friendIds, limit, offset)
err = s.db.InSelect(&posts, s.q.IndexBySelf, user.ID, friendIds, limit, offset)
if err == nil {
err = s.inGet(&res.Total, s.q.IndexCountBySelf, user.ID, friendIds)
err = s.db.InGet(&res.Total, s.q.IndexCountBySelf, user.ID, friendIds)
}
}
if err != nil {

@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc"
@ -29,9 +29,9 @@ func (s *topicSrvA) UpsertTags(userId int64, tags []string) (res cs.TagInfoList,
if len(tags) == 0 {
return nil, nil
}
xerr = s.with(func(tx *sqlx.Tx) error {
xerr = s.db.Withx(func(tx *sqlx.Tx) error {
var upTags cs.TagInfoList
if err := s.inSelectx(tx, &upTags, s.q.TagsForIncr, tags); err != nil {
if err := tx.InSelect(&upTags, s.q.TagsForIncr, tags); err != nil {
return err
}
now := time.Now().Unix()
@ -51,7 +51,7 @@ func (s *topicSrvA) UpsertTags(userId int64, tags []string) (res cs.TagInfoList,
}
}
}
if _, err := s.inExecx(tx, s.q.IncrTagsById, now, ids); err != nil {
if _, err := tx.InExec(s.q.IncrTagsById, now, ids); err != nil {
return err
}
res = append(res, upTags...)
@ -73,7 +73,7 @@ func (s *topicSrvA) UpsertTags(userId int64, tags []string) (res cs.TagInfoList,
ids = append(ids, id)
}
var newTags cs.TagInfoList
if err := s.inSelectx(tx, &newTags, s.q.TagsByIdB, ids); err != nil {
if err := tx.InSelect(&newTags, s.q.TagsByIdB, ids); err != nil {
return err
}
res = append(res, newTags...)
@ -83,13 +83,13 @@ func (s *topicSrvA) UpsertTags(userId int64, tags []string) (res cs.TagInfoList,
}
func (s *topicSrvA) DecrTagsById(ids []int64) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var ids []int64
err := s.inSelectx(tx, &ids, s.q.TagsByIdA, ids)
err := tx.InSelect(&ids, s.q.TagsByIdA, ids)
if err != nil {
return err
}
_, err = s.inExecx(tx, s.q.DecrTagsById, time.Now().Unix(), ids)
_, err = tx.InExec(s.q.DecrTagsById, time.Now().Unix(), ids)
return err
})
}

@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"
@ -127,12 +127,12 @@ func (s *tweetHelpSrv) RevampPosts(posts []*ms.PostFormated) ([]*ms.PostFormated
}
func (s *tweetHelpSrv) getPostContentsByIDs(ids []int64) (res []*dbr.PostContentFormated, err error) {
err = s.inSelect(&res, s.q.GetPostContentByIds, ids)
err = s.db.InSelect(&res, s.q.GetPostContentByIds, ids)
return
}
func (s *tweetHelpSrv) getUsersByIDs(ids []int64) (res []*dbr.UserFormated, err error) {
err = s.inSelect(&res, s.q.GetUsersByIds, ids)
err = s.db.InSelect(&res, s.q.GetUsersByIds, ids)
return
}
@ -199,7 +199,7 @@ func (s *tweetManageSrv) CreatePost(r *ms.Post) (*ms.Post, error) {
}
func (s *tweetManageSrv) DeletePost(post *ms.Post) (mediaContents []string, err error) {
s.with(func(tx *sqlx.Tx) error {
s.db.Withx(func(tx *sqlx.Tx) error {
// 获取多媒体内容
if err = tx.Stmtx(s.q.MediaContentByPostId).Get(&mediaContents, post.ID); err != nil {
return err
@ -233,7 +233,7 @@ func (s *tweetManageSrv) deleteCommentByPostId(tx *sqlx.Tx, postId int64) (media
return nil, err
}
// 获取评论的媒体内容
err = s.inSelectx(tx, &mediaContents, s.q.CommentMediaFromCommentIds, commentIds)
err = tx.InSelect(&mediaContents, s.q.CommentMediaFromCommentIds, commentIds)
if err != nil {
return nil, err
}
@ -243,11 +243,11 @@ func (s *tweetManageSrv) deleteCommentByPostId(tx *sqlx.Tx, postId int64) (media
return nil, err
}
// 删评论内容
if _, err = s.inExecx(tx, s.q.DelCommentContentByCommentIds, now, commentIds); err != nil {
if _, err = tx.InExec(s.q.DelCommentContentByCommentIds, now, commentIds); err != nil {
return nil, err
}
// 删评论的评论
if _, err = s.inExecx(tx, s.q.DelReplyByCommentIds, now, commentIds); err != nil {
if _, err = tx.InExec(s.q.DelReplyByCommentIds, now, commentIds); err != nil {
return nil, err
}
return
@ -264,7 +264,7 @@ func (s *tweetManageSrv) StickPost(r *ms.Post) error {
}
func (s *tweetManageSrv) HighlightPost(userId, postId int64) (is_essence int, err error) {
err = s.with(func(tx *sqlx.Tx) error {
err = s.db.Withx(func(tx *sqlx.Tx) error {
var postUserId int64
err = tx.Stmtx(s.q.PostHighlightStatus).QueryRowx(postId).Scan(&postUserId, &is_essence)
if err != nil {
@ -295,7 +295,7 @@ func (s *tweetManageSrv) VisiblePost(post *ms.Post, visibility core.PostVisibleT
// TODO: 置顶推文用户是否有权设置成私密? 后续完善
post.IsTop = 0
}
s.with(func(tx *sqlx.Tx) error {
s.db.Withx(func(tx *sqlx.Tx) error {
_, err = s.q.VisiblePost.Exec(visibility, post.IsTop, time.Now().Unix(), post.ID)
// tag处理
tags := strings.Split(post.Tags, ",")
@ -356,9 +356,9 @@ func (s *tweetSrv) GetPosts(c ms.ConditionsT, offset, limit int) (res []*ms.Post
userId, exist := c["user_id"]
visibility := c["visibility IN ?"]
if exist {
err = s.inSelect(&res, s.q.GetUserPosts, userId, visibility, limit, offset)
err = s.db.InSelect(&res, s.q.GetUserPosts, userId, visibility, limit, offset)
} else {
err = s.inSelect(&res, s.q.GetAnyPosts, visibility, limit, offset)
err = s.db.InSelect(&res, s.q.GetAnyPosts, visibility, limit, offset)
}
return
}
@ -367,9 +367,9 @@ func (s *tweetSrv) GetPostCount(c ms.ConditionsT) (res int64, err error) {
userId, exist := c["user_id"]
visibility := c["visibility IN ?"]
if exist {
err = s.inGet(&res, s.q.GetUserPostCount, userId, visibility)
err = s.db.InGet(&res, s.q.GetUserPostCount, userId, visibility)
} else {
err = s.inGet(&res, s.q.GetAnyPostCount, visibility)
err = s.db.InGet(&res, s.q.GetAnyPostCount, visibility)
}
return
}
@ -471,7 +471,7 @@ func (s *tweetSrv) GetPostAttatchmentBill(postID, userID int64) (res *ms.PostAtt
}
func (s *tweetSrv) GetPostContentsByIDs(ids []int64) (res []*ms.PostContent, err error) {
err = s.inSelect(&res, s.q.GetPostContentsByIds, ids)
err = s.db.InSelect(&res, s.q.GetPostContentsByIds, ids)
return
}

@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/sakila/yesql/cc"
@ -39,7 +39,7 @@ func (s *userManageSrv) GetUserByPhone(phone string) (res *ms.User, err error) {
}
func (s *userManageSrv) GetUsersByIDs(ids []int64) (res []*ms.User, err error) {
err = s.inSelect(&res, s.q.GetUsersByIds, ids)
err = s.db.InSelect(&res, s.q.GetUsersByIds, ids)
return
}

@ -7,7 +7,7 @@ package sakila
import (
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/core/cs"
)

@ -7,7 +7,7 @@ package sakila
import (
"time"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
"github.com/rocboss/paopao-ce/internal/conf"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/ms"
@ -60,7 +60,7 @@ func (s *walletSrv) GetUserWalletBillCount(userID int64) (res int64, err error)
}
func (s *walletSrv) HandleRechargeSuccess(r *ms.WalletRecharge, tradeNo string) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
var oldBalance int64
// 获取当前金额
err := tx.Stmtx(s.q.GetUserBalance).Get(&oldBalance, r.UserID)
@ -86,7 +86,7 @@ func (s *walletSrv) HandleRechargeSuccess(r *ms.WalletRecharge, tradeNo string)
}
func (s *walletSrv) HandlePostAttachmentBought(post *ms.Post, user *ms.User) error {
return s.with(func(tx *sqlx.Tx) error {
return s.db.Withx(func(tx *sqlx.Tx) error {
now := time.Now().Unix()
// 扣除金额
_, err := tx.Stmtx(s.q.MinusUserBalance).Exec(post.AttachmentPrice, now, user.ID)

@ -1,6 +1,6 @@
// Code generated by Yesql. DO NOT EDIT.
// versions:
// - Yesql v1.5.0
// - Yesql v1.8.0
package cc
@ -8,7 +8,7 @@ import (
"context"
"github.com/alimy/yesql"
"github.com/jmoiron/sqlx"
"github.com/bitbus/sqlx"
)
const (
@ -178,6 +178,26 @@ const (
_Wallet_NewPostBill = `INSERT INTO @wallet_statement (post_id, user_id, change_amount, balance_snapshot, reason, created_on) VALUES (?, ?, ?, ?, ?, ?)`
)
// PreparexContext enhances the Conn interface with context.
type PreparexContext interface {
// PrepareContext prepares a statement.
// The provided context is used for the preparation of the statement, not for
// the execution of the statement.
PreparexContext(ctx context.Context, query string) (*sqlx.Stmt, error)
// PrepareNamedContext returns an sqlx.NamedStmt
PrepareNamedContext(ctx context.Context, query string) (*sqlx.NamedStmt, error)
// Rebind rebind query to adapte SQL Driver
Rebind(query string) string
}
// PreparexBuilder preparex builder interface for sqlx
type PreparexBuilder interface {
PreparexContext
QueryHook(query string) string
}
type Yesql struct {
TagsFromNames string `yesql:"tags_from_names"`
UpdateTagQuote *sqlx.Stmt `yesql:"update_tag_quote"`
@ -425,7 +445,7 @@ type Wallet struct {
NewPostBill *sqlx.Stmt `yesql:"new_post_bill"`
}
func BuildYesql(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Yesql, err error) {
func BuildYesql(p PreparexBuilder, ctx ...context.Context) (obj *Yesql, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -441,7 +461,7 @@ func BuildYesql(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Yesql, er
return
}
func BuildAuthorizationManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *AuthorizationManage, err error) {
func BuildAuthorizationManage(p PreparexBuilder, ctx ...context.Context) (obj *AuthorizationManage, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -461,7 +481,7 @@ func BuildAuthorizationManage(p yesql.PreparexBuilder, ctx ...context.Context) (
return
}
func BuildComment(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Comment, err error) {
func BuildComment(p PreparexBuilder, ctx ...context.Context) (obj *Comment, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -489,7 +509,7 @@ func BuildComment(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Comment
return
}
func BuildCommentManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *CommentManage, err error) {
func BuildCommentManage(p PreparexBuilder, ctx ...context.Context) (obj *CommentManage, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -539,7 +559,7 @@ func BuildCommentManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *C
return
}
func BuildContactManager(p yesql.PreparexBuilder, ctx ...context.Context) (obj *ContactManager, err error) {
func BuildContactManager(p PreparexBuilder, ctx ...context.Context) (obj *ContactManager, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -586,7 +606,7 @@ func BuildContactManager(p yesql.PreparexBuilder, ctx ...context.Context) (obj *
return
}
func BuildFollowingManager(p yesql.PreparexBuilder, ctx ...context.Context) (obj *FollowingManager, err error) {
func BuildFollowingManager(p PreparexBuilder, ctx ...context.Context) (obj *FollowingManager, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -618,7 +638,7 @@ func BuildFollowingManager(p yesql.PreparexBuilder, ctx ...context.Context) (obj
return
}
func BuildMessage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Message, err error) {
func BuildMessage(p PreparexBuilder, ctx ...context.Context) (obj *Message, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -647,7 +667,7 @@ func BuildMessage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Message
return
}
func BuildSecurity(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Security, err error) {
func BuildSecurity(p PreparexBuilder, ctx ...context.Context) (obj *Security, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -667,7 +687,7 @@ func BuildSecurity(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Securi
return
}
func BuildShipIndex(p yesql.PreparexBuilder, ctx ...context.Context) (obj *ShipIndex, err error) {
func BuildShipIndex(p PreparexBuilder, ctx ...context.Context) (obj *ShipIndex, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -693,14 +713,14 @@ func BuildShipIndex(p yesql.PreparexBuilder, ctx ...context.Context) (obj *ShipI
return
}
func BuildShipIndexA(p yesql.PreparexBuilder) (obj *ShipIndexA, err error) {
func BuildShipIndexA(p PreparexBuilder) (obj *ShipIndexA, err error) {
obj = &ShipIndexA{
UserInfo: p.QueryHook(_ShipIndexA_UserInfo),
}
return
}
func BuildSimpleIndex(p yesql.PreparexBuilder, ctx ...context.Context) (obj *SimpleIndex, err error) {
func BuildSimpleIndex(p PreparexBuilder, ctx ...context.Context) (obj *SimpleIndex, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -717,14 +737,14 @@ func BuildSimpleIndex(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Sim
return
}
func BuildSimpleIndexA(p yesql.PreparexBuilder) (obj *SimpleIndexA, err error) {
func BuildSimpleIndexA(p PreparexBuilder) (obj *SimpleIndexA, err error) {
obj = &SimpleIndexA{
UserInfo: p.QueryHook(_SimpleIndexA_UserInfo),
}
return
}
func BuildTopicA(p yesql.PreparexBuilder, ctx ...context.Context) (obj *TopicA, err error) {
func BuildTopicA(p PreparexBuilder, ctx ...context.Context) (obj *TopicA, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -756,7 +776,7 @@ func BuildTopicA(p yesql.PreparexBuilder, ctx ...context.Context) (obj *TopicA,
return
}
func BuildTweet(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Tweet, err error) {
func BuildTweet(p PreparexBuilder, ctx ...context.Context) (obj *Tweet, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -860,7 +880,7 @@ func BuildTweet(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Tweet, er
return
}
func BuildTweetA(p yesql.PreparexBuilder) (obj *TweetA, err error) {
func BuildTweetA(p PreparexBuilder) (obj *TweetA, err error) {
obj = &TweetA{
AttachmentByTweetId: p.QueryHook(_TweetA_AttachmentByTweetId),
FavoriteByTweetId: p.QueryHook(_TweetA_FavoriteByTweetId),
@ -878,7 +898,7 @@ func BuildTweetA(p yesql.PreparexBuilder) (obj *TweetA, err error) {
return
}
func BuildTweetHelp(p yesql.PreparexBuilder) (obj *TweetHelp, err error) {
func BuildTweetHelp(p PreparexBuilder) (obj *TweetHelp, err error) {
obj = &TweetHelp{
GetPostContentByIds: p.QueryHook(_TweetHelp_GetPostContentByIds),
GetUsersByIds: p.QueryHook(_TweetHelp_GetUsersByIds),
@ -886,14 +906,14 @@ func BuildTweetHelp(p yesql.PreparexBuilder) (obj *TweetHelp, err error) {
return
}
func BuildTweetHelpA(p yesql.PreparexBuilder) (obj *TweetHelpA, err error) {
func BuildTweetHelpA(p PreparexBuilder) (obj *TweetHelpA, err error) {
obj = &TweetHelpA{
UserInfo: p.QueryHook(_TweetHelpA_UserInfo),
}
return
}
func BuildTweetManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *TweetManage, err error) {
func BuildTweetManage(p PreparexBuilder, ctx ...context.Context) (obj *TweetManage, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -959,14 +979,14 @@ func BuildTweetManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Twe
return
}
func BuildTweetManageA(p yesql.PreparexBuilder) (obj *TweetManageA, err error) {
func BuildTweetManageA(p PreparexBuilder) (obj *TweetManageA, err error) {
obj = &TweetManageA{
UserInfo: p.QueryHook(_TweetManageA_UserInfo),
}
return
}
func BuildUserManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *UserManage, err error) {
func BuildUserManage(p PreparexBuilder, ctx ...context.Context) (obj *UserManage, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]
@ -1000,7 +1020,7 @@ func BuildUserManage(p yesql.PreparexBuilder, ctx ...context.Context) (obj *User
return
}
func BuildWallet(p yesql.PreparexBuilder, ctx ...context.Context) (obj *Wallet, err error) {
func BuildWallet(p PreparexBuilder, ctx ...context.Context) (obj *Wallet, err error) {
var c context.Context
if len(ctx) > 0 && ctx[0] != nil {
c = ctx[0]

@ -21,7 +21,7 @@ func main() {
query.Query = strings.TrimRight(query.Query, ";")
return query, nil
})
if err := yesql.Generate("yesql.sql", "cc", "cc"); err != nil {
if err := yesql.Generate("yesql.sql", "cc", "cc", yesql.SqlxPkgName("github.com/bitbus/sqlx")); err != nil {
log.Fatalf("generate code occurs error: %s", err)
}
log.Println("[Yesql] generate code finish")

Loading…
Cancel
Save