[3969] refactoring

This commit is contained in:
mpetrov 2024-09-11 17:46:06 +03:00
parent f3d3540662
commit 949b2c5f2e
2 changed files with 10 additions and 11 deletions

View File

@ -22,7 +22,7 @@ import {
EntityTableConfig EntityTableConfig
} from '@home/models/entity/entities-table-config.models'; } from '@home/models/entity/entities-table-config.models';
import { Resolve, Router } from '@angular/router'; import { Resolve, Router } from '@angular/router';
import { Resource, ResourceInfo, ResourceTypeTranslationMap } from '@shared/models/resource.models'; import { Resource, ResourceInfo, ResourceType, ResourceTypeTranslationMap } from '@shared/models/resource.models';
import { EntityType, entityTypeResources, entityTypeTranslations } from '@shared/models/entity-type.models'; import { EntityType, entityTypeResources, entityTypeTranslations } from '@shared/models/entity-type.models';
import { NULL_UUID } from '@shared/models/id/has-uuid'; import { NULL_UUID } from '@shared/models/id/has-uuid';
import { DatePipe } from '@angular/common'; import { DatePipe } from '@angular/common';
@ -150,6 +150,9 @@ export class ResourcesLibraryTableConfigResolver implements Resolve<EntityTableC
} }
private isResourceEditable(resource: ResourceInfo, authority: Authority): boolean { private isResourceEditable(resource: ResourceInfo, authority: Authority): boolean {
if (resource && resource.resourceType === ResourceType.LWM2M_MODEL) {
return false;
}
if (authority === Authority.TENANT_ADMIN) { if (authority === Authority.TENANT_ADMIN) {
return resource && resource.tenantId && resource.tenantId.id !== NULL_UUID; return resource && resource.tenantId && resource.tenantId.id !== NULL_UUID;
} else { } else {

View File

@ -88,16 +88,17 @@ export class ResourcesLibraryComponent extends EntityComponent<Resource> impleme
updateForm(entity: Resource): void { updateForm(entity: Resource): void {
const { resourceType, fileName, title, data } = entity; const { resourceType, fileName, title, data } = entity;
this.updateTableReadonlyConfig(); this.entityForm.patchValue({ resourceType, fileName, title, data });
}
if (this.isEdit) { override updateFormState(): void {
super.updateFormState();
if (this.isEdit && this.entityForm) {
this.entityForm.get('resourceType').disable({ emitEvent: false }); this.entityForm.get('resourceType').disable({ emitEvent: false });
if (resourceType !== ResourceType.JS_MODULE) { if (this.entityForm.get('resourceType').value !== ResourceType.JS_MODULE) {
this.entityForm.get('fileName').disable({ emitEvent: false }); this.entityForm.get('fileName').disable({ emitEvent: false });
} }
} }
this.entityForm.patchValue({ resourceType, fileName, title, data });
} }
prepareFormValue(formValue: Resource): Resource { prepareFormValue(formValue: Resource): Resource {
@ -138,11 +139,6 @@ export class ResourcesLibraryComponent extends EntityComponent<Resource> impleme
})); }));
} }
private updateTableReadonlyConfig(): void {
this.entitiesTableConfigValue.detailsReadonly = () =>
this.resourceType.LWM2M_MODEL === this.entityForm.get('resourceType').value;
}
private observeResourceTypeChange(): void { private observeResourceTypeChange(): void {
this.entityForm.get('resourceType').valueChanges.pipe( this.entityForm.get('resourceType').valueChanges.pipe(
startWith(ResourceType.JS_MODULE), startWith(ResourceType.JS_MODULE),