From 1dc01be07275f703980cfa1e5e42303e9521cb2e Mon Sep 17 00:00:00 2001 From: Marcel Meyer Date: Thu, 3 Nov 2022 16:37:30 +0100 Subject: [PATCH 1/2] added member table, member interface, address interface, favourtieRoutes interface, difficultyLevelEnum and member service --- package-lock.json | 14 ++++ package.json | 3 +- src/app/app-routing.module.ts | 4 +- src/app/app.module.ts | 26 +++++- src/app/members/members-list.component.html | 79 +++++++++++++++++++ src/app/members/members-list.component.scss | 11 +++ ...spec.ts => members-list.component.spec.ts} | 10 +-- src/app/members/members-list.component.ts | 68 ++++++++++++++++ src/app/members/members.component.html | 1 - src/app/members/members.component.scss | 0 src/app/members/members.component.ts | 15 ---- src/app/models/address.ts | 5 ++ src/app/models/difficultyLevelEnum.ts | 6 ++ src/app/models/favouriteRoutes.ts | 5 ++ src/app/models/member.ts | 10 +++ src/app/services/member.service.spec.ts | 16 ++++ src/app/services/member.service.ts | 31 ++++++++ src/environments/environment.ts | 3 +- src/styles.scss | 2 +- 19 files changed, 280 insertions(+), 29 deletions(-) create mode 100644 src/app/members/members-list.component.html create mode 100644 src/app/members/members-list.component.scss rename src/app/members/{members.component.spec.ts => members-list.component.spec.ts} (58%) create mode 100644 src/app/members/members-list.component.ts delete mode 100644 src/app/members/members.component.html delete mode 100644 src/app/members/members.component.scss delete mode 100644 src/app/members/members.component.ts create mode 100644 src/app/models/address.ts create mode 100644 src/app/models/difficultyLevelEnum.ts create mode 100644 src/app/models/favouriteRoutes.ts create mode 100644 src/app/models/member.ts create mode 100644 src/app/services/member.service.spec.ts create mode 100644 src/app/services/member.service.ts diff --git a/package-lock.json b/package-lock.json index f9fad1a..be9bea4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,7 @@ "@angular/platform-browser": "^14.2.0", "@angular/platform-browser-dynamic": "^14.2.0", "@angular/router": "^14.2.0", + "hammerjs": "^2.0.8", "rxjs": "~7.5.0", "tslib": "^2.3.0", "zone.js": "~0.11.4" @@ -6048,6 +6049,14 @@ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, + "node_modules/hammerjs": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", + "integrity": "sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -16124,6 +16133,11 @@ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, + "hammerjs": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", + "integrity": "sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==" + }, "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", diff --git a/package.json b/package.json index 20fd0b4..997d35f 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "@angular/platform-browser": "^14.2.0", "@angular/platform-browser-dynamic": "^14.2.0", "@angular/router": "^14.2.0", + "hammerjs": "^2.0.8", "rxjs": "~7.5.0", "tslib": "^2.3.0", "zone.js": "~0.11.4" @@ -37,4 +38,4 @@ "karma-jasmine-html-reporter": "~2.0.0", "typescript": "~4.7.2" } -} \ No newline at end of file +} diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index f32f615..761e21b 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -1,11 +1,11 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; -import { MembersComponent } from './members/members.component' +import { MembersListComponent } from './members/members-list.component' import { RoutesComponent } from './routes/routes.component' const routes: Routes = [ { - path:'members', component:MembersComponent + path:'members', component:MembersListComponent }, { path:'routes', component:RoutesComponent diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 927e1f0..0ff66d8 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -5,20 +5,40 @@ import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MatMenuModule} from '@angular/material/menu'; -import { MembersComponent } from './members/members.component'; +import { MembersListComponent } from './members/members-list.component'; import { RoutesComponent } from './routes/routes.component' +import {FormsModule} from "@angular/forms"; +import {MatTableModule} from "@angular/material/table"; +import {HttpClientModule} from "@angular/common/http"; +import {MatSliderModule} from "@angular/material/slider"; +import {MatPaginatorModule} from "@angular/material/paginator"; +import {MatSortModule} from "@angular/material/sort"; +import {MatFormFieldModule} from "@angular/material/form-field"; +import {MatInputModule} from "@angular/material/input"; +import {MatButtonModule} from '@angular/material/button'; +import {MatIconModule} from "@angular/material/icon"; @NgModule({ declarations: [ AppComponent, - MembersComponent, + MembersListComponent, RoutesComponent ], imports: [ BrowserModule, AppRoutingModule, BrowserAnimationsModule, - MatMenuModule + MatMenuModule, + MatPaginatorModule, + MatSortModule, + MatFormFieldModule, + MatInputModule, + FormsModule, + MatTableModule, + HttpClientModule, + MatSliderModule, + MatButtonModule, + MatIconModule ], providers: [], bootstrap: [AppComponent] diff --git a/src/app/members/members-list.component.html b/src/app/members/members-list.component.html new file mode 100644 index 0000000..029b76a --- /dev/null +++ b/src/app/members/members-list.component.html @@ -0,0 +1,79 @@ +
+ + Member Table + + +
+
+ + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
ID {{member.id}} Firstname {{member.firstName}} Lastname {{member.lastName}} Details + + Update + + Delete + +
+
+
+
+
+
    +
  • +
    Id: {{member.id}}
    + +
    Firstname: {{member.firstName}}
    + +
    Lastname: {{member.lastName}}
    + +
    Adresse: {{member.addressDto.street}}
    + +
    Favourite Routes: {{route.name}}
    + +
    + + +
  • +
