mirror of https://github.com/rocboss/paopao-ce
parent
0b0270a74b
commit
8688023508
@ -0,0 +1,67 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: core.sql
|
||||||
|
|
||||||
|
package pg
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const indexByAdmin = `-- name: IndexByAdmin :many
|
||||||
|
|
||||||
|
SELECT id, user_id, comment_count, collection_count, upvote_count, is_top, is_essence, is_lock, latest_replied_on, tags, attachment_price, ip, ip_loc, created_on, modified_on, deleted_on, is_del, visibility, share_count
|
||||||
|
FROM p_post
|
||||||
|
WHERE is_del=0
|
||||||
|
ORDER BY is_top DESC, latest_replied_on DESC
|
||||||
|
LIMIT $1 OFFSET $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type IndexByAdminParams struct {
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// core global sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error) {
|
||||||
|
rows, err := q.db.Query(ctx, indexByAdmin, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PPost
|
||||||
|
for rows.Next() {
|
||||||
|
var i PPost
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.CommentCount,
|
||||||
|
&i.CollectionCount,
|
||||||
|
&i.UpvoteCount,
|
||||||
|
&i.IsTop,
|
||||||
|
&i.IsEssence,
|
||||||
|
&i.IsLock,
|
||||||
|
&i.LatestRepliedOn,
|
||||||
|
&i.Tags,
|
||||||
|
&i.AttachmentPrice,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.Visibility,
|
||||||
|
&i.ShareCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pg
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5"
|
||||||
|
"github.com/jackc/pgx/v5/pgconn"
|
||||||
|
)
|
||||||
|
|
||||||
|
type DBTX interface {
|
||||||
|
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
|
||||||
|
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
|
||||||
|
QueryRow(context.Context, string, ...interface{}) pgx.Row
|
||||||
|
}
|
||||||
|
|
||||||
|
func New(db DBTX) *Queries {
|
||||||
|
return &Queries{db: db}
|
||||||
|
}
|
||||||
|
|
||||||
|
type Queries struct {
|
||||||
|
db DBTX
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
|
||||||
|
return &Queries{
|
||||||
|
db: tx,
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,326 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pg
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
type PAttachment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FileSize int64
|
||||||
|
ImgWidth int64
|
||||||
|
ImgHeight int64
|
||||||
|
Type int16
|
||||||
|
Content string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCaptcha struct {
|
||||||
|
ID int64
|
||||||
|
Phone pgtype.Text
|
||||||
|
Captcha pgtype.Text
|
||||||
|
UseTimes int32
|
||||||
|
ExpiredOn int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PComment struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentContent struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentReply struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
AtUserID int64
|
||||||
|
Content string
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContact struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
GroupID int64
|
||||||
|
Remark string
|
||||||
|
Status int16
|
||||||
|
IsTop int16
|
||||||
|
IsBlack int16
|
||||||
|
IsDel int16
|
||||||
|
NoticeEnable int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContactGroup struct {
|
||||||
|
ID int64
|
||||||
|
UserID int32
|
||||||
|
Name string
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PFollowing struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FollowID int64
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PMessage struct {
|
||||||
|
ID int64
|
||||||
|
SenderUserID int64
|
||||||
|
ReceiverUserID int64
|
||||||
|
Type int16
|
||||||
|
Brief string
|
||||||
|
Content string
|
||||||
|
PostID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID int64
|
||||||
|
IsRead int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPost struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostAttachmentBill struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
PaidAmount int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByComment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
CommentUserID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByMedium struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostCollection struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostContent struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostStar struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTag struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTopicUser struct {
|
||||||
|
ID int64
|
||||||
|
TopicID int64
|
||||||
|
UserID int64
|
||||||
|
AliasName pgtype.Text
|
||||||
|
Remark pgtype.Text
|
||||||
|
QuoteNum pgtype.Int8
|
||||||
|
IsTop int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ReserveA pgtype.Text
|
||||||
|
ReserveB pgtype.Text
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTweetCommentThumb struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
TweetID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID pgtype.Int8
|
||||||
|
CommentType int16
|
||||||
|
IsThumbsUp int16
|
||||||
|
IsThumbsDown int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PUser struct {
|
||||||
|
ID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Phone string
|
||||||
|
Password string
|
||||||
|
Salt string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
Balance int64
|
||||||
|
IsAdmin bool
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletRecharge struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Amount int64
|
||||||
|
TradeNo string
|
||||||
|
TradeStatus string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletStatement struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
ChangeAmount int64
|
||||||
|
BalanceSnapshot int64
|
||||||
|
Reason string
|
||||||
|
PostID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: authrity.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const beFriendIds = `-- name: BeFriendIds :many
|
||||||
|
|
||||||
|
SELECT user_id FROM p_contact WHERE friend_id=$1 AND status=2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// authorization_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) BeFriendIds(ctx context.Context, friendID int64) ([]int64, error) {
|
||||||
|
rows, err := q.db.Query(ctx, beFriendIds, friendID)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []int64
|
||||||
|
for rows.Next() {
|
||||||
|
var user_id int64
|
||||||
|
if err := rows.Scan(&user_id); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, user_id)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const isFriend = `-- name: IsFriend :one
|
||||||
|
SELECT status FROM p_contact WHERE user_id=$1 AND friend_id=$2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
type IsFriendParams struct {
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) IsFriend(ctx context.Context, arg *IsFriendParams) (int16, error) {
|
||||||
|
row := q.db.QueryRow(ctx, isFriend, arg.UserID, arg.FriendID)
|
||||||
|
var status int16
|
||||||
|
err := row.Scan(&status)
|
||||||
|
return status, err
|
||||||
|
}
|
||||||
|
|
||||||
|
const myFriendSet = `-- name: MyFriendSet :many
|
||||||
|
SELECT friend_id FROM p_contact WHERE user_id=$1 AND status=2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
func (q *Queries) MyFriendSet(ctx context.Context, userID int64) ([]int64, error) {
|
||||||
|
rows, err := q.db.Query(ctx, myFriendSet, userID)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []int64
|
||||||
|
for rows.Next() {
|
||||||
|
var friend_id int64
|
||||||
|
if err := rows.Scan(&friend_id); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, friend_id)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,116 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: comments.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const deleteComment = `-- name: DeleteComment :exec
|
||||||
|
|
||||||
|
UPDATE p_comment SET deleted_on=$1, is_del=1 WHERE id=$2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
type DeleteCommentParams struct {
|
||||||
|
DeletedOn int64
|
||||||
|
ID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// comment_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) DeleteComment(ctx context.Context, arg *DeleteCommentParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, deleteComment, arg.DeletedOn, arg.ID)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
const getDefaultComments = `-- name: GetDefaultComments :many
|
||||||
|
SELECT id, post_id, user_id, ip, ip_loc, created_on, modified_on, deleted_on, is_del, thumbs_up_count, thumbs_down_count FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id ASC LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetDefaultCommentsParams struct {
|
||||||
|
PostID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) GetDefaultComments(ctx context.Context, arg *GetDefaultCommentsParams) ([]*PComment, error) {
|
||||||
|
rows, err := q.db.Query(ctx, getDefaultComments, arg.PostID, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PComment
|
||||||
|
for rows.Next() {
|
||||||
|
var i PComment
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.PostID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.ThumbsUpCount,
|
||||||
|
&i.ThumbsDownCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const getNewestComments = `-- name: GetNewestComments :many
|
||||||
|
|
||||||
|
SELECT id, post_id, user_id, ip, ip_loc, created_on, modified_on, deleted_on, is_del, thumbs_up_count, thumbs_down_count FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id DESC LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetNewestCommentsParams struct {
|
||||||
|
PostID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// comment sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetNewestComments(ctx context.Context, arg *GetNewestCommentsParams) ([]*PComment, error) {
|
||||||
|
rows, err := q.db.Query(ctx, getNewestComments, arg.PostID, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PComment
|
||||||
|
for rows.Next() {
|
||||||
|
var i PComment
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.PostID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.ThumbsUpCount,
|
||||||
|
&i.ThumbsDownCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: contacts.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const createContact = `-- name: CreateContact :exec
|
||||||
|
|
||||||
|
INSERT INTO p_contact (user_id, friend_id, status, created_on) VALUES ($1, $2, $3, $4)
|
||||||
|
`
|
||||||
|
|
||||||
|
type CreateContactParams struct {
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
Status int16
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// contact_manager sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) CreateContact(ctx context.Context, arg *CreateContactParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, createContact,
|
||||||
|
arg.UserID,
|
||||||
|
arg.FriendID,
|
||||||
|
arg.Status,
|
||||||
|
arg.CreatedOn,
|
||||||
|
)
|
||||||
|
return err
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5"
|
||||||
|
"github.com/jackc/pgx/v5/pgconn"
|
||||||
|
)
|
||||||
|
|
||||||
|
type DBTX interface {
|
||||||
|
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
|
||||||
|
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
|
||||||
|
QueryRow(context.Context, string, ...interface{}) pgx.Row
|
||||||
|
}
|
||||||
|
|
||||||
|
func New(db DBTX) *Queries {
|
||||||
|
return &Queries{db: db}
|
||||||
|
}
|
||||||
|
|
||||||
|
type Queries struct {
|
||||||
|
db DBTX
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
|
||||||
|
return &Queries{
|
||||||
|
db: tx,
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: following.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const createFollowing = `-- name: CreateFollowing :exec
|
||||||
|
|
||||||
|
INSERT INTO p_following (user_id, follow_id, created_on) VALUES ($1, $2, $3)
|
||||||
|
`
|
||||||
|
|
||||||
|
type CreateFollowingParams struct {
|
||||||
|
UserID int64
|
||||||
|
FollowID int64
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// following_manager sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) CreateFollowing(ctx context.Context, arg *CreateFollowingParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, createFollowing, arg.UserID, arg.FollowID, arg.CreatedOn)
|
||||||
|
return err
|
||||||
|
}
|
@ -0,0 +1,25 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: messages.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUnreadCount = `-- name: GetUnreadCount :one
|
||||||
|
|
||||||
|
SELECT count(*) FROM p_message WHERE receiver_user_id=$1 AND is_read=0 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// message sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUnreadCount(ctx context.Context, receiverUserID int64) (int64, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUnreadCount, receiverUserID)
|
||||||
|
var count int64
|
||||||
|
err := row.Scan(&count)
|
||||||
|
return count, err
|
||||||
|
}
|
@ -0,0 +1,326 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
type PAttachment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FileSize int64
|
||||||
|
ImgWidth int64
|
||||||
|
ImgHeight int64
|
||||||
|
Type int16
|
||||||
|
Content string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCaptcha struct {
|
||||||
|
ID int64
|
||||||
|
Phone pgtype.Text
|
||||||
|
Captcha pgtype.Text
|
||||||
|
UseTimes int32
|
||||||
|
ExpiredOn int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PComment struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentContent struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentReply struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
AtUserID int64
|
||||||
|
Content string
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContact struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
GroupID int64
|
||||||
|
Remark string
|
||||||
|
Status int16
|
||||||
|
IsTop int16
|
||||||
|
IsBlack int16
|
||||||
|
IsDel int16
|
||||||
|
NoticeEnable int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContactGroup struct {
|
||||||
|
ID int64
|
||||||
|
UserID int32
|
||||||
|
Name string
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PFollowing struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FollowID int64
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PMessage struct {
|
||||||
|
ID int64
|
||||||
|
SenderUserID int64
|
||||||
|
ReceiverUserID int64
|
||||||
|
Type int16
|
||||||
|
Brief string
|
||||||
|
Content string
|
||||||
|
PostID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID int64
|
||||||
|
IsRead int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPost struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostAttachmentBill struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
PaidAmount int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByComment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
CommentUserID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByMedium struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostCollection struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostContent struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostStar struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTag struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTopicUser struct {
|
||||||
|
ID int64
|
||||||
|
TopicID int64
|
||||||
|
UserID int64
|
||||||
|
AliasName pgtype.Text
|
||||||
|
Remark pgtype.Text
|
||||||
|
QuoteNum pgtype.Int8
|
||||||
|
IsTop int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ReserveA pgtype.Text
|
||||||
|
ReserveB pgtype.Text
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTweetCommentThumb struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
TweetID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID pgtype.Int8
|
||||||
|
CommentType int16
|
||||||
|
IsThumbsUp int16
|
||||||
|
IsThumbsDown int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PUser struct {
|
||||||
|
ID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Phone string
|
||||||
|
Password string
|
||||||
|
Salt string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
Balance int64
|
||||||
|
IsAdmin bool
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletRecharge struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Amount int64
|
||||||
|
TradeNo string
|
||||||
|
TradeStatus string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletStatement struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
ChangeAmount int64
|
||||||
|
BalanceSnapshot int64
|
||||||
|
Reason string
|
||||||
|
PostID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
@ -0,0 +1,70 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Querier interface {
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// authorization_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
BeFriendIds(ctx context.Context, friendID int64) ([]int64, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// contact_manager sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
CreateContact(ctx context.Context, arg *CreateContactParams) error
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// following_manager sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
CreateFollowing(ctx context.Context, arg *CreateFollowingParams) error
|
||||||
|
DecrTagsById(ctx context.Context, arg *DecrTagsByIdParams) error
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// comment_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
DeleteComment(ctx context.Context, arg *DeleteCommentParams) error
|
||||||
|
GetDefaultComments(ctx context.Context, arg *GetDefaultCommentsParams) ([]*PComment, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// security sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetLatestPhoneCaptcha(ctx context.Context, phone pgtype.Text) (*PCaptcha, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// comment sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetNewestComments(ctx context.Context, arg *GetNewestCommentsParams) ([]*PComment, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// tweet sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetPostById(ctx context.Context, id int64) (*PPost, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// message sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUnreadCount(ctx context.Context, receiverUserID int64) (int64, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// user_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUserById(ctx context.Context, id int64) (*PUser, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// wallet sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUserWalletBills(ctx context.Context, arg *GetUserWalletBillsParams) (*PWalletStatement, error)
|
||||||
|
HotTags(ctx context.Context, arg *HotTagsParams) ([]*HotTagsRow, error)
|
||||||
|
IncrTags(ctx context.Context, arg *IncrTagsParams) ([]*IncrTagsRow, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// ship_index sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error)
|
||||||
|
InsertTags(ctx context.Context, arg *InsertTagsParams) (int64, error)
|
||||||
|
IsFriend(ctx context.Context, arg *IsFriendParams) (int16, error)
|
||||||
|
MyFriendSet(ctx context.Context, userID int64) ([]int64, error)
|
||||||
|
NewestTags(ctx context.Context, arg *NewestTagsParams) ([]*NewestTagsRow, error)
|
||||||
|
TagsByKeywordA(ctx context.Context) ([]*TagsByKeywordARow, error)
|
||||||
|
TagsByKeywordB(ctx context.Context, tag string) ([]*TagsByKeywordBRow, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
var _ Querier = (*Queries)(nil)
|
@ -0,0 +1,37 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: security.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getLatestPhoneCaptcha = `-- name: GetLatestPhoneCaptcha :one
|
||||||
|
|
||||||
|
SELECT id, phone, captcha, use_times, expired_on, created_on, modified_on, deleted_on, is_del FROM p_captcha WHERE phone=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// security sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetLatestPhoneCaptcha(ctx context.Context, phone pgtype.Text) (*PCaptcha, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getLatestPhoneCaptcha, phone)
|
||||||
|
var i PCaptcha
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Phone,
|
||||||
|
&i.Captcha,
|
||||||
|
&i.UseTimes,
|
||||||
|
&i.ExpiredOn,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,67 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: timeline.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const indexByAdmin = `-- name: IndexByAdmin :many
|
||||||
|
|
||||||
|
SELECT id, user_id, comment_count, collection_count, upvote_count, is_top, is_essence, is_lock, latest_replied_on, tags, attachment_price, ip, ip_loc, created_on, modified_on, deleted_on, is_del, visibility, share_count
|
||||||
|
FROM p_post
|
||||||
|
WHERE is_del=0
|
||||||
|
ORDER BY is_top DESC, latest_replied_on DESC
|
||||||
|
LIMIT $1 OFFSET $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type IndexByAdminParams struct {
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// ship_index sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error) {
|
||||||
|
rows, err := q.db.Query(ctx, indexByAdmin, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PPost
|
||||||
|
for rows.Next() {
|
||||||
|
var i PPost
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.CommentCount,
|
||||||
|
&i.CollectionCount,
|
||||||
|
&i.UpvoteCount,
|
||||||
|
&i.IsTop,
|
||||||
|
&i.IsEssence,
|
||||||
|
&i.IsLock,
|
||||||
|
&i.LatestRepliedOn,
|
||||||
|
&i.Tags,
|
||||||
|
&i.AttachmentPrice,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.Visibility,
|
||||||
|
&i.ShareCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,290 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: topics.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const decrTagsById = `-- name: DecrTagsById :exec
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num-1,
|
||||||
|
modified_on=$1
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE id = ANY($2::BIGINT[]) AND is_del = false AND quote_num >= 1
|
||||||
|
)
|
||||||
|
`
|
||||||
|
|
||||||
|
type DecrTagsByIdParams struct {
|
||||||
|
ModifiedOn int64
|
||||||
|
Ids []int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) DecrTagsById(ctx context.Context, arg *DecrTagsByIdParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, decrTagsById, arg.ModifiedOn, arg.Ids)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
const hotTags = `-- name: HotTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET $1 LIMIT $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type HotTagsParams struct {
|
||||||
|
Offset int32
|
||||||
|
Limit int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type HotTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
UserID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
IsAdmin bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) HotTags(ctx context.Context, arg *HotTagsParams) ([]*HotTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, hotTags, arg.Offset, arg.Limit)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*HotTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i HotTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.IsAdmin,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const incrTags = `-- name: IncrTags :many
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num+1,
|
||||||
|
modified_on = $1,
|
||||||
|
id_del = false
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE tag = ANY($2::VARCHAR[])
|
||||||
|
)
|
||||||
|
RETURNING id, user_id, tag, quote_num
|
||||||
|
`
|
||||||
|
|
||||||
|
type IncrTagsParams struct {
|
||||||
|
ModifiedOn int64
|
||||||
|
Tags []string
|
||||||
|
}
|
||||||
|
|
||||||
|
type IncrTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) IncrTags(ctx context.Context, arg *IncrTagsParams) ([]*IncrTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, incrTags, arg.ModifiedOn, arg.Tags)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*IncrTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i IncrTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const insertTags = `-- name: InsertTags :one
|
||||||
|
INSERT INTO p_tag (user_id, tag, created_on, modified_on, quote_num)
|
||||||
|
VALUES ($1, $2, $3, $3, 1)
|
||||||
|
RETURNING id
|
||||||
|
`
|
||||||
|
|
||||||
|
type InsertTagsParams struct {
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) InsertTags(ctx context.Context, arg *InsertTagsParams) (int64, error) {
|
||||||
|
row := q.db.QueryRow(ctx, insertTags, arg.UserID, arg.Tag, arg.CreatedOn)
|
||||||
|
var id int64
|
||||||
|
err := row.Scan(&id)
|
||||||
|
return id, err
|
||||||
|
}
|
||||||
|
|
||||||
|
const newestTags = `-- name: NewestTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY t.id DESC
|
||||||
|
OFFSET $1 LIMIT $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type NewestTagsParams struct {
|
||||||
|
Offset int32
|
||||||
|
Limit int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type NewestTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
UserID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
IsAdmin bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) NewestTags(ctx context.Context, arg *NewestTagsParams) ([]*NewestTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, newestTags, arg.Offset, arg.Limit)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*NewestTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i NewestTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.IsAdmin,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const tagsByKeywordA = `-- name: TagsByKeywordA :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del AND quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6
|
||||||
|
`
|
||||||
|
|
||||||
|
type TagsByKeywordARow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) TagsByKeywordA(ctx context.Context) ([]*TagsByKeywordARow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, tagsByKeywordA)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*TagsByKeywordARow
|
||||||
|
for rows.Next() {
|
||||||
|
var i TagsByKeywordARow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const tagsByKeywordB = `-- name: TagsByKeywordB :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del = false AND tag LIKE $1
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6
|
||||||
|
`
|
||||||
|
|
||||||
|
type TagsByKeywordBRow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) TagsByKeywordB(ctx context.Context, tag string) ([]*TagsByKeywordBRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, tagsByKeywordB, tag)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*TagsByKeywordBRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i TagsByKeywordBRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: tweets.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getPostById = `-- name: GetPostById :one
|
||||||
|
|
||||||
|
SELECT id, user_id, comment_count, collection_count, upvote_count, is_top, is_essence, is_lock, latest_replied_on, tags, attachment_price, ip, ip_loc, created_on, modified_on, deleted_on, is_del, visibility, share_count FROM p_post WHERE id=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// tweet sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetPostById(ctx context.Context, id int64) (*PPost, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getPostById, id)
|
||||||
|
var i PPost
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.CommentCount,
|
||||||
|
&i.CollectionCount,
|
||||||
|
&i.UpvoteCount,
|
||||||
|
&i.IsTop,
|
||||||
|
&i.IsEssence,
|
||||||
|
&i.IsLock,
|
||||||
|
&i.LatestRepliedOn,
|
||||||
|
&i.Tags,
|
||||||
|
&i.AttachmentPrice,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.Visibility,
|
||||||
|
&i.ShareCount,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: user.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUserById = `-- name: GetUserById :one
|
||||||
|
|
||||||
|
SELECT id, nickname, username, phone, password, salt, status, avatar, balance, is_admin, created_on, modified_on, deleted_on, is_del FROM p_user WHERE id=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// user_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUserById(ctx context.Context, id int64) (*PUser, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUserById, id)
|
||||||
|
var i PUser
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Phone,
|
||||||
|
&i.Password,
|
||||||
|
&i.Salt,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.Balance,
|
||||||
|
&i.IsAdmin,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: wallet.sql
|
||||||
|
|
||||||
|
package pga
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUserWalletBills = `-- name: GetUserWalletBills :one
|
||||||
|
|
||||||
|
SELECT id, user_id, change_amount, balance_snapshot, reason, post_id, created_on, modified_on, deleted_on, is_del
|
||||||
|
FROM p_wallet_statement
|
||||||
|
WHERE user_id=$1 AND is_del=0
|
||||||
|
ORDER BY id DESC
|
||||||
|
LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetUserWalletBillsParams struct {
|
||||||
|
UserID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// wallet sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUserWalletBills(ctx context.Context, arg *GetUserWalletBillsParams) (*PWalletStatement, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUserWalletBills, arg.UserID, arg.Limit, arg.Offset)
|
||||||
|
var i PWalletStatement
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.ChangeAmount,
|
||||||
|
&i.BalanceSnapshot,
|
||||||
|
&i.Reason,
|
||||||
|
&i.PostID,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,78 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: authrity.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const beFriendIds = `-- name: BeFriendIds :many
|
||||||
|
|
||||||
|
SELECT user_id FROM p_contact WHERE friend_id=$1 AND status=2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// authorization_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) BeFriendIds(ctx context.Context, friendID int64) ([]int64, error) {
|
||||||
|
rows, err := q.db.Query(ctx, beFriendIds, friendID)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []int64
|
||||||
|
for rows.Next() {
|
||||||
|
var user_id int64
|
||||||
|
if err := rows.Scan(&user_id); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, user_id)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const isFriend = `-- name: IsFriend :one
|
||||||
|
SELECT status FROM p_contact WHERE user_id=$1 AND friend_id=$2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
type IsFriendParams struct {
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) IsFriend(ctx context.Context, arg *IsFriendParams) (int16, error) {
|
||||||
|
row := q.db.QueryRow(ctx, isFriend, arg.UserID, arg.FriendID)
|
||||||
|
var status int16
|
||||||
|
err := row.Scan(&status)
|
||||||
|
return status, err
|
||||||
|
}
|
||||||
|
|
||||||
|
const myFriendSet = `-- name: MyFriendSet :many
|
||||||
|
SELECT friend_id FROM p_contact WHERE user_id=$1 AND status=2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
func (q *Queries) MyFriendSet(ctx context.Context, userID int64) ([]int64, error) {
|
||||||
|
rows, err := q.db.Query(ctx, myFriendSet, userID)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []int64
|
||||||
|
for rows.Next() {
|
||||||
|
var friend_id int64
|
||||||
|
if err := rows.Scan(&friend_id); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, friend_id)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,116 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: comments.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const deleteComment = `-- name: DeleteComment :exec
|
||||||
|
|
||||||
|
UPDATE p_comment SET deleted_on=$1, is_del=1 WHERE id=$2 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
type DeleteCommentParams struct {
|
||||||
|
DeletedOn int64
|
||||||
|
ID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// comment_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) DeleteComment(ctx context.Context, arg *DeleteCommentParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, deleteComment, arg.DeletedOn, arg.ID)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
const getDefaultComments = `-- name: GetDefaultComments :many
|
||||||
|
SELECT id, post_id, user_id, ip, ip_loc, created_on, modified_on, deleted_on, is_del, thumbs_up_count, thumbs_down_count FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id ASC LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetDefaultCommentsParams struct {
|
||||||
|
PostID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) GetDefaultComments(ctx context.Context, arg *GetDefaultCommentsParams) ([]*PComment, error) {
|
||||||
|
rows, err := q.db.Query(ctx, getDefaultComments, arg.PostID, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PComment
|
||||||
|
for rows.Next() {
|
||||||
|
var i PComment
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.PostID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.ThumbsUpCount,
|
||||||
|
&i.ThumbsDownCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const getNewestComments = `-- name: GetNewestComments :many
|
||||||
|
|
||||||
|
SELECT id, post_id, user_id, ip, ip_loc, created_on, modified_on, deleted_on, is_del, thumbs_up_count, thumbs_down_count FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id DESC LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetNewestCommentsParams struct {
|
||||||
|
PostID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// comment sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetNewestComments(ctx context.Context, arg *GetNewestCommentsParams) ([]*PComment, error) {
|
||||||
|
rows, err := q.db.Query(ctx, getNewestComments, arg.PostID, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PComment
|
||||||
|
for rows.Next() {
|
||||||
|
var i PComment
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.PostID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.ThumbsUpCount,
|
||||||
|
&i.ThumbsDownCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: contacts.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const createContact = `-- name: CreateContact :exec
|
||||||
|
|
||||||
|
INSERT INTO p_contact (user_id, friend_id, status, created_on) VALUES ($1, $2, $3, $4)
|
||||||
|
`
|
||||||
|
|
||||||
|
type CreateContactParams struct {
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
Status int16
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// contact_manager sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) CreateContact(ctx context.Context, arg *CreateContactParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, createContact,
|
||||||
|
arg.UserID,
|
||||||
|
arg.FriendID,
|
||||||
|
arg.Status,
|
||||||
|
arg.CreatedOn,
|
||||||
|
)
|
||||||
|
return err
|
||||||
|
}
|
@ -0,0 +1,32 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5"
|
||||||
|
"github.com/jackc/pgx/v5/pgconn"
|
||||||
|
)
|
||||||
|
|
||||||
|
type DBTX interface {
|
||||||
|
Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
|
||||||
|
Query(context.Context, string, ...interface{}) (pgx.Rows, error)
|
||||||
|
QueryRow(context.Context, string, ...interface{}) pgx.Row
|
||||||
|
}
|
||||||
|
|
||||||
|
func New(db DBTX) *Queries {
|
||||||
|
return &Queries{db: db}
|
||||||
|
}
|
||||||
|
|
||||||
|
type Queries struct {
|
||||||
|
db DBTX
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) WithTx(tx pgx.Tx) *Queries {
|
||||||
|
return &Queries{
|
||||||
|
db: tx,
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: following.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const createFollowing = `-- name: CreateFollowing :exec
|
||||||
|
|
||||||
|
INSERT INTO p_following (user_id, follow_id, created_on) VALUES ($1, $2, $3)
|
||||||
|
`
|
||||||
|
|
||||||
|
type CreateFollowingParams struct {
|
||||||
|
UserID int64
|
||||||
|
FollowID int64
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// following_manager sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) CreateFollowing(ctx context.Context, arg *CreateFollowingParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, createFollowing, arg.UserID, arg.FollowID, arg.CreatedOn)
|
||||||
|
return err
|
||||||
|
}
|
@ -0,0 +1,25 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: messages.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUnreadCount = `-- name: GetUnreadCount :one
|
||||||
|
|
||||||
|
SELECT count(*) FROM p_message WHERE receiver_user_id=$1 AND is_read=0 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// message sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUnreadCount(ctx context.Context, receiverUserID int64) (int64, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUnreadCount, receiverUserID)
|
||||||
|
var count int64
|
||||||
|
err := row.Scan(&count)
|
||||||
|
return count, err
|
||||||
|
}
|
@ -0,0 +1,326 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
type PAttachment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FileSize int64
|
||||||
|
ImgWidth int64
|
||||||
|
ImgHeight int64
|
||||||
|
Type int16
|
||||||
|
Content string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCaptcha struct {
|
||||||
|
ID int64
|
||||||
|
Phone pgtype.Text
|
||||||
|
Captcha pgtype.Text
|
||||||
|
UseTimes int32
|
||||||
|
ExpiredOn int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PComment struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentContent struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PCommentReply struct {
|
||||||
|
ID int64
|
||||||
|
CommentID int64
|
||||||
|
UserID int64
|
||||||
|
AtUserID int64
|
||||||
|
Content string
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ThumbsUpCount int32
|
||||||
|
ThumbsDownCount int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContact struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FriendID int64
|
||||||
|
GroupID int64
|
||||||
|
Remark string
|
||||||
|
Status int16
|
||||||
|
IsTop int16
|
||||||
|
IsBlack int16
|
||||||
|
IsDel int16
|
||||||
|
NoticeEnable int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PContactGroup struct {
|
||||||
|
ID int64
|
||||||
|
UserID int32
|
||||||
|
Name string
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PFollowing struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
FollowID int64
|
||||||
|
IsDel int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PMessage struct {
|
||||||
|
ID int64
|
||||||
|
SenderUserID int64
|
||||||
|
ReceiverUserID int64
|
||||||
|
Type int16
|
||||||
|
Brief string
|
||||||
|
Content string
|
||||||
|
PostID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID int64
|
||||||
|
IsRead int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPost struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostAttachmentBill struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
PaidAmount int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByComment struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
CommentUserID int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostByMedium struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
CommentCount int64
|
||||||
|
CollectionCount int64
|
||||||
|
UpvoteCount int64
|
||||||
|
IsTop int16
|
||||||
|
IsEssence int16
|
||||||
|
IsLock int16
|
||||||
|
LatestRepliedOn int64
|
||||||
|
Tags string
|
||||||
|
AttachmentPrice int64
|
||||||
|
Ip string
|
||||||
|
IpLoc string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
Visibility int16
|
||||||
|
ShareCount int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostCollection struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostContent struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
Content string
|
||||||
|
Type int16
|
||||||
|
Sort int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PPostStar struct {
|
||||||
|
ID int64
|
||||||
|
PostID int64
|
||||||
|
UserID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTag struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTopicUser struct {
|
||||||
|
ID int64
|
||||||
|
TopicID int64
|
||||||
|
UserID int64
|
||||||
|
AliasName pgtype.Text
|
||||||
|
Remark pgtype.Text
|
||||||
|
QuoteNum pgtype.Int8
|
||||||
|
IsTop int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
ReserveA pgtype.Text
|
||||||
|
ReserveB pgtype.Text
|
||||||
|
}
|
||||||
|
|
||||||
|
type PTweetCommentThumb struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
TweetID int64
|
||||||
|
CommentID int64
|
||||||
|
ReplyID pgtype.Int8
|
||||||
|
CommentType int16
|
||||||
|
IsThumbsUp int16
|
||||||
|
IsThumbsDown int16
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PUser struct {
|
||||||
|
ID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Phone string
|
||||||
|
Password string
|
||||||
|
Salt string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
Balance int64
|
||||||
|
IsAdmin bool
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletRecharge struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Amount int64
|
||||||
|
TradeNo string
|
||||||
|
TradeStatus string
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type PWalletStatement struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
ChangeAmount int64
|
||||||
|
BalanceSnapshot int64
|
||||||
|
Reason string
|
||||||
|
PostID int64
|
||||||
|
CreatedOn int64
|
||||||
|
ModifiedOn int64
|
||||||
|
DeletedOn int64
|
||||||
|
IsDel int16
|
||||||
|
}
|
@ -0,0 +1,70 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Querier interface {
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// authorization_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
BeFriendIds(ctx context.Context, friendID int64) ([]int64, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// contact_manager sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
CreateContact(ctx context.Context, arg *CreateContactParams) error
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// following_manager sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
CreateFollowing(ctx context.Context, arg *CreateFollowingParams) error
|
||||||
|
DecrTagsById(ctx context.Context, arg *DecrTagsByIdParams) error
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// comment_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
DeleteComment(ctx context.Context, arg *DeleteCommentParams) error
|
||||||
|
GetDefaultComments(ctx context.Context, arg *GetDefaultCommentsParams) ([]*PComment, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// security sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetLatestPhoneCaptcha(ctx context.Context, phone pgtype.Text) (*PCaptcha, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// comment sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetNewestComments(ctx context.Context, arg *GetNewestCommentsParams) ([]*PComment, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// tweet sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetPostById(ctx context.Context, id int64) (*PPost, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// message sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUnreadCount(ctx context.Context, receiverUserID int64) (int64, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// user_manage sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUserById(ctx context.Context, id int64) (*PUser, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// wallet sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
GetUserWalletBills(ctx context.Context, arg *GetUserWalletBillsParams) (*PWalletStatement, error)
|
||||||
|
HotTags(ctx context.Context, arg *HotTagsParams) ([]*HotTagsRow, error)
|
||||||
|
IncrTags(ctx context.Context, arg *IncrTagsParams) ([]*IncrTagsRow, error)
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// ship_index sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error)
|
||||||
|
InsertTags(ctx context.Context, arg *InsertTagsParams) (int64, error)
|
||||||
|
IsFriend(ctx context.Context, arg *IsFriendParams) (int16, error)
|
||||||
|
MyFriendSet(ctx context.Context, userID int64) ([]int64, error)
|
||||||
|
NewestTags(ctx context.Context, arg *NewestTagsParams) ([]*NewestTagsRow, error)
|
||||||
|
TagsByKeywordA(ctx context.Context) ([]*TagsByKeywordARow, error)
|
||||||
|
TagsByKeywordB(ctx context.Context, tag string) ([]*TagsByKeywordBRow, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
var _ Querier = (*Queries)(nil)
|
@ -0,0 +1,37 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: security.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/jackc/pgx/v5/pgtype"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getLatestPhoneCaptcha = `-- name: GetLatestPhoneCaptcha :one
|
||||||
|
|
||||||
|
SELECT id, phone, captcha, use_times, expired_on, created_on, modified_on, deleted_on, is_del FROM p_captcha WHERE phone=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// security sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetLatestPhoneCaptcha(ctx context.Context, phone pgtype.Text) (*PCaptcha, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getLatestPhoneCaptcha, phone)
|
||||||
|
var i PCaptcha
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Phone,
|
||||||
|
&i.Captcha,
|
||||||
|
&i.UseTimes,
|
||||||
|
&i.ExpiredOn,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,67 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: timeline.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const indexByAdmin = `-- name: IndexByAdmin :many
|
||||||
|
|
||||||
|
SELECT id, user_id, comment_count, collection_count, upvote_count, is_top, is_essence, is_lock, latest_replied_on, tags, attachment_price, ip, ip_loc, created_on, modified_on, deleted_on, is_del, visibility, share_count
|
||||||
|
FROM p_post
|
||||||
|
WHERE is_del=0
|
||||||
|
ORDER BY is_top DESC, latest_replied_on DESC
|
||||||
|
LIMIT $1 OFFSET $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type IndexByAdminParams struct {
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// ship_index sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error) {
|
||||||
|
rows, err := q.db.Query(ctx, indexByAdmin, arg.Limit, arg.Offset)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*PPost
|
||||||
|
for rows.Next() {
|
||||||
|
var i PPost
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.CommentCount,
|
||||||
|
&i.CollectionCount,
|
||||||
|
&i.UpvoteCount,
|
||||||
|
&i.IsTop,
|
||||||
|
&i.IsEssence,
|
||||||
|
&i.IsLock,
|
||||||
|
&i.LatestRepliedOn,
|
||||||
|
&i.Tags,
|
||||||
|
&i.AttachmentPrice,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.Visibility,
|
||||||
|
&i.ShareCount,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,290 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: topics.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const decrTagsById = `-- name: DecrTagsById :exec
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num-1,
|
||||||
|
modified_on=$1
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE id = ANY($2::BIGINT[]) AND is_del = false AND quote_num >= 1
|
||||||
|
)
|
||||||
|
`
|
||||||
|
|
||||||
|
type DecrTagsByIdParams struct {
|
||||||
|
ModifiedOn int64
|
||||||
|
Ids []int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) DecrTagsById(ctx context.Context, arg *DecrTagsByIdParams) error {
|
||||||
|
_, err := q.db.Exec(ctx, decrTagsById, arg.ModifiedOn, arg.Ids)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
const hotTags = `-- name: HotTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET $1 LIMIT $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type HotTagsParams struct {
|
||||||
|
Offset int32
|
||||||
|
Limit int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type HotTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
UserID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
IsAdmin bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) HotTags(ctx context.Context, arg *HotTagsParams) ([]*HotTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, hotTags, arg.Offset, arg.Limit)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*HotTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i HotTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.IsAdmin,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const incrTags = `-- name: IncrTags :many
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num+1,
|
||||||
|
modified_on = $1,
|
||||||
|
id_del = false
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE tag = ANY($2::VARCHAR[])
|
||||||
|
)
|
||||||
|
RETURNING id, user_id, tag, quote_num
|
||||||
|
`
|
||||||
|
|
||||||
|
type IncrTagsParams struct {
|
||||||
|
ModifiedOn int64
|
||||||
|
Tags []string
|
||||||
|
}
|
||||||
|
|
||||||
|
type IncrTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) IncrTags(ctx context.Context, arg *IncrTagsParams) ([]*IncrTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, incrTags, arg.ModifiedOn, arg.Tags)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*IncrTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i IncrTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const insertTags = `-- name: InsertTags :one
|
||||||
|
INSERT INTO p_tag (user_id, tag, created_on, modified_on, quote_num)
|
||||||
|
VALUES ($1, $2, $3, $3, 1)
|
||||||
|
RETURNING id
|
||||||
|
`
|
||||||
|
|
||||||
|
type InsertTagsParams struct {
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
CreatedOn int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) InsertTags(ctx context.Context, arg *InsertTagsParams) (int64, error) {
|
||||||
|
row := q.db.QueryRow(ctx, insertTags, arg.UserID, arg.Tag, arg.CreatedOn)
|
||||||
|
var id int64
|
||||||
|
err := row.Scan(&id)
|
||||||
|
return id, err
|
||||||
|
}
|
||||||
|
|
||||||
|
const newestTags = `-- name: NewestTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY t.id DESC
|
||||||
|
OFFSET $1 LIMIT $2
|
||||||
|
`
|
||||||
|
|
||||||
|
type NewestTagsParams struct {
|
||||||
|
Offset int32
|
||||||
|
Limit int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type NewestTagsRow struct {
|
||||||
|
ID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
UserID int64
|
||||||
|
Nickname string
|
||||||
|
Username string
|
||||||
|
Status int16
|
||||||
|
Avatar string
|
||||||
|
IsAdmin bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) NewestTags(ctx context.Context, arg *NewestTagsParams) ([]*NewestTagsRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, newestTags, arg.Offset, arg.Limit)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*NewestTagsRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i NewestTagsRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.IsAdmin,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const tagsByKeywordA = `-- name: TagsByKeywordA :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del AND quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6
|
||||||
|
`
|
||||||
|
|
||||||
|
type TagsByKeywordARow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) TagsByKeywordA(ctx context.Context) ([]*TagsByKeywordARow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, tagsByKeywordA)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*TagsByKeywordARow
|
||||||
|
for rows.Next() {
|
||||||
|
var i TagsByKeywordARow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
const tagsByKeywordB = `-- name: TagsByKeywordB :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del = false AND tag LIKE $1
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6
|
||||||
|
`
|
||||||
|
|
||||||
|
type TagsByKeywordBRow struct {
|
||||||
|
ID int64
|
||||||
|
UserID int64
|
||||||
|
Tag string
|
||||||
|
QuoteNum int64
|
||||||
|
}
|
||||||
|
|
||||||
|
func (q *Queries) TagsByKeywordB(ctx context.Context, tag string) ([]*TagsByKeywordBRow, error) {
|
||||||
|
rows, err := q.db.Query(ctx, tagsByKeywordB, tag)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer rows.Close()
|
||||||
|
var items []*TagsByKeywordBRow
|
||||||
|
for rows.Next() {
|
||||||
|
var i TagsByKeywordBRow
|
||||||
|
if err := rows.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.Tag,
|
||||||
|
&i.QuoteNum,
|
||||||
|
); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
items = append(items, &i)
|
||||||
|
}
|
||||||
|
if err := rows.Err(); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return items, nil
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: tweets.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getPostById = `-- name: GetPostById :one
|
||||||
|
|
||||||
|
SELECT id, user_id, comment_count, collection_count, upvote_count, is_top, is_essence, is_lock, latest_replied_on, tags, attachment_price, ip, ip_loc, created_on, modified_on, deleted_on, is_del, visibility, share_count FROM p_post WHERE id=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// tweet sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetPostById(ctx context.Context, id int64) (*PPost, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getPostById, id)
|
||||||
|
var i PPost
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.CommentCount,
|
||||||
|
&i.CollectionCount,
|
||||||
|
&i.UpvoteCount,
|
||||||
|
&i.IsTop,
|
||||||
|
&i.IsEssence,
|
||||||
|
&i.IsLock,
|
||||||
|
&i.LatestRepliedOn,
|
||||||
|
&i.Tags,
|
||||||
|
&i.AttachmentPrice,
|
||||||
|
&i.Ip,
|
||||||
|
&i.IpLoc,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
&i.Visibility,
|
||||||
|
&i.ShareCount,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: user.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUserById = `-- name: GetUserById :one
|
||||||
|
|
||||||
|
SELECT id, nickname, username, phone, password, salt, status, avatar, balance, is_admin, created_on, modified_on, deleted_on, is_del FROM p_user WHERE id=$1 AND is_del=0
|
||||||
|
`
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// user_manage sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUserById(ctx context.Context, id int64) (*PUser, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUserById, id)
|
||||||
|
var i PUser
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.Nickname,
|
||||||
|
&i.Username,
|
||||||
|
&i.Phone,
|
||||||
|
&i.Password,
|
||||||
|
&i.Salt,
|
||||||
|
&i.Status,
|
||||||
|
&i.Avatar,
|
||||||
|
&i.Balance,
|
||||||
|
&i.IsAdmin,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,46 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
// source: wallet.sql
|
||||||
|
|
||||||
|
package pgc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
const getUserWalletBills = `-- name: GetUserWalletBills :one
|
||||||
|
|
||||||
|
SELECT id, user_id, change_amount, balance_snapshot, reason, post_id, created_on, modified_on, deleted_on, is_del
|
||||||
|
FROM p_wallet_statement
|
||||||
|
WHERE user_id=$1 AND is_del=0
|
||||||
|
ORDER BY id DESC
|
||||||
|
LIMIT $2 OFFSET $3
|
||||||
|
`
|
||||||
|
|
||||||
|
type GetUserWalletBillsParams struct {
|
||||||
|
UserID int64
|
||||||
|
Limit int32
|
||||||
|
Offset int32
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
// wallet sql dml
|
||||||
|
// ------------------------------------------------------------------------------
|
||||||
|
func (q *Queries) GetUserWalletBills(ctx context.Context, arg *GetUserWalletBillsParams) (*PWalletStatement, error) {
|
||||||
|
row := q.db.QueryRow(ctx, getUserWalletBills, arg.UserID, arg.Limit, arg.Offset)
|
||||||
|
var i PWalletStatement
|
||||||
|
err := row.Scan(
|
||||||
|
&i.ID,
|
||||||
|
&i.UserID,
|
||||||
|
&i.ChangeAmount,
|
||||||
|
&i.BalanceSnapshot,
|
||||||
|
&i.Reason,
|
||||||
|
&i.PostID,
|
||||||
|
&i.CreatedOn,
|
||||||
|
&i.ModifiedOn,
|
||||||
|
&i.DeletedOn,
|
||||||
|
&i.IsDel,
|
||||||
|
)
|
||||||
|
return &i, err
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
// Code generated by sqlc. DO NOT EDIT.
|
||||||
|
// versions:
|
||||||
|
// sqlc v1.20.0
|
||||||
|
|
||||||
|
package pg
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Querier interface {
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// core global sql dml
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
IndexByAdmin(ctx context.Context, arg *IndexByAdminParams) ([]*PPost, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
var _ Querier = (*Queries)(nil)
|
@ -0,0 +1,10 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- core global sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: IndexByAdmin :many
|
||||||
|
SELECT *
|
||||||
|
FROM p_post
|
||||||
|
WHERE is_del=0
|
||||||
|
ORDER BY is_top DESC, latest_replied_on DESC
|
||||||
|
LIMIT $1 OFFSET $2;
|
@ -0,0 +1,12 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- authorization_manage sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: BeFriendIds :many
|
||||||
|
SELECT user_id FROM p_contact WHERE friend_id=$1 AND status=2 AND is_del=0;
|
||||||
|
|
||||||
|
-- name: MyFriendSet :many
|
||||||
|
SELECT friend_id FROM p_contact WHERE user_id=$1 AND status=2 AND is_del=0;
|
||||||
|
|
||||||
|
-- name: IsFriend :one
|
||||||
|
SELECT status FROM p_contact WHERE user_id=$1 AND friend_id=$2 AND is_del=0;
|
@ -0,0 +1,16 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- comment sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetNewestComments :many
|
||||||
|
SELECT * FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id DESC LIMIT $2 OFFSET $3;
|
||||||
|
|
||||||
|
-- name: GetDefaultComments :many
|
||||||
|
SELECT * FROM p_comment WHERE post_id=$1 AND is_del=0 ORDER BY id ASC LIMIT $2 OFFSET $3;
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- comment_manage sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: DeleteComment :exec
|
||||||
|
UPDATE p_comment SET deleted_on=$1, is_del=1 WHERE id=$2 AND is_del=0;
|
@ -0,0 +1,6 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- contact_manager sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: CreateContact :exec
|
||||||
|
INSERT INTO p_contact (user_id, friend_id, status, created_on) VALUES ($1, $2, $3, $4);
|
@ -0,0 +1,6 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- following_manager sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: CreateFollowing :exec
|
||||||
|
INSERT INTO p_following (user_id, follow_id, created_on) VALUES ($1, $2, $3);
|
@ -0,0 +1,6 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- message sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetUnreadCount :one
|
||||||
|
SELECT count(*) FROM p_message WHERE receiver_user_id=$1 AND is_read=0 AND is_del=0;
|
@ -0,0 +1,6 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- security sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetLatestPhoneCaptcha :one
|
||||||
|
SELECT * FROM p_captcha WHERE phone=$1 AND is_del=0;
|
@ -0,0 +1,10 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- ship_index sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: IndexByAdmin :many
|
||||||
|
SELECT *
|
||||||
|
FROM p_post
|
||||||
|
WHERE is_del=0
|
||||||
|
ORDER BY is_top DESC, latest_replied_on DESC
|
||||||
|
LIMIT $1 OFFSET $2;
|
@ -0,0 +1,54 @@
|
|||||||
|
-- name: NewestTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY t.id DESC
|
||||||
|
OFFSET $1 LIMIT $2;
|
||||||
|
|
||||||
|
-- name: HotTags :many
|
||||||
|
SELECT t.id, t.tag, t.quote_num, u.id user_id, u.nickname, u.username, u.status, u.avatar, u.is_admin
|
||||||
|
FROM p_tag t JOIN p_user u ON t.user_id = u.id
|
||||||
|
WHERE t.is_del = false AND t.quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET $1 LIMIT $2;
|
||||||
|
|
||||||
|
-- name: TagsByKeywordA :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del AND quote_num > 0
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6;
|
||||||
|
|
||||||
|
-- name: TagsByKeywordB :many
|
||||||
|
SELECT id, user_id, tag, quote_num
|
||||||
|
FROM p_tag
|
||||||
|
WHERE is_del = false AND tag LIKE $1
|
||||||
|
ORDER BY quote_num DESC
|
||||||
|
OFFSET 0 LIMIT 6;
|
||||||
|
|
||||||
|
-- name: InsertTags :one
|
||||||
|
INSERT INTO p_tag (user_id, tag, created_on, modified_on, quote_num)
|
||||||
|
VALUES ($1, $2, $3, $3, 1)
|
||||||
|
RETURNING id;
|
||||||
|
|
||||||
|
-- name: DecrTagsById :exec
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num-1,
|
||||||
|
modified_on=$1
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE id = ANY(@ids::BIGINT[]) AND is_del = false AND quote_num >= 1
|
||||||
|
);
|
||||||
|
|
||||||
|
-- name: IncrTags :many
|
||||||
|
UPDATE p_tag
|
||||||
|
SET quote_num = quote_num+1,
|
||||||
|
modified_on = $1,
|
||||||
|
id_del = false
|
||||||
|
WHERE id IN (
|
||||||
|
SELECT id
|
||||||
|
FROM p_tag
|
||||||
|
WHERE tag = ANY(@tags::VARCHAR[])
|
||||||
|
)
|
||||||
|
RETURNING id, user_id, tag, quote_num;
|
@ -0,0 +1,6 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- tweet sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetPostById :one
|
||||||
|
SELECT * FROM p_post WHERE id=$1 AND is_del=0;
|
@ -0,0 +1,7 @@
|
|||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- user_manage sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetUserById :one
|
||||||
|
SELECT * FROM p_user WHERE id=$1 AND is_del=0;
|
@ -0,0 +1,10 @@
|
|||||||
|
--------------------------------------------------------------------------------
|
||||||
|
-- wallet sql dml
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
-- name: GetUserWalletBills :one
|
||||||
|
SELECT *
|
||||||
|
FROM p_wallet_statement
|
||||||
|
WHERE user_id=$1 AND is_del=0
|
||||||
|
ORDER BY id DESC
|
||||||
|
LIMIT $2 OFFSET $3;
|
Loading…
Reference in new issue