作者 tangxvhui

更新定义的模型

1 syntax = "v1" 1 syntax = "v1"
2 2
3 -import "core/article_type.api"  
4 import "core/comment.api" 3 import "core/comment.api"
5 import "core/message.api" 4 import "core/message.api"
6 import "core/article_tag.api" 5 import "core/article_tag.api"
7 import "core/user.api" 6 import "core/user.api"
8 import "core/company.api" 7 import "core/company.api"
  8 +import "core/article_type.api"
9 import "core/article.api" 9 import "core/article.api"
10 import "core/role.api" 10 import "core/role.api"
@@ -8,11 +8,10 @@ type Location { @@ -8,11 +8,10 @@ type Location {
8 } 8 }
9 9
10 // 人员的简单展示信息 10 // 人员的简单展示信息
11 -type Author { 11 +type ArticleAuthor {
12 Id int64 `json:"id"` // 人员id 12 Id int64 `json:"id"` // 人员id
13 Name string `json:"name"` // 人员的名字 13 Name string `json:"name"` // 人员的名字
14 Avatar string `json:"avatar"` // 人员头像URL 14 Avatar string `json:"avatar"` // 人员头像URL
15 - Group string `json:"group"` // 人员的分组  
16 Position string `json:"position"` // 职位 15 Position string `json:"position"` // 职位
17 Company string `json:"company"` // 公司 16 Company string `json:"company"` // 公司
18 } 17 }
@@ -37,13 +36,14 @@ type ( @@ -37,13 +36,14 @@ type (
37 type ( 36 type (
38 MiniArticleGetRequest { 37 MiniArticleGetRequest {
39 Id int64 `path:"id"` //id 38 Id int64 `path:"id"` //id
40 - CompanyId int64 `path:",optional"` 39 + CompanyId int64 `path:",optional"`//当前公司
  40 + UserId int `path:",optional"` //当前用户
41 } 41 }
42 MiniArticleGetResponse { 42 MiniArticleGetResponse {
43 Id int64 `json:"id"` //id 43 Id int64 `json:"id"` //id
44 Title string `json:"title"` //标题 44 Title string `json:"title"` //标题
45 AuthorId int64 `json:"authorId"` //发布人id 45 AuthorId int64 `json:"authorId"` //发布人id
46 - Author Author `json:"author"` //发布人 46 + Author ArticleAuthor `json:"author"` //发布人
47 CreatedAt int64 `json:"createdAt"` //文章的发布时间 47 CreatedAt int64 `json:"createdAt"` //文章的发布时间
48 Section []ArticleSection `json:"section"` //文章的文本内容 48 Section []ArticleSection `json:"section"` //文章的文本内容
49 Images []string `json:"images"` //图片 49 Images []string `json:"images"` //图片
@@ -55,6 +55,7 @@ type ( @@ -55,6 +55,7 @@ type (
55 CountRead int `json:"countRead"` // 浏览数量 55 CountRead int `json:"countRead"` // 浏览数量
56 Show int `json:"show"` // 评论的展示状态(0显示、1不显示) 56 Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
57 Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) 57 Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在)
  58 + MeLoveFlag int `json:"meLoveFlag"` //当前人员对文章的点赞标识
58 } 59 }
59 ArticleSection { 60 ArticleSection {
60 Id int64 `json:"id"` //段落id 61 Id int64 `json:"id"` //段落id
@@ -160,7 +161,7 @@ type ( @@ -160,7 +161,7 @@ type (
160 } 161 }
161 ) 162 )
162 163
163 -//创建文章到草稿箱 164 +//小程序端创建文章到草稿箱
164 type ( 165 type (
165 MiniArticleDraftCreateRequest { 166 MiniArticleDraftCreateRequest {
166 CompanyId int64 `json:",optional"` 167 CompanyId int64 `json:",optional"`
@@ -179,7 +180,7 @@ type ( @@ -179,7 +180,7 @@ type (
179 } 180 }
180 ) 181 )
181 182
182 -//更新文章草稿 183 +//小程序端更新文章草稿
183 type ( 184 type (
184 MiniArticleDraftUpdateRequest { 185 MiniArticleDraftUpdateRequest {
185 Id int64 `json:"id"` 186 Id int64 `json:"id"`
@@ -199,7 +200,7 @@ type ( @@ -199,7 +200,7 @@ type (
199 } 200 }
200 ) 201 )
201 202
202 -//获取我的草稿列表 203 +//小程序端获取我的草稿列表
203 type ( 204 type (
204 MiniArticleDraftSearchMeRequest { 205 MiniArticleDraftSearchMeRequest {
205 CompanyId int64 `json:",optional"` // 公司id 206 CompanyId int64 `json:",optional"` // 公司id
@@ -222,7 +223,7 @@ type ( @@ -222,7 +223,7 @@ type (
222 } 223 }
223 ) 224 )
224 225
225 -//获取我的草稿内容 226 +//小程序端获取我的草稿内容
226 type ( 227 type (
227 MiniArticleDraftGetMeRequest { 228 MiniArticleDraftGetMeRequest {
228 CompanyId int64 `path:",optional"` // 公司id 229 CompanyId int64 `path:",optional"` // 公司id
@@ -242,7 +243,7 @@ type ( @@ -242,7 +243,7 @@ type (
242 } 243 }
243 ) 244 )
244 245
245 -//删除我的草稿内容 246 +// 小程序端删除我的草稿内容
246 type ( 247 type (
247 MiniArticleDraftDeleteMeRequest { 248 MiniArticleDraftDeleteMeRequest {
248 CompanyId int64 `path:",optional"` // 公司id 249 CompanyId int64 `path:",optional"` // 公司id
@@ -254,7 +255,7 @@ type ( @@ -254,7 +255,7 @@ type (
254 Id int64 `json:"id"` // 255 Id int64 `json:"id"` //
255 } 256 }
256 ) 257 )
257 - 258 +// 小程序端获取我的浏览记录
258 type ( 259 type (
259 MiniArticleMarkListRequest { 260 MiniArticleMarkListRequest {
260 Page int `json:"page"` 261 Page int `json:"page"`
@@ -275,9 +276,11 @@ type ( @@ -275,9 +276,11 @@ type (
275 Author SimpleUser `json:"author"` // 发布人 276 Author SimpleUser `json:"author"` // 发布人
276 UpdatedAt int64 `json:"updatedAt"` 277 UpdatedAt int64 `json:"updatedAt"`
277 } 278 }
278 -  
279 ) 279 )
280 280
  281 +
  282 +
  283 +
281 //管理后台获取文章详情 284 //管理后台获取文章详情
282 type ( 285 type (
283 SystemArticleGetRequest { 286 SystemArticleGetRequest {
@@ -294,7 +297,7 @@ type ( @@ -294,7 +297,7 @@ type (
294 Id int64 `json:"id"` // id 297 Id int64 `json:"id"` // id
295 Title string `json:"title"` // 标题 298 Title string `json:"title"` // 标题
296 AuthorId int64 `json:"authorId"` // 发布人id 299 AuthorId int64 `json:"authorId"` // 发布人id
297 - Author Author `json:"author"` // 发布人 300 + Author ArticleAuthor `json:"author"` // 发布人
298 CreatedAt int64 `json:"createdAt"` // 文章的发布时间 301 CreatedAt int64 `json:"createdAt"` // 文章的发布时间
299 Section []ArticleSection `json:"section"` // 文章的文本内容 302 Section []ArticleSection `json:"section"` // 文章的文本内容
300 Images []string `json:"images"` // 图片 303 Images []string `json:"images"` // 图片
1 syntax = "v1" 1 syntax = "v1"
2 2
3 info( 3 info(
4 - title: "天联鹰蜓"  
5 - desc: "天联鹰蜓"  
6 - author: "email" 4 + title: "评论相关"
  5 + desc: "编辑处理文章的评论"
  6 + author: "author"
7 email: "email" 7 email: "email"
8 version: "v1" 8 version: "v1"
9 ) 9 )
10 10
11 // 小程序接口 11 // 小程序接口
12 @server( 12 @server(
13 - prefix: v1 13 + prefix: v1/mini
14 group: comment 14 group: comment
15 jwt: MiniAuth 15 jwt: MiniAuth
16 ) 16 )
17 service Core { 17 service Core {
18 - @doc "小程序评论"  
19 - @handler miniComment  
20 - get /mini/comment (CommentRequest) returns (CommentResposne) 18 +
  19 + @doc "小程序获取回复@人可选列表"
  20 + @handler MiniArticleCommentAtUser
  21 + post /article_comment/at_user/select (MiniArticleCommentAtUserRequest) returns (MiniArticleCommentAtUserResponse)
  22 +
  23 + @doc "小程序填写文章的评论"
  24 + @handler MiniCreateArticleComment
  25 + post /article_comment (MiniCreateArticleCommentRequest) returns (MiniCreateArticleCommentResponse)
21 } 26 }
22 27
23 -// 后台接口  
24 -@server(  
25 - prefix: v1  
26 - group: comment  
27 - jwt: SystemAuth 28 +//
  29 +// 小程序获取回复@人可选列表
  30 +type (
  31 + MiniArticleCommentAtUserRequest {
  32 + ArtitceId int64 `json:"articleId"`
  33 + }
  34 +
  35 + MiniArticleCommentAtUserResponse {
  36 + }
28 ) 37 )
29 -service Core {  
30 - @doc "系统评论"  
31 - @handler systemComment  
32 - get /system/comment (CommentRequest) returns (CommentResposne) 38 +
  39 +//评论的填写人
  40 +type CommentAuthor {
  41 + Id int64 `json:"id"` // 人员id
  42 + Name string `json:"name"` // 人员的名字
  43 + Avatar string `json:"avatar"` // 人员头像URL
  44 + Position string `json:"position"` // 职位
  45 + Company string `json:"company"` // 公司
33 } 46 }
34 47
  48 +// 小程序填写文章的评论
35 type ( 49 type (
36 - CommentRequest {  
37 - }  
38 - CommentResposne {  
39 - List []Comment `json:"list"` 50 + MiniCreateArticleCommentRequest {
  51 + ArtitceId int64 `json:"articleId"` // 文章id
  52 + SectionId int64 `json:"sectionId"` // 段落id
  53 + FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取
  54 + Pid int64 `json:"commnet"` // 回复那个评论的id
  55 + Content string `json:"content"` // 评论的内容
  56 + AtWho []int64 `json:"atWho"` // 填写评论时@的人
40 } 57 }
41 58
42 - Comment { 59 + MiniCreateArticleCommentResponse {
  60 + Id int64 `json:"id"`
  61 + Pid int64 `json:"pid"`
  62 + TopId int64 `json:"topId"`
  63 + ArtitceId int64 `json:"articleId"` // 文章id
  64 + SectionId int64 `json:"sectionId"` // 段落id
  65 + FromUserId int64 `json:"fromUserId"` // 填写评论的人
  66 + FromUser CommentAuthor `json:"fromUser"` // 填写评论的人
  67 + ToUserId int64 `json:"toUserId"` // 回复哪个人
  68 + ToUser CommentAuthor `json:"toUser"` // 回复哪个人
  69 + SectionContent string `json:"sectionContent"` // 引用的文章内容文本
  70 + CountReply int `json:"countReply"` // 回复数量
  71 + CountUserLove int `json:"countUserLove"` // 用户点赞数量
  72 + CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
  73 + AtWho []CommentAuthor `json:"atWho"` // 填写评论时@的人
43 } 74 }
44 ) 75 )
@@ -9,16 +9,16 @@ import ( @@ -9,16 +9,16 @@ import (
9 "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/api/internal/types" 9 "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/api/internal/types"
10 ) 10 )
11 11
12 -func MiniCommentHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { 12 +func MiniArticleCommentAtUserHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
13 return func(w http.ResponseWriter, r *http.Request) { 13 return func(w http.ResponseWriter, r *http.Request) {
14 - var req types.CommentRequest 14 + var req types.MiniArticleCommentAtUserRequest
15 if err := httpx.Parse(r, &req); err != nil { 15 if err := httpx.Parse(r, &req); err != nil {
16 httpx.ErrorCtx(r.Context(), w, err) 16 httpx.ErrorCtx(r.Context(), w, err)
17 return 17 return
18 } 18 }
19 19
20 - l := comment.NewMiniCommentLogic(r.Context(), svcCtx)  
21 - resp, err := l.MiniComment(&req) 20 + l := comment.NewMiniArticleCommentAtUserLogic(r.Context(), svcCtx)
  21 + resp, err := l.MiniArticleCommentAtUser(&req)
22 if err != nil { 22 if err != nil {
23 httpx.ErrorCtx(r.Context(), w, err) 23 httpx.ErrorCtx(r.Context(), w, err)
24 } else { 24 } else {
@@ -9,16 +9,16 @@ import ( @@ -9,16 +9,16 @@ import (
9 "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/api/internal/types" 9 "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/api/internal/types"
10 ) 10 )
11 11
12 -func SystemCommentHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { 12 +func MiniCreateArticleCommentHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
13 return func(w http.ResponseWriter, r *http.Request) { 13 return func(w http.ResponseWriter, r *http.Request) {
14 - var req types.CommentRequest 14 + var req types.MiniCreateArticleCommentRequest
15 if err := httpx.Parse(r, &req); err != nil { 15 if err := httpx.Parse(r, &req); err != nil {
16 httpx.ErrorCtx(r.Context(), w, err) 16 httpx.ErrorCtx(r.Context(), w, err)
17 return 17 return
18 } 18 }
19 19
20 - l := comment.NewSystemCommentLogic(r.Context(), svcCtx)  
21 - resp, err := l.SystemComment(&req) 20 + l := comment.NewMiniCreateArticleCommentLogic(r.Context(), svcCtx)
  21 + resp, err := l.MiniCreateArticleComment(&req)
22 if err != nil { 22 if err != nil {
23 httpx.ErrorCtx(r.Context(), w, err) 23 httpx.ErrorCtx(r.Context(), w, err)
24 } else { 24 } else {
@@ -20,25 +20,18 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) { @@ -20,25 +20,18 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
20 server.AddRoutes( 20 server.AddRoutes(
21 []rest.Route{ 21 []rest.Route{
22 { 22 {
23 - Method: http.MethodGet,  
24 - Path: "/mini/comment",  
25 - Handler: comment.MiniCommentHandler(serverCtx), 23 + Method: http.MethodPost,
  24 + Path: "/article_comment/at_user/select",
  25 + Handler: comment.MiniArticleCommentAtUserHandler(serverCtx),
26 }, 26 },
27 - },  
28 - rest.WithJwt(serverCtx.Config.MiniAuth.AccessSecret),  
29 - rest.WithPrefix("/v1"),  
30 - )  
31 -  
32 - server.AddRoutes(  
33 - []rest.Route{  
34 { 27 {
35 - Method: http.MethodGet,  
36 - Path: "/system/comment",  
37 - Handler: comment.SystemCommentHandler(serverCtx), 28 + Method: http.MethodPost,
  29 + Path: "/article_comment",
  30 + Handler: comment.MiniCreateArticleCommentHandler(serverCtx),
38 }, 31 },
39 }, 32 },
40 - rest.WithJwt(serverCtx.Config.SystemAuth.AccessSecret),  
41 - rest.WithPrefix("/v1"), 33 + rest.WithJwt(serverCtx.Config.MiniAuth.AccessSecret),
  34 + rest.WithPrefix("/v1/mini"),
42 ) 35 )
43 36
44 server.AddRoutes( 37 server.AddRoutes(
@@ -43,19 +43,10 @@ func (l *MiniCreateArticleLogic) MiniCreateArticle(req *types.MiniArticleCreateR @@ -43,19 +43,10 @@ func (l *MiniCreateArticleLogic) MiniCreateArticle(req *types.MiniArticleCreateR
43 Id: author.Id, 43 Id: author.Id,
44 Name: author.Name, 44 Name: author.Name,
45 Avatar: author.Avatar, 45 Avatar: author.Avatar,
46 - GroupId: 0,  
47 - Group: "",  
48 Position: author.Position, 46 Position: author.Position,
49 Company: companyInfo.Name, 47 Company: companyInfo.Name,
50 CompanyId: author.CompanyId, 48 CompanyId: author.CompanyId,
51 } 49 }
52 - if author.DepartmentId > 0 {  
53 - department, err := l.svcCtx.DepartmentRepository.FindOne(l.ctx, conn, author.DepartmentId)  
54 - if err == nil {  
55 - articleAuthor.GroupId = department.Id  
56 - articleAuthor.Group = department.Name  
57 - }  
58 - }  
59 if len(req.Images) > 9 { 50 if len(req.Images) > 9 {
60 return nil, xerr.NewErrMsg("图片数量最多9张") 51 return nil, xerr.NewErrMsg("图片数量最多9张")
61 } 52 }
@@ -38,7 +38,10 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( @@ -38,7 +38,10 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) (
38 return nil, xerr.NewErrMsg("没有查看权限") 38 return nil, xerr.NewErrMsg("没有查看权限")
39 } 39 }
40 40
  41 + //TODO 检查可查看人
  42 +
41 if articleInfo.Show == domain.ArticleShowDisable { 43 if articleInfo.Show == domain.ArticleShowDisable {
  44 + // 文章内容不显示
42 resp = &types.MiniArticleGetResponse{ 45 resp = &types.MiniArticleGetResponse{
43 Id: articleInfo.Id, 46 Id: articleInfo.Id,
44 Title: articleInfo.Title, 47 Title: articleInfo.Title,
@@ -54,6 +57,20 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( @@ -54,6 +57,20 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) (
54 if err != nil { 57 if err != nil {
55 return nil, xerr.NewErrMsgErr("读取文章内容失败", err) 58 return nil, xerr.NewErrMsgErr("读取文章内容失败", err)
56 } 59 }
  60 + var meLoveFlag int
  61 + if req.UserId > 0 {
  62 + // 获取我对文章的点赞标识
  63 + queryOption = domain.NewQueryOptions().
  64 + WithCountOnly().
  65 + MustWithKV("articleId", articleInfo.Id).
  66 + MustWithKV("commentId", 0).
  67 + MustWithKV("userId", req.UserId)
  68 + cnt, _, _ := l.svcCtx.UserLoveFlagRepository.Find(l.ctx, conn, queryOption)
  69 + if cnt > 0 {
  70 + meLoveFlag = 1
  71 + }
  72 + }
  73 +
57 sortBy := domain.SortArticleSection(sectionList) 74 sortBy := domain.SortArticleSection(sectionList)
58 sort.Sort(sortBy) 75 sort.Sort(sortBy)
59 articleSection := []types.ArticleSection{} 76 articleSection := []types.ArticleSection{}
@@ -70,11 +87,11 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( @@ -70,11 +87,11 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) (
70 Id: articleInfo.Id, 87 Id: articleInfo.Id,
71 Title: articleInfo.Title, 88 Title: articleInfo.Title,
72 AuthorId: articleInfo.AuthorId, 89 AuthorId: articleInfo.AuthorId,
73 - Author: types.Author{  
74 - Id: articleInfo.Author.Id,  
75 - Name: articleInfo.Author.Name,  
76 - Avatar: articleInfo.Author.Avatar,  
77 - Group: articleInfo.Author.Group, 90 + Author: types.ArticleAuthor{
  91 + Id: articleInfo.Author.Id,
  92 + Name: articleInfo.Author.Name,
  93 + Avatar: articleInfo.Author.Avatar,
  94 + // Group: articleInfo.Author.Group,
78 Position: articleInfo.Author.Position, 95 Position: articleInfo.Author.Position,
79 Company: articleInfo.Author.Company, 96 Company: articleInfo.Author.Company,
80 }, 97 },
@@ -93,6 +110,7 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( @@ -93,6 +110,7 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) (
93 CountRead: articleInfo.CountRead, 110 CountRead: articleInfo.CountRead,
94 Show: int(articleInfo.Show), 111 Show: int(articleInfo.Show),
95 Edit: 0, 112 Edit: 0,
  113 + MeLoveFlag: meLoveFlag,
96 } 114 }
97 if articleInfo.CreatedAt != articleInfo.UpdatedAt { 115 if articleInfo.CreatedAt != articleInfo.UpdatedAt {
98 resp.Edit = 1 116 resp.Edit = 1
@@ -9,21 +9,21 @@ import ( @@ -9,21 +9,21 @@ import (
9 "github.com/zeromicro/go-zero/core/logx" 9 "github.com/zeromicro/go-zero/core/logx"
10 ) 10 )
11 11
12 -type MiniCommentLogic struct { 12 +type MiniArticleCommentAtUserLogic struct {
13 logx.Logger 13 logx.Logger
14 ctx context.Context 14 ctx context.Context
15 svcCtx *svc.ServiceContext 15 svcCtx *svc.ServiceContext
16 } 16 }
17 17
18 -func NewMiniCommentLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MiniCommentLogic {  
19 - return &MiniCommentLogic{ 18 +func NewMiniArticleCommentAtUserLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MiniArticleCommentAtUserLogic {
  19 + return &MiniArticleCommentAtUserLogic{
20 Logger: logx.WithContext(ctx), 20 Logger: logx.WithContext(ctx),
21 ctx: ctx, 21 ctx: ctx,
22 svcCtx: svcCtx, 22 svcCtx: svcCtx,
23 } 23 }
24 } 24 }
25 25
26 -func (l *MiniCommentLogic) MiniComment(req *types.CommentRequest) (resp *types.CommentResposne, err error) { 26 +func (l *MiniArticleCommentAtUserLogic) MiniArticleCommentAtUser(req *types.MiniArticleCommentAtUserRequest) (resp *types.MiniArticleCommentAtUserResponse, err error) {
27 // todo: add your logic here and delete this line 27 // todo: add your logic here and delete this line
28 28
29 return 29 return
@@ -9,21 +9,21 @@ import ( @@ -9,21 +9,21 @@ import (
9 "github.com/zeromicro/go-zero/core/logx" 9 "github.com/zeromicro/go-zero/core/logx"
10 ) 10 )
11 11
12 -type SystemCommentLogic struct { 12 +type MiniCreateArticleCommentLogic struct {
13 logx.Logger 13 logx.Logger
14 ctx context.Context 14 ctx context.Context
15 svcCtx *svc.ServiceContext 15 svcCtx *svc.ServiceContext
16 } 16 }
17 17
18 -func NewSystemCommentLogic(ctx context.Context, svcCtx *svc.ServiceContext) *SystemCommentLogic {  
19 - return &SystemCommentLogic{ 18 +func NewMiniCreateArticleCommentLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MiniCreateArticleCommentLogic {
  19 + return &MiniCreateArticleCommentLogic{
20 Logger: logx.WithContext(ctx), 20 Logger: logx.WithContext(ctx),
21 ctx: ctx, 21 ctx: ctx,
22 svcCtx: svcCtx, 22 svcCtx: svcCtx,
23 } 23 }
24 } 24 }
25 25
26 -func (l *SystemCommentLogic) SystemComment(req *types.CommentRequest) (resp *types.CommentResposne, err error) { 26 +func (l *MiniCreateArticleCommentLogic) MiniCreateArticleComment(req *types.MiniCreateArticleCommentRequest) (resp *types.MiniCreateArticleCommentResponse, err error) {
27 // todo: add your logic here and delete this line 27 // todo: add your logic here and delete this line
28 28
29 return 29 return
1 // Code generated by goctl. DO NOT EDIT. 1 // Code generated by goctl. DO NOT EDIT.
2 package types 2 package types
3 3
4 -type Location struct {  
5 - Longitude float64 `json:"longitude,optional"` //经度  
6 - Latitude float64 `json:"latitude,optional"` //纬度  
7 - Descript string `json:"descript,optional"` //地点描述 4 +type MiniArticleCommentAtUserRequest struct {
  5 + ArtitceId int64 `json:"articleId"`
8 } 6 }
9 7
10 -type Author struct { 8 +type MiniArticleCommentAtUserResponse struct {
  9 +}
  10 +
  11 +type CommentAuthor struct {
11 Id int64 `json:"id"` // 人员id 12 Id int64 `json:"id"` // 人员id
12 Name string `json:"name"` // 人员的名字 13 Name string `json:"name"` // 人员的名字
13 Avatar string `json:"avatar"` // 人员头像URL 14 Avatar string `json:"avatar"` // 人员头像URL
14 - Group string `json:"group"` // 人员的分组  
15 Position string `json:"position"` // 职位 15 Position string `json:"position"` // 职位
16 Company string `json:"company"` // 公司 16 Company string `json:"company"` // 公司
17 } 17 }
18 18
19 -type MiniArticleCreateRequest struct {  
20 - Title string `json:"title"` //标题  
21 - Section []string `json:"section"` //文章的文本内容  
22 - AuthorId int64 `json:"authorId,optional"` //发布人id  
23 - Images []string `json:"images,optional"` //图片  
24 - WhoRead []int64 `json:"whoRead,optional"` //谁可查看  
25 - WhoReview []int64 `json:"whoReview,optional"` //谁可评论  
26 - Location Location `json:"location,optional"` //定位坐标 19 +type MiniCreateArticleCommentRequest struct {
  20 + ArtitceId int64 `json:"articleId"` // 文章id
  21 + SectionId int64 `json:"sectionId"` // 段落id
  22 + FromUserId int64 `json:",optional"` // 填写文章的人,服务端自动获取
  23 + Pid int64 `json:"commnet"` // 回复那个评论的id
  24 + Content string `json:"content"` // 评论的内容
  25 + AtWho []int64 `json:"atWho"` // 填写评论时@的人
  26 +}
  27 +
  28 +type MiniCreateArticleCommentResponse struct {
  29 + Id int64 `json:"id"`
  30 + Pid int64 `json:"pid"`
  31 + TopId int64 `json:"topId"`
  32 + ArtitceId int64 `json:"articleId"` // 文章id
  33 + SectionId int64 `json:"sectionId"` // 段落id
  34 + FromUserId int64 `json:"fromUserId"` // 填写评论的人
  35 + FromUser CommentAuthor `json:"fromUser"` // 填写评论的人
  36 + ToUserId int64 `json:"toUserId"` // 回复哪个人
  37 + ToUser CommentAuthor `json:"toUser"` // 回复哪个人
  38 + SectionContent string `json:"sectionContent"` // 引用的文章内容文本
  39 + CountReply int `json:"countReply"` // 回复数量
  40 + CountUserLove int `json:"countUserLove"` // 用户点赞数量
  41 + CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
  42 + AtWho []CommentAuthor `json:"atWho"` // 填写评论时@的人
27 } 43 }
28 44
29 -type MiniArticleCreateResponse struct {  
30 - Id int64 `json:"id"` 45 +type MessageSystemRequest struct {
  46 + Page int `json:"page"`
  47 + Size int `json:"size"`
31 } 48 }
32 49
33 -type MiniArticleGetRequest struct {  
34 - Id int64 `path:"id"` //id  
35 - CompanyId int64 `path:",optional"` 50 +type MessageSystemResponse struct {
  51 + List []MessageSystemItem `json:"list"`
  52 + Total int64 `json:"total"`
36 } 53 }
37 54
38 -type MiniArticleGetResponse struct {  
39 - Id int64 `json:"id"` //id  
40 - Title string `json:"title"` //标题  
41 - AuthorId int64 `json:"authorId"` //发布人id  
42 - Author Author `json:"author"` //发布人  
43 - CreatedAt int64 `json:"createdAt"` //文章的发布时间  
44 - Section []ArticleSection `json:"section"` //文章的文本内容  
45 - Images []string `json:"images"` //图片  
46 - WhoRead []int64 `json:"whoRead"` //谁可查看  
47 - WhoReview []int64 `json:"whoReview"` //谁可评论  
48 - Location Location `json:"location"` //定位坐标  
49 - CountLove int `json:"countLove"` // 点赞数量  
50 - CountComment int `json:"countComment"` // 评论数量  
51 - CountRead int `json:"countRead"` // 浏览数量  
52 - Show int `json:"show"` // 评论的展示状态(0显示、1不显示)  
53 - Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) 55 +type MessageSystemItem struct {
  56 + Id int64 `json:"id"` // ID
  57 + Type int `json:"type"` // 系统分类
  58 + Title string `json:"title"` // 标题
  59 + Content string `json:"content"` // 内容
  60 + CreatedAt int64 `json:"createdAt"` // 创建时间
54 } 61 }
55 62
56 -type ArticleSection struct {  
57 - Id int64 `json:"id"` //段落id  
58 - Content string `json:"content"` // 文本内容  
59 - SortBy int `json:"sortBy"` // 排序  
60 - TotalComment int `json:"totalComment"` // 评论的数量 63 +type MessageBusinessRequest struct {
  64 + Type int `json:"type"`
  65 + Page int `json:"page"`
  66 + Size int `json:"size"`
61 } 67 }
62 68
63 -type MiniArticleSearchMeRequest struct {  
64 - AuthorId int64 `json:",optional"`  
65 - CompanyId int64 `json:",optional"`  
66 - Page int `json:"page"`  
67 - Size int `json:"size"` 69 +type MessageBusinessResponse struct {
  70 + List []MessageBusinessItem `json:"list"`
  71 + Total int64 `json:"total"`
68 } 72 }
69 73
70 -type MiniArticleSearchMeResponse struct {  
71 - Total int `json:"total"`  
72 - List []ArticleSearchMe `json:"list"` 74 +type MessageBusinessItem struct {
  75 + Id int64 `json:"id"`
  76 + Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)
  77 + OptType int `json:"optType"` // 操作类型(1针对文章、1针对评论、2针对圆桌)
  78 + CompanyId int64 `json:"companyId"` // 操作人公司ID
  79 + UserId int64 `json:"userId"` // 操作人用户ID
  80 + RecipientId int64 `json:"recipientId"` // 接收者ID
  81 + ArticleId int64 `json:"articleId"` // 文章ID
  82 + CommentId int64 `json:"commentId"` // 评论ID
  83 + DiscussionId int64 `json:"discussionId"` // 圆桌ID
  84 + DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID
  85 + Content string `json:"content"` // 消息内容
  86 + CreatedAt int64 `json:"createdAt"` // 创建时间
  87 + User *SimpleUser `json:"user"` // 操作人
  88 + Article *SimpleArticle `json:"article"` // 文章
  89 + Comment *SimpleComment `json:"comment"` // 评论(不一定是自己,可能是被人@到)
73 } 90 }
74 91
75 -type ArticleSearchMe struct {  
76 - Id int64 `json:"id"` //id  
77 - Title string `json:"title"` //标题  
78 - Images []string `json:"images"` //图片  
79 - CreatedAt int64 `json:"createdAt"` //文章的创建日期  
80 - CountLove int `json:"countLove"` //点赞数量  
81 - CountComment int `json:"CountComment"` //评论数量  
82 - Show int `json:"show"` //是否隐藏 [0显示、1不显示] 92 +type SimpleUser struct {
  93 + Id int64 `json:"id"`
  94 + CompanyId int64 `json:"companyId,omitempty"` // 公司ID
  95 + CompanyName string `json:"companyName,omitempty"` // 公司名称
  96 + Name string `json:"name,omitempty"` // 名称
  97 + Avatar string `json:"avatar,omitempty"` // 头像
  98 + Position string `json:"position,omitempty"` // 职位
83 } 99 }
84 100
85 -type MiniUserLikeArticleRequest struct {  
86 - ArticleId int64 `json:"articleId"` // 文章id  
87 - CompanyId int64 `json:",optional"` //公司id  
88 - Page int `json:"page"` //分页,第几页  
89 - Size int `json:"size"` //分页,每页几条 101 +type SimpleArticle struct {
  102 + Id int64 `json:"id"`
  103 + Title string `json:"title"` // 文章标题
  104 + Summary string `json:"summary"` // 文章概要
  105 + CountLove int `json:"countLove"` // 点赞数量
  106 + CountComment int `json:"countComment"` // 评论数量
  107 + Show int `json:"show"` // 文章的展示状态(0显示、1不显示)
90 } 108 }
91 109
92 -type MiniUserLikeArticleResponse struct {  
93 - Total int64 `json:"total"` //总数  
94 - List []WhichUserLikeArticle `json:"list"` //列表 110 +type TagCreateRequest struct {
  111 + CompanyId int64 `json:"companyId"`
  112 + Image string `json:"image"`
  113 + Name string `json:"name"` // 标签名称
  114 + Group string `json:"group"` // 标签分类
  115 + Remark string `json:"remark,optional"` // 备注
95 } 116 }
96 117
97 -type WhichUserLikeArticle struct {  
98 - ArticleId int64 `json:"articleId"` // 文章id  
99 - UserId int64 `json:"userId"` // 人员id  
100 - Name string `json:"name"` // 人员名称  
101 - Avatar string `json:"avatar"` // 人员头像  
102 - CreatedAt int64 `json:"createdAt"` // 点赞记录的时间 118 +type TagCreateResponse struct {
  119 + Id int64 `json:"id"`
103 } 120 }
104 121
105 -type MiniSetUserLikeRequset struct {  
106 - ArticleId int64 `json:"articleId"` //文章id  
107 - CommentId int64 `json:"commentId"` //评论id  
108 - UserId int64 `json:",optional"` //操作人  
109 - Flag int `json:"flag"` //点赞标志 1、点赞 2 、取消点赞 122 +type TagEditRequest struct {
  123 + Id int64 `json:"id"`
  124 + CompanyId int64 `json:"-"`
  125 + Image string `json:"image"`
  126 + Name string `json:"name"` // 标签名称
  127 + Group string `json:"group"` // 标签分类
  128 + Remark string `json:"remark,optional"` // 备注
110 } 129 }
111 130
112 -type MiniSetUserLikeResponse struct {  
113 - ArticleId int64 `json:"articleId"` //文章id  
114 - CommentId int64 `json:"commentId"` //评论id  
115 - Count int `json:"count"` //现有的点赞数量 131 +type TagEditResponse struct {
  132 + Id int64 `json:"id"`
116 } 133 }
117 134
118 -type MiniArticleBackupSearchRequest struct {  
119 - Page int `json:"page"`  
120 - Size int `json:"size"`  
121 - ArticleId int `json:"articleId"`  
122 - CompanyId int64 `json:",optional"` // 服务端自动获取 135 +type TagGetRequest struct {
  136 + Id int64 `path:"id"`
  137 + CompanyId int64 `path:"-"`
123 } 138 }
124 139
125 -type MiniArticleBackupSearchResponse struct {  
126 - Total int64 `json:"total"`  
127 - List []MiniArticleBackupItem `json:"list"` 140 +type TagGetResponse struct {
  141 + Id int64 `json:"id"`
  142 + Image string `json:"image"`
  143 + Name string `json:"name"` // 标签名称
  144 + Group string `json:"group"` // 标签分类
  145 + Remark string `json:"remark"` // 备注
128 } 146 }
129 147
130 -type MiniArticleBackupItem struct {  
131 - Id int64 `json:"id"`  
132 - Title string `json:"title"`  
133 - Content string `json:"content"`  
134 - Images []string `json:"images"`  
135 - CreatedAt int64 `json:"createdAt"`  
136 - Location Location `json:"location"` 148 +type TagListRequest struct {
  149 + Page int `json:"page"`
  150 + Size int `json:"size"`
  151 + CompanyId int64 `json:"-"`
  152 + TagName string `json:"tagName,optional"`
  153 + Group string `json:"group,optional"`
  154 + Remark string `json:"remark,optional"`
137 } 155 }
138 156
139 -type MiniArticleMarkUserReadRequest struct {  
140 - UserId int64 `json:",optional"` // 当前操作人  
141 - CompanyId int64 `json:",optional"` // 当前公司  
142 - ArticleId int64 `json:"articleId"` // 文章id 157 +type TagListResponse struct {
  158 + Total int64 `json:"total"`
  159 + List []TagItem `json:"list"`
143 } 160 }
144 161
145 -type MiniArticleMarkUserReadResponse struct {  
146 - Id int64 `json:"id"` 162 +type TagItem struct {
  163 + Id int64 `json:"id"`
  164 + Image string `json:"image"`
  165 + Name string `json:"name"` // 标签名称
  166 + Group string `json:"group"` // 标签分类
  167 + Remark string `json:"remark"` // 备注
  168 + CreatedAt int64 `json:"createdAt"`
147 } 169 }
148 170
149 -type MiniArticleDraftCreateRequest struct {  
150 - CompanyId int64 `json:",optional"`  
151 - AuthorId int64 `json:",optional"` // 发布人  
152 - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式  
153 - Section []string `json:"section"` // 填写的内容  
154 - Title string `json:"title"` // 标题  
155 - Images []string `json:"images"` // 图片  
156 - WhoRead []int64 `json:"whoRead"` // 谁可以看  
157 - WhoReview []int64 `json:"whoReview"` // 评论人  
158 - Location Location `json:"location"` // 坐标 171 +type TagDeleteRequest struct {
  172 + Id int64 `path:"id"`
  173 + CompanyId int64 `path:"-"`
159 } 174 }
160 175
161 -type MiniArticleDraftCreateResponse struct { 176 +type TagDeleteResponse struct {
162 Id int64 `json:"id"` 177 Id int64 `json:"id"`
163 } 178 }
164 179
165 -type MiniArticleDraftUpdateRequest struct {  
166 - Id int64 `json:"id"`  
167 - CompanyId int64 `json:",optional"`  
168 - AuthorId int64 `json:",optional"` // 发布人  
169 - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式  
170 - Section []string `json:"section"` // 填写的内容  
171 - Title string `json:"title"` // 标题  
172 - Images []string `json:"images"` // 图片  
173 - WhoRead []int64 `json:"whoRead"` // 谁可以看  
174 - WhoReview []int64 `json:"whoReview"` // 评论人  
175 - Location Location `json:"location"` // 坐标  
176 -}  
177 -  
178 -type MiniArticleDraftUpdateResponse struct {  
179 - Id int64 `json:"id"` 180 +type MiniUserLoginRequest struct {
  181 + LoginType string `json:"loginType"` // 登录类型 wechat-login whchat-phone-login phone-password-login phone-smscode-login
  182 + WechatAuthCode string `json:"wechatAuthcode,optional"` // 微信登录 授权码
  183 + WechatEncryptedData string `json:"wechatEncryptedData,optional"` // 微信登录 加密数据
  184 + WechatIV string `json:"wechatIV,optional"` // 微信登录 加密算法初始向量
  185 + Phone string `json:"phone,optional"` // 手机号
  186 + Password string `json:"password,optional"` // 密码
  187 + SmsCode string `json:"smsCode,optional"` // 短信验证码
180 } 188 }
181 189
182 -type MiniArticleDraftSearchMeRequest struct {  
183 - CompanyId int64 `json:",optional"` // 公司id  
184 - AuthorId int64 `json:",optional"` // 发布人  
185 - Page int `json:"page"`  
186 - Size int `json:"size"` 190 +type MiniUserLoginResponse struct {
  191 + Token string `json:"token"` // x-token
  192 + Phone string `json:"phone"` // 手机号
  193 + Message string `json:"message"` // 失败消息(审核中,注册成功等待审核)
  194 + Success bool `json:"success"` // 成功标识
187 } 195 }
188 196
189 -type MiniArticleDraftSearchMeResponse struct {  
190 - Total int64 `json:"total"`  
191 - List []MiniArticleDraftItem `json:"list"` 197 +type MiniUserSwitchAccountRequest struct {
  198 + CompanyId int64 `json:"companyId"`
192 } 199 }
193 200
194 -type MiniArticleDraftItem struct {  
195 - Id int64 `json:"id"`  
196 - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式  
197 - Section []string `json:"section"` // 填写的内容  
198 - Title string `json:"title"` // 标题  
199 - Images []string `json:"images"` // 图片  
200 - CreatedAt int64 `json:"createdAt"` 201 +type MiniUserInfoRequest struct {
201 } 202 }
202 203
203 -type MiniArticleDraftGetMeRequest struct {  
204 - CompanyId int64 `path:",optional"` // 公司id  
205 - AuthorId int64 `path:",optional"` // 发布人  
206 - Id int64 `path:"id"`  
207 -}  
208 -  
209 -type MiniArticleDraftGetMeResponse struct {  
210 - Id int64 `json:"id"` //  
211 - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式  
212 - Section []string `json:"Section"` // 填写的内容  
213 - Title string `json:"title"` // 标题  
214 - Images []string `json:"images"` // 图片  
215 - WhoRead []int64 `json:"whoRead"` // 谁可以看  
216 - WhoReview []int64 `json:"whoReview"` // 评论人  
217 - Location Location `json:"location"` // 坐标 204 +type MiniUserInfoResponse struct {
  205 + User *UserItem `json:"user,omitempty"` // 用户信息
  206 + TotalArticle int64 `json:"totalArticle"` // 累计信息发布
  207 + TotalLoved int64 `json:"totalLoved"` // 累计收到的赞
  208 + TotalAccepted int64 `json:"totalAccepted"` // 累计被采纳
  209 + Accounts []Account `json:"accounts"` // 公司账号
  210 + Auths []Auth `json:"auths"` // 权限列表
218 } 211 }
219 212
220 -type MiniArticleDraftDeleteMeRequest struct {  
221 - CompanyId int64 `path:",optional"` // 公司id  
222 - AuthorId int64 `path:",optional"` // 发布人  
223 - Id int64 `path:"id"` 213 +type MiniUserApplyJoinCompanyRequest struct {
  214 + Phone string `json:"phone"`
  215 + Code string `json:"code"`
224 } 216 }
225 217
226 -type MiniArticleDraftDeleteMeResponse struct {  
227 - Id int64 `json:"id"` // 218 +type MiniUserApplyJoinCompanyResponse struct {
228 } 219 }
229 220
230 -type MiniArticleMarkListRequest struct {  
231 - Page int `json:"page"`  
232 - Size int `json:"size"` 221 +type MiniUserAuditRequest struct {
  222 + UserId int64 `json:"userId"` // 用户ID
  223 + Status int `json:"status"` // 审核状态 1:审核通过 2:拒绝
233 } 224 }
234 225
235 -type MiniArticleMarkListResponse struct {  
236 - Total int64 `json:"total"`  
237 - List []MiniArticleMarkItem `json:"list"` 226 +type MiniUserDepartmentUsersRequest struct {
238 } 227 }
239 228
240 -type MiniArticleMarkItem struct {  
241 - Id int64 `json:"id"`  
242 - CompanyId int64 `json:"companyId"`  
243 - UserId int64 `json:"userId"`  
244 - ArticleId int64 `json:"articleId"`  
245 - Title string `json:"title"`  
246 - Author SimpleUser `json:"author"` // 发布人  
247 - UpdatedAt int64 `json:"updatedAt"` 229 +type MiniUserDepartmentUsersResponse struct {
  230 + Departments []*Department `json:"departments"`
  231 + Users []*UserItem `json:"users"`
248 } 232 }
249 233
250 -type SystemArticleGetRequest struct {  
251 - Id int64 `path:"id"` //id  
252 - CompanyId int64 `path:",optional"` 234 +type MiniUserFollowedSearchRequest struct {
  235 + Page int `json:"page,optional"`
  236 + Size int `json:"size,optional"`
253 } 237 }
254 238
255 -type UserShowName struct {  
256 - Id int `json:"id"`  
257 - Name int `json:"name"` 239 +type MiniUserFollowedSearchResponse struct {
  240 + List []*UserFollowItem `json:"users"`
  241 + Total int64 `json:"total"`
258 } 242 }
259 243
260 -type SystemArticleGetResponse struct {  
261 - Id int64 `json:"id"` // id  
262 - Title string `json:"title"` // 标题  
263 - AuthorId int64 `json:"authorId"` // 发布人id  
264 - Author Author `json:"author"` // 发布人  
265 - CreatedAt int64 `json:"createdAt"` // 文章的发布时间  
266 - Section []ArticleSection `json:"section"` // 文章的文本内容  
267 - Images []string `json:"images"` // 图片  
268 - WhoRead []int64 `json:"whoRead"` // 谁可查看  
269 - WhoReadInfo []UserShowName `json:"whoReadInfo"` // 谁可查看  
270 - WhoReview []int64 `json:"whoReview"` // 谁可评论  
271 - WhoReviewInfo []UserShowName `json:"whoReviewInfo"` // 谁可评论  
272 - Location Location `json:"location"` // 定位坐标  
273 - CountLove int `json:"countLove"` // 点赞数量  
274 - CountComment int `json:"countComment"` // 评论数量  
275 - CountRead int `json:"countRead"` // 浏览数量  
276 - Show int `json:"show"` // 评论的展示状态(0显示、1不显示) 244 +type UserItem struct {
  245 + Id int64 `json:"id,omitempty"` // 用户ID
  246 + CompanyId int64 `json:"companyId,omitempty"` // 公司ID
  247 + CompanyName string `json:"companyName,omitempty"` // 公司名称
  248 + Flag int `json:"flag,omitempty"` // 标识 1:管理员 2:普通用户 (有绑定角色是管理员)
  249 + Name string `json:"name,omitempty"` // 名称
  250 + Avatar string `json:"avatar,omitempty"` // 头像
  251 + Phone string `json:"phone,omitempty"` // 手机号 唯一
  252 + Position string `json:"position,omitempty"` // 职位
  253 + Enable int `json:"enable,omitempty"` // 启用状态 1:启用 2:禁用
  254 + AuditStatus *int `json:"auditStatus,omitempty"` // 审核状态 0:待审核 1:审核通过 2:拒绝
  255 + Follower []int64 `json:"followers,omitempty"` // 关注我的人 (冗余)
  256 + Following []int64 `json:"following,omitempty"` // 我关注的人 (冗余)
  257 + Departments []int64 `json:"departments,omitempty"` // 所属部门
  258 + AccountFrom string `json:"accountFrom,omitempty"` // 账号来源 后台新增、扫码注册
277 } 259 }
278 260
279 -type SystemArticleSearchRequest struct {  
280 - CompanyId int64 `json:",optional"`  
281 - Page int `json:"page"`  
282 - Size int `json:"size"` 261 +type Account struct {
  262 + CompanyId int64 `json:"companyId"` // 公司ID
  263 + CompanyName string `json:"companyName"` // 公司名称
  264 + Logo string `json:"logo"` // 公司图标
  265 + UserId int64 `json:"userId"` // 用户ID
  266 + Name string `json:"name"` // 名称
  267 + Position string `json:"position"` // 职位
283 } 268 }
284 269
285 -type SystemArticleSearchResponse struct {  
286 - Total int `json:"total"`  
287 - List []SystemArticleSearch `json:"list"` 270 +type Department struct {
  271 + Id int64 `json:"id,omitempty"` // 部门ID
  272 + CompanyId int64 `json:"companyId,omitempty"` // 公司ID
  273 + ParentId int64 `json:"parentId,omitempty"` // 父级ID
  274 + Name string `json:"name,omitempty"` // 部门名称
288 } 275 }
289 276
290 -type SystemArticleSearch struct {  
291 - Id int64 `json:"id"` //id  
292 - Title string `json:"title"` //标题  
293 - Author string `json:"author"` //发布人  
294 - Images []string `json:"images"` //图片  
295 - CreatedAt int64 `json:"createdAt"` //文章的创建日期  
296 - CountLove int `json:"countLove"` //点赞数量  
297 - CountComment int `json:"CountComment"` //评论数量  
298 - Show int `json:"show"` //是否隐藏 [0显示、1不显示]  
299 - Tags []string `json:"tags"` //标签  
300 - TargetUser int `json:"targetUser"` //分发方式 [0分发给所有人、1分发给指定的人] 277 +type UserSearchRequest struct {
  278 + Page int `json:"page,optional"`
  279 + Size int `json:"size,optional"`
  280 + AuditFlag *int `json:"auditFlag,optional"` // 按审核状态 0:待审核 1:审核通过 2:拒绝
301 } 281 }
302 282
303 -type CommentRequest struct { 283 +type UserSearchResponse struct {
  284 + List []*UserItem `json:"list"`
  285 + Total int64 `json:"total"`
304 } 286 }
305 287
306 -type CommentResposne struct {  
307 - List []Comment `json:"list"` 288 +type FollowRequest struct {
  289 + UserId int64 `json:"userId"`
308 } 290 }
309 291
310 -type Comment struct { 292 +type UserFollowItem struct {
  293 + Id int64 `json:"id"` // 用户ID
  294 + Name string `json:"name"` // 名称
  295 + CompanyName string `json:"companyName"` // 公司名称
  296 + Avatar string `json:"avatar"` // 头像
  297 + Position string `json:"position"` // 职位
  298 + Followed bool `json:"followed"` // 关注
  299 + MutualFollowed bool `json:"mutualFollowed"` // 互相关注标识
311 } 300 }
312 301
313 -type MessageSystemRequest struct { 302 +type MiniMyLikeRequest struct {
314 Page int `json:"page"` 303 Page int `json:"page"`
315 Size int `json:"size"` 304 Size int `json:"size"`
316 } 305 }
317 306
318 -type MessageSystemResponse struct {  
319 - List []MessageSystemItem `json:"list"`  
320 - Total int64 `json:"total"` 307 +type MiniMyLikeResponse struct {
  308 + List []MyLikeItem `json:"list"`
  309 + Total int64 `json:"total"`
321 } 310 }
322 311
323 -type MessageSystemItem struct {  
324 - Id int64 `json:"id"` // ID  
325 - Type int `json:"type"` // 系统分类  
326 - Title string `json:"title"` // 标题  
327 - Content string `json:"content"` // 内容  
328 - CreatedAt int64 `json:"createdAt"` // 创建时间 312 +type MyLikeItem struct {
  313 + UserId int64 `json:"userId"` // 发布人id
  314 + ArticleId int64 `json:"articleId"` // 文章id
  315 + CommentId int64 `json:"commentId"` // 评论id
  316 + CreatedAt int64 `json:"createdAt"` // 创建时间
  317 + User *SimpleUser `json:"user"` // 发布人
  318 + Article *SimpleArticle `json:"article"` // 文章
  319 + Comment *SimpleComment `json:"comment"` // 评论
329 } 320 }
330 321
331 -type MessageBusinessRequest struct {  
332 - Type int `json:"type"`  
333 - Page int `json:"page"`  
334 - Size int `json:"size"` 322 +type SimpleComment struct {
  323 + Id int64 `json:"id"`
  324 + Content string `json:"content"` // 评论内容
  325 + CountLove int `json:"countLove"` // 点赞数量
  326 + CountComment int `json:"countComment"` // 评论数量
  327 + Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
335 } 328 }
336 329
337 -type MessageBusinessResponse struct {  
338 - List []MessageBusinessItem `json:"list"`  
339 - Total int64 `json:"total"` 330 +type SystemUserInfoRequest struct {
340 } 331 }
341 332
342 -type MessageBusinessItem struct {  
343 - Id int64 `json:"id"`  
344 - Type int `json:"type"` // 分类 (1回复 2点赞 3被采纳)  
345 - OptType int `json:"optType"` // 操作类型(1针对文章、1针对评论、2针对圆桌)  
346 - CompanyId int64 `json:"companyId"` // 操作人公司ID  
347 - UserId int64 `json:"userId"` // 操作人用户ID  
348 - RecipientId int64 `json:"recipientId"` // 接收者ID  
349 - ArticleId int64 `json:"articleId"` // 文章ID  
350 - CommentId int64 `json:"commentId"` // 评论ID  
351 - DiscussionId int64 `json:"discussionId"` // 圆桌ID  
352 - DiscussionOpinionId int64 `json:"discussionOpinionId"` // 观点ID  
353 - Content string `json:"content"` // 消息内容  
354 - CreatedAt int64 `json:"createdAt"` // 创建时间  
355 - User *SimpleUser `json:"user"` // 操作人  
356 - Article *SimpleArticle `json:"article"` // 文章  
357 - Comment *SimpleComment `json:"comment"` // 评论(不一定是自己,可能是被人@到) 333 +type SystemUserInfoResponse struct {
  334 + UserId int64 `json:"userId"`
  335 + UserName string `json:"userName"`
  336 + Avatar string `json:"avatar"`
  337 + CompanyId int64 `json:"companyId"`
  338 + CompanyName string `json:"companyName"`
358 } 339 }
359 340
360 -type SimpleUser struct {  
361 - Id int64 `json:"id"`  
362 - CompanyId int64 `json:"companyId,omitempty"` // 公司ID  
363 - CompanyName string `json:"companyName,omitempty"` // 公司名称  
364 - Name string `json:"name,omitempty"` // 名称  
365 - Avatar string `json:"avatar,omitempty"` // 头像  
366 - Position string `json:"position,omitempty"` // 职位 341 +type CompanySearchRequest struct {
  342 + Page int `json:"page,optional"`
  343 + Size int `json:"size,optional"`
  344 + Flag int `json:"flag,optional"` // 1:用户已加入的 2:用户未加入的公司
  345 + UserId int64 `json:"userId,optional"` // 按用户搜索(用户所加入的企业)
  346 + Code string `json:"code,optional"` // 按编码搜索
367 } 347 }
368 348
369 -type SimpleArticle struct {  
370 - Id int64 `json:"id"`  
371 - Title string `json:"title"` // 文章标题  
372 - Summary string `json:"summary"` // 文章概要  
373 - CountLove int `json:"countLove"` // 点赞数量  
374 - CountComment int `json:"countComment"` // 评论数量  
375 - Show int `json:"show"` // 文章的展示状态(0显示、1不显示) 349 +type CompanySearchResponse struct {
  350 + List []Company `json:"list"`
  351 + Total int64 `json:"total"`
376 } 352 }
377 353
378 -type TagCreateRequest struct {  
379 - CompanyId int64 `json:"companyId"`  
380 - Image string `json:"image"`  
381 - Name string `json:"name"` // 标签名称  
382 - Group string `json:"group"` // 标签分类  
383 - Remark string `json:"remark,optional"` // 备注 354 +type Company struct {
  355 + Id int64 `json:"id,omitempty"` // 唯一标识
  356 + Name string `json:"name,omitempty"` // 名称
  357 + Code string `json:"code,omitempty"` // 编码(搜索使用,4位字母数字)
  358 + Logo string `json:"logo,omitempty"` // 公司LOGO
384 } 359 }
385 360
386 -type TagCreateResponse struct {  
387 - Id int64 `json:"id"` 361 +type Location struct {
  362 + Longitude float64 `json:"longitude,optional"` //经度
  363 + Latitude float64 `json:"latitude,optional"` //纬度
  364 + Descript string `json:"descript,optional"` //地点描述
388 } 365 }
389 366
390 -type TagEditRequest struct {  
391 - Id int64 `json:"id"`  
392 - CompanyId int64 `json:"-"`  
393 - Image string `json:"image"`  
394 - Name string `json:"name"` // 标签名称  
395 - Group string `json:"group"` // 标签分类  
396 - Remark string `json:"remark,optional"` // 备注 367 +type ArticleAuthor struct {
  368 + Id int64 `json:"id"` // 人员id
  369 + Name string `json:"name"` // 人员的名字
  370 + Avatar string `json:"avatar"` // 人员头像URL
  371 + Position string `json:"position"` // 职位
  372 + Company string `json:"company"` // 公司
397 } 373 }
398 374
399 -type TagEditResponse struct { 375 +type MiniArticleCreateRequest struct {
  376 + Title string `json:"title"` //标题
  377 + Section []string `json:"section"` //文章的文本内容
  378 + AuthorId int64 `json:"authorId,optional"` //发布人id
  379 + Images []string `json:"images,optional"` //图片
  380 + WhoRead []int64 `json:"whoRead,optional"` //谁可查看
  381 + WhoReview []int64 `json:"whoReview,optional"` //谁可评论
  382 + Location Location `json:"location,optional"` //定位坐标
  383 +}
  384 +
  385 +type MiniArticleCreateResponse struct {
400 Id int64 `json:"id"` 386 Id int64 `json:"id"`
401 } 387 }
402 388
403 -type TagGetRequest struct {  
404 - Id int64 `path:"id"`  
405 - CompanyId int64 `path:"-"` 389 +type MiniArticleGetRequest struct {
  390 + Id int64 `path:"id"` //id
  391 + CompanyId int64 `path:",optional"` //当前公司
  392 + UserId int `path:",optional"` //当前用户
406 } 393 }
407 394
408 -type TagGetResponse struct {  
409 - Id int64 `json:"id"`  
410 - Image string `json:"image"`  
411 - Name string `json:"name"` // 标签名称  
412 - Group string `json:"group"` // 标签分类  
413 - Remark string `json:"remark"` // 备注 395 +type MiniArticleGetResponse struct {
  396 + Id int64 `json:"id"` //id
  397 + Title string `json:"title"` //标题
  398 + AuthorId int64 `json:"authorId"` //发布人id
  399 + Author ArticleAuthor `json:"author"` //发布人
  400 + CreatedAt int64 `json:"createdAt"` //文章的发布时间
  401 + Section []ArticleSection `json:"section"` //文章的文本内容
  402 + Images []string `json:"images"` //图片
  403 + WhoRead []int64 `json:"whoRead"` //谁可查看
  404 + WhoReview []int64 `json:"whoReview"` //谁可评论
  405 + Location Location `json:"location"` //定位坐标
  406 + CountLove int `json:"countLove"` // 点赞数量
  407 + CountComment int `json:"countComment"` // 评论数量
  408 + CountRead int `json:"countRead"` // 浏览数量
  409 + Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
  410 + Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在)
  411 + MeLoveFlag int `json:"meLoveFlag"` //当前人员对文章的点赞标识
414 } 412 }
415 413
416 -type TagListRequest struct {  
417 - Page int `json:"page"`  
418 - Size int `json:"size"`  
419 - CompanyId int64 `json:"-"`  
420 - TagName string `json:"tagName,optional"`  
421 - Group string `json:"group,optional"`  
422 - Remark string `json:"remark,optional"` 414 +type ArticleSection struct {
  415 + Id int64 `json:"id"` //段落id
  416 + Content string `json:"content"` // 文本内容
  417 + SortBy int `json:"sortBy"` // 排序
  418 + TotalComment int `json:"totalComment"` // 评论的数量
423 } 419 }
424 420
425 -type TagListResponse struct {  
426 - Total int64 `json:"total"`  
427 - List []TagItem `json:"list"` 421 +type MiniArticleSearchMeRequest struct {
  422 + AuthorId int64 `json:",optional"`
  423 + CompanyId int64 `json:",optional"`
  424 + Page int `json:"page"`
  425 + Size int `json:"size"`
428 } 426 }
429 427
430 -type TagItem struct {  
431 - Id int64 `json:"id"`  
432 - Image string `json:"image"`  
433 - Name string `json:"name"` // 标签名称  
434 - Group string `json:"group"` // 标签分类  
435 - Remark string `json:"remark"` // 备注  
436 - CreatedAt int64 `json:"createdAt"` 428 +type MiniArticleSearchMeResponse struct {
  429 + Total int `json:"total"`
  430 + List []ArticleSearchMe `json:"list"`
437 } 431 }
438 432
439 -type TagDeleteRequest struct {  
440 - Id int64 `path:"id"`  
441 - CompanyId int64 `path:"-"` 433 +type ArticleSearchMe struct {
  434 + Id int64 `json:"id"` //id
  435 + Title string `json:"title"` //标题
  436 + Images []string `json:"images"` //图片
  437 + CreatedAt int64 `json:"createdAt"` //文章的创建日期
  438 + CountLove int `json:"countLove"` //点赞数量
  439 + CountComment int `json:"CountComment"` //评论数量
  440 + Show int `json:"show"` //是否隐藏 [0显示、1不显示]
442 } 441 }
443 442
444 -type TagDeleteResponse struct {  
445 - Id int64 `json:"id"` 443 +type MiniUserLikeArticleRequest struct {
  444 + ArticleId int64 `json:"articleId"` // 文章id
  445 + CompanyId int64 `json:",optional"` //公司id
  446 + Page int `json:"page"` //分页,第几页
  447 + Size int `json:"size"` //分页,每页几条
446 } 448 }
447 449
448 -type MiniUserLoginRequest struct {  
449 - LoginType string `json:"loginType"` // 登录类型 wechat-login whchat-phone-login phone-password-login phone-smscode-login  
450 - WechatAuthCode string `json:"wechatAuthcode,optional"` // 微信登录 授权码  
451 - WechatEncryptedData string `json:"wechatEncryptedData,optional"` // 微信登录 加密数据  
452 - WechatIV string `json:"wechatIV,optional"` // 微信登录 加密算法初始向量  
453 - Phone string `json:"phone,optional"` // 手机号  
454 - Password string `json:"password,optional"` // 密码  
455 - SmsCode string `json:"smsCode,optional"` // 短信验证码 450 +type MiniUserLikeArticleResponse struct {
  451 + Total int64 `json:"total"` //总数
  452 + List []WhichUserLikeArticle `json:"list"` //列表
  453 +}
  454 +
  455 +type WhichUserLikeArticle struct {
  456 + ArticleId int64 `json:"articleId"` // 文章id
  457 + UserId int64 `json:"userId"` // 人员id
  458 + Name string `json:"name"` // 人员名称
  459 + Avatar string `json:"avatar"` // 人员头像
  460 + CreatedAt int64 `json:"createdAt"` // 点赞记录的时间
456 } 461 }
457 462
458 -type MiniUserLoginResponse struct {  
459 - Token string `json:"token"` // x-token  
460 - Phone string `json:"phone"` // 手机号  
461 - Message string `json:"message"` // 失败消息(审核中,注册成功等待审核)  
462 - Success bool `json:"success"` // 成功标识 463 +type MiniSetUserLikeRequset struct {
  464 + ArticleId int64 `json:"articleId"` //文章id
  465 + CommentId int64 `json:"commentId"` //评论id
  466 + UserId int64 `json:",optional"` //操作人
  467 + Flag int `json:"flag"` //点赞标志 1、点赞 2 、取消点赞
463 } 468 }
464 469
465 -type MiniUserSwitchAccountRequest struct {  
466 - CompanyId int64 `json:"companyId"` 470 +type MiniSetUserLikeResponse struct {
  471 + ArticleId int64 `json:"articleId"` //文章id
  472 + CommentId int64 `json:"commentId"` //评论id
  473 + Count int `json:"count"` //现有的点赞数量
467 } 474 }
468 475
469 -type MiniUserInfoRequest struct { 476 +type MiniArticleBackupSearchRequest struct {
  477 + Page int `json:"page"`
  478 + Size int `json:"size"`
  479 + ArticleId int `json:"articleId"`
  480 + CompanyId int64 `json:",optional"` // 服务端自动获取
470 } 481 }
471 482
472 -type MiniUserInfoResponse struct {  
473 - User *UserItem `json:"user,omitempty"` // 用户信息  
474 - TotalArticle int64 `json:"totalArticle"` // 累计信息发布  
475 - TotalLoved int64 `json:"totalLoved"` // 累计收到的赞  
476 - TotalAccepted int64 `json:"totalAccepted"` // 累计被采纳  
477 - Accounts []Account `json:"accounts"` // 公司账号  
478 - Auths []Auth `json:"auths"` // 权限列表 483 +type MiniArticleBackupSearchResponse struct {
  484 + Total int64 `json:"total"`
  485 + List []MiniArticleBackupItem `json:"list"`
479 } 486 }
480 487
481 -type MiniUserApplyJoinCompanyRequest struct {  
482 - Phone string `json:"phone"`  
483 - Code string `json:"code"` 488 +type MiniArticleBackupItem struct {
  489 + Id int64 `json:"id"`
  490 + Title string `json:"title"`
  491 + Content string `json:"content"`
  492 + Images []string `json:"images"`
  493 + CreatedAt int64 `json:"createdAt"`
  494 + Location Location `json:"location"`
484 } 495 }
485 496
486 -type MiniUserApplyJoinCompanyResponse struct { 497 +type MiniArticleMarkUserReadRequest struct {
  498 + UserId int64 `json:",optional"` // 当前操作人
  499 + CompanyId int64 `json:",optional"` // 当前公司
  500 + ArticleId int64 `json:"articleId"` // 文章id
487 } 501 }
488 502
489 -type MiniUserAuditRequest struct {  
490 - UserId int64 `json:"userId"` // 用户ID  
491 - Status int `json:"status"` // 审核状态 1:审核通过 2:拒绝 503 +type MiniArticleMarkUserReadResponse struct {
  504 + Id int64 `json:"id"`
492 } 505 }
493 506
494 -type MiniUserDepartmentUsersRequest struct { 507 +type MiniArticleDraftCreateRequest struct {
  508 + CompanyId int64 `json:",optional"`
  509 + AuthorId int64 `json:",optional"` // 发布人
  510 + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式
  511 + Section []string `json:"section"` // 填写的内容
  512 + Title string `json:"title"` // 标题
  513 + Images []string `json:"images"` // 图片
  514 + WhoRead []int64 `json:"whoRead"` // 谁可以看
  515 + WhoReview []int64 `json:"whoReview"` // 评论人
  516 + Location Location `json:"location"` // 坐标
495 } 517 }
496 518
497 -type MiniUserDepartmentUsersResponse struct {  
498 - Departments []*Department `json:"departments"`  
499 - Users []*UserItem `json:"users"` 519 +type MiniArticleDraftCreateResponse struct {
  520 + Id int64 `json:"id"`
500 } 521 }
501 522
502 -type MiniUserFollowedSearchRequest struct {  
503 - Page int `json:"page,optional"`  
504 - Size int `json:"size,optional"` 523 +type MiniArticleDraftUpdateRequest struct {
  524 + Id int64 `json:"id"`
  525 + CompanyId int64 `json:",optional"`
  526 + AuthorId int64 `json:",optional"` // 发布人
  527 + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式
  528 + Section []string `json:"section"` // 填写的内容
  529 + Title string `json:"title"` // 标题
  530 + Images []string `json:"images"` // 图片
  531 + WhoRead []int64 `json:"whoRead"` // 谁可以看
  532 + WhoReview []int64 `json:"whoReview"` // 评论人
  533 + Location Location `json:"location"` // 坐标
505 } 534 }
506 535
507 -type MiniUserFollowedSearchResponse struct {  
508 - List []*UserFollowItem `json:"users"`  
509 - Total int64 `json:"total"` 536 +type MiniArticleDraftUpdateResponse struct {
  537 + Id int64 `json:"id"`
510 } 538 }
511 539
512 -type UserItem struct {  
513 - Id int64 `json:"id,omitempty"` // 用户ID  
514 - CompanyId int64 `json:"companyId,omitempty"` // 公司ID  
515 - CompanyName string `json:"companyName,omitempty"` // 公司名称  
516 - Flag int `json:"flag,omitempty"` // 标识 1:管理员 2:普通用户 (有绑定角色是管理员)  
517 - Name string `json:"name,omitempty"` // 名称  
518 - Avatar string `json:"avatar,omitempty"` // 头像  
519 - Phone string `json:"phone,omitempty"` // 手机号 唯一  
520 - Position string `json:"position,omitempty"` // 职位  
521 - Enable int `json:"enable,omitempty"` // 启用状态 1:启用 2:禁用  
522 - AuditStatus *int `json:"auditStatus,omitempty"` // 审核状态 0:待审核 1:审核通过 2:拒绝  
523 - Follower []int64 `json:"followers,omitempty"` // 关注我的人 (冗余)  
524 - Following []int64 `json:"following,omitempty"` // 我关注的人 (冗余)  
525 - Departments []int64 `json:"departments,omitempty"` // 所属部门  
526 - AccountFrom string `json:"accountFrom,omitempty"` // 账号来源 后台新增、扫码注册 540 +type MiniArticleDraftSearchMeRequest struct {
  541 + CompanyId int64 `json:",optional"` // 公司id
  542 + AuthorId int64 `json:",optional"` // 发布人
  543 + Page int `json:"page"`
  544 + Size int `json:"size"`
527 } 545 }
528 546
529 -type Account struct {  
530 - CompanyId int64 `json:"companyId"` // 公司ID  
531 - CompanyName string `json:"companyName"` // 公司名称  
532 - Logo string `json:"logo"` // 公司图标  
533 - UserId int64 `json:"userId"` // 用户ID  
534 - Name string `json:"name"` // 名称  
535 - Position string `json:"position"` // 职位 547 +type MiniArticleDraftSearchMeResponse struct {
  548 + Total int64 `json:"total"`
  549 + List []MiniArticleDraftItem `json:"list"`
536 } 550 }
537 551
538 -type Department struct {  
539 - Id int64 `json:"id,omitempty"` // 部门ID  
540 - CompanyId int64 `json:"companyId,omitempty"` // 公司ID  
541 - ParentId int64 `json:"parentId,omitempty"` // 父级ID  
542 - Name string `json:"name,omitempty"` // 部门名称 552 +type MiniArticleDraftItem struct {
  553 + Id int64 `json:"id"`
  554 + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式
  555 + Section []string `json:"section"` // 填写的内容
  556 + Title string `json:"title"` // 标题
  557 + Images []string `json:"images"` // 图片
  558 + CreatedAt int64 `json:"createdAt"`
543 } 559 }
544 560
545 -type UserSearchRequest struct {  
546 - Page int `json:"page,optional"`  
547 - Size int `json:"size,optional"`  
548 - AuditFlag *int `json:"auditFlag,optional"` // 按审核状态 0:待审核 1:审核通过 2:拒绝 561 +type MiniArticleDraftGetMeRequest struct {
  562 + CompanyId int64 `path:",optional"` // 公司id
  563 + AuthorId int64 `path:",optional"` // 发布人
  564 + Id int64 `path:"id"`
549 } 565 }
550 566
551 -type UserSearchResponse struct {  
552 - List []*UserItem `json:"list"`  
553 - Total int64 `json:"total"` 567 +type MiniArticleDraftGetMeResponse struct {
  568 + Id int64 `json:"id"` //
  569 + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式
  570 + Section []string `json:"Section"` // 填写的内容
  571 + Title string `json:"title"` // 标题
  572 + Images []string `json:"images"` // 图片
  573 + WhoRead []int64 `json:"whoRead"` // 谁可以看
  574 + WhoReview []int64 `json:"whoReview"` // 评论人
  575 + Location Location `json:"location"` // 坐标
554 } 576 }
555 577
556 -type FollowRequest struct {  
557 - UserId int64 `json:"userId"` 578 +type MiniArticleDraftDeleteMeRequest struct {
  579 + CompanyId int64 `path:",optional"` // 公司id
  580 + AuthorId int64 `path:",optional"` // 发布人
  581 + Id int64 `path:"id"`
558 } 582 }
559 583
560 -type UserFollowItem struct {  
561 - Id int64 `json:"id"` // 用户ID  
562 - Name string `json:"name"` // 名称  
563 - CompanyName string `json:"companyName"` // 公司名称  
564 - Avatar string `json:"avatar"` // 头像  
565 - Position string `json:"position"` // 职位  
566 - Followed bool `json:"followed"` // 关注  
567 - MutualFollowed bool `json:"mutualFollowed"` // 互相关注标识 584 +type MiniArticleDraftDeleteMeResponse struct {
  585 + Id int64 `json:"id"` //
568 } 586 }
569 587
570 -type MiniMyLikeRequest struct { 588 +type MiniArticleMarkListRequest struct {
571 Page int `json:"page"` 589 Page int `json:"page"`
572 Size int `json:"size"` 590 Size int `json:"size"`
573 } 591 }
574 592
575 -type MiniMyLikeResponse struct {  
576 - List []MyLikeItem `json:"list"`  
577 - Total int64 `json:"total"` 593 +type MiniArticleMarkListResponse struct {
  594 + Total int64 `json:"total"`
  595 + List []MiniArticleMarkItem `json:"list"`
578 } 596 }
579 597
580 -type MyLikeItem struct {  
581 - UserId int64 `json:"userId"` // 发布人id  
582 - ArticleId int64 `json:"articleId"` // 文章id  
583 - CommentId int64 `json:"commentId"` // 评论id  
584 - CreatedAt int64 `json:"createdAt"` // 创建时间  
585 - User *SimpleUser `json:"user"` // 发布人  
586 - Article *SimpleArticle `json:"article"` // 文章  
587 - Comment *SimpleComment `json:"comment"` // 评论 598 +type MiniArticleMarkItem struct {
  599 + Id int64 `json:"id"`
  600 + CompanyId int64 `json:"companyId"`
  601 + UserId int64 `json:"userId"`
  602 + ArticleId int64 `json:"articleId"`
  603 + Title string `json:"title"`
  604 + Author SimpleUser `json:"author"` // 发布人
  605 + UpdatedAt int64 `json:"updatedAt"`
588 } 606 }
589 607
590 -type SimpleComment struct {  
591 - Id int64 `json:"id"`  
592 - Content string `json:"content"` // 评论内容  
593 - CountLove int `json:"countLove"` // 点赞数量  
594 - CountComment int `json:"countComment"` // 评论数量  
595 - Show int `json:"show"` // 评论的展示状态(0显示、1不显示) 608 +type SystemArticleGetRequest struct {
  609 + Id int64 `path:"id"` //id
  610 + CompanyId int64 `path:",optional"`
596 } 611 }
597 612
598 -type SystemUserInfoRequest struct { 613 +type UserShowName struct {
  614 + Id int `json:"id"`
  615 + Name int `json:"name"`
599 } 616 }
600 617
601 -type SystemUserInfoResponse struct {  
602 - UserId int64 `json:"userId"`  
603 - UserName string `json:"userName"`  
604 - Avatar string `json:"avatar"`  
605 - CompanyId int64 `json:"companyId"`  
606 - CompanyName string `json:"companyName"` 618 +type SystemArticleGetResponse struct {
  619 + Id int64 `json:"id"` // id
  620 + Title string `json:"title"` // 标题
  621 + AuthorId int64 `json:"authorId"` // 发布人id
  622 + Author ArticleAuthor `json:"author"` // 发布人
  623 + CreatedAt int64 `json:"createdAt"` // 文章的发布时间
  624 + Section []ArticleSection `json:"section"` // 文章的文本内容
  625 + Images []string `json:"images"` // 图片
  626 + WhoRead []int64 `json:"whoRead"` // 谁可查看
  627 + WhoReadInfo []UserShowName `json:"whoReadInfo"` // 谁可查看
  628 + WhoReview []int64 `json:"whoReview"` // 谁可评论
  629 + WhoReviewInfo []UserShowName `json:"whoReviewInfo"` // 谁可评论
  630 + Location Location `json:"location"` // 定位坐标
  631 + CountLove int `json:"countLove"` // 点赞数量
  632 + CountComment int `json:"countComment"` // 评论数量
  633 + CountRead int `json:"countRead"` // 浏览数量
  634 + Show int `json:"show"` // 评论的展示状态(0显示、1不显示)
607 } 635 }
608 636
609 -type CompanySearchRequest struct {  
610 - Page int `json:"page,optional"`  
611 - Size int `json:"size,optional"`  
612 - Flag int `json:"flag,optional"` // 1:用户已加入的 2:用户未加入的公司  
613 - UserId int64 `json:"userId,optional"` // 按用户搜索(用户所加入的企业)  
614 - Code string `json:"code,optional"` // 按编码搜索 637 +type SystemArticleSearchRequest struct {
  638 + CompanyId int64 `json:",optional"`
  639 + Page int `json:"page"`
  640 + Size int `json:"size"`
615 } 641 }
616 642
617 -type CompanySearchResponse struct {  
618 - List []Company `json:"list"`  
619 - Total int64 `json:"total"` 643 +type SystemArticleSearchResponse struct {
  644 + Total int `json:"total"`
  645 + List []SystemArticleSearch `json:"list"`
620 } 646 }
621 647
622 -type Company struct {  
623 - Id int64 `json:"id,omitempty"` // 唯一标识  
624 - Name string `json:"name,omitempty"` // 名称  
625 - Code string `json:"code,omitempty"` // 编码(搜索使用,4位字母数字)  
626 - Logo string `json:"logo,omitempty"` // 公司LOGO 648 +type SystemArticleSearch struct {
  649 + Id int64 `json:"id"` //id
  650 + Title string `json:"title"` //标题
  651 + Author string `json:"author"` //发布人
  652 + Images []string `json:"images"` //图片
  653 + CreatedAt int64 `json:"createdAt"` //文章的创建日期
  654 + CountLove int `json:"countLove"` //点赞数量
  655 + CountComment int `json:"CountComment"` //评论数量
  656 + Show int `json:"show"` //是否隐藏 [0显示、1不显示]
  657 + Tags []string `json:"tags"` //标签
  658 + TargetUser int `json:"targetUser"` //分发方式 [0分发给所有人、1分发给指定的人]
627 } 659 }
628 660
629 type RoleGetRequest struct { 661 type RoleGetRequest struct {
@@ -10,27 +10,28 @@ import ( @@ -10,27 +10,28 @@ import (
10 ) 10 )
11 11
12 type ArticleComment struct { 12 type ArticleComment struct {
13 - Id int64 `gorm:"primaryKey"` // 唯一标识  
14 - CompanyId int64  
15 - CreatedAt int64  
16 - UpdatedAt int64  
17 - IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"`  
18 - DeletedAt int64  
19 - Version int  
20 - Pid int64 // 对哪个评论进行回复  
21 - TopId int64 // 归属于最上级的哪个评论  
22 - ArticleId int64 // 文章id  
23 - ArticleSectionId int64 // 文本内容id  
24 - SectionContent string // 引用的文章内容文本  
25 - FromUserId int64 // 谁填写的评论  
26 - FromUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 谁填写的评论  
27 - ToUserId int64 // 回复谁的评论  
28 - ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论  
29 - Content string // 评论内容  
30 - CountReply int // 回复数量  
31 - CountUserLove int // 用户点赞数量  
32 - CountAdminLove int // 运营点赞数量  
33 - Show int // 评论的展示状态(0显示、1不显示) 13 + Id int64 `gorm:"primaryKey"` // 唯一标识
  14 + CompanyId int64
  15 + CreatedAt int64
  16 + UpdatedAt int64
  17 + IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"`
  18 + DeletedAt int64
  19 + Version int
  20 + Pid int64 // 对哪个评论进行回复
  21 + TopId int64 // 归属于最上级的哪个评论
  22 + ArticleId int64 // 文章id
  23 + SectionId int64 // 文本内容id
  24 + SectionContent string // 引用的文章内容文本
  25 + FromUserId int64 // 谁填写的评论
  26 + FromUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 谁填写的评论
  27 + ToUserId int64 // 回复谁的评论
  28 + ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论
  29 + AtWho []domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 填写评论@的人
  30 + Content string // 评论内容
  31 + CountReply int // 回复数量
  32 + CountUserLove int // 用户点赞数量
  33 + CountAdminLove int // 运营点赞数量
  34 + Show int // 评论的展示状态(0显示、1不显示)
34 } 35 }
35 36
36 func (m *ArticleComment) TableName() string { 37 func (m *ArticleComment) TableName() string {
@@ -142,26 +142,26 @@ func (repository *ArticleCommentRepository) Find(ctx context.Context, conn trans @@ -142,26 +142,26 @@ func (repository *ArticleCommentRepository) Find(ctx context.Context, conn trans
142 142
143 func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.ArticleComment) (*domain.ArticleComment, error) { 143 func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.ArticleComment) (*domain.ArticleComment, error) {
144 to := &domain.ArticleComment{ 144 to := &domain.ArticleComment{
145 - Id: from.Id,  
146 - CompanyId: from.CompanyId,  
147 - CreatedAt: from.CreatedAt,  
148 - UpdatedAt: from.UpdatedAt,  
149 - DeletedAt: from.DeletedAt,  
150 - Version: from.Version,  
151 - Pid: from.Pid,  
152 - TopId: from.TopId,  
153 - ArticleId: from.ArticleId,  
154 - ArticleSectionId: from.ArticleSectionId,  
155 - SectionContent: from.SectionContent,  
156 - FromUserId: from.FromUserId,  
157 - FromUser: from.FromUser,  
158 - ToUserId: from.ToUser.Id,  
159 - ToUser: from.ToUser,  
160 - Content: from.Content,  
161 - CountReply: from.CountReply,  
162 - CountUserLove: from.CountUserLove,  
163 - CountAdminLove: from.CountAdminLove,  
164 - Show: domain.CommentShow(from.Show), 145 + Id: from.Id,
  146 + CompanyId: from.CompanyId,
  147 + CreatedAt: from.CreatedAt,
  148 + UpdatedAt: from.UpdatedAt,
  149 + DeletedAt: from.DeletedAt,
  150 + Version: from.Version,
  151 + Pid: from.Pid,
  152 + TopId: from.TopId,
  153 + ArticleId: from.ArticleId,
  154 + SectionId: from.SectionId,
  155 + SectionContent: from.SectionContent,
  156 + FromUserId: from.FromUserId,
  157 + FromUser: from.FromUser,
  158 + ToUserId: from.ToUser.Id,
  159 + ToUser: from.ToUser,
  160 + Content: from.Content,
  161 + CountReply: from.CountReply,
  162 + CountUserLove: from.CountUserLove,
  163 + CountAdminLove: from.CountAdminLove,
  164 + Show: domain.CommentShow(from.Show),
165 } 165 }
166 // err := copier.Copy(to, from) 166 // err := copier.Copy(to, from)
167 return to, nil 167 return to, nil
@@ -169,26 +169,26 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti @@ -169,26 +169,26 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti
169 169
170 func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.ArticleComment) (*models.ArticleComment, error) { 170 func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.ArticleComment) (*models.ArticleComment, error) {
171 to := &models.ArticleComment{ 171 to := &models.ArticleComment{
172 - Id: from.Id,  
173 - CompanyId: from.CompanyId,  
174 - CreatedAt: from.CreatedAt,  
175 - UpdatedAt: from.UpdatedAt,  
176 - DeletedAt: from.DeletedAt,  
177 - Version: from.Version,  
178 - Pid: from.Pid,  
179 - TopId: from.TopId,  
180 - ArticleId: from.ArticleId,  
181 - ArticleSectionId: from.ArticleSectionId,  
182 - SectionContent: from.SectionContent,  
183 - FromUserId: from.FromUserId,  
184 - FromUser: from.FromUser,  
185 - ToUserId: from.ToUser.Id,  
186 - ToUser: from.ToUser,  
187 - Content: from.Content,  
188 - CountReply: from.CountReply,  
189 - CountUserLove: from.CountUserLove,  
190 - CountAdminLove: from.CountAdminLove,  
191 - Show: int(from.Show), 172 + Id: from.Id,
  173 + CompanyId: from.CompanyId,
  174 + CreatedAt: from.CreatedAt,
  175 + UpdatedAt: from.UpdatedAt,
  176 + DeletedAt: from.DeletedAt,
  177 + Version: from.Version,
  178 + Pid: from.Pid,
  179 + TopId: from.TopId,
  180 + ArticleId: from.ArticleId,
  181 + SectionId: from.SectionId,
  182 + SectionContent: from.SectionContent,
  183 + FromUserId: from.FromUserId,
  184 + FromUser: from.FromUser,
  185 + ToUserId: from.ToUser.Id,
  186 + ToUser: from.ToUser,
  187 + Content: from.Content,
  188 + CountReply: from.CountReply,
  189 + CountUserLove: from.CountUserLove,
  190 + CountAdminLove: from.CountAdminLove,
  191 + Show: int(from.Show),
192 } 192 }
193 // err := copier.Copy(to, from) 193 // err := copier.Copy(to, from)
194 return to, nil 194 return to, nil
@@ -8,26 +8,27 @@ import ( @@ -8,26 +8,27 @@ import (
8 8
9 // 文章评论 9 // 文章评论
10 type ArticleComment struct { 10 type ArticleComment struct {
11 - Id int64 `json:"id"` // 评论id  
12 - CompanyId int64 `json:"companyId"`  
13 - CreatedAt int64 `json:"createdAt,omitempty"`  
14 - UpdatedAt int64 `json:"updatedAt,omitempty"`  
15 - DeletedAt int64 `json:"deletedAt,omitempty"`  
16 - Version int `json:"version,omitempty"`  
17 - Pid int64 `json:"pid"` // 对哪个评论进行回复  
18 - TopId int64 `json:"topId"` // 归属于最上级的哪个评论  
19 - ArticleId int64 `json:"articleId"` // 文章id  
20 - ArticleSectionId int64 `json:"articleSectionId"` // 文本内容id  
21 - SectionContent string `json:"sectionContent"` // 引用的文章内容文本  
22 - FromUserId int64 `json:"fromUserId"` // 谁填写的评论  
23 - FromUser UserSimple `json:"fromUser"` // 谁填写的评论  
24 - ToUserId int64 `json:"toUserId"` // 回复谁的评论  
25 - ToUser UserSimple `json:"toUser"` // 回复谁的评论  
26 - Content string `json:"content"` // 评论内容  
27 - CountReply int `json:"countReply"` // 回复数量  
28 - CountUserLove int `json:"countUserLove"` // 用户点赞数量  
29 - CountAdminLove int `json:"countAdminLove"` // 运营点赞数量  
30 - Show CommentShow `json:"showState"` // 评论的展示状态(0显示、1不显示) 11 + Id int64 `json:"id"` // 评论id
  12 + CompanyId int64 `json:"companyId"`
  13 + CreatedAt int64 `json:"createdAt,omitempty"`
  14 + UpdatedAt int64 `json:"updatedAt,omitempty"`
  15 + DeletedAt int64 `json:"deletedAt,omitempty"`
  16 + Version int `json:"version,omitempty"`
  17 + Pid int64 `json:"pid"` // 对哪个评论进行回复
  18 + TopId int64 `json:"topId"` // 归属于最上级的哪个评论
  19 + ArticleId int64 `json:"articleId"` // 文章id
  20 + SectionId int64 `json:"sectionId"` // 文本段落内容id
  21 + SectionContent string `json:"sectionContent"` // 引用的文章内容文本
  22 + FromUserId int64 `json:"fromUserId"` // 谁填写的评论
  23 + FromUser UserSimple `json:"fromUser"` // 谁填写的评论
  24 + ToUserId int64 `json:"toUserId"` // 回复谁的评论
  25 + ToUser UserSimple `json:"toUser"` // 回复谁的评论
  26 + Content string `json:"content"` // 评论内容
  27 + CountReply int `json:"countReply"` // 回复数量
  28 + CountUserLove int `json:"countUserLove"` // 用户点赞数量
  29 + CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
  30 + Show CommentShow `json:"showState"` // 评论的展示状态(0显示、1不显示)
  31 + AtWho []UserSimple `json:"atWho"` // 填写评论时@的人
31 // ...more 32 // ...more
32 } 33 }
33 34
@@ -29,14 +29,13 @@ type Opinion struct { @@ -29,14 +29,13 @@ type Opinion struct {
29 } 29 }
30 30
31 type UserSimple struct { 31 type UserSimple struct {
32 - Id int64 `json:"id"` // 人员id  
33 - Name string `json:"name"` // 人员的名字  
34 - Avatar string `json:"avatar,omitempty"` // 人员头像URL  
35 - GroupId int64 `json:"groupId,omitempty"`  
36 - Group string `json:"group,omitempty"` // 人员的分组  
37 - Position string `json:"position,omitempty"` // 职位  
38 - Company string `json:"company,omitempty"` // 公司  
39 - CompanyId int64 `json:"companyId"` 32 + Id int64 `json:"id"` // 人员id
  33 + Name string `json:"name"` // 人员的名字
  34 + Avatar string `json:"avatar,omitempty"` // 人员头像URL
  35 + Group []string `json:"group,omitempty"` // 人员的分组
  36 + Position string `json:"position,omitempty"` // 职位
  37 + Company string `json:"company,omitempty"` // 公司
  38 + CompanyId int64 `json:"companyId"`
40 } 39 }
41 40
42 // 记录数据的操作人 41 // 记录数据的操作人