作者 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),  
26 - }, 23 + Method: http.MethodPost,
  24 + Path: "/article_comment/at_user/select",
  25 + Handler: comment.MiniArticleCommentAtUserHandler(serverCtx),
27 }, 26 },
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{ 90 + Author: types.ArticleAuthor{
74 Id: articleInfo.Author.Id, 91 Id: articleInfo.Author.Id,
75 Name: articleInfo.Author.Name, 92 Name: articleInfo.Author.Name,
76 Avatar: articleInfo.Author.Avatar, 93 Avatar: articleInfo.Author.Avatar,
77 - Group: articleInfo.Author.Group, 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"` // 填写评论时@的人
27 } 26 }
28 27
29 -type MiniArticleCreateResponse struct { 28 +type MiniCreateArticleCommentResponse struct {
30 Id int64 `json:"id"` 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"` // 填写评论时@的人
31 } 43 }
32 44
33 -type MiniArticleGetRequest struct {  
34 - Id int64 `path:"id"` //id  
35 - CompanyId int64 `path:",optional"`  
36 -}  
37 -  
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存在)  
54 -}  
55 -  
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"` // 评论的数量  
61 -}  
62 -  
63 -type MiniArticleSearchMeRequest struct {  
64 - AuthorId int64 `json:",optional"`  
65 - CompanyId int64 `json:",optional"` 45 +type MessageSystemRequest struct {
66 Page int `json:"page"` 46 Page int `json:"page"`
67 Size int `json:"size"` 47 Size int `json:"size"`
68 } 48 }
69 49
70 -type MiniArticleSearchMeResponse struct {  
71 - Total int `json:"total"`  
72 - List []ArticleSearchMe `json:"list"`  
73 -}  
74 -  
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不显示]  
83 -}  
84 -  
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"` //分页,每页几条  
90 -}  
91 -  
92 -type MiniUserLikeArticleResponse struct {  
93 - Total int64 `json:"total"` //总数  
94 - List []WhichUserLikeArticle `json:"list"` //列表  
95 -}  
96 -  
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"` // 点赞记录的时间  
103 -}  
104 -  
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 、取消点赞 50 +type MessageSystemResponse struct {
  51 + List []MessageSystemItem `json:"list"`
  52 + Total int64 `json:"total"`
110 } 53 }
111 54
112 -type MiniSetUserLikeResponse struct {  
113 - ArticleId int64 `json:"articleId"` //文章id  
114 - CommentId int64 `json:"commentId"` //评论id  
115 - Count int `json:"count"` //现有的点赞数量 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"` // 创建时间
116 } 61 }
117 62
118 -type MiniArticleBackupSearchRequest struct { 63 +type MessageBusinessRequest struct {
  64 + Type int `json:"type"`
119 Page int `json:"page"` 65 Page int `json:"page"`
120 Size int `json:"size"` 66 Size int `json:"size"`
121 - ArticleId int `json:"articleId"`  
122 - CompanyId int64 `json:",optional"` // 服务端自动获取  
123 } 67 }
124 68
125 -type MiniArticleBackupSearchResponse struct { 69 +type MessageBusinessResponse struct {
  70 + List []MessageBusinessItem `json:"list"`
126 Total int64 `json:"total"` 71 Total int64 `json:"total"`
127 - List []MiniArticleBackupItem `json:"list"`  
128 } 72 }
129 73
130 -type MiniArticleBackupItem struct { 74 +type MessageBusinessItem struct {
131 Id int64 `json:"id"` 75 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"` 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"` // 评论(不一定是自己,可能是被人@到)
137 } 90 }
138 91
139 -type MiniArticleMarkUserReadRequest struct {  
140 - UserId int64 `json:",optional"` // 当前操作人  
141 - CompanyId int64 `json:",optional"` // 当前公司  
142 - ArticleId int64 `json:"articleId"` // 文章id 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"` // 职位
143 } 99 }
144 100
145 -type MiniArticleMarkUserReadResponse struct { 101 +type SimpleArticle struct {
146 Id int64 `json:"id"` 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不显示)
147 } 108 }
148 109
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"` // 坐标 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"` // 备注
159 } 116 }
160 117
161 -type MiniArticleDraftCreateResponse struct { 118 +type TagCreateResponse struct {
162 Id int64 `json:"id"` 119 Id int64 `json:"id"`
163 } 120 }
164 121
165 -type MiniArticleDraftUpdateRequest struct { 122 +type TagEditRequest struct {
166 Id int64 `json:"id"` 123 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"` // 坐标 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"` // 备注
176 } 129 }
177 130
178 -type MiniArticleDraftUpdateResponse struct { 131 +type TagEditResponse struct {
179 Id int64 `json:"id"` 132 Id int64 `json:"id"`
180 } 133 }
181 134
182 -type MiniArticleDraftSearchMeRequest struct {  
183 - CompanyId int64 `json:",optional"` // 公司id  
184 - AuthorId int64 `json:",optional"` // 发布人 135 +type TagGetRequest struct {
  136 + Id int64 `path:"id"`
  137 + CompanyId int64 `path:"-"`
  138 +}
  139 +
  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"` // 备注
  146 +}
  147 +
  148 +type TagListRequest struct {
185 Page int `json:"page"` 149 Page int `json:"page"`
186 Size int `json:"size"` 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"`
187 } 155 }
188 156
189 -type MiniArticleDraftSearchMeResponse struct { 157 +type TagListResponse struct {
190 Total int64 `json:"total"` 158 Total int64 `json:"total"`
191 - List []MiniArticleDraftItem `json:"list"` 159 + List []TagItem `json:"list"`
192 } 160 }
193 161
194 -type MiniArticleDraftItem struct { 162 +type TagItem struct {
195 Id int64 `json:"id"` 163 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"` // 图片 164 + Image string `json:"image"`
  165 + Name string `json:"name"` // 标签名称
  166 + Group string `json:"group"` // 标签分类
  167 + Remark string `json:"remark"` // 备注
200 CreatedAt int64 `json:"createdAt"` 168 CreatedAt int64 `json:"createdAt"`
201 } 169 }
202 170
203 -type MiniArticleDraftGetMeRequest struct {  
204 - CompanyId int64 `path:",optional"` // 公司id  
205 - AuthorId int64 `path:",optional"` // 发布人 171 +type TagDeleteRequest struct {
206 Id int64 `path:"id"` 172 Id int64 `path:"id"`
  173 + CompanyId int64 `path:"-"`
207 } 174 }
208 175
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"` // 坐标 176 +type TagDeleteResponse struct {
  177 + Id int64 `json:"id"`
