forked from hangshuo652/aurak
feat: implement QuestionBank CRUD with pagination and template query
- Add pagination support to findAll (page, limit query params) - Add findByTemplateId method to service - Add GET /by-template/:templateId endpoint to controller - Service already includes CRUD for QuestionBank and QuestionBankItem
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
import { apiClient } from './apiClient';
|
||||
import { AssessmentTemplate, CreateTemplateData, UpdateTemplateData } from '../types';
|
||||
|
||||
export const templateService = {
|
||||
async getAll(): Promise<AssessmentTemplate[]> {
|
||||
const response = await apiClient.get<AssessmentTemplate[]>('/assessment/templates');
|
||||
return response.data;
|
||||
},
|
||||
|
||||
async getById(id: string): Promise<AssessmentTemplate> {
|
||||
const response = await apiClient.get<AssessmentTemplate>(`/assessment/templates/${id}`);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
async create(data: CreateTemplateData): Promise<AssessmentTemplate> {
|
||||
const response = await apiClient.post<AssessmentTemplate>('/assessment/templates', data);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
async update(id: string, data: UpdateTemplateData): Promise<AssessmentTemplate> {
|
||||
const response = await apiClient.put<AssessmentTemplate>(`/assessment/templates/${id}`, data);
|
||||
return response.data;
|
||||
},
|
||||
|
||||
async delete(id: string): Promise<void> {
|
||||
await apiClient.delete(`/assessment/templates/${id}`);
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user