fix: list memo relations

This commit is contained in:
Johnny
2025-04-12 22:02:13 +08:00
committed by GitHub
parent 2f6dc2b51f
commit 08f9b18ced
3 changed files with 36 additions and 1 deletions

View File

@@ -70,9 +70,21 @@ func (s *APIV1Service) ListMemoRelations(ctx context.Context, request *v1pb.List
if err != nil {
return nil, status.Errorf(codes.Internal, "failed to get memo")
}
currentUser, err := s.GetCurrentUser(ctx)
if err != nil {
return nil, status.Errorf(codes.Internal, "failed to get user")
}
var memoFilter string
if currentUser == nil {
memoFilter = `visibility == "PUBLIC"`
} else {
memoFilter = fmt.Sprintf(`creator_id == %d || visibility in ["PUBLIC", "PROTECTED"]`, currentUser.ID)
}
relationList := []*v1pb.MemoRelation{}
tempList, err := s.Store.ListMemoRelations(ctx, &store.FindMemoRelation{
MemoID: &memo.ID,
MemoID: &memo.ID,
MemoFilter: &memoFilter,
})
if err != nil {
return nil, err
@@ -86,6 +98,7 @@ func (s *APIV1Service) ListMemoRelations(ctx context.Context, request *v1pb.List
}
tempList, err = s.Store.ListMemoRelations(ctx, &store.FindMemoRelation{
RelatedMemoID: &memo.ID,
MemoFilter: &memoFilter,
})
if err != nil {
return nil, err