feat: add status query string param

This commit is contained in:
Methapon2001 2024-06-25 14:09:54 +07:00
parent cd47863f2a
commit 71fcc30f42

View file

@ -74,9 +74,21 @@ export class ServiceController extends Controller {
@Query() query: string = "",
@Query() page: number = 1,
@Query() pageSize: number = 30,
@Query() status?: Status,
) {
const filterStatus = (val?: Status) => {
if (!val) return {};
return val !== Status.CREATED && val !== Status.ACTIVE
? { status: val }
: { OR: [{ status: Status.CREATED }, { status: Status.ACTIVE }] };
};
const where = {
OR: [{ name: { contains: query } }, { detail: { contains: query } }],
OR: [
{ name: { contains: query }, ...filterStatus(status) },
{ detail: { contains: query }, ...filterStatus(status) },
],
} satisfies Prisma.ServiceWhereInput;
const [result, total] = await prisma.$transaction([