@@ -28,6 +28,7 @@ import (
2828"github.com/apache/answer/internal/base/constant"
2929
3030"github.com/apache/answer/internal/base/data"
31+ "github.com/apache/answer/internal/repo/revision"
3132"github.com/apache/answer/internal/repo/unique"
3233"github.com/apache/answer/internal/schema"
3334"github.com/segmentfault/pacman/log"
@@ -311,6 +312,7 @@ func (m *Mentor) initSiteInfoWrite() {
311312
312313func (m * Mentor ) initDefaultContent () {
313314uniqueIDRepo := unique .NewUniqueIDRepo (& data.Data {DB : m .engine })
315+ revisionRepo := revision .NewRevisionRepo (& data.Data {DB : m .engine }, uniqueIDRepo )
314316now := time .Now ()
315317
316318tagId , err := uniqueIDRepo .GenUniqueIDStr (m .ctx , entity.Tag {}.TableName ())
@@ -343,7 +345,7 @@ func (m *Mentor) initDefaultContent() {
343345return
344346}
345347
346- tag := entity.Tag {
348+ tag := & entity.Tag {
347349ID : tagId ,
348350SlugName : "support" ,
349351DisplayName : "support" ,
@@ -419,16 +421,74 @@ func (m *Mentor) initDefaultContent() {
419421if m .err != nil {
420422return
421423}
424+ tagContent , err := json .Marshal (tag )
425+ if err != nil {
426+ m .err = err
427+ return
428+ }
429+ m .err = revisionRepo .AddRevision (m .ctx , & entity.Revision {
430+ UserID : tag .UserID ,
431+ ObjectID : tag .ID ,
432+ Title : tag .SlugName ,
433+ Content : string (tagContent ),
434+ Status : entity .RevisionReviewPassStatus ,
435+ }, true )
436+ if m .err != nil {
437+ return
438+ }
439+ tagForRevision := & entity.TagSimpleInfoForRevision {
440+ ID : tag .ID ,
441+ MainTagID : tag .MainTagID ,
442+ MainTagSlugName : tag .MainTagSlugName ,
443+ SlugName : tag .SlugName ,
444+ DisplayName : tag .DisplayName ,
445+ Recommend : tag .Recommend ,
446+ Reserved : tag .Reserved ,
447+ RevisionID : tag .RevisionID ,
448+ }
422449
423450_ , m .err = m .engine .Context (m .ctx ).Insert (q1 )
424451if m .err != nil {
425452return
426453}
454+ q1Revision := & entity.QuestionWithTagsRevision {
455+ Question : * q1 ,
456+ Tags : []* entity.TagSimpleInfoForRevision {tagForRevision },
457+ }
458+ q1Content , err := json .Marshal (q1Revision )
459+ if err != nil {
460+ m .err = err
461+ return
462+ }
463+ m .err = revisionRepo .AddRevision (m .ctx , & entity.Revision {
464+ UserID : q1 .UserID ,
465+ ObjectID : q1 .ID ,
466+ Title : q1 .Title ,
467+ Content : string (q1Content ),
468+ Status : entity .RevisionReviewPassStatus ,
469+ }, true )
470+ if m .err != nil {
471+ return
472+ }
427473
428474_ , m .err = m .engine .Context (m .ctx ).Insert (a1 )
429475if m .err != nil {
430476return
431477}
478+ a1Content , err := json .Marshal (a1 )
479+ if err != nil {
480+ m .err = err
481+ return
482+ }
483+ m .err = revisionRepo .AddRevision (m .ctx , & entity.Revision {
484+ UserID : a1 .UserID ,
485+ ObjectID : a1 .ID ,
486+ Content : string (a1Content ),
487+ Status : entity .RevisionReviewPassStatus ,
488+ }, true )
489+ if m .err != nil {
490+ return
491+ }
432492
433493_ , m .err = m .engine .Context (m .ctx ).Insert (entity.TagRel {
434494ObjectID : q1 .ID ,
@@ -443,11 +503,44 @@ func (m *Mentor) initDefaultContent() {
443503if m .err != nil {
444504return
445505}
506+ q2Revision := & entity.QuestionWithTagsRevision {
507+ Question : * q2 ,
508+ Tags : []* entity.TagSimpleInfoForRevision {tagForRevision },
509+ }
510+ q2Content , err := json .Marshal (q2Revision )
511+ if err != nil {
512+ m .err = err
513+ return
514+ }
515+ m .err = revisionRepo .AddRevision (m .ctx , & entity.Revision {
516+ UserID : q2 .UserID ,
517+ ObjectID : q2 .ID ,
518+ Title : q2 .Title ,
519+ Content : string (q2Content ),
520+ Status : entity .RevisionReviewPassStatus ,
521+ }, true )
522+ if m .err != nil {
523+ return
524+ }
446525
447526_ , m .err = m .engine .Context (m .ctx ).Insert (a2 )
448527if m .err != nil {
449528return
450529}
530+ a2Content , err := json .Marshal (a2 )
531+ if err != nil {
532+ m .err = err
533+ return
534+ }
535+ m .err = revisionRepo .AddRevision (m .ctx , & entity.Revision {
536+ UserID : a2 .UserID ,
537+ ObjectID : a2 .ID ,
538+ Content : string (a2Content ),
539+ Status : entity .RevisionReviewPassStatus ,
540+ }, true )
541+ if m .err != nil {
542+ return
543+ }
451544
452545_ , m .err = m .engine .Context (m .ctx ).Insert (entity.TagRel {
453546ObjectID : q2 .ID ,
0 commit comments