知识库代码框架
This commit is contained in:
203
src/main/java/com/rj/controller/KnowledgeBaseController.java
Normal file
203
src/main/java/com/rj/controller/KnowledgeBaseController.java
Normal file
@@ -0,0 +1,203 @@
|
||||
package com.rj.controller;
|
||||
|
||||
import com.rj.entity.KnowledgeBase;
|
||||
import com.rj.service.IKnowledgeBaseService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 知识库管理表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author 李中华 ,spllzh
|
||||
* @since 2025-01-27
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/knowledgeBase")
|
||||
@Tag(name = "知识库管理", description = "知识库管理相关接口")
|
||||
public class KnowledgeBaseController {
|
||||
|
||||
@Autowired
|
||||
private IKnowledgeBaseService knowledgeBaseService;
|
||||
|
||||
/**
|
||||
* 新增知识
|
||||
*/
|
||||
@PostMapping("/add")
|
||||
@Operation(summary = "新增知识", description = "添加新的知识信息")
|
||||
public ResponseEntity<Map<String, Object>> addKnowledge(
|
||||
@Parameter(description = "知识信息", required = true)
|
||||
@RequestBody KnowledgeBase knowledgeBase) {
|
||||
Map<String, Object> result = knowledgeBaseService.addKnowledge(knowledgeBase);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据ID查询知识
|
||||
*/
|
||||
@GetMapping("/get/{id}")
|
||||
@Operation(summary = "根据ID查询知识", description = "根据知识ID获取知识详细信息")
|
||||
public ResponseEntity<Map<String, Object>> getKnowledgeById(
|
||||
@Parameter(description = "知识ID", required = true)
|
||||
@PathVariable String id) {
|
||||
Map<String, Object> result = knowledgeBaseService.getKnowledgeById(id);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.notFound().build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询知识列表
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
@Operation(summary = "分页查询知识列表", description = "分页查询知识信息列表")
|
||||
public ResponseEntity<Map<String, Object>> getKnowledgeList(
|
||||
@Parameter(description = "页码", example = "1")
|
||||
@RequestParam(defaultValue = "1") Integer current,
|
||||
@Parameter(description = "每页大小", example = "10")
|
||||
@RequestParam(defaultValue = "10") Integer size,
|
||||
@Parameter(description = "知识标题(模糊查询)")
|
||||
@RequestParam(required = false) String title,
|
||||
@Parameter(description = "知识分类")
|
||||
@RequestParam(required = false) String category,
|
||||
@Parameter(description = "应用行业")
|
||||
@RequestParam(required = false) String industry,
|
||||
@Parameter(description = "创建人")
|
||||
@RequestParam(required = false) String creator,
|
||||
@Parameter(description = "状态")
|
||||
@RequestParam(required = false) String status) {
|
||||
Map<String, Object> result = knowledgeBaseService.getKnowledgeList(current, size, title, category, industry, creator, status);
|
||||
return ResponseEntity.ok(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新知识信息
|
||||
*/
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新知识信息", description = "更新知识详细信息")
|
||||
public ResponseEntity<Map<String, Object>> updateKnowledge(
|
||||
@Parameter(description = "知识信息", required = true)
|
||||
@RequestBody KnowledgeBase knowledgeBase) {
|
||||
Map<String, Object> result = knowledgeBaseService.updateKnowledge(knowledgeBase);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据ID删除知识
|
||||
*/
|
||||
@DeleteMapping("/delete/{id}")
|
||||
@Operation(summary = "删除知识", description = "根据知识ID删除知识信息")
|
||||
public ResponseEntity<Map<String, Object>> deleteKnowledge(
|
||||
@Parameter(description = "知识ID", required = true)
|
||||
@PathVariable String id) {
|
||||
Map<String, Object> result = knowledgeBaseService.deleteKnowledge(id);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除知识
|
||||
*/
|
||||
@DeleteMapping("/batchDelete")
|
||||
@Operation(summary = "批量删除知识", description = "根据知识ID列表批量删除知识信息")
|
||||
public ResponseEntity<Map<String, Object>> batchDeleteKnowledge(
|
||||
@Parameter(description = "知识ID列表", required = true)
|
||||
@RequestBody List<String> ids) {
|
||||
Map<String, Object> result = knowledgeBaseService.batchDeleteKnowledge(ids);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 点赞知识
|
||||
*/
|
||||
@PostMapping("/like/{id}")
|
||||
@Operation(summary = "点赞知识", description = "为指定知识点赞")
|
||||
public ResponseEntity<Map<String, Object>> likeKnowledge(
|
||||
@Parameter(description = "知识ID", required = true)
|
||||
@PathVariable String id) {
|
||||
Map<String, Object> result = knowledgeBaseService.likeKnowledge(id);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 置顶/取消置顶知识
|
||||
*/
|
||||
@PostMapping("/toggleTop/{id}")
|
||||
@Operation(summary = "置顶/取消置顶知识", description = "切换知识的置顶状态")
|
||||
public ResponseEntity<Map<String, Object>> toggleTopKnowledge(
|
||||
@Parameter(description = "知识ID", required = true)
|
||||
@PathVariable String id) {
|
||||
Map<String, Object> result = knowledgeBaseService.toggleTopKnowledge(id);
|
||||
Boolean success = (Boolean) result.get("success");
|
||||
if (success != null && success) {
|
||||
return ResponseEntity.ok(result);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().body(result);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取知识统计信息
|
||||
*/
|
||||
@GetMapping("/statistics")
|
||||
@Operation(summary = "获取知识统计信息", description = "获取知识总数等统计信息")
|
||||
public ResponseEntity<Map<String, Object>> getKnowledgeStatistics() {
|
||||
Map<String, Object> result = knowledgeBaseService.getKnowledgeStatistics();
|
||||
return ResponseEntity.ok(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取分类列表
|
||||
*/
|
||||
@GetMapping("/categories")
|
||||
@Operation(summary = "获取分类列表", description = "获取所有知识分类")
|
||||
public ResponseEntity<Map<String, Object>> getCategories() {
|
||||
Map<String, Object> result = knowledgeBaseService.getCategories();
|
||||
return ResponseEntity.ok(result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取行业列表
|
||||
*/
|
||||
@GetMapping("/industries")
|
||||
@Operation(summary = "获取行业列表", description = "获取所有应用行业")
|
||||
public ResponseEntity<Map<String, Object>> getIndustries() {
|
||||
Map<String, Object> result = knowledgeBaseService.getIndustries();
|
||||
return ResponseEntity.ok(result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user