Sfoglia il codice sorgente

Refactored SensLog Endpoints

Lukas Cerny 2 anni fa
parent
commit
dd4c79a721

+ 2 - 1
.gitignore

@@ -5,4 +5,5 @@
 /.vs
 node_modules
 /dist
-.angular
+.angular
+.idea/

+ 3 - 3
Dockerfile

@@ -1,11 +1,11 @@
-FROM node:15.14.0-alpine3.10 AS angularApp
+FROM node:21-alpine AS angularApp
 WORKDIR /usr/src/app
 COPY package.json package-lock.json ./
-RUN npm install
+RUN npm install --force
 COPY . .
 RUN npm run build
 
 
-FROM nginx:1.19.6-alpine
+FROM nginx:1.25.3-alpine
 COPY nginx.conf /etc/nginx/nginx.conf
 COPY --from=angularApp /usr/src/app/dist/SensLog /usr/share/nginx/html

+ 3 - 3
compose.yml

@@ -1,8 +1,8 @@
-version: '3'
+version: '3.8'
 services:
-  SensLog:
+  sensclient:
     build: .
     image: senslog
-    container_name: senslog
+    container_name: senslog_client
     ports:
       - 8080:80

+ 0 - 28
nginx.conf

@@ -23,33 +23,5 @@ http {
     location = /50x.html {
       root   /usr/share/nginx/html;
     }
-
-    location /analytics {
-              proxy_set_header X-Forwarded-Host $host;
-              proxy_set_header X-Forwarded-Server $host;
-              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-              #proxy_pass http://<ContainerName>:<PortNumber>;
-              # In our case Container name is as we setup in docker-compose `beservice` and port 8080
-              proxy_pass http://51.15.45.95:9090;
-              proxy_max_temp_file_size "1024m";
-              proxy_read_timeout       "60s";
-
-              add_header X-Frame-Options SAMEORIGIN always;
-
-    }
-
-    location /senslog15 {
-              proxy_set_header X-Forwarded-Host $host;
-              proxy_set_header X-Forwarded-Server $host;
-              proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
-              #proxy_pass http://<ContainerName>:<PortNumber>;
-              # In our case Container name is as we setup in docker-compose `beservice` and port 8080
-              proxy_pass http://51.15.45.95:8080;
-              proxy_max_temp_file_size "1024m";
-              proxy_read_timeout       "60s";
-
-              add_header X-Frame-Options SAMEORIGIN always;
-
-    }
   }
 }

+ 3 - 3
package.json

@@ -41,8 +41,8 @@
     "hslayers-ng": "9.0.0",
     "jquery": "^3.6.0",
     "lodash": "^4.17.21",
-    "moment": "^2.29.1",
-    "moment-timezone": "^0.5.33",
+    "moment": "2.29.4",
+    "moment-timezone": "0.5.35",
     "ngx-color": "^7.2.0",
     "ngx-cookie-service": "^13.1.2",
     "ol": "^6.9.0",
@@ -57,7 +57,7 @@
     "rxjs": "^7.5.2",
     "share-api-polyfill": "^1.0.21",
     "tslib": "2.0.0",
-    "vega": "^5.20.2",
+    "vega": "5.23.0",
     "vega-tooltip": "^0.25.1",
     "xml-js": "^1.6.11",
     "zone.js": "^0.11.3"

+ 2 - 2
src/app/auth/services/auth.service.ts

@@ -1,7 +1,7 @@
 import {Injectable} from '@angular/core';
 import {HttpClient, HttpResponse} from '@angular/common/http';
 import {Observable, of} from 'rxjs';
-import {catchError, mapTo, tap} from 'rxjs/operators';
+import {catchError, map, mapTo, tap} from 'rxjs/operators';
 import {Router} from '@angular/router';
 import {CookieService} from './cookie.service';
 import {UserState} from '../states/user.state';
