This commit is contained in:
Adina Țeudan 2021-11-22 22:17:50 +02:00
parent 2d4175327b
commit 683c429dc9
3 changed files with 34 additions and 23 deletions

View File

@ -2,10 +2,11 @@ import { Component, ElementRef, EventEmitter, Input, OnInit, Output, QueryList,
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
import { Dossier, DossierAttributeConfigType, DossierAttributeConfigTypes, DossierAttributeWithValue } from '@red/domain';
import { PermissionsService } from '@services/permissions.service';
import { CircleButtonTypes, IconButtonTypes, LoadingService } from '@iqser/common-ui';
import { CircleButtonTypes, IconButtonTypes, LoadingService, Toaster } from '@iqser/common-ui';
import { FormBuilder, FormGroup } from '@angular/forms';
import * as moment from 'moment';
import { DossierAttributesService } from '@shared/services/controller-wrappers/dossier-attributes.service';
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
@Component({
selector: 'redaction-edit-dossier-attributes',
@ -31,6 +32,7 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
private readonly _dossierAttributesService: DossierAttributesService,
private readonly _loadingService: LoadingService,
private readonly _formBuilder: FormBuilder,
private readonly _toaster: Toaster,
) {}
get changed() {
@ -67,9 +69,13 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
dossierAttributeConfigId: attr.id,
value: this.currentAttrValue(attr),
}));
await this._dossierAttributesService.setAttributes(this.dossier, dossierAttributeList).toPromise();
await this._loadAttributes();
this.updateDossier.emit();
try {
await this._dossierAttributesService.setAttributes(this.dossier, dossierAttributeList).toPromise();
await this._loadAttributes();
this.updateDossier.emit();
} catch (e) {
this._toaster.error(_('edit-dossier-dialog.attributes.error.generic'));
}
}
fileInputClick(attr: DossierAttributeWithValue) {

View File

@ -72,23 +72,6 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
this.hasDueDate = !!this.dossier.dueDate;
}
private _getForm(): FormGroup {
return this._formBuilder.group({
dossierName: [this.dossier.dossierName, Validators.required],
dossierTemplateId: [
{
value: this.dossier.dossierTemplateId,
disabled: this._dossierStatsService.get(this.dossier.dossierId).hasFiles,
},
Validators.required,
],
description: [this.dossier.description],
dueDate: [this.dossier.dueDate],
watermarkEnabled: [this.dossier.watermarkEnabled],
watermarkPreviewEnabled: [this.dossier.watermarkPreviewEnabled],
});
}
revert() {
this.dossierForm.reset({
dossierName: this.dossier.dossierName,
@ -110,8 +93,10 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
dueDate: this.hasDueDate ? this.dossierForm.get('dueDate').value : undefined,
dossierTemplateId: this.dossierForm.get('dossierTemplateId').value,
} as IDossierRequest;
await this._dossiersService.createOrUpdate(dossier).toPromise();
this.updateDossier.emit();
try {
await this._dossiersService.createOrUpdate(dossier).toPromise();
this.updateDossier.emit();
} catch (e) {}
}
deleteDossier() {
@ -136,6 +121,23 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
});
}
private _getForm(): FormGroup {
return this._formBuilder.group({
dossierName: [this.dossier.dossierName, Validators.required],
dossierTemplateId: [
{
value: this.dossier.dossierTemplateId,
disabled: this._dossierStatsService.get(this.dossier.dossierId).hasFiles,
},
Validators.required,
],
description: [this.dossier.description],
dueDate: [this.dossier.dueDate],
watermarkEnabled: [this.dossier.watermarkEnabled],
watermarkPreviewEnabled: [this.dossier.watermarkPreviewEnabled],
});
}
private _notifyDossierDeleted() {
this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: { dossierName: this.dossier.dossierName } });
}

View File

@ -840,6 +840,9 @@
"attributes": {
"custom-attributes": "Custom Dossier Attributes",
"delete-image": "Delete Image",
"error": {
"generic": "Only PNG, JPG and JPEG files are allowed as image dossier attributes."
},
"image-attributes": "Image Attributes",
"no-custom-attributes": "There are no text attributes",
"no-image-attributes": "There are no image attributes",