From 97f74c9362838ee485512d567652e76cb76b2cc6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Zieli=C5=84ski?= Date: Tue, 6 Dec 2022 16:28:59 +0100 Subject: [PATCH] Main view improvements --- Frontend/src/app/app-routing.module.ts | 8 +++- Frontend/src/app/app.module.ts | 11 ++++- .../login-page/login-page.component.scss | 4 ++ .../login-page/login-page.component.ts | 11 +++-- .../app/interceptors/loader.interceptor.ts | 42 ++++++++++++++++++ .../app/main-view/main-view.component.html | 12 ++--- .../app/main-view/main-view.component.scss | 2 +- .../src/app/main-view/main-view.component.ts | 26 ++++++++--- .../dashboard/board/board.component.html | 1 + .../dashboard/board/board.component.scss | 0 .../dashboard/board/board.component.spec.ts | 25 +++++++++++ .../dashboard/board/board.component.ts | 19 ++++++++ .../dashboard/dashboard-routing.module.ts | 16 +++++++ .../app/modules/dashboard/dashboard.module.ts | 17 +++++++ Frontend/src/assets/loader.gif | Bin 64372 -> 55994 bytes Frontend/src/environments/environment.ts | 3 +- Frontend/src/manifest.webmanifest | 3 +- Frontend/src/styles.scss | 2 +- WebAPI/appsettings.json | 2 +- 19 files changed, 180 insertions(+), 24 deletions(-) create mode 100644 Frontend/src/app/interceptors/loader.interceptor.ts create mode 100644 Frontend/src/app/modules/dashboard/board/board.component.html create mode 100644 Frontend/src/app/modules/dashboard/board/board.component.scss create mode 100644 Frontend/src/app/modules/dashboard/board/board.component.spec.ts create mode 100644 Frontend/src/app/modules/dashboard/board/board.component.ts create mode 100644 Frontend/src/app/modules/dashboard/dashboard-routing.module.ts create mode 100644 Frontend/src/app/modules/dashboard/dashboard.module.ts diff --git a/Frontend/src/app/app-routing.module.ts b/Frontend/src/app/app-routing.module.ts index 92fd3d1..b85b504 100644 --- a/Frontend/src/app/app-routing.module.ts +++ b/Frontend/src/app/app-routing.module.ts @@ -12,7 +12,13 @@ const routes: Routes = [ { path: 'app', component: MainViewComponent, - canActivate: [AuthGuard] + canActivate: [AuthGuard], + children: [ + { + path: '', + loadChildren: () => import('./modules/dashboard/dashboard.module').then(m => m.DashboardModule) + }, + ] } ]; diff --git a/Frontend/src/app/app.module.ts b/Frontend/src/app/app.module.ts index 53c7a3f..3fd2b5e 100644 --- a/Frontend/src/app/app.module.ts +++ b/Frontend/src/app/app.module.ts @@ -7,8 +7,9 @@ import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MainViewComponent } from './main-view/main-view.component'; import { MaterialModule } from './material.module'; import { LoginPageComponent } from './components/login-page/login-page.component'; -import { HttpClientModule } from '@angular/common/http'; +import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; import { ServiceWorkerModule } from '@angular/service-worker'; +import { LoaderInterceptor } from './interceptors/loader.interceptor'; @NgModule({ @@ -30,7 +31,13 @@ import { ServiceWorkerModule } from '@angular/service-worker'; registrationStrategy: 'registerWhenStable:30000' }) ], - providers: [], + providers: [ + { + provide: HTTP_INTERCEPTORS, + useClass: LoaderInterceptor, + multi: true + }, + ], bootstrap: [AppComponent] }) export class AppModule { } diff --git a/Frontend/src/app/components/login-page/login-page.component.scss b/Frontend/src/app/components/login-page/login-page.component.scss index e821310..3b4205f 100644 --- a/Frontend/src/app/components/login-page/login-page.component.scss +++ b/Frontend/src/app/components/login-page/login-page.component.scss @@ -39,4 +39,8 @@ mat-form-field { .container { width: 90%; } + .logo { + width: 150px; + height: 150px; + } } diff --git a/Frontend/src/app/components/login-page/login-page.component.ts b/Frontend/src/app/components/login-page/login-page.component.ts index caba2d7..90d1796 100644 --- a/Frontend/src/app/components/login-page/login-page.component.ts +++ b/Frontend/src/app/components/login-page/login-page.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, NgZone, OnInit } from '@angular/core'; import { Router } from '@angular/router'; import jwt_decode from "jwt-decode"; import { AuthService } from 'src/app/auth/auth.service'; @@ -16,7 +16,8 @@ export class LoginPageComponent implements OnInit { constructor( private data$: DataService, private router$: Router, - private auth$: AuthService + private auth$: AuthService, + private ngZone$: NgZone ) {} ngOnInit(): void { @@ -51,10 +52,12 @@ export class LoginPageComponent implements OnInit { avatar: responsePayload.picture }); // this.auth$.loadDbUser(); - this.router$.navigate(['/app']); console.log("USer", this.data$.currentUser); await this.auth$.getAPIToken(response.credential); - this.auth$.loadDbUser(); + // this.auth$.loadDbUser(); + this.ngZone$.run(() => { + this.router$.navigate(['/app']); + }); } catch (e) { console.error('Get user error', e); } diff --git a/Frontend/src/app/interceptors/loader.interceptor.ts b/Frontend/src/app/interceptors/loader.interceptor.ts new file mode 100644 index 0000000..73bff35 --- /dev/null +++ b/Frontend/src/app/interceptors/loader.interceptor.ts @@ -0,0 +1,42 @@ +import { Injectable } from '@angular/core'; +import { + HttpRequest, + HttpHandler, + HttpEvent, + HttpInterceptor +} from '@angular/common/http'; +import { finalize, Observable } from 'rxjs'; +import { DataService } from '../services/data.service'; + +@Injectable() +export class LoaderInterceptor implements HttpInterceptor { + + private tasks: number = 0; + + constructor( + private _data: DataService + ) { } + + intercept(request: HttpRequest, next: HttpHandler): Observable> { + this.addTask(); + return next.handle(request).pipe( + finalize(() => { + this.removeTask(); + }) + ); + } + + addTask() { + this.tasks++; + if (this.tasks === 1) { + this._data.showLoader.next(true); + } + } + + removeTask() { + this.tasks--; + if (this.tasks === 0) { + this._data.showLoader.next(false); + } + } +} diff --git a/Frontend/src/app/main-view/main-view.component.html b/Frontend/src/app/main-view/main-view.component.html index 324de71..e69398b 100644 --- a/Frontend/src/app/main-view/main-view.component.html +++ b/Frontend/src/app/main-view/main-view.component.html @@ -1,18 +1,18 @@
-
-
+
+
- Obróć telefon.
- screen_rotation + Obróć telefon.
+ screen_rotation
-
+
-

Diuna

+

Diuna

diff --git a/Frontend/src/app/main-view/main-view.component.scss b/Frontend/src/app/main-view/main-view.component.scss index fe7671f..9c820d8 100644 --- a/Frontend/src/app/main-view/main-view.component.scss +++ b/Frontend/src/app/main-view/main-view.component.scss @@ -33,7 +33,7 @@ span.topbar-user-name { font-size: small; } h1.topbar-app-name { - margin-left: 8px; + margin-bottom: 0px; } mat-sidenav { width: 200px; diff --git a/Frontend/src/app/main-view/main-view.component.ts b/Frontend/src/app/main-view/main-view.component.ts index 94e6acc..876c2ad 100644 --- a/Frontend/src/app/main-view/main-view.component.ts +++ b/Frontend/src/app/main-view/main-view.component.ts @@ -1,8 +1,10 @@ import { Component, ViewChild } from '@angular/core'; import { MatSidenav } from '@angular/material/sidenav'; -import { Router } from '@angular/router'; +import { NavigationStart, Router } from '@angular/router'; +import { SwUpdate } from '@angular/service-worker'; import * as moment from 'moment'; import packageInfo from 'package.json'; +import { delay } from 'rxjs'; import { DataService } from '../services/data.service'; import { DeviceService } from '../services/device.service'; @@ -15,9 +17,6 @@ export class MainViewComponent { @ViewChild('snav') snav?: MatSidenav; appVersion = packageInfo.version; - submenus = { - administration: false, - }; currentDate = moment().toDate(); flipPhone: boolean = false; loading: boolean = false; @@ -25,8 +24,23 @@ export class MainViewComponent { constructor( public data$: DataService, public device$: DeviceService, - private router$: Router - ) { } + private router$: Router, + private swUpdate$: SwUpdate, + ) { + this.swUpdate$.versionUpdates.subscribe(() => { + this.reloadApp(); + }); + this.router$.events.subscribe((event) => { + if (event instanceof NavigationStart && device$.isMobile()) { + this.snav?.close(); + } + }); + + //listen to loading subject + data$.showLoader.pipe(delay(0)).subscribe(loading => { + this.loading = loading; + }) + } reloadApp() { document.location.reload(); diff --git a/Frontend/src/app/modules/dashboard/board/board.component.html b/Frontend/src/app/modules/dashboard/board/board.component.html new file mode 100644 index 0000000..7cfe4ee --- /dev/null +++ b/Frontend/src/app/modules/dashboard/board/board.component.html @@ -0,0 +1 @@ +{{ _device.toString()}} \ No newline at end of file diff --git a/Frontend/src/app/modules/dashboard/board/board.component.scss b/Frontend/src/app/modules/dashboard/board/board.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/Frontend/src/app/modules/dashboard/board/board.component.spec.ts b/Frontend/src/app/modules/dashboard/board/board.component.spec.ts new file mode 100644 index 0000000..e338612 --- /dev/null +++ b/Frontend/src/app/modules/dashboard/board/board.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { BoardComponent } from './board.component'; + +describe('BoardComponent', () => { + let component: BoardComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ BoardComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(BoardComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/Frontend/src/app/modules/dashboard/board/board.component.ts b/Frontend/src/app/modules/dashboard/board/board.component.ts new file mode 100644 index 0000000..57157bd --- /dev/null +++ b/Frontend/src/app/modules/dashboard/board/board.component.ts @@ -0,0 +1,19 @@ +import { HttpClient } from '@angular/common/http'; +import { Component, OnInit } from '@angular/core'; +import moment, { Moment } from 'moment'; +import { DeviceService } from 'src/app/services/device.service'; +import { environment } from 'src/environments/environment'; + + +@Component({ + selector: 'b-crm-board', + templateUrl: './board.component.html', + styleUrls: ['./board.component.scss'] +}) +export class BoardComponent { + + constructor( + public _device: DeviceService + ) { } + +} diff --git a/Frontend/src/app/modules/dashboard/dashboard-routing.module.ts b/Frontend/src/app/modules/dashboard/dashboard-routing.module.ts new file mode 100644 index 0000000..7f8484d --- /dev/null +++ b/Frontend/src/app/modules/dashboard/dashboard-routing.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; +import { BoardComponent } from './board/board.component'; + +const routes: Routes = [ + { + path: '', + component: BoardComponent + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class DashboardRoutingModule { } diff --git a/Frontend/src/app/modules/dashboard/dashboard.module.ts b/Frontend/src/app/modules/dashboard/dashboard.module.ts new file mode 100644 index 0000000..3a64cff --- /dev/null +++ b/Frontend/src/app/modules/dashboard/dashboard.module.ts @@ -0,0 +1,17 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; + +import { DashboardRoutingModule } from './dashboard-routing.module'; +import { BoardComponent } from './board/board.component'; + + +@NgModule({ + declarations: [ + BoardComponent + ], + imports: [ + CommonModule, + DashboardRoutingModule + ] +}) +export class DashboardModule { } diff --git a/Frontend/src/assets/loader.gif b/Frontend/src/assets/loader.gif index a6e2ddeea397f4e7271bdfa8be407af21c50c0c2..2763ee732e414e6b49bd70c97d32583e0436fe66 100644 GIT binary patch literal 55994 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 literal 64372 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 ZU^E0qLtr!nMnhmU1V%$(Gz3Tv0RTZel&}B* diff --git a/Frontend/src/environments/environment.ts b/Frontend/src/environments/environment.ts index 91eaee1..ebde33f 100644 --- a/Frontend/src/environments/environment.ts +++ b/Frontend/src/environments/environment.ts @@ -5,7 +5,8 @@ export const environment = { production: false, api: { - url: "http://localhost:5183/api" + //url: "http://localhost:5183/api" + url: "https://diuna.bim-it.pl/api" }, google: { clientId: "107631825312-bkfe438ehr9k9ecb2h76g802tj6advma.apps.googleusercontent.com" diff --git a/Frontend/src/manifest.webmanifest b/Frontend/src/manifest.webmanifest index ef8c5dc..bb1a087 100644 --- a/Frontend/src/manifest.webmanifest +++ b/Frontend/src/manifest.webmanifest @@ -1,11 +1,12 @@ { "name": "Diuna", "short_name": "Diuna", - "theme_color": "#1976d2", + "theme_color": "#FF9800", "background_color": "#fafafa", "display": "standalone", "scope": "./", "start_url": "./", + "orientation": "landscape", "icons": [ { "src": "assets/icons/icon-72x72.png", diff --git a/Frontend/src/styles.scss b/Frontend/src/styles.scss index 96b9042..298db6a 100644 --- a/Frontend/src/styles.scss +++ b/Frontend/src/styles.scss @@ -2,7 +2,7 @@ @include mat.core(); -$my-app-primary: mat.define-palette(mat.$indigo-palette); +$my-app-primary: mat.define-palette(mat.$orange-palette); $my-app-accent: mat.define-palette(mat.$pink-palette, A200, A100, A400); $my-app-warn: mat.define-palette(mat.$red-palette); diff --git a/WebAPI/appsettings.json b/WebAPI/appsettings.json index cafd899..27c1dbf 100644 --- a/WebAPI/appsettings.json +++ b/WebAPI/appsettings.json @@ -7,7 +7,7 @@ }, "AllowedHosts": "*", "ConnectionStrings": { - "SQLDatabase": "Server=tcp:localhost,1433;Initial Catalog=diuna;Persist Security Info=False;User ID=SA;Password=v](8Lc|RfG;MultipleActiveResultSets=False;Encrypt=False;TrustServerCertificate=False;Connection Timeout=30;" + "SQLDatabase": "Server=tcp:127.0.0.1,1433;Initial Catalog=diuna;Persist Security Info=False;User ID=SA;Password=v](8Lc|RfG;MultipleActiveResultSets=False;Encrypt=False;TrustServerCertificate=False;Connection Timeout=30;" }, "GoogleCLientId": "107631825312-bkfe438ehr9k9ecb2h76g802tj6advma.apps.googleusercontent.com", "Secret": "8393AF8EAEF8478CB738D44858690F9C7E2D19F65896DD9FBAA3EB2A6F493E80",