+
+
+ + + + + diff --git a/src/app/members/members-list.component.scss b/src/app/members/members-list.component.scss new file mode 100644 index 0000000..4124eda --- /dev/null +++ b/src/app/members/members-list.component.scss @@ -0,0 +1,11 @@ +table { + width: 100%; + overflow-x: auto; + overflow-y: hidden; + min-width: 500px; +} + +th.mat-header-cell { + text-align: left; + max-width: 300px; +} diff --git a/src/app/members/members.component.spec.ts b/src/app/members/members-list.component.spec.ts similarity index 58% rename from src/app/members/members.component.spec.ts rename to src/app/members/members-list.component.spec.ts index f626726..63ccbba 100644 --- a/src/app/members/members.component.spec.ts +++ b/src/app/members/members-list.component.spec.ts @@ -1,18 +1,18 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { MembersComponent } from './members.component'; +import { MembersListComponent } from './members-list.component'; describe('MembersComponent', () => { - let component: MembersComponent; - let fixture: ComponentFixture; + let component: MembersListComponent; + let fixture: ComponentFixture; beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [ MembersComponent ] + declarations: [ MembersListComponent ] }) .compileComponents(); - fixture = TestBed.createComponent(MembersComponent); + fixture = TestBed.createComponent(MembersListComponent); component = fixture.componentInstance; fixture.detectChanges(); }); diff --git a/src/app/members/members-list.component.ts b/src/app/members/members-list.component.ts new file mode 100644 index 0000000..f2d0874 --- /dev/null +++ b/src/app/members/members-list.component.ts @@ -0,0 +1,68 @@ +import {AfterViewInit, Component, OnInit, ViewChild} from '@angular/core'; +import {MemberService} from "../member.service"; +import {Member} from "../member"; +import {HttpErrorResponse} from "@angular/common/http"; +import {MatPaginator} from "@angular/material/paginator"; +import {MatSort, Sort} from "@angular/material/sort"; +import {LiveAnnouncer} from "@angular/cdk/a11y"; + + + + + +@Component({ + selector: 'app-members', + templateUrl: './members-list.component.html', + styleUrls: ['./members-list.component.scss'] +}) +export class MembersListComponent implements OnInit, AfterViewInit { + + + members: Member[] = []; + displayedColumns: string[] = ['id', 'firstname', 'lastname', 'details', 'update', 'delete']; + dataSource: Member[]= []; + + //@ViewChild(MatSort) sort: MatSort; + + constructor(private memberService: MemberService) { } + + ngOnInit(): void { + this.getMembers(); + } + + ngAfterViewInit(): void { + //this.dataSource.sort = this.sort; + } + + public getMembers(): void { + this.memberService.getMembers().subscribe( + (response:Member[]) => { + console.log(response); + this.members = response; + this.dataSource = response; + }, + (error: HttpErrorResponse) => { + alert(error.message); + } + ) + } + + public deleteMember() { + + } + + public redirectToDetails = (id: number) => { + + } + + public redirectToUpdate = (id: string) => { + + } + + public redirectToDelete = (id: string) => { + + } + + + +} diff --git a/src/app/members/members.component.html b/src/app/members/members.component.html deleted file mode 100644 index 9f48fd4..0000000 --- a/src/app/members/members.component.html +++ /dev/null @@ -1 +0,0 @@ -

members works!

diff --git a/src/app/members/members.component.scss b/src/app/members/members.component.scss deleted file mode 100644 index e69de29..0000000 diff --git a/src/app/members/members.component.ts b/src/app/members/members.component.ts deleted file mode 100644 index 13b1f63..0000000 --- a/src/app/members/members.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component, OnInit } from '@angular/core'; - -@Component({ - selector: 'app-members', - templateUrl: './members.component.html', - styleUrls: ['./members.component.scss'] -}) -export class MembersComponent implements OnInit { - - constructor() { } - - ngOnInit(): void { - } - -} diff --git a/src/app/models/address.ts b/src/app/models/address.ts new file mode 100644 index 0000000..a843e7c --- /dev/null +++ b/src/app/models/address.ts @@ -0,0 +1,5 @@ +export interface Address { + street: string; + houseNumber: number; + postCode: number; +} diff --git a/src/app/models/difficultyLevelEnum.ts b/src/app/models/difficultyLevelEnum.ts new file mode 100644 index 0000000..c996df4 --- /dev/null +++ b/src/app/models/difficultyLevelEnum.ts @@ -0,0 +1,6 @@ +export enum difficultyLevelEnum { + easy, + medium, + hard, + hell +} diff --git a/src/app/models/favouriteRoutes.ts b/src/app/models/favouriteRoutes.ts new file mode 100644 index 0000000..66b95fd --- /dev/null +++ b/src/app/models/favouriteRoutes.ts @@ -0,0 +1,5 @@ +export interface FavouriteRoute { + id: number; + name: string; + difficultyLevelEnum: null; +} diff --git a/src/app/models/member.ts b/src/app/models/member.ts new file mode 100644 index 0000000..a58a09e --- /dev/null +++ b/src/app/models/member.ts @@ -0,0 +1,10 @@ +import {Address} from "../address"; +import {FavouriteRoute} from "../favouriteRoutes"; + +export interface Member { + id: number; + firstName: string; + lastName: string; + addressDto: Address; + favouriteRoutes: FavouriteRoute[]; +} diff --git a/src/app/services/member.service.spec.ts b/src/app/services/member.service.spec.ts new file mode 100644 index 0000000..8928158 --- /dev/null +++ b/src/app/services/member.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { MemberService } from './member.service'; + +describe('MemberService', () => { + let service: MemberService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(MemberService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/services/member.service.ts b/src/app/services/member.service.ts new file mode 100644 index 0000000..6cb0333 --- /dev/null +++ b/src/app/services/member.service.ts @@ -0,0 +1,31 @@ +import { Injectable } from '@angular/core'; +import {HttpClient} from "@angular/common/http"; +import {Observable} from "rxjs"; +import {Member} from "../models/member"; +import {environment} from "../../environments/environment"; + +@Injectable({ + providedIn: 'root' +}) +export class MemberService { + private apiServerUrl = environment.apiServerUrl; + + constructor(private http: HttpClient) { } + + public getMembers(): Observable { + return this.http.get(`${this.apiServerUrl}/members/all`); + } + + public addMember(member: Member): Observable { + return this.http.post(`${this.apiServerUrl}/member/add`, member); + } + + /*public updateMember(memberId: number): Observable { + return this.http.put(`${this.apiServerUrl}/member/${memberId}`); + }*/ + + public deleteMember(memberId: number): Observable { + return this.http.delete(`${this.apiServerUrl}/member/${memberId}`); + } + +} diff --git a/src/environments/environment.ts b/src/environments/environment.ts index f56ff47..dd2f00b 100644 --- a/src/environments/environment.ts +++ b/src/environments/environment.ts @@ -3,7 +3,8 @@ // The list of file replacements can be found in `angular.json`. export const environment = { - production: false + production: false, + apiServerUrl: 'http://localhost:8080' }; /* diff --git a/src/styles.scss b/src/styles.scss index 324ec5d..24b2054 100644 --- a/src/styles.scss +++ b/src/styles.scss @@ -1,4 +1,4 @@ /* You can add global styles to this file, and also import other style files */ -html, body { height: 100%; box-sizing: border-box; font-size: 16px} +html, body { height: 100%; margin: 20px; box-sizing: border-box; font-size: 16px} body { margin: 0; font-family: 'Segoe UI', Roboto, "Helvetica Neue", sans-serif; } -- GitLab From abb0579815c4e7066ea066e30fc9758adbfef347 Mon Sep 17 00:00:00 2001 From: Marcel Meyer Date: Fri, 4 Nov 2022 11:48:09 +0100 Subject: [PATCH 2/2] added member table --- src/app/app-routing.module.ts | 4 +- src/app/app.module.ts | 4 +- .../members/members-list.component.html | 41 +++---- .../members/members-list.component.scss | 4 + .../members/members-list.component.spec.ts | 0 .../members/members-list.component.ts | 103 ++++++++++++++++++ src/app/{ => components}/routes/route.ts | 0 .../routes/routes.component.html | 0 .../routes/routes.component.scss | 0 .../routes/routes.component.spec.ts | 0 .../routes/routes.component.ts | 0 src/app/members/members-list.component.ts | 68 ------------ src/app/models/address.ts | 2 +- src/app/models/member.ts | 4 +- 14 files changed, 132 insertions(+), 98 deletions(-) rename src/app/{ => components}/members/members-list.component.html (60%) rename src/app/{ => components}/members/members-list.component.scss (76%) rename src/app/{ => components}/members/members-list.component.spec.ts (100%) create mode 100644 src/app/components/members/members-list.component.ts rename src/app/{ => components}/routes/route.ts (100%) rename src/app/{ => components}/routes/routes.component.html (100%) rename src/app/{ => components}/routes/routes.component.scss (100%) rename src/app/{ => components}/routes/routes.component.spec.ts (100%) rename src/app/{ => components}/routes/routes.component.ts (100%) delete mode 100644 src/app/members/members-list.component.ts diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 761e21b..24aefee 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -1,7 +1,7 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; -import { MembersListComponent } from './members/members-list.component' -import { RoutesComponent } from './routes/routes.component' +import { MembersListComponent } from './components/members/members-list.component' +import { RoutesComponent } from './components/routes/routes.component' const routes: Routes = [ { diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 0ff66d8..99eca01 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -5,8 +5,8 @@ import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MatMenuModule} from '@angular/material/menu'; -import { MembersListComponent } from './members/members-list.component'; -import { RoutesComponent } from './routes/routes.component' +import { MembersListComponent } from './components/members/members-list.component'; +import { RoutesComponent } from './components/routes/routes.component' import {FormsModule} from "@angular/forms"; import {MatTableModule} from "@angular/material/table"; import {HttpClientModule} from "@angular/common/http"; diff --git a/src/app/members/members-list.component.html b/src/app/components/members/members-list.component.html similarity index 60% rename from src/app/members/members-list.component.html rename to src/app/components/members/members-list.component.html index 029b76a..06aa41f 100644 --- a/src/app/members/members-list.component.html +++ b/src/app/components/members/members-list.component.html @@ -1,24 +1,24 @@
Member Table - +
-
- +
+ + + +
- + -
- -
- - + + - - + + @@ -29,14 +29,6 @@ - - - - - +
ID No. {{member.id}} Firstname Firstname {{member.firstName}} Lastname Lastname {{member.lastName}} Update - - Delete @@ -47,10 +39,13 @@
+ +
-
+ diff --git a/src/app/members/members-list.component.scss b/src/app/components/members/members-list.component.scss similarity index 76% rename from src/app/members/members-list.component.scss rename to src/app/components/members/members-list.component.scss index 4124eda..1a04422 100644 --- a/src/app/members/members-list.component.scss +++ b/src/app/components/members/members-list.component.scss @@ -9,3 +9,7 @@ th.mat-header-cell { text-align: left; max-width: 300px; } + +th.mat-sort-header-sorted { + color: black; +} diff --git a/src/app/members/members-list.component.spec.ts b/src/app/components/members/members-list.component.spec.ts similarity index 100% rename from src/app/members/members-list.component.spec.ts rename to src/app/components/members/members-list.component.spec.ts diff --git a/src/app/components/members/members-list.component.ts b/src/app/components/members/members-list.component.ts new file mode 100644 index 0000000..5049447 --- /dev/null +++ b/src/app/components/members/members-list.component.ts @@ -0,0 +1,103 @@ +import {AfterViewInit, Component, OnInit, ViewChild} from '@angular/core'; +import {MemberService} from "../../services/member.service"; +import {Member} from "../../models/member"; +import {HttpErrorResponse} from "@angular/common/http"; +import {MatPaginator} from "@angular/material/paginator"; +import {MatSort, Sort} from "@angular/material/sort"; +import {LiveAnnouncer} from "@angular/cdk/a11y"; +import {MatTableDataSource} from "@angular/material/table"; + + + + + +@Component({ + selector: 'app-members', + templateUrl: './members-list.component.html', + styleUrls: ['./members-list.component.scss'] +}) +export class MembersListComponent implements OnInit, AfterViewInit { + + private _filter!: string; + members: Member[] = []; + filteredMembers!: Member[]; + dataSource = new MatTableDataSource(this.members); + displayedColumns: string[] = ['id', 'firstName', 'lastName', 'details', 'delete']; + + constructor(private memberService: MemberService, private _liveAnnouncer: LiveAnnouncer) {} + + @ViewChild(MatPaginator) paginator!: MatPaginator; + @ViewChild(MatSort) sort!: MatSort; + + + ngOnInit(): void { + this.getMembers(); + } + + ngAfterViewInit(): void { + //this.dataSource.paginator = this.paginator; + //this.dataSource.sort = this.sort; + + } + + public getMembers(): void { + this.memberService.getMembers().subscribe( + (response:Member[]) => { + console.log(response); + this.members = response; + this.filteredMembers = response; + this.dataSource = new MatTableDataSource(response); + this.dataSource.paginator = this.paginator; + this.dataSource.sort = this.sort; + + }, + (error: HttpErrorResponse) => { + alert(error.message); + } + ) + } + + get filter(){ + return this._filter; + } + + set filter(value: string){ + this._filter = value; + this.filteredMembers = this.filterMembers(value); + this.writeLog(value); + this.writeLog(this.filteredMembers) + } + + writeLog(log: any){ + console.log(log); + } + + filterMembers(filter: string){ + return this.filteredMembers.filter((member: Member) => member.lastName.includes(filter)); + + } + + public deleteMember() { + + } + + public redirectToDetails = (id: number) => { + + } + + public redirectToUpdate = (id: string) => { + + } + + public redirectToDelete = (id: string) => { + + } + + announceSortChange(sortState: Sort) { + if (sortState.direction) { + this._liveAnnouncer.announce(`Sorted ${sortState.direction}ending`); + } else { + this._liveAnnouncer.announce('Sorting cleared'); + } + } +} diff --git a/src/app/routes/route.ts b/src/app/components/routes/route.ts similarity index 100% rename from src/app/routes/route.ts rename to src/app/components/routes/route.ts diff --git a/src/app/routes/routes.component.html b/src/app/components/routes/routes.component.html similarity index 100% rename from src/app/routes/routes.component.html rename to src/app/components/routes/routes.component.html diff --git a/src/app/routes/routes.component.scss b/src/app/components/routes/routes.component.scss similarity index 100% rename from src/app/routes/routes.component.scss rename to src/app/components/routes/routes.component.scss diff --git a/src/app/routes/routes.component.spec.ts b/src/app/components/routes/routes.component.spec.ts similarity index 100% rename from src/app/routes/routes.component.spec.ts rename to src/app/components/routes/routes.component.spec.ts diff --git a/src/app/routes/routes.component.ts b/src/app/components/routes/routes.component.ts similarity index 100% rename from src/app/routes/routes.component.ts rename to src/app/components/routes/routes.component.ts diff --git a/src/app/members/members-list.component.ts b/src/app/members/members-list.component.ts deleted file mode 100644 index f2d0874..0000000 --- a/src/app/members/members-list.component.ts +++ /dev/null @@ -1,68 +0,0 @@ -import {AfterViewInit, Component, OnInit, ViewChild} from '@angular/core'; -import {MemberService} from "../member.service"; -import {Member} from "../member"; -import {HttpErrorResponse} from "@angular/common/http"; -import {MatPaginator} from "@angular/material/paginator"; -import {MatSort, Sort} from "@angular/material/sort"; -import {LiveAnnouncer} from "@angular/cdk/a11y"; - - - - - -@Component({ - selector: 'app-members', - templateUrl: './members-list.component.html', - styleUrls: ['./members-list.component.scss'] -}) -export class MembersListComponent implements OnInit, AfterViewInit { - - - members: Member[] = []; - displayedColumns: string[] = ['id', 'firstname', 'lastname', 'details', 'update', 'delete']; - dataSource: Member[]= []; - - //@ViewChild(MatSort) sort: MatSort; - - constructor(private memberService: MemberService) { } - - ngOnInit(): void { - this.getMembers(); - } - - ngAfterViewInit(): void { - //this.dataSource.sort = this.sort; - } - - public getMembers(): void { - this.memberService.getMembers().subscribe( - (response:Member[]) => { - console.log(response); - this.members = response; - this.dataSource = response; - }, - (error: HttpErrorResponse) => { - alert(error.message); - } - ) - } - - public deleteMember() { - - } - - public redirectToDetails = (id: number) => { - - } - - public redirectToUpdate = (id: string) => { - - } - - public redirectToDelete = (id: string) => { - - } - - - -} diff --git a/src/app/models/address.ts b/src/app/models/address.ts index a843e7c..99fcc2e 100644 --- a/src/app/models/address.ts +++ b/src/app/models/address.ts @@ -1,5 +1,5 @@ export interface Address { street: string; houseNumber: number; - postCode: number; + postCode: string; } diff --git a/src/app/models/member.ts b/src/app/models/member.ts index a58a09e..89fa0a7 100644 --- a/src/app/models/member.ts +++ b/src/app/models/member.ts @@ -1,5 +1,5 @@ -import {Address} from "../address"; -import {FavouriteRoute} from "../favouriteRoutes"; +import {Address} from "./address"; +import {FavouriteRoute} from "./favouriteRoutes"; export interface Member { id: number; -- GitLab