New Layout - Pro Bewertung
This commit is contained in:
@@ -1,15 +1,18 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:mensaappbackend/modules/ratingCard.dart';
|
||||
import 'package:mensaappbackend/providers/pageProvider.dart';
|
||||
import 'package:mensaappbackend/providers/viewProvider.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:supabase_flutter/supabase_flutter.dart';
|
||||
|
||||
class PageDashboard extends StatelessWidget {
|
||||
const PageDashboard({super.key});
|
||||
|
||||
Future<List<dynamic>> requestSupaBase7Days() async {
|
||||
Future<List<dynamic>> requestSupabaseToday() async {
|
||||
var supabase = Supabase.instance.client;
|
||||
var result = await supabase.from("ratings_database").select("ratings");
|
||||
var now = DateTime.now();
|
||||
var morning = DateTime(now.year, now.month, now.day, 10, 0);
|
||||
var result = await supabase.from("ratings_database").select("ratings").gte("created_at", morning);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -25,7 +28,7 @@ class PageDashboard extends StatelessWidget {
|
||||
appBar: AppBar(
|
||||
backgroundColor: Theme.of(context).colorScheme.primary,
|
||||
title: Text(
|
||||
"Dashboard - Bewertungen",
|
||||
"Dashboard",
|
||||
style: TextStyle(color: Theme.of(context).colorScheme.onPrimary),
|
||||
),
|
||||
centerTitle: false,
|
||||
@@ -49,53 +52,12 @@ class PageDashboard extends StatelessWidget {
|
||||
],
|
||||
),
|
||||
body: FutureBuilder(
|
||||
future: requestSupaBase7Days(),
|
||||
future: requestSupabaseToday(),
|
||||
builder: (context, snapshot) {
|
||||
var data = snapshot.data;
|
||||
List<Widget> cards = [];
|
||||
|
||||
if (data == null) {
|
||||
return Center();
|
||||
}
|
||||
|
||||
for (var map in data) {
|
||||
var ratings = map["ratings"];
|
||||
|
||||
for (var key in ratings.keys) {
|
||||
var rating = ratings[key];
|
||||
|
||||
if (rating["q1"] != 0) {
|
||||
cards.add(RatingCard(
|
||||
rating1: rating["q1"],
|
||||
rating2: rating["q2"],
|
||||
text: rating["t1"],
|
||||
title: ratingNames[key]!["title"]!,
|
||||
rating1Title: ratingNames[key]!["q1"]!,
|
||||
rating2Title: ratingNames[key]!["q2"]!,
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return SingleChildScrollView(
|
||||
child: Center(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
SizedBox(
|
||||
height: 20,
|
||||
),
|
||||
Text(
|
||||
"Letze 7 Tage:",
|
||||
style: TextStyle(fontSize: 25),
|
||||
),
|
||||
SizedBox(
|
||||
height: 20,
|
||||
),
|
||||
for (var card in cards) card
|
||||
],
|
||||
),
|
||||
),
|
||||
return Consumer<ViewProvider> (
|
||||
builder: (context, viewProvider, child) {
|
||||
return viewProvider.views[viewProvider.selectedView]!(context, snapshot, ratingNames);
|
||||
},
|
||||
);
|
||||
},
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user