aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/app/_pages/add-model/add-model.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/app/_pages/add-model/add-model.component.ts')
-rw-r--r--frontend/src/app/_pages/add-model/add-model.component.ts41
1 files changed, 26 insertions, 15 deletions
diff --git a/frontend/src/app/_pages/add-model/add-model.component.ts b/frontend/src/app/_pages/add-model/add-model.component.ts
index 01e8ade9..4e315510 100644
--- a/frontend/src/app/_pages/add-model/add-model.component.ts
+++ b/frontend/src/app/_pages/add-model/add-model.component.ts
@@ -33,25 +33,36 @@ export class AddModelComponent implements OnInit {
}
addModel() {
- this.saveModel(false); //trajno cuvanje
+ this.saveModel(false).subscribe(); //trajno cuvanje
}
+
trainModel() {
- this.saveModel(true).subscribe((modelId : any) => {
+ this.saveModel(true).subscribe((modelId: any) => {
if (modelId)
this.models.trainModel(modelId);
}); //privremeno cuvanje modela => vraca id sacuvanog modela koji cemo da treniramo sad
}
- saveModel(temporary: boolean) : any {
- if (this.datasetLoadComponent)
- this.models.addDataset(this.datasetLoadComponent?.dataset).subscribe((response) => {//id dataseta je response
- this.newModel.datasetId = response;
- this.getCheckedInputCols();
- this.getCheckedOutputCol();
- if (this.validationInputsOutput())
- return this.models.addModel(this.newModel); //id modela
- return of(null);
+ saveModel(temporary: boolean): any {
+ console.log('ADD MODEL: STEP 1 - UPLOAD FILE');
+ if (this.datasetLoadComponent) {
+ this.models.uploadData(this.datasetLoadComponent.files[0]).subscribe((fileId) => {
+ console.log('ADD MODEL: STEP 2 - ADD DATASET WITH FILE ID ' + fileId);
+ if (this.datasetLoadComponent) {
+ this.datasetLoadComponent.dataset.fileId = fileId;
+ this.models.addDataset(this.datasetLoadComponent.dataset).subscribe((datasetId) => {
+ console.log('ADD MODEL: STEP 3 - ADD MODEL WITH DATASET ID ' + datasetId);
+ this.newModel.datasetId = datasetId;
+ this.getCheckedInputCols();
+ this.getCheckedOutputCol();
+ if (this.validationInputsOutput())
+ this.models.addModel(this.newModel).subscribe((response) => {
+ console.log('ADD MODEL: DONE! REPLY:\n' + response);
+ });
+ });
+ }
});
+ }
}
getCheckedInputCols() {
@@ -73,17 +84,17 @@ export class AddModelComponent implements OnInit {
let thatRb = <HTMLInputElement>radiobuttons[i];
if (thatRb.checked) {
this.newModel.columnToPredict = thatRb.value;
- break;
+ break;
}
}
//console.log(this.checkedOutputCol);
}
- validationInputsOutput() : boolean {
+ validationInputsOutput(): boolean {
if (this.newModel.inputColumns.length == 0) {
alert("Molimo Vas da izaberete ulaznu kolonu/kolone za mrežu.")
return false;
- }
- for (let i = 0; i < this.newModel.inputColumns.length; i++) {
+ }
+ for (let i = 0; i < this.newModel.inputColumns.length; i++) {
if (this.newModel.inputColumns[i] == this.newModel.columnToPredict) {
let colName = this.newModel.columnToPredict;
alert("Izabrali ste istu kolonu (" + colName + ") kao ulaznu i izlaznu iz mreže. Korigujte izbor.");