From 5890d30b3bb77175d114e7c0630ec4038154365c Mon Sep 17 00:00:00 2001 From: Ognjen Cirkovic Date: Thu, 8 Dec 2022 14:58:31 +0100 Subject: Dodat broj omiljenih objava na back-u. Napravljen dizajn fragmenta za prikaz statistike --- Backend/Api/Api/Models/User.cs | 1 + Backend/Api/Api/Services/PostService.cs | 3 + .../res/drawable/ic_baseline_calendar_month_24.xml | 5 ++ .../main/res/drawable/ic_baseline_favorite_24.xml | 2 +- .../src/main/res/drawable/ic_baseline_star_24.xml | 5 ++ .../main/res/drawable/ic_baseline_star_half_24.xml | 5 ++ .../res/layout/fragment_profile_statistics.xml | 88 ++++++++++++++++++++-- 7 files changed, 100 insertions(+), 9 deletions(-) create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_calendar_month_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_half_24.xml diff --git a/Backend/Api/Api/Models/User.cs b/Backend/Api/Api/Models/User.cs index 52d0f24..620c9c8 100644 --- a/Backend/Api/Api/Models/User.cs +++ b/Backend/Api/Api/Models/User.cs @@ -82,6 +82,7 @@ namespace Api.Models public int numberOfRatingsOnPosts { get; set; } public double averagePostRatingOnPosts {get; set; } public List monthlyViews { get; set; } + public int numberOfFavouritePosts { get; set; } } public class MonthlyViews diff --git a/Backend/Api/Api/Services/PostService.cs b/Backend/Api/Api/Services/PostService.cs index 0799f10..16ebbb7 100644 --- a/Backend/Api/Api/Services/PostService.cs +++ b/Backend/Api/Api/Services/PostService.cs @@ -672,6 +672,7 @@ namespace Api.Services stats.numberOfPosts = 0; stats.totalViews = 0; stats.monthlyViews = new List(); + stats.numberOfFavouritePosts = 0; if(posts != null) @@ -691,6 +692,8 @@ namespace Api.Services stats.totalViews += post.views; stats.numberOfRatingsOnPosts += post.ratingscount; stats.numberOfPosts++; + if(post.favourites!=null) + stats.numberOfFavouritePosts+=post.favourites.Count; ratingsum += post.ratings * post.ratingscount; } if(stats.numberOfRatingsOnPosts > 0) //don't forget to check div by 0 jesus diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_calendar_month_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_calendar_month_24.xml new file mode 100644 index 0000000..a278444 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_calendar_month_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_favorite_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_favorite_24.xml index 84df34b..2dbc440 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_favorite_24.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_favorite_24.xml @@ -1,4 +1,4 @@ - diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_24.xml new file mode 100644 index 0000000..88f8d7a --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_half_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_half_24.xml new file mode 100644 index 0000000..d532b23 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_star_half_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile_statistics.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile_statistics.xml index d5d72d1..fc1152b 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile_statistics.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_profile_statistics.xml @@ -23,7 +23,17 @@ + android:layout_height="match_parent" + android:layout_marginRight="5dp" + android:text="Broj pregleda" + android:gravity="center"/> + @@ -39,11 +49,21 @@ + android:src="@drawable/ic_baseline_star_24" /> + android:layout_height="match_parent" + android:layout_marginRight="5dp" + android:text="Broj ocena" + android:gravity="center"/> + @@ -59,11 +79,52 @@ + android:src="@drawable/ic_baseline_star_half_24" /> + + + + + + + + + + android:layout_height="match_parent" + android:layout_marginRight="5dp" + android:text="Broj omiljenih objava" + android:gravity="center"/> + + @@ -74,18 +135,29 @@ android:orientation="horizontal" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/linearLayout5"> + app:layout_constraintTop_toBottomOf="@+id/linearLayout7"> + android:src="@drawable/ic_baseline_calendar_month_24" /> + android:layout_marginRight="5dp" + android:layout_height="match_parent" + android:text="Pregledi po mesecima" + android:gravity="center"/> + + \ No newline at end of file -- cgit v1.2.3