Skip to content

Commit 65d99b9

Browse files
authored
Merge pull request #10 from AdonisVienet/localBapt
push page d'accueil chocolate
2 parents 67fb214 + 9ee94a3 commit 65d99b9

File tree

8 files changed

+125
-55
lines changed

8 files changed

+125
-55
lines changed

src/app/app.module.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@ import { GarageService } from './services/garage.service';
1818
import { TerrainService } from './services/terrain.service';
1919
import { VisiteService } from './services/visite.service';
2020
import { AppService } from './app.service';
21-
import { MatMenuModule } from '@angular/material/menu';
22-
import { MatIconModule } from '@angular/material/icon';
2321

2422
@NgModule({
2523
imports: [
@@ -29,9 +27,7 @@ import { MatIconModule } from '@angular/material/icon';
2927
ReactiveFormsModule,
3028
RouterModule,
3129
AppRoutingModule,
32-
ComponentsModule,
33-
MatMenuModule,
34-
MatIconModule
30+
ComponentsModule
3531
],
3632
declarations: [
3733
AppComponent,

src/app/components/navbar/navbar.component.html

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<nav class="navbar navbar-expand-lg navbar-transparent navbar-absolute fixed-top">
2-
<div class="container-fluid">
2+
<div class="container-fluid" style="background-color: chocolate; opacity: 1;">
33
<div class="navbar-wrapper">
4-
<a class="navbar-brand" href="javascript:void(0)">{{getTitle()}}</a>
4+
<h2 class="navbar-brand" href="javascript:void(0)" style="color: black;"><b>{{getTitle()}}</b></h2>
55
</div>
66
<button mat-raised-button class="navbar-toggler" type="button" (click)="sidebarToggle()">
77
<span class="sr-only">Toggle navigation</span>
@@ -29,19 +29,18 @@
2929
</a>
3030
</li>
3131
<li class="nav-item dropdown">
32-
<a class="nav-link" href="javascript:void(0)" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
32+
<a class="nav-link" href="javascript:void(0)" id="navbarDropdownMenuLink" data-toggle="dropdown"
33+
aria-haspopup="true" aria-expanded="false">
3334
<i class="material-icons">notifications</i>
34-
<span class="notification">5</span>
35+
<span class="notification">3</span>
3536
<p>
3637
<span class="d-lg-none d-md-block">Some Actions</span>
3738
</p>
3839
</a>
3940
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownMenuLink">
40-
<a class="dropdown-item" href="javascript:void(0)">Mike John responded to your email</a>
41-
<a class="dropdown-item" href="javascript:void(0)">You have 5 new tasks</a>
42-
<a class="dropdown-item" href="javascript:void(0)">You're now friend with Andrew</a>
43-
<a class="dropdown-item" href="javascript:void(0)">Another Notification</a>
44-
<a class="dropdown-item" href="javascript:void(0)">Another One</a>
41+
<a class="dropdown-item" href="javascript:void(0)">Confirmez votre adresse mail</a>
42+
<a class="dropdown-item" href="javascript:void(0)">Une envie ? Réservez une offre !</a>
43+
<a class="dropdown-item" href="javascript:void(0)">Ne ratez aucune occasion, suivez nous</a>
4544
</div>
4645
</li>
4746
<li class="nav-item">
@@ -111,4 +110,4 @@
111110
</form>
112111
</div>
113112
</div>
114-
</nav> -->
113+
</nav> -->

src/app/components/utilisateur/utilisateur.component.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ export class UtilisateurComponent implements OnInit {
1313

1414
users!: any[];
1515
roles!: any[];
16+
selectedFiles?: FileList;
17+
currentFileUpload?: File;
1618
utilisateur: Utilisateur = new Utilisateur();
1719

1820
constructor(private utilisateurService: UtilisateurService, private roleService: RoleService, private router: Router) {
@@ -32,13 +34,20 @@ export class UtilisateurComponent implements OnInit {
3234
this.roleService.findAll().subscribe(data => { this.roles = data; });
3335
}
3436

35-
saveUtilisateur() {
36-
this.utilisateurService.save(this.utilisateur).subscribe(
37-
() => {
38-
this.findAllUtilisateurs(); // MAJ de la liste des utilisateurs
39-
this.utilisateur = new Utilisateur(); // Vider le formulaire pour avoir une nouvelle ligne
40-
}
41-
)
37+
selectFile(event: any) {
38+
this.selectedFiles = event.target.files;
39+
}
40+
41+
42+
//Méthode save :
43+
save() {
44+
this.currentFileUpload = this.selectedFiles?.item(0) as File;
45+
this.utilisateurService.save(this.currentFileUpload, this.utilisateur).subscribe(() => {
46+
this.findAllUtilisateurs();
47+
this.utilisateur = new Utilisateur();
48+
this.selectedFiles = undefined;
49+
})
50+
4251
}
4352
deleteUtilisateur(id: number) {
4453
this.utilisateurService.delete(id).subscribe(

src/app/dashboard/dashboard.component.html

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
<!DOCTYPE html>
22
<html>
33
<div>
4-
<div style="position: relative; left: 10px;">
5-
<br>
6-
<br>
7-
<br>
8-
<br>
4+
5+
<br>
6+
<br>
7+
<br>
8+
<br>
9+
<div style="position: relative; left: 10px; background-color: white; border-color: black; border-width: thick;">
910
<table>
1011
<th>
1112
<h2 style="color: chocolate;"><b>Qui sommes nous ? </b></h2>
@@ -27,8 +28,8 @@ <h3 style="color: chocolate;"><b>Comment ? </b></h3>
2728
</div>
2829
</th>
2930
<th>
30-
<img src="assets/img/maison.jpg" width="250" height="200"
31-
style="position: relative; left: 350px; top: 150px;">
31+
<img src="assets/img/maison.jpg" width="350" height="250"
32+
style="position: relative; left: 350px; top: 150px; border-color: black; border-width: 5px;">
3233
</th>
3334
</table>
3435
</div>

src/app/layouts/admin-layout/admin-layout.routing.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,14 @@ export const AdminLayoutRoutes: Routes = [
5353
// component: UpgradeComponent
5454
// }]
5555
// }
56-
{ path: 'login', component: LoginComponent },
57-
{ path: 'home', component: DashboardComponent }
56+
{ path: 'login', component: LoginComponent },
57+
{ path: 'home', component: DashboardComponent }
5858
/*{ path: 'dashboard', component: DashboardComponent }*/,
59-
{ path: 'user-profile', component: UserProfileComponent },
60-
{ path: 'table-list', component: TableListComponent },
61-
{ path: 'typography', component: TypographyComponent },
62-
{ path: 'icons', component: IconsComponent },
63-
{ path: 'maps', component: MapsComponent },
64-
{ path: 'notifications', component: NotificationsComponent },
65-
{ path: 'upgrade', component: UpgradeComponent },
59+
{ path: 'user-profile', component: UserProfileComponent },
60+
{ path: 'table-list', component: TableListComponent },
61+
{ path: 'typography', component: TypographyComponent },
62+
{ path: 'icons', component: IconsComponent },
63+
{ path: 'maps', component: MapsComponent },
64+
{ path: 'notifications', component: NotificationsComponent },
65+
{ path: 'upgrade', component: UpgradeComponent },
6666
];

src/app/services/utilisateur.service.ts

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
import { HttpClient } from '@angular/common/http';
1+
import { HttpClient, HttpRequest } from '@angular/common/http';
22
import { Injectable } from '@angular/core';
3+
import { Utilisateur } from 'app/model/utilisateur';
34
import { Observable } from 'rxjs';
45

56
@Injectable({
@@ -9,24 +10,30 @@ export class UtilisateurService {
910

1011
private BASE_URL = "http://localhost:8080/utilisateurs"
1112

12-
constructor(private httpClient:HttpClient) { }
13-
14-
public findAll() : Observable<any>
15-
{return this.httpClient.get(this.BASE_URL); }
16-
17-
public save(utilisateur:any) : Observable<any>
18-
{return this.httpClient.post(this.BASE_URL, utilisateur); }
13+
constructor(private httpClient: HttpClient) { }
14+
15+
public findAll(): Observable<any> { return this.httpClient.get(this.BASE_URL); }
16+
17+
public save(image: File, utilisateur: Utilisateur): Observable<any> {
18+
const formData = new FormData(); //permet d'utiliser le resquestParam de la méthode save de la partie back
19+
formData.append('nomFront', utilisateur.nomUtilisateur);
20+
formData.append('prenomFront', utilisateur.prenomUtilisateur);
21+
formData.append('usernameFront', utilisateur.username);
22+
formData.append('passwordFront', utilisateur.password);
23+
formData.append('imageFront', image);
24+
const requestHttp = new HttpRequest('POST', this.BASE_URL, formData, {
25+
reportProgress: true, responseType: 'text'
26+
})
27+
return this.httpClient.request(requestHttp);
28+
}
1929

20-
public delete(id:number) : Observable<any>
21-
{return this.httpClient.delete(this.BASE_URL + "/" + id); }
30+
public delete(id: number): Observable<any> { return this.httpClient.delete(this.BASE_URL + "/" + id); }
2231

23-
public findOne(id:number) : Observable<any>
24-
{return this.httpClient.get(this.BASE_URL + "/" + id); }
32+
public findOne(id: number): Observable<any> { return this.httpClient.get(this.BASE_URL + "/" + id); }
2533

26-
public findOneUsername(username:string) : Observable<any>
27-
{ return this.httpClient.get(this.BASE_URL + "/" + username); }
34+
public findOneUsername(username: string): Observable<any> { return this.httpClient.get(this.BASE_URL + "/" + username); }
2835

29-
public update(utilisateur:any):Observable<any>{
36+
public update(utilisateur: any): Observable<any> {
3037
var utilisateurJSON = JSON.parse(utilisateur);
3138
return this.httpClient.put(this.BASE_URL + "/" + utilisateurJSON.idUtilisateur, utilisateurJSON);
3239
}

src/app/user-profile/user-profile.component.html

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
<!--<div>
2+
<h1>Ajouter un utilisateur</h1>
3+
<form (ngSubmit)="save()">
4+
<table>
5+
<tr>
6+
<td>Nom</td>
7+
<td><input type="text" [(ngModel)]="utilisateur.nomUtilisateur" name="nomUtilisateur" /></td>
8+
</tr>
9+
<tr>
10+
<td>Prénom</td>
11+
<td><input type="text" [(ngModel)]="utilisateur.prenomUtilisateur" name="prenomUtilisateur" /></td>
12+
</tr>
13+
<tr>
14+
<td colspan="2"><button (click)="save()">Ajouter</button></td>
15+
</tr>
16+
</table>
17+
</form>
18+
</div>-->
19+
20+
21+
22+
23+
24+
25+
126
<div class="main-content">
227
<div class="container-fluid">
328
<div class="row">
Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1+
import { HttpClient, HttpRequest } from '@angular/common/http';
12
import { Component, OnInit } from '@angular/core';
3+
import { Router } from '@angular/router';
4+
import { Utilisateur } from 'app/model/utilisateur';
5+
import { RoleService } from 'app/services/role.service';
6+
import { UtilisateurService } from 'app/services/utilisateur.service';
7+
import { Observable } from 'rxjs';
28

39
@Component({
410
selector: 'app-user-profile',
@@ -7,9 +13,36 @@ import { Component, OnInit } from '@angular/core';
713
})
814
export class UserProfileComponent implements OnInit {
915

10-
constructor() { }
16+
private BASE_URL = "http://localhost:8080/utilisateurs";
17+
users!: any[];
18+
roles!: any[];
19+
utilisateur: Utilisateur = new Utilisateur();
1120

12-
ngOnInit() {
21+
constructor(private utilisateurService: UtilisateurService, private roleService: RoleService, private httpClient: HttpClient, private router: Router) {
22+
23+
}
24+
25+
ngOnInit(): void {
26+
this.findAllUtilisateurs();
27+
this.findAllRole();
28+
}
29+
30+
findAllUtilisateurs() {
31+
this.utilisateurService.findAll().subscribe(data => { this.users = data; });
32+
}
33+
34+
findAllRole() {
35+
this.roleService.findAll().subscribe(data => { this.roles = data; });
36+
}
37+
38+
39+
40+
deleteUtilisateur(id: number) {
41+
this.utilisateurService.delete(id).subscribe(
42+
() => {
43+
this.findAllUtilisateurs();
44+
}
45+
)
1346
}
1447

1548
}

0 commit comments

Comments
 (0)