|  |  | 
 |  |  | package com.ruoyi.device.radar.service.impl; | 
 |  |  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.HashMap; | 
 |  |  | import java.util.List; | 
 |  |  | import java.util.Map; | 
 |  |  |  | 
 |  |  | import com.ruoyi.common.annotation.DataScope; | 
 |  |  | import com.ruoyi.common.core.domain.entity.SysDept; | 
 |  |  | import com.ruoyi.common.utils.DateUtils; | 
 |  |  | import com.ruoyi.common.utils.SecurityUtils; | 
 |  |  | import com.ruoyi.common.utils.uuid.IdUtils; | 
 |  |  | import com.ruoyi.device.camera.domain.ArdCameras; | 
 |  |  | import com.ruoyi.device.channel.domain.ArdChannel; | 
 |  |  | import com.ruoyi.system.mapper.SysDeptMapper; | 
 |  |  | import com.ruoyi.utils.tools.ArdTool; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.stereotype.Service; | 
 |  |  | import com.ruoyi.device.radar.mapper.ArdEquipRadarMapper; | 
 |  |  | import com.ruoyi.device.radar.domain.ArdEquipRadar; | 
 |  |  | import com.ruoyi.device.radar.service.IArdEquipRadarService; | 
 |  |  |  | 
 |  |  | import javax.annotation.Resource; | 
 |  |  |  | 
 |  |  | /** | 
 |  |  |  * radarService业务层处理 | 
 |  |  | 
 |  |  | @Service | 
 |  |  | public class ArdEquipRadarServiceImpl implements IArdEquipRadarService  | 
 |  |  | { | 
 |  |  |     @Autowired | 
 |  |  |     @Resource | 
 |  |  |     private ArdEquipRadarMapper ardEquipRadarMapper; | 
 |  |  |  | 
 |  |  |     @Resource | 
 |  |  |     private SysDeptMapper sysDeptMapper; | 
 |  |  |     /** | 
 |  |  |      * 查询radar | 
 |  |  |      *  | 
 |  |  | 
 |  |  |     { | 
 |  |  |         return ardEquipRadarMapper.deleteArdEquipRadarById(id); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * @描述 获取本部门以下的所有雷达和部门 | 
 |  |  |      * @参数 [] | 
 |  |  |      * @返回值 java.util.Map | 
 |  |  |      * @创建人 刘苏义 | 
 |  |  |      * @创建时间 2023/6/2 10:58 | 
 |  |  |      * @修改人和其它信息 | 
 |  |  |      */ | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public Map getChildDeptAndRadar(Boolean disabled) { | 
 |  |  |         Long deptId = SecurityUtils.getDeptId(); | 
 |  |  |         SysDept sysDept = sysDeptMapper.selectDeptById(deptId); | 
 |  |  |         Map<String, Object> map = fetchChildDepartments(sysDept, disabled); | 
 |  |  |         return map; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * @描述 递归查询 | 
 |  |  |      * @参数 [sysDept] | 
 |  |  |      * @返回值 java.util.Map<java.lang.String, java.lang.Object> | 
 |  |  |      * @创建人 刘苏义 | 
 |  |  |      * @创建时间 2023/6/2 14:38 | 
 |  |  |      * @修改人和其它信息 | 
 |  |  |      */ | 
 |  |  |     public Map<String, Object> fetchChildDepartments(SysDept sysDept, Boolean disabled) { | 
 |  |  |         Map<String, Object> map = new HashMap<>(); | 
 |  |  |         map.put("name", sysDept.getDeptName()); | 
 |  |  |         map.put("deptId", sysDept.getDeptId()); | 
 |  |  |         map.put("disabled", disabled); | 
 |  |  |         List<SysDept> sysDepts = sysDeptMapper.selectNextChildrenDeptById(sysDept.getDeptId()); | 
 |  |  |         List<ArdEquipRadar> ardRadars = ardEquipRadarMapper.selectArdRadarsByDeptId(sysDept.getDeptId()); | 
 |  |  |         List<Object> childList = new ArrayList<>(); | 
 |  |  |         for (SysDept childDept : sysDepts) { | 
 |  |  |             Map<String, Object> childMap = new HashMap<>(); | 
 |  |  |             childMap.put("name", childDept.getDeptName()); | 
 |  |  |             childMap.put("deptId", childDept.getDeptId()); | 
 |  |  |             childMap.put("disabled", disabled); | 
 |  |  |             Map<String, Object> map1 = fetchChildDepartments(childDept, disabled); | 
 |  |  |             childMap.putAll(map1); | 
 |  |  |             childList.add(childMap); | 
 |  |  |         } | 
 |  |  |         if (ardRadars.size() > 0) { | 
 |  |  |             for (ArdEquipRadar radar : ardRadars) { | 
 |  |  |                 Map<String, Object> cameraMap = ArdTool.convertEntityToMap(radar); | 
 |  |  |                 childList.add(cameraMap); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         map.put("children", childList); | 
 |  |  |         return map; | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |