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/domain/ds1/repository/SceneRep.kt | 100 ++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 84 insertions(+), 16 deletions(-)
diff --git a/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/SceneRep.kt b/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/SceneRep.kt
index cec2e1a..7a8e29e 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/SceneRep.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/SceneRep.kt
@@ -1,11 +1,11 @@
package cn.flightfeather.supervision.domain.ds1.repository
import cn.flightfeather.supervision.common.exception.BizException
+import cn.flightfeather.supervision.common.utils.Constant
import cn.flightfeather.supervision.common.utils.UUIDGenerator
-import cn.flightfeather.supervision.domain.ds1.entity.Scense
-import cn.flightfeather.supervision.domain.ds1.mapper.ScenseMapper
-import cn.flightfeather.supervision.domain.ds1.mapper.UserinfoMapper
-import javafx.scene.Scene
+import cn.flightfeather.supervision.domain.ds1.entity.*
+import cn.flightfeather.supervision.domain.ds1.mapper.*
+import com.google.gson.Gson
import org.springframework.stereotype.Repository
import tk.mybatis.mapper.entity.Example
import java.util.*
@@ -18,20 +18,77 @@
private val scenseMapper: ScenseMapper,
private val userinfoMapper: UserinfoMapper,
private val subTaskRep: SubTaskRep,
+ val sceneConstructionSiteMapper: SceneConstructionSiteMapper,
+ val sceneDeviceMapper: SceneDeviceMapper,
+ val sceneMixingPlantMapper: SceneMixingPlantMapper,
+ val sceneStorageYardMapper: SceneStorageYardMapper,
+ val sceneWharfMapper: SceneWharfMapper,
) {
- fun insert(scense: Scense?):Int {
- scense ?: return 0
- if (scense.guid == null) scense.guid = UUIDGenerator.generate16ShortUUID()
- scense.createdate = Date()
- return scenseMapper.insertSelective(scense)
+ fun insert(scene: Scense?):Int {
+ scene ?: return 0
+ if (scene.guid == null) scene.guid = UUIDGenerator.generate16ShortUUID()
+ scene.createdate = Date()
+ return scenseMapper.insertSelective(scene)
}
- /**
- * 鏌ユ壘鍦烘櫙
- */
- fun findScene(topTaskId: String, sceneTypeId: Int? = null, townCode: String? = null): List<Scense?> {
- return scenseMapper.getSceneByType(topTaskId, sceneTypeId, townCode)
+ fun insertOrUpdateSubScene(typeId: Int?, guid: String?, subScene: BaseScene?): Pair<Boolean, Int> {
+ var r = 0
+ var isUpdate = false
+ subScene ?: return false to 0
+
+ when (typeId.toString()) {
+ Constant.SceneType.TYPE1.value -> {
+ if ((subScene as SceneConstructionSite).getsGuid() == null) {
+ subScene.setsGuid(guid)
+ }
+ subScene.csUpdateTime = Date()
+ val record = sceneConstructionSiteMapper.selectByPrimaryKey(subScene.getsGuid())
+ r = if (record == null) {
+ sceneConstructionSiteMapper.insert(subScene)
+ } else {
+ sceneConstructionSiteMapper.updateByPrimaryKeySelective(subScene)
+ }
+ }
+
+ Constant.SceneType.TYPE2.value -> {
+ if ((subScene as SceneWharf).getsGuid() == null) {
+ subScene.setsGuid(guid)
+ }
+ val record = sceneWharfMapper.selectByPrimaryKey(subScene.getsGuid())
+ r = if (record == null) {
+ sceneWharfMapper.insert(subScene)
+ } else {
+ sceneWharfMapper.updateByPrimaryKeySelective(subScene)
+ }
+ }
+
+ Constant.SceneType.TYPE3.value -> {
+ if ((subScene as SceneMixingPlant).getsGuid() == null) {
+ subScene.setsGuid(guid)
+ }
+ val record = sceneMixingPlantMapper.selectByPrimaryKey(subScene.getsGuid())
+ r = if (record == null) {
+ sceneMixingPlantMapper.insert(subScene)
+ } else {
+ sceneMixingPlantMapper.updateByPrimaryKeySelective(subScene)
+ }
+ }
+
+ Constant.SceneType.TYPE14.value -> {
+ if ((subScene as SceneStorageYard).getsGuid() == null) {
+ subScene.setsGuid(guid)
+ }
+ val record = sceneStorageYardMapper.selectByPrimaryKey(subScene.getsGuid())
+ isUpdate = record != null
+ r = if (record == null) {
+ sceneStorageYardMapper.insert(subScene)
+ } else {
+ sceneStorageYardMapper.updateByPrimaryKeySelective(subScene)
+ }
+ }
+ }
+ return isUpdate to r
}
fun findScene(userId: String?): Scense? {
@@ -46,14 +103,25 @@
})
}
- fun findScenes(nameList: List<String?>): List<Scense?> {
+ fun findSceneList(scene: Scense): List<Scense?> {
+ return scenseMapper.select(scene)
+ }
+
+ fun findSceneList(nameList: List<String?>): List<Scense?> {
return scenseMapper.selectByExample(Example(Scense::class.java).apply {
createCriteria().andIn("name", nameList)
})
}
+ /**
+ * 鏌ユ壘鍦烘櫙
+ */
+ fun findSceneList(topTaskId: String, sceneTypeId: Int? = null, townCode: String? = null): List<Scense?> {
+ return scenseMapper.getSceneByType(topTaskId, sceneTypeId, townCode)
+ }
+
fun findBySubTask(subTaskId: String): Scense? {
- val subtask = subTaskRep.find(subTaskId)
+ val subtask = subTaskRep.findOne(subTaskId)
return scenseMapper.selectByPrimaryKey(subtask?.scenseid)
}
}
\ No newline at end of file
--
Gitblit v1.9.3