database

package
v0.0.0-...-47d141a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 28, 2023 License: MIT Imports: 5 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CreatePostParams

type CreatePostParams struct {
	ID     uuid.UUID
	UserID uuid.UUID
	Title  string
	Body   string
	Tags   []string
}

type CreateUserParams

type CreateUserParams struct {
	ID        uuid.UUID
	FirstName string
	LastName  string
	Password  string
	Email     string
	Bio       sql.NullString
}

type DBTX

type DBTX interface {
	ExecContext(context.Context, string, ...interface{}) (sql.Result, error)
	PrepareContext(context.Context, string) (*sql.Stmt, error)
	QueryContext(context.Context, string, ...interface{}) (*sql.Rows, error)
	QueryRowContext(context.Context, string, ...interface{}) *sql.Row
}

type DisLikePostParams

type DisLikePostParams struct {
	PostID uuid.UUID
	UserID uuid.UUID
}

type FollowUserParams

type FollowUserParams struct {
	FollowerID  uuid.UUID
	FollowingID uuid.UUID
}

type GetAllPostsPageWiseParams

type GetAllPostsPageWiseParams struct {
	Limit  int32
	Offset int32
}

type GetPostsByUserIdPageWiseParams

type GetPostsByUserIdPageWiseParams struct {
	UserID uuid.UUID
	Limit  int32
	Offset int32
}

type LikePostParams

type LikePostParams struct {
	UserID uuid.UUID
	PostID uuid.UUID
}

type Post

type Post struct {
	ID        uuid.UUID
	UserID    uuid.UUID
	Title     string
	Body      string
	Likes     int32
	Views     int32
	Tags      []string
	CreatedAt time.Time
	UpdatedAt time.Time
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) CreatePost

func (q *Queries) CreatePost(ctx context.Context, arg CreatePostParams) (Post, error)

func (*Queries) CreateUser

func (q *Queries) CreateUser(ctx context.Context, arg CreateUserParams) (User, error)

func (*Queries) DecreasePostLikes

func (q *Queries) DecreasePostLikes(ctx context.Context, id uuid.UUID) (Post, error)

func (*Queries) DeletePost

func (q *Queries) DeletePost(ctx context.Context, id uuid.UUID) error

func (*Queries) DeleteUser

func (q *Queries) DeleteUser(ctx context.Context, id uuid.UUID) error

func (*Queries) DisLikePost

func (q *Queries) DisLikePost(ctx context.Context, arg DisLikePostParams) (UserLike, error)

func (*Queries) FollowUser

func (q *Queries) FollowUser(ctx context.Context, arg FollowUserParams) (UserFollower, error)

func (*Queries) GetAllLikedPosts

func (q *Queries) GetAllLikedPosts(ctx context.Context, userID uuid.UUID) ([]Post, error)

func (*Queries) GetAllPosts

func (q *Queries) GetAllPosts(ctx context.Context) ([]Post, error)

func (*Queries) GetAllPostsPageWise

func (q *Queries) GetAllPostsPageWise(ctx context.Context, arg GetAllPostsPageWiseParams) ([]Post, error)

func (*Queries) GetPostByPostId

func (q *Queries) GetPostByPostId(ctx context.Context, id uuid.UUID) (Post, error)

func (*Queries) GetPostsByTags

func (q *Queries) GetPostsByTags(ctx context.Context, dollar_1 []string) ([]Post, error)

func (*Queries) GetPostsByUserId

func (q *Queries) GetPostsByUserId(ctx context.Context, userID uuid.UUID) ([]Post, error)

func (*Queries) GetPostsByUserIdPageWise

func (q *Queries) GetPostsByUserIdPageWise(ctx context.Context, arg GetPostsByUserIdPageWiseParams) ([]Post, error)

func (*Queries) GetPostsOfFollowers

func (q *Queries) GetPostsOfFollowers(ctx context.Context, followerID uuid.UUID) ([]Post, error)

func (*Queries) GetUserByEmail

func (q *Queries) GetUserByEmail(ctx context.Context, email string) (User, error)

func (*Queries) IncreasePostLikes

func (q *Queries) IncreasePostLikes(ctx context.Context, id uuid.UUID) (Post, error)

func (*Queries) LikePost

func (q *Queries) LikePost(ctx context.Context, arg LikePostParams) (UserLike, error)

func (*Queries) UnfollowUser

func (q *Queries) UnfollowUser(ctx context.Context, arg UnfollowUserParams) (UserFollower, error)

func (*Queries) UpdatePost

func (q *Queries) UpdatePost(ctx context.Context, arg UpdatePostParams) (Post, error)

func (*Queries) UpdatePostViews

func (q *Queries) UpdatePostViews(ctx context.Context, id uuid.UUID) (Post, error)

func (*Queries) WithTx

func (q *Queries) WithTx(tx *sql.Tx) *Queries

type UnfollowUserParams

type UnfollowUserParams struct {
	FollowerID  uuid.UUID
	FollowingID uuid.UUID
}

type UpdatePostParams

type UpdatePostParams struct {
	ID    uuid.UUID
	Title string
	Body  string
	Tags  []string
}

type User

type User struct {
	ID        uuid.UUID
	FirstName string
	LastName  string
	Email     string
	Bio       sql.NullString
	Password  string
	Isadmin   bool
	CreatedAt time.Time
	UpdatedAt time.Time
}

type UserFollower

type UserFollower struct {
	FollowerID  uuid.UUID
	FollowingID uuid.UUID
}

type UserLike

type UserLike struct {
	UserID uuid.UUID
	PostID uuid.UUID
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL