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/UserMapServiceImpl.kt | 48 +++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 41 insertions(+), 7 deletions(-) diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/UserMapServiceImpl.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/UserMapServiceImpl.kt index 97eeab2..6ef1a58 100644 --- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/UserMapServiceImpl.kt +++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/UserMapServiceImpl.kt @@ -1,13 +1,23 @@ package cn.flightfeather.supervision.lightshare.service.impl +import cn.flightfeather.supervision.business.autooutput.dataanalysis.AopDataDeviceMap +import cn.flightfeather.supervision.common.exception.ResponseErrorException +import cn.flightfeather.supervision.common.utils.Constant import cn.flightfeather.supervision.common.utils.UUIDGenerator import cn.flightfeather.supervision.domain.ds1.entity.Userinfo import cn.flightfeather.supervision.domain.ds1.mapper.UserinfoMapper +import cn.flightfeather.supervision.domain.ds1.repository.SceneRep +import cn.flightfeather.supervision.domain.ds1.repository.TaskRep +import cn.flightfeather.supervision.domain.ds1.repository.UserInfoSVRep import cn.flightfeather.supervision.domain.ds2.entity.UserMap import cn.flightfeather.supervision.domain.ds2.entity.UserinfoTZ import cn.flightfeather.supervision.domain.ds2.mapper.UserMapMapper import cn.flightfeather.supervision.domain.ds2.mapper.UserinfoTZMapper +import cn.flightfeather.supervision.domain.ds2.repository.UserInfoTZRep import cn.flightfeather.supervision.lightshare.service.UserMapService +import cn.flightfeather.supervision.lightshare.service.UserinfoService +import cn.flightfeather.supervision.lightshare.vo.AreaVo +import cn.flightfeather.supervision.lightshare.vo.DeviceMapVo import org.springframework.stereotype.Service import tk.mybatis.mapper.entity.Example @@ -15,15 +25,18 @@ class UserMapServiceImpl( private val userMapMapper: UserMapMapper, private val userinfoMapper: UserinfoMapper, - private val userinfoTZMapper: UserinfoTZMapper - ) : UserMapService { + private val userinfoTZMapper: UserinfoTZMapper, + private val sceneRep: SceneRep, + private val taskRep: TaskRep, + private val userInfoSVRep: UserInfoSVRep, + private val userInfoTZRep: UserInfoTZRep, + private val aopDataDeviceMap: AopDataDeviceMap, +) : UserMapService { override fun getTZIdBySceneId(sceneId: String): UserMap { - val list = userinfoMapper.selectByExample(Example(Userinfo::class.java).apply { - createCriteria().andEqualTo("dGuid", sceneId) - }) + val list = userInfoSVRep.findUser(sceneId) if (list.isEmpty()) return UserMap() - val userId = list[0].guid + val userId = list[0]?.guid val result = userMapMapper.selectByExample(Example(UserMap::class.java).apply { createCriteria().andEqualTo("svUserId", userId) }) @@ -60,7 +73,7 @@ // 2銆� 鏃犳硶绮剧‘鍖归厤鐨勶紝閲囩敤榛樿鐨勭紪鍙凤紝鎻掑叆璁板綍銆傚悗缁汉宸ヤ慨鏀癸紙鏆傚畾锛� else { if (userMapMapper.selectByExample(Example(UserMap::class.java).apply { - createCriteria().andEqualTo("svUserId", it.guid) + createCriteria().andEqualTo("svUserId", it.guid) }).isEmpty()) { val id = "temp" + UUIDGenerator.generateShortUUID() userMapMapper.insert(UserMap().apply { @@ -74,4 +87,25 @@ } } } + + override fun fetchDeviceMap(areaVo: AreaVo): List<DeviceMapVo?> { + // 1.閫氳繃鍖哄煙鏉′欢鑾峰彇涓讳綋鐢ㄦ埛 + val userIdList = when (areaVo.sourceType) { + //浠ラ缇界幆澧冪郴缁熶腑鐨勭敤鎴蜂负涓讳綋 + 1 -> { + val u = userInfoTZRep.findEnterpriseUser(areaVo.districtname, areaVo.scensetypeid?.toInt()) + u.map { it?.guid } + } + //浠ラ缇界洃绠$郴缁熶腑鐨勭敤鎴蜂负涓讳綋 + 2 -> { + val task = taskRep.findOneTask(areaVo) ?: throw ResponseErrorException("褰撳墠鏌ヨ鏉′欢涓嬫湭鎵惧埌瀵瑰簲椤跺眰浠诲姟") + val scenes = sceneRep.findScene(task.tguid!!, areaVo.scensetypeid?.toInt(), areaVo.towncode) + .map { it?.guid } + userInfoSVRep.findUser(scenes).map { it?.guid } + } + else -> emptyList() + } + // 2.閫氳繃鍖哄煙鏉′欢鍐冲畾鍖归厤鐨勬暟鎹潵婧� + return aopDataDeviceMap.findMapSet(areaVo, userIdList) + } } \ No newline at end of file -- Gitblit v1.9.3