作者 yangfu

Merge branch 'dev' into test

@@ -52,19 +52,20 @@ type ( @@ -52,19 +52,20 @@ type (
52 MessageBusinessItem { 52 MessageBusinessItem {
53 Id int64 `json:"id"` 53 Id int64 `json:"id"`
54 Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳) 54 Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)
55 - OptType int `json:"optType"` // 操作类型(1针对文章、2针对评论、3针对圆桌) 55 + OptType int `json:"optType"` // 操作类型(1针对文章或段落、2针对评论、3针对圆桌)
56 CompanyId int64 `json:"companyId"` // 操作人公司ID 56 CompanyId int64 `json:"companyId"` // 操作人公司ID
57 UserId int64 `json:"userId"` // 操作人用户ID 57 UserId int64 `json:"userId"` // 操作人用户ID
58 RecipientId int64 `json:"recipientId"` // 接收者ID 58 RecipientId int64 `json:"recipientId"` // 接收者ID
59 ArticleId int64 `json:"articleId"` // 文章ID 59 ArticleId int64 `json:"articleId"` // 文章ID
60 - CommentId int64 `json:"commentId"` // 评论ID  
61 - DiscussionId int64 `json:"discussionId"` // 圆桌ID  
62 - DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID  
63 - Content string `json:"content"` // 消息内容 60 +// CommentId int64 `json:"commentId"` // 评论ID
  61 +// DiscussionId int64 `json:"discussionId"` // 圆桌ID
  62 +// DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID
  63 +// Content string `json:"content"` // 消息内容
64 CreatedAt int64 `json:"createdAt"` // 创建时间 64 CreatedAt int64 `json:"createdAt"` // 创建时间
65 User *SimpleUser `json:"user"` // 操作人 65 User *SimpleUser `json:"user"` // 操作人
66 Article *SimpleArticle `json:"article"` // 文章 66 Article *SimpleArticle `json:"article"` // 文章
67 - Comment *SimpleComment `json:"comment"` // 评论(不一定是自己,可能是被人@到) 67 + Comment *SimpleComment `json:"comment"` // 评论
  68 + CommentParent *SimpleComment `json:"commentParent"` // 被回复的评论
68 } 69 }
69 70
70 SimpleUser { 71 SimpleUser {
@@ -258,16 +258,15 @@ type ( @@ -258,16 +258,15 @@ type (
258 } 258 }
259 259
260 SimpleComment { 260 SimpleComment {
261 - Id int64 `json:"id"`  
262 - Content string `json:"content"` // 评论内容  
263 - CountLove int `json:"countLove"` // 点赞数量  
264 - CountComment int `json:"countComment"` // 评论数量  
265 - Show int `json:"show"` // 评论的展示状态(0显示、1不显示)  
266 - AtWho []SimpleUser `json:"atWho"` // @用户  
267 - MatchUrl map[string]string `json:"matchUrl"` // 内容中的url文本 261 + Id int64 `json:"id"`
  262 + Content string `json:"content"` // 评论内容
  263 + Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
  264 + AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
  265 + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
  266 + CountReply int `json:"countReply"` // 用户回复数量
  267 + CountUserLove int `json:"countUserLove"` // 用户点赞数量
268 } 268 }
269 269
270 -  
271 MiniBeLikedRequest{ 270 MiniBeLikedRequest{
272 Page int `json:"page"` 271 Page int `json:"page"`
273 Size int `json:"size"` 272 Size int `json:"size"`
@@ -357,7 +357,7 @@ func (l *MiniSetUserLikeLogic) setUserLikeComment(req *types.MiniSetUserLikeRequ @@ -357,7 +357,7 @@ func (l *MiniSetUserLikeLogic) setUserLikeComment(req *types.MiniSetUserLikeRequ
357 357
358 // 创建点赞消息 358 // 创建点赞消息
359 var messageLogic = message.NewMiniBusinessLogic(l.ctx, l.svcCtx) 359 var messageLogic = message.NewMiniBusinessLogic(l.ctx, l.svcCtx)
360 - err = messageLogic.LikeComment(c, commentInfo.ArticleId, commentInfo.Id, commentInfo.FromUserId) 360 + err = messageLogic.LikeComment(c, commentInfo.ArticleId, commentInfo.Id, commentInfo.Pid, commentInfo.FromUserId)
361 if err != nil { 361 if err != nil {
362 return err 362 return err
363 } 363 }
@@ -205,9 +205,9 @@ func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.Mini @@ -205,9 +205,9 @@ func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.Mini
205 atAllIds = append(atAllIds, atWhoIds...) 205 atAllIds = append(atAllIds, atWhoIds...)
206 var messageLogic = message.NewMiniBusinessLogic(l.ctx, l.svcCtx) 206 var messageLogic = message.NewMiniBusinessLogic(l.ctx, l.svcCtx)
207 if pComment != nil { 207 if pComment != nil {
208 - err = messageLogic.CommentReply(c, pComment.ArticleId, pComment.SectionId, pComment.Id, req.Content, atAllIds) // 对评论回复 208 + err = messageLogic.CommentReply(c, req.ArtitcleId, newComment.Id, pComment.Id, atAllIds) // 对评论回复
209 } else { 209 } else {
210 - err = messageLogic.CommentArticle(c, req.ArtitcleId, req.SectionId, req.Content, atAllIds) // 对文章回复 210 + err = messageLogic.CommentArticle(c, req.ArtitcleId, newComment.Id, atAllIds) // 对文章回复
211 } 211 }
212 if err != nil { 212 if err != nil {
213 return err 213 return err
@@ -50,8 +50,7 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -50,8 +50,7 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
50 var userIdMap = map[int64]*domain.User{} 50 var userIdMap = map[int64]*domain.User{}
51 var articleIdMap = map[int64]*domain.Article{} 51 var articleIdMap = map[int64]*domain.Article{}
52 var commentIdMap = map[int64]*domain.ArticleComment{} 52 var commentIdMap = map[int64]*domain.ArticleComment{}
53 - //var discussionIdMap = map[int64]int{}  
54 - //var discussionOpinionIdMap = map[int64]int{} 53 +
55 for _, item := range list { 54 for _, item := range list {
56 if item.CompanyId != 0 { 55 if item.CompanyId != 0 {
57 companyIdMap[item.CompanyId] = nil 56 companyIdMap[item.CompanyId] = nil
@@ -65,19 +64,15 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -65,19 +64,15 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
65 if item.CommentId != 0 { 64 if item.CommentId != 0 {
66 commentIdMap[item.CommentId] = nil 65 commentIdMap[item.CommentId] = nil
67 } 66 }
68 - //if item.DiscussionId != 0 {  
69 - // discussionIdMap[item.DiscussionId] = 0  
70 - //}  
71 - //if item.DiscussionOpinionId != 0 {  
72 - // discussionOpinionIdMap[item.DiscussionOpinionId] = 0  
73 - //} 67 + if item.CommentParentId != 0 {
  68 + commentIdMap[item.CommentParentId] = nil
  69 + }
74 } 70 }
75 var companyIds = make([]int64, 0) // 公司ID 71 var companyIds = make([]int64, 0) // 公司ID
76 var userIds = make([]int64, 0) // 用户ID 72 var userIds = make([]int64, 0) // 用户ID
77 var articleIds = make([]int64, 0) // 文章ID 73 var articleIds = make([]int64, 0) // 文章ID
78 - var commentIds = make([]int64, 0) // 评论ID  
79 - //var discussionIds = make([]int64, 0) // 讨论ID 暂时搁置  
80 - //var discussionOpinionIds = make([]int64, 0) // 观点ID 74 + var commentIds = make([]int64, 0) // 评论ID(包含回复的评论)
  75 +
81 for k, _ := range companyIdMap { 76 for k, _ := range companyIdMap {
82 companyIds = append(companyIds, k) 77 companyIds = append(companyIds, k)
83 } 78 }
@@ -90,12 +85,6 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -90,12 +85,6 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
90 for k, _ := range commentIdMap { 85 for k, _ := range commentIdMap {
91 commentIds = append(commentIds, k) 86 commentIds = append(commentIds, k)
92 } 87 }
93 - //for k, _ := range discussionIdMap {  
94 - // discussionIds = append(discussionIds, k)  
95 - //}  
96 - //for k, _ := range discussionOpinionIdMap {  
97 - // discussionOpinionIds = append(discussionOpinionIds, k)  
98 - //}  
99 88
100 // 获取公司 89 // 获取公司
101 if len(companyIds) > 0 { 90 if len(companyIds) > 0 {
@@ -166,13 +155,10 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -166,13 +155,10 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
166 UserId: item.UserId, 155 UserId: item.UserId,
167 RecipientId: item.RecipientId, 156 RecipientId: item.RecipientId,
168 ArticleId: item.ArticleId, 157 ArticleId: item.ArticleId,
169 - CommentId: item.CommentId,  
170 - //DiscussionId: item.DiscussionId,  
171 - //DiscussionOpinionId: item.DiscussionOpinionId,  
172 - Content: item.Content,  
173 - CreatedAt: item.CreatedAt, 158 + CreatedAt: item.CreatedAt,
174 } 159 }
175 160
  161 + // 发布者
176 if v, ok := userIdMap[item.UserId]; ok && v != nil { 162 if v, ok := userIdMap[item.UserId]; ok && v != nil {
177 to.User = &types.SimpleUser{ 163 to.User = &types.SimpleUser{
178 Id: v.Id, 164 Id: v.Id,
@@ -187,6 +173,7 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -187,6 +173,7 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
187 } 173 }
188 } 174 }
189 175
  176 + // 文章
190 if v, ok := articleIdMap[item.ArticleId]; ok && v != nil { 177 if v, ok := articleIdMap[item.ArticleId]; ok && v != nil {
191 to.Article = &types.SimpleArticle{ 178 to.Article = &types.SimpleArticle{
192 Id: v.Id, 179 Id: v.Id,
@@ -197,20 +184,40 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -197,20 +184,40 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
197 } 184 }
198 } 185 }
199 186
  187 + // 评论
200 if v, ok := commentIdMap[item.CommentId]; ok && v != nil { 188 if v, ok := commentIdMap[item.CommentId]; ok && v != nil {
201 to.Comment = &types.SimpleComment{ 189 to.Comment = &types.SimpleComment{
202 - Id: v.Id,  
203 - Content: v.Content,  
204 - CountLove: v.CountUserLove,  
205 - CountComment: v.CountReply,  
206 - Show: int(v.Show),  
207 - MatchUrl: v.MatchUrl, 190 + Id: v.Id,
  191 + Content: v.Content,
  192 + Show: int(v.Show),
  193 + CountReply: v.CountReply,
  194 + CountUserLove: v.CountUserLove,
  195 + MatchUrl: v.MatchUrl,
  196 + }
  197 + to.Comment.AtWho = make([]types.CommentAtWho, 0)
  198 + for _, who := range v.AtWho {
  199 + to.Comment.AtWho = append(to.Comment.AtWho, types.CommentAtWho{
  200 + Id: who.Id,
  201 + Name: who.Name,
  202 + })
  203 + }
  204 + }
  205 +
  206 + // 被回复的评论
  207 + if v, ok := commentIdMap[item.CommentParentId]; ok && v != nil {
  208 + to.CommentParent = &types.SimpleComment{
  209 + Id: v.Id,
  210 + Content: v.Content,
  211 + Show: int(v.Show),
  212 + CountReply: v.CountReply,
  213 + CountUserLove: v.CountUserLove,
  214 + MatchUrl: v.MatchUrl,
208 } 215 }
209 - to.Comment.AtWho = make([]types.SimpleUser, 0)  
210 - for _, at := range v.AtWho {  
211 - to.Comment.AtWho = append(to.Comment.AtWho, types.SimpleUser{  
212 - Id: at.Id,  
213 - Name: at.Name, 216 + to.CommentParent.AtWho = make([]types.CommentAtWho, 0)
  217 + for _, who := range v.AtWho {
  218 + to.CommentParent.AtWho = append(to.CommentParent.AtWho, types.CommentAtWho{
  219 + Id: who.Id,
  220 + Name: who.Name,
214 }) 221 })
215 } 222 }
216 } 223 }
@@ -221,23 +228,23 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma @@ -221,23 +228,23 @@ func (l *MiniBusinessLogic) MiniBusiness(req *types.MessageRequest, msgType doma
221 } 228 }
222 229
223 // CommentArticle 评论文章 230 // CommentArticle 评论文章
224 -func (l *MiniBusinessLogic) CommentArticle(conn transaction.Conn, articleId int64, sectionId int64, content string, at []int64) (err error) {  
225 - return l.createMessage(conn, domain.MsgTypeReply, domain.OptTypeArticle, articleId, sectionId, 0, content, at) 231 +func (l *MiniBusinessLogic) CommentArticle(conn transaction.Conn, articleId int64, commentId int64, at []int64) (err error) {
  232 + return l.createMessage(conn, domain.MsgTypeReply, domain.OptTypeArticle, articleId, commentId, 0, at)
226 } 233 }
227 234
228 // CommentReply 评论回复 235 // CommentReply 评论回复
229 -func (l *MiniBusinessLogic) CommentReply(conn transaction.Conn, articleId int64, sectionId int64, commentId int64, content string, at []int64) (err error) {  
230 - return l.createMessage(conn, domain.MsgTypeReply, domain.OptTypeComment, articleId, sectionId, commentId, content, at) 236 +func (l *MiniBusinessLogic) CommentReply(conn transaction.Conn, articleId int64, commentId int64, commentParentId int64, at []int64) (err error) {
  237 + return l.createMessage(conn, domain.MsgTypeReply, domain.OptTypeComment, articleId, commentId, commentParentId, at)
231 } 238 }
232 239
233 // LikeArticle 点赞文章 240 // LikeArticle 点赞文章
234 func (l *MiniBusinessLogic) LikeArticle(conn transaction.Conn, articleId int64, at int64) (err error) { 241 func (l *MiniBusinessLogic) LikeArticle(conn transaction.Conn, articleId int64, at int64) (err error) {
235 - return l.createMessage(conn, domain.MsgTypeLike, domain.OptTypeArticle, articleId, 0, 0, "", []int64{at}) 242 + return l.createMessage(conn, domain.MsgTypeLike, domain.OptTypeArticle, articleId, 0, 0, []int64{at})
236 } 243 }
237 244
238 // LikeComment 点赞评论 245 // LikeComment 点赞评论
239 -func (l *MiniBusinessLogic) LikeComment(conn transaction.Conn, articleId int64, commentId int64, at int64) (err error) {  
240 - return l.createMessage(conn, domain.MsgTypeLike, domain.OptTypeComment, articleId, 0, commentId, "", []int64{at}) 246 +func (l *MiniBusinessLogic) LikeComment(conn transaction.Conn, articleId int64, commentId int64, commentParentId int64, at int64) (err error) {
  247 + return l.createMessage(conn, domain.MsgTypeLike, domain.OptTypeComment, articleId, commentId, commentParentId, []int64{at})
241 } 248 }
242 249
243 // UnLikeArticle 取消点赞文章 250 // UnLikeArticle 取消点赞文章
@@ -255,24 +262,22 @@ func (l *MiniBusinessLogic) createMessage( @@ -255,24 +262,22 @@ func (l *MiniBusinessLogic) createMessage(
255 msgType domain.MsgBusinessType, 262 msgType domain.MsgBusinessType,
256 optType domain.MsgBusinessOpt, 263 optType domain.MsgBusinessOpt,
257 articleId int64, 264 articleId int64,
258 - sectionId int64,  
259 commentId int64, 265 commentId int64,
260 - content string, 266 + commentParentId int64,
261 at []int64) (err error) { 267 at []int64) (err error) {
262 268
263 var userToken = contextdata.GetUserTokenFromCtx(l.ctx) 269 var userToken = contextdata.GetUserTokenFromCtx(l.ctx)
264 // 评论中携带了 @其他用户 270 // 评论中携带了 @其他用户
265 for i := range at { 271 for i := range at {
266 var msg = &domain.MessageBusiness{ 272 var msg = &domain.MessageBusiness{
267 - Type: msgType,  
268 - OptType: optType,  
269 - CompanyId: userToken.CompanyId,  
270 - UserId: userToken.UserId,  
271 - RecipientId: at[i],  
272 - ArticleId: articleId,  
273 - SectionId: sectionId,  
274 - CommentId: commentId,  
275 - Content: content, 273 + Type: msgType,
  274 + OptType: optType,
  275 + CompanyId: userToken.CompanyId,
  276 + UserId: userToken.UserId,
  277 + RecipientId: at[i],
  278 + ArticleId: articleId,
  279 + CommentId: commentId,
  280 + CommentParentId: commentParentId,
276 } 281 }
277 msg, err = l.svcCtx.MessageBusinessRepository.Insert(l.ctx, conn, msg) 282 msg, err = l.svcCtx.MessageBusinessRepository.Insert(l.ctx, conn, msg)
278 if err != nil { 283 if err != nil {
@@ -107,11 +107,19 @@ func (l *MiniMyBeLikedLogic) NewItemSimple(love *domain.UserLoveFlag, company *d @@ -107,11 +107,19 @@ func (l *MiniMyBeLikedLogic) NewItemSimple(love *domain.UserLoveFlag, company *d
107 107
108 if comment != nil { 108 if comment != nil {
109 item.Comment = &types.SimpleComment{ 109 item.Comment = &types.SimpleComment{
110 - Id: comment.Id,  
111 - Content: comment.Content,  
112 - CountLove: comment.CountUserLove,  
113 - CountComment: comment.CountReply,  
114 - Show: int(comment.Show), 110 + Id: comment.Id,
  111 + Content: comment.Content,
  112 + Show: int(comment.Show),
  113 + CountReply: comment.CountReply,
  114 + CountUserLove: comment.CountUserLove,
  115 + MatchUrl: comment.MatchUrl,
  116 + }
  117 + item.Comment.AtWho = make([]types.CommentAtWho, 0)
  118 + for _, who := range comment.AtWho {
  119 + item.Comment.AtWho = append(item.Comment.AtWho, types.CommentAtWho{
  120 + Id: who.Id,
  121 + Name: who.Name,
  122 + })
115 } 123 }
116 } 124 }
117 125
@@ -107,11 +107,19 @@ func (l *MiniMyLikeLogic) NewItemSimple(love *domain.UserLoveFlag, company *doma @@ -107,11 +107,19 @@ func (l *MiniMyLikeLogic) NewItemSimple(love *domain.UserLoveFlag, company *doma
107 107
108 if comment != nil { 108 if comment != nil {
109 item.Comment = &types.SimpleComment{ 109 item.Comment = &types.SimpleComment{
110 - Id: comment.Id,  
111 - Content: comment.Content,  
112 - CountLove: comment.CountUserLove,  
113 - CountComment: comment.CountReply,  
114 - Show: int(comment.Show), 110 + Id: comment.Id,
  111 + Content: comment.Content,
  112 + Show: int(comment.Show),
  113 + CountReply: comment.CountReply,
  114 + CountUserLove: comment.CountUserLove,
  115 + MatchUrl: comment.MatchUrl,
  116 + }
  117 + item.Comment.AtWho = make([]types.CommentAtWho, 0)
  118 + for _, who := range comment.AtWho {
  119 + item.Comment.AtWho = append(item.Comment.AtWho, types.CommentAtWho{
  120 + Id: who.Id,
  121 + Name: who.Name,
  122 + })
115 } 123 }
116 } 124 }
117 125
@@ -116,55 +116,55 @@ func (l *SystemUserInfoLogic) initSystemData(companyId int64) error { @@ -116,55 +116,55 @@ func (l *SystemUserInfoLogic) initSystemData(companyId int64) error {
116 if cnt == 0 { 116 if cnt == 0 {
117 articleTags := []*domain.ArticleTag{ 117 articleTags := []*domain.ArticleTag{
118 { 118 {
119 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 119 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_imp_01.png", Width: 0, Height: 0},
120 Name: "紧急重要", Category: "紧急重要", Remark: "优先解决", SortBy: 1, 120 Name: "紧急重要", Category: "紧急重要", Remark: "优先解决", SortBy: 1,
121 }, 121 },
122 { 122 {
123 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 123 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_imp_04.png", Width: 0, Height: 0},
124 Name: "不紧急不重要", Category: "紧急重要", Remark: "给别人做", SortBy: 2, 124 Name: "不紧急不重要", Category: "紧急重要", Remark: "给别人做", SortBy: 2,
125 }, 125 },
126 { 126 {
127 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 127 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_imp_03.png", Width: 0, Height: 0},
128 Name: "紧急不重要", Category: "紧急重要", Remark: "有空再做", SortBy: 3, 128 Name: "紧急不重要", Category: "紧急重要", Remark: "有空再做", SortBy: 3,
129 }, 129 },
130 { 130 {
131 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 131 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_imp_02.png", Width: 0, Height: 0},
132 Name: "不紧急重要", Category: "紧急重要", Remark: "制定计划去做", SortBy: 4, 132 Name: "不紧急重要", Category: "紧急重要", Remark: "制定计划去做", SortBy: 4,
133 }, 133 },
134 { 134 {
135 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 135 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_03.png", Width: 0, Height: 0},
136 Name: "大机会高风险", Category: "机会风险", Remark: "谨慎考虑专项讨论", SortBy: 5, 136 Name: "大机会高风险", Category: "机会风险", Remark: "谨慎考虑专项讨论", SortBy: 5,
137 }, 137 },
138 { 138 {
139 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 139 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_02.png", Width: 0, Height: 0},
140 Name: "大机会中风险", Category: "机会风险", Remark: "加大关注值得尝试", SortBy: 6, 140 Name: "大机会中风险", Category: "机会风险", Remark: "加大关注值得尝试", SortBy: 6,
141 }, 141 },
142 { 142 {
143 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 143 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_01.png", Width: 0, Height: 0},
144 Name: "大机会低风险", Category: "机会风险", Remark: "全员投入抓紧落实", SortBy: 7, 144 Name: "大机会低风险", Category: "机会风险", Remark: "全员投入抓紧落实", SortBy: 7,
145 }, 145 },
146 { 146 {
147 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 147 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_04.png", Width: 0, Height: 0},
148 Name: "中机会高风险", Category: "机会风险", Remark: "专人跟踪成立项目", SortBy: 8, 148 Name: "中机会高风险", Category: "机会风险", Remark: "专人跟踪成立项目", SortBy: 8,
149 }, 149 },
150 { 150 {
151 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 151 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_05.png", Width: 0, Height: 0},
152 Name: "中机会中风险", Category: "机会风险", Remark: "讨论落实", SortBy: 9, 152 Name: "中机会中风险", Category: "机会风险", Remark: "讨论落实", SortBy: 9,
153 }, 153 },
154 { 154 {
155 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 155 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_06.png", Width: 0, Height: 0},
156 Name: "中机会低风险", Category: "机会风险", Remark: "解决问题多手准备", SortBy: 10, 156 Name: "中机会低风险", Category: "机会风险", Remark: "解决问题多手准备", SortBy: 10,
157 }, 157 },
158 { 158 {
159 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 159 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_07.png", Width: 0, Height: 0},
160 Name: "小机会高风险", Category: "机会风险", Remark: "有空看看", SortBy: 11, 160 Name: "小机会高风险", Category: "机会风险", Remark: "有空看看", SortBy: 11,
161 }, 161 },
162 { 162 {
163 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 163 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_08.png", Width: 0, Height: 0},
164 Name: "小机会中风险", Category: "机会风险", Remark: "持续监控做好控制", SortBy: 12, 164 Name: "小机会中风险", Category: "机会风险", Remark: "持续监控做好控制", SortBy: 12,
165 }, 165 },
166 { 166 {
167 - Id: 0, CompanyId: companyId, Image: domain.Image{Url: "", Width: 0, Height: 0}, 167 + Id: 0, CompanyId: companyId, Image: domain.Image{Url: "https://timeless-world.oss-cn-shenzhen.aliyuncs.com/open-api/test/20231115/object/index_chance_09.png", Width: 0, Height: 0},
168 Name: "小机会低风险", Category: "机会风险", Remark: "全员警戒马上解决", SortBy: 13, 168 Name: "小机会低风险", Category: "机会风险", Remark: "全员警戒马上解决", SortBy: 13,
169 }, 169 },
170 } 170 }
@@ -10,6 +10,7 @@ type CommonSmsCodeResposne struct { @@ -10,6 +10,7 @@ type CommonSmsCodeResposne struct {
10 10
11 type MiniQrCodeRequest struct { 11 type MiniQrCodeRequest struct {
12 Page string `json:"page"` // 微信页面入口 12 Page string `json:"page"` // 微信页面入口
  13 + Path string `json:"path"` //
13 Scene string `json:"scene"` // 参数 14 Scene string `json:"scene"` // 参数
14 } 15 }
15 16
@@ -286,21 +287,18 @@ type MessageBusinessResponse struct { @@ -286,21 +287,18 @@ type MessageBusinessResponse struct {
286 } 287 }
287 288
288 type MessageBusinessItem struct { 289 type MessageBusinessItem struct {
289 - Id int64 `json:"id"`  
290 - Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)  
291 - OptType int `json:"optType"` // 操作类型(1针对文章、2针对评论、3针对圆桌)  
292 - CompanyId int64 `json:"companyId"` // 操作人公司ID  
293 - UserId int64 `json:"userId"` // 操作人用户ID  
294 - RecipientId int64 `json:"recipientId"` // 接收者ID  
295 - ArticleId int64 `json:"articleId"` // 文章ID  
296 - CommentId int64 `json:"commentId"` // 评论ID  
297 - DiscussionId int64 `json:"discussionId"` // 圆桌ID  
298 - DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID  
299 - Content string `json:"content"` // 消息内容  
300 - CreatedAt int64 `json:"createdAt"` // 创建时间  
301 - User *SimpleUser `json:"user"` // 操作人  
302 - Article *SimpleArticle `json:"article"` // 文章  
303 - Comment *SimpleComment `json:"comment"` // 评论(不一定是自己,可能是被人@到) 290 + Id int64 `json:"id"`
  291 + Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)
  292 + OptType int `json:"optType"` // 操作类型(1针对文章或段落、2针对评论、3针对圆桌)
  293 + CompanyId int64 `json:"companyId"` // 操作人公司ID
  294 + UserId int64 `json:"userId"` // 操作人用户ID
  295 + RecipientId int64 `json:"recipientId"` // 接收者ID
  296 + ArticleId int64 `json:"articleId"` // 文章ID
  297 + CreatedAt int64 `json:"createdAt"` // 创建时间
  298 + User *SimpleUser `json:"user"` // 操作人
  299 + Article *SimpleArticle `json:"article"` // 文章
  300 + Comment *SimpleComment `json:"comment"` // 评论
  301 + CommentParent *SimpleComment `json:"commentParent"` // 被回复的评论
304 } 302 }
305 303
306 type SimpleUser struct { 304 type SimpleUser struct {
@@ -601,13 +599,13 @@ type MyLikeItem struct { @@ -601,13 +599,13 @@ type MyLikeItem struct {
601 } 599 }
602 600
603 type SimpleComment struct { 601 type SimpleComment struct {
604 - Id int64 `json:"id"`  
605 - Content string `json:"content"` // 评论内容  
606 - CountLove int `json:"countLove"` // 点赞数量  
607 - CountComment int `json:"countComment"` // 评论数量  
608 - Show int `json:"show"` // 评论的展示状态(0显示、1不显示)  
609 - AtWho []SimpleUser `json:"atWho"` // @用户  
610 - MatchUrl map[string]string `json:"matchUrl"` // 内容中的url文本 602 + Id int64 `json:"id"`
  603 + Content string `json:"content"` // 评论内容
  604 + Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
  605 + AtWho []CommentAtWho `json:"atWho"` // 填写评论时@的人
  606 + MatchUrl map[string]string `json:"matchUrl"` // 评论内容中的url文本
  607 + CountReply int `json:"countReply"` // 用户回复数量
  608 + CountUserLove int `json:"countUserLove"` // 用户点赞数量
611 } 609 }
612 610
613 type MiniBeLikedRequest struct { 611 type MiniBeLikedRequest struct {
@@ -10,21 +10,20 @@ import ( @@ -10,21 +10,20 @@ import (
10 10
11 // MessageBusiness 消息中心业务 11 // MessageBusiness 消息中心业务
12 type MessageBusiness struct { 12 type MessageBusiness struct {
13 - Id int64 // 唯一标识  
14 - Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)  
15 - OptType int `json:"optType"` // 操作类型(1针对文章、2针对评论、3针对圆桌)  
16 - CompanyId int64 `json:"companyId"` // 操作人公司ID  
17 - UserId int64 `json:"userId"` // 操作人用户ID  
18 - RecipientId int64 `json:"recipientId"` // 接收人用户ID  
19 - ArticleId int64 `json:"articleId,omitempty"` // 文章ID  
20 - SectionId int64 `json:"sectionId,omitempty"` // 段落ID  
21 - CommentId int64 `json:"commentId,omitempty"` // 评论ID  
22 - Content string `json:"content,omitempty"` // 消息内容  
23 - CreatedAt int64 `json:",omitempty"`  
24 - UpdatedAt int64 `json:",omitempty"`  
25 - DeletedAt int64 `json:",omitempty"`  
26 - Version int `json:",omitempty"`  
27 - IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"` 13 + Id int64 // 唯一标识
  14 + Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)
  15 + OptType int `json:"optType"` // 操作类型(1针对文章、2针对评论、3针对圆桌)
  16 + CompanyId int64 `json:"companyId"` // 操作人公司ID
  17 + UserId int64 `json:"userId"` // 操作人用户ID
  18 + RecipientId int64 `json:"recipientId"` // 接收人用户ID
  19 + ArticleId int64 `json:"articleId"` // 文章ID
  20 + CommentId int64 `json:"commentId"` // 评论来源ID
  21 + CommentParentId int64 `json:"commentParentId"` // 评论上级ID
  22 + CreatedAt int64 `json:",omitempty"`
  23 + UpdatedAt int64 `json:",omitempty"`
  24 + DeletedAt int64 `json:",omitempty"`
  25 + Version int `json:",omitempty"`
  26 + IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"`
28 //DiscussionId int64 `json:"discussionId,omitempty"` // 圆桌ID 27 //DiscussionId int64 `json:"discussionId,omitempty"` // 圆桌ID
29 //DiscussionOpinionId int64 `json:"discussionOpinionId,omitempty"` // 观点ID 28 //DiscussionOpinionId int64 `json:"discussionOpinionId,omitempty"` // 观点ID
30 } 29 }
@@ -6,21 +6,22 @@ import ( @@ -6,21 +6,22 @@ import (
6 ) 6 )
7 7
8 type MessageBusiness struct { 8 type MessageBusiness struct {
9 - Id int64 // 唯一标识  
10 - Type MsgBusinessType `json:"type"` // 分类 (1回复 2点赞 3被采纳)  
11 - OptType MsgBusinessOpt `json:"optType"` // 操作类型(1针对文章、2针对评论、3针对圆桌)  
12 - CompanyId int64 `json:"companyId"` // 操作人公司ID  
13 - UserId int64 `json:"userId"` // 操作人用户ID  
14 - RecipientId int64 `json:"recipientId"` // 接收人用户ID  
15 - ArticleId int64 `json:"articleId"` // 文章ID  
16 - SectionId int64 `json:"sectionId"` // 段落ID  
17 - CommentId int64 `json:"commentId"` // 评论ID  
18 - Content string `json:"content"` // 消息内容  
19 - CreatedAt int64 `json:",omitempty"`  
20 - UpdatedAt int64 `json:",omitempty"`  
21 - DeletedAt int64 `json:",omitempty"`  
22 - Version int `json:",omitempty"`  
23 - 9 + Id int64 // 唯一标识
  10 + Type MsgBusinessType `json:"type"` // 分类 (1回复 2点赞 3被采纳)
  11 + OptType MsgBusinessOpt `json:"optType"` // 操作类型(1针对文章或段落、2针对评论、3针对圆桌)
  12 + CompanyId int64 `json:"companyId"` // 操作人公司ID
  13 + UserId int64 `json:"userId"` // 操作人用户ID
  14 + RecipientId int64 `json:"recipientId"` // 接收人用户ID
  15 + ArticleId int64 `json:"articleId"` // 文章ID
  16 + CommentId int64 `json:"commentId"` // 评论来源ID
  17 + CommentParentId int64 `json:"commentParentId"` // 评论上级ID
  18 + CreatedAt int64 `json:",omitempty"`
  19 + UpdatedAt int64 `json:",omitempty"`
  20 + DeletedAt int64 `json:",omitempty"`
  21 + Version int `json:",omitempty"`
  22 +
  23 + //SectionId int64 `json:"sectionId"` // 段落ID
  24 + //Content string `json:"content"` // 消息内容
24 //DiscussionId int64 `json:"discussionId"` // 圆桌ID 25 //DiscussionId int64 `json:"discussionId"` // 圆桌ID
25 //DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID 26 //DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID
26 } 27 }
@@ -15,8 +15,8 @@ type UserLoveFlag struct { @@ -15,8 +15,8 @@ type UserLoveFlag struct {
15 CommentId int64 `json:"commentId"` // 点赞评论时,填评论id 15 CommentId int64 `json:"commentId"` // 点赞评论时,填评论id
16 CommentAuthor int64 `json:"commentAuthor"` // 评论的填写人 16 CommentAuthor int64 `json:"commentAuthor"` // 评论的填写人
17 ToUserId int64 `json:"toUserId"` // 点赞的接受人 17 ToUserId int64 `json:"toUserId"` // 点赞的接受人
18 - UserId int64 `json:"userId"` // 点赞的人  
19 - CompanyId int64 `json:"companyId"` // 18 + UserId int64 `json:"userId"` // 点赞人
  19 + CompanyId int64 `json:"companyId"` // 点赞人的公司
20 CreatedAt int64 `json:"createdAt,omitempty"` 20 CreatedAt int64 `json:"createdAt,omitempty"`
21 UpdatedAt int64 `json:"updatedAt,omitempty"` 21 UpdatedAt int64 `json:"updatedAt,omitempty"`
22 DeletedAt int64 `json:"deletedAt,omitempty"` 22 DeletedAt int64 `json:"deletedAt,omitempty"`