正在显示
9 个修改的文件
包含
45 行增加
和
6 行删除
| @@ -90,9 +90,10 @@ type ( | @@ -90,9 +90,10 @@ type ( | ||
| 90 | SectionId int64 `json:"sectionId"` // 段落id | 90 | SectionId int64 `json:"sectionId"` // 段落id |
| 91 | FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取 | 91 | FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取 |
| 92 | CompanyId int64 `json:",optional"` // 服务端自动获取 | 92 | CompanyId int64 `json:",optional"` // 服务端自动获取 |
| 93 | - Pid int64 `json:"pid"` // 回复那个评论的id | 93 | + Pid int64 `json:"pid,optional"` // 回复那个评论的id |
| 94 | Content string `json:"content"` // 评论的内容 | 94 | Content string `json:"content"` // 评论的内容 |
| 95 | - AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 95 | + AtWho []CommentAtWho `json:"atWho,optional"` // 填写评论时@的人 |
| 96 | + MatchUrl map[string]string `json:"matchUrl,optional"` // 评论内容中的url文本 | ||
| 96 | } | 97 | } |
| 97 | 98 | ||
| 98 | CommentAtWho { | 99 | CommentAtWho { |
| @@ -115,6 +116,7 @@ type ( | @@ -115,6 +116,7 @@ type ( | ||
| 115 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 | 116 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 |
| 116 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 117 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 117 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 118 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 |
| 119 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 118 | CreatedAt int64 `json:"createdAt"` // | 120 | CreatedAt int64 `json:"createdAt"` // |
| 119 | } | 121 | } |
| 120 | ) | 122 | ) |
| @@ -155,6 +157,7 @@ type ( | @@ -155,6 +157,7 @@ type ( | ||
| 155 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 | 157 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 |
| 156 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 158 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 157 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 159 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 |
| 160 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 158 | CreatedAt int64 `json:"createdAt"` // | 161 | CreatedAt int64 `json:"createdAt"` // |
| 159 | MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞) | 162 | MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞) |
| 160 | Content string `json:"content"` // 评论的内容 | 163 | Content string `json:"content"` // 评论的内容 |
| @@ -253,6 +256,8 @@ type ( | @@ -253,6 +256,8 @@ type ( | ||
| 253 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 256 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 254 | CreatedAt int64 `json:"createdAt"` // 评论时间 | 257 | CreatedAt int64 `json:"createdAt"` // 评论时间 |
| 255 | Content string `json:"content"` // 评论的内容 | 258 | Content string `json:"content"` // 评论的内容 |
| 259 | + AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | ||
| 260 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 256 | Show int `json:"show"` // 显示状态 | 261 | Show int `json:"show"` // 显示状态 |
| 257 | } | 262 | } |
| 258 | ) | 263 | ) |
| @@ -132,6 +132,11 @@ func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.Mini | @@ -132,6 +132,11 @@ func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.Mini | ||
| 132 | CountAdminLove: 0, | 132 | CountAdminLove: 0, |
| 133 | Show: domain.CommentShowEnable, | 133 | Show: domain.CommentShowEnable, |
| 134 | AtWho: []domain.UserSimple{}, | 134 | AtWho: []domain.UserSimple{}, |
| 135 | + MatchUrl: map[string]string{}, | ||
| 136 | + } | ||
| 137 | + | ||
| 138 | + for k, v := range req.MatchUrl { | ||
| 139 | + newComment.MatchUrl[k] = v | ||
| 135 | } | 140 | } |
| 136 | 141 | ||
| 137 | if selctionInfo != nil { | 142 | if selctionInfo != nil { |
| @@ -89,6 +89,7 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | @@ -89,6 +89,7 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | ||
| 89 | CountUserLove: commentInfo.CountUserLove, | 89 | CountUserLove: commentInfo.CountUserLove, |
| 90 | CountAdminLove: commentInfo.CountAdminLove, | 90 | CountAdminLove: commentInfo.CountAdminLove, |
| 91 | AtWho: []types.CommentAtWho{}, | 91 | AtWho: []types.CommentAtWho{}, |
| 92 | + MatchUrl: map[string]string{}, | ||
| 92 | CreatedAt: commentInfo.CreatedAt, | 93 | CreatedAt: commentInfo.CreatedAt, |
| 93 | MeLoveFlag: 0, | 94 | MeLoveFlag: 0, |
| 94 | Content: commentInfo.Content, | 95 | Content: commentInfo.Content, |
| @@ -96,6 +97,9 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | @@ -96,6 +97,9 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | ||
| 96 | if _, ok := flagMap[commentInfo.Id]; ok { | 97 | if _, ok := flagMap[commentInfo.Id]; ok { |
| 97 | commentResp.MeLoveFlag = 1 | 98 | commentResp.MeLoveFlag = 1 |
| 98 | } | 99 | } |
| 100 | + for k, v := range commentInfo.MatchUrl { | ||
| 101 | + commentResp.MatchUrl[k] = v | ||
| 102 | + } | ||
| 99 | for _, val := range commentInfo.AtWho { | 103 | for _, val := range commentInfo.AtWho { |
| 100 | commentResp.AtWho = append(commentResp.AtWho, types.CommentAtWho{ | 104 | commentResp.AtWho = append(commentResp.AtWho, types.CommentAtWho{ |
| 101 | Id: val.Id, | 105 | Id: val.Id, |
| @@ -132,12 +136,16 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | @@ -132,12 +136,16 @@ func (l *MiniGetArticleCommentLogic) MiniGetArticleComment(req *types.MiniGetArt | ||
| 132 | CountUserLove: val.CountUserLove, | 136 | CountUserLove: val.CountUserLove, |
| 133 | CountAdminLove: val.CountAdminLove, | 137 | CountAdminLove: val.CountAdminLove, |
| 134 | AtWho: []types.CommentAtWho{}, | 138 | AtWho: []types.CommentAtWho{}, |
| 139 | + MatchUrl: map[string]string{}, | ||
| 135 | CreatedAt: val.CreatedAt, | 140 | CreatedAt: val.CreatedAt, |
| 136 | MeLoveFlag: 0, | 141 | MeLoveFlag: 0, |
| 137 | } | 142 | } |
| 138 | if _, ok := flagMap[val.Id]; ok { | 143 | if _, ok := flagMap[val.Id]; ok { |
| 139 | reply.MeLoveFlag = 1 | 144 | reply.MeLoveFlag = 1 |
| 140 | } | 145 | } |
| 146 | + for key, url := range val.MatchUrl { | ||
| 147 | + reply.MatchUrl[key] = url | ||
| 148 | + } | ||
| 141 | for _, val2 := range val.AtWho { | 149 | for _, val2 := range val.AtWho { |
| 142 | reply.AtWho = append(reply.AtWho, types.CommentAtWho{ | 150 | reply.AtWho = append(reply.AtWho, types.CommentAtWho{ |
| 143 | Id: val2.Id, | 151 | Id: val2.Id, |
| @@ -100,6 +100,7 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList | @@ -100,6 +100,7 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList | ||
| 100 | CountUserLove: val.CountUserLove, | 100 | CountUserLove: val.CountUserLove, |
| 101 | CountAdminLove: val.CountAdminLove, | 101 | CountAdminLove: val.CountAdminLove, |
| 102 | AtWho: []types.CommentAtWho{}, | 102 | AtWho: []types.CommentAtWho{}, |
| 103 | + MatchUrl: map[string]string{}, | ||
| 103 | CreatedAt: val.CreatedAt, | 104 | CreatedAt: val.CreatedAt, |
| 104 | MeLoveFlag: 0, | 105 | MeLoveFlag: 0, |
| 105 | Content: val.Content, | 106 | Content: val.Content, |
| @@ -111,7 +112,9 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList | @@ -111,7 +112,9 @@ func (l *MiniListArticleCommentLogic) MiniListArticleComment(req *types.MiniList | ||
| 111 | if _, ok := flagMap[val.Id]; ok { | 112 | if _, ok := flagMap[val.Id]; ok { |
| 112 | item.Comment.MeLoveFlag = 1 | 113 | item.Comment.MeLoveFlag = 1 |
| 113 | } | 114 | } |
| 114 | - | 115 | + for key2, val2 := range val.MatchUrl { |
| 116 | + item.Comment.MatchUrl[key2] = val2 | ||
| 117 | + } | ||
| 115 | for _, val2 := range val.AtWho { | 118 | for _, val2 := range val.AtWho { |
| 116 | item.Comment.AtWho = append(item.Comment.AtWho, types.CommentAtWho{ | 119 | item.Comment.AtWho = append(item.Comment.AtWho, types.CommentAtWho{ |
| 117 | Id: val2.Id, | 120 | Id: val2.Id, |
| @@ -174,6 +177,7 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag | @@ -174,6 +177,7 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag | ||
| 174 | CountUserLove: val.CountUserLove, | 177 | CountUserLove: val.CountUserLove, |
| 175 | CountAdminLove: val.CountAdminLove, | 178 | CountAdminLove: val.CountAdminLove, |
| 176 | AtWho: []types.CommentAtWho{}, | 179 | AtWho: []types.CommentAtWho{}, |
| 180 | + MatchUrl: map[string]string{}, | ||
| 177 | CreatedAt: val.CreatedAt, | 181 | CreatedAt: val.CreatedAt, |
| 178 | MeLoveFlag: 0, | 182 | MeLoveFlag: 0, |
| 179 | Content: val.Content, | 183 | Content: val.Content, |
| @@ -182,6 +186,9 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag | @@ -182,6 +186,9 @@ func (l *MiniListArticleCommentLogic) listCommentReply(commentId int64, loveFlag | ||
| 182 | if _, ok := loveFlagMap[val.Id]; ok { | 186 | if _, ok := loveFlagMap[val.Id]; ok { |
| 183 | item.MeLoveFlag = 1 | 187 | item.MeLoveFlag = 1 |
| 184 | } | 188 | } |
| 189 | + for key2, val2 := range val.MatchUrl { | ||
| 190 | + item.MatchUrl[key2] = val2 | ||
| 191 | + } | ||
| 185 | for _, val2 := range val.AtWho { | 192 | for _, val2 := range val.AtWho { |
| 186 | item.AtWho = append(item.AtWho, types.CommentAtWho{ | 193 | item.AtWho = append(item.AtWho, types.CommentAtWho{ |
| 187 | Id: val2.Id, | 194 | Id: val2.Id, |
| @@ -56,6 +56,9 @@ func (l *MiniTop5ArticleCommentLogic) MiniTop5ArticleComment(req *types.MiniTop5 | @@ -56,6 +56,9 @@ func (l *MiniTop5ArticleCommentLogic) MiniTop5ArticleComment(req *types.MiniTop5 | ||
| 56 | if _, ok := flagMap[val.Id]; ok { | 56 | if _, ok := flagMap[val.Id]; ok { |
| 57 | item.MeLoveFlag = 1 | 57 | item.MeLoveFlag = 1 |
| 58 | } | 58 | } |
| 59 | + for key, url := range val.MatchUrl { | ||
| 60 | + item.MatchUrl[key] = url | ||
| 61 | + } | ||
| 59 | for _, val2 := range val.AtWho { | 62 | for _, val2 := range val.AtWho { |
| 60 | item.AtWho = append(item.AtWho, types.CommentAtWho{ | 63 | item.AtWho = append(item.AtWho, types.CommentAtWho{ |
| 61 | Id: val2.Id, | 64 | Id: val2.Id, |
| @@ -95,6 +98,7 @@ func NewArticleCommentItem(val *domain.ArticleComment) types.ArticleCommentItem | @@ -95,6 +98,7 @@ func NewArticleCommentItem(val *domain.ArticleComment) types.ArticleCommentItem | ||
| 95 | CountUserLove: val.CountUserLove, | 98 | CountUserLove: val.CountUserLove, |
| 96 | CountAdminLove: val.CountAdminLove, | 99 | CountAdminLove: val.CountAdminLove, |
| 97 | AtWho: []types.CommentAtWho{}, | 100 | AtWho: []types.CommentAtWho{}, |
| 101 | + MatchUrl: map[string]string{}, | ||
| 98 | CreatedAt: val.CreatedAt, | 102 | CreatedAt: val.CreatedAt, |
| 99 | MeLoveFlag: 0, | 103 | MeLoveFlag: 0, |
| 100 | Content: val.Content, | 104 | Content: val.Content, |
| @@ -21,9 +21,10 @@ type MiniCreateArticleCommentRequest struct { | @@ -21,9 +21,10 @@ type MiniCreateArticleCommentRequest struct { | ||
| 21 | SectionId int64 `json:"sectionId"` // 段落id | 21 | SectionId int64 `json:"sectionId"` // 段落id |
| 22 | FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取 | 22 | FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取 |
| 23 | CompanyId int64 `json:",optional"` // 服务端自动获取 | 23 | CompanyId int64 `json:",optional"` // 服务端自动获取 |
| 24 | - Pid int64 `json:"pid"` // 回复那个评论的id | 24 | + Pid int64 `json:"pid,optional"` // 回复那个评论的id |
| 25 | Content string `json:"content"` // 评论的内容 | 25 | Content string `json:"content"` // 评论的内容 |
| 26 | - AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 26 | + AtWho []CommentAtWho `json:"atWho,optional"` // 填写评论时@的人 |
| 27 | + MatchUrl map[string]string `json:"matchUrl,optional"` // 评论内容中的url文本 | ||
| 27 | } | 28 | } |
| 28 | 29 | ||
| 29 | type CommentAtWho struct { | 30 | type CommentAtWho struct { |
| @@ -47,6 +48,7 @@ type MiniCreateArticleCommentResponse struct { | @@ -47,6 +48,7 @@ type MiniCreateArticleCommentResponse struct { | ||
| 47 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 | 48 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 |
| 48 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 49 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 49 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 50 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 |
| 51 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 50 | CreatedAt int64 `json:"createdAt"` // | 52 | CreatedAt int64 `json:"createdAt"` // |
| 51 | } | 53 | } |
| 52 | 54 | ||
| @@ -85,6 +87,7 @@ type ArticleCommentItem struct { | @@ -85,6 +87,7 @@ type ArticleCommentItem struct { | ||
| 85 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 | 87 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 |
| 86 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 88 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 87 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | 89 | AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 |
| 90 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 88 | CreatedAt int64 `json:"createdAt"` // | 91 | CreatedAt int64 `json:"createdAt"` // |
| 89 | MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞) | 92 | MeLoveFlag int `json:"meLoveFlag"` //当前人员对评论的点赞标识 (0 没有点赞 1有点赞) |
| 90 | Content string `json:"content"` // 评论的内容 | 93 | Content string `json:"content"` // 评论的内容 |
| @@ -172,6 +175,8 @@ type SystemArticleCommentSearchItem struct { | @@ -172,6 +175,8 @@ type SystemArticleCommentSearchItem struct { | ||
| 172 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 175 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 173 | CreatedAt int64 `json:"createdAt"` // 评论时间 | 176 | CreatedAt int64 `json:"createdAt"` // 评论时间 |
| 174 | Content string `json:"content"` // 评论的内容 | 177 | Content string `json:"content"` // 评论的内容 |
| 178 | + AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人 | ||
| 179 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本 | ||
| 175 | Show int `json:"show"` // 显示状态 | 180 | Show int `json:"show"` // 显示状态 |
| 176 | } | 181 | } |
| 177 | 182 |
| @@ -27,11 +27,13 @@ type ArticleComment struct { | @@ -27,11 +27,13 @@ type ArticleComment struct { | ||
| 27 | ToUserId int64 // 回复谁的评论 | 27 | ToUserId int64 // 回复谁的评论 |
| 28 | ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论 | 28 | ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论 |
| 29 | AtWho []domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 填写评论@的人 | 29 | AtWho []domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 填写评论@的人 |
| 30 | + MatchUrl map[string]string `gorm:"type:jsonb;serializer:json"` // 评论内容中出现的url. 用于页面上进行匹配文本后进行特殊显示处理 | ||
| 30 | Content string // 评论内容 | 31 | Content string // 评论内容 |
| 31 | CountReply int // 回复数量 | 32 | CountReply int // 回复数量 |
| 32 | CountUserLove int // 用户点赞数量 | 33 | CountUserLove int // 用户点赞数量 |
| 33 | CountAdminLove int // 运营点赞数量 | 34 | CountAdminLove int // 运营点赞数量 |
| 34 | Show int // 评论的展示状态(0显示、1不显示) | 35 | Show int // 评论的展示状态(0显示、1不显示) |
| 36 | + | ||
| 35 | } | 37 | } |
| 36 | 38 | ||
| 37 | func (m *ArticleComment) TableName() string { | 39 | func (m *ArticleComment) TableName() string { |
| @@ -199,6 +199,7 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti | @@ -199,6 +199,7 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti | ||
| 199 | CountAdminLove: from.CountAdminLove, | 199 | CountAdminLove: from.CountAdminLove, |
| 200 | Show: domain.CommentShow(from.Show), | 200 | Show: domain.CommentShow(from.Show), |
| 201 | AtWho: from.AtWho, | 201 | AtWho: from.AtWho, |
| 202 | + MatchUrl: from.MatchUrl, | ||
| 202 | } | 203 | } |
| 203 | // err := copier.Copy(to, from) | 204 | // err := copier.Copy(to, from) |
| 204 | return to, nil | 205 | return to, nil |
| @@ -228,6 +229,7 @@ func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.Arti | @@ -228,6 +229,7 @@ func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.Arti | ||
| 228 | CountUserLove: from.CountUserLove, | 229 | CountUserLove: from.CountUserLove, |
| 229 | CountAdminLove: from.CountAdminLove, | 230 | CountAdminLove: from.CountAdminLove, |
| 230 | Show: int(from.Show), | 231 | Show: int(from.Show), |
| 232 | + MatchUrl: from.MatchUrl, | ||
| 231 | } | 233 | } |
| 232 | // err := copier.Copy(to, from) | 234 | // err := copier.Copy(to, from) |
| 233 | return to, nil | 235 | return to, nil |
| @@ -28,7 +28,8 @@ type ArticleComment struct { | @@ -28,7 +28,8 @@ type ArticleComment struct { | ||
| 28 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 | 28 | CountUserLove int `json:"countUserLove"` // 用户点赞数量 |
| 29 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 | 29 | CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 |
| 30 | Show CommentShow `json:"showState"` // 评论的展示状态(1显示、2不显示) | 30 | Show CommentShow `json:"showState"` // 评论的展示状态(1显示、2不显示) |
| 31 | - AtWho []UserSimple `json:"atWho"` // 填写评论时@的人 | 31 | + AtWho []UserSimple `json:"atWho"` // 填写评论时@的人. 评论内容中出现的@人,用于页面上进行匹配文本后进行特殊显示处理 |
| 32 | + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中出现的url. 用于页面上进行匹配文本后进行特殊显示处理 | ||
| 32 | // ...more | 33 | // ...more |
| 33 | } | 34 | } |
| 34 | 35 |
-
请 注册 或 登录 后发表评论