作者 tangxvhui

评论的结构中增加记录url文本

... ... @@ -90,9 +90,10 @@ type (
SectionId int64 `json:"sectionId"` // 段落id
FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取
CompanyId int64 `json:",optional"` // 服务端自动获取
Pid int64 `json:"pid"` // 回复那个评论的id
Pid int64 `json:"pid,optional"` // 回复那个评论的id
Content string `json:"content"` // 评论的内容
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
AtWho []CommentAtWho `json:"atWho,optional"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl,optional"` // 评论内容中的url文本
}
CommentAtWho {
... ... @@ -115,6 +116,7 @@ type (
CountUserLove int `json:"countUserLove"` // 用户点赞数量
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
CreatedAt int64 `json:"createdAt"` //
}
)
... ... @@ -155,6 +157,7 @@ type (
CountUserLove int `json:"countUserLove"` // 用户点赞数量
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
CreatedAt int64 `json:"createdAt"` //
MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞)
Content string `json:"content"` // 评论的内容
... ... @@ -253,6 +256,8 @@ type (
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
CreatedAt int64 `json:"createdAt"` // 评论时间
Content string `json:"content"` // 评论的内容
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
Show int `json:"show"` // 显示状态
}
)
... ...
... ... @@ -132,6 +132,11 @@ func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.Mini
CountAdminLove: 0,
Show: domain.CommentShowEnable,
AtWho: []domain.UserSimple{},
MatchUrl: map[string]string{},
}
for k, v := range req.MatchUrl {
newComment.MatchUrl[k] = v
}
if selctionInfo != nil {
... ...
... ... @@ -89,6 +89,7 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt
CountUserLove: commentInfo.CountUserLove,
CountAdminLove: commentInfo.CountAdminLove,
AtWho: []types.CommentAtWho{},
MatchUrl: map[string]string{},
CreatedAt: commentInfo.CreatedAt,
MeLoveFlag: 0,
Content: commentInfo.Content,
... ... @@ -96,6 +97,9 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt
if _, ok := flagMap[commentInfo.Id]; ok {
commentResp.MeLoveFlag = 1
}
for k, v := range commentInfo.MatchUrl {
commentResp.MatchUrl[k] = v
}
for _, val := range commentInfo.AtWho {
commentResp.AtWho = append(commentResp.AtWho, types.CommentAtWho{
Id: val.Id,
... ... @@ -132,12 +136,16 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt
CountUserLove: val.CountUserLove,
CountAdminLove: val.CountAdminLove,
AtWho: []types.CommentAtWho{},
MatchUrl: map[string]string{},
CreatedAt: val.CreatedAt,
MeLoveFlag: 0,
}
if _, ok := flagMap[val.Id]; ok {
reply.MeLoveFlag = 1
}
for key, url := range val.MatchUrl {
reply.MatchUrl[key] = url
}
for _, val2 := range val.AtWho {
reply.AtWho = append(reply.AtWho, types.CommentAtWho{
Id: val2.Id,
... ...
... ... @@ -100,6 +100,7 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList
CountUserLove: val.CountUserLove,
CountAdminLove: val.CountAdminLove,
AtWho: []types.CommentAtWho{},
MatchUrl: map[string]string{},
CreatedAt: val.CreatedAt,
MeLoveFlag: 0,
Content: val.Content,
... ... @@ -111,7 +112,9 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList
if _, ok := flagMap[val.Id]; ok {
item.Comment.MeLoveFlag = 1
}
for key2, val2 := range val.MatchUrl {
item.Comment.MatchUrl[key2] = val2
}
for _, val2 := range val.AtWho {
item.Comment.AtWho = append(item.Comment.AtWho, types.CommentAtWho{
Id: val2.Id,
... ... @@ -174,6 +177,7 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag
CountUserLove: val.CountUserLove,
CountAdminLove: val.CountAdminLove,
AtWho: []types.CommentAtWho{},
MatchUrl: map[string]string{},
CreatedAt: val.CreatedAt,
MeLoveFlag: 0,
Content: val.Content,
... ... @@ -182,6 +186,9 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag
if _, ok := loveFlagMap[val.Id]; ok {
item.MeLoveFlag = 1
}
for key2, val2 := range val.MatchUrl {
item.MatchUrl[key2] = val2
}
for _, val2 := range val.AtWho {
item.AtWho = append(item.AtWho, types.CommentAtWho{
Id: val2.Id,
... ...
... ... @@ -56,6 +56,9 @@ func (l *MiniTop5ArticleCommentLogic) MiniTop5ArticleComment(req *types.MiniTop5
if _, ok := flagMap[val.Id]; ok {
item.MeLoveFlag = 1
}
for key, url := range val.MatchUrl {
item.MatchUrl[key] = url
}
for _, val2 := range val.AtWho {
item.AtWho = append(item.AtWho, types.CommentAtWho{
Id: val2.Id,
... ... @@ -95,6 +98,7 @@ func NewArticleCommentItem(val *domain.ArticleComment) types.ArticleCommentItem
CountUserLove: val.CountUserLove,
CountAdminLove: val.CountAdminLove,
AtWho: []types.CommentAtWho{},
MatchUrl: map[string]string{},
CreatedAt: val.CreatedAt,
MeLoveFlag: 0,
Content: val.Content,
... ...
... ... @@ -21,9 +21,10 @@ type MiniCreateArticleCommentRequest struct {
SectionId int64 `json:"sectionId"` // 段落id
FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取
CompanyId int64 `json:",optional"` // 服务端自动获取
Pid int64 `json:"pid"` // 回复那个评论的id
Pid int64 `json:"pid,optional"` // 回复那个评论的id
Content string `json:"content"` // 评论的内容
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
AtWho []CommentAtWho `json:"atWho,optional"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl,optional"` // 评论内容中的url文本
}
type CommentAtWho struct {
... ... @@ -47,6 +48,7 @@ type MiniCreateArticleCommentResponse struct {
CountUserLove int `json:"countUserLove"` // 用户点赞数量
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
CreatedAt int64 `json:"createdAt"` //
}
... ... @@ -85,6 +87,7 @@ type ArticleCommentItem struct {
CountUserLove int `json:"countUserLove"` // 用户点赞数量
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
CreatedAt int64 `json:"createdAt"` //
MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞)
Content string `json:"content"` // 评论的内容
... ... @@ -172,6 +175,8 @@ type SystemArticleCommentSearchItem struct {
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
CreatedAt int64 `json:"createdAt"` // 评论时间
Content string `json:"content"` // 评论的内容
AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
Show int `json:"show"` // 显示状态
}
... ...
... ... @@ -27,11 +27,13 @@ type ArticleComment struct {
ToUserId int64 // 回复谁的评论
ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论
AtWho []domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 填写评论@的人
MatchUrl map[string]string `gorm:"type:jsonb;serializer:json"` // 评论内容中出现的url. 用于页面上进行匹配文本后进行特殊显示处理
Content string // 评论内容
CountReply int // 回复数量
CountUserLove int // 用户点赞数量
CountAdminLove int // 运营点赞数量
Show int // 评论的展示状态(0显示、1不显示)
}
func (m *ArticleComment) TableName() string {
... ...
... ... @@ -199,6 +199,7 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti
CountAdminLove: from.CountAdminLove,
Show: domain.CommentShow(from.Show),
AtWho: from.AtWho,
MatchUrl: from.MatchUrl,
}
// err := copier.Copy(to, from)
return to, nil
... ... @@ -228,6 +229,7 @@ func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.Arti
CountUserLove: from.CountUserLove,
CountAdminLove: from.CountAdminLove,
Show: int(from.Show),
MatchUrl: from.MatchUrl,
}
// err := copier.Copy(to, from)
return to, nil
... ...
... ... @@ -28,7 +28,8 @@ type ArticleComment struct {
CountUserLove int `json:"countUserLove"` // 用户点赞数量
CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
Show CommentShow `json:"showState"` // 评论的展示状态(1显示、2不显示)
AtWho []UserSimple `json:"atWho"` // 填写评论时@的人
AtWho []UserSimple `json:"atWho"` // 填写评论时@的人. 评论内容中出现的@人,用于页面上进行匹配文本后进行特殊显示处理
MatchUrl map[string]string `json:"matchUrl"` // 评论内容中出现的url. 用于页面上进行匹配文本后进行特殊显示处理
// ...more
}
... ...