Kavita/API/Helpers/Builders/RatingBuilder.cs
Amelia 184cf46533
Revert "Unify ChapterRating with Rating"
This wasn't working out, there is still some duplicate code. But not
that much, and from the API, there is no different. Hooray!
2025-04-28 17:14:02 +02:00

41 lines
904 B
C#

#nullable enable
using System;
using API.Entities;
namespace API.Helpers.Builders;
public class RatingBuilder : IEntityBuilder<AppUserRating>
{
private readonly AppUserRating _rating;
public AppUserRating Build() => _rating;
public RatingBuilder(AppUserRating? rating = null)
{
_rating = rating ?? new AppUserRating();
}
public RatingBuilder WithSeriesId(int seriesId)
{
_rating.SeriesId = seriesId;
return this;
}
public RatingBuilder WithRating(int rating)
{
_rating.Rating = Math.Clamp(rating, 0, 5);
return this;
}
public RatingBuilder WithTagline(string? tagline)
{
if (string.IsNullOrEmpty(tagline)) return this;
_rating.Tagline = tagline;
return this;
}
public RatingBuilder WithBody(string body)
{
_rating.Review = body;
return this;
}
}