controller.java.vm 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. package ${packageName}.controller;
  2. import cn.hutool.core.convert.Convert;
  3. import cn.hutool.core.lang.Assert;
  4. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.ktg.common.annotation.Log;
  7. import com.ktg.common.core.controller.BaseController;
  8. import com.ktg.common.enums.BusinessType;
  9. import com.ktg.common.pojo.CommonResult;
  10. import com.ktg.common.utils.poi.ExcelUtil;
  11. import ${packageName}.domain.${ClassName};
  12. import ${packageName}.service.I${ClassName}Service;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import io.swagger.v3.oas.annotations.Parameter;
  16. import io.swagger.v3.oas.annotations.Parameters;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.security.access.prepost.PreAuthorize;
  19. import org.springframework.web.bind.annotation.*;
  20. import javax.servlet.http.HttpServletResponse;
  21. import java.util.List;
  22. import java.util.Arrays;
  23. #if($table.crud || $table.sub)
  24. import com.ktg.common.core.page.TableDataInfo;
  25. #elseif($table.tree)
  26. #end
  27. /**
  28. * ${functionName}Controller
  29. *
  30. * @author ${author}
  31. * @date ${datetime}
  32. */
  33. @Api(tags = "${functionName}")
  34. @RestController
  35. @RequestMapping("/${moduleName}/${businessName}")
  36. public class ${ClassName}Controller extends BaseController
  37. {
  38. @Autowired
  39. private I${ClassName}Service ${className}Service;
  40. @ApiOperation("查询${functionName}-分页")
  41. @Parameters({
  42. @Parameter(name = "page", description = "Page"),
  43. @Parameter(name = "${className}", description = "实体参数")
  44. })
  45. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
  46. @GetMapping("/get${ClassName}Page")
  47. #if($table.crud || $table.sub)
  48. public CommonResult<Page<${ClassName}>> get${ClassName}Page(Page<${ClassName}> page, ${ClassName} ${className})
  49. {
  50. Page<${ClassName}> result = ${className}Service.get${ClassName}Page(page, ${className});
  51. return CommonResult.success(result);
  52. }
  53. #elseif($table.tree)
  54. public AjaxResult list(${ClassName} ${className})
  55. {
  56. List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
  57. return AjaxResult.success(list);
  58. }
  59. #end
  60. @ApiOperation("导出${functionName}列表")
  61. @Parameter(name = "${className}", description = "实体参数")
  62. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')")
  63. @Log(title = "${functionName}", businessType = BusinessType.EXPORT)
  64. @PostMapping("/export${ClassName}")
  65. public void export${ClassName}(HttpServletResponse response, ${ClassName} ${className})
  66. {
  67. Page<${ClassName}> page = new Page<>();
  68. page.setSize(-1);
  69. page.setCurrent(1);
  70. List<${ClassName}> list = ${className}Service.page(page, Wrappers.<${ClassName}>lambdaQuery()
  71. .orderByDesc(${ClassName}::get${pkColumn.capJavaField})).getRecords();
  72. ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
  73. util.exportExcel(response, list, "${functionName}数据");
  74. }
  75. @ApiOperation("获取${functionName}详细信息")
  76. @Parameter(name = "${pkColumn.javaField}", description = "${pkColumn.javaField}")
  77. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')")
  78. @GetMapping(value = "/select${ClassName}ById")
  79. public CommonResult<${ClassName}> select${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField})
  80. {
  81. return CommonResult.success(${className}Service.getById(${pkColumn.javaField}));
  82. }
  83. @ApiOperation("新增${functionName}")
  84. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')")
  85. @Log(title = "${functionName}", businessType = BusinessType.INSERT)
  86. @PostMapping("/insert${ClassName}")
  87. public CommonResult<Boolean> insert${ClassName}(@RequestBody @Parameter(name = "${className}", description = "新增数据类,放到body") ${ClassName} ${className})
  88. {
  89. return CommonResult.success(${className}Service.save(${className}));
  90. }
  91. @ApiOperation("修改${functionName}")
  92. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')")
  93. @Log(title = "${functionName}", businessType = BusinessType.UPDATE)
  94. @PostMapping("/update${ClassName}")
  95. public CommonResult<Boolean> update${ClassName}(@RequestBody @Parameter(name = "${className}", description = "修改数据类,放到body") ${ClassName} ${className})
  96. {
  97. return CommonResult.success(${className}Service.updateById(${className}));
  98. }
  99. @ApiOperation("删除${functionName}")
  100. @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')")
  101. @Log(title = "${functionName}", businessType = BusinessType.DELETE)
  102. @PostMapping("/delete${ClassName}By${pkColumn.capJavaField}s")
  103. public CommonResult<Boolean> delete${ClassName}By${pkColumn.capJavaField}s(String ${pkColumn.javaField}s)
  104. {
  105. Assert.notBlank(${pkColumn.javaField}s, "请选择需要删除的数据!");
  106. Long[] longIds = Convert.toLongArray(${pkColumn.javaField}s);
  107. return CommonResult.success(${className}Service.removeBatchByIds(Arrays.asList(longIds)));
  108. }
  109. }