Solved a problem with the assignees stuff related to the query
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
import client from "@/lib/mongodb";
|
||||
import {Assignment} from "@/interfaces/results";
|
||||
import {getAllAssignersByCorporate} from "@/utils/groups.be";
|
||||
import {Type} from "@/interfaces/user";
|
||||
import { Assignment } from "@/interfaces/results";
|
||||
import { getAllAssignersByCorporate } from "@/utils/groups.be";
|
||||
import { Type } from "@/interfaces/user";
|
||||
|
||||
const db = client.db(process.env.MONGODB_DB);
|
||||
|
||||
export const getAssignmentsByAssigner = async (id: string, startDate?: Date, endDate?: Date) => {
|
||||
let query: any = {assigner: id};
|
||||
let query: any = { assigner: id };
|
||||
|
||||
if (startDate) {
|
||||
query.startDate = {$gte: startDate.toISOString()};
|
||||
query.startDate = { $gte: startDate.toISOString() };
|
||||
}
|
||||
|
||||
if (endDate) {
|
||||
query.endDate = {$lte: endDate.toISOString()};
|
||||
query.endDate = { $lte: endDate.toISOString() };
|
||||
}
|
||||
|
||||
return await db.collection("assignments").find<Assignment>(query).toArray();
|
||||
@@ -24,39 +24,39 @@ export const getAssignments = async () => {
|
||||
};
|
||||
|
||||
export const getAssignment = async (id: string) => {
|
||||
return await db.collection("assignments").findOne<Assignment>({id});
|
||||
return await db.collection("assignments").findOne<Assignment>({ id });
|
||||
};
|
||||
|
||||
export const getAssignmentsByAssignee = async (id: string, filter?: {[key in keyof Partial<Assignment>]: any}) => {
|
||||
export const getAssignmentsByAssignee = async (id: string, filter?: { [key in keyof Partial<Assignment>]: any }) => {
|
||||
return await db
|
||||
.collection("assignments")
|
||||
.find<Assignment>({assignees: [id], ...(!filter ? {} : filter)})
|
||||
.find<Assignment>({ assignees: id, ...(!filter ? {} : filter) })
|
||||
.toArray();
|
||||
};
|
||||
|
||||
export const getAssignmentsByAssignerBetweenDates = async (id: string, startDate: Date, endDate: Date) => {
|
||||
return await db.collection("assignments").find<Assignment>({assigner: id}).toArray();
|
||||
return await db.collection("assignments").find<Assignment>({ assigner: id }).toArray();
|
||||
};
|
||||
|
||||
export const getAssignmentsByAssigners = async (ids: string[], startDate?: Date, endDate?: Date) => {
|
||||
return await db
|
||||
.collection("assignments")
|
||||
.find<Assignment>({
|
||||
assigner: {$in: ids},
|
||||
...(!!startDate ? {startDate: {$gte: startDate.toISOString()}} : {}),
|
||||
...(!!endDate ? {endDate: {$lte: endDate.toISOString()}} : {}),
|
||||
assigner: { $in: ids },
|
||||
...(!!startDate ? { startDate: { $gte: startDate.toISOString() } } : {}),
|
||||
...(!!endDate ? { endDate: { $lte: endDate.toISOString() } } : {}),
|
||||
})
|
||||
.toArray();
|
||||
};
|
||||
|
||||
export const getEntityAssignments = async (id: string) => {
|
||||
return await db.collection("assignments").find<Assignment>({entity: id}).toArray();
|
||||
return await db.collection("assignments").find<Assignment>({ entity: id }).toArray();
|
||||
};
|
||||
|
||||
export const getEntitiesAssignments = async (ids: string[]) => {
|
||||
return await db
|
||||
.collection("assignments")
|
||||
.find<Assignment>({entity: {$in: ids}})
|
||||
.find<Assignment>({ entity: { $in: ids } })
|
||||
.toArray();
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user