RED-3800: Entity id can be number

This commit is contained in:
Adina Țeudan 2022-07-22 10:56:12 +03:00
parent 9c063f2058
commit b6f8333a6d
11 changed files with 21 additions and 28 deletions

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, Component, Inject, ViewChild } from '@angular/core';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
import { AddEditEntityComponent } from '../../../shared/components/add-edit-entity/add-edit-entity.component';
import { AddEditEntityComponent } from '@shared/components/add-edit-entity/add-edit-entity.component';
import { BaseDialogComponent } from '@iqser/common-ui';
interface DialogData {

View File

@ -69,7 +69,7 @@ export class StampService {
}
}
private async _stampPreview(document: PDFNet.PDFDoc, dossierTemplateId: string, watermarkId: string): Promise<void> {
private async _stampPreview(document: PDFNet.PDFDoc, dossierTemplateId: string, watermarkId: number): Promise<void> {
const watermark = this._watermarksMapService.get(dossierTemplateId, watermarkId);
await stampPDFPage(
document,

View File

@ -47,7 +47,7 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
for (const key of Object.keys(this.form.getRawValue())) {
if (key.toLowerCase().includes('watermark')) {
if (this._asStringIfSet(this.dossier[key]) !== this.form.get(key).value) {
if (this.dossier[key] !== this.form.get(key).value) {
return true;
}
} else {
@ -116,8 +116,8 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
{
reportTemplateIds: [this.dossier.reportTemplateIds],
downloadFileTypes: [this.dossier.downloadFileTypes],
watermarkId: [this._asStringIfSet(this.dossier.watermarkId)],
previewWatermarkId: [this._asStringIfSet(this.dossier.previewWatermarkId)],
watermarkId: [this.dossier.watermarkId],
previewWatermarkId: [this.dossier.previewWatermarkId],
},
{
validators: control =>
@ -127,11 +127,4 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
},
);
}
private _asStringIfSet(value: any): string {
if (value === undefined || value === null) {
return value;
}
return `${value}`;
}
}

View File

@ -25,11 +25,11 @@ import { MatCheckboxChange } from '@angular/material/checkbox';
},
],
})
export class WatermarkSelectorComponent extends FormFieldComponent<string> implements OnChanges {
export class WatermarkSelectorComponent extends FormFieldComponent<number> implements OnChanges {
@Input() dossierTemplateId: string;
@Input() label: string;
readonly watermarks$: Observable<Watermark[]>;
watermarksMap = new Map<string, Watermark>();
watermarksMap = new Map<number, Watermark>();
#watermarks: Watermark[] = [];
readonly #dossierTemplateId$ = new BehaviorSubject<string>(null);
@ -67,7 +67,7 @@ export class WatermarkSelectorComponent extends FormFieldComponent<string> imple
}
}
selectWatermark(watermarkId: string): void {
selectWatermark(watermarkId: number): void {
this.markAsTouched();
this._value = watermarkId;
this.onChange(this._value);

View File

@ -20,7 +20,7 @@ export class WatermarkService extends GenericService<IWatermark> {
}
@Validate()
deleteWatermark(@RequiredParam() dossierTemplateId: string, @RequiredParam() watermarkId: string): Observable<Watermark[]> {
deleteWatermark(@RequiredParam() dossierTemplateId: string, @RequiredParam() watermarkId: number): Observable<Watermark[]> {
return super
.delete(null, `${this._defaultModelPath}/${watermarkId}`)
.pipe(switchMap(() => this.loadForDossierTemplate(dossierTemplateId)));
@ -31,7 +31,7 @@ export class WatermarkService extends GenericService<IWatermark> {
return this._post(body, `${this._defaultModelPath}`).pipe(
switchMap(watermark =>
this.loadForDossierTemplate(watermark.dossierTemplateId).pipe(
map(() => this._watermarksMapService.get(watermark.dossierTemplateId, watermark.id.toString())),
map(() => this._watermarksMapService.get(watermark.dossierTemplateId, watermark.id)),
),
),
);
@ -52,7 +52,7 @@ export class WatermarkService extends GenericService<IWatermark> {
}
@Validate()
isWatermarkUsed(@RequiredParam() watermarkId: string): Observable<boolean> {
isWatermarkUsed(@RequiredParam() watermarkId: number): Observable<boolean> {
const queryParams: QueryParam[] = [{ key: 'watermarkId', value: watermarkId }];
return this.getAll<IsUsedResponse>(`${this._defaultModelPath}/used`, queryParams).pipe(map(result => result.value));
}

@ -1 +1 @@
Subproject commit b1f8de6ea1b12f1d3973bfd479b58ae4a480bda1
Subproject commit 7875f99a074704eaa3252258d7efd83c39a355b7

View File

@ -19,8 +19,8 @@ export class Dossier implements IDossier, IListable {
readonly hardDeletedTime?: string;
readonly softDeletedTime?: string;
readonly startDate?: string;
readonly watermarkId: string;
readonly previewWatermarkId: string;
readonly watermarkId?: number;
readonly previewWatermarkId?: number;
readonly archivedTime: string;
readonly hasReviewers: boolean;
readonly routerLink: string;

View File

@ -56,9 +56,9 @@ export interface IDossierRequest {
/**
* Watermark id that will be applied to the redacted files.
*/
readonly watermarkId?: string;
readonly watermarkId?: number;
/**
* Watermark id that will be applied to the preview files.
*/
readonly previewWatermarkId?: string;
readonly previewWatermarkId?: number;
}

View File

@ -17,7 +17,7 @@ export interface IDossier {
readonly reportTemplateIds: List;
readonly softDeletedTime?: string;
readonly startDate?: string;
readonly watermarkId: string;
readonly previewWatermarkId: string;
readonly watermarkId?: number;
readonly previewWatermarkId?: number;
readonly archivedTime: string;
}

View File

@ -2,7 +2,7 @@ import { IWatermark, WatermarkOrientation } from './watermark';
import { Entity } from '@iqser/common-ui';
export class Watermark extends Entity<IWatermark> {
readonly id: string;
readonly id: number;
readonly dossierTemplateId: string;
readonly enabled: boolean;
readonly fontSize: number;
@ -20,7 +20,7 @@ export class Watermark extends Entity<IWatermark> {
constructor(watermark: IWatermark) {
super(watermark);
this.id = watermark.id.toString();
this.id = watermark.id;
this.dossierTemplateId = watermark.dossierTemplateId;
this.enabled = watermark.enabled;
this.fontSize = watermark.fontSize;

View File

@ -1,5 +1,5 @@
export interface IWatermark {
id: string;
id: number;
dossierTemplateId: string;
enabled: boolean;
fontSize: number;