From d72b8d9294b4f4da94dcf170dff63cfca4d92944 Mon Sep 17 00:00:00 2001 From: Vincent BENOIT Date: Mon, 24 Oct 2022 11:58:56 +0200 Subject: [PATCH] =?UTF-8?q?mise=20=C3=A0=20jour=20de=20la=20page=20de=20lo?= =?UTF-8?q?gs=20et=20correction=20de=20bugs=20sur=20les=20autres=20pages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workspace/account/account.component.css | 4 +- .../workspace/account/account.component.ts | 11 ++++-- .../home/workspace/hours/hours.component.ts | 4 +- .../home/workspace/infos/infos.component.css | 16 ++++++++ .../home/workspace/infos/infos.component.html | 10 ++++- .../home/workspace/infos/infos.component.ts | 9 ++++- .../home/workspace/logs/logs.component.css | 38 ++++++++++++++++++- .../home/workspace/logs/logs.component.html | 36 ++++++++++++++++-- .../home/workspace/logs/logs.component.ts | 32 +++++++++++++--- .../parametres/parametres.component.ts | 13 +++++-- src/app/services/backend/backend.service.ts | 10 +++++ 11 files changed, 162 insertions(+), 21 deletions(-) diff --git a/src/app/components/home/workspace/account/account.component.css b/src/app/components/home/workspace/account/account.component.css index 56d6991..a3f68fe 100644 --- a/src/app/components/home/workspace/account/account.component.css +++ b/src/app/components/home/workspace/account/account.component.css @@ -6,8 +6,8 @@ form { /*margin-left: 100px;*/ - width: 50%; - min-width: 50%; + width: 70%; + min-width: 70%; } mat-label { diff --git a/src/app/components/home/workspace/account/account.component.ts b/src/app/components/home/workspace/account/account.component.ts index b4a9bda..e0356a7 100644 --- a/src/app/components/home/workspace/account/account.component.ts +++ b/src/app/components/home/workspace/account/account.component.ts @@ -49,9 +49,14 @@ export class AccountComponent implements OnInit { this.bs.updatePasswd(data).subscribe( data => { this.toast.success("Mise à jour réussie"); - }, error => { - this.toast.error("Erreur de mise à jour du mot de passe"); - }); + }, err => { + if(err.status == 401) { + this.router.navigateByUrl("/login"); + } else { + this.toast.error(err.error.description); + } + } + ); } } diff --git a/src/app/components/home/workspace/hours/hours.component.ts b/src/app/components/home/workspace/hours/hours.component.ts index f77545a..dbdd2a9 100644 --- a/src/app/components/home/workspace/hours/hours.component.ts +++ b/src/app/components/home/workspace/hours/hours.component.ts @@ -33,7 +33,7 @@ export class HoursComponent implements OnInit { if(err.status == 401) { this.router.navigateByUrl("/login"); } else { - this.toast.error("Erreur de récupération des horaires"); + this.toast.error(err.error.description); } this.isProcessing = false; } @@ -48,7 +48,7 @@ export class HoursComponent implements OnInit { if(err.status == 401) { this.router.navigateByUrl("/login"); } else { - this.toast.error("Erreur de mise à jour des horaires"); + this.toast.error(err.error.description); } } ); diff --git a/src/app/components/home/workspace/infos/infos.component.css b/src/app/components/home/workspace/infos/infos.component.css index e69de29..102a990 100644 --- a/src/app/components/home/workspace/infos/infos.component.css +++ b/src/app/components/home/workspace/infos/infos.component.css @@ -0,0 +1,16 @@ +.container { + /* display: flex; */ + /*background-color: #b8b8b8;*/ + margin-bottom: 100px; + overflow-x: hidden; + overflow-y: auto; +} + +.process { + width: 100%; + height: 75%; +} + +.mat-spinner { + margin-top: 3rem; +} diff --git a/src/app/components/home/workspace/infos/infos.component.html b/src/app/components/home/workspace/infos/infos.component.html index a939696..e30391c 100644 --- a/src/app/components/home/workspace/infos/infos.component.html +++ b/src/app/components/home/workspace/infos/infos.component.html @@ -1 +1,9 @@ -

infos works!

