Skip to content

Commit 5ecbc1a

Browse files
committed
chore: cleanup api
1 parent 0b6859a commit 5ecbc1a

File tree

5 files changed

+9
-84
lines changed

5 files changed

+9
-84
lines changed

client/src/services/activityApiService.ts

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import type {
88
import type {
99
UploadPdfDraftResponse,
1010
UploadPdfDraftOptions,
11-
ArtikulationsschemaResponse,
1211
ActivityMarkdownsResponse,
1312
CreateActivityRequest,
1413
UpdateActivityRequest,
@@ -210,23 +209,6 @@ export const ActivityApi = {
210209
);
211210
},
212211

213-
/**
214-
* Generate Artikulationsschema markdown from an uploaded PDF.
215-
*/
216-
async generateArtikulationsschema(
217-
documentId: string,
218-
metadata?: Record<string, unknown>,
219-
) {
220-
return ApiRequestMixin.request<ArtikulationsschemaResponse>(
221-
"/api/activities/generate-artikulationsschema",
222-
{
223-
method: "POST",
224-
headers: { "Content-Type": "application/json" },
225-
body: JSON.stringify({ documentId: documentId, metadata: metadata }),
226-
},
227-
);
228-
},
229-
230212
/**
231213
* Generate all activity markdowns (Deckblatt, Artikulationsschema, Hintergrundwissen).
232214
*/
@@ -236,7 +218,7 @@ export const ActivityApi = {
236218
types?: string[],
237219
) {
238220
return ApiRequestMixin.request<ActivityMarkdownsResponse>(
239-
"/api/activities/generate-activity-markdowns",
221+
"/api/activities/generate-markdowns",
240222
{
241223
method: "POST",
242224
headers: { "Content-Type": "application/json" },
@@ -254,7 +236,7 @@ export const ActivityApi = {
254236
*/
255237
async downloadActivityPdf(activityId: string) {
256238
const response = await authService.makeAuthenticatedRequest(
257-
`/api/activities/${activityId}/download-pdf`,
239+
`/api/activities/${activityId}/pdf`,
258240
);
259241

260242
if (!response.ok) {
@@ -269,7 +251,7 @@ export const ActivityApi = {
269251
*/
270252
async downloadActivityDocx(activityId: string) {
271253
const response = await authService.makeAuthenticatedRequest(
272-
`/api/activities/${activityId}/download-docx`,
254+
`/api/activities/${activityId}/docx`,
273255
);
274256

275257
if (!response.ok) {

client/src/services/apiService.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@ export class ApiService {
7474
static getEnvironment = ActivityApi.getEnvironment;
7575
static uploadPdfDraft = ActivityApi.uploadPdfDraft;
7676
static regenerateMetadata = ActivityApi.regenerateMetadata;
77-
static generateArtikulationsschema = ActivityApi.generateArtikulationsschema;
7877
static generateActivityMarkdowns = ActivityApi.generateActivityMarkdowns;
7978
static downloadActivityPdf = ActivityApi.downloadActivityPdf;
8079
static downloadActivityDocx = ActivityApi.downloadActivityDocx;

client/src/types/api.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,6 @@ export interface UploadPdfDraftOptions {
1717
extractMetadata?: boolean;
1818
}
1919

20-
// Artikulationsschema generation response
21-
export interface ArtikulationsschemaResponse {
22-
markdown: string;
23-
documentId: string;
24-
}
25-
2620
// Activity markdowns generation response (all three types)
2721
export interface ActivityMarkdownsResponse {
2822
documentId: string;

server/src/main/java/com/learnhub/activitymanagement/controller/ActivityController.java

Lines changed: 6 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.learnhub.activitymanagement.controller;
22

33
import com.learnhub.activitymanagement.dto.request.ActivityFilterRequest;
4-
import com.learnhub.activitymanagement.dto.request.LessonPlanInfoRequest;
54
import com.learnhub.activitymanagement.dto.request.LessonPlanRequest;
65
import com.learnhub.activitymanagement.dto.request.RecommendationRequest;
76
import com.learnhub.activitymanagement.dto.response.ActivityResponse;
@@ -189,45 +188,6 @@ public ResponseEntity<?> generateLessonPlan(@RequestBody LessonPlanRequest reque
189188
return buildFileDownloadResponse(lessonPlanPdf, "lesson_plan", ".pdf", MediaType.APPLICATION_PDF, "inline");
190189
}
191190

192-
@PostMapping("/lesson-plan/info")
193-
@PreAuthorize("permitAll()")
194-
@Operation(summary = "Get lesson plan info", description = "Get lesson plan generation information")
195-
public ResponseEntity<?> getLessonPlanInfo(@RequestBody LessonPlanInfoRequest request) {
196-
logger.info("POST /api/activities/lesson-plan/info - Get lesson plan info called with {} activities",
197-
request.getActivities() != null ? request.getActivities().size() : 0);
198-
LessonPlanInfoResponse info = pdfService.getLessonPlanInfo(request.getActivities());
199-
return ResponseEntity.ok(info);
200-
}
201-
202-
@PostMapping("/generate-artikulationsschema")
203-
@PreAuthorize("hasRole('ADMIN')")
204-
@SecurityRequirement(name = "BearerAuth")
205-
@Operation(summary = "Generate Artikulationsschema", description = "Generate or extract an Artikulationsschema markdown from an uploaded PDF (admin only)")
206-
public ResponseEntity<?> generateArtikulationsschema(@RequestBody Map<String, Object> request) {
207-
logger.info("POST /api/activities/generate-artikulationsschema called");
208-
UUID documentId = parseRequiredDocumentId(request);
209-
210-
// Get PDF text from cached or persisted PDF
211-
String pdfText = pdfService.extractTextFromPdf(documentId);
212-
if (pdfText == null || pdfText.trim().length() < 10) {
213-
throw new IllegalArgumentException("PDF does not contain sufficient text for schema generation");
214-
}
215-
216-
// Extract user-adjusted metadata if provided
217-
@SuppressWarnings("unchecked")
218-
Map<String, Object> metadata = request.get("metadata") instanceof Map
219-
? (Map<String, Object>) request.get("metadata")
220-
: null;
221-
222-
String markdown = llmService.generateArtikulationsschema(pdfText, metadata);
223-
224-
Map<String, Object> response = new HashMap<>();
225-
response.put("markdown", markdown);
226-
response.put("documentId", documentId.toString());
227-
228-
return ResponseEntity.ok(response);
229-
}
230-
231191
@PostMapping("/upload-pdf-draft")
232192
@PreAuthorize("hasRole('ADMIN')")
233193
@SecurityRequirement(name = "BearerAuth")
@@ -251,12 +211,12 @@ public ResponseEntity<?> regenerateMetadata(@RequestBody Map<String, Object> req
251211
return ResponseEntity.ok(result);
252212
}
253213

254-
@PostMapping("/generate-activity-markdowns")
214+
@PostMapping("/generate-markdowns")
255215
@PreAuthorize("hasRole('ADMIN')")
256216
@SecurityRequirement(name = "BearerAuth")
257217
@Operation(summary = "Generate all activity markdowns", description = "Generate Deckblatt, Artikulationsschema, and Hintergrundwissen markdowns from an uploaded PDF (admin only)")
258218
public ResponseEntity<?> generateActivityMarkdowns(@RequestBody Map<String, Object> request) {
259-
logger.info("POST /api/activities/generate-activity-markdowns called");
219+
logger.info("POST /api/activities/generate-markdowns called");
260220
UUID documentId = parseRequiredDocumentId(request);
261221

262222
String pdfText = pdfService.extractTextFromPdf(documentId);
@@ -296,11 +256,11 @@ public ResponseEntity<?> generateActivityMarkdowns(@RequestBody Map<String, Obje
296256
return ResponseEntity.ok(response);
297257
}
298258

299-
@GetMapping("/{activityId}/download-pdf")
259+
@GetMapping("/{activityId}/pdf")
300260
@PreAuthorize("permitAll()")
301261
@Operation(summary = "Download activity as combined PDF", description = "Download all markdown files (Deckblatt portrait, Artikulationsschema landscape, Hintergrundwissen portrait) as a single PDF")
302262
public ResponseEntity<?> downloadActivityPdf(@PathVariable UUID activityId) {
303-
logger.info("GET /api/activities/{}/download-pdf - Download combined activity PDF", activityId);
263+
logger.info("GET /api/activities/{}/pdf - Download combined activity PDF", activityId);
304264
ActivityResponse activity = activityService.getActivityById(activityId);
305265
List<byte[]> pdfParts = buildOrderedPdfParts(activity);
306266

@@ -313,11 +273,11 @@ public ResponseEntity<?> downloadActivityPdf(@PathVariable UUID activityId) {
313273
return buildFileDownloadResponse(pdfBytes, activity.getName(), ".pdf", MediaType.APPLICATION_PDF, "inline");
314274
}
315275

316-
@GetMapping("/{activityId}/download-docx")
276+
@GetMapping("/{activityId}/docx")
317277
@PreAuthorize("permitAll()")
318278
@Operation(summary = "Download activity as combined DOCX", description = "Download all markdown files (Deckblatt portrait, Artikulationsschema landscape, Hintergrundwissen portrait) as a single DOCX")
319279
public ResponseEntity<?> downloadActivityDocx(@PathVariable UUID activityId) {
320-
logger.info("GET /api/activities/{}/download-docx - Download combined activity DOCX", activityId);
280+
logger.info("GET /api/activities/{}/docx - Download combined activity DOCX", activityId);
321281
ActivityResponse activity = activityService.getActivityById(activityId);
322282
List<String> markdowns = new ArrayList<>();
323283
List<Boolean> landscapes = new ArrayList<>();

server/src/main/java/com/learnhub/activitymanagement/dto/request/LessonPlanInfoRequest.java

Lines changed: 0 additions & 10 deletions
This file was deleted.

0 commit comments

Comments
 (0)