NutritionScreeningController.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package org.dromara.web.controller;
  2. import java.util.List;
  3. import lombok.RequiredArgsConstructor;
  4. import jakarta.servlet.http.HttpServletResponse;
  5. import jakarta.validation.constraints.*;
  6. import cn.dev33.satoken.annotation.SaCheckPermission;
  7. import org.dromara.web.domain.bo.NutritionScreeningBo;
  8. import org.dromara.web.domain.vo.NutritionScreeningVo;
  9. import org.dromara.web.service.INutritionScreeningService;
  10. import org.springframework.web.bind.annotation.*;
  11. import org.springframework.validation.annotation.Validated;
  12. import org.dromara.common.idempotent.annotation.RepeatSubmit;
  13. import org.dromara.common.log.annotation.Log;
  14. import org.dromara.common.web.core.BaseController;
  15. import org.dromara.common.mybatis.core.page.PageQuery;
  16. import org.dromara.common.core.domain.R;
  17. import org.dromara.common.core.validate.AddGroup;
  18. import org.dromara.common.core.validate.EditGroup;
  19. import org.dromara.common.log.enums.BusinessType;
  20. import org.dromara.common.excel.utils.ExcelUtil;
  21. import org.dromara.common.mybatis.core.page.TableDataInfo;
  22. /**
  23. * 营养筛查
  24. *
  25. * @author Lion Li
  26. * @date 2025-07-14
  27. */
  28. @Validated
  29. @RequiredArgsConstructor
  30. @RestController
  31. @RequestMapping("/system/screening")
  32. public class NutritionScreeningController extends BaseController {
  33. private final INutritionScreeningService nutritionScreeningService;
  34. /**
  35. * 查询营养筛查列表
  36. */
  37. @SaCheckPermission("system:screening:list")
  38. @GetMapping("/list")
  39. public TableDataInfo<NutritionScreeningVo> list(NutritionScreeningBo bo, PageQuery pageQuery) {
  40. return nutritionScreeningService.queryPageList(bo, pageQuery);
  41. }
  42. /**
  43. * 导出营养筛查列表
  44. */
  45. @SaCheckPermission("system:screening:export")
  46. @Log(title = "营养筛查", businessType = BusinessType.EXPORT)
  47. @PostMapping("/export")
  48. public void export(NutritionScreeningBo bo, HttpServletResponse response) {
  49. List<NutritionScreeningVo> list = nutritionScreeningService.queryList(bo);
  50. ExcelUtil.exportExcel(list, "营养筛查", NutritionScreeningVo.class, response);
  51. }
  52. /**
  53. * 获取营养筛查详细信息
  54. *
  55. * @param id 主键
  56. */
  57. @SaCheckPermission("system:screening:query")
  58. @GetMapping("/{id}")
  59. public R<NutritionScreeningVo> getInfo(@NotNull(message = "主键不能为空")
  60. @PathVariable Long id) {
  61. return R.ok(nutritionScreeningService.queryById(id));
  62. }
  63. /**
  64. * 新增营养筛查
  65. */
  66. @SaCheckPermission("system:screening:add")
  67. @Log(title = "营养筛查", businessType = BusinessType.INSERT)
  68. @RepeatSubmit()
  69. @PostMapping()
  70. public R<Void> add(@Validated(AddGroup.class) @RequestBody NutritionScreeningBo bo) {
  71. return toAjax(nutritionScreeningService.insertByBo(bo));
  72. }
  73. /**
  74. * 修改营养筛查
  75. */
  76. @SaCheckPermission("system:screening:edit")
  77. @Log(title = "营养筛查", businessType = BusinessType.UPDATE)
  78. @RepeatSubmit()
  79. @PutMapping()
  80. public R<Void> edit(@Validated(EditGroup.class) @RequestBody NutritionScreeningBo bo) {
  81. return toAjax(nutritionScreeningService.updateByBo(bo));
  82. }
  83. /**
  84. * 删除营养筛查
  85. *
  86. * @param ids 主键串
  87. */
  88. @SaCheckPermission("system:screening:remove")
  89. @Log(title = "营养筛查", businessType = BusinessType.DELETE)
  90. @DeleteMapping("/{ids}")
  91. public R<Void> remove(@NotEmpty(message = "主键不能为空")
  92. @PathVariable Long[] ids) {
  93. return toAjax(nutritionScreeningService.deleteWithValidByIds(List.of(ids), true));
  94. }
  95. }