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业务层处理
|
*
|
* @author zj
|
* @date 2023-03-11
|
*/
|
@Service
|
public class ArdEquipRadarServiceImpl implements IArdEquipRadarService
|
{
|
@Resource
|
private ArdEquipRadarMapper ardEquipRadarMapper;
|
@Resource
|
private SysDeptMapper sysDeptMapper;
|
/**
|
* 查询radar
|
*
|
* @param id radar主键
|
* @return radar
|
*/
|
@Override
|
public ArdEquipRadar selectArdEquipRadarById(String id)
|
{
|
return ardEquipRadarMapper.selectArdEquipRadarById(id);
|
}
|
|
/**
|
* 查询radar列表
|
*
|
* @param ardEquipRadar radar
|
* @return radar
|
*/
|
@Override
|
@DataScope(deptAlias="d",userAlias="u")
|
public List<ArdEquipRadar> selectArdEquipRadarList(ArdEquipRadar ardEquipRadar)
|
{
|
return ardEquipRadarMapper.selectArdEquipRadarList(ardEquipRadar);
|
}
|
|
/**
|
* 新增radar
|
*
|
* @param ardEquipRadar radar
|
* @return 结果
|
*/
|
@Override
|
public int insertArdEquipRadar(ArdEquipRadar ardEquipRadar)
|
{
|
ardEquipRadar.setId(IdUtils.simpleUUID());
|
ardEquipRadar.setCreateTime(DateUtils.getNowDate());
|
ardEquipRadar.setCreateBy(SecurityUtils.getUsername());
|
ardEquipRadar.setUserId(SecurityUtils.getUserId());
|
return ardEquipRadarMapper.insertArdEquipRadar(ardEquipRadar);
|
}
|
|
/**
|
* 修改radar
|
*
|
* @param ardEquipRadar radar
|
* @return 结果
|
*/
|
@Override
|
public int updateArdEquipRadar(ArdEquipRadar ardEquipRadar)
|
{
|
ardEquipRadar.setUpdateTime(DateUtils.getNowDate());
|
ardEquipRadar.setUpdateBy(SecurityUtils.getUsername());
|
return ardEquipRadarMapper.updateArdEquipRadar(ardEquipRadar);
|
}
|
|
/**
|
* 批量删除radar
|
*
|
* @param ids 需要删除的radar主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdEquipRadarByIds(String[] ids)
|
{
|
return ardEquipRadarMapper.deleteArdEquipRadarByIds(ids);
|
}
|
|
/**
|
* 删除radar信息
|
*
|
* @param id radar主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdEquipRadarById(String id)
|
{
|
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;
|
|
}
|
|
}
|