diff --git a/schema.gql b/schema.gql index bbc975f7..48183f8b 100644 --- a/schema.gql +++ b/schema.gql @@ -14,6 +14,7 @@ type BatchDeleteModel { ok: Float n: Float deletedCount: Float + ids: [ID!]! } type BatchUpdateModel { diff --git a/src/database/models/batch-delete.model.ts b/src/database/models/batch-delete.model.ts index d1ac8863..34afe825 100644 --- a/src/database/models/batch-delete.model.ts +++ b/src/database/models/batch-delete.model.ts @@ -1,4 +1,4 @@ -import { Field, ObjectType } from 'type-graphql' +import { Field, ObjectType, ID } from 'type-graphql' @ObjectType() export class BatchDeleteModel { @@ -10,4 +10,8 @@ export class BatchDeleteModel { @Field({ nullable: true }) public readonly deletedCount?: number + + // FIXME: ids 不是可选参数 + @Field(() => ID) + public readonly ids?: string[] } diff --git a/src/open-sources/open-sources.service.ts b/src/open-sources/open-sources.service.ts index 426d5af0..f0016d58 100644 --- a/src/open-sources/open-sources.service.ts +++ b/src/open-sources/open-sources.service.ts @@ -38,8 +38,13 @@ export class OpenSourcesService { } public async batchDelete(ids: string[]): Promise { - return this.openSourceModel.deleteMany({ + const res = await this.openSourceModel.deleteMany({ _id: { $in: ids }, }) + + return { + ...res, + ids, + } } }