[Phone field migration][fix] Update field label (#7247)

This commit is contained in:
Marie
2024-09-25 14:06:03 +02:00
committed by GitHub
parent 49b5e53ceb
commit 97ce100fa2

View File

@@ -153,15 +153,14 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
const workspaceId = standardPersonPhoneField.workspaceId; const workspaceId = standardPersonPhoneField.workspaceId;
try { try {
let standardPersonPhonesFieldType = let standardPersonPhonesField =
await this.fieldMetadataRepository.findOneBy({ await this.fieldMetadataRepository.findOneBy({
workspaceId, workspaceId,
standardId: PERSON_STANDARD_FIELD_IDS.phones, standardId: PERSON_STANDARD_FIELD_IDS.phones,
}); });
if (!standardPersonPhonesFieldType) { if (!standardPersonPhonesField) {
standardPersonPhonesFieldType = standardPersonPhonesField = await this.fieldMetadataService.createOne({
await this.fieldMetadataService.createOne({
...deprecatedPhoneFieldWithoutId, ...deprecatedPhoneFieldWithoutId,
label: 'Phones', label: 'Phones',
type: FieldMetadataType.PHONES, type: FieldMetadataType.PHONES,
@@ -171,7 +170,7 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
await this.viewService.removeFieldFromViews({ await this.viewService.removeFieldFromViews({
workspaceId: workspaceId, workspaceId: workspaceId,
fieldId: standardPersonPhonesFieldType.id, fieldId: standardPersonPhonesField.id,
}); });
} }
@@ -181,6 +180,13 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
workspaceSchemaName, workspaceSchemaName,
}); });
// Add (deprecated) to Phone field label
await this.fieldMetadataService.updateOne(standardPersonPhoneField.id, {
id: standardPersonPhoneField.id,
workspaceId: standardPersonPhoneField.workspaceId,
label: 'Phone (deprecated)',
});
// Add new phones field to views and hide deprecated phone field // Add new phones field to views and hide deprecated phone field
const viewFieldRepository = const viewFieldRepository =
await this.twentyORMGlobalManager.getRepositoryForWorkspace<ViewFieldWorkspaceEntity>( await this.twentyORMGlobalManager.getRepositoryForWorkspace<ViewFieldWorkspaceEntity>(
@@ -198,7 +204,7 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
await this.viewService.addFieldToViews({ await this.viewService.addFieldToViews({
workspaceId: workspaceId, workspaceId: workspaceId,
fieldId: standardPersonPhonesFieldType.id, fieldId: standardPersonPhonesField.id,
viewsIds: viewFieldsWithDeprecatedPhoneField viewsIds: viewFieldsWithDeprecatedPhoneField
.filter((viewField) => viewField.viewId !== null) .filter((viewField) => viewField.viewId !== null)
.map((viewField) => viewField.viewId as string), .map((viewField) => viewField.viewId as string),
@@ -213,6 +219,7 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
}, },
[], [],
), ),
size: 150,
}); });
await this.viewService.removeFieldFromViews({ await this.viewService.removeFieldFromViews({
@@ -248,6 +255,13 @@ export class MigratePhoneFieldsToPhonesCommand extends ActiveWorkspacesCommandRu
workspaceId, workspaceId,
); );
} }
// Revert Phone field label (remove (deprecated))
await this.fieldMetadataService.updateOne(standardPersonPhoneField.id, {
id: standardPersonPhoneField.id,
workspaceId: standardPersonPhoneField.workspaceId,
label: 'Phone',
});
} finally { } finally {
await workspaceQueryRunner.release(); await workspaceQueryRunner.release();
} }