Before refactor

This commit is contained in:
Michał Zieliński
2024-03-08 15:56:35 +01:00
parent 7dbc81a3df
commit f9c1a8a8ad
8 changed files with 95 additions and 40 deletions

View File

@@ -8,6 +8,7 @@ export class Record extends Base {
value4?: number;
value5?: number;
value6?: number;
value7?: number;
value8?: number;
value9?: number;
value10?: number;
@@ -32,6 +33,7 @@ export class Record extends Base {
value29?: number;
value30?: number;
value31?: number;
value32?: number;
desc1?: string;
desc2?: string;
desc3?: string;

View File

@@ -1,3 +1,6 @@
@if (document?.records) {
<div>{{shortRecords | json}}</div>
}
<form [formGroup]="form" novalidate>
<mat-card>
<mat-card-header style="display: block;">

View File

@@ -37,6 +37,9 @@ export class LayerDetailComponent implements OnInit {
LayerType = LayerType;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
shortRecords: any = null;
@ViewChild(MatSort) sort!: MatSort;
constructor(
@@ -59,6 +62,8 @@ export class LayerDetailComponent implements OnInit {
this.document.modified = `${this.datePipe.transform(this.document.modifiedAt?.toDate(), 'short')}, ${this.document.modifiedBy?.userName}`;
this.valueSum = this.document.records.map(t => t.value1 || 0).reduce((acc, value) => acc + value, 0);
this.createColumns();
this.prepareDataForAI();
}
private async load(): Promise<Layer> {
return await Layer.getById(this.route$.snapshot.paramMap.get('id') || "", this.http$);
@@ -105,4 +110,45 @@ export class LayerDetailComponent implements OnInit {
});
}
}
async prepareDataForAI() {
const codes = this.document.records.map(x => x.code);
const weatherURL = 'https://archive-api.open-meteo.com/v1/archive?latitude=54.36685&longitude=18.692&start_date=2023-12-01&end_date=2023-12-31&daily=temperature_2m_mean,rain_sum,snowfall_sum,wind_speed_10m_max&timezone=Europe%2FBerlin';
// eslint-disable-next-line @typescript-eslint/no-explicit-any
this.http$.get(weatherURL).subscribe((data: any) => {
console.log('pogoda', data);
// loop throught all days in december 2023
const days = data['daily']['time'].length;
console.log(days);
this.shortRecords = [];
for (let i = 0; i < days; i++) {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const res: any = {};
res.day = i+1;
res.code = 600;
res.temperature = data['daily']['temperature_2m_mean'][i];
res.rain = data['daily']['rain_sum'][i];
res.snow = data['daily']['snowfall_sum'][i];
res.wind = data['daily']['wind_speed_10m_max'][i];
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const codeValues: any[] = [];
codes.forEach(code => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const res: any = { code: code };
res.value = this.getRecordValue(this.document.records.find(x => x.code === code)!, i+1);
codeValues.push(res);
});
res.sell = codeValues.filter(x => x.value > 0);
//= codes.map(code => this.getRecordValue(this.document.records.find(x => x.code === code)!, i+1));
this.shortRecords.push(res);
}
console.log('shortRecords', this.shortRecords);
});
}
getRecordValue(record: Record, index: number) {
const propertyName = `value${index}` as keyof typeof record;
return record[propertyName];
}
}

View File

@@ -7,8 +7,8 @@ export const environment = {
appName: "LOCAL_DiunaBI",
production: false,
api: {
url: "http://localhost:5400/api"
//url: "https://diunabi-morska.bim-it.pl/api"
//url: "http://localhost:5400/api"
url: "https://diunabi-morska.bim-it.pl/api"
},
google: {
clientId: "107631825312-bkfe438ehr9k9ecb2h76g802tj6advma.apps.googleusercontent.com"