218 } 178 }
219 179
220 -type MiniArticleDraftDeleteMeRequest struct {  
221 - CompanyId int64 `path:",optional"` // 公司id  
222 - AuthorId int64 `path:",optional"` // 发布人  
223 - Id int64 `path:"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"` // 短信验证码
224 } 188 }
225 189
226 -type MiniArticleDraftDeleteMeResponse struct {  
227 - Id int64 `json:"id"` //  
228 -}  
229 -  
230 -type MiniArticleMarkListRequest struct {  
231 - Page int `json:"page"`  
232 - Size int `json:"size"`  
233 -}  
234 -  
235 -type MiniArticleMarkListResponse struct {  
236 - Total int64 `json:"total"`  
237 - List []MiniArticleMarkItem `json:"list"`  
238 -}  
239 -  
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"`  
248 -}  
249 -  
250 -type SystemArticleGetRequest struct {  
251 - Id int64 `path:"id"` //id  
252 - CompanyId int64 `path:",optional"`  
253 -}  
254 -  
255 -type UserShowName struct {  
256 - Id int `json:"id"`  
257 - Name int `json:"name"`  
258 -}  
259 -  
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不显示)  
277 -}  
278 -  
279 -type SystemArticleSearchRequest struct {  
280 - CompanyId int64 `json:",optional"`  
281 - Page int `json:"page"`  
282 - Size int `json:"size"`  
283 -}  
284 -  
285 -type SystemArticleSearchResponse struct {  
286 - Total int `json:"total"`  
287 - List []SystemArticleSearch `json:"list"`  
288 -}  
289 -  
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分发给指定的人]  
301 -}  
302 -  
303 -type CommentRequest struct {  
304 -}  
305 -  
306 -type CommentResposne struct {  
307 - List []Comment `json:"list"`  
308 -}  
309 -  
310 -type Comment struct {  
311 -}  
312 -  
313 -type MessageSystemRequest struct {  
314 - Page int `json:"page"`  
315 - Size int `json:"size"`  
316 -}  
317 -  
318 -type MessageSystemResponse struct {  
319 - List []MessageSystemItem `json:"list"`  
320 - Total int64 `json:"total"`  
321 -}  
322 -  
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"` // 创建时间  
329 -}  
330 -  
331 -type MessageBusinessRequest struct {  
332 - Type int `json:"type"`  
333 - Page int `json:"page"`  
334 - Size int `json:"size"`  
335 -}  
336 -  
337 -type MessageBusinessResponse struct {  
338 - List []MessageBusinessItem `json:"list"`  
339 - Total int64 `json:"total"`  
340 -}  
341 -  
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"` // 评论(不一定是自己,可能是被人@到)  
358 -}  
359 -  
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"` // 职位  
367 -}  
368 -  
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不显示)  
376 -}  
377 -  
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"` // 备注  
384 -}  
385 -  
386 -type TagCreateResponse struct {  
387 - Id int64 `json:"id"`  
388 -}  
389 -  
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"` // 备注  
397 -}  
398 -  
399 -type TagEditResponse struct {  
400 - Id int64 `json:"id"`  
401 -}  
402 -  
403 -type TagGetRequest struct {  
404 - Id int64 `path:"id"`  
405 - CompanyId int64 `path:"-"`  
406 -}  
407 -  
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"` // 备注  
414 -}  
415 -  
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"`  
423 -}  
424 -  
425 -type TagListResponse struct {  
426 - Total int64 `json:"total"`  
427 - List []TagItem `json:"list"`  
428 -}  
429 -  
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"`  
437 -}  
438 -  
439 -type TagDeleteRequest struct {  
440 - Id int64 `path:"id"`  
441 - CompanyId int64 `path:"-"`  
442 -}  
443 -  
444 -type TagDeleteResponse struct {  
445 - Id int64 `json:"id"`  
446 -}  
447 -  
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"` // 短信验证码  
456 -}  
457 -  
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"` // 成功标识 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"` // 成功标识
463 } 195 }
464 196
465 type MiniUserSwitchAccountRequest struct { 197 type MiniUserSwitchAccountRequest struct {
@@ -626,6 +358,306 @@ type Company struct { @@ -626,6 +358,306 @@ type Company struct {
626 Logo string `json:"logo,omitempty"` // 公司LOGO 358 Logo string `json:"logo,omitempty"` // 公司LOGO
627 } 359 }
628 360
  361 +type Location struct {
  362 + Longitude float64 `json:"longitude,optional"` //经度
  363 + Latitude float64 `json:"latitude,optional"` //纬度
  364 + Descript string `json:"descript,optional"` //地点描述
  365 +}
  366 +
  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"` // 公司
  373 +}
  374 +
  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 {
  386 + Id int64 `json:"id"`
  387 +}
  388 +
  389 +type MiniArticleGetRequest struct {
  390 + Id int64 `path:"id"` //id
  391 + CompanyId int64 `path:",optional"` //当前公司
  392 + UserId int `path:",optional"` //当前用户
  393 +}
  394 +
  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"` //当前人员对文章的点赞标识
  412 +}
  413 +
  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"` // 评论的数量
  419 +}
  420 +
  421 +type MiniArticleSearchMeRequest struct {
  422 + AuthorId int64 `json:",optional"`
  423 + CompanyId int64 `json:",optional"`
  424 + Page int `json:"page"`
  425 + Size int `json:"size"`
  426 +}
  427 +
  428 +type MiniArticleSearchMeResponse struct {
  429 + Total int `json:"total"`
  430 + List []ArticleSearchMe `json:"list"`
  431 +}
  432 +
  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不显示]
  441 +}
  442 +
  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"` //分页,每页几条
  448 +}
  449 +
  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"` // 点赞记录的时间
  461 +}
  462 +
  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 、取消点赞
  468 +}
  469 +
  470 +type MiniSetUserLikeResponse struct {
  471 + ArticleId int64 `json:"articleId"` //文章id
  472 + CommentId int64 `json:"commentId"` //评论id
  473 + Count int `json:"count"` //现有的点赞数量
  474 +}
  475 +
  476 +type MiniArticleBackupSearchRequest struct {
  477 + Page int `json:"page"`
  478 + Size int `json:"size"`
  479 + ArticleId int `json:"articleId"`
  480 + CompanyId int64 `json:",optional"` // 服务端自动获取
  481 +}
  482 +
  483 +type MiniArticleBackupSearchResponse struct {
  484 + Total int64 `json:"total"`
  485 + List []MiniArticleBackupItem `json:"list"`
  486 +}
  487 +
  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"`
  495 +}
  496 +
  497 +type MiniArticleMarkUserReadRequest struct {
  498 + UserId int64 `json:",optional"` // 当前操作人
  499 + CompanyId int64 `json:",optional"` // 当前公司
  500 + ArticleId int64 `json:"articleId"` // 文章id
  501 +}
  502 +
  503 +type MiniArticleMarkUserReadResponse struct {
  504 + Id int64 `json:"id"`
  505 +}
  506 +
  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"` // 坐标
  517 +}
  518 +
  519 +type MiniArticleDraftCreateResponse struct {
  520 + Id int64 `json:"id"`
  521 +}
  522 +
  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"` // 坐标
  534 +}
  535 +
  536 +type MiniArticleDraftUpdateResponse struct {
  537 + Id int64 `json:"id"`
  538 +}
  539 +
  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"`
  545 +}
  546 +
  547 +type MiniArticleDraftSearchMeResponse struct {
  548 + Total int64 `json:"total"`
  549 + List []MiniArticleDraftItem `json:"list"`
  550 +}
  551 +
  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"`
  559 +}
  560 +
  561 +type MiniArticleDraftGetMeRequest struct {
  562 + CompanyId int64 `path:",optional"` // 公司id
  563 + AuthorId int64 `path:",optional"` // 发布人
  564 + Id int64 `path:"id"`
  565 +}
  566 +
  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"` // 坐标
  576 +}
  577 +
  578 +type MiniArticleDraftDeleteMeRequest struct {
  579 + CompanyId int64 `path:",optional"` // 公司id
  580 + AuthorId int64 `path:",optional"` // 发布人
  581 + Id int64 `path:"id"`
  582 +}
  583 +
  584 +type MiniArticleDraftDeleteMeResponse struct {
  585 + Id int64 `json:"id"` //
  586 +}
  587 +
  588 +type MiniArticleMarkListRequest struct {
  589 + Page int `json:"page"`
  590 + Size int `json:"size"`
  591 +}
  592 +
  593 +type MiniArticleMarkListResponse struct {
  594 + Total int64 `json:"total"`
  595 + List []MiniArticleMarkItem `json:"list"`
  596 +}
  597 +
  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"`
  606 +}
  607 +
  608 +type SystemArticleGetRequest struct {
  609 + Id int64 `path:"id"` //id
  610 + CompanyId int64 `path:",optional"`
  611 +}
  612 +
  613 +type UserShowName struct {
  614 + Id int `json:"id"`
  615 + Name int `json:"name"`
  616 +}
  617 +
  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不显示)
  635 +}
  636 +
  637 +type SystemArticleSearchRequest struct {
  638 + CompanyId int64 `json:",optional"`
  639 + Page int `json:"page"`
  640 + Size int `json:"size"`
  641 +}
  642 +
  643 +type SystemArticleSearchResponse struct {
  644 + Total int `json:"total"`
  645 + List []SystemArticleSearch `json:"list"`
  646 +}
  647 +
  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分发给指定的人]
  659 +}
  660 +
