Edit dossier template from info
This commit is contained in:
parent
844971e241
commit
0e5b5349cd
@ -7,7 +7,7 @@ import { Moment } from 'moment';
|
|||||||
import { applyIntervalConstraints } from '@utils/date-inputs-utils';
|
import { applyIntervalConstraints } from '@utils/date-inputs-utils';
|
||||||
import { downloadTypesTranslations } from '../../../../translations/download-types-translations';
|
import { downloadTypesTranslations } from '../../../../translations/download-types-translations';
|
||||||
import { DossierTemplatesService } from '@services/entity-services/dossier-templates.service';
|
import { DossierTemplatesService } from '@services/entity-services/dossier-templates.service';
|
||||||
import { BaseDialogComponent, Toaster } from '@iqser/common-ui';
|
import { BaseDialogComponent, LoadingService, Toaster } from '@iqser/common-ui';
|
||||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||||
import { DownloadFileType, IDossierTemplate } from '@red/domain';
|
import { DownloadFileType, IDossierTemplate } from '@red/domain';
|
||||||
import { HttpStatusCode } from '@angular/common/http';
|
import { HttpStatusCode } from '@angular/common/http';
|
||||||
@ -34,6 +34,7 @@ export class AddEditDossierTemplateDialogComponent extends BaseDialogComponent {
|
|||||||
private readonly _toaster: Toaster,
|
private readonly _toaster: Toaster,
|
||||||
private readonly _dossierTemplatesService: DossierTemplatesService,
|
private readonly _dossierTemplatesService: DossierTemplatesService,
|
||||||
private readonly _formBuilder: FormBuilder,
|
private readonly _formBuilder: FormBuilder,
|
||||||
|
private readonly _loadingService: LoadingService,
|
||||||
public dialogRef: MatDialogRef<AddEditDossierTemplateDialogComponent>,
|
public dialogRef: MatDialogRef<AddEditDossierTemplateDialogComponent>,
|
||||||
@Inject(MAT_DIALOG_DATA) readonly dossierTemplate: IDossierTemplate,
|
@Inject(MAT_DIALOG_DATA) readonly dossierTemplate: IDossierTemplate,
|
||||||
) {
|
) {
|
||||||
@ -87,6 +88,7 @@ export class AddEditDossierTemplateDialogComponent extends BaseDialogComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async save() {
|
async save() {
|
||||||
|
this._loadingService.start();
|
||||||
try {
|
try {
|
||||||
const dossierTemplate = {
|
const dossierTemplate = {
|
||||||
dossierTemplateId: this.dossierTemplate?.dossierTemplateId,
|
dossierTemplateId: this.dossierTemplate?.dossierTemplateId,
|
||||||
@ -104,6 +106,7 @@ export class AddEditDossierTemplateDialogComponent extends BaseDialogComponent {
|
|||||||
: _('add-edit-dossier-template.error.generic');
|
: _('add-edit-dossier-template.error.generic');
|
||||||
this._toaster.error(message, { error });
|
this._toaster.error(message, { error });
|
||||||
}
|
}
|
||||||
|
this._loadingService.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
private _getForm(): FormGroup {
|
private _getForm(): FormGroup {
|
||||||
|
|||||||
@ -33,7 +33,12 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="heading mt-40" translate="dossier-template-info-screen.description">
|
<div class="heading mt-40" translate="dossier-template-info-screen.description">
|
||||||
<iqser-circle-button class="ml-8" icon="iqser:edit"></iqser-circle-button>
|
<iqser-circle-button
|
||||||
|
(action)="openEditDossierTemplateDialog($event)"
|
||||||
|
*ngIf="permissionsService.isAdmin()"
|
||||||
|
class="ml-8"
|
||||||
|
icon="iqser:edit"
|
||||||
|
></iqser-circle-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>{{ dossierTemplate.description }}</div>
|
<div>{{ dossierTemplate.description }}</div>
|
||||||
|
|||||||
@ -4,6 +4,9 @@ import { ActivatedRoute } from '@angular/router';
|
|||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
import { DossierTemplate, DossierTemplateStats } from '@red/domain';
|
import { DossierTemplate, DossierTemplateStats } from '@red/domain';
|
||||||
import { DossierTemplateStatsService } from '@services/entity-services/dossier-template-stats.service';
|
import { DossierTemplateStatsService } from '@services/entity-services/dossier-template-stats.service';
|
||||||
|
import { AdminDialogService } from '../../../services/admin-dialog.service';
|
||||||
|
import { tap } from 'rxjs/operators';
|
||||||
|
import { PermissionsService } from '@services/permissions.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
templateUrl: './dossier-template-info-screen.component.html',
|
templateUrl: './dossier-template-info-screen.component.html',
|
||||||
@ -13,14 +16,23 @@ import { DossierTemplateStatsService } from '@services/entity-services/dossier-t
|
|||||||
export class DossierTemplateInfoScreenComponent {
|
export class DossierTemplateInfoScreenComponent {
|
||||||
dossierTemplate$: Observable<DossierTemplate>;
|
dossierTemplate$: Observable<DossierTemplate>;
|
||||||
dossierTemplateStats$: Observable<DossierTemplateStats>;
|
dossierTemplateStats$: Observable<DossierTemplateStats>;
|
||||||
|
private _dossierTemplate: DossierTemplate;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private readonly _dossierTemplatesService: DossierTemplatesService,
|
private readonly _dossierTemplatesService: DossierTemplatesService,
|
||||||
private readonly _dossierTemplateStatsService: DossierTemplateStatsService,
|
private readonly _dossierTemplateStatsService: DossierTemplateStatsService,
|
||||||
|
private readonly _dialogService: AdminDialogService,
|
||||||
private readonly _route: ActivatedRoute,
|
private readonly _route: ActivatedRoute,
|
||||||
|
readonly permissionsService: PermissionsService,
|
||||||
) {
|
) {
|
||||||
const dossierTemplateId = _route.snapshot.paramMap.get('dossierTemplateId');
|
const dossierTemplateId = _route.snapshot.paramMap.get('dossierTemplateId');
|
||||||
this.dossierTemplate$ = this._dossierTemplatesService.getEntityChanged$(dossierTemplateId);
|
this.dossierTemplate$ = this._dossierTemplatesService
|
||||||
|
.getEntityChanged$(dossierTemplateId)
|
||||||
|
.pipe(tap(dossierTemplate => (this._dossierTemplate = dossierTemplate)));
|
||||||
this.dossierTemplateStats$ = this._dossierTemplateStatsService.watch$(dossierTemplateId);
|
this.dossierTemplateStats$ = this._dossierTemplateStatsService.watch$(dossierTemplateId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
openEditDossierTemplateDialog($event: any) {
|
||||||
|
this._dialogService.openDialog('addEditDossierTemplate', $event, this._dossierTemplate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,7 +38,7 @@ export class DossierTemplateActionsComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
openEditDossierTemplateDialog($event: any) {
|
openEditDossierTemplateDialog($event: any) {
|
||||||
this._dialogService.openDialog('addEditDossierTemplate', $event, this.dossierTemplate, () => {});
|
this._dialogService.openDialog('addEditDossierTemplate', $event, this.dossierTemplate);
|
||||||
}
|
}
|
||||||
|
|
||||||
openDeleteDossierTemplateDialog($event?: MouseEvent) {
|
openDeleteDossierTemplateDialog($event?: MouseEvent) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user