diff --git a/packages/plugins/@nocobase/plugin-ui-schema-storage/src/server/migrations/20250226105145-custom-request-action.ts b/packages/plugins/@nocobase/plugin-ui-schema-storage/src/server/migrations/20250226105145-custom-request-action.ts new file mode 100644 index 0000000000..6fe2960ec5 --- /dev/null +++ b/packages/plugins/@nocobase/plugin-ui-schema-storage/src/server/migrations/20250226105145-custom-request-action.ts @@ -0,0 +1,28 @@ +/** + * This file is part of the NocoBase (R) project. + * Copyright (c) 2020-2024 NocoBase Co., Ltd. + * Authors: NocoBase Team. + * + * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License. + * For more information, please refer to: https://www.nocobase.com/agreement. + */ + +import { Migration } from '@nocobase/server'; +export default class extends Migration { + on = 'afterLoad'; + appVersion = '<1.6.0'; + async up() { + const repo1 = this.db.getRepository('customRequestsRoles'); + const repo2 = this.db.getRepository('uiButtonSchemasRoles'); + const customRequestsRoles = await repo1.find(); + for (const customRequestsRole of customRequestsRoles) { + await repo2.firstOrCreate({ + values: { + uid: customRequestsRole.key, + roleName: customRequestsRole.roleName, + }, + filterKeys: ['uid', 'roleName'], + }); + } + } +}