controller.java.vm 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. package ${packageName}.controller;
  2. import java.util.List;
  3. import lombok.RequiredArgsConstructor;
  4. import jakarta.servlet.http.HttpServletResponse;
  5. import cn.dev33.satoken.annotation.SaCheckPermission;
  6. import org.springframework.web.bind.annotation.*;
  7. import org.springframework.validation.annotation.Validated;
  8. import org.eco.common.core.core.domain.CommonResult;
  9. import org.eco.common.log.annotation.Log;
  10. import org.eco.common.log.enums.BusinessType;
  11. import org.eco.common.security.utils.LoginHelper;
  12. import org.eco.common.core.core.domain.model.LoginUser;
  13. import org.eco.common.web.annotation.RepeatSubmit;
  14. import org.eco.common.web.core.BaseController;
  15. import jakarta.annotation.Resource;
  16. import ${packageName}.domain.vo.${ClassName}Vo;
  17. import ${packageName}.domain.bo.${ClassName}Bo;
  18. import ${packageName}.service.I${ClassName}Service;
  19. import org.springframework.web.multipart.MultipartFile;
  20. #if($table.crud || $table.sub)
  21. import org.eco.common.core.core.page.PageResult;
  22. #elseif($table.tree)
  23. #end
  24. /**
  25. * ${functionName}Controller
  26. *
  27. * @author ${author}
  28. * @date ${datetime}
  29. */
  30. @Validated
  31. @RequiredArgsConstructor
  32. @RestController
  33. @RequestMapping("/${moduleName}/${businessName}")
  34. public class ${ClassName}Controller extends BaseController {
  35. @Resource
  36. private I${ClassName}Service ${className}Service;
  37. /**
  38. * 查询${functionName}列表
  39. */
  40. @SaCheckPermission("${permissionPrefix}:list")
  41. @GetMapping("/list")
  42. #if($table.crud || $table.sub)
  43. public CommonResult<PageResult<${ClassName}Vo>> list(${ClassName}Bo ${className}Bo) {
  44. return CommonResult.success(${className}Service.selectPage(${className}Bo));
  45. }
  46. #elseif($table.tree)
  47. public CommonResult<List<${ClassName}Vo>> list(${ClassName}Bo ${className}Bo) {
  48. List<${ClassName}Vo> list = ${className}Service.selectList(${className}Bo);
  49. return CommonResult.success(list);
  50. }
  51. #end
  52. /**
  53. * 导出${functionName}列表
  54. */
  55. @SaCheckPermission("${permissionPrefix}:export")
  56. @Log(title = "${functionName}", businessType = BusinessType.EXPORT)
  57. @PostMapping("/export")
  58. public CommonResult<Void> export(HttpServletResponse response, ${ClassName}Bo ${className}Bo) {
  59. LoginUser loginUser = LoginHelper.getLoginUser();
  60. List<${ClassName}Vo> list = ${className}Service.selectList(${className}Bo);
  61. ${className}Service.asyncExport(list, "${functionName}", loginUser);
  62. return CommonResult.success();
  63. }
  64. /**
  65. * 导入${functionName}列表
  66. */
  67. @Log(title = "${functionName}", businessType = BusinessType.IMPORT)
  68. @SaCheckPermission("${permissionPrefix}:import")
  69. @PostMapping("/importData")
  70. public CommonResult<Void> importData(MultipartFile file, boolean updateSupport) {
  71. LoginUser loginUser = LoginHelper.getLoginUser();
  72. ${className}Service.asyncImportData(file, updateSupport, loginUser);
  73. return CommonResult.success();
  74. }
  75. /**
  76. * 获取${functionName}详细信息
  77. */
  78. @SaCheckPermission("${permissionPrefix}:query")
  79. @GetMapping(value = "/{${pkColumn.javaField}}")
  80. public CommonResult<${ClassName}Vo> getInfo(@PathVariable ${pkColumn.javaType} ${pkColumn.javaField}) {
  81. return CommonResult.success(${className}Service.selectById(${pkColumn.javaField}));
  82. }
  83. /**
  84. * 新增${functionName}
  85. */
  86. @SaCheckPermission("${permissionPrefix}:add")
  87. @Log(title = "${functionName}", businessType = BusinessType.INSERT)
  88. @RepeatSubmit()
  89. @PostMapping
  90. public CommonResult<Void> add(@Validated @RequestBody ${ClassName}Bo ${className}Bo) {
  91. boolean inserted = ${className}Service.insert(${className}Bo);
  92. if (!inserted) {
  93. return CommonResult.fail("新增${functionName}记录失败!");
  94. }
  95. return CommonResult.success();
  96. }
  97. /**
  98. * 修改${functionName}
  99. */
  100. @SaCheckPermission("${permissionPrefix}:edit")
  101. @Log(title = "${functionName}", businessType = BusinessType.UPDATE)
  102. @RepeatSubmit()
  103. @PutMapping
  104. public CommonResult<Void> edit(@Validated @RequestBody ${ClassName}Bo ${className}Bo) {
  105. boolean updated = ${className}Service.update(${className}Bo);
  106. if (!updated) {
  107. return CommonResult.fail("修改${functionName}记录失败!");
  108. }
  109. return CommonResult.success();
  110. }
  111. /**
  112. * 删除${functionName}
  113. */
  114. @SaCheckPermission("${permissionPrefix}:remove")
  115. @Log(title = "${functionName}", businessType = BusinessType.DELETE)
  116. @DeleteMapping("/{${pkColumn.javaField}s}")
  117. public CommonResult<Void> remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) {
  118. boolean deleted = ${className}Service.deleteByIds(${pkColumn.javaField}s);
  119. if (!deleted) {
  120. return CommonResult.fail("删除${functionName}记录失败!");
  121. }
  122. return CommonResult.success();
  123. }
  124. }