diff --git a/src/ctask/ctask.schema.ts b/src/ctask/ctask.schema.ts index 954873f..226044c 100644 --- a/src/ctask/ctask.schema.ts +++ b/src/ctask/ctask.schema.ts @@ -56,6 +56,7 @@ const createTaskInput = z.object({ currentStage: z.number(), }) .optional(), + note: z.string().optional(), }); const updateTaskInput = z.object({ diff --git a/src/ctask/ctask.service.ts b/src/ctask/ctask.service.ts index 99ff179..0242156 100644 --- a/src/ctask/ctask.service.ts +++ b/src/ctask/ctask.service.ts @@ -1,4 +1,5 @@ import { AuthenticatedUser } from "../auth"; +import { createNote } from "../note/note.service"; import { getFilterObject, getSortObject, PageQueryParams } from "../pagination"; import { generateId } from "../utils/id"; import { taskPipeline } from "../utils/pipeline"; @@ -30,6 +31,16 @@ export async function createTask( createdBy: user.userId ?? null, }); + if (input.note) { + await createNote( + { + content: input.note, + }, + task.pid, + user + ); + } + return await taskModel .findOne({ pid: task.pid }) .populate({ path: "createdBy", select: "pid name avatar" }) diff --git a/src/task/task.schema.ts b/src/task/task.schema.ts index f6bb322..28b2cba 100644 --- a/src/task/task.schema.ts +++ b/src/task/task.schema.ts @@ -68,6 +68,7 @@ const createTaskInput = z.object({ currentStage: z.number(), }) .optional(), + note: z.string().optional(), }); const updateTaskInput = z.object({ diff --git a/src/task/task.service.ts b/src/task/task.service.ts index bfaadc6..08a9bc7 100644 --- a/src/task/task.service.ts +++ b/src/task/task.service.ts @@ -1,4 +1,5 @@ import { AuthenticatedUser } from "../auth"; +import { createNote } from "../note/note.service"; import { getFilterObject, getSortObject, PageQueryParams } from "../pagination"; import { generateId } from "../utils/id"; import { taskPipeline } from "../utils/pipeline"; @@ -29,6 +30,16 @@ export async function createTask( createdBy: user.userId ?? null, }); + if (input.note) { + await createNote( + { + content: input.note, + }, + task.pid, + user + ); + } + return await taskModel .findOne({ pid: task.pid }) .populate({ path: "createdBy", select: "pid name avatar" })