17 lines
617 B
TypeScript
17 lines
617 B
TypeScript
import { listCustomers } from '../../../utils/crm';
|
|
import { requireStaff } from '../../../utils/guard';
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
await requireStaff(event);
|
|
const q = getQuery(event);
|
|
const page = Math.max(1, Number(q.page) || 1);
|
|
const pageSize = Math.min(50, Math.max(1, Number(q.pageSize) || 10));
|
|
return listCustomers({
|
|
q: typeof q.q === 'string' ? q.q.trim() || undefined : undefined,
|
|
status: typeof q.status === 'string' ? q.status || undefined : undefined,
|
|
sort: typeof q.sort === 'string' ? q.sort || undefined : undefined,
|
|
page,
|
|
pageSize,
|
|
});
|
|
});
|