作者 tangxvhui

更新模型

package domain
import "time"
import (
"context"
"time"
"gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/db/transaction"
)
type Article struct {
Id int
Id int64
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt time.Time
AuthorId int // 发布人
Title string // 文章标题
Images []Image // 图片
WhoRead []string // 谁可以看
WhoReview []string // 评论人
Location Location // 坐标
DeletedAt *time.Time
AuthorId int64 // 发布人
Author ArticleAuthor // 发布人
Title string // 文章标题
Images []Image // 图片
WhoRead []int64 // 谁可以看
WhoReview []int64 // 评论人
Location Location // 坐标
// ...more
}
type ArticleAuthor struct {
Id int64 // 人员id
Name string // 人员的名字
Avatar string // 人员头像URL
Group string // 人员的分组
}
type ArticleRepository interface {
Insert(ctx context.Context, conn transaction.Conn, dm *Article) (*Article, error)
Update(ctx context.Context, conn transaction.Conn, dm *Article) (*Article, error)
Delete(ctx context.Context, conn transaction.Conn, dm *Article) (*Article, error)
FindOne(ctx context.Context, conn transaction.Conn, id int64) (*Article, error)
Find(ctx context.Context, conn transaction.Conn, queryOptions map[string]interface{}) (int64, []*Article, error)
}
... ...
package domain
// 编辑文章后保存的历史记录
type ArticleBackup struct {
Id int64
}
... ...
... ... @@ -4,16 +4,30 @@ import "time"
// 文章评论
type ArticleComment struct {
Id int // 评论id
Id int64 // 评论id
UpdatedAt time.Time // 更新时间
DeletedAt *time.Time
CreatedAt time.Time
Pid int // 对哪个评论进行回复
TopId int // 回复评论的最顶层
ArticleId int // 文章id
ArticleSectionId int // 文本内容id
SectionContent string // 引用的文章内容文本
FromUserId int // 谁填写的评论
ToUserId int // 回复谁的评论
Content string // 评论内容
Pid int64 // 对哪个评论进行回复
TopId int64 // 归属于最上级的哪个评论
ArticleId int64 // 文章id
ArticleSectionId int64 // 文本内容id
SectionContent string // 引用的文章内容文本
FromUserId int64 // 谁填写的评论
FromUser CommentUser // 谁填写的评论
ToUserId int64 // 回复谁的评论
ToUser CommentUser // 回复谁的评论
Content string // 评论内容
CountReply int // 回复数量
CountUserLove int // 用户点赞数量
CountAdminLove int // 运营点赞数量
// ...more
}
// 评论的填写人
type CommentUser struct {
Id int64 // 人员id
Name string // 人员的名字
Avatar string // 人员头像URL
Group string // 人员的分组
}
... ...
package domain
import "time"
// 填写文章时保存的草稿
type ArticleDraft struct {
Id int64
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time
Template int // 填写内容时用的样板 1、演绎式 2、归纳式
Content []string // 文章内容
AuthorId int64 // 发布人
Title string // 文章标题
Images []Image // 图片
WhoRead []int64 // 谁可以看
WhoReview []int64 // 评论人
Location Location // 坐标
}
... ...
package domain
import "time"
import (
"context"
"time"
"gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/db/transaction"
)
// 文章段落
type ArticleSection struct {
Id int
Id int64
UpdatedAt time.Time // 更新时间
DeletedAt *time.Time //
CreatedAt time.Time //
ArticleId int // 文章id
ArticleId int64 // 文章id
Content string // 文本内容
SortBy int // 排序
TotalComment int // 评论的数量
// ...more
}
type ArticleSectionRepository interface {
Insert(ctx context.Context, conn transaction.Conn, dm *ArticleSection) (*ArticleSection, error)
Update(ctx context.Context, conn transaction.Conn, dm *Article) (*ArticleSection, error)
Delete(ctx context.Context, conn transaction.Conn, dm *ArticleSection) (*ArticleSection, error)
FindOne(ctx context.Context, conn transaction.Conn, id int64) (*ArticleSection, error)
Find(ctx context.Context, conn transaction.Conn, queryOptions map[string]interface{}) (int64, []*ArticleSection, error)
}
... ...
package domain
import "time"
// 人员点赞标记
type UserLoveFlag struct {
Id int64
ArticleId int64 //点赞文章时,填文章id
CommentId int64 //点赞评论时,填评论id
UserId int64
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time
}
... ...
package domain
// 人员查看文章详情后,标记一个记录
type UserReadArticle struct{}
... ...