chore: update memo relation definition

This commit is contained in:
Steven
2024-03-19 21:53:44 +08:00
parent 722e356044
commit ed89cb8310
13 changed files with 369 additions and 357 deletions

View File

@@ -2,6 +2,7 @@ package v2
import (
"context"
"fmt"
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
@@ -26,7 +27,7 @@ func (s *APIV2Service) SetMemoRelations(ctx context.Context, request *apiv2pb.Se
for _, relation := range request.Relations {
// Ignore reflexive relations.
if id == relation.RelatedMemoId {
if request.Name == relation.RelatedMemo {
continue
}
// Ignore comment relations as there's no need to update a comment's relation.
@@ -34,9 +35,13 @@ func (s *APIV2Service) SetMemoRelations(ctx context.Context, request *apiv2pb.Se
if relation.Type == apiv2pb.MemoRelation_COMMENT {
continue
}
relatedMemoID, err := ExtractMemoIDFromName(relation.RelatedMemo)
if err != nil {
return nil, status.Errorf(codes.InvalidArgument, "invalid related memo name: %v", err)
}
if _, err := s.Store.UpsertMemoRelation(ctx, &store.MemoRelation{
MemoID: id,
RelatedMemoID: relation.RelatedMemoId,
RelatedMemoID: relatedMemoID,
Type: convertMemoRelationTypeToStore(relation.Type),
}); err != nil {
return nil, status.Errorf(codes.Internal, "failed to upsert memo relation")
@@ -79,9 +84,9 @@ func (s *APIV2Service) ListMemoRelations(ctx context.Context, request *apiv2pb.L
func convertMemoRelationFromStore(memoRelation *store.MemoRelation) *apiv2pb.MemoRelation {
return &apiv2pb.MemoRelation{
MemoId: memoRelation.MemoID,
RelatedMemoId: memoRelation.RelatedMemoID,
Type: convertMemoRelationTypeFromStore(memoRelation.Type),
Memo: fmt.Sprintf("%s%d", MemoNamePrefix, memoRelation.MemoID),
RelatedMemo: fmt.Sprintf("%s%d", MemoNamePrefix, memoRelation.RelatedMemoID),
Type: convertMemoRelationTypeFromStore(memoRelation.Type),
}
}