From 553c29ab8a46c9a07e3657fdd36a81a6bfde1afe Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期四, 23 九月 2021 19:13:58 +0800 Subject: [PATCH] update 整合 satoken 权限、鉴权一体化框架 --- ruoyi-generator/src/main/resources/vm/java/controller.java.vm | 101 ++++++++++++++++++++++++++++---------------------- 1 files changed, 57 insertions(+), 44 deletions(-) diff --git a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm index 4e4309d..0bbb677 100644 --- a/ruoyi-generator/src/main/resources/vm/java/controller.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/controller.java.vm @@ -2,39 +2,45 @@ import java.util.List; import java.util.Arrays; +import java.util.concurrent.TimeUnit; import lombok.RequiredArgsConstructor; +import javax.servlet.http.HttpServletResponse; +import javax.validation.constraints.*; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.validate.AddGroup; +import com.ruoyi.common.core.validate.EditGroup; +import com.ruoyi.common.core.validate.QueryGroup; import com.ruoyi.common.enums.BusinessType; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; import com.ruoyi.common.utils.poi.ExcelUtil; +import ${packageName}.domain.vo.${ClassName}Vo; +import ${packageName}.domain.bo.${ClassName}Bo; +import ${packageName}.service.I${ClassName}Service; #if($table.crud || $table.sub) import com.ruoyi.common.core.page.TableDataInfo; #elseif($table.tree) #end +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; /** * ${functionName}Controller - * + * * @author ${author} * @date ${datetime} */ +@Validated +@Api(value = "${functionName}鎺у埗鍣�", tags = {"${functionName}绠$悊"}) @RequiredArgsConstructor(onConstructor_ = @Autowired) @RestController -@RequestMapping("/${moduleName}/${businessName}" ) +@RequestMapping("/${moduleName}/${businessName}") public class ${ClassName}Controller extends BaseController { private final I${ClassName}Service i${ClassName}Service; @@ -42,17 +48,16 @@ /** * 鏌ヨ${functionName}鍒楄〃 */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')") + @ApiOperation("鏌ヨ${functionName}鍒楄〃") + @SaCheckPermission("${permissionPrefix}:list") @GetMapping("/list") #if($table.crud || $table.sub) - public TableDataInfo list(${ClassName} ${className}) { - startPage(); - List<${ClassName}> list = i${ClassName}Service.queryList(${className}); - return getDataTable(list); + public TableDataInfo<${ClassName}Vo> list(@Validated(QueryGroup.class) ${ClassName}Bo bo) { + return i${ClassName}Service.queryPageList(bo); } #elseif($table.tree) - public AjaxResult list(${ClassName} ${className}) { - List<${ClassName}> list = i${ClassName}Service.queryList(${className}); + public AjaxResult<List<${ClassName}Vo>> list(@Validated(QueryGroup.class) ${ClassName}Bo bo) { + List<${ClassName}Vo> list = i${ClassName}Service.queryList(bo); return AjaxResult.success(list); } #end @@ -60,51 +65,59 @@ /** * 瀵煎嚭${functionName}鍒楄〃 */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')" ) - @Log(title = "${functionName}" , businessType = BusinessType.EXPORT) - @GetMapping("/export" ) - public AjaxResult export(${ClassName} ${className}) { - List<${ClassName}> list = i${ClassName}Service.queryList(${className}); - ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class); - return util.exportExcel(list, "${businessName}" ); + @ApiOperation("瀵煎嚭${functionName}鍒楄〃") + @SaCheckPermission("${permissionPrefix}:export") + @Log(title = "${functionName}", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public void export(@Validated ${ClassName}Bo bo, HttpServletResponse response) { + List<${ClassName}Vo> list = i${ClassName}Service.queryList(bo); + ExcelUtil.exportExcel(list, "${functionName}", ${ClassName}Vo.class, response); } /** * 鑾峰彇${functionName}璇︾粏淇℃伅 */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')" ) - @GetMapping(value = "/{${pkColumn.javaField}}" ) - public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}" ) ${pkColumn.javaType} ${pkColumn.javaField}) { - return AjaxResult.success(i${ClassName}Service.getById(${pkColumn.javaField})); + @ApiOperation("鑾峰彇${functionName}璇︾粏淇℃伅") + @SaCheckPermission("${permissionPrefix}:query") + @GetMapping("/{${pkColumn.javaField}}") + public AjaxResult<${ClassName}Vo> getInfo(@NotNull(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField}) { + return AjaxResult.success(i${ClassName}Service.queryById(${pkColumn.javaField})); } /** * 鏂板${functionName} */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')" ) - @Log(title = "${functionName}" , businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody ${ClassName} ${className}) { - return toAjax(i${ClassName}Service.save(${className}) ? 1 : 0); + @ApiOperation("鏂板${functionName}") + @SaCheckPermission("${permissionPrefix}:add") + @Log(title = "${functionName}", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody ${ClassName}Bo bo) { + return toAjax(i${ClassName}Service.insertByBo(bo) ? 1 : 0); } /** * 淇敼${functionName} */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')" ) - @Log(title = "${functionName}" , businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody ${ClassName} ${className}) { - return toAjax(i${ClassName}Service.updateById(${className}) ? 1 : 0); + @ApiOperation("淇敼${functionName}") + @SaCheckPermission("${permissionPrefix}:edit") + @Log(title = "${functionName}", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody ${ClassName}Bo bo) { + return toAjax(i${ClassName}Service.updateByBo(bo) ? 1 : 0); } /** * 鍒犻櫎${functionName} */ - @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')" ) + @ApiOperation("鍒犻櫎${functionName}") + @SaCheckPermission("${permissionPrefix}:remove") @Log(title = "${functionName}" , businessType = BusinessType.DELETE) - @DeleteMapping("/{${pkColumn.javaField}s}" ) - public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { - return toAjax(i${ClassName}Service.removeByIds(Arrays.asList(${pkColumn.javaField}s)) ? 1 : 0); + @DeleteMapping("/{${pkColumn.javaField}s}") + public AjaxResult<Void> remove(@NotEmpty(message = "涓婚敭涓嶈兘涓虹┖") + @PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s) { + return toAjax(i${ClassName}Service.deleteWithValidByIds(Arrays.asList(${pkColumn.javaField}s), true) ? 1 : 0); } } -- Gitblit v1.9.3