fix some errors

This commit is contained in:
Dan Percic 2021-10-01 11:24:22 +03:00
parent 065fe432f6
commit 2ebc3060d7
4 changed files with 30 additions and 31 deletions

View File

@ -1,9 +1,9 @@
import {Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges} from '@angular/core';
import {ViewedPages, ViewedPagesControllerService} from '@redaction/red-ui-http';
import {AppStateService} from '@state/app-state.service';
import {PermissionsService} from '@services/permissions.service';
import {ConfigService} from '@services/config.service';
import {Subscription} from 'rxjs';
import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core';
import { ViewedPages, ViewedPagesControllerService } from '@redaction/red-ui-http';
import { AppStateService } from '@state/app-state.service';
import { PermissionsService } from '@services/permissions.service';
import { ConfigService } from '@services/config.service';
import { Subscription } from 'rxjs';
@Component({
selector: 'redaction-page-indicator',
@ -16,7 +16,7 @@ export class PageIndicatorComponent implements OnChanges, OnInit, OnDestroy {
@Input() viewedPages: ViewedPages;
@Input() activeSelection = false;
@Output() pageSelected = new EventEmitter<number>();
@Output() readonly pageSelected = new EventEmitter<number>();
pageReadTimeout: number = null;
canMarkPagesAsViewed: boolean;
@ -27,8 +27,7 @@ export class PageIndicatorComponent implements OnChanges, OnInit, OnDestroy {
private readonly _appStateService: AppStateService,
private readonly _configService: ConfigService,
private readonly _permissionService: PermissionsService
) {
}
) {}
get read() {
return this.viewedPages?.pages?.findIndex(p => p.page === this.number) >= 0;
@ -96,9 +95,9 @@ export class PageIndicatorComponent implements OnChanges, OnInit, OnDestroy {
private _markPageRead() {
this._viewedPagesControllerService
.addPage({page: this.number}, this._appStateService.activeDossierId, this._appStateService.activeFileId)
.addPage({ page: this.number }, this._appStateService.activeDossierId, this._appStateService.activeFileId)
.subscribe(() => {
this.viewedPages?.pages?.push({page: this.number, fileId: this._appStateService.activeFileId});
this.viewedPages?.pages?.push({ page: this.number, fileId: this._appStateService.activeFileId });
});
}

View File

@ -1,11 +1,11 @@
import {Component} from '@angular/core';
import {MatDialogRef} from '@angular/material/dialog';
import {DossierRequest, DownloadFileType, IDossierTemplate, ReportTemplate, ReportTemplateControllerService} from '@redaction/red-ui-http';
import {FormBuilder, FormGroup, Validators} from '@angular/forms';
import {AppStateService} from '@state/app-state.service';
import { Component } from '@angular/core';
import { MatDialogRef } from '@angular/material/dialog';
import { DownloadFileType, IDossier, IDossierTemplate, ReportTemplate, ReportTemplateControllerService } from '@redaction/red-ui-http';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { AppStateService } from '@state/app-state.service';
import * as moment from 'moment';
import {downloadTypesTranslations} from '../../../../translations/download-types-translations';
import {IconButtonTypes} from '@iqser/common-ui';
import { downloadTypesTranslations } from '../../../../translations/download-types-translations';
import { IconButtonTypes } from '@iqser/common-ui';
@Component({
templateUrl: './add-dossier-dialog.component.html',
@ -22,7 +22,6 @@ export class AddDossierDialogComponent {
}));
dossierTemplates: IDossierTemplate[];
availableReportTypes = [];
reportTemplateValueMapper = (reportTemplate: ReportTemplate) => reportTemplate.templateId;
constructor(
private readonly _appStateService: AppStateService,
@ -45,7 +44,7 @@ export class AddDossierDialogComponent {
validators: control =>
control.value.reportTemplateIds?.length > 0 || control.value.downloadFileTypes?.length > 0
? null
: {downloadPackage: true}
: { downloadPackage: true }
}
);
}
@ -66,18 +65,19 @@ export class AddDossierDialogComponent {
return this.dossierForm.invalid;
}
reportTemplateValueMapper = (reportTemplate: ReportTemplate) => reportTemplate.templateId;
async saveDossier() {
const savedDossier = await this._appStateService.createOrUpdateDossier(this._formToObject());
if (savedDossier) {
this.dialogRef.close({dossier: savedDossier});
this.dialogRef.close({ dossier: savedDossier });
}
}
async saveDossierAndAddMembers() {
const dossier: DossierRequest = this._formToObject();
const savedDossier = await this._appStateService.createOrUpdateDossier(dossier);
const savedDossier = await this._appStateService.createOrUpdateDossier(this._formToObject());
if (savedDossier) {
this.dialogRef.close({addMembers: true, dossier: savedDossier});
this.dialogRef.close({ addMembers: true, dossier: savedDossier });
}
}
@ -94,7 +94,7 @@ export class AddDossierDialogComponent {
downloadFileTypes: dossierTemplate.downloadFileTypes,
reportTemplateIds: [] // TODO DEFAULT
},
{emitEvent: false}
{ emitEvent: false }
);
} else {
this.availableReportTypes = [];
@ -103,7 +103,7 @@ export class AddDossierDialogComponent {
downloadFileTypes: [],
reportTemplateIds: []
},
{emitEvent: false}
{ emitEvent: false }
);
}
}
@ -116,7 +116,7 @@ export class AddDossierDialogComponent {
});
}
private _formToObject(): DossierRequest {
private _formToObject(): Partial<IDossier> {
return {
dossierName: this.dossierForm.get('dossierName').value,
description: this.dossierForm.get('description').value,

View File

@ -1,5 +1,5 @@
import { Injectable, Injector } from '@angular/core';
import { IDossier } from '@redaction/red-ui-http';
import { DossierRequest, IDossier } from '@redaction/red-ui-http';
import { EntitiesService, List, QueryParam } from '@iqser/common-ui';
import { Dossier } from '@state/model/dossier';
import { filter, map } from 'rxjs/operators';
@ -56,7 +56,7 @@ export class DossiersService extends EntitiesService<Dossier, IDossier> {
return dossierId ? super._getOne([dossierId]) : super.getAll();
}
createOrUpdate(dossier: IDossier): Promise<IDossier> {
createOrUpdate(dossier: DossierRequest): Promise<IDossier> {
return this._post(dossier).toPromise();
}

View File

@ -1,5 +1,5 @@
import { Injectable } from '@angular/core';
import { Colors, IDossier, IFile, ReanalysisControllerService } from '@redaction/red-ui-http';
import { Colors, DossierRequest, IFile, ReanalysisControllerService } from '@redaction/red-ui-http';
import { Toaster } from '@iqser/common-ui';
import { TranslateService } from '@ngx-translate/core';
import { Event, NavigationEnd, ResolveStart, Router } from '@angular/router';
@ -343,7 +343,7 @@ export class AppStateService {
);
}
async createOrUpdateDossier(dossier: IDossier) {
async createOrUpdateDossier(dossier: DossierRequest) {
try {
const updatedDossier = await this._dossiersService.createOrUpdate(dossier);
let foundDossier = this.allDossiers.find(p => p.id === updatedDossier.dossierId);