From 0516cba27e632f20efac2752787f38f0c87baafa Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期三, 25 九月 2024 09:24:05 +0800 Subject: [PATCH] 1. 新增自动评估添加和更新接口 --- src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt | 93 +++++++++++++++++++--------------------------- 1 files changed, 38 insertions(+), 55 deletions(-) diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt index e84b05a..0a1dca0 100644 --- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt +++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt @@ -459,20 +459,17 @@ } override fun newProblem(problem: String, files: Array<MultipartFile>): BaseResponse<String> { - val mapper = ObjectMapper() - //json杞琽bject - val problemVo = mapper.readValue(problem, object : TypeReference<ProblemVo>() {}) + val problemVo = ObjectMapper().readValue(problem, object : TypeReference<ProblemVo>() {}) val inspection = inspectionMapper.selectByPrimaryKey(problemVo.insGuid) ?: return BaseResponse(false, "宸℃煡璁板綍涓嶅瓨鍦�") val scene = scenseMapper.selectByPrimaryKey(inspection.sguid) ?: return BaseResponse(false, "宸℃煡璁板綍瀵瑰簲鍦烘櫙涓嶅瓨鍦�") - // 淇濆瓨闂 val problemlist = ProblemListVo.newPro(inspection, problemVo, scene) problemlistMapper.insert(problemlist) // 淇濆瓨鍥剧墖 - saveProFile(problemlist, inspection, scene, files) + mediafileService.saveMediaFile(files) { MediaFileVo.newProFile(inspection, problemlist, scene) } //鏇存柊宸℃煡淇℃伅鐨勯棶棰樻暟 if (inspection.problemcount != null) { @@ -491,41 +488,25 @@ override fun updateProblem(problem: ProblemListVo, deleteImg: List<String>, files: Array<MultipartFile>): String { problemRep.findOne(problem.guid) ?: throw BizException("璇ラ棶棰樹笉瀛樺湪") - val inspection = inspectionMapper.selectByPrimaryKey(problem.guid) ?: throw BizException("宸℃煡璁板綍涓嶅瓨鍦�") + problemRep.update(problem) + val inspection = inspectionMapper.selectByPrimaryKey(problem.iguid) ?: throw BizException("宸℃煡璁板綍涓嶅瓨鍦�") val scene = scenseMapper.selectByPrimaryKey(inspection.sguid) ?: throw BizException("宸℃煡璁板綍瀵瑰簲鍦烘櫙涓嶅瓨鍦�") - saveProFile(problem, inspection, scene, files) + mediafileService.saveMediaFile(files) { MediaFileVo.newProFile(inspection, problem, scene) } mediafileService.deleteList(deleteImg) return "success" } - override fun saveProFile( - problemlist: Problemlist, - inspection: Inspection, - scene: Scense, - files: Array<MultipartFile>, - ): Int { - var res = 0 - // 淇濆瓨鍥剧墖 - for (image in files) { - val mediaFile = MediaFileVo.newProFile(inspection, problemlist, scene) - res += mediafileMapper.insert(mediaFile) - - val path = mediaFile.extension1 - val fileName = mediaFile.guid + ".jpg" - val filePath = "${imgPath}/$path/" - try { - //璋冪敤鏂囦欢淇濆瓨鏂规硶 - FileUtil.uploadFile(image.bytes, filePath, fileName) - } catch (e: Exception) { - // TODO: handle exception - } - } - return res - } - override fun changeProblem(problemId: String, files: Array<MultipartFile>): BaseResponse<String> { - // 鏇存柊闂 + // 闂鍜岄棶棰樺浘鐗囧悎娉曟�ф鏌� val p = problemlistMapper.selectByPrimaryKey(problemId) ?: return BaseResponse(false, "闂涓嶅瓨鍦�") + val mediaFiles = mediafileMapper.selectByExample(Example(Mediafile::class.java).apply { + createCriteria().andEqualTo("businessguid", p.guid) + .andEqualTo("businesstypeid", 1) + .andEqualTo("ischanged", false) + }) + if (mediaFiles.isEmpty()) return BaseResponse(false, "闂涓嶅瓨鍦ㄦ垨宸叉暣鏀癸紝鏃犳硶閲嶅鏁存敼") + + // 鏇存柊闂 p.apply { ischanged = true changedtime = Date() @@ -544,41 +525,43 @@ } problemlistMapper.updateByPrimaryKey(p) - // 淇濆瓨鍥剧墖 - val now = LocalDateTime.now() - val mediaFiles = mediafileMapper.selectByExample(Example(Mediafile::class.java).apply { - createCriteria().andEqualTo("businessguid", p.guid) - .andEqualTo("businesstypeid", 1) - .andEqualTo("ischanged", false) - }) - if (mediaFiles.isEmpty()) return BaseResponse(false, "鍦烘櫙闂鏁伴噺涓�0锛屾棤娉曟暣鏀�") + // 淇濆瓨鏁存敼鍥剧墖 val m = mediaFiles[0] m.path = m.path + "鏁存敼/" m.savetime = Date() m.ischanged = true - - for (image in files) { + mediafileService.saveMediaFile(files) { m.apply { guid = UUIDGenerator.generate16ShortUUID() description = p.problemname + " " + p.location + " 鏁存敼 " + UUIDGenerator.generateUUID(4) + ".jpg" } - mediafileMapper.insert(m) - - val path = m.extension1 - val fileName = m.guid + ".jpg" -// val filePath = "E:\\work\\绗笁鏂圭洃绠pp\\鑷姩璇勫垎\\椁愰ギ\\" - val filePath = "${imgPath}/$path" - try { - //璋冪敤鏂囦欢淇濆瓨鏂规硶 - FileUtil.uploadFile(image.bytes, filePath, fileName) - } catch (e: Exception) { - println(e) - } } return BaseResponse(true) } + override fun updateChange(problemId: String, deleteImg: List<String>, files: Array<MultipartFile>): String { + val p = problemRep.findOne(problemId) ?: throw BizException("璇ラ棶棰樹笉瀛樺湪") + val mediaFiles = mediafileMapper.selectByExample(Example(Mediafile::class.java).apply { + createCriteria().andEqualTo("businessguid", problemId) + .andEqualTo("businesstypeid", 1) + .andEqualTo("ischanged", true) + }) + if (mediaFiles.isEmpty()) throw BizException("闂杩樻湭鏁存敼锛屾棤娉曚慨鏀规暣鏀�") + + // 淇濆瓨鏂扮殑鏁存敼鍥剧墖 + val m = mediaFiles[0] + m.savetime = Date() + mediafileService.saveMediaFile(files) { + m.apply { + guid = UUIDGenerator.generate16ShortUUID() + description = p.problemname + " " + p.location + " 鏁存敼 " + UUIDGenerator.generateUUID(4) + ".jpg" + } + } + mediafileService.deleteList(deleteImg) + return "success" + } + override fun getBySubTask(stGuid: String, all: Boolean?): List<ProblemListVo> { //鏍规嵁瀛愪换鍔D鑾峰彇闂鍒楄〃 val problemListVo = mutableListOf<ProblemListVo>() -- Gitblit v1.9.3