@@ -67,7 +67,7 @@ export class AuthService {
     return this.loginService.login$Response(loginInput)
       .pipe(
         tap((userCookie: HttpResponse<UserCookie>) => this.setUserFromResponse(userCookie.body, loginInput.username)),
-        mapTo(true),
+        map(() => true),
         catchError(() => {
           return of<boolean>(false);
         })

+ 4 - 6
src/app/login/components/login.component.ts

@@ -42,10 +42,9 @@ export class LoginComponent implements OnInit, OnDestroy {
    */
   doLogin(): void {
     if (this.loginForm.valid) {
-      this.subscription[2] = this.authService.doLogin({
-        username: this.loginForm.controls.username.value,
-        password: this.loginForm.controls.password.value
-      })
+      const username = this.loginForm.controls.username.value;
+      const password = this.loginForm.controls.password.value;
+      this.subscription[2] = this.authService.doLogin({username, password})
         .pipe(
           switchMap(res => {
             if (res) {
@@ -55,8 +54,7 @@ export class LoginComponent implements OnInit, OnDestroy {
               return of(false);
             }
           })
-        ).subscribe(
-          res => {
+        ).subscribe(res => {
             if (res) {
               this.subscription[2].unsubscribe();
               this.router.navigate(['/dashboard'])

+ 2 - 2
src/app/shared/api/endpoints/services/administration.service.ts

@@ -30,7 +30,7 @@ export class AdministrationService extends BaseService {
   /**
    * Path part for operation createUser
    */
-  static readonly CreateUserPath = '/senslog15/rest/user';
+  static readonly CreateUserPath = '/rest/user';
 
   /**
    * Create User.
@@ -84,7 +84,7 @@ export class AdministrationService extends BaseService {
   /**
    * Path part for operation getRights
    */
-  static readonly GetRightsPath = '/senslog15/rest/user/rights';
+  static readonly GetRightsPath = '/rest/user/rights';
 
   /**
    * Get rights.

+ 1 - 1
src/app/shared/api/endpoints/services/data.service.ts

@@ -33,7 +33,7 @@ export class DataService extends BaseService {
   /**
    * Path part for operation getData
    */
-  static readonly GetDataPath = '/senslog15/DataService?Operation=GetUnits';
+  static readonly GetDataPath = '/DataService?Operation=GetUnits';
 
   /**
    * Get data.

+ 1 - 1
src/app/shared/api/endpoints/services/group.service.ts

@@ -29,7 +29,7 @@ export class GroupService extends BaseService {
   /**
    * Path part for operation getGroups
    */
-  static readonly GetGroupsPath = '/senslog15/GroupService';
+  static readonly GetGroupsPath = '/GroupService';
 
   /**
    * Get groups.

+ 2 - 2
src/app/shared/api/endpoints/services/login.service.ts

@@ -30,7 +30,7 @@ export class LoginService extends BaseService {
   /**
    * Path part for operation login
    */
-  static readonly LoginPath = '/senslog15/ControllerServlet';
+  static readonly LoginPath = '/ControllerServlet';
 
   /**
    * Authorize login.
@@ -103,7 +103,7 @@ export class LoginService extends BaseService {
   /**
    * Path part for operation getUserInfo
    */
-  static readonly GetUserInfoPath = '/senslog15/rest/user';
+  static readonly GetUserInfoPath = '/rest/user';
 
   /**
    * User information.

+ 6 - 6
src/app/shared/api/endpoints/services/management.service.ts

@@ -30,7 +30,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation insertUnit
    */
-  static readonly InsertUnitPath = '/senslog15/ManagementService?Operation=InsertUnit';
+  static readonly InsertUnitPath = '/ManagementService?Operation=InsertUnit';
 
   /**
    * Insert Unit.
@@ -84,7 +84,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation insertSensor
    */
-  static readonly InsertSensorPath = '/senslog15/ManagementService?Operation=InsertSensor';
+  static readonly InsertSensorPath = '/ManagementService?Operation=InsertSensor';
 
   /**
    * Insert Sensor.
@@ -138,7 +138,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation updateUnit
    */
-  static readonly UpdateUnitPath = '/senslog15/ManagementService?Operation=UpdateUnit';
+  static readonly UpdateUnitPath = '/ManagementService?Operation=UpdateUnit';
 
   /**
    * Update Unit.
@@ -192,7 +192,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation deleteUnit
    */
-  static readonly DeleteUnitPath = '/senslog15/ManagementService?Operation=DeleteUnit';
+  static readonly DeleteUnitPath = '/ManagementService?Operation=DeleteUnit';
 
   /**
    * Delete Unit.
@@ -246,7 +246,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation deleteSensor
    */
-  static readonly DeleteSensorPath = '/senslog15/ManagementService?Operation=DeleteSensor';
+  static readonly DeleteSensorPath = '/ManagementService?Operation=DeleteSensor';
 
   /**
    * Delete Sensor.
@@ -300,7 +300,7 @@ export class ManagementService extends BaseService {
   /**
    * Path part for operation updateSensor
    */
-  static readonly UpdateSensorPath = '/senslog15/ManagementService?Operation=UpdateSensor';
+  static readonly UpdateSensorPath = '/ManagementService?Operation=UpdateSensor';
 
   /**
    * Update Sensor.

+ 2 - 2
src/app/shared/api/endpoints/services/observation.service.ts

@@ -31,8 +31,8 @@ export class ObservationService extends BaseService {
   /**
    * Path part for operation getObservation
    */
-  static readonly GetObservationPath = '/senslog15/SensorService?Operation=GetObservations';
-  static readonly RestObservationsPath = '/senslog15/rest/observation/';
+  static readonly GetObservationPath = '/SensorService?Operation=GetObservations';
+  static readonly RestObservationsPath = '/rest/observation/';
 
   /**
    * Get observation.

+ 4 - 4
src/app/shared/api/endpoints/services/sensors.service.ts

@@ -31,7 +31,7 @@ export class SensorsService extends BaseService {
   /**
    * Path part for operation getUnitSensors
    */
-  static readonly GetUnitSensorsPath = '/senslog15/SensorService?Operation=GetSensors';
+  static readonly GetUnitSensorsPath = '/SensorService?Operation=GetSensors';
 
   /**
    * Get unit sensors.
@@ -85,7 +85,7 @@ export class SensorsService extends BaseService {
   /**
    * Path part for operation getPhenomenons
    */
-  static readonly GetPhenomenonsPath = '/senslog15/SensorService?Operation=GetAllPhenomenons';
+  static readonly GetPhenomenonsPath = '/SensorService?Operation=GetAllPhenomenons';
 
   /**
    * Get phenomenons.
@@ -136,7 +136,7 @@ export class SensorsService extends BaseService {
   /**
    * Path part for operation getSensorTypes
    */
-  static readonly GetSensorTypesPath = '/senslog15/SensorService?Operation=GetAllSensorTypes';
+  static readonly GetSensorTypesPath = '/SensorService?Operation=GetAllSensorTypes';
 
   /**
    * Get sensor types.
@@ -187,7 +187,7 @@ export class SensorsService extends BaseService {
   /**
    * Path part for operation insertPosition
    */
-  static readonly InsertPositionPath = '/senslog15/FeederServlet?Operation=InsertPosition';
+  static readonly InsertPositionPath = '/FeederServlet?Operation=InsertPosition';
 
   /**
    * Insert position to unit.

+ 16 - 16
src/app/shared/api/openapi.yaml

@@ -29,7 +29,7 @@ tags:
   description: Administration service
 
 paths:
-  /senslog15/ControllerServlet:
+  /ControllerServlet:
     post:
       tags:
       - login
@@ -60,7 +60,7 @@ paths:
               schema:
                 type: string
 
-  /senslog15/rest/user:
+  /rest/user:
     get:
       tags:
         - login
@@ -88,7 +88,7 @@ paths:
             schema:
               $ref: '#/components/schemas/UserInfo'
 
-  /senslog15/SensorService?Operation=GetSensors:
+  /SensorService?Operation=GetSensors:
     get:
       tags:
         - sensors
@@ -111,7 +111,7 @@ paths:
                   $ref: '#/components/schemas/Sensor'
 
 
-  /senslog15/SensorService?Operation=GetObservations:
+  /SensorService?Operation=GetObservations:
     get:
       tags:
         - observation
@@ -148,7 +148,7 @@ paths:
         500:
           description: Internal server error
 
-  /senslog15/GroupService:
+  /GroupService:
     get:
       tags:
       - group
@@ -180,7 +180,7 @@ paths:
                 items:
                   $ref: '#/components/schemas/Group'
 
-  /senslog15/DataService?Operation=GetUnits:
+  /DataService?Operation=GetUnits:
     get:
       tags:
         - data
@@ -265,7 +265,7 @@ paths:
                   timestamp:
                     type: number
 
-  /senslog15/ManagementService?Operation=InsertUnit:
+  /ManagementService?Operation=InsertUnit:
     post:
       tags:
         - management
@@ -308,7 +308,7 @@ paths:
                   items:
                     $ref: '#/components/schemas/InsertSensor'
 
-  /senslog15/ManagementService?Operation=InsertSensor:
+  /ManagementService?Operation=InsertSensor:
     post:
       tags:
         - management
@@ -351,7 +351,7 @@ paths:
                   items:
                     $ref: '#/components/schemas/InsertSensor'
 
-  /senslog15/SensorService?Operation=GetAllPhenomenons:
+  /SensorService?Operation=GetAllPhenomenons:
     get:
       tags:
         - sensors
@@ -367,7 +367,7 @@ paths:
                 items:
                   $ref: '#/components/schemas/Phenomenon'
 
-  /senslog15/SensorService?Operation=GetAllSensorTypes:
+  /SensorService?Operation=GetAllSensorTypes:
     get:
       tags:
         - sensors
@@ -383,7 +383,7 @@ paths:
                 items:
                   $ref: '#/components/schemas/SensorType'
 
-  /senslog15/ManagementService?Operation=UpdateUnit:
+  /ManagementService?Operation=UpdateUnit:
     put:
       tags:
         - management
@@ -402,7 +402,7 @@ paths:
                 unit:
                   $ref: '#/components/schemas/InsertUnit'
 
-  /senslog15/ManagementService?Operation=DeleteUnit:
+  /ManagementService?Operation=DeleteUnit:
     delete:
       tags:
         - management
@@ -437,7 +437,7 @@ paths:
                 unit:
                   $ref: '#/components/schemas/InsertUnit'
 
-  /senslog15/ManagementService?Operation=DeleteSensor:
+  /ManagementService?Operation=DeleteSensor:
     delete:
       tags:
         - management
@@ -480,7 +480,7 @@ paths:
                   items:
                     $ref: '#/components/schemas/InsertSensor'
 
-  /senslog15/ManagementService?Operation=UpdateSensor:
+  /ManagementService?Operation=UpdateSensor:
     put:
       tags:
         - management
@@ -523,7 +523,7 @@ paths:
                   items:
                     $ref: '#/components/schemas/InsertSensor'
 
-  /senslog15/rest/user/rights:
+  /rest/user/rights:
     get:
       tags:
         - administration
@@ -539,7 +539,7 @@ paths:
                 items:
                   $ref: '#/components/schemas/Right'
 
-  /senslog15/FeederServlet?Operation=InsertPosition:
+  /FeederServlet?Operation=InsertPosition:
     get:
       tags:
         - sensors

+ 1 - 1
src/environments/environment.prod.ts

@@ -2,6 +2,6 @@ export const environment = {
   production: true,
   baseHref: '/',
   useMock: false,
-  sensLogBaseUrl: 'https://sensor.lesprojekt.cz',
+  sensLogBaseUrl: 'https://sensor.lesprojekt.cz/senslog15',
   hslayersAssetsPath: 'https://unpkg.com/hslayers-ng-app@6.1.0/assets'
 };

+ 1 - 1
src/environments/environment.ts

@@ -1,5 +1,5 @@
 export const environment = {
   production: false,
-  sensLogBaseUrl: '',
+  sensLogBaseUrl: 'https://sensor.lesprojekt.cz/senslog15',
   hslayersAssetsPath: './hslayers-ng/assets'
 };