From fe031e01cc1737c2f05a133fde7c36c7a2a7b4b4 Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期三, 21 一月 2026 17:38:32 +0800
Subject: [PATCH] 2026.1.21 1. 新增完善台账复制逻辑

---
 src/main/kotlin/cn/flightfeather/supervision/lightshare/service/Impl/ConfigServiceImpl.kt |   21 +++++++++++++++------
 1 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/Impl/ConfigServiceImpl.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/Impl/ConfigServiceImpl.kt
index 96887b0..0b9bf75 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/Impl/ConfigServiceImpl.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/Impl/ConfigServiceImpl.kt
@@ -1,9 +1,7 @@
 package cn.flightfeather.supervision.lightshare.service.Impl
 
-import cn.flightfeather.supervision.common.exception.ResponseErrorException
-import cn.flightfeather.supervision.domain.entity.CommitmentTemplate
-import cn.flightfeather.supervision.domain.entity.SceneType
-import cn.flightfeather.supervision.domain.entity.UserConfig
+import cn.flightfeather.supervision.common.exception.BizException
+import cn.flightfeather.supervision.domain.entity.*
 import cn.flightfeather.supervision.domain.mapper.*
 import cn.flightfeather.supervision.domain.repository.UserConfigRep
 import cn.flightfeather.supervision.lightshare.service.ConfigService
@@ -18,7 +16,8 @@
     private val baseInfoMapper: BaseInfoMapper,
     private val commitmentTemplateMapper: CommitmentTemplateMapper,
     private val sceneTypeMapper: SceneTypeMapper,
-    private val userConfigRep: UserConfigRep
+    private val userConfigRep: UserConfigRep,
+    private val userSettingRecordMapper: UserSettingRecordMapper,
 ) : ConfigService {
 
     override fun getSceneRange(userId: String): List<Pair<String?, String?>>? {
@@ -27,6 +26,7 @@
         val result = if (config == null || config.ucSceneRange == null) {
             val types = sceneTypeMapper.selectByExample(Example(SceneType::class.java).apply {
                 createCriteria().andIsNull("scTag")
+                orderBy("scIndex")
             })
             if (types.isNotEmpty()) {
                 types.map { Pair(it?.scId.toString(), it?.scName) }
@@ -37,6 +37,7 @@
             config.ucSceneRange?.split(";")?.let {sr ->
                 sceneTypeMapper.selectByExample(Example(SceneType::class.java).apply {
                     createCriteria().andIn("scId", sr)
+                    orderBy("scIndex")
                 }).map { Pair(it?.scId.toString(), it?.scName) }
             }
         }
@@ -56,7 +57,7 @@
                 .andIn("ctSceneTypeId", condition.sceneTypes)
         }).let {
             if (it.isEmpty()) {
-                throw ResponseErrorException("鏃犵浉鍏虫壙璇轰功妯℃澘")
+                throw BizException("鏃犵浉鍏虫壙璇轰功妯℃澘")
             }
             return it[0]
         }
@@ -65,4 +66,12 @@
     override fun getUserConfig(userId: String): UserConfig? {
         return userConfigRep.getUserConfigBySubType(userId)
     }
+
+    override fun getUserSetting(userId: String): UserSetting? {
+        return userConfigRep.getUserSetting(userId)
+    }
+
+    override fun getUserSettingRecord(userId: String): UserSettingRecord? {
+        return userSettingRecordMapper.selectByPrimaryKey(userId)
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3