diff --git a/RMuseum/Controllers/ContributionStatsController.cs b/RMuseum/Controllers/ContributionStatsController.cs
index 6a8248b0..99335f4a 100644
--- a/RMuseum/Controllers/ContributionStatsController.cs
+++ b/RMuseum/Controllers/ContributionStatsController.cs
@@ -57,6 +57,7 @@ namespace RMuseum.Controllers
/// pinterestlinks
/// poetspeclines
/// poetpix
+ /// usernotes
///
///
///
@@ -160,6 +161,14 @@ namespace RMuseum.Controllers
pagedResult = res.Result;
}
break;
+ case "usernotes":
+ {
+ var res = await _service.GetApprovedUserNotesGroupedByDateAsync(paging, userId);
+ if (!string.IsNullOrEmpty(res.ExceptionString))
+ return BadRequest(res.ExceptionString);
+ pagedResult = res.Result;
+ }
+ break;
default:
return BadRequest($"Invalid value for the paramater: dataType = {dataType}");
}
@@ -185,6 +194,7 @@ namespace RMuseum.Controllers
/// pinterestlinks
/// poetspeclines
/// poetpix
+ /// usernotes
///
///
///
@@ -289,6 +299,14 @@ namespace RMuseum.Controllers
pagedResult = res.Result;
}
break;
+ case "usernotes":
+ {
+ var res = await _service.GetApprovedUserNotesGroupedByUserAsync(paging, day, userId);
+ if (!string.IsNullOrEmpty(res.ExceptionString))
+ return BadRequest(res.ExceptionString);
+ pagedResult = res.Result;
+ }
+ break;
default:
return BadRequest($"Invalid value for the paramater: dataType = {dataType}");
}
@@ -315,6 +333,7 @@ namespace RMuseum.Controllers
/// pinterestlinks
/// poetspeclines
/// poetpix
+ /// usernotes
///
///
[HttpGet("{dataType}/summary")]
@@ -415,6 +434,14 @@ namespace RMuseum.Controllers
result = res.Result;
}
break;
+ case "usernotes":
+ {
+ var res = await _service.GetApprovedUserNotesSummedUpStatsAsync();
+ if (!string.IsNullOrEmpty(res.ExceptionString))
+ return BadRequest(res.ExceptionString);
+ result = res.Result;
+ }
+ break;
default:
return BadRequest($"Invalid value for the paramater: dataType = {dataType}");
}
diff --git a/RMuseum/Models/Ganjoor/ViewModels/UserContributionsViewModel.cs b/RMuseum/Models/Ganjoor/ViewModels/UserContributionsViewModel.cs
index 8f478e12..7217f973 100644
--- a/RMuseum/Models/Ganjoor/ViewModels/UserContributionsViewModel.cs
+++ b/RMuseum/Models/Ganjoor/ViewModels/UserContributionsViewModel.cs
@@ -66,5 +66,10 @@ namespace RMuseum.Models.Ganjoor.ViewModels
/// poet pictures
///
public int PoetPictures { get; set; }
+
+ ///
+ /// public user notes
+ ///
+ public int PublicUserNotes { get; set; }
}
}
diff --git a/RMuseum/RMuseum.xml b/RMuseum/RMuseum.xml
index faa29c3e..a9b6d816 100644
--- a/RMuseum/RMuseum.xml
+++ b/RMuseum/RMuseum.xml
@@ -785,6 +785,7 @@
pinterestlinks
poetspeclines
poetpix
+ usernotes
@@ -806,6 +807,7 @@
pinterestlinks
poetspeclines
poetpix
+ usernotes
@@ -828,6 +830,7 @@
pinterestlinks
poetspeclines
poetpix
+ usernotes
@@ -13520,6 +13523,11 @@
poet pictures
+
+
+ public user notes
+
+
history of suggested songs by a user
@@ -16300,6 +16308,29 @@
+
+
+ approved user notes
+
+
+
+
+
+
+
+ approved user notes grouped by user
+
+
+
+
+
+
+
+
+ summed up stats of approved user notes
+
+
+
donation service
@@ -19466,6 +19497,29 @@
+
+
+ approved user notes
+
+
+
+
+
+
+
+ approved user notes grouped by user
+
+
+
+
+
+
+
+
+ summed up stats of approved user notes
+
+
+
Database Context
diff --git a/RMuseum/Services/Implementation/ContributionStatsService.cs b/RMuseum/Services/Implementation/ContributionStatsService.cs
index d4033e5a..f2bba7a6 100644
--- a/RMuseum/Services/Implementation/ContributionStatsService.cs
+++ b/RMuseum/Services/Implementation/ContributionStatsService.cs
@@ -41,6 +41,7 @@ namespace RMuseum.Services.Implementation
PinterestLinks = await _context.PinterestLinks.Where(c => c.HumanReviewed && c.ReviewResult == Models.GanjoorIntegration.ReviewResult.Approved && c.SuggestedById == userId).CountAsync(),
PoetSpecLines = await _context.GanjoorPoetSuggestedSpecLines.Where(c => c.Published && c.SuggestedById == userId).CountAsync(),
PoetPictures = await _context.GanjoorPoetSuggestedPictures.Where(c => c.Published && c.SuggestedById == userId).CountAsync(),
+ PublicUserNotes = await _context.UserNotes.Where(c => c.Status == Models.Artifact.PublishStatus.Published && c.NoteType == Models.Note.RNoteType.Public && c.RAppUserId == userId).CountAsync()
}
);