From 099c08ff2759d2ed270043e49547b4dbee93a431 Mon Sep 17 00:00:00 2001 From: Schindler'sKiste Date: Fri, 21 Jun 2019 11:30:34 +0200 Subject: [PATCH 1/2] kein KOmmentar --- frontend/lib/src/model/appointment.dart | 4 +- frontend/lib/src/model/day.dart | 6 +- frontend/lib/src/model/month.dart | 94 +++++++++---------- frontend/lib/src/model/person.dart | 1 + .../view/components/account_component.dart | 3 +- .../components/appointment_component.dart | 4 - .../appointment_search_component.dart | 6 +- .../src/view/components/calendar_main.dart | 8 +- .../view/components/contact_component.dart | 6 +- .../components/contact_list_component.dart | 10 +- .../components/contact_search_component.dart | 4 +- .../view/components/dashboard_component.dart | 2 +- frontend/lib/src/view/routes/route_paths.dart | 4 +- frontend/lib/src/view/routes/routes.dart | 2 +- .../lib/controller/register_controller.dart | 1 - middleman/lib/model/appointment.dart | 2 +- middleman/lib/model/person.dart | 4 +- 17 files changed, 79 insertions(+), 82 deletions(-) diff --git a/frontend/lib/src/model/appointment.dart b/frontend/lib/src/model/appointment.dart index 330c0d5..23af2e0 100644 --- a/frontend/lib/src/model/appointment.dart +++ b/frontend/lib/src/model/appointment.dart @@ -6,6 +6,8 @@ class Appointment { // leeres Appointment Appointment.zero(); + + ///Appointment aus einer Json Datei / Respons factory Appointment.fromJson(Map appointment) => Appointment( appointment['id'] as int, appointment['name'] as String, @@ -17,7 +19,7 @@ class Appointment { appointment['location'] as String, appointment['note'] as String); - List contactCodes = []; + List contactCodes = []; //wäre für einladen und geteilte termine int id; String name; int year; diff --git a/frontend/lib/src/model/day.dart b/frontend/lib/src/model/day.dart index b7d25d2..72ef4b0 100644 --- a/frontend/lib/src/model/day.dart +++ b/frontend/lib/src/model/day.dart @@ -10,12 +10,12 @@ class Day { List appointments; @override - String toString() => weekday()+": $month/$day/$year"; - + String toString() => "${weekday()}: $month/$day/$year"; +///überprüft ob der Tag richtig initalisiert ist bool isValid()=> year != null && month != null && day != null; - +///returnd den Wochentag als String String weekday() { switch (DateTime(year, month, day).weekday) { case 1: diff --git a/frontend/lib/src/model/month.dart b/frontend/lib/src/model/month.dart index e7f1cf0..b0b24d2 100644 --- a/frontend/lib/src/model/month.dart +++ b/frontend/lib/src/model/month.dart @@ -1,90 +1,88 @@ - import 'package:demo/src/model/day.dart'; class Month { // Constructor - Month(this.year,this.month); - + Month(this.year, this.month); int month; int year; + ///giebt eine woche zurück + ///int week welche woche des monats ausgewählt werden soll + //weekOfMonth(1) wäre Montag der 27.06 bis Sonntag dem 02.07 Iterable weekOfMonth(int week) sync* { final int firstWeekDayOfMonth = DateTime.utc(year, month, 1).weekday; - final int weekOffSet = -firstWeekDayOfMonth+2; + final int weekOffSet = -firstWeekDayOfMonth + 2; int k = weekOffSet + 7 * week; int count = 0; // 6 * 7 Tage while (count < 7) { // adds a day on top now again from top - final DateTime time = DateTime.utc(year, month , k); + final DateTime time = DateTime.utc(year, month, k); count++; k++; - yield Day(time.year,time.month,time.day); + yield Day(time.year, time.month, time.day); } } - + ///gibt den monat als String zurück @override - String toString(){ - switch(month){ - case 1: return "January"; - case 2: return "February"; - case 3: return "March"; - case 4: return "April"; - case 5: return "May"; - case 6: return "June"; - case 7: return "July"; - case 8: return "August"; - case 9: return "September"; - case 10: return "October"; - case 11: return "November"; - case 12: return "December"; - default: return month.toString(); + String toString() { + switch (month) { + case 1: + return "January"; + case 2: + return "February"; + case 3: + return "March"; + case 4: + return "April"; + case 5: + return "May"; + case 6: + return "June"; + case 7: + return "July"; + case 8: + return "August"; + case 9: + return "September"; + case 10: + return "October"; + case 11: + return "November"; + default: + return "December"; } } - void previus(){ - if(month -1 > 0) { - month = month - 1; - }else { - month = 12; - year = year - 1; - } - } - void next(){ - if(month +1 < 13){ - month = month +1; - } - else{ - year = year +1; - month =1; - } - } - List nextM(){ + ///wählt den nächsten monat aus + List nextM() { int yearOut = year; int monthOut; - if(month + 1 <= 12) { + if (month + 1 <= 12) { monthOut = month + 1; - }else { + } else { monthOut = 1; yearOut = year + 1; } - return [yearOut,monthOut]; - + return [yearOut, monthOut]; } - List prevM(){ + + ///wählt den vorhergegangenen monat aus + List prevM() { int yearOut = year; int monthOut; - if(month -1 > 0) { + if (month - 1 > 0) { monthOut = month - 1; - }else { + } else { month = 12; yearOut = year - 1; } - return [yearOut,monthOut]; + return [yearOut, monthOut]; } + ///liste die die wochentage für die CalenderView hält final List week = [ "Montag", "Dienstag", diff --git a/frontend/lib/src/model/person.dart b/frontend/lib/src/model/person.dart index 30fc9f0..181133d 100644 --- a/frontend/lib/src/model/person.dart +++ b/frontend/lib/src/model/person.dart @@ -60,6 +60,7 @@ class User extends Person { }; // gets all of the ENDBENUTZER Contacts + // ignore: missing_return Map getMyContacts() {} } diff --git a/frontend/lib/src/view/components/account_component.dart b/frontend/lib/src/view/components/account_component.dart index ca4cb9f..357c54b 100644 --- a/frontend/lib/src/view/components/account_component.dart +++ b/frontend/lib/src/view/components/account_component.dart @@ -4,7 +4,6 @@ import 'package:angular_router/angular_router.dart'; import 'package:demo/src/model/person.dart'; -import 'package:demo/src/view/routes/route_paths.dart'; import 'package:demo/src/view/services/person_service.dart'; import 'package:demo/src/view/components/login_component.dart'; @@ -17,7 +16,7 @@ import '../main_component.dart'; styleUrls: ['account_component.css'], directives: [coreDirectives, routerDirectives, formDirectives], ) -/// Klasse zur verwaltung der Termine +/// Klasse zur verwaltung des Accounts class AccountComponent implements OnActivate { AccountComponent(this._userService, this._location, this._router); diff --git a/frontend/lib/src/view/components/appointment_component.dart b/frontend/lib/src/view/components/appointment_component.dart index 4717a73..6532848 100644 --- a/frontend/lib/src/view/components/appointment_component.dart +++ b/frontend/lib/src/view/components/appointment_component.dart @@ -1,12 +1,9 @@ import 'package:angular/angular.dart'; import 'package:angular_forms/angular_forms.dart'; import 'package:angular_router/angular_router.dart'; - - import 'package:demo/src/model/appointment.dart'; import 'package:demo/src/view/routes/route_paths.dart'; import 'package:demo/src/view/services/appointment_service.dart'; - import 'package:demo/src/view/components/login_component.dart'; @@ -65,5 +62,4 @@ class AppointmentComponent implements OnActivate { ///Methode, die die übergeordnete ansicht anzeigt void goBack() => _location.back(); - } diff --git a/frontend/lib/src/view/components/appointment_search_component.dart b/frontend/lib/src/view/components/appointment_search_component.dart index 9c99ba3..4d70eac 100644 --- a/frontend/lib/src/view/components/appointment_search_component.dart +++ b/frontend/lib/src/view/components/appointment_search_component.dart @@ -17,6 +17,7 @@ import 'package:demo/src/view/services/appointment_service.dart'; providers: [ClassProvider(AppointmentService)], pipes: [commonPipes], ) +///Klasse zum suchen eines Termins class AppointmentSearchComponent implements OnInit { AppointmentSearchComponent(this._appointmentService, this._router); @@ -28,7 +29,7 @@ class AppointmentSearchComponent implements OnInit { final StreamController _searchTerms = StreamController.broadcast(); - +///suche im Service void search(String term) => _searchTerms.add(term); @override @@ -41,10 +42,11 @@ class AppointmentSearchComponent implements OnInit { : _appointmentService.search(term).asStream())) .handleError(print); } - + ///erstellt eine Richtige URL zum Termin String _appointmentUrl(int id) => RoutePaths.appointment.toUrl(parameters: {idParam: '$id'}); + ///öffnet ein Termin mit gegebener ID Future gotoDetail(Appointment appointment) => _router.navigate(_appointmentUrl(appointment.id)); } diff --git a/frontend/lib/src/view/components/calendar_main.dart b/frontend/lib/src/view/components/calendar_main.dart index 12d2057..f1987ae 100644 --- a/frontend/lib/src/view/components/calendar_main.dart +++ b/frontend/lib/src/view/components/calendar_main.dart @@ -26,10 +26,11 @@ class CalendarComponent implements OnActivate, OnInit { int today; int thisMonth; - // auswählen des Tages + /// auswählen des Tages Future gotoDetail(Day day) => _router.navigate(dayUrl(day.year, day.month, day.day)); + ///überprüft ob der Tag Termine hat int daysAppointments(Day day) { return appointments .where((app) => @@ -39,7 +40,7 @@ class CalendarComponent implements OnActivate, OnInit { .toList() .length; } - // todo bug in anderen monaten + Future _getAppointments() async { today = DateTime.now().day; thisMonth = DateTime.now().month; @@ -65,6 +66,7 @@ class CalendarComponent implements OnActivate, OnInit { } } + ///erstellt immer die passende Url String monthURL(String year, String month) => RoutePaths.calendar.toUrl(parameters: {yParam: year, mParam: month}); @@ -75,12 +77,14 @@ class CalendarComponent implements OnActivate, OnInit { dParam: "$dayInt" }); + ///navigiert zum näcshten Monat // ignore: unused_element void next() { _router.navigate(monthURL( month.nextM().first.toString(), month.nextM().last.toString())); } + ///navigiert zum vorherigen Monat // ignore: unused_element void previous() { _router.navigate(monthURL( diff --git a/frontend/lib/src/view/components/contact_component.dart b/frontend/lib/src/view/components/contact_component.dart index 96c20dd..8919161 100644 --- a/frontend/lib/src/view/components/contact_component.dart +++ b/frontend/lib/src/view/components/contact_component.dart @@ -17,12 +17,12 @@ import 'package:demo/src/view/services/contact_service.dart'; styleUrls: ['contact_component.css'], directives: [coreDirectives, routerDirectives, formDirectives], ) -/// Klasse zur verwaltung der Termine +/// Klasse zur verwaltung der Kontakte class ContactComponent implements OnActivate { ContactComponent(this._contactService, this._location, this._router); - Contact contact = Contact(1,'lauri','Schindler','Laurenz','lauri.s@web.de','295145','Er ist einer'); + Contact contact; final Location _location; final Router _router; String note; @@ -50,7 +50,7 @@ class ContactComponent implements OnActivate { goBack(); } - ///Methode zum löschen von Terminen + ///Methode zum löschen von einem Kontakt Future delete() async { if (deleteControl==true) { await _contactService.delete(contact.contactCode); diff --git a/frontend/lib/src/view/components/contact_list_component.dart b/frontend/lib/src/view/components/contact_list_component.dart index 53f568c..62ec827 100644 --- a/frontend/lib/src/view/components/contact_list_component.dart +++ b/frontend/lib/src/view/components/contact_list_component.dart @@ -19,7 +19,7 @@ import 'contact_search_component.dart'; directives: [coreDirectives, routerDirectives, formDirectives, ContactComponent, ContactSearchComponent], ) -///Klasse zum anzeigen aller contacte +///Klasse zum anzeigen aller Kontakte class ContactListComponent implements OnInit, OnActivate { ContactListComponent(this._contactService, this._router); @@ -36,12 +36,6 @@ class ContactListComponent implements OnInit, OnActivate { contacts = await _contactService.getAll(); } - /*Future add(String name) async { - name = name.trim(); - if (name.isEmpty) return null; - appointments.add(await _appointmentService.create(name)); - selected = null; - }*/ ///Nachfolgender Code wird bei der inizialisierung der Klasse ausgeführt @override @@ -76,6 +70,7 @@ class ContactListComponent implements OnInit, OnActivate { } } + ///Funktion die immer beim erstellen aufgerufen wird @override Future onActivate(RouterState previous, RouterState current) async { if (!LoginComponent.loggedIn) { @@ -83,6 +78,7 @@ class ContactListComponent implements OnInit, OnActivate { } } + ///funktion zum löschen eines Kontakts Future delete(Contact contact) async { if (deleteControl==true) { await _contactService.delete(contact.contactCode); diff --git a/frontend/lib/src/view/components/contact_search_component.dart b/frontend/lib/src/view/components/contact_search_component.dart index d17d323..b3922c7 100644 --- a/frontend/lib/src/view/components/contact_search_component.dart +++ b/frontend/lib/src/view/components/contact_search_component.dart @@ -28,7 +28,7 @@ class ContactSearchComponent implements OnInit { final StreamController _searchTerms = StreamController.broadcast(); - + ///sucht mit einem String nach einem Kontakt void search(String term) => _searchTerms.add(term); @override @@ -41,7 +41,7 @@ class ContactSearchComponent implements OnInit { : _contactService.search(term).asStream())) .handleError(print); } - + ///erstellt immer die passende Url String _contactUrl(String number) => RoutePaths.contact.toUrl(parameters: {idParam: '$number'}); diff --git a/frontend/lib/src/view/components/dashboard_component.dart b/frontend/lib/src/view/components/dashboard_component.dart index 751d670..4cf801c 100644 --- a/frontend/lib/src/view/components/dashboard_component.dart +++ b/frontend/lib/src/view/components/dashboard_component.dart @@ -33,7 +33,7 @@ class DashboardComponent implements OnInit, OnActivate { joke = await _dashboardService.getJoke(); } } - +///lädt einen nueuen witz void refresh() async{ joke = await _dashboardService.getJoke(); } diff --git a/frontend/lib/src/view/routes/route_paths.dart b/frontend/lib/src/view/routes/route_paths.dart index 66ac7d2..2f149f4 100644 --- a/frontend/lib/src/view/routes/route_paths.dart +++ b/frontend/lib/src/view/routes/route_paths.dart @@ -8,6 +8,7 @@ const String dParam ="day"; class RoutePaths { + ///Definition der routpaths dazu werden noch mögliche url parameter festgelegt static final RoutePath dashboard = RoutePath(path: 'dashboard'); static final RoutePath appointments = RoutePath(path: 'appointments'); static final RoutePath appointmentNew = RoutePath(path: 'appointmentNew'); @@ -18,12 +19,11 @@ class RoutePaths { static final RoutePath register = RoutePath(path: 'register'); static final RoutePath login = RoutePath(path: 'login'); static final RoutePath account = RoutePath(path: 'account'); - static final RoutePath contacts = RoutePath(path: 'contacts'); static final RoutePath contact = RoutePath(path: '${contacts.path}/:$conParam'); } - +///Funktionen die aus der Url Parameter lesen int getYear(Map parameters) { final id = parameters[yParam]; return id == null ? null : int.tryParse(id); diff --git a/frontend/lib/src/view/routes/routes.dart b/frontend/lib/src/view/routes/routes.dart index b725cd1..c4d61ed 100644 --- a/frontend/lib/src/view/routes/routes.dart +++ b/frontend/lib/src/view/routes/routes.dart @@ -20,7 +20,7 @@ import 'route_paths.dart'; export 'route_paths.dart'; class Routes { - // hier wird eine precompiled component eingebunden als sample+ + /// Die routpaths werden den einzelnen komponenten zugewiesen static final RouteDefinition calendar = RouteDefinition( routePath: RoutePaths.calendar, component: calendar_template.CalendarComponentNgFactory as ComponentFactory, diff --git a/middleman/lib/controller/register_controller.dart b/middleman/lib/controller/register_controller.dart index c5090d0..b0395c8 100644 --- a/middleman/lib/controller/register_controller.dart +++ b/middleman/lib/controller/register_controller.dart @@ -1,5 +1,4 @@ import 'dart:async'; -import 'dart:convert'; import 'package:aqueduct/aqueduct.dart'; import 'package:middleman/model/person.dart'; diff --git a/middleman/lib/model/appointment.dart b/middleman/lib/model/appointment.dart index 0ca6191..a54f7ed 100644 --- a/middleman/lib/model/appointment.dart +++ b/middleman/lib/model/appointment.dart @@ -1,7 +1,7 @@ import 'package:middleman/middleman.dart'; class Appointment extends ManagedObject<_Appointment> implements _Appointment {} - +///Model der des Appointments in der Datenbank class _Appointment { @primaryKey int id; diff --git a/middleman/lib/model/person.dart b/middleman/lib/model/person.dart index 562b382..546d719 100644 --- a/middleman/lib/model/person.dart +++ b/middleman/lib/model/person.dart @@ -10,7 +10,7 @@ class User extends ManagedObject<_User> implements _User,ManagedAuthResourceOwne class Contact extends ManagedObject<_Contact> implements _Contact {} - +///Model der des Contacts in der Datenbank class _Contact{ @Column(unique: false,nullable: true) String note; @@ -31,7 +31,7 @@ class _Contact{ String email; } - +///Model der des Users in der Datenbank class _User extends ResourceOwnerTableDefinition { @Column(unique: false, nullable: true) -- GitLab From 5b576e1290a7c255c697ae5606c878b8cb75cc34 Mon Sep 17 00:00:00 2001 From: Schindler'sKiste Date: Fri, 21 Jun 2019 11:31:21 +0200 Subject: [PATCH 2/2] kein KOmmentar --- frontend/lib/src/view/components/register_component.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/frontend/lib/src/view/components/register_component.dart b/frontend/lib/src/view/components/register_component.dart index 9ecbd44..3b76423 100644 --- a/frontend/lib/src/view/components/register_component.dart +++ b/frontend/lib/src/view/components/register_component.dart @@ -2,7 +2,6 @@ import 'package:angular/angular.dart'; import 'package:angular_forms/angular_forms.dart'; import 'package:angular_router/angular_router.dart'; import 'package:demo/src/view/components/login_component.dart'; -import 'package:demo/src/view/services/person_service.dart'; import 'package:demo/src/view/services/register_service.dart'; import '../../model/person.dart'; -- GitLab