This commit is contained in:
yubintw
2024-03-25 21:39:05 +08:00
commit 9df48062d4
40 changed files with 15864 additions and 0 deletions

14
backend/src/repo/todo.ts Normal file
View File

@@ -0,0 +1,14 @@
import { ModifyResult, UpdateQuery } from 'mongoose'
import TodoModel from '../models/todo'
import { Todo, TodoBody } from '../types/todo'
export const findAllTodos: () => Promise<Array<Todo>> = () => TodoModel.find().exec()
export const createTodo: (todoBody: TodoBody) => Promise<Todo> = (todoBody) => TodoModel.create(todoBody)
export const updateTodoById: (id: string, update: UpdateQuery<TodoBody>) => Promise<Todo | null> = (id, update) =>
TodoModel.findByIdAndUpdate(id, update, { new: true })
export const deleteTodoById: (id: string) => Promise<ModifyResult<Todo>> = (id) =>
TodoModel.findByIdAndDelete(id).exec()