正在显示
18 个修改的文件
包含
212 行增加
和
158 行删除
| @@ -19,13 +19,14 @@ type ArticleAuthor { | @@ -19,13 +19,14 @@ type ArticleAuthor { | ||
| 19 | //小程序端创建发布文章 | 19 | //小程序端创建发布文章 |
| 20 | type ( | 20 | type ( |
| 21 | MiniArticleCreateRequest { | 21 | MiniArticleCreateRequest { |
| 22 | - Title string `json:"title"` //标题 | ||
| 23 | - Section []string `json:"section"` //文章的文本内容 | ||
| 24 | - AuthorId int64 `json:"authorId,optional"` //发布人id | ||
| 25 | - Images []string `json:"images,optional"` //图片 | ||
| 26 | - WhoRead []int64 `json:"whoRead,optional"` //谁可查看 | ||
| 27 | - WhoReview []int64 `json:"whoReview,optional"` //谁可评论 | ||
| 28 | - Location Location `json:"location,optional"` //定位坐标 | 22 | + Title string `json:"title"` //标题 |
| 23 | + Section []string `json:"section"` //文章的文本内容 | ||
| 24 | + AuthorId int64 `json:"authorId,optional"` //发布人id | ||
| 25 | + Images []string `json:"images,optional"` //图片 | ||
| 26 | + WhoRead []int64 `json:"whoRead,optional"` //谁可查看 | ||
| 27 | + WhoReview []int64 `json:"whoReview,optional"` //谁可评论 | ||
| 28 | + Location Location `json:"location,optional"` //定位坐标 | ||
| 29 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 29 | } | 30 | } |
| 30 | MiniArticleCreateResponse { | 31 | MiniArticleCreateResponse { |
| 31 | Id int64 `json:"id"` | 32 | Id int64 `json:"id"` |
| @@ -40,24 +41,25 @@ type ( | @@ -40,24 +41,25 @@ type ( | ||
| 40 | UserId int `path:",optional"` //当前用户 | 41 | UserId int `path:",optional"` //当前用户 |
| 41 | } | 42 | } |
| 42 | MiniArticleGetResponse { | 43 | MiniArticleGetResponse { |
| 43 | - Id int64 `json:"id"` //id | ||
| 44 | - Title string `json:"title"` //标题 | ||
| 45 | - AuthorId int64 `json:"authorId"` //发布人id | ||
| 46 | - Author ArticleAuthor `json:"author"` //发布人 | ||
| 47 | - CreatedAt int64 `json:"createdAt"` //文章的发布时间 | ||
| 48 | - Section []ArticleSection `json:"section"` //文章的文本内容 | ||
| 49 | - Images []string `json:"images"` //图片 | ||
| 50 | - WhoRead []int64 `json:"whoRead"` //谁可查看 | ||
| 51 | - WhoReview []int64 `json:"whoReview"` //谁可评论 | ||
| 52 | - Location Location `json:"location"` //定位坐标 | ||
| 53 | - CountLove int `json:"countLove"` // 点赞数量 | ||
| 54 | - CountComment int `json:"countComment"` // 评论数量 | ||
| 55 | - CountRead int `json:"countRead"` // 浏览数量 | ||
| 56 | - Show int `json:"show"` // 评论的展示状态(1显示、2不显示) | ||
| 57 | - Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) | ||
| 58 | - MeLoveFlag int `json:"meLoveFlag"` // 当前人员对文章的点赞标识 (0 没有点赞 1有点赞) | ||
| 59 | - MeFollowFlag int `json:"meFollowFlag"` // 当前人员对作者的关注标识 (0 没有关注 1有关注) | ||
| 60 | - Tags []string `json:"tags"` // 文章的标签 | 44 | + Id int64 `json:"id"` //id |
| 45 | + Title string `json:"title"` //标题 | ||
| 46 | + AuthorId int64 `json:"authorId"` //发布人id | ||
| 47 | + Author ArticleAuthor `json:"author"` //发布人 | ||
| 48 | + CreatedAt int64 `json:"createdAt"` //文章的发布时间 | ||
| 49 | + Section []ArticleSection `json:"section"` //文章的文本内容 | ||
| 50 | + Images []string `json:"images"` //图片 | ||
| 51 | + WhoRead []int64 `json:"whoRead"` //谁可查看 | ||
| 52 | + WhoReview []int64 `json:"whoReview"` //谁可评论 | ||
| 53 | + Location Location `json:"location"` //定位坐标 | ||
| 54 | + CountLove int `json:"countLove"` // 点赞数量 | ||
| 55 | + CountComment int `json:"countComment"` // 评论数量 | ||
| 56 | + CountRead int `json:"countRead"` // 浏览数量 | ||
| 57 | + Show int `json:"show"` // 评论的展示状态(1显示、2不显示) | ||
| 58 | + Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) | ||
| 59 | + MeLoveFlag int `json:"meLoveFlag"` // 当前人员对文章的点赞标识 (0 没有点赞 1有点赞) | ||
| 60 | + MeFollowFlag int `json:"meFollowFlag"` // 当前人员对作者的关注标识 (0 没有关注 1有关注) | ||
| 61 | + Tags []string `json:"tags"` // 文章的标签 | ||
| 62 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 61 | } | 63 | } |
| 62 | ArticleSection { | 64 | ArticleSection { |
| 63 | Id int64 `json:"id"` //段落id | 65 | Id int64 `json:"id"` //段落id |
| @@ -189,6 +191,7 @@ type ( | @@ -189,6 +191,7 @@ type ( | ||
| 189 | WhoRead []int64 `json:"whoRead"` // 谁可以看 | 191 | WhoRead []int64 `json:"whoRead"` // 谁可以看 |
| 190 | WhoReview []int64 `json:"whoReview"` // 评论人 | 192 | WhoReview []int64 `json:"whoReview"` // 评论人 |
| 191 | Location Location `json:"location"` // 坐标 | 193 | Location Location `json:"location"` // 坐标 |
| 194 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 192 | } | 195 | } |
| 193 | 196 | ||
| 194 | MiniArticleDraftCreateResponse { | 197 | MiniArticleDraftCreateResponse { |
| @@ -209,6 +212,7 @@ type ( | @@ -209,6 +212,7 @@ type ( | ||
| 209 | WhoRead []int64 `json:"whoRead"` // 谁可以看 | 212 | WhoRead []int64 `json:"whoRead"` // 谁可以看 |
| 210 | WhoReview []int64 `json:"whoReview"` // 评论人 | 213 | WhoReview []int64 `json:"whoReview"` // 评论人 |
| 211 | Location Location `json:"location"` // 坐标 | 214 | Location Location `json:"location"` // 坐标 |
| 215 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 212 | } | 216 | } |
| 213 | 217 | ||
| 214 | MiniArticleDraftUpdateResponse { | 218 | MiniArticleDraftUpdateResponse { |
| @@ -230,12 +234,13 @@ type ( | @@ -230,12 +234,13 @@ type ( | ||
| 230 | List []MiniArticleDraftItem `json:"list"` | 234 | List []MiniArticleDraftItem `json:"list"` |
| 231 | } | 235 | } |
| 232 | MiniArticleDraftItem { | 236 | MiniArticleDraftItem { |
| 233 | - Id int64 `json:"id"` | ||
| 234 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 235 | - Section []string `json:"section"` // 填写的内容 | ||
| 236 | - Title string `json:"title"` // 标题 | ||
| 237 | - Images []string `json:"images"` // 图片 | ||
| 238 | - CreatedAt int64 `json:"createdAt"` | 237 | + Id int64 `json:"id"` |
| 238 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 239 | + Section []string `json:"section"` // 填写的内容 | ||
| 240 | + Title string `json:"title"` // 标题 | ||
| 241 | + Images []string `json:"images"` // 图片 | ||
| 242 | + CreatedAt int64 `json:"createdAt"`// | ||
| 243 | + MatchUrl map[string]string `json:"matchUrl"` //匹配内容中的url文本 | ||
| 239 | } | 244 | } |
| 240 | ) | 245 | ) |
| 241 | 246 | ||
| @@ -248,14 +253,15 @@ type ( | @@ -248,14 +253,15 @@ type ( | ||
| 248 | } | 253 | } |
| 249 | 254 | ||
| 250 | MiniArticleDraftGetMeResponse { | 255 | MiniArticleDraftGetMeResponse { |
| 251 | - Id int64 `json:"id"` // | ||
| 252 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 253 | - Section []string `json:"section"` // 填写的内容 | ||
| 254 | - Title string `json:"title"` // 标题 | ||
| 255 | - Images []string `json:"images"` // 图片 | ||
| 256 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 257 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 258 | - Location Location `json:"location"` // 坐标 | 256 | + Id int64 `json:"id"` // |
| 257 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 258 | + Section []string `json:"section"` // 填写的内容 | ||
| 259 | + Title string `json:"title"` // 标题 | ||
| 260 | + Images []string `json:"images"` // 图片 | ||
| 261 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 262 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 263 | + Location Location `json:"location"` // 坐标 | ||
| 264 | + MatchUrl map[string]string `json:"matchUrl"` // | ||
| 259 | } | 265 | } |
| 260 | ) | 266 | ) |
| 261 | 267 |
| @@ -53,6 +53,7 @@ func (l *MiniCreateArticleDraftLogic) MiniCreateArticleDraft(req *types.MiniArti | @@ -53,6 +53,7 @@ func (l *MiniCreateArticleDraftLogic) MiniCreateArticleDraft(req *types.MiniArti | ||
| 53 | Latitude: req.Location.Latitude, | 53 | Latitude: req.Location.Latitude, |
| 54 | Descript: req.Location.Descript, | 54 | Descript: req.Location.Descript, |
| 55 | }, | 55 | }, |
| 56 | + MatchUrl: map[string]string{}, | ||
| 56 | } | 57 | } |
| 57 | for _, val := range req.Images { | 58 | for _, val := range req.Images { |
| 58 | newDraft.Images = append(newDraft.Images, domain.Image{ | 59 | newDraft.Images = append(newDraft.Images, domain.Image{ |
| @@ -60,6 +61,10 @@ func (l *MiniCreateArticleDraftLogic) MiniCreateArticleDraft(req *types.MiniArti | @@ -60,6 +61,10 @@ func (l *MiniCreateArticleDraftLogic) MiniCreateArticleDraft(req *types.MiniArti | ||
| 60 | }) | 61 | }) |
| 61 | } | 62 | } |
| 62 | 63 | ||
| 64 | + for k, v := range req.MatchUrl { | ||
| 65 | + newDraft.MatchUrl[k] = v | ||
| 66 | + } | ||
| 67 | + | ||
| 63 | _, err = l.svcCtx.ArticleDraftRepository.Insert(l.ctx, conn, &newDraft) | 68 | _, err = l.svcCtx.ArticleDraftRepository.Insert(l.ctx, conn, &newDraft) |
| 64 | if err != nil { | 69 | if err != nil { |
| 65 | return nil, xerr.NewErrMsgErr("保存草稿失败", err) | 70 | return nil, xerr.NewErrMsgErr("保存草稿失败", err) |
| @@ -164,10 +164,14 @@ func (l *MiniCreateArticleLogic) MiniCreateArticle(req *types.MiniArticleCreateR | @@ -164,10 +164,14 @@ func (l *MiniCreateArticleLogic) MiniCreateArticle(req *types.MiniArticleCreateR | ||
| 164 | CountRead: 0, | 164 | CountRead: 0, |
| 165 | Show: domain.ArticleShowEnable, | 165 | Show: domain.ArticleShowEnable, |
| 166 | Tags: []int64{}, | 166 | Tags: []int64{}, |
| 167 | + MatchUrl: map[string]string{}, | ||
| 167 | } | 168 | } |
| 168 | if len(whoRead) > 0 { | 169 | if len(whoRead) > 0 { |
| 169 | newArticle.TargetUser = domain.ArticleTargetLimit | 170 | newArticle.TargetUser = domain.ArticleTargetLimit |
| 170 | } | 171 | } |
| 172 | + for k, v := range req.MatchUrl { | ||
| 173 | + newArticle.MatchUrl[k] = v | ||
| 174 | + } | ||
| 171 | //设置内容概要 | 175 | //设置内容概要 |
| 172 | if len(sectionList) > 0 { | 176 | if len(sectionList) > 0 { |
| 173 | // 截取内容 50个字 | 177 | // 截取内容 50个字 |
| @@ -50,6 +50,10 @@ func (l *MiniGetArticleDraftMeLogic) MiniGetArticleDraftMe(req *types.MiniArticl | @@ -50,6 +50,10 @@ func (l *MiniGetArticleDraftMeLogic) MiniGetArticleDraftMe(req *types.MiniArticl | ||
| 50 | Latitude: draftInfo.Location.Latitude, | 50 | Latitude: draftInfo.Location.Latitude, |
| 51 | Descript: draftInfo.Location.Descript, | 51 | Descript: draftInfo.Location.Descript, |
| 52 | }, | 52 | }, |
| 53 | + MatchUrl: map[string]string{}, | ||
| 54 | + } | ||
| 55 | + for k, v := range draftInfo.MatchUrl { | ||
| 56 | + resp.MatchUrl[k] = v | ||
| 53 | } | 57 | } |
| 54 | for _, val := range draftInfo.Images { | 58 | for _, val := range draftInfo.Images { |
| 55 | resp.Images = append(resp.Images, val.Url) | 59 | resp.Images = append(resp.Images, val.Url) |
| @@ -122,10 +122,15 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( | @@ -122,10 +122,15 @@ func (l *MiniGetArticleLogic) MiniGetArticle(req *types.MiniArticleGetRequest) ( | ||
| 122 | MeLoveFlag: meLoveFlag, | 122 | MeLoveFlag: meLoveFlag, |
| 123 | MeFollowFlag: 0, | 123 | MeFollowFlag: 0, |
| 124 | Tags: tags, | 124 | Tags: tags, |
| 125 | + MatchUrl: map[string]string{}, | ||
| 125 | } | 126 | } |
| 126 | if articleInfo.CreatedAt != articleInfo.UpdatedAt { | 127 | if articleInfo.CreatedAt != articleInfo.UpdatedAt { |
| 127 | resp.Edit = 1 | 128 | resp.Edit = 1 |
| 128 | } | 129 | } |
| 130 | + | ||
| 131 | + for k, v := range articleInfo.MatchUrl { | ||
| 132 | + resp.MatchUrl[k] = v | ||
| 133 | + } | ||
| 129 | for _, val := range articleInfo.Images { | 134 | for _, val := range articleInfo.Images { |
| 130 | resp.Images = append(resp.Images, val.Url) | 135 | resp.Images = append(resp.Images, val.Url) |
| 131 | } | 136 | } |
| @@ -54,6 +54,7 @@ func (l *MiniSearchArticleDraftMeLogic) MiniSearchArticleDraftMe(req *types.Mini | @@ -54,6 +54,7 @@ func (l *MiniSearchArticleDraftMeLogic) MiniSearchArticleDraftMe(req *types.Mini | ||
| 54 | Title: draftList[i].Title, | 54 | Title: draftList[i].Title, |
| 55 | Images: images, | 55 | Images: images, |
| 56 | CreatedAt: draftList[i].CreatedAt, | 56 | CreatedAt: draftList[i].CreatedAt, |
| 57 | + MatchUrl: draftList[i].MatchUrl, | ||
| 57 | } | 58 | } |
| 58 | } | 59 | } |
| 59 | return resp, nil | 60 | return resp, nil |
| @@ -58,6 +58,10 @@ func (l *MiniUpdateArticleDraftLogic) MiniUpdateArticleDraft(req *types.MiniArti | @@ -58,6 +58,10 @@ func (l *MiniUpdateArticleDraftLogic) MiniUpdateArticleDraft(req *types.MiniArti | ||
| 58 | Url: val, | 58 | Url: val, |
| 59 | }) | 59 | }) |
| 60 | } | 60 | } |
| 61 | + draftInfo.MatchUrl = make(map[string]string) | ||
| 62 | + for k, v := range req.MatchUrl { | ||
| 63 | + draftInfo.MatchUrl[k] = v | ||
| 64 | + } | ||
| 61 | _, err = l.svcCtx.ArticleDraftRepository.Update(l.ctx, conn, draftInfo) | 65 | _, err = l.svcCtx.ArticleDraftRepository.Update(l.ctx, conn, draftInfo) |
| 62 | if err != nil { | 66 | if err != nil { |
| 63 | return nil, xerr.NewErrMsgErr("更新草稿失败", err) | 67 | return nil, xerr.NewErrMsgErr("更新草稿失败", err) |
| @@ -2,6 +2,7 @@ package article | @@ -2,6 +2,7 @@ package article | ||
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "context" | 4 | "context" |
| 5 | + | ||
| 5 | "github.com/samber/lo" | 6 | "github.com/samber/lo" |
| 6 | "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/db/transaction" | 7 | "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/db/transaction" |
| 7 | "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/domain" | 8 | "gitlab.fjmaimaimai.com/allied-creation/sumifcc-discuss/cmd/discuss/interanl/pkg/domain" |
| @@ -42,6 +43,7 @@ func (l *SystemArticleRestoreLogic) SystemArticleRestore(req *types.SystemArticl | @@ -42,6 +43,7 @@ func (l *SystemArticleRestoreLogic) SystemArticleRestore(req *types.SystemArticl | ||
| 42 | article.Version = article.Version + 1 | 43 | article.Version = article.Version + 1 |
| 43 | article.Images = backup.Images | 44 | article.Images = backup.Images |
| 44 | article.Title = backup.Title | 45 | article.Title = backup.Title |
| 46 | + article.MatchUrl = backup.MatchUrl | ||
| 45 | articleSections := make([]domain.ArticleSection, 0) | 47 | articleSections := make([]domain.ArticleSection, 0) |
| 46 | lo.ForEach(backup.Section, func(item domain.ArticleSection, index int) { | 48 | lo.ForEach(backup.Section, func(item domain.ArticleSection, index int) { |
| 47 | articleSections = append(articleSections, domain.ArticleSection{ | 49 | articleSections = append(articleSections, domain.ArticleSection{ |
| @@ -797,13 +797,14 @@ type ArticleAuthor struct { | @@ -797,13 +797,14 @@ type ArticleAuthor struct { | ||
| 797 | } | 797 | } |
| 798 | 798 | ||
| 799 | type MiniArticleCreateRequest struct { | 799 | type MiniArticleCreateRequest struct { |
| 800 | - Title string `json:"title"` //标题 | ||
| 801 | - Section []string `json:"section"` //文章的文本内容 | ||
| 802 | - AuthorId int64 `json:"authorId,optional"` //发布人id | ||
| 803 | - Images []string `json:"images,optional"` //图片 | ||
| 804 | - WhoRead []int64 `json:"whoRead,optional"` //谁可查看 | ||
| 805 | - WhoReview []int64 `json:"whoReview,optional"` //谁可评论 | ||
| 806 | - Location Location `json:"location,optional"` //定位坐标 | 800 | + Title string `json:"title"` //标题 |
| 801 | + Section []string `json:"section"` //文章的文本内容 | ||
| 802 | + AuthorId int64 `json:"authorId,optional"` //发布人id | ||
| 803 | + Images []string `json:"images,optional"` //图片 | ||
| 804 | + WhoRead []int64 `json:"whoRead,optional"` //谁可查看 | ||
| 805 | + WhoReview []int64 `json:"whoReview,optional"` //谁可评论 | ||
| 806 | + Location Location `json:"location,optional"` //定位坐标 | ||
| 807 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 807 | } | 808 | } |
| 808 | 809 | ||
| 809 | type MiniArticleCreateResponse struct { | 810 | type MiniArticleCreateResponse struct { |
| @@ -817,24 +818,25 @@ type MiniArticleGetRequest struct { | @@ -817,24 +818,25 @@ type MiniArticleGetRequest struct { | ||
| 817 | } | 818 | } |
| 818 | 819 | ||
| 819 | type MiniArticleGetResponse struct { | 820 | type MiniArticleGetResponse struct { |
| 820 | - Id int64 `json:"id"` //id | ||
| 821 | - Title string `json:"title"` //标题 | ||
| 822 | - AuthorId int64 `json:"authorId"` //发布人id | ||
| 823 | - Author ArticleAuthor `json:"author"` //发布人 | ||
| 824 | - CreatedAt int64 `json:"createdAt"` //文章的发布时间 | ||
| 825 | - Section []ArticleSection `json:"section"` //文章的文本内容 | ||
| 826 | - Images []string `json:"images"` //图片 | ||
| 827 | - WhoRead []int64 `json:"whoRead"` //谁可查看 | ||
| 828 | - WhoReview []int64 `json:"whoReview"` //谁可评论 | ||
| 829 | - Location Location `json:"location"` //定位坐标 | ||
| 830 | - CountLove int `json:"countLove"` // 点赞数量 | ||
| 831 | - CountComment int `json:"countComment"` // 评论数量 | ||
| 832 | - CountRead int `json:"countRead"` // 浏览数量 | ||
| 833 | - Show int `json:"show"` // 评论的展示状态(1显示、2不显示) | ||
| 834 | - Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) | ||
| 835 | - MeLoveFlag int `json:"meLoveFlag"` // 当前人员对文章的点赞标识 (0 没有点赞 1有点赞) | ||
| 836 | - MeFollowFlag int `json:"meFollowFlag"` // 当前人员对作者的关注标识 (0 没有关注 1有关注) | ||
| 837 | - Tags []string `json:"tags"` // 文章的标签 | 821 | + Id int64 `json:"id"` //id |
| 822 | + Title string `json:"title"` //标题 | ||
| 823 | + AuthorId int64 `json:"authorId"` //发布人id | ||
| 824 | + Author ArticleAuthor `json:"author"` //发布人 | ||
| 825 | + CreatedAt int64 `json:"createdAt"` //文章的发布时间 | ||
| 826 | + Section []ArticleSection `json:"section"` //文章的文本内容 | ||
| 827 | + Images []string `json:"images"` //图片 | ||
| 828 | + WhoRead []int64 `json:"whoRead"` //谁可查看 | ||
| 829 | + WhoReview []int64 `json:"whoReview"` //谁可评论 | ||
| 830 | + Location Location `json:"location"` //定位坐标 | ||
| 831 | + CountLove int `json:"countLove"` // 点赞数量 | ||
| 832 | + CountComment int `json:"countComment"` // 评论数量 | ||
| 833 | + CountRead int `json:"countRead"` // 浏览数量 | ||
| 834 | + Show int `json:"show"` // 评论的展示状态(1显示、2不显示) | ||
| 835 | + Edit int `json:"edit"` // 文章是否存在变更记录 (0 不存在 1存在) | ||
| 836 | + MeLoveFlag int `json:"meLoveFlag"` // 当前人员对文章的点赞标识 (0 没有点赞 1有点赞) | ||
| 837 | + MeFollowFlag int `json:"meFollowFlag"` // 当前人员对作者的关注标识 (0 没有关注 1有关注) | ||
| 838 | + Tags []string `json:"tags"` // 文章的标签 | ||
| 839 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 838 | } | 840 | } |
| 839 | 841 | ||
| 840 | type ArticleSection struct { | 842 | type ArticleSection struct { |
| @@ -946,15 +948,16 @@ type MiniArticleMarkUserReadResponse struct { | @@ -946,15 +948,16 @@ type MiniArticleMarkUserReadResponse struct { | ||
| 946 | } | 948 | } |
| 947 | 949 | ||
| 948 | type MiniArticleDraftCreateRequest struct { | 950 | type MiniArticleDraftCreateRequest struct { |
| 949 | - CompanyId int64 `json:",optional"` | ||
| 950 | - AuthorId int64 `json:",optional"` // 发布人 | ||
| 951 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 952 | - Section []string `json:"section"` // 填写的内容 | ||
| 953 | - Title string `json:"title"` // 标题 | ||
| 954 | - Images []string `json:"images"` // 图片 | ||
| 955 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 956 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 957 | - Location Location `json:"location"` // 坐标 | 951 | + CompanyId int64 `json:",optional"` |
| 952 | + AuthorId int64 `json:",optional"` // 发布人 | ||
| 953 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 954 | + Section []string `json:"section"` // 填写的内容 | ||
| 955 | + Title string `json:"title"` // 标题 | ||
| 956 | + Images []string `json:"images"` // 图片 | ||
| 957 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 958 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 959 | + Location Location `json:"location"` // 坐标 | ||
| 960 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 958 | } | 961 | } |
| 959 | 962 | ||
| 960 | type MiniArticleDraftCreateResponse struct { | 963 | type MiniArticleDraftCreateResponse struct { |
| @@ -962,16 +965,17 @@ type MiniArticleDraftCreateResponse struct { | @@ -962,16 +965,17 @@ type MiniArticleDraftCreateResponse struct { | ||
| 962 | } | 965 | } |
| 963 | 966 | ||
| 964 | type MiniArticleDraftUpdateRequest struct { | 967 | type MiniArticleDraftUpdateRequest struct { |
| 965 | - Id int64 `json:"id"` | ||
| 966 | - CompanyId int64 `json:",optional"` | ||
| 967 | - AuthorId int64 `json:",optional"` // 发布人 | ||
| 968 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 969 | - Section []string `json:"section"` // 填写的内容 | ||
| 970 | - Title string `json:"title"` // 标题 | ||
| 971 | - Images []string `json:"images"` // 图片 | ||
| 972 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 973 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 974 | - Location Location `json:"location"` // 坐标 | 968 | + Id int64 `json:"id"` |
| 969 | + CompanyId int64 `json:",optional"` | ||
| 970 | + AuthorId int64 `json:",optional"` // 发布人 | ||
| 971 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 972 | + Section []string `json:"section"` // 填写的内容 | ||
| 973 | + Title string `json:"title"` // 标题 | ||
| 974 | + Images []string `json:"images"` // 图片 | ||
| 975 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 976 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 977 | + Location Location `json:"location"` // 坐标 | ||
| 978 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 975 | } | 979 | } |
| 976 | 980 | ||
| 977 | type MiniArticleDraftUpdateResponse struct { | 981 | type MiniArticleDraftUpdateResponse struct { |
| @@ -991,12 +995,13 @@ type MiniArticleDraftSearchMeResponse struct { | @@ -991,12 +995,13 @@ type MiniArticleDraftSearchMeResponse struct { | ||
| 991 | } | 995 | } |
| 992 | 996 | ||
| 993 | type MiniArticleDraftItem struct { | 997 | type MiniArticleDraftItem struct { |
| 994 | - Id int64 `json:"id"` | ||
| 995 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 996 | - Section []string `json:"section"` // 填写的内容 | ||
| 997 | - Title string `json:"title"` // 标题 | ||
| 998 | - Images []string `json:"images"` // 图片 | ||
| 999 | - CreatedAt int64 `json:"createdAt"` | 998 | + Id int64 `json:"id"` |
| 999 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 1000 | + Section []string `json:"section"` // 填写的内容 | ||
| 1001 | + Title string `json:"title"` // 标题 | ||
| 1002 | + Images []string `json:"images"` // 图片 | ||
| 1003 | + CreatedAt int64 `json:"createdAt"` // | ||
| 1004 | + MatchUrl map[string]string `json:"matchUrl"` //匹配内容中的url文本 | ||
| 1000 | } | 1005 | } |
| 1001 | 1006 | ||
| 1002 | type MiniArticleDraftGetMeRequest struct { | 1007 | type MiniArticleDraftGetMeRequest struct { |
| @@ -1006,14 +1011,15 @@ type MiniArticleDraftGetMeRequest struct { | @@ -1006,14 +1011,15 @@ type MiniArticleDraftGetMeRequest struct { | ||
| 1006 | } | 1011 | } |
| 1007 | 1012 | ||
| 1008 | type MiniArticleDraftGetMeResponse struct { | 1013 | type MiniArticleDraftGetMeResponse struct { |
| 1009 | - Id int64 `json:"id"` // | ||
| 1010 | - Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 1011 | - Section []string `json:"section"` // 填写的内容 | ||
| 1012 | - Title string `json:"title"` // 标题 | ||
| 1013 | - Images []string `json:"images"` // 图片 | ||
| 1014 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 1015 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 1016 | - Location Location `json:"location"` // 坐标 | 1014 | + Id int64 `json:"id"` // |
| 1015 | + Template int `json:"template"` // 使用哪个模板进行编辑 0、无 1、演绎式 2、归纳式 | ||
| 1016 | + Section []string `json:"section"` // 填写的内容 | ||
| 1017 | + Title string `json:"title"` // 标题 | ||
| 1018 | + Images []string `json:"images"` // 图片 | ||
| 1019 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 1020 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 1021 | + Location Location `json:"location"` // 坐标 | ||
| 1022 | + MatchUrl map[string]string `json:"matchUrl"` // | ||
| 1017 | } | 1023 | } |
| 1018 | 1024 | ||
| 1019 | type MiniArticleDraftDeleteMeRequest struct { | 1025 | type MiniArticleDraftDeleteMeRequest struct { |
| @@ -31,6 +31,7 @@ type Article struct { | @@ -31,6 +31,7 @@ type Article struct { | ||
| 31 | Tags []int64 `gorm:"type:jsonb;serializer:json"` //定性标签 | 31 | Tags []int64 `gorm:"type:jsonb;serializer:json"` //定性标签 |
| 32 | Show int // 评论的展示状态(0显示、1不显示) | 32 | Show int // 评论的展示状态(0显示、1不显示) |
| 33 | Summary string // 内容概要 | 33 | Summary string // 内容概要 |
| 34 | + MatchUrl map[string]string `gorm:"type:jsonb;serializer:json"` // 匹配文章内容中的url文本 | ||
| 34 | } | 35 | } |
| 35 | 36 | ||
| 36 | func (m *Article) TableName() string { | 37 | func (m *Article) TableName() string { |
| @@ -28,6 +28,7 @@ type ArticleBackup struct { | @@ -28,6 +28,7 @@ type ArticleBackup struct { | ||
| 28 | Tags []int64 `gorm:"type:jsonb;serializer:json"` // 标签 | 28 | Tags []int64 `gorm:"type:jsonb;serializer:json"` // 标签 |
| 29 | Location domain.Location `gorm:"type:jsonb;serializer:json"` // 坐标 | 29 | Location domain.Location `gorm:"type:jsonb;serializer:json"` // 坐标 |
| 30 | TargetUser int // 分发方式 0 分发给所有人 1 分发给指定的人 | 30 | TargetUser int // 分发方式 0 分发给所有人 1 分发给指定的人 |
| 31 | + MatchUrl map[string]string `gorm:"type:jsonb;serializer:json"` // 匹配文章内容中的url文本 | ||
| 31 | } | 32 | } |
| 32 | 33 | ||
| 33 | func (m *ArticleBackup) TableName() string { | 34 | func (m *ArticleBackup) TableName() string { |
| @@ -17,14 +17,15 @@ type ArticleDraft struct { | @@ -17,14 +17,15 @@ type ArticleDraft struct { | ||
| 17 | IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"` | 17 | IsDel soft_delete.DeletedAt `gorm:"softDelete:flag,DeletedAtField:DeletedAt"` |
| 18 | DeletedAt int64 | 18 | DeletedAt int64 |
| 19 | Version int | 19 | Version int |
| 20 | - Template int // 填写内容时用的样板0、无 1、演绎式 2、归纳式 | ||
| 21 | - Content []string `gorm:"type:jsonb;serializer:json"` // 文章内容 | ||
| 22 | - AuthorId int64 // 发布人 | ||
| 23 | - Title string // 文章标题 | ||
| 24 | - Images []domain.Image `gorm:"type:jsonb;serializer:json"` // 图片 | ||
| 25 | - WhoRead []int64 `gorm:"type:jsonb;serializer:json"` // 谁可以看 | ||
| 26 | - WhoReview []int64 `gorm:"type:jsonb;serializer:json"` // 评论人 | ||
| 27 | - Location domain.Location `gorm:"type:jsonb;serializer:json"` // 坐标 | 20 | + Template int // 填写内容时用的样板0、无 1、演绎式 2、归纳式 |
| 21 | + Content []string `gorm:"type:jsonb;serializer:json"` // 文章内容 | ||
| 22 | + AuthorId int64 // 发布人 | ||
| 23 | + Title string // 文章标题 | ||
| 24 | + Images []domain.Image `gorm:"type:jsonb;serializer:json"` // 图片 | ||
| 25 | + WhoRead []int64 `gorm:"type:jsonb;serializer:json"` // 谁可以看 | ||
| 26 | + WhoReview []int64 `gorm:"type:jsonb;serializer:json"` // 评论人 | ||
| 27 | + Location domain.Location `gorm:"type:jsonb;serializer:json"` // 坐标 | ||
| 28 | + MatchUrl map[string]string `gorm:"type:jsonb;serializer:json"` // 匹配文章内容中的url文本 | ||
| 28 | } | 29 | } |
| 29 | 30 | ||
| 30 | func (m *ArticleDraft) TableName() string { | 31 | func (m *ArticleDraft) TableName() string { |
| @@ -171,6 +171,7 @@ func (repository *ArticleBackupRepository) ModelToDomainModel(from *models.Artic | @@ -171,6 +171,7 @@ func (repository *ArticleBackupRepository) ModelToDomainModel(from *models.Artic | ||
| 171 | WhoRead: from.WhoRead, | 171 | WhoRead: from.WhoRead, |
| 172 | WhoReview: from.WhoReview, | 172 | WhoReview: from.WhoReview, |
| 173 | Tags: from.Tags, | 173 | Tags: from.Tags, |
| 174 | + MatchUrl: from.MatchUrl, | ||
| 174 | } | 175 | } |
| 175 | // err := copier.Copy(to, from) | 176 | // err := copier.Copy(to, from) |
| 176 | return to, nil | 177 | return to, nil |
| @@ -193,9 +194,10 @@ func (repository *ArticleBackupRepository) DomainModelToModel(from *domain.Artic | @@ -193,9 +194,10 @@ func (repository *ArticleBackupRepository) DomainModelToModel(from *domain.Artic | ||
| 193 | Action: from.Action, | 194 | Action: from.Action, |
| 194 | WhoRead: from.WhoRead, | 195 | WhoRead: from.WhoRead, |
| 195 | WhoReview: from.WhoReview, | 196 | WhoReview: from.WhoReview, |
| 196 | - Location: from.Location, | ||
| 197 | Tags: from.Tags, | 197 | Tags: from.Tags, |
| 198 | + Location: from.Location, | ||
| 198 | TargetUser: int(from.TargetUser), | 199 | TargetUser: int(from.TargetUser), |
| 200 | + MatchUrl: from.MatchUrl, | ||
| 199 | } | 201 | } |
| 200 | // err := copier.Copy(to, from) | 202 | // err := copier.Copy(to, from) |
| 201 | return to, nil | 203 | return to, nil |
| @@ -156,6 +156,7 @@ func (repository *ArticleDraftRepository) ModelToDomainModel(from *models.Articl | @@ -156,6 +156,7 @@ func (repository *ArticleDraftRepository) ModelToDomainModel(from *models.Articl | ||
| 156 | WhoRead: from.WhoRead, | 156 | WhoRead: from.WhoRead, |
| 157 | WhoReview: from.WhoReview, | 157 | WhoReview: from.WhoReview, |
| 158 | Location: from.Location, | 158 | Location: from.Location, |
| 159 | + MatchUrl: from.MatchUrl, | ||
| 159 | } | 160 | } |
| 160 | // err := copier.Copy(to, from) | 161 | // err := copier.Copy(to, from) |
| 161 | return to, nil | 162 | return to, nil |
| @@ -177,6 +178,7 @@ func (repository *ArticleDraftRepository) DomainModelToModel(from *domain.Articl | @@ -177,6 +178,7 @@ func (repository *ArticleDraftRepository) DomainModelToModel(from *domain.Articl | ||
| 177 | WhoRead: from.WhoRead, | 178 | WhoRead: from.WhoRead, |
| 178 | WhoReview: from.WhoReview, | 179 | WhoReview: from.WhoReview, |
| 179 | Location: from.Location, | 180 | Location: from.Location, |
| 181 | + MatchUrl: from.MatchUrl, | ||
| 180 | } | 182 | } |
| 181 | // err := copier.Copy(to, from) | 183 | // err := copier.Copy(to, from) |
| 182 | return to, nil | 184 | return to, nil |
| @@ -304,6 +304,7 @@ func (repository *ArticleRepository) ModelToDomainModel(from *models.Article) (* | @@ -304,6 +304,7 @@ func (repository *ArticleRepository) ModelToDomainModel(from *models.Article) (* | ||
| 304 | Show: domain.ArticleShow(from.Show), | 304 | Show: domain.ArticleShow(from.Show), |
| 305 | Tags: from.Tags, | 305 | Tags: from.Tags, |
| 306 | Summary: from.Summary, | 306 | Summary: from.Summary, |
| 307 | + MatchUrl: from.MatchUrl, | ||
| 307 | } | 308 | } |
| 308 | return to, nil | 309 | return to, nil |
| 309 | } | 310 | } |
| @@ -328,9 +329,10 @@ func (repository *ArticleRepository) DomainModelToModel(from *domain.Article) (* | @@ -328,9 +329,10 @@ func (repository *ArticleRepository) DomainModelToModel(from *domain.Article) (* | ||
| 328 | CountLove: from.CountLove, | 329 | CountLove: from.CountLove, |
| 329 | CountRead: from.CountRead, | 330 | CountRead: from.CountRead, |
| 330 | CountComment: from.CountComment, | 331 | CountComment: from.CountComment, |
| 331 | - Show: int(from.Show), | ||
| 332 | Tags: from.Tags, | 332 | Tags: from.Tags, |
| 333 | + Show: int(from.Show), | ||
| 333 | Summary: from.Summary, | 334 | Summary: from.Summary, |
| 335 | + MatchUrl: from.MatchUrl, | ||
| 334 | } | 336 | } |
| 335 | // err := copier.Copy(to, from) | 337 | // err := copier.Copy(to, from) |
| 336 | return to, nil | 338 | return to, nil |
| @@ -8,26 +8,27 @@ import ( | @@ -8,26 +8,27 @@ import ( | ||
| 8 | 8 | ||
| 9 | // 文章 | 9 | // 文章 |
| 10 | type Article struct { | 10 | type Article struct { |
| 11 | - Id int64 `json:"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 | - AuthorId int64 `json:"authorId"` // 发布人 | ||
| 18 | - Author UserSimple `json:"author"` // 发布人 | ||
| 19 | - Title string `json:"title"` // 文章标题 | ||
| 20 | - Images []Image `json:"images"` // 图片 | ||
| 21 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 22 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 23 | - Location Location `json:"location"` // 坐标 | ||
| 24 | - TargetUser ArticleTarget `json:"targetUser"` // 分发方式 0 分发给所有人 1 分发给指定的人 | ||
| 25 | - CountLove int `json:"countLove"` // 点赞数量 | ||
| 26 | - CountComment int `json:"countComment"` // 评论数量 | ||
| 27 | - CountRead int `json:"countRead"` // 浏览数量 | ||
| 28 | - Show ArticleShow `json:"show"` // 评论的展示状态(1显示,2不显示、) | ||
| 29 | - Tags []int64 `json:"tags"` // 定性标签 | ||
| 30 | - Summary string `json:"summary"` // 内容概要 | 11 | + Id int64 `json:"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 | + AuthorId int64 `json:"authorId"` // 发布人 | ||
| 18 | + Author UserSimple `json:"author"` // 发布人 | ||
| 19 | + Title string `json:"title"` // 文章标题 | ||
| 20 | + Images []Image `json:"images"` // 图片 | ||
| 21 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 22 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 23 | + Location Location `json:"location"` // 坐标 | ||
| 24 | + TargetUser ArticleTarget `json:"targetUser"` // 分发方式 0 分发给所有人 1 分发给指定的人 | ||
| 25 | + CountLove int `json:"countLove"` // 点赞数量 | ||
| 26 | + CountComment int `json:"countComment"` // 评论数量 | ||
| 27 | + CountRead int `json:"countRead"` // 浏览数量 | ||
| 28 | + Show ArticleShow `json:"show"` // 评论的展示状态(1显示,2不显示、) | ||
| 29 | + Tags []int64 `json:"tags"` // 定性标签 | ||
| 30 | + Summary string `json:"summary"` // 内容概要 | ||
| 31 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 31 | // ...more | 32 | // ...more |
| 32 | } | 33 | } |
| 33 | 34 | ||
| @@ -110,6 +111,11 @@ func (m *Article) MakeBackup(operator UserSimple, section []ArticleSection) *Art | @@ -110,6 +111,11 @@ func (m *Article) MakeBackup(operator UserSimple, section []ArticleSection) *Art | ||
| 110 | WhoRead: m.WhoRead, | 111 | WhoRead: m.WhoRead, |
| 111 | WhoReview: m.WhoReview, | 112 | WhoReview: m.WhoReview, |
| 112 | Tags: m.Tags, | 113 | Tags: m.Tags, |
| 114 | + MatchUrl: map[string]string{}, | ||
| 115 | + } | ||
| 116 | + | ||
| 117 | + for k, v := range m.MatchUrl { | ||
| 118 | + b.MatchUrl[k] = v | ||
| 113 | } | 119 | } |
| 114 | return &b | 120 | return &b |
| 115 | } | 121 | } |
| @@ -8,23 +8,24 @@ import ( | @@ -8,23 +8,24 @@ import ( | ||
| 8 | 8 | ||
| 9 | // 编辑文章后保存的历史记录 | 9 | // 编辑文章后保存的历史记录 |
| 10 | type ArticleBackup struct { | 10 | type ArticleBackup struct { |
| 11 | - Id int64 `json:"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 | - Operator UserSimple `json:"operator"` // 操作人 | ||
| 18 | - ArticleId int64 `json:"articleId"` // | ||
| 19 | - Title string `json:"title"` // 标题 | ||
| 20 | - Section []ArticleSection `json:"section"` // 分段内容 | ||
| 21 | - Images []Image `json:"images"` // 图片 | ||
| 22 | - Action string `json:"action"` // 操作 | ||
| 23 | - TargetUser ArticleTarget `json:"targetUser"` // 分发方式 0 分发给所有人 1 分发给指定的人 | ||
| 24 | - Location Location `json:"location"` // 定位坐标 | ||
| 25 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 26 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 27 | - Tags []int64 `json:"tags"` // 标签 | 11 | + Id int64 `json:"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 | + Operator UserSimple `json:"operator"` // 操作人 | ||
| 18 | + ArticleId int64 `json:"articleId"` // | ||
| 19 | + Title string `json:"title"` // 标题 | ||
| 20 | + Section []ArticleSection `json:"section"` // 分段内容 | ||
| 21 | + Images []Image `json:"images"` // 图片 | ||
| 22 | + Action string `json:"action"` // 操作 | ||
| 23 | + TargetUser ArticleTarget `json:"targetUser"` // 分发方式 0 分发给所有人 1 分发给指定的人 | ||
| 24 | + Location Location `json:"location"` // 定位坐标 | ||
| 25 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 26 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 27 | + Tags []int64 `json:"tags"` // 标签 | ||
| 28 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 28 | } | 29 | } |
| 29 | 30 | ||
| 30 | type ArticleBackupRepository interface { | 31 | type ArticleBackupRepository interface { |
| @@ -9,20 +9,21 @@ import ( | @@ -9,20 +9,21 @@ import ( | ||
| 9 | // 填写文章时保存的草稿 | 9 | // 填写文章时保存的草稿 |
| 10 | 10 | ||
| 11 | type ArticleDraft struct { | 11 | type ArticleDraft struct { |
| 12 | - Id int64 `json:"id"` | ||
| 13 | - CompanyId int64 `json:"companyId"` | ||
| 14 | - CreatedAt int64 `json:"createdAt,omitempty"` | ||
| 15 | - UpdatedAt int64 `json:"updatedAt,omitempty"` | ||
| 16 | - DeletedAt int64 `json:"deletedAt,omitempty"` | ||
| 17 | - Version int `json:"version,omitempty"` | ||
| 18 | - Template int `json:"template"` // 填写内容时用的样板0、无 1、演绎式 2、归纳式 | ||
| 19 | - Content []string `json:"content"` // 文章内容 | ||
| 20 | - AuthorId int64 `json:"authorId"` // 发布人 | ||
| 21 | - Title string `json:"title"` // 文章标题 | ||
| 22 | - Images []Image `json:"images"` // 图片 | ||
| 23 | - WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 24 | - WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 25 | - Location Location `json:"location"` // 坐标 | 12 | + Id int64 `json:"id"` |
| 13 | + CompanyId int64 `json:"companyId"` | ||
| 14 | + CreatedAt int64 `json:"createdAt,omitempty"` | ||
| 15 | + UpdatedAt int64 `json:"updatedAt,omitempty"` | ||
| 16 | + DeletedAt int64 `json:"deletedAt,omitempty"` | ||
| 17 | + Version int `json:"version,omitempty"` | ||
| 18 | + Template int `json:"template"` // 填写内容时用的样板0、无 1、演绎式 2、归纳式 | ||
| 19 | + Content []string `json:"content"` // 文章内容 | ||
| 20 | + AuthorId int64 `json:"authorId"` // 发布人 | ||
| 21 | + Title string `json:"title"` // 文章标题 | ||
| 22 | + Images []Image `json:"images"` // 图片 | ||
| 23 | + WhoRead []int64 `json:"whoRead"` // 谁可以看 | ||
| 24 | + WhoReview []int64 `json:"whoReview"` // 评论人 | ||
| 25 | + Location Location `json:"location"` // 坐标 | ||
| 26 | + MatchUrl map[string]string `json:"matchUrl"` // 匹配文章内容中的url文本 | ||
| 26 | } | 27 | } |
| 27 | type ArticleDraftRepository interface { | 28 | type ArticleDraftRepository interface { |
| 28 | Insert(ctx context.Context, conn transaction.Conn, dm *ArticleDraft) (*ArticleDraft, error) | 29 | Insert(ctx context.Context, conn transaction.Conn, dm *ArticleDraft) (*ArticleDraft, error) |
-
请 注册 或 登录 后发表评论