import { createCrudRoutes } from '@/server/utils/generic-crud.routes'; import { Hetong } from '@/server/modules/contracts/hetong.entity'; import { HetongSchema, CreateHetongDto, UpdateHetongDto } from '@/server/modules/contracts/hetong.entity'; import { authMiddleware } from '@/server/middleware/auth.middleware'; const hetongRoutes = createCrudRoutes({ entity: Hetong, createSchema: CreateHetongDto, updateSchema: UpdateHetongDto, getSchema: HetongSchema, listSchema: HetongSchema, relations: ['client'], searchFields: ['contractNumber', 'clientId', 'status'], middleware: [authMiddleware], permissions: { create: ['contract:create'], read: ['contract:view:own', 'contract:view:department', 'contract:view:sub_department', 'contract:view:all'], update: ['contract:update'], delete: ['contract:delete'] }, userTracking: { createdByField: 'createdBy', updatedByField: 'updatedBy' } }); export default hetongRoutes;