Improve view migration command (#13403)

Remove unused imports.
Improve typing.
This commit is contained in:
Raphaël Bosi
2025-07-24 11:50:25 +02:00
committed by GitHub
parent e18005f937
commit 7653be8fde
2 changed files with 7 additions and 37 deletions

View File

@ -13,12 +13,6 @@ import { Workspace } from 'src/engine/core-modules/workspace/workspace.entity';
import { DataSourceModule } from 'src/engine/metadata-modules/data-source/data-source.module'; import { DataSourceModule } from 'src/engine/metadata-modules/data-source/data-source.module';
import { FieldMetadataModule } from 'src/engine/metadata-modules/field-metadata/field-metadata.module'; import { FieldMetadataModule } from 'src/engine/metadata-modules/field-metadata/field-metadata.module';
import { ObjectMetadataModule } from 'src/engine/metadata-modules/object-metadata/object-metadata.module'; import { ObjectMetadataModule } from 'src/engine/metadata-modules/object-metadata/object-metadata.module';
import { ViewField } from 'src/engine/metadata-modules/view/view-field.entity';
import { ViewFilterGroup } from 'src/engine/metadata-modules/view/view-filter-group.entity';
import { ViewFilter } from 'src/engine/metadata-modules/view/view-filter.entity';
import { ViewGroup } from 'src/engine/metadata-modules/view/view-group.entity';
import { ViewSort } from 'src/engine/metadata-modules/view/view-sort.entity';
import { View } from 'src/engine/metadata-modules/view/view.entity';
import { WorkspaceCacheStorageModule } from 'src/engine/workspace-cache-storage/workspace-cache-storage.module'; import { WorkspaceCacheStorageModule } from 'src/engine/workspace-cache-storage/workspace-cache-storage.module';
import { DevSeederModule } from 'src/engine/workspace-manager/dev-seeder/dev-seeder.module'; import { DevSeederModule } from 'src/engine/workspace-manager/dev-seeder/dev-seeder.module';
import { WorkspaceManagerModule } from 'src/engine/workspace-manager/workspace-manager.module'; import { WorkspaceManagerModule } from 'src/engine/workspace-manager/workspace-manager.module';
@ -32,18 +26,7 @@ import { DataSeedWorkspaceCommand } from './data-seed-dev-workspace.command';
imports: [ imports: [
UpgradeVersionCommandModule, UpgradeVersionCommandModule,
TypeOrmModule.forFeature( TypeOrmModule.forFeature([Workspace], 'core'),
[
Workspace,
View,
ViewField,
ViewFilter,
ViewSort,
ViewGroup,
ViewFilterGroup,
],
'core',
),
// Cron command dependencies // Cron command dependencies
MessagingImportManagerModule, MessagingImportManagerModule,

View File

@ -36,18 +36,6 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
constructor( constructor(
@InjectRepository(Workspace, 'core') @InjectRepository(Workspace, 'core')
protected readonly workspaceRepository: Repository<Workspace>, protected readonly workspaceRepository: Repository<Workspace>,
@InjectRepository(View, 'core')
private readonly coreViewRepository: Repository<View>,
@InjectRepository(ViewField, 'core')
private readonly coreViewFieldRepository: Repository<ViewField>,
@InjectRepository(ViewFilter, 'core')
private readonly coreViewFilterRepository: Repository<ViewFilter>,
@InjectRepository(ViewSort, 'core')
private readonly coreViewSortRepository: Repository<ViewSort>,
@InjectRepository(ViewGroup, 'core')
private readonly coreViewGroupRepository: Repository<ViewGroup>,
@InjectRepository(ViewFilterGroup, 'core')
private readonly coreViewFilterGroupRepository: Repository<ViewFilterGroup>,
private readonly featureFlagService: FeatureFlagService, private readonly featureFlagService: FeatureFlagService,
protected readonly twentyORMGlobalManager: TwentyORMGlobalManager, protected readonly twentyORMGlobalManager: TwentyORMGlobalManager,
@InjectDataSource('core') @InjectDataSource('core')
@ -242,7 +230,7 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
workspaceId: string, workspaceId: string,
queryRunner: QueryRunner, queryRunner: QueryRunner,
): Promise<void> { ): Promise<void> {
const coreView = { const coreView: Partial<View> = {
id: workspaceView.id, id: workspaceView.id,
name: workspaceView.name, name: workspaceView.name,
objectMetadataId: workspaceView.objectMetadataId, objectMetadataId: workspaceView.objectMetadataId,
@ -277,7 +265,7 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
queryRunner: QueryRunner, queryRunner: QueryRunner,
): Promise<void> { ): Promise<void> {
for (const field of workspaceViewFields) { for (const field of workspaceViewFields) {
const coreViewField = { const coreViewField: Partial<ViewField> = {
id: field.id, id: field.id,
fieldMetadataId: field.fieldMetadataId, fieldMetadataId: field.fieldMetadataId,
viewId: field.viewId, viewId: field.viewId,
@ -319,13 +307,12 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
); );
} }
const coreViewFilter = { const coreViewFilter: Partial<ViewFilter> = {
id: filter.id, id: filter.id,
fieldMetadataId: filter.fieldMetadataId, fieldMetadataId: filter.fieldMetadataId,
viewId: filter.viewId, viewId: filter.viewId,
operand: filter.operand, operand: filter.operand,
value: parsedValue, value: parsedValue,
displayValue: filter.displayValue,
viewFilterGroupId: filter.viewFilterGroupId, viewFilterGroupId: filter.viewFilterGroupId,
workspaceId, workspaceId,
createdAt: new Date(filter.createdAt), createdAt: new Date(filter.createdAt),
@ -354,7 +341,7 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
const direction = sort.direction.toUpperCase() as ViewSortDirection; const direction = sort.direction.toUpperCase() as ViewSortDirection;
const coreViewSort = { const coreViewSort: Partial<ViewSort> = {
id: sort.id, id: sort.id,
fieldMetadataId: sort.fieldMetadataId, fieldMetadataId: sort.fieldMetadataId,
viewId: sort.viewId, viewId: sort.viewId,
@ -384,7 +371,7 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
continue; continue;
} }
const coreViewGroup = { const coreViewGroup: Partial<ViewGroup> = {
id: group.id, id: group.id,
fieldMetadataId: group.fieldMetadataId, fieldMetadataId: group.fieldMetadataId,
viewId: group.viewId, viewId: group.viewId,
@ -409,7 +396,7 @@ export class MigrateViewsToCoreCommand extends ActiveOrSuspendedWorkspacesMigrat
queryRunner: QueryRunner, queryRunner: QueryRunner,
): Promise<void> { ): Promise<void> {
for (const filterGroup of workspaceViewFilterGroups) { for (const filterGroup of workspaceViewFilterGroups) {
const coreViewFilterGroup = { const coreViewFilterGroup: Partial<ViewFilterGroup> = {
id: filterGroup.id, id: filterGroup.id,
viewId: filterGroup.viewId, viewId: filterGroup.viewId,
logicalOperator: logicalOperator: