From a6bed384d73ae7d28a134e6739bf599d9e8372e1 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期一, 14 十一月 2022 18:10:43 +0800
Subject: [PATCH] update 更新 系统演示文档地址
---
ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java | 120 ++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 73 insertions(+), 47 deletions(-)
diff --git a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java
index ade20f8..873facc 100644
--- a/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java
+++ b/ruoyi-demo/src/main/java/com/ruoyi/demo/controller/TestDemoController.java
@@ -1,29 +1,37 @@
package com.ruoyi.demo.controller;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import cn.hutool.core.bean.BeanUtil;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.PageQuery;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.page.TableDataInfo;
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 com.ruoyi.common.excel.ExcelResult;
+import com.ruoyi.common.utils.ValidatorUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.demo.domain.TestDemo;
import com.ruoyi.demo.domain.bo.TestDemoBo;
+import com.ruoyi.demo.domain.bo.TestDemoImportVo;
import com.ruoyi.demo.domain.vo.TestDemoVo;
import com.ruoyi.demo.service.ITestDemoService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Arrays;
import java.util.List;
+import java.util.concurrent.TimeUnit;
/**
* 娴嬭瘯鍗曡〃Controller
@@ -32,8 +40,7 @@
* @date 2021-07-26
*/
@Validated
-@Api(value = "娴嬭瘯鍗曡〃鎺у埗鍣�", tags = {"娴嬭瘯鍗曡〃绠$悊"})
-@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RequiredArgsConstructor
@RestController
@RequestMapping("/demo/demo")
public class TestDemoController extends BaseController {
@@ -43,80 +50,99 @@
/**
* 鏌ヨ娴嬭瘯鍗曡〃鍒楄〃
*/
- @ApiOperation("鏌ヨ娴嬭瘯鍗曡〃鍒楄〃")
- @PreAuthorize("@ss.hasPermi('demo:demo:list')")
+ @SaCheckPermission("demo:demo:list")
@GetMapping("/list")
- public TableDataInfo<TestDemoVo> list(@Validated TestDemoBo bo) {
- return iTestDemoService.queryPageList(bo);
+ public TableDataInfo<TestDemoVo> list(@Validated(QueryGroup.class) TestDemoBo bo, PageQuery pageQuery) {
+ return iTestDemoService.queryPageList(bo, pageQuery);
}
- /**
- * 鑷畾涔夊垎椤垫煡璇�
- */
- @ApiOperation("鑷畾涔夊垎椤垫煡璇�")
- @PreAuthorize("@ss.hasPermi('demo:demo:list')")
- @GetMapping("/page")
- public TableDataInfo<TestDemoVo> page(@Validated TestDemoBo bo) {
- return iTestDemoService.customPageList(bo);
- }
+ /**
+ * 鑷畾涔夊垎椤垫煡璇�
+ */
+ @SaCheckPermission("demo:demo:list")
+ @GetMapping("/page")
+ public TableDataInfo<TestDemoVo> page(@Validated(QueryGroup.class) TestDemoBo bo, PageQuery pageQuery) {
+ return iTestDemoService.customPageList(bo, pageQuery);
+ }
- /**
+ /**
+ * 瀵煎叆鏁版嵁
+ *
+ * @param file 瀵煎叆鏂囦欢
+ */
+ @Log(title = "娴嬭瘯鍗曡〃", businessType = BusinessType.IMPORT)
+ @SaCheckPermission("demo:demo:import")
+ @PostMapping(value = "/importData", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+ public R<Void> importData(@RequestPart("file") MultipartFile file) throws Exception {
+ ExcelResult<TestDemoImportVo> excelResult = ExcelUtil.importExcel(file.getInputStream(), TestDemoImportVo.class, true);
+ List<TestDemoImportVo> volist = excelResult.getList();
+ List<TestDemo> list = BeanUtil.copyToList(volist, TestDemo.class);
+ iTestDemoService.saveBatch(list);
+ return R.ok(excelResult.getAnalysis());
+ }
+
+ /**
* 瀵煎嚭娴嬭瘯鍗曡〃鍒楄〃
*/
- @ApiOperation("瀵煎嚭娴嬭瘯鍗曡〃鍒楄〃")
- @PreAuthorize("@ss.hasPermi('demo:demo:export')")
+ @SaCheckPermission("demo:demo:export")
@Log(title = "娴嬭瘯鍗曡〃", businessType = BusinessType.EXPORT)
- @GetMapping("/export")
- public AjaxResult<TestDemoVo> export(@Validated TestDemoBo bo) {
+ @PostMapping("/export")
+ public void export(@Validated TestDemoBo bo, HttpServletResponse response) {
List<TestDemoVo> list = iTestDemoService.queryList(bo);
- ExcelUtil<TestDemoVo> util = new ExcelUtil<TestDemoVo>(TestDemoVo.class);
- return util.exportExcel(list, "娴嬭瘯鍗曡〃");
+ // 娴嬭瘯闆姳id瀵煎嚭
+// for (TestDemoVo vo : list) {
+// vo.setId(1234567891234567893L);
+// }
+ ExcelUtil.exportExcel(list, "娴嬭瘯鍗曡〃", TestDemoVo.class, response);
}
/**
* 鑾峰彇娴嬭瘯鍗曡〃璇︾粏淇℃伅
+ *
+ * @param id 娴嬭瘯ID
*/
- @ApiOperation("鑾峰彇娴嬭瘯鍗曡〃璇︾粏淇℃伅")
- @PreAuthorize("@ss.hasPermi('demo:demo:query')")
+ @SaCheckPermission("demo:demo:query")
@GetMapping("/{id}")
- public AjaxResult<TestDemoVo> getInfo(@NotNull(message = "涓婚敭涓嶈兘涓虹┖")
- @PathVariable("id") Long id) {
- return AjaxResult.success(iTestDemoService.queryById(id));
+ public R<TestDemoVo> getInfo(@NotNull(message = "涓婚敭涓嶈兘涓虹┖")
+ @PathVariable("id") Long id) {
+ return R.ok(iTestDemoService.queryById(id));
}
/**
* 鏂板娴嬭瘯鍗曡〃
*/
- @ApiOperation("鏂板娴嬭瘯鍗曡〃")
- @PreAuthorize("@ss.hasPermi('demo:demo:add')")
+ @SaCheckPermission("demo:demo:add")
@Log(title = "娴嬭瘯鍗曡〃", businessType = BusinessType.INSERT)
- @RepeatSubmit
+ @RepeatSubmit(interval = 2, timeUnit = TimeUnit.SECONDS, message = "{repeat.submit.message}")
@PostMapping()
- public AjaxResult<Void> add(@Validated(AddGroup.class) @RequestBody TestDemoBo bo) {
- return toAjax(iTestDemoService.insertByBo(bo) ? 1 : 0);
+ public R<Void> add(@RequestBody TestDemoBo bo) {
+ // 浣跨敤鏍¢獙宸ュ叿瀵规爣 @Validated(AddGroup.class) 娉ㄨВ
+ // 鐢ㄤ簬鍦ㄩ潪 Controller 鐨勫湴鏂规牎楠屽璞�
+ ValidatorUtils.validate(bo, AddGroup.class);
+ return toAjax(iTestDemoService.insertByBo(bo));
}
/**
* 淇敼娴嬭瘯鍗曡〃
*/
- @ApiOperation("淇敼娴嬭瘯鍗曡〃")
- @PreAuthorize("@ss.hasPermi('demo:demo:edit')")
+ @SaCheckPermission("demo:demo:edit")
@Log(title = "娴嬭瘯鍗曡〃", businessType = BusinessType.UPDATE)
@RepeatSubmit
@PutMapping()
- public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody TestDemoBo bo) {
- return toAjax(iTestDemoService.updateByBo(bo) ? 1 : 0);
+ public R<Void> edit(@Validated(EditGroup.class) @RequestBody TestDemoBo bo) {
+ return toAjax(iTestDemoService.updateByBo(bo));
}
/**
* 鍒犻櫎娴嬭瘯鍗曡〃
+ *
+ * @param ids 娴嬭瘯ID涓�
*/
- @ApiOperation("鍒犻櫎娴嬭瘯鍗曡〃")
- @PreAuthorize("@ss.hasPermi('demo:demo:remove')")
- @Log(title = "娴嬭瘯鍗曡〃" , businessType = BusinessType.DELETE)
+ @SaCheckPermission("demo:demo:remove")
+ @Log(title = "娴嬭瘯鍗曡〃", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
- public AjaxResult<Void> remove(@NotEmpty(message = "涓婚敭涓嶈兘涓虹┖")
- @PathVariable Long[] ids) {
- return toAjax(iTestDemoService.deleteWithValidByIds(Arrays.asList(ids), true) ? 1 : 0);
+ public R<Void> remove(@NotEmpty(message = "涓婚敭涓嶈兘涓虹┖")
+ @PathVariable Long[] ids) {
+ return toAjax(iTestDemoService.deleteWithValidByIds(Arrays.asList(ids), true));
}
}
--
Gitblit v1.9.3