sqlc: add follow user logic

r/paopao-ce-xtra
Michael Li 2 years ago
parent 8610b2b9bf
commit 588a6bba3c
No known key found for this signature in database

@ -43,7 +43,7 @@ require (
github.com/sourcegraph/conc v0.3.0
github.com/spf13/cobra v1.7.0
github.com/spf13/viper v1.17.0
github.com/sqlc-dev/sqlc v1.21.0
github.com/sqlc-dev/sqlc v1.22.0
github.com/tencentyun/cos-go-sdk-v5 v0.7.44
github.com/yinheli/mahonia v0.0.0-20131226213531-0eef680515cc
go.uber.org/automaxprocs v1.5.3
@ -66,7 +66,7 @@ require (
github.com/benbjohnson/clock v1.3.5 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bits-and-blooms/bitset v1.2.0 // indirect
github.com/bytecodealliance/wasmtime-go/v12 v12.0.0 // indirect
github.com/bytecodealliance/wasmtime-go/v13 v13.0.0 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d // indirect
github.com/chenzhuoyu/iasm v0.9.0 // indirect
@ -91,7 +91,7 @@ require (
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/google/cel-go v0.18.0 // indirect
github.com/google/cel-go v0.18.1 // indirect
github.com/google/go-cmp v0.5.9 // indirect
github.com/google/go-querystring v1.1.0 // indirect
github.com/google/pprof v0.0.0-20230207041349-798e818bf904 // indirect
@ -131,7 +131,7 @@ require (
github.com/pingcap/errors v0.11.5-0.20210425183316-da1aaba5fb63 // indirect
github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c // indirect
github.com/pingcap/log v1.1.0 // indirect
github.com/pingcap/tidb/parser v0.0.0-20230815160630-b69fa21942d1 // indirect
github.com/pingcap/tidb/parser v0.0.0-20231011150025-7f9ab7f2d3d0 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/prometheus/client_model v0.3.0 // indirect
github.com/prometheus/common v0.42.0 // indirect
@ -177,9 +177,9 @@ require (
modernc.org/cc/v3 v3.40.0 // indirect
modernc.org/ccgo/v3 v3.16.13 // indirect
modernc.org/libc v1.24.1 // indirect
modernc.org/mathutil v1.5.0 // indirect
modernc.org/mathutil v1.6.0 // indirect
modernc.org/memory v1.6.0 // indirect
modernc.org/opt v0.1.3 // indirect
modernc.org/strutil v1.1.3 // indirect
modernc.org/strutil v1.2.0 // indirect
modernc.org/token v1.0.1 // indirect
)

@ -206,8 +206,8 @@ github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx2
github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8=
github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50=
github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE=
github.com/bytecodealliance/wasmtime-go/v12 v12.0.0 h1:Wga02UaZXYF3p0LIeL5xFp09/RI7UhjfT2uB0mLrwlw=
github.com/bytecodealliance/wasmtime-go/v12 v12.0.0/go.mod h1:a3PRoftJxxUzkQvgjC6sv7pKyJJK0ZsFVmH+eeEKQC4=
github.com/bytecodealliance/wasmtime-go/v13 v13.0.0 h1:o2PsUgSu6vMKr5S0+mz8EL3mZGQ0M8gHwS8/R0wY/wY=
github.com/bytecodealliance/wasmtime-go/v13 v13.0.0/go.mod h1:KmsZLdjjzNH/E5wbfoRehqP70tHzKlfNOi730VCAR4E=
github.com/bytedance/sonic v1.5.0/go.mod h1:ED5hyg4y6t3/9Ku1R6dU/4KyJ48DZ4jPhfY1O2AihPM=
github.com/bytedance/sonic v1.10.0-rc/go.mod h1:ElCzW+ufi8qKqNW0FY314xriJhyJhuoJ3gFZdAHF7NM=
github.com/bytedance/sonic v1.10.2 h1:GQebETVBxYB7JGWJtLBi07OVzWwt+8dWA00gEVW2ZFE=
@ -659,8 +659,8 @@ github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEW
github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA=
github.com/google/cel-go v0.18.0 h1:u74MPiEC8mejBrkXqrTWT102g5IFEUjxOngzQIijMzU=
github.com/google/cel-go v0.18.0/go.mod h1:PVAybmSnWkNMUZR/tEWFUiJ1Np4Hz0MHsZJcgC4zln4=
github.com/google/cel-go v0.18.1 h1:V/lAXKq4C3BYLDy/ARzMtpkEEYfHQpZzVyzy69nEUjs=
github.com/google/cel-go v0.18.1/go.mod h1:PVAybmSnWkNMUZR/tEWFUiJ1Np4Hz0MHsZJcgC4zln4=
github.com/google/flatbuffers v2.0.0+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
@ -1113,8 +1113,8 @@ github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c h1:CgbKAHto5CQgW
github.com/pingcap/failpoint v0.0.0-20220801062533-2eaa32854a6c/go.mod h1:4qGtCB0QK0wBzKtFEGDhxXnSnbQApw1gc9siScUl8ew=
github.com/pingcap/log v1.1.0 h1:ELiPxACz7vdo1qAvvaWJg1NrYFoY6gqAh/+Uo6aXdD8=
github.com/pingcap/log v1.1.0/go.mod h1:DWQW5jICDR7UJh4HtxXSM20Churx4CQL0fwL/SoOSA4=
github.com/pingcap/tidb/parser v0.0.0-20230815160630-b69fa21942d1 h1:FvX5fDJ32eblK9f6KJIOVujjtu3FDEfcRGHsEDfJ4kI=
github.com/pingcap/tidb/parser v0.0.0-20230815160630-b69fa21942d1/go.mod h1:pWA6mNa/o7UTDKrg+4H75NdpRgpWRTox/cqQjaQ4ZBU=
github.com/pingcap/tidb/parser v0.0.0-20231011150025-7f9ab7f2d3d0 h1:Yq9C9Ed2bkUt+8fohqb4E6C0/AyPOPEBYqzx6KFGtMg=
github.com/pingcap/tidb/parser v0.0.0-20231011150025-7f9ab7f2d3d0/go.mod h1:cwq4bKUlftpWuznB+rqNwbN0xy6/i5SL/nYvEKeJn4s=
github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI=
github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI=
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
@ -1277,8 +1277,8 @@ github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/y
github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg=
github.com/spf13/viper v1.17.0 h1:I5txKw7MJasPL/BrfkbA0Jyo/oELqVmux4pR/UxOMfI=
github.com/spf13/viper v1.17.0/go.mod h1:BmMMMLQXSbcHK6KAOiFLz0l5JHrU89OdIRHvsk0+yVI=
github.com/sqlc-dev/sqlc v1.21.0 h1:Shtux/GLJUSMtoJupSJNoFIQgfFRQHI0LIDkwvXIQp0=
github.com/sqlc-dev/sqlc v1.21.0/go.mod h1:fHPNlsaUckfRQaHNl/hat4VwsPN3ZJZe+V1fAQoGf/Y=
github.com/sqlc-dev/sqlc v1.22.0 h1:sLjv3ItknDL0jjy1FQoDO2BD+QZMo3PbpZeOaGfeIlM=
github.com/sqlc-dev/sqlc v1.22.0/go.mod h1:vQvPStV+MAi4Q80DzOjBjj29Or6aNWwvMjkuH9xzVXs=
github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8=
github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU=
github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8=
@ -2203,8 +2203,8 @@ modernc.org/lldb v1.0.0/go.mod h1:jcRvJGWfCGodDZz8BPwiKMJxGJngQ/5DrRapkQnLob8=
modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k=
modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.5.0 h1:rV0Ko/6SfM+8G+yKiyI830l3Wuz1zRutdslNoQ0kfiQ=
modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E=
modernc.org/mathutil v1.6.0 h1:fRe9+AmYlaej+64JsEEhoWuAYBkOtQiMEU7n/XgfYi4=
modernc.org/mathutil v1.6.0/go.mod h1:Ui5Q9q1TR2gFm0AQRqQUaBWFLAhQpCwNcuhBOSedWPo=
modernc.org/memory v1.0.4/go.mod h1:nV2OApxradM3/OVbs2/0OsP6nPfakXpi50C7dcoHXlc=
modernc.org/memory v1.6.0 h1:i6mzavxrE9a30whzMfwf7XWVODx2r5OYXvU46cirX7o=
modernc.org/memory v1.6.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU=
@ -2217,8 +2217,8 @@ modernc.org/sqlite v1.10.6/go.mod h1:Z9FEjUtZP4qFEg6/SiADg9XCER7aYy9a/j7Pg9P7CPs
modernc.org/sqlite v1.26.0 h1:SocQdLRSYlA8W99V8YH0NES75thx19d9sB/aFc4R8Lw=
modernc.org/sqlite v1.26.0/go.mod h1:FL3pVXie73rg3Rii6V/u5BoHlSoyeZeIgKZEgHARyCU=
modernc.org/strutil v1.1.0/go.mod h1:lstksw84oURvj9y3tn8lGvRxyRC1S2+g5uuIzNfIOBs=
modernc.org/strutil v1.1.3 h1:fNMm+oJklMGYfU9Ylcywl0CO5O6nTfaowNsh2wpPjzY=
modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw=
modernc.org/strutil v1.2.0 h1:agBi9dp1I+eOnxXeiZawM8F4LawKv4NzGWSaLfyeNZA=
modernc.org/strutil v1.2.0/go.mod h1:/mdcBmfOibveCTBxUl5B5l6W+TTH1FXPLHZE6bTosX0=
modernc.org/tcl v1.5.2/go.mod h1:pmJYOLgpiys3oI4AeAafkcUfE+TKKilminxNyU/+Zlo=
modernc.org/tcl v1.15.2 h1:C4ybAYCGJw968e+Me18oW55kD/FexcHbqH2xak1ROSY=
modernc.org/tcl v1.15.2/go.mod h1:3+k/ZaEbKrC8ePv8zJWPtBSW0V7Gg9g8rkmhI1Kfs3c=

@ -5,10 +5,13 @@
package slonik
import (
"context"
"time"
"github.com/jackc/pgx/v5"
"github.com/rocboss/paopao-ce/internal/core"
"github.com/rocboss/paopao-ce/internal/core/cs"
"github.com/rocboss/paopao-ce/internal/core/ms"
"github.com/rocboss/paopao-ce/internal/dao/slonik/sqlc/auto/pgc"
)
var (
@ -16,41 +19,104 @@ var (
)
type followingManageSrv struct {
*pgxSrv
*pgcSrv
}
func (s *followingManageSrv) FollowUser(userId int64, followId int64) error {
// TODO
return cs.ErrNotImplemented
ctx := context.Background()
if exist, err := s.q.ExistFollowing(ctx, &pgc.ExistFollowingParams{
UserID: userId,
FollowID: followId,
}); err == nil && exist {
return nil
}
return s.q.CreateFollowing(ctx, &pgc.CreateFollowingParams{
UserID: userId,
FollowID: followId,
CreatedOn: time.Now().Unix(),
})
}
func (s *followingManageSrv) UnfollowUser(userId int64, followId int64) error {
// TDOO
return cs.ErrNotImplemented
return s.q.DeleteFollowing(context.Background(), &pgc.DeleteFollowingParams{
DeletedOn: time.Now().Unix(),
UserID: userId,
FollowID: followId,
})
}
func (s *followingManageSrv) ListFollows(userId int64, limit, offset int) (*ms.ContactList, error) {
// TODO
return nil, cs.ErrNotImplemented
func (s *followingManageSrv) ListFollows(userId int64, limit, offset int) (res *ms.ContactList, err error) {
var follows []*pgc.ListFollowsRow
res = &ms.ContactList{}
ctx := context.Background()
if res.Total, err = s.q.CountFollows(ctx, userId); err != nil || res.Total == 0 {
return
}
if follows, err = s.q.ListFollows(ctx, &pgc.ListFollowsParams{
UserID: userId,
Limit: int32(limit),
Offset: int32(offset),
}); err != nil {
return
}
for _, f := range follows {
res.Contacts = append(res.Contacts, ms.ContactItem{
UserId: f.UserID,
Username: f.Username,
Nickname: f.Nickname,
Avatar: f.Avatar,
CreatedOn: f.CreatedOn,
})
}
return
}
func (s *followingManageSrv) ListFollowings(userId int64, limit, offset int) (*ms.ContactList, error) {
// TODO
return nil, cs.ErrNotImplemented
func (s *followingManageSrv) ListFollowings(userId int64, limit, offset int) (res *ms.ContactList, err error) {
var followings []*pgc.ListFollowingsRow
res = &ms.ContactList{}
ctx := context.Background()
if res.Total, err = s.q.CountFollowings(ctx, userId); err != nil || res.Total == 0 {
return
}
if followings, err = s.q.ListFollowings(ctx, &pgc.ListFollowingsParams{
FollowID: userId,
Limit: int32(limit),
Offset: int32(offset),
}); err != nil {
return
}
for _, f := range followings {
res.Contacts = append(res.Contacts, ms.ContactItem{
UserId: f.UserID,
Username: f.Username,
Nickname: f.Nickname,
Avatar: f.Avatar,
CreatedOn: f.CreatedOn,
})
}
return
}
func (s *followingManageSrv) GetFollowCount(userId int64) (int64, int64, error) {
// TODO
return 0, 0, cs.ErrNotImplemented
func (s *followingManageSrv) GetFollowCount(userId int64) (follows int64, followings int64, err error) {
ctx := context.Background()
if follows, err = s.q.CountFollows(ctx, userId); err == nil {
followings, err = s.q.CountFollowings(ctx, userId)
}
return
}
func (s *followingManageSrv) IsFollow(userId int64, followId int64) bool {
// TODO
if exist, err := s.q.ExistFollowing(context.TODO(), &pgc.ExistFollowingParams{
UserID: userId,
FollowID: followId,
}); err == nil {
return exist
}
return false
}
func newFollowingManageService(db *pgx.Conn) core.FollowingManageService {
return &followingManageSrv{
pgxSrv: newPgxSrv(db),
pgcSrv: newPgcSrv(db),
}
}

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: core.sql
package pg

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pg

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pg

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: authrity.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: comments.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: contacts.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: following.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: messages.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: security.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: timeline.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: topics.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: tweets.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: user.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: wallet.sql
package pga

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: authrity.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: comments.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: contacts.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: following.sql
package pgc
@ -35,7 +35,6 @@ const createFollowing = `-- name: CreateFollowing :exec
INSERT INTO p_following (user_id, follow_id, created_on)
VALUES ($1, $2, $3)
RETURNING id
`
type CreateFollowingParams struct {
@ -70,7 +69,7 @@ func (q *Queries) DeleteFollowing(ctx context.Context, arg *DeleteFollowingParam
}
const existFollowing = `-- name: ExistFollowing :one
SELECT 1 FROM p_following WHERE user_id=$1 AND follow_id=$2 AND is_del=0
SELECT true FROM p_following WHERE user_id=$1 AND follow_id=$2 AND is_del=0
`
type ExistFollowingParams struct {
@ -78,9 +77,9 @@ type ExistFollowingParams struct {
FollowID int64
}
func (q *Queries) ExistFollowing(ctx context.Context, arg *ExistFollowingParams) (int32, error) {
func (q *Queries) ExistFollowing(ctx context.Context, arg *ExistFollowingParams) (bool, error) {
row := q.db.QueryRow(ctx, existFollowing, arg.UserID, arg.FollowID)
var column_1 int32
var column_1 bool
err := row.Scan(&column_1)
return column_1, err
}

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: messages.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: metrics.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pgc
@ -102,7 +102,7 @@ type Querier interface {
DeleteReplyThumbs(ctx context.Context, arg *DeleteReplyThumbsParams) error
DeleteTweetMetric(ctx context.Context, arg *DeleteTweetMetricParams) error
DeleteUserMetric(ctx context.Context, arg *DeleteUserMetricParams) error
ExistFollowing(ctx context.Context, arg *ExistFollowingParams) (int32, error)
ExistFollowing(ctx context.Context, arg *ExistFollowingParams) (bool, error)
FreshContactStatus(ctx context.Context, arg *FreshContactStatusParams) error
GetAllMessages(ctx context.Context, arg *GetAllMessagesParams) ([]*PMessage, error)
GetAnyPosts(ctx context.Context, arg *GetAnyPostsParams) ([]*PPost, error)

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: security.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: timeline.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: topics.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: trends.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: tweets.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: user.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
// source: wallet.sql
package pgc

@ -1,6 +1,6 @@
// Code generated by sqlc. DO NOT EDIT.
// versions:
// sqlc v1.21.0
// sqlc v1.22.0
package pg

@ -4,11 +4,10 @@
-- name: CreateFollowing :exec
INSERT INTO p_following (user_id, follow_id, created_on)
VALUES ($1, $2, $3)
RETURNING id;
VALUES ($1, $2, $3);
-- name: ExistFollowing :one
SELECT 1 FROM p_following WHERE user_id=$1 AND follow_id=$2 AND is_del=0;
SELECT true FROM p_following WHERE user_id=$1 AND follow_id=$2 AND is_del=0;
-- name: DeleteFollowing :exec
UPDATE p_following

Loading…
Cancel
Save