blog

package
v0.0.0-...-8e0b234 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2024 License: OSL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// 模块名称
	AppName = "blogs"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AuditInfo

type AuditInfo struct {
	// 审核时间
	Audit_at int64 `json:"audit_at" gorm:"column:audit_at"`
	// 是否审核通过
	IsAuditPass bool `json:"is_audit_pass" gorm:"column:is_audit_pass"`
}

审核相关字段 `audit_at` int NOT NULL COMMENT '审核时间', `is_audit_pass` tinyint NOT NULL COMMENT '是否审核通过',

func NewAuditInfo

func NewAuditInfo() *AuditInfo

AuditInfo的构造函数

type Blog

type Blog struct {
	// 用户Id
	Id int `json:"id" gorm:"column:id"`
	// 创建时间, 时间戳 10位, 秒
	CreatedAt int64 `json:"created_at" gorm:"column:created_at"`
	// 更新时间, 时间戳 10位, 秒
	UpdatedAt int64 `json:"updated_at" gorm:"column:updated_at"`

	// 用户参数
	*CreateBlogRequest
	// // 发布
	*ChangedBlogStatusRequest
	// // 审核
	*AuditInfo
}

系统生成 `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '文章的Id', `created_at` int NOT NULL COMMENT '创建时间', `updated_at` int NOT NULL COMMENT '更新时间',

func NewBlog

func NewBlog(req *CreateBlogRequest) *Blog

type BlogSet

type BlogSet struct {
	// 总共有多少个
	Total int64 `json:"total"`
	// 当前查询的数据清单
	Items []*Blog `json:"items"`
}

func NewBlogSet

func NewBlogSet() *BlogSet

BlogSet的构造函数

func (*BlogSet) String

func (u *BlogSet) String() string

type ChangedBlogStatusRequest

type ChangedBlogStatusRequest struct {
	// 发布时间
	PublishedAt int64 `json:"published_at" gorm:"column:published_at"`
	// 文章状态: 草稿/已发布
	Status Status `json:"status" gorm:"column:status"`
}

发布才能修改文章状态 `published_at` int NOT NULL COMMENT '发布时间', `status` tinyint NOT NULL COMMENT '文章状态: 草稿/已发布',

func NewChangedBlogStatusRequest

func NewChangedBlogStatusRequest() *ChangedBlogStatusRequest

ChangedBlogStatusRequest的构造函数

type CreateBlogRequest

type CreateBlogRequest struct {
	// 文章标题
	Title string `json:"title" gorm:"column:title" validate:"required"`
	// 作者
	Author string `json:"author" gorm:"column:author" validate:"required"`
	// 文章内容
	Content string `json:"content" gorm:"column:content" validate:"required"`
	// 文章概要信息
	Summary string `json:"summary" gorm:"column:summary"`
	// 创建人
	CreateBy string `json:"create_by" gorm:"column:create_by"`
	// 标签 https://gorm.io/docs/serializer.html
	Tags map[string]string `json:"tags" gorm:"column:tags;serializer:json"`
}

`title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '文章标题', `author` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '作者', `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '文章内容', `summary` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '文章概要信息', `create_by` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人', `tags` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '标签',

func NewCreateBlogRequest

func NewCreateBlogRequest() *CreateBlogRequest

CreateBlogRequest构造函数

func (*CreateBlogRequest) Validate

func (req *CreateBlogRequest) Validate() error

type DeleteBlogRequest

type DeleteBlogRequest struct {
	Id string
}

func NewDeleteBlogRequest

func NewDeleteBlogRequest(id string) *DeleteBlogRequest

DeleteBlogRequest的构造函数

type DescribeBlogRequest

type DescribeBlogRequest struct {
	Id string
}

func NewDescribeBlogRequest

func NewDescribeBlogRequest(id string) *DescribeBlogRequest

type QueryBlogRequest

type QueryBlogRequest struct {
	// 分页大小, 一个多少个
	PageSize int
	// 当前页, 查询哪一页的数据
	PageNumber int
	// 谁创建的文章
	CreateBy string
	// 通过文章名称进行关键字搜索
	KeyWords string
}

func NewQueryBlogRequest

func NewQueryBlogRequest() *QueryBlogRequest

QueryBlogRequest的构造函数

func NewQueryBlogRequestFromGin

func NewQueryBlogRequestFromGin(c *gin.Context) *QueryBlogRequest

func (*QueryBlogRequest) Limit

func (req *QueryBlogRequest) Limit() int

func (*QueryBlogRequest) Offset

func (req *QueryBlogRequest) Offset() int

1, 0 2, 20, 3, 20 * 2 4, 20 * 3

type Service

type Service interface {
	// 创建一个博客
	CreateBlog(context.Context, *CreateBlogRequest) (*Blog, error)
	// 获取博客列表
	QueryBlog(context.Context, *QueryBlogRequest) (*BlogSet, error)
	// 获取博客详情
	DescribeBlog(context.Context, *DescribeBlogRequest) (*Blog, error)
	// 更新博客
	UpdateBlog(context.Context, *UpdateBlogRequest) (*Blog, error)
	// 删除博客
	DeleteBlog(context.Context, *DeleteBlogRequest) (*Blog, error)
	// // 文章状态修改, 比如发布
	ChangedBlogStatus(context.Context, *ChangedBlogStatusRequest) (*Blog, error)
	// // 文章审核
	AuditBlog(context.Context, *AuditInfo) (*Blog, error)
}

blog Service接口定义

type Status

type Status int
const (
	// 草稿
	STATUS_DRAFT Status = iota
	// 已发布
	STATUS_PUBLISHED
)

type UpdateBlogRequest

type UpdateBlogRequest struct {
	// 被更新的博客Id
	Id string `json:"id"`
	// 更新模式
	UpdateMode common.UpdateMode `json:"update_mode"`
	// 更新时的数据
	*CreateBlogRequest
}

func NewUpdateBlogRequest

func NewUpdateBlogRequest(id string) *UpdateBlogRequest

UpdateBlogRequest的构造函数

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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