From 82baf5d28ce79aa4d3b64956207d247596726924 Mon Sep 17 00:00:00 2001
From: hcong <1050828145@qq.com>
Date: 星期二, 10 十二月 2024 11:21:33 +0800
Subject: [PATCH] 1. BgTaskStatus状态属性序列化
---
src/main/kotlin/cn/flightfeather/supervision/lightshare/web/ProblemlistController.kt | 107 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 87 insertions(+), 20 deletions(-)
diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/ProblemlistController.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/ProblemlistController.kt
index 84dbad3..7b6154b 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/ProblemlistController.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/web/ProblemlistController.kt
@@ -1,8 +1,13 @@
package cn.flightfeather.supervision.lightshare.web
+import cn.flightfeather.supervision.common.log.BizLog
+import cn.flightfeather.supervision.common.log.WorkStreamLogInfo
import cn.flightfeather.supervision.domain.ds1.entity.Problemlist
import cn.flightfeather.supervision.lightshare.service.ProblemlistService
+import cn.flightfeather.supervision.lightshare.service.SubtaskService
import cn.flightfeather.supervision.lightshare.vo.*
+import com.fasterxml.jackson.core.type.TypeReference
+import com.fasterxml.jackson.databind.ObjectMapper
import io.swagger.annotations.Api
import io.swagger.annotations.ApiOperation
import io.swagger.annotations.ApiParam
@@ -12,7 +17,10 @@
@Api(tags = ["ProblemlistController"], description = "鐩戠闂API鎺ュ彛")
@RestController
@RequestMapping("/problemlist")
-class ProblemlistController(val problemlistService: ProblemlistService) {
+class ProblemlistController(
+ val problemlistService: ProblemlistService,
+ val subtaskService: SubtaskService, private val bizLog: BizLog,
+) {
@GetMapping
fun getAll() = problemlistService.findAll()
@@ -20,7 +28,15 @@
fun add(@RequestBody problemlist: Problemlist) = problemlistService.save(problemlist)
@PostMapping
- fun update(@RequestBody problemlist: Problemlist) = problemlistService.update(problemlist)
+ fun update(@RequestBody problemlist: Problemlist):Int{
+ val res = problemlistService.update(problemlist)
+ problemlist.stguid?.let {
+ val subtask = subtaskService.findByID(it)
+ val event = "鍦�${subtask.scensename}鏂板涓�涓棶棰�"
+ bizLog.info(WorkStreamLogInfo(subtask.executorguids, subtask.executorrealtimes, event))
+ }
+ return res
+ }
@GetMapping("/{id}")
fun getById(@PathVariable id: String) = problemlistService.findByID(id)
@@ -32,55 +48,106 @@
fun setDeleteStatus(@PathVariable id: String) = problemlistService.setDeleteStatus(id)
@PostMapping("/add")
- fun addProblem(@RequestBody problemlistVo: ProblemlistVo) {
+ fun addProblem(@RequestBody problemlistVo: ProblemListVo) {
problemlistService.addProblem(problemlistVo)
}
@PostMapping("/getbyarea")
- fun getByArea(@RequestBody areaVo: AreaVo): List<ProblemlistVo> = problemlistService.getByArea(areaVo)
+ fun getByArea(@RequestBody areaVo: AreaVo): List<ProblemListVo> = problemlistService.getByArea(areaVo)
@GetMapping("/getbytoptask")
- fun getByTopTask(@RequestParam(value = "tguid", required = true) tguid: String): List<ProblemlistVo> = problemlistService.getByTopTask(tguid)
+ fun getByTopTask(@RequestParam(value = "tguid", required = true) tguid: String): List<ProblemListVo> =
+ problemlistService.getByTopTask(tguid)
@PostMapping("/getStatisticalResult")
- fun getStatisticalResult(@RequestBody areaVo: AreaVo): List<StatisticsVo> = problemlistService.getStatisticalResult(areaVo)
+ fun getStatisticalResult(@RequestBody areaVo: AreaVo): List<StatisticsVo> =
+ problemlistService.getStatisticalResult(areaVo)
@PostMapping("/getStatisticalResultById")
- fun getStatisticalResult(@RequestParam(value = "id", required = true) topTaskId: String,
- @RequestParam(value = "curSceneTypeId", required = true) sceneTypeId: String): List<StatisticsVo> = problemlistService.getStatisticalResultById(topTaskId, sceneTypeId)
+ fun getStatisticalResult(
+ @RequestParam(value = "id", required = true) topTaskId: String,
+ @RequestParam(value = "curSceneTypeId", required = true) sceneTypeId: String,
+ ): List<StatisticsVo> = problemlistService.getStatisticalResultById(topTaskId, sceneTypeId)
@PostMapping("/getChargeResult")
fun getChargeResult(@RequestBody areaVo: AreaVo): ChargeInfoVo = problemlistService.getChargeResult(areaVo)
@GetMapping("/getProblemsByScene")
- fun getProblemsByScene(@RequestParam(value = "sceneId", required = true) sceneId: String, @RequestParam date: String): List<ProblemlistVo>
- = problemlistService.getProblemByScene(sceneId, date)
+ fun getProblemsByScene(
+ @RequestParam(value = "sceneId", required = true) sceneId: String,
+ @RequestParam date: String,
+ ): List<ProblemListVo> = problemlistService.getProblemByScene(sceneId, date)
@GetMapping("/month_anlysis")
- fun getMonthProblemsById(@RequestParam(value = "taskId", required = true) taskId: String,
- @RequestParam(value = "sceneType", required = false) sceneType: Int?): List<MonthProblemVo> = problemlistService.findMonthProblemById(taskId, sceneType)
+ fun getMonthProblemsById(
+ @RequestParam(value = "taskId", required = true) taskId: String,
+ @RequestParam(value = "sceneType", required = false) sceneType: Int?,
+ ): List<MonthProblemVo> = problemlistService.findMonthProblemById(taskId, sceneType)
@ApiOperation(value = "瀵归棶棰樿繘琛屽鏍告搷浣�", notes = "鍖呮嫭闂鐨勬彁浜ゅ鏍稿拰鏁存敼瀹℃牳涓ょ")
@PostMapping("/check")
fun checkProblem(
- @ApiParam(value = "闂id涓婚敭") @RequestParam("pId") pId: String,
- @ApiParam(value = "瀹℃牳鎿嶄綔, 0: 瀹℃牳閫氳繃锛�1: 瀹℃牳涓嶉�氳繃锛�2: 鏁存敼閫氳繃锛�3: 鏁存敼涓嶉�氳繃", allowableValues = "0,1,2,3") @RequestParam("action") action: Byte,
- @ApiParam(value = "瀹℃牳澶囨敞") @RequestParam("remark") remark: String,
- @ApiParam(value = "鐢ㄦ埛id") @RequestParam("userId") userId: String,
- @ApiParam(value = "鐢ㄦ埛鍚�") @RequestParam("userName") userName: String
+ @ApiParam(value = "闂id涓婚敭") @RequestParam("pId") pId: String,
+ @ApiParam(value = "瀹℃牳鎿嶄綔, 0: 瀹℃牳閫氳繃锛�1: 瀹℃牳涓嶉�氳繃锛�2: 鏁存敼閫氳繃锛�3: 鏁存敼涓嶉�氳繃",
+ allowableValues = "0,1,2,3") @RequestParam("action") action: Byte,
+ @ApiParam(value = "瀹℃牳澶囨敞") @RequestParam("remark") remark: String,
+ @ApiParam(value = "鐢ㄦ埛id") @RequestParam("userId") userId: String,
+ @ApiParam(value = "鐢ㄦ埛鍚�") @RequestParam("userName") userName: String,
) = problemlistService.check(pId, action, remark, userId, userName)
@ApiOperation(value = "鏂板涓�涓棶棰�", notes = "绠�鍖栦笂浼犳墍闇�闂淇℃伅锛屽皢澶ч儴鍒嗘搷浣滀氦鐢卞悗鍙板畬鎴�")
@PostMapping("/newProblem")
fun newProblem(
- @RequestParam("problemVo") problemVo: String,
- @RequestPart("images") files: Array<MultipartFile>
+ @ApiParam("闂淇℃伅json") @RequestParam("problemVo") problemVo: String,
+ @ApiParam("闂鍥剧墖") @RequestPart("images") files: Array<MultipartFile>,
) = problemlistService.newProblem(problemVo, files)
+
+ @ApiOperation("鏇存柊涓�涓棶棰�")
+ @PostMapping("/updateProblem")
+ fun updateProblem(
+ @ApiParam("闂淇℃伅json") @RequestParam("problem") problem: String,
+ @ApiParam("鍒犻櫎鐨勯棶棰樺浘鐗噄d") @RequestParam("deleteImg") deleteImg: List<String>,
+ @ApiParam("闂鍥剧墖") @RequestPart("images") images: Array<MultipartFile>,
+ ) = resPack {
+ val problemVo = ObjectMapper().readValue(problem, object : TypeReference<ProblemListVo>() {})
+ problemlistService.updateProblem(problemVo, deleteImg, images)
+ }
@ApiOperation(value = "鏁存敼涓�涓棶棰�", notes = "绠�鍖栦笂浼犳墍闇�闂淇℃伅锛屽皢澶ч儴鍒嗘搷浣滀氦鐢卞悗鍙板畬鎴�")
@PostMapping("/changeProblem")
fun changeProblem(
@RequestParam("problemId") problemId: String,
- @RequestPart("images") files: Array<MultipartFile>
+ @RequestPart("images") files: Array<MultipartFile>,
) = problemlistService.changeProblem(problemId, files)
+
+ @ApiOperation("鏇存柊涓�涓棶棰樻暣鏀�")
+ @PostMapping("/updateChange")
+ fun updateChange(
+ @ApiParam("闂id") @RequestParam problemId: String,
+ @ApiParam("鍒犻櫎鐨勬暣鏀瑰浘鐗噄d") @RequestParam("deleteImg") deleteImg: List<String>,
+ @ApiParam("鏂板鏁存敼鍥剧墖") @RequestPart("images") images: Array<MultipartFile>,
+ ) = resPack { problemlistService.updateChange(problemId, deleteImg, images) }
+
+ @ApiOperation(value = "閫氳繃浠诲姟鏌ユ壘闂")
+ @GetMapping("/subtask")
+ fun getBySubTask(
+ @RequestParam("stGuid") stGuid: String,
+ @ApiParam(value = "鏄惁鑾峰彇鏈鏍稿強瀹℃牳涓嶉�氳繃鐨勯棶棰�") @RequestParam(required = false) all:Boolean?
+ ) = problemlistService.getBySubTask(stGuid, all)
+
+ @ApiOperation(value = "鏌ユ壘鍙戠幇浜嗘煇绉嶉棶棰樼被鍨嬬殑鎵�鏈夊贰鏌ュ瓙浠诲姟")
+ @PostMapping("/type/subtask")
+ fun getSceneByProType(
+ @RequestBody areaVo: AreaVo,
+ @RequestParam pType: String,
+ ) = resPack { problemlistService.getSceneByProType(areaVo, pType) }
+
+ @ApiOperation(value = "鏌ヨ鏌愭�讳换鍔′笅鍚勫満鏅殑闂鏁伴噺缁熻")
+ @PostMapping("/summary/scene")
+ fun getSceneProSummary(
+ @RequestBody areaVo: AreaVo,
+ @ApiParam(value = "鎺掑簭瀛楁", allowableValues = "pro, changePer") @RequestParam sortBy: String,
+ @ApiParam(value = "椤电爜") @RequestParam(value = "page") page: Int,
+ @ApiParam(value = "鍗曢〉鏁版嵁閲�") @RequestParam(value = "per_page") perPage: Int,
+ ) = resPack { problemlistService.getSceneProSummary(areaVo, sortBy, page, perPage) }
}
\ No newline at end of file
--
Gitblit v1.9.3