package app import ( "errors" "evening_detective_server/internal/services/game_review_service" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" ) func reviewErrorStatus(err error, internalMessage string) error { switch { case errors.Is(err, game_review_service.ErrTeamNotFound), errors.Is(err, game_review_service.ErrGameNotFound), errors.Is(err, game_review_service.ErrReviewNotFound): return status.Error(codes.NotFound, err.Error()) case errors.Is(err, game_review_service.ErrInvalidReview), errors.Is(err, game_review_service.ErrInvalidStatus): return status.Error(codes.InvalidArgument, err.Error()) case errors.Is(err, game_review_service.ErrGameNotFinished), errors.Is(err, game_review_service.ErrReviewExists): return status.Error(codes.FailedPrecondition, err.Error()) default: return status.Error(codes.Internal, internalMessage) } }