+
+ +
+
+
diff --git a/src/app/components/home/workspace/infos/infos.component.ts b/src/app/components/home/workspace/infos/infos.component.ts index 5eb4f08..86a4d0c 100644 --- a/src/app/components/home/workspace/infos/infos.component.ts +++ b/src/app/components/home/workspace/infos/infos.component.ts @@ -1,4 +1,8 @@ import { Component, OnInit } from '@angular/core'; +import { Router } from '@angular/router'; +import { BackendService } from '../../../../services/backend/backend.service'; +import { Log } from '../../../../models/log.model'; +import { ToastrService } from 'ngx-toastr'; @Component({ selector: 'app-infos', @@ -6,8 +10,11 @@ import { Component, OnInit } from '@angular/core'; styleUrls: ['./infos.component.css'] }) export class InfosComponent implements OnInit { + isProcessing:boolean = true; - constructor() { } + constructor( private bs:BackendService, + private router:Router, + private toast:ToastrService ) { } ngOnInit(): void { } diff --git a/src/app/components/home/workspace/logs/logs.component.css b/src/app/components/home/workspace/logs/logs.component.css index 91836db..1768627 100644 --- a/src/app/components/home/workspace/logs/logs.component.css +++ b/src/app/components/home/workspace/logs/logs.component.css @@ -8,7 +8,11 @@ .process { width: 100%; - height: 75%; + height: 100%; +} + +.mat-spinner { + margin-top: 3rem; } .mat-card.scrollable-content { @@ -45,3 +49,35 @@ div.ERROR { margin-bottom: 0.2rem; background-color: red; } + +.logHeaderDebug { + border-radius:5px; + padding: 0.45rem; + background-color: lightblue; + margin-bottom: 0.8rem; + font-size:smaller; +} + +.logHeaderInfo { + border-radius:5px; + padding: 0.45rem; + background-color: lightgreen; + margin-bottom: 0.8rem; + font-size:smaller; +} + +.logHeaderWarn { + border-radius:5px; + padding: 0.45rem; + background-color: orange; + margin-bottom: 0.8rem; + font-size:smaller; +} + +.logHeaderErr { + border-radius:5px; + padding: 0.45rem; + background-color: red; + margin-bottom: 0.8rem; + font-size:smaller; +} diff --git a/src/app/components/home/workspace/logs/logs.component.html b/src/app/components/home/workspace/logs/logs.component.html index d259707..d02002d 100644 --- a/src/app/components/home/workspace/logs/logs.component.html +++ b/src/app/components/home/workspace/logs/logs.component.html @@ -1,4 +1,4 @@ - +
- + +
DEBUG
+
INFO
+
WARNING
+
ERROR
+
+
{{log.datetime}} - {{log.msg}}
@@ -21,6 +27,30 @@
- plop2 +
+ +
+
+ + +
DEBUG
+
INFO
+
WARNING
+
ERROR
+
+ + +
+ {{log.datetime}} - {{log.msg}}
+ {{last ? scrollToBottom(): ''}} +
+
+
+
+
diff --git a/src/app/components/home/workspace/logs/logs.component.ts b/src/app/components/home/workspace/logs/logs.component.ts index 90da543..a55f0ae 100644 --- a/src/app/components/home/workspace/logs/logs.component.ts +++ b/src/app/components/home/workspace/logs/logs.component.ts @@ -13,7 +13,6 @@ export class LogsComponent implements OnInit { isProcessing:boolean = true; confLogs:Log[]; appLogs:Log[]; - //@ViewChild('myList') myList: ElementRef; gravity:string[] = ['DEBUG', 'INFO', 'WARNING', 'ERROR']; constructor( private bs:BackendService, @@ -21,18 +20,29 @@ export class LogsComponent implements OnInit { private toast:ToastrService ) { } ngOnInit(): void { - this.isProcessing = false; + this.bs.retreiveConfLogs().subscribe( + (datas:Log[]) => { + this.confLogs = datas; + this.isProcessing = false; + }, err => { + if(err.status == 401) { + this.router.navigateByUrl("/login"); + } else { + this.toast.error(err.error.description); + } + } + ); } scrollToBottom(): void { //this.myList.nativeElement.scrollTop = this.myList.nativeElement.scrollHeight; - console.log("plop"); } onTabChanged(event:any): void { switch(event.tab.textLabel) { case 'Configurateur.log': console.log("configurateur"); + this.isProcessing = true; this.bs.retreiveConfLogs().subscribe( (datas:Log[]) => { this.confLogs = datas; @@ -41,14 +51,26 @@ export class LogsComponent implements OnInit { if(err.status == 401) { this.router.navigateByUrl("/login"); } else { - this.toast.error("Erreur de mise à jour des horaires"); + this.toast.error(err.error.description); } } - ); break; case 'KineIntercom.log': console.log("kineintercom"); + this.isProcessing = true; + this.bs.retreiveAppLogs().subscribe( + (datas:Log[]) => { + this.appLogs = datas; + this.isProcessing = false; + }, err => { + if(err.status == 401) { + this.router.navigateByUrl("/login"); + } else { + this.toast.error(err.error.description); + } + } + ); break; default: break; diff --git a/src/app/components/home/workspace/parametres/parametres.component.ts b/src/app/components/home/workspace/parametres/parametres.component.ts index 6a7f1ab..6af9244 100644 --- a/src/app/components/home/workspace/parametres/parametres.component.ts +++ b/src/app/components/home/workspace/parametres/parametres.component.ts @@ -54,8 +54,11 @@ export class ParametresComponent implements OnInit { this.pinNumber = data.code_pin; this.isProcessing = false; }, err => { - this.toast.error("Erreur de récupération des paramètres"); - this.isProcessing = false; + if(err.status == 401) { + this.router.navigateByUrl("/login"); + } else { + this.toast.error(err.error.description); + } } ); } @@ -100,7 +103,11 @@ export class ParametresComponent implements OnInit { data => { this.toast.success("Mise à jour des paramètres réussie"); }, err => { - this.toast.error("Erreur de mise à jour des paramètres"); + if(err.status == 401) { + this.router.navigateByUrl("/login"); + } else { + this.toast.error(err.error.description); + } } ); } diff --git a/src/app/services/backend/backend.service.ts b/src/app/services/backend/backend.service.ts index f0f2a33..5be809e 100644 --- a/src/app/services/backend/backend.service.ts +++ b/src/app/services/backend/backend.service.ts @@ -126,6 +126,16 @@ export class BackendService { withCredentials: true }; return this.http.get(host+"/api/configurateur/conf_logs", options); + } + retreiveAppLogs():Observable { + let host=environment.host; + const options = { + headers: new HttpHeaders({ + 'Content-Type' : 'application/json', + }), + withCredentials: true + }; + return this.http.get(host+"/api/configurateur/app_logs", options); } }