From ae6fd06555845067b72a0b094126c858275a5bd9 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 29 十一月 2024 06:54:04 +0800
Subject: [PATCH] 项目分类查询、异常项目
---
business/src/main/java/com/ycl/controller/ProjectInfoController.java | 64 ++++++++++++++++++++++++++-----
1 files changed, 53 insertions(+), 11 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProjectInfoController.java b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
index d0144ee..768ed26 100644
--- a/business/src/main/java/com/ycl/controller/ProjectInfoController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectInfoController.java
@@ -3,17 +3,22 @@
import com.ycl.common.base.Result;
import com.ycl.common.group.Add;
import com.ycl.common.group.Update;
+import com.ycl.common.utils.ProjectCodeGenerator;
+import com.ycl.common.utils.excel.OutputExcelUtils;
+import com.ycl.domain.excel.ProjectExcelTemplate;
+import com.ycl.domain.form.DocumentInfoForm;
import com.ycl.domain.form.ProjectInfoForm;
import com.ycl.domain.query.ProjectInfoQuery;
import com.ycl.service.ProjectInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
-import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotEmpty;
+import java.io.IOException;
import java.util.List;
/**
@@ -26,57 +31,94 @@
@RequiredArgsConstructor
@Api(value = "椤圭洰绠$悊鍩虹淇℃伅琛�", tags = "椤圭洰绠$悊鍩虹淇℃伅琛ㄧ鐞�")
@RestController
-@RequestMapping("/api/project-info")
+@RequestMapping("/project/info")
public class ProjectInfoController {
private final ProjectInfoService projectInfoService;
@PostMapping
@ApiOperation(value = "娣诲姞", notes = "娣诲姞")
- @PreAuthorize("hasAuthority('projectInfo:add')")
+// @PreAuthorize("hasAuthority('projectInfo:add')")
public Result add(@RequestBody @Validated(Add.class) ProjectInfoForm form) {
return projectInfoService.add(form);
}
-
+ @PostMapping("/document")
+ @ApiOperation(value = "娣诲姞鐩稿叧鏂囦欢", notes = "娣诲姞鐩稿叧鏂囦欢")
+// @PreAuthorize("hasAuthority('projectInfo:add')")
+ public Result addDoc(@RequestBody @Validated(Add.class) DocumentInfoForm form) {
+ return projectInfoService.addDoc(form);
+ }
@PutMapping
@ApiOperation(value = "淇敼", notes = "淇敼")
- @PreAuthorize("hasAuthority('projectInfo:edit')")
+// @PreAuthorize("hasAuthority('projectInfo:edit')")
public Result update(@RequestBody @Validated(Update.class) ProjectInfoForm form) {
return projectInfoService.update(form);
}
@DeleteMapping("/{id}")
@ApiOperation(value = "ID鍒犻櫎", notes = "ID鍒犻櫎")
- @PreAuthorize("hasAuthority('projectInfo:del')")
+// @PreAuthorize("hasAuthority('projectInfo:del')")
public Result removeById(@PathVariable("id") String id) {
return projectInfoService.removeById(id);
}
@DeleteMapping("/batch")
@ApiOperation(value = "鎵归噺鍒犻櫎", notes = "鎵归噺鍒犻櫎")
- @PreAuthorize("hasAuthority('projectInfo:del:batch')")
+// @PreAuthorize("hasAuthority('projectInfo:del:batch')")
public Result remove(@RequestBody @NotEmpty(message = "璇烽�夋嫨鏁版嵁") List<String> ids) {
return projectInfoService.remove(ids);
}
@GetMapping("/page")
@ApiOperation(value = "鍒嗛〉", notes = "鍒嗛〉")
- @PreAuthorize("hasAuthority('projectInfo:page')")
+// @PreAuthorize("hasAuthority('projectInfo:page')")
public Result page(ProjectInfoQuery query) {
return projectInfoService.page(query);
}
@GetMapping("/{id}")
@ApiOperation(value = "璇︽儏", notes = "璇︽儏")
- @PreAuthorize("hasAuthority('projectInfo:detail')")
+// @PreAuthorize("hasAuthority('projectInfo:detail')")
public Result detail(@PathVariable("id") Integer id) {
return projectInfoService.detail(id);
}
-
+ @GetMapping("/document/{id}")
+ @ApiOperation(value = "鐩稿叧鏂囦欢璇︽儏", notes = "鐩稿叧鏂囦欢璇︽儏")
+// @PreAuthorize("hasAuthority('projectInfo:detail')")
+ public Result docDetail(@PathVariable("id") Integer id) {
+ return projectInfoService.docDetail(id);
+ }
@GetMapping("/list")
- @PreAuthorize("hasAuthority('projectInfo:list')")
+// @PreAuthorize("hasAuthority('projectInfo:list')")
@ApiOperation(value = "鍒楄〃", notes = "鍒楄〃")
public Result list() {
return projectInfoService.all();
}
+
+ /**
+ * 鐢熸垚椤圭洰缂栧彿
+ * @return 椤圭洰缂栧彿
+ */
+ @GetMapping("/getProjectCode")
+ public Result generateProjectCode() {
+ return Result.ok().data(ProjectCodeGenerator.generateProjectCode());
+ };
+
+ @GetMapping("/getManagerFlag/{recordId}")
+ public Result getManagerFlag(@PathVariable("recordId") Integer recordId) {
+ return projectInfoService.getManagerFlag(recordId);
+ }
+
+ /**
+ * 瀵煎嚭妯℃澘
+ * @param response
+ * @return
+ */
+ @PostMapping("/export/template")
+ public void exportTemplate(HttpServletResponse response,
+ @RequestBody List<String> fieldList
+ ) throws IOException {
+ OutputExcelUtils.export(response, "瀵煎叆妯℃澘", "椤圭洰淇℃伅", null, ProjectExcelTemplate.class ,fieldList);
+ }
+
}
--
Gitblit v1.8.0