From a62b57bd8be1ea2449ac27913e3dc34de36976a7 Mon Sep 17 00:00:00 2001 From: Fai Date: Mon, 3 Sep 2018 12:49:27 +0800 Subject: [PATCH] =?UTF-8?q?feat(schemas/Task):=20=E8=A1=A5=E5=85=85?= =?UTF-8?q?=E5=B7=B2=E5=9C=A8=E4=BD=BF=E7=94=A8=E4=B8=AD=E7=9A=84=20`creat?= =?UTF-8?q?or`=20=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/schemas/Task.ts | 10 ++++++++++ test/apis/task.spec.ts | 1 + 2 files changed, 11 insertions(+) diff --git a/src/schemas/Task.ts b/src/schemas/Task.ts index a4cfce843..a85612cb1 100644 --- a/src/schemas/Task.ts +++ b/src/schemas/Task.ts @@ -32,6 +32,7 @@ export interface TaskSchema { isArchived: boolean isDeleted: boolean created: string + creator?: ExecutorOrCreator updated: string visible: VisibleOption _organizationId: OrganizationId | null @@ -145,6 +146,15 @@ const schema: SchemaDef = { created: { type: RDBType.DATE_TIME }, + creator: { + type: Relationship.oneToOne, + virtual: { + name: 'User', + where: (userTable: any) => ({ + _creatorId: userTable._id + }) + } + }, customfields: { type: RDBType.OBJECT }, diff --git a/test/apis/task.spec.ts b/test/apis/task.spec.ts index 2d9b50d63..3e1cb4b92 100644 --- a/test/apis/task.spec.ts +++ b/test/apis/task.spec.ts @@ -51,6 +51,7 @@ describe('TaskApi socket spec', () => { yield sdk.database.get('Task', { where: { _id: fixture._id } }) .values() .do(([r]) => { + delete r.creator delete r.project looseDeepEqual(r, fixture) })