switch to mongo's id handling
This commit is contained in:
@@ -1,32 +1,33 @@
|
||||
import { ObjectId } from "mongodb";
|
||||
import { ApprovalWorkflow } from "@/interfaces/approval.workflow";
|
||||
import client from "@/lib/mongodb";
|
||||
|
||||
const db = client.db(process.env.MONGODB_DB);
|
||||
|
||||
export const getApprovalWorkflows = async (ids?: string[]) => {
|
||||
return await db
|
||||
.collection("approval-workflows")
|
||||
.find<ApprovalWorkflow>(ids ? { id: { $in: ids } } : {})
|
||||
.toArray();
|
||||
return await db
|
||||
.collection<ApprovalWorkflow>("approval-workflows")
|
||||
.find(ids ? { _id: { $in: ids.map((id) => new ObjectId(id)) } } : {})
|
||||
.toArray();
|
||||
};
|
||||
|
||||
export const getApprovalWorkflow = async (id: string) => {
|
||||
return await db.collection("approval-workflows").findOne<ApprovalWorkflow>({ id });
|
||||
return await db.collection<ApprovalWorkflow>("approval-workflows").findOne({ _id: new ObjectId(id) });
|
||||
};
|
||||
|
||||
export const createApprovalWorkflow = async (workflow: ApprovalWorkflow) => {
|
||||
return await db.collection("approval-workflows").insertOne(workflow);
|
||||
export const createApprovalWorkflow = async (workflow: Omit<ApprovalWorkflow, "_id">) => {
|
||||
return await db.collection("approval-workflows").insertOne(workflow);
|
||||
};
|
||||
|
||||
export const createApprovalWorkflows = async (workflows: ApprovalWorkflow[]) => {
|
||||
if (workflows.length === 0) return;
|
||||
return await db.collection<ApprovalWorkflow>("approval-workflows").insertMany(workflows);
|
||||
export const createApprovalWorkflows = async (workflows: Omit<ApprovalWorkflow, "_id">[]) => {
|
||||
if (workflows.length === 0) return;
|
||||
return await db.collection("approval-workflows").insertMany(workflows);
|
||||
};
|
||||
|
||||
export const updateApprovalWorkflow = async (id: string, workflow: ApprovalWorkflow) => {
|
||||
return await db.collection("approval-workflows").replaceOne({ id }, workflow);
|
||||
export const updateApprovalWorkflow = async (id: string, workflow: Omit<ApprovalWorkflow, "_id">) => {
|
||||
return await db.collection("approval-workflows").replaceOne({ _id: new ObjectId(id) }, workflow);
|
||||
};
|
||||
|
||||
export const deleteApprovalWorkflow = async (id: string) => {
|
||||
return await db.collection("approval-workflows").deleteOne({ id });
|
||||
};
|
||||
return await db.collection("approval-workflows").deleteOne({ _id: new ObjectId(id) });
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user