fix endpoint

This commit is contained in:
Chuck1sn
2025-06-26 19:27:51 +08:00
parent 19090b9c94
commit 2f7259ca9d
4 changed files with 35 additions and 16 deletions

View File

@@ -1,22 +1,25 @@
package com.zl.mjga.controller; package com.zl.mjga.controller;
import com.zl.mjga.dto.library.LibraryDocUpdateDto; import com.zl.mjga.dto.knowledge.DocUpdateDto;
import com.zl.mjga.dto.library.LibraryUpsertDto; import com.zl.mjga.dto.knowledge.LibraryUpsertDto;
import com.zl.mjga.repository.LibraryDocRepository; import com.zl.mjga.repository.LibraryDocRepository;
import com.zl.mjga.repository.LibraryDocSegmentRepository;
import com.zl.mjga.repository.LibraryRepository; import com.zl.mjga.repository.LibraryRepository;
import com.zl.mjga.service.RagService; import com.zl.mjga.service.RagService;
import com.zl.mjga.service.UploadService; import com.zl.mjga.service.UploadService;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import java.util.List;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jooq.generated.mjga.tables.pojos.Library; import org.jooq.generated.mjga.tables.pojos.Library;
import org.jooq.generated.mjga.tables.pojos.LibraryDoc; import org.jooq.generated.mjga.tables.pojos.LibraryDoc;
import org.jooq.generated.mjga.tables.pojos.LibraryDocSegment;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
@RestController @RestController
@RequestMapping("/library") @RequestMapping("/knowledge")
@RequiredArgsConstructor @RequiredArgsConstructor
@Slf4j @Slf4j
public class LibraryController { public class LibraryController {
@@ -25,8 +28,24 @@ public class LibraryController {
private final RagService ragService; private final RagService ragService;
private final LibraryRepository libraryRepository; private final LibraryRepository libraryRepository;
private final LibraryDocRepository libraryDocRepository; private final LibraryDocRepository libraryDocRepository;
private final LibraryDocSegmentRepository libraryDocSegmentRepository;
@PostMapping("/upsert") @GetMapping("/libraries")
public List<Library> queryLibraries() {
return libraryRepository.findAll();
}
@GetMapping("/docs")
public List<LibraryDoc> queryLibraryDocs(@RequestParam Long libraryId) {
return libraryDocRepository.fetchByLibId(libraryId);
}
@GetMapping("/segments")
public List<LibraryDocSegment> queryLibraryDocSegments(@RequestParam Long libraryDocId) {
return libraryDocSegmentRepository.fetchByDocId(libraryDocId);
}
@PostMapping("/library")
public void upsertLibrary(@RequestBody @Valid LibraryUpsertDto libraryUpsertDto) { public void upsertLibrary(@RequestBody @Valid LibraryUpsertDto libraryUpsertDto) {
Library library = new Library(); Library library = new Library();
library.setId(libraryUpsertDto.id()); library.setId(libraryUpsertDto.id());
@@ -35,7 +54,7 @@ public class LibraryController {
libraryRepository.merge(library); libraryRepository.merge(library);
} }
@DeleteMapping @DeleteMapping("/library")
public void deleteLibrary(@RequestParam Long libraryId) { public void deleteLibrary(@RequestParam Long libraryId) {
ragService.deleteLibraryBy(libraryId); ragService.deleteLibraryBy(libraryId);
} }
@@ -46,15 +65,15 @@ public class LibraryController {
} }
@PutMapping("/doc") @PutMapping("/doc")
public void updateLibraryDoc(@RequestBody @Valid LibraryDocUpdateDto libraryDocUpdateDto) { public void updateLibraryDoc(@RequestBody @Valid DocUpdateDto docUpdateDto) {
LibraryDoc libraryDoc = new LibraryDoc(); LibraryDoc libraryDoc = new LibraryDoc();
libraryDoc.setId(libraryDocUpdateDto.id()); libraryDoc.setId(docUpdateDto.id());
libraryDoc.setEnable(libraryDocUpdateDto.enable()); libraryDoc.setEnable(docUpdateDto.enable());
libraryDocRepository.merge(libraryDoc); libraryDocRepository.merge(libraryDoc);
} }
@PostMapping( @PostMapping(
value = "/upload", value = "/doc/upload",
consumes = MediaType.MULTIPART_FORM_DATA_VALUE, consumes = MediaType.MULTIPART_FORM_DATA_VALUE,
produces = MediaType.TEXT_PLAIN_VALUE) produces = MediaType.TEXT_PLAIN_VALUE)
public String uploadLibraryDoc( public String uploadLibraryDoc(

View File

@@ -0,0 +1,6 @@
package com.zl.mjga.dto.knowledge;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
public record DocUpdateDto(@NotNull Long id, @NotEmpty Boolean enable) {}

View File

@@ -1,4 +1,4 @@
package com.zl.mjga.dto.library; package com.zl.mjga.dto.knowledge;
import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotEmpty;

View File

@@ -1,6 +0,0 @@
package com.zl.mjga.dto.library;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
public record LibraryDocUpdateDto(@NotNull Long id, @NotEmpty Boolean enable) {}