From f565fbc09724992d53ec6632c3e5d1de3325f328 Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期四, 11 一月 2024 17:33:44 +0800 Subject: [PATCH] 1. 调整返回接口的异常捕获类为自定义异常类; 2. 修改AreaVo类中时间参数的类型; 3. 新增文档生成任务类型,并新增文档后台生成任务逻辑; --- src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/ProblemlistServiceImpl.kt | 101 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 97 insertions(+), 4 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 f2a1191..eb2d02b 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 @@ -21,7 +21,9 @@ import java.text.SimpleDateFormat import javax.annotation.Resource import java.math.BigDecimal +import java.time.LocalDate import java.time.LocalDateTime +import java.time.ZoneId import java.time.format.DateTimeFormatter import java.util.* @@ -114,8 +116,8 @@ override fun getStatisticalResult(areaVo: AreaVo): List<StatisticsVo> { val districtcode = areaVo.districtcode val sceneType = areaVo.scensetypeid - val startTime = areaVo.starttime - val endTime = areaVo.endtime + val startTime = areaVo.starttime?.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + val endTime = areaVo.endtime?.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) val maps = problemlistMapper.getStatisticalResult(districtcode,startTime, endTime, sceneType) val statisticsVos = mutableListOf<StatisticsVo>() maps.forEach { @@ -144,7 +146,12 @@ // .andGreaterThanOrEqualTo("endtime", areaVo.endtime) // .andEqualTo("districtcode", areaVo.districtcode) val chargeInfoVo = ChargeInfoVo() - val sql = "select T_GUID, T_Name from tm_t_task where TS_GUID IS NULL and T_StartTime <= '" + areaVo.starttime + "' and T_EndTime >= '" + areaVo.endtime + "' and T_DistrictCode = '" + areaVo.districtcode +"'" + val sTime = areaVo.starttime?.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + val eTime = areaVo.endtime?.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + val sql = + "select T_GUID, T_Name from tm_t_task where TS_GUID IS NULL and T_StartTime <= '" + sTime + "' and T_EndTime" + + " >= '" + eTime + "' and T_DistrictCode = '" + areaVo.districtcode + "'" + val maps1 = taskMapper.selectSE(sql) var topTaskId = String() var topTaskName = String() @@ -321,6 +328,12 @@ mediafileMapper.deleteByExample(Example(Mediafile::class.java).apply { createCriteria().andEqualTo("businessguid", id) }) + //鏇存柊宸℃煡淇℃伅涓殑闂鏁伴噺 + val inspection = inspectionMapper.selectByPrimaryKey(p.iguid) + if (inspection.problemcount != null && inspection.problemcount!! > 0) { + inspection.problemcount = inspection.problemcount!! - 1 + inspectionMapper.updateByPrimaryKey(inspection) + } BaseResponse(true, "闂鍒犻櫎鎴愬姛", data = i) } } @@ -478,12 +491,92 @@ val filePath = "${Constant.DEFAULT_FILE_PATH}/images/$path/" try { //璋冪敤鏂囦欢淇濆瓨鏂规硶 - FileUtil().uploadFile(image.bytes, filePath, fileName) + FileUtil.uploadFile(image.bytes, filePath, fileName) } catch (e: Exception) { // TODO: handle exception } } + //鏇存柊宸℃煡淇℃伅鐨勯棶棰樻暟 + if (inspection.problemcount != null) { + inspection.problemcount = inspection.problemcount!! + 1 + inspectionMapper.updateByPrimaryKey(inspection) + } + return BaseResponse(true) } + + override fun changeProblem(problemId: String, files: Array<MultipartFile>): BaseResponse<String> { + // 鏇存柊闂 + val p = problemlistMapper.selectByPrimaryKey(problemId) ?: return BaseResponse(false, "闂涓嶅瓨鍦�") + p.apply { + ischanged = true + changedtime = Date() + extension3 = Constant.CHANGE_UNCHECKED + val today = LocalDate.now() + val pTime = LocalDateTime.ofInstant(time?.toInstant(), ZoneId.systemDefault()).toLocalDate() + changecatalog = if (p.extension1 != null) { + if (today.isAfter(pTime)) { + Constant.PROMISE_CHANGE + } else { + Constant.LOCAL_CHANGE + } + } else { + Constant.UN_PROMISE_CHANGE + } + } + 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) { + 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 = "${Constant.DEFAULT_FILE_PATH}/images/$path" + try { + //璋冪敤鏂囦欢淇濆瓨鏂规硶 + FileUtil.uploadFile(image.bytes, filePath, fileName) + } catch (e: Exception) { + println(e) + } + } + + return BaseResponse(true) + } + + override fun getBySubTask(stGuid: String): List<ProblemlistVo> { + //鏍规嵁瀛愪换鍔D鑾峰彇闂鍒楄〃 + val problemListVo = findBySubtaskId(stGuid) + //鍒ゆ柇鏄惁鏈夐棶棰樺垪琛� + if (!problemListVo.isEmpty()) { + //鏍规嵁姣忎釜闂,鑾峰彇濯掍綋鏂囦欢 + problemListVo.forEach { + val mediafileVo = mediafileService.findByBusinessGUID(it.guid!!) + //鍒ゆ柇鏄惁鏈夊獟浣撹祫鏂� + if (!mediafileVo.isEmpty()) { + //璧嬪�� + it.mediafileList = mediafileVo + } + } + } + return problemListVo + } } \ No newline at end of file -- Gitblit v1.9.3