zhaoyingbo 18a95387ee
All checks were successful
CI Monitor CI/CD / build-image (push) Successful in 33s
CI Monitor CI/CD / deploy (push) Successful in 37s
chore: 更新lint-staged和commitlint配置
2024-07-25 01:09:24 +00:00

41 lines
1.0 KiB
TypeScript

import { DB } from "../../types/db"
import { managePb404 } from "../../utils/pbTools"
import pbClient from "../pbClient"
/**
* 通过其 ID 检索单个项目。
* @param id - 项目的 ID。
* @returns 一个解析为项目对象的 promise。
*/
const getOne = (id: string) =>
managePb404<DB.Project>(
async () => await pbClient.collection("project").getOne(id)
)
/**
* 检索项目的完整列表。
* @returns 一个解析为项目对象数组的 promise。
*/
const getFullList = async () =>
await pbClient.collection("project").getFullList<DB.Project>()
/**
* 使用新数据更新项目。
* @param id - 要更新的项目的 ID。
* @param data - 用于更新项目的部分数据。
* @returns 一个解析为更新后的项目对象的 promise。
*/
const update = async (id: string, data: Partial<DB.Project>) =>
await pbClient.collection("project").update<DB.Project>(id, data)
/**
* 用于管理项目的函数集合。
*/
const project = {
getFullList,
getOne,
update,
}
export default project