629 type RoleGetRequest struct { 661 type RoleGetRequest struct {
630 Id int64 `path:"id"` 662 Id int64 `path:"id"`
631 } 663 }
@@ -20,12 +20,13 @@ type ArticleComment struct { @@ -20,12 +20,13 @@ type ArticleComment struct {
20 Pid int64 // 对哪个评论进行回复 20 Pid int64 // 对哪个评论进行回复
21 TopId int64 // 归属于最上级的哪个评论 21 TopId int64 // 归属于最上级的哪个评论
22 ArticleId int64 // 文章id 22 ArticleId int64 // 文章id
23 - ArticleSectionId int64 // 文本内容id 23 + SectionId int64 // 文本内容id
24 SectionContent string // 引用的文章内容文本 24 SectionContent string // 引用的文章内容文本
25 FromUserId int64 // 谁填写的评论 25 FromUserId int64 // 谁填写的评论
26 FromUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 谁填写的评论 26 FromUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 谁填写的评论
27 ToUserId int64 // 回复谁的评论 27 ToUserId int64 // 回复谁的评论
28 ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论 28 ToUser domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 回复谁的评论
  29 + AtWho []domain.UserSimple `gorm:"type:jsonb;serializer:json"` // 填写评论@的人
29 Content string // 评论内容 30 Content string // 评论内容
30 CountReply int // 回复数量 31 CountReply int // 回复数量
31 CountUserLove int // 用户点赞数量 32 CountUserLove int // 用户点赞数量
@@ -151,7 +151,7 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti @@ -151,7 +151,7 @@ func (repository *ArticleCommentRepository) ModelToDomainModel(from *models.Arti
151 Pid: from.Pid, 151 Pid: from.Pid,
152 TopId: from.TopId, 152 TopId: from.TopId,
153 ArticleId: from.ArticleId, 153 ArticleId: from.ArticleId,
154 - ArticleSectionId: from.ArticleSectionId, 154 + SectionId: from.SectionId,
155 SectionContent: from.SectionContent, 155 SectionContent: from.SectionContent,
156 FromUserId: from.FromUserId, 156 FromUserId: from.FromUserId,
157 FromUser: from.FromUser, 157 FromUser: from.FromUser,
@@ -178,7 +178,7 @@ func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.Arti @@ -178,7 +178,7 @@ func (repository *ArticleCommentRepository) DomainModelToModel(from *domain.Arti
178 Pid: from.Pid, 178 Pid: from.Pid,
179 TopId: from.TopId, 179 TopId: from.TopId,
180 ArticleId: from.ArticleId, 180 ArticleId: from.ArticleId,
181 - ArticleSectionId: from.ArticleSectionId, 181 + SectionId: from.SectionId,
182 SectionContent: from.SectionContent, 182 SectionContent: from.SectionContent,
183 FromUserId: from.FromUserId, 183 FromUserId: from.FromUserId,
184 FromUser: from.FromUser, 184 FromUser: from.FromUser,
@@ -17,7 +17,7 @@ type ArticleComment struct { @@ -17,7 +17,7 @@ type ArticleComment struct {
17 Pid int64 `json:"pid"` // 对哪个评论进行回复 17 Pid int64 `json:"pid"` // 对哪个评论进行回复
18 TopId int64 `json:"topId"` // 归属于最上级的哪个评论 18 TopId int64 `json:"topId"` // 归属于最上级的哪个评论
19 ArticleId int64 `json:"articleId"` // 文章id 19 ArticleId int64 `json:"articleId"` // 文章id
20 - ArticleSectionId int64 `json:"articleSectionId"` // 文本内容id 20 + SectionId int64 `json:"sectionId"` // 文本段落内容id
21 SectionContent string `json:"sectionContent"` // 引用的文章内容文本 21 SectionContent string `json:"sectionContent"` // 引用的文章内容文本
22 FromUserId int64 `json:"fromUserId"` // 谁填写的评论 22 FromUserId int64 `json:"fromUserId"` // 谁填写的评论
23 FromUser UserSimple `json:"fromUser"` // 谁填写的评论 23 FromUser UserSimple `json:"fromUser"` // 谁填写的评论
@@ -28,6 +28,7 @@ type ArticleComment struct { @@ -28,6 +28,7 @@ type ArticleComment struct {
28 CountUserLove int `json:"countUserLove"` // 用户点赞数量 28 CountUserLove int `json:"countUserLove"` // 用户点赞数量
29 CountAdminLove int `json:"countAdminLove"` // 运营点赞数量 29 CountAdminLove int `json:"countAdminLove"` // 运营点赞数量
30 Show CommentShow `json:"showState"` // 评论的展示状态(0显示、1不显示) 30 Show CommentShow `json:"showState"` // 评论的展示状态(0显示、1不显示)
  31 + AtWho []UserSimple `json:"atWho"` // 填写评论时@的人
31 // ...more 32 // ...more
32 } 33 }
33 34
@@ -32,8 +32,7 @@ type UserSimple struct { @@ -32,8 +32,7 @@ type UserSimple struct {
32 Id int64 `json:"id"` // 人员id 32 Id int64 `json:"id"` // 人员id
33 Name string `json:"name"` // 人员的名字 33 Name string `json:"name"` // 人员的名字
34 Avatar string `json:"avatar,omitempty"` // 人员头像URL 34 Avatar string `json:"avatar,omitempty"` // 人员头像URL
35 - GroupId int64 `json:"groupId,omitempty"`  
36 - Group string `json:"group,omitempty"` // 人员的分组 35 + Group []string `json:"group,omitempty"` // 人员的分组
37 Position string `json:"position,omitempty"` // 职位 36 Position string `json:"position,omitempty"` // 职位
38 Company string `json:"company,omitempty"` // 公司 37 Company string `json:"company,omitempty"` // 公司
39 CompanyId int64 `json:"companyId"` 38 CompanyId int64 `json:"companyId"`