From 1a677d2b4a4bc615602f8c2a22bc07ec1356e5be Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期四, 16 十月 2025 17:39:06 +0800
Subject: [PATCH] 2025.10.16 1. 根据全局响应增强器GlobalResponseAdvice,将原先的BaseResPack接口包装函数统一去除; 2. 新增三种类型的数据产品数据库实体 3. 新增典型问题场景清单中间数据产品接口

---
 src/main/kotlin/cn/flightfeather/supervision/lightshare/web/EvaluationController.kt |   85 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 77 insertions(+), 8 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/EvaluationController.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/EvaluationController.kt
index ef2e02c..0b82f1e 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/EvaluationController.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/EvaluationController.kt
@@ -1,45 +1,114 @@
 package cn.flightfeather.supervision.lightshare.web
 
+import cn.flightfeather.supervision.config.IgnoreResponseAdvice
 import cn.flightfeather.supervision.domain.ds1.entity.Evaluation
 import cn.flightfeather.supervision.lightshare.service.EvaluationService
+import cn.flightfeather.supervision.lightshare.vo.AreaVo
 import io.swagger.annotations.Api
+import io.swagger.annotations.ApiOperation
+import io.swagger.annotations.ApiParam
 import org.springframework.web.bind.annotation.*
+import org.springframework.web.multipart.MultipartFile
+import springfox.documentation.annotations.ApiIgnore
+import javax.servlet.http.HttpServletResponse
 
 @Api(tags = ["EvaluationController"], description = "璇勪及鎬诲垎API鎺ュ彛")
 @RestController
 @RequestMapping("/evaluation")
 class EvaluationController(val evaluationService: EvaluationService) {
+    @IgnoreResponseAdvice
     @GetMapping
     fun getAll() = evaluationService.findAll()
 
+    @IgnoreResponseAdvice
     @PutMapping
     fun add(@RequestBody evaluation: Evaluation) = evaluationService.save(evaluation)
 
+    @IgnoreResponseAdvice
     @PostMapping
     fun update(@RequestBody evaluation: Evaluation) = evaluationService.update(evaluation)
 
+    @IgnoreResponseAdvice
     @GetMapping("/{id}")
     fun getById(@PathVariable id: String) = evaluationService.findOne(id)
 
+    @IgnoreResponseAdvice
     @DeleteMapping("/{id}")
     fun delete(@PathVariable id: String) = evaluationService.delete(id)
 
+    @IgnoreResponseAdvice
     @GetMapping("/rankofscense")
-    fun getRankOfScense(@RequestParam(value = "tguid", required = true) tguid: String,
-                        @RequestParam(value = "scensetypeid", required = false) scensetypeid: String?,
-                        @RequestParam(value = "ruletypeid", required = false) ruletypeid: ByteArray?) = evaluationService.getRankOfSense(tguid, scensetypeid, ruletypeid)
+    fun getRankOfScense(
+        @RequestParam(value = "tguid", required = true) tguid: String,
+        @RequestParam(value = "scensetypeid", required = false) scensetypeid: String?,
+        @RequestParam(value = "ruletypeid", required = false) ruletypeid: ByteArray?,
+    ) = evaluationService.getRankOfSense(tguid, scensetypeid, ruletypeid)
 
+    @IgnoreResponseAdvice
     @GetMapping("/rankoftown")
-    fun getRankOfTown(@RequestParam(value = "tguid", required = true) tguid: String,
-                      @RequestParam(value = "scensetypeid", required = false) scensetypeid: String?) = evaluationService.getRankOfTown(tguid, scensetypeid)
+    fun getRankOfTown(
+        @RequestParam(value = "tguid", required = true) tguid: String,
+        @RequestParam(value = "scensetypeid", required = false) scensetypeid: String?,
+    ) = evaluationService.getRankOfTown(tguid, scensetypeid)
 
+    @IgnoreResponseAdvice
     @GetMapping("/autoScore")
-    fun autoScore(@RequestParam(value = "districtCode") districtCode: String,
-                  @RequestParam(value = "time") time: String) = evaluationService.autoScore(districtCode, time)
+    fun autoScore(
+        @RequestParam(value = "districtCode") districtCode: String,
+        @RequestParam(value = "time") time: String,
+    ) = evaluationService.autoScore(districtCode, time)
 
+    @IgnoreResponseAdvice
+    @GetMapping("/autoScore3")
+    fun autoScore3(
+        @RequestParam(value = "topTaskId") tGuid: String,
+        @RequestParam(value = "sceneTypeId") sceneTypeId: String,
+    ) = evaluationService.autoScore3(tGuid, sceneTypeId)
+
+    @IgnoreResponseAdvice
     @PostMapping("/autoScore")
     fun autoScore2(@RequestParam(value = "subTaskId") subTaskId: String) = evaluationService.autoScore2(subTaskId)
 
+    @IgnoreResponseAdvice
     @GetMapping("/byInspection")
-    fun findByInspectionId(@RequestParam("inspectionId") inspectionId: String) = evaluationService.findByInspectionId(inspectionId)
+    fun findByInspectionId(@RequestParam("inspectionId") inspectionId: String) =
+        evaluationService.findByInspectionId(inspectionId)
+
+    @ApiOperation(value = "鏍规嵁鍦烘櫙ID鏌ヨ璇勪及缁撴灉")
+    @GetMapping("/byScene")
+    fun findBySceneId(
+        @ApiParam("鍦烘櫙涓婚敭id") @RequestParam sceneId: String,
+        @ApiParam("椤电爜") @RequestParam page: Int,
+        @ApiParam("姣忛〉鏁伴噺") @RequestParam pageSize: Int,
+    ) = evaluationService.findBySceneId(sceneId, page, pageSize)
+
+    @ApiOperation(value = "鏍规嵁鍖哄煙鑼冨洿鑷姩璇勪及")
+    @PostMapping("/auto")
+    fun autoEvaluate(@RequestBody areaVo: AreaVo) = evaluationService.autoEvaluate(areaVo)
+
+    @ApiOperation(value = "鏍规嵁鍖哄煙鑼冨洿鑾峰彇鑷姩璇勪及鍘嗗彶璁板綍")
+    @PostMapping("/auto/record")
+    fun findAutoEvaluation(@RequestBody areaVo: AreaVo) = evaluationService.findAutoEvaluation(areaVo)
+
+    @ApiOperation(value = "涓嬭浇鑷姩璇勪及缁撴灉")
+    @PostMapping("/auto/record/download")
+    fun downloadAutoEvaluation(
+        @ApiParam("鍖哄煙鏉′欢淇℃伅") @RequestBody areaVo: AreaVo,
+        @ApiParam("鏄惁寮哄埗鐢熸垚鏂扮殑鎶ュ憡") @RequestParam forceUpdate: Boolean,
+        @ApiIgnore response: HttpServletResponse,
+    ) = evaluationService.downloadAutoEvaluation(areaVo, forceUpdate, response)
+
+    @ApiOperation(value = "涓嬭浇鑷姩璇勪及缁撴灉瀵煎叆妯℃澘")
+    @PostMapping("/auto/record/template")
+    fun downloadAutoEvaTemplate(
+        @ApiParam("鍖哄煙鏉′欢淇℃伅") @RequestBody areaVo: AreaVo,
+        @ApiIgnore response: HttpServletResponse,
+    ) = evaluationService.downloadAutoEvaTemplate(areaVo, response)
+
+    @ApiOperation(value = "涓婁紶鑷姩璇勪及缁撴灉")
+    @PutMapping("/auto/record/upload")
+    fun uploadAutoEvaluation(
+        @ApiParam("鍖哄煙鏉′欢淇℃伅") @RequestBody areaVo: AreaVo,
+        @ApiParam("excel鏂囦欢") @RequestPart("excel") file: MultipartFile,
+    ) = evaluationService.uploadAutoEvaluation(areaVo, file)
 }
\ No newline at end of file

--
Gitblit v1.9.3