docs: #369 special privileges for ranking audio recitations to make فریدون فرح‌اندوز the default recitation for Hafiz

This commit is contained in:
Hamid Reza Mohammadi 2023-03-10 19:36:11 +03:30
parent f4bbbe353d
commit 4a426c15b6
5 changed files with 25 additions and 2 deletions

View File

@ -182,6 +182,9 @@ namespace RMuseum.Models.GanjoorAudio
/// </summary>
public string ReviewMsg { get; set; }
/// <summary>
/// initial score for ordering recitations
/// </summary>
public int InitialScore { get; set; }
}
}

View File

@ -15,6 +15,11 @@
/// </summary>
public int EarlynessAdvantage { get; set; }
/// <summary>
/// initial score
/// </summary>
public int InitialScore { get; set; }
/// <summary>
/// upvotes from users other than the owner
/// </summary>

View File

@ -4692,6 +4692,11 @@
Review Message
</summary>
</member>
<member name="P:RMuseum.Models.GanjoorAudio.Recitation.InitialScore">
<summary>
initial score for ordering recitations
</summary>
</member>
<member name="T:RMuseum.Models.GanjoorAudio.RecitationApprovedMistake">
<summary>
Recitation approved mistake
@ -5149,6 +5154,11 @@
earlyness advatage
</summary>
</member>
<member name="P:RMuseum.Models.GanjoorAudio.ViewModels.RecitationOrderingViewModel.InitialScore">
<summary>
initial score
</summary>
</member>
<member name="P:RMuseum.Models.GanjoorAudio.ViewModels.RecitationOrderingViewModel.UpVotes">
<summary>
upvotes from users other than the owner

View File

@ -488,6 +488,7 @@ namespace RMuseum.Services.Implementation
{
RecitationId = recitation.Id,
EarlynessAdvantage = recitations.Count - 1 - i,
InitialScore = recitations[i].InitialScore,
UpVotes = await context.RecitationUserUpVotes.AsNoTracking().Where(r => r.RecitationId == recitation.Id && r.UserId != recitation.OwnerId)
.CountAsync(),
Mistakes = await context.RecitationApprovedMistakes.AsNoTracking().Where(m => m.RecitationId == recitation.Id).SumAsync(m => m.NumberOfLinesAffected)
@ -495,10 +496,12 @@ namespace RMuseum.Services.Implementation
score.TotalScores = score.EarlynessAdvantage
+
score.InitialScore
+ score.UpVotes
- (5 * score.Mistakes);
//audio order is used as a temporary variable in the following line and soon is get replaced by computed value
//audio order is used as a temporary variable in the following line and soon is getting replaced by computed value
recitation.AudioOrder = score.TotalScores;
scores.Add(score);

View File

@ -2423,6 +2423,7 @@ namespace RMuseum.Services.Implementationa
{
RecitationId = recitation.Id,
EarlynessAdvantage = recitations.Count - 1 - i,
InitialScore = recitations[i].InitialScore,
UpVotes = await context.RecitationUserUpVotes.AsNoTracking().Where(r => r.RecitationId == recitation.Id && r.UserId != recitation.OwnerId)
.CountAsync(),
Mistakes = await context.RecitationApprovedMistakes.AsNoTracking().Where(m => m.RecitationId == recitation.Id).SumAsync(m => m.NumberOfLinesAffected)
@ -2430,6 +2431,7 @@ namespace RMuseum.Services.Implementationa
score.TotalScores = score.EarlynessAdvantage
+ score.InitialScore
+ score.UpVotes
- (5 * score.Mistakes);