DiseaseController.java 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.zhentao.disease.controller;
  2. import com.zhentao.disease.pojo.Disease;
  3. import com.zhentao.disease.service.DiseaseService;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.data.domain.Page;
  6. import org.springframework.data.domain.PageRequest;
  7. import org.springframework.web.bind.annotation.*;
  8. import java.util.List;
  9. @RestController
  10. @RequestMapping("/api/diseases")
  11. public class DiseaseController {
  12. @Autowired
  13. private DiseaseService diseaseService;
  14. /**
  15. * 搜索疾病
  16. * @param keyword 关键词
  17. * @param page 页码
  18. * @param size 每页数量
  19. * @return 疾病分页列表
  20. */
  21. // @GetMapping("/search")
  22. // public Page<Disease> searchDiseases(
  23. // @RequestParam(required = false) String keyword,
  24. // @RequestParam(defaultValue = "0") int page,
  25. // @RequestParam(defaultValue = "10") int size) {
  26. //
  27. // PageRequest pageRequest = PageRequest.of(page, size);
  28. //
  29. // if (keyword == null || keyword.trim().isEmpty()) {
  30. // return diseaseService.page(pageRequest);
  31. //
  32. // }
  33. //
  34. // return diseaseService.searchDiseasesByES(keyword, pageRequest);
  35. // }
  36. /**
  37. * 按分类搜索疾病
  38. * @param category 分类
  39. * @param page 页码
  40. * @param size 每页数量
  41. * @return 疾病分页列表
  42. */
  43. @GetMapping("/category/{category}")
  44. public Page<Disease> findByCategory(
  45. @PathVariable String category,
  46. @RequestParam(defaultValue = "0") int page,
  47. @RequestParam(defaultValue = "10") int size) {
  48. PageRequest pageRequest = PageRequest.of(page, size);
  49. // return diseaseService.findByCategory(category, pageRequest);
  50. return null;
  51. }
  52. /**
  53. * 获取疾病详情
  54. * @param id 疾病ID
  55. * @return 疾病详情
  56. */
  57. @GetMapping("/{id}")
  58. public Disease getDiseaseById(@PathVariable Integer id) {
  59. return diseaseService.getById(id);
  60. }
  61. /**
  62. * 同步数据到Elasticsearch
  63. * @return 同步结果
  64. */
  65. @PostMapping("/sync-es")
  66. public String syncDataToES() {
  67. // diseaseService.syncDataToES();
  68. return "数据同步到Elasticsearch成功";
  69. }
  70. }