Merge branch 'brokenDateFix' into 'main'

datum in dashboard

See merge request brausjonas/mensaappdashboard!2
This commit is contained in:
c1ph3r
2025-03-09 14:28:30 +00:00
5 changed files with 16 additions and 7 deletions
+3 -1
View File
@@ -18,6 +18,9 @@ class BuilderAverage {
var tmp_dic = bewertung["ratings"][page];
switch (page) {
case "page1":
if (tmp_dic["food"].length == 0) {
break;
}
var curKey = tmp_dic["food"].split(": ")[1];
if (!dic["page1"]!.containsKey(curKey)) {
dic["page1"]![curKey] = {
@@ -68,7 +71,6 @@ class BuilderAverage {
finalDic[food]["q1"] = (foodData["q1"] / foodData["counter"]).round().toInt();
finalDic[food]?["q2"] = (foodData["q2"] / foodData["counter"]).round().toInt();
}
List<Widget> cards = [];
if (data == null) {
+8 -2
View File
@@ -1,7 +1,9 @@
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import 'package:mensaappbackend/modules/ratingCard.dart';
import 'package:mensaappbackend/providers/timeProvider.dart';
import 'package:provider/provider.dart';
import 'package:intl/intl_browser.dart';
class BuilderToday {
static Widget build(var context, var snapshot, var ratingNames) {
@@ -16,6 +18,10 @@ class BuilderToday {
var i = 0;
for (var map in data) {
var ratings = map["ratings"];
var createdAt = map["created_at"];
// Datum in ein lesbares Format umwandeln
var formattedDate = DateFormat('dd.MM.yyyy').format(DateTime.parse(createdAt));
List<Widget> children = [];
for (var key in ratings.keys) {
@@ -26,8 +32,8 @@ class BuilderToday {
rating1: rating["q1"],
rating2: rating["q2"],
text: rating["t1"],
title: ratingNames[key]!["title"]! +
(key == "page1" ? "${rating["food"]}" : ""),
title: "$formattedDate\n${ratingNames[key]!["title"]! +
(key == "page1" ? "${rating["food"]}" : "")}",
rating1Title: ratingNames[key]!["q1"]!,
rating2Title: ratingNames[key]!["q2"]!,
);
+1 -1
View File
@@ -32,7 +32,7 @@ class RatingCard extends StatelessWidget {
),
child: Column(
children: [
Text(title, style: TextStyle(fontSize: 22),),
Text(title, style: TextStyle(fontSize: 22), textAlign: TextAlign.center,),
SizedBox(height: 10,),
Text("$rating1Title:", style: TextStyle(fontSize: 18),),
RatingStars(initRating: rating1.toDouble()),
+3 -3
View File
@@ -28,14 +28,14 @@ class PageDashboard extends StatelessWidget {
3: nowMorning.subtract(const Duration(days: 30)),
4: nowMorning.subtract(const Duration(days: 365)),
};
var result = await supabase.from("ratings_database").select("ratings").gte("created_at", morningDict[timeId]!);
var result = await supabase.from("ratings_database").select("ratings, created_at").gte("created_at", morningDict[timeId]!);
return result;
}
final ratingNames = const {
"page1": {"title": "", "q1": "Geschmack", "q2": "Qualität"},
"page2": {"title": "Service", "q1": "Undefined", "q2": "Undefined"},
"page3": {"title": "Wünsche", "q1": "Undefined", "q2": "Undefined"}
"page2": {"title": "Service", "q1": "Freundlichkeit", "q2": "Sauberkeit"},
"page3": {"title": "Wünsche", "q1": "Vielfalt", "q2": "Vegan"}
};
@override
+1
View File
@@ -34,6 +34,7 @@ dependencies:
supabase_flutter: ^2.8.1
flutter_login: ^5.0.0
flutter_rating_bar: ^4.0.1
intl: ^0.20.2
# The following adds the Cupertino Icons